mirror of
https://github.com/Theodor-Springmann-Stiftung/lenz-web.git
synced 2025-10-29 09:15:33 +00:00
Druckansicht
This commit is contained in:
@@ -96,22 +96,33 @@ func Parse(lib *xmlmodels.Library) func(s string) string {
|
|||||||
elem.Token.Attributes["pos"] != "" {
|
elem.Token.Attributes["pos"] != "" {
|
||||||
note := Note{Id: id}
|
note := Note{Id: id}
|
||||||
note.Tokens.AppendDivElement(id, "note-sidenote-meta")
|
note.Tokens.AppendDivElement(id, "note-sidenote-meta")
|
||||||
|
ps.Tokens.AppendDivElement(id, "inline-sidenote-meta")
|
||||||
if elem.Token.Attributes["page"] != "" {
|
if elem.Token.Attributes["page"] != "" {
|
||||||
note.Tokens.AppendDivElement("", "sidenote-page")
|
note.Tokens.AppendDivElement("", "sidenote-page")
|
||||||
note.Tokens.AppendText(elem.Token.Attributes["page"])
|
note.Tokens.AppendText(elem.Token.Attributes["page"])
|
||||||
note.Tokens.AppendEndElement()
|
note.Tokens.AppendEndElement()
|
||||||
|
ps.Tokens.AppendDivElement("", "sidenote-page")
|
||||||
|
ps.Tokens.AppendText(elem.Token.Attributes["page"])
|
||||||
|
ps.Tokens.AppendEndElement()
|
||||||
}
|
}
|
||||||
if elem.Token.Attributes["annotation"] != "" {
|
if elem.Token.Attributes["annotation"] != "" {
|
||||||
note.Tokens.AppendDivElement("", "sidenote-note")
|
note.Tokens.AppendDivElement("", "sidenote-note")
|
||||||
note.Tokens.AppendText(elem.Token.Attributes["annotation"])
|
note.Tokens.AppendText(elem.Token.Attributes["annotation"])
|
||||||
note.Tokens.AppendEndElement()
|
note.Tokens.AppendEndElement()
|
||||||
|
ps.Tokens.AppendDivElement("", "sidenote-note")
|
||||||
|
ps.Tokens.AppendText(elem.Token.Attributes["annotation"])
|
||||||
|
ps.Tokens.AppendEndElement()
|
||||||
}
|
}
|
||||||
if elem.Token.Attributes["pos"] != "" {
|
if elem.Token.Attributes["pos"] != "" {
|
||||||
note.Tokens.AppendDivElement("", "sidenote-pos")
|
note.Tokens.AppendDivElement("", "sidenote-pos")
|
||||||
note.Tokens.AppendText(elem.Token.Attributes["pos"])
|
note.Tokens.AppendText(elem.Token.Attributes["pos"])
|
||||||
note.Tokens.AppendEndElement()
|
note.Tokens.AppendEndElement()
|
||||||
|
ps.Tokens.AppendDivElement("", "sidenote-pos")
|
||||||
|
ps.Tokens.AppendText(elem.Token.Attributes["pos"])
|
||||||
|
ps.Tokens.AppendEndElement()
|
||||||
}
|
}
|
||||||
note.Tokens.AppendEndElement() // sidenote-meta
|
note.Tokens.AppendEndElement() // sidenote-meta
|
||||||
|
ps.Tokens.AppendEndElement()
|
||||||
ps.AppendNote(note)
|
ps.AppendNote(note)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -130,12 +141,15 @@ func Parse(lib *xmlmodels.Library) func(s string) string {
|
|||||||
}
|
}
|
||||||
note := Note{Id: id}
|
note := Note{Id: id}
|
||||||
note.Tokens.AppendDivElement(id, "note-hand")
|
note.Tokens.AppendDivElement(id, "note-hand")
|
||||||
|
ps.Tokens.AppendDivElement(id, "inline-hand")
|
||||||
hand := "N/A"
|
hand := "N/A"
|
||||||
if person != nil {
|
if person != nil {
|
||||||
hand = person.Name
|
hand = person.Name
|
||||||
}
|
}
|
||||||
note.Tokens.AppendText(hand)
|
note.Tokens.AppendText(hand)
|
||||||
|
ps.Tokens.AppendText(hand)
|
||||||
note.Tokens.AppendEndElement()
|
note.Tokens.AppendEndElement()
|
||||||
|
ps.Tokens.AppendEndElement()
|
||||||
ps.AppendNote(note)
|
ps.AppendNote(note)
|
||||||
ps.Tokens.AppendDivElement("", "hand")
|
ps.Tokens.AppendDivElement("", "hand")
|
||||||
ps.Tokens.AppendCustomAttribute("aria-describedby", id)
|
ps.Tokens.AppendCustomAttribute("aria-describedby", id)
|
||||||
@@ -172,6 +186,9 @@ func Parse(lib *xmlmodels.Library) func(s string) string {
|
|||||||
ps.Tokens.AppendDivElement("", "eanchor-page", "eanchor-page-"+quality)
|
ps.Tokens.AppendDivElement("", "eanchor-page", "eanchor-page-"+quality)
|
||||||
ps.Tokens.AppendCustomAttribute("aria-describedby", ps.PC)
|
ps.Tokens.AppendCustomAttribute("aria-describedby", ps.PC)
|
||||||
ps.Tokens.AppendEndElement()
|
ps.Tokens.AppendEndElement()
|
||||||
|
ps.Tokens.AppendDivElement("", "page-counter", "page-"+quality)
|
||||||
|
ps.Tokens.AppendText(ps.PC)
|
||||||
|
ps.Tokens.AppendEndElement()
|
||||||
note.Tokens.AppendDivElement(ps.PC, "page", "page-"+quality)
|
note.Tokens.AppendDivElement(ps.PC, "page", "page-"+quality)
|
||||||
note.Tokens.AppendText(ps.PC)
|
note.Tokens.AppendText(ps.PC)
|
||||||
note.Tokens.AppendEndElement()
|
note.Tokens.AppendEndElement()
|
||||||
|
|||||||
180
views/assets/css/interface.css
Normal file
180
views/assets/css/interface.css
Normal file
@@ -0,0 +1,180 @@
|
|||||||
|
/* CSS for Paged.js interface – v0.4 */
|
||||||
|
|
||||||
|
/* Change the look */
|
||||||
|
:root {
|
||||||
|
--color-background: whitesmoke;
|
||||||
|
--color-pageSheet: #cfcfcf;
|
||||||
|
--color-pageBox: violet;
|
||||||
|
--color-paper: white;
|
||||||
|
--color-marginBox: transparent;
|
||||||
|
--pagedjs-crop-color: black;
|
||||||
|
--pagedjs-crop-shadow: white;
|
||||||
|
--pagedjs-crop-stroke: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* To define how the book look on the screen: */
|
||||||
|
@media screen, pagedjs-ignore {
|
||||||
|
body {
|
||||||
|
background-color: var(--color-background);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_pages {
|
||||||
|
display: flex;
|
||||||
|
width: calc(var(--pagedjs-width) * 2);
|
||||||
|
flex: 0;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_page {
|
||||||
|
background-color: var(--color-paper);
|
||||||
|
box-shadow: 0 0 0 1px var(--color-pageSheet);
|
||||||
|
margin: 0;
|
||||||
|
flex-shrink: 0;
|
||||||
|
flex-grow: 0;
|
||||||
|
margin-top: 10mm;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_first_page {
|
||||||
|
margin-left: var(--pagedjs-width);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_page:last-of-type {
|
||||||
|
margin-bottom: 10mm;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_pagebox{
|
||||||
|
box-shadow: 0 0 0 1px var(--color-pageBox);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_left_page{
|
||||||
|
z-index: 20;
|
||||||
|
width: calc(var(--pagedjs-bleed-left) + var(--pagedjs-pagebox-width))!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_left_page .pagedjs_bleed-right .pagedjs_marks-crop {
|
||||||
|
border-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_left_page .pagedjs_bleed-right .pagedjs_marks-middle{
|
||||||
|
width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_right_page{
|
||||||
|
z-index: 10;
|
||||||
|
position: relative;
|
||||||
|
left: calc(var(--pagedjs-bleed-left)*-1);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* show the margin-box */
|
||||||
|
|
||||||
|
.pagedjs_margin-top-left-corner-holder,
|
||||||
|
.pagedjs_margin-top,
|
||||||
|
.pagedjs_margin-top-left,
|
||||||
|
.pagedjs_margin-top-center,
|
||||||
|
.pagedjs_margin-top-right,
|
||||||
|
.pagedjs_margin-top-right-corner-holder,
|
||||||
|
.pagedjs_margin-bottom-left-corner-holder,
|
||||||
|
.pagedjs_margin-bottom,
|
||||||
|
.pagedjs_margin-bottom-left,
|
||||||
|
.pagedjs_margin-bottom-center,
|
||||||
|
.pagedjs_margin-bottom-right,
|
||||||
|
.pagedjs_margin-bottom-right-corner-holder,
|
||||||
|
.pagedjs_margin-right,
|
||||||
|
.pagedjs_margin-right-top,
|
||||||
|
.pagedjs_margin-right-middle,
|
||||||
|
.pagedjs_margin-right-bottom,
|
||||||
|
.pagedjs_margin-left,
|
||||||
|
.pagedjs_margin-left-top,
|
||||||
|
.pagedjs_margin-left-middle,
|
||||||
|
.pagedjs_margin-left-bottom {
|
||||||
|
box-shadow: 0 0 0 1px inset var(--color-marginBox);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* uncomment this part for recto/verso book : ------------------------------------ */
|
||||||
|
|
||||||
|
/*
|
||||||
|
.pagedjs_pages {
|
||||||
|
flex-direction: column;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_first_page {
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_page {
|
||||||
|
margin: 0 auto;
|
||||||
|
margin-top: 10mm;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_left_page{
|
||||||
|
width: calc(var(--pagedjs-bleed-left) + var(--pagedjs-pagebox-width) + var(--pagedjs-bleed-left))!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_left_page .pagedjs_bleed-right .pagedjs_marks-crop{
|
||||||
|
border-color: var(--pagedjs-crop-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_left_page .pagedjs_bleed-right .pagedjs_marks-middle{
|
||||||
|
width: var(--pagedjs-cross-size)!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_right_page{
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*--------------------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* uncomment this par to see the baseline : -------------------------------------------*/
|
||||||
|
|
||||||
|
|
||||||
|
/* .pagedjs_pagebox {
|
||||||
|
--pagedjs-baseline: 22px;
|
||||||
|
--pagedjs-baseline-position: 5px;
|
||||||
|
--pagedjs-baseline-color: cyan;
|
||||||
|
background: linear-gradient(transparent 0%, transparent calc(var(--pagedjs-baseline) - 1px), var(--pagedjs-baseline-color) calc(var(--pagedjs-baseline) - 1px), var(--pagedjs-baseline-color) var(--pagedjs-baseline)), transparent;
|
||||||
|
background-size: 100% var(--pagedjs-baseline);
|
||||||
|
background-repeat: repeat-y;
|
||||||
|
background-position-y: var(--pagedjs-baseline-position);
|
||||||
|
} */
|
||||||
|
|
||||||
|
|
||||||
|
/*--------------------------------------------------------------------------------------*/
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* Marks (to delete when merge in paged.js) */
|
||||||
|
|
||||||
|
.pagedjs_marks-crop{
|
||||||
|
z-index: 999999999999;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_bleed-top .pagedjs_marks-crop,
|
||||||
|
.pagedjs_bleed-bottom .pagedjs_marks-crop{
|
||||||
|
box-shadow: 1px 0px 0px 0px var(--pagedjs-crop-shadow);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_bleed-top .pagedjs_marks-crop:last-child,
|
||||||
|
.pagedjs_bleed-bottom .pagedjs_marks-crop:last-child{
|
||||||
|
box-shadow: -1px 0px 0px 0px var(--pagedjs-crop-shadow);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_bleed-left .pagedjs_marks-crop,
|
||||||
|
.pagedjs_bleed-right .pagedjs_marks-crop{
|
||||||
|
box-shadow: 0px 1px 0px 0px var(--pagedjs-crop-shadow);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_bleed-left .pagedjs_marks-crop:last-child,
|
||||||
|
.pagedjs_bleed-right .pagedjs_marks-crop:last-child{
|
||||||
|
box-shadow: 0px -1px 0px 0px var(--pagedjs-crop-shadow);
|
||||||
|
}
|
||||||
4
views/assets/js/paged.min.js
vendored
Normal file
4
views/assets/js/paged.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
views/assets/js/paged.polyfill.min.js
vendored
Normal file
4
views/assets/js/paged.polyfill.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
17425
views/assets/scripts.js
17425
views/assets/scripts.js
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -3,6 +3,9 @@
|
|||||||
"workspaces": {
|
"workspaces": {
|
||||||
"": {
|
"": {
|
||||||
"name": "caveman_views",
|
"name": "caveman_views",
|
||||||
|
"dependencies": {
|
||||||
|
"pagedjs": "^0.4.3",
|
||||||
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@laynezh/vite-plugin-lib-assets": "^1.1.0",
|
"@laynezh/vite-plugin-lib-assets": "^1.1.0",
|
||||||
"@tailwindcss/postcss": "^4.1.4",
|
"@tailwindcss/postcss": "^4.1.4",
|
||||||
@@ -19,6 +22,10 @@
|
|||||||
"packages": {
|
"packages": {
|
||||||
"@alloc/quick-lru": ["@alloc/quick-lru@5.2.0", "", {}, "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw=="],
|
"@alloc/quick-lru": ["@alloc/quick-lru@5.2.0", "", {}, "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw=="],
|
||||||
|
|
||||||
|
"@babel/polyfill": ["@babel/polyfill@7.12.1", "", { "dependencies": { "core-js": "^2.6.5", "regenerator-runtime": "^0.13.4" } }, "sha512-X0pi0V6gxLi6lFZpGmeNa4zxtwEmCs42isWLNjZZDE0Y8yVfgu0T2OAHlzBbdYlqbW/YXVvoBHpATEM+goCj8g=="],
|
||||||
|
|
||||||
|
"@babel/runtime": ["@babel/runtime@7.27.1", "", {}, "sha512-1x3D2xEk2fRo3PAhwQwu5UubzgiVWSXTBfWpVd2Mx2AzRqJuDJCsgaDVZ7HB5iGzDW1Hl1sWN2mFyKjmR9uAog=="],
|
||||||
|
|
||||||
"@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.25.0", "", { "os": "aix", "cpu": "ppc64" }, "sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ=="],
|
"@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.25.0", "", { "os": "aix", "cpu": "ppc64" }, "sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ=="],
|
||||||
|
|
||||||
"@esbuild/android-arm": ["@esbuild/android-arm@0.25.0", "", { "os": "android", "cpu": "arm" }, "sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g=="],
|
"@esbuild/android-arm": ["@esbuild/android-arm@0.25.0", "", { "os": "android", "cpu": "arm" }, "sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g=="],
|
||||||
@@ -153,12 +160,20 @@
|
|||||||
|
|
||||||
"chokidar": ["chokidar@3.6.0", "", { "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", "readdirp": "~3.6.0" }, "optionalDependencies": { "fsevents": "~2.3.2" } }, "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw=="],
|
"chokidar": ["chokidar@3.6.0", "", { "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", "readdirp": "~3.6.0" }, "optionalDependencies": { "fsevents": "~2.3.2" } }, "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw=="],
|
||||||
|
|
||||||
|
"clear-cut": ["clear-cut@2.0.2", "", {}, "sha512-WVgn/gSejQ+0aoR8ucbKIdo6icduPZW6AbWwyUmAUgxy63rUYjwa5rj/HeoNPhf0/XPrl82X8bO/hwBkSmsFtg=="],
|
||||||
|
|
||||||
"cliui": ["cliui@8.0.1", "", { "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.1", "wrap-ansi": "^7.0.0" } }, "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ=="],
|
"cliui": ["cliui@8.0.1", "", { "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.1", "wrap-ansi": "^7.0.0" } }, "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ=="],
|
||||||
|
|
||||||
"color-convert": ["color-convert@2.0.1", "", { "dependencies": { "color-name": "~1.1.4" } }, "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="],
|
"color-convert": ["color-convert@2.0.1", "", { "dependencies": { "color-name": "~1.1.4" } }, "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="],
|
||||||
|
|
||||||
"color-name": ["color-name@1.1.4", "", {}, "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="],
|
"color-name": ["color-name@1.1.4", "", {}, "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="],
|
||||||
|
|
||||||
|
"core-js": ["core-js@2.6.12", "", {}, "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ=="],
|
||||||
|
|
||||||
|
"css-tree": ["css-tree@1.1.3", "", { "dependencies": { "mdn-data": "2.0.14", "source-map": "^0.6.1" } }, "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q=="],
|
||||||
|
|
||||||
|
"d": ["d@1.0.2", "", { "dependencies": { "es5-ext": "^0.10.64", "type": "^2.7.2" } }, "sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw=="],
|
||||||
|
|
||||||
"daisyui": ["daisyui@5.0.28", "", {}, "sha512-H082p8Lg3c7Se9wTbjfSOOhfUbp3BnOM2+cdr3OeY5G1Ll7GYLXB9NWLHgitkTsB1pQKwHRYYchqN2YG0VVShg=="],
|
"daisyui": ["daisyui@5.0.28", "", {}, "sha512-H082p8Lg3c7Se9wTbjfSOOhfUbp3BnOM2+cdr3OeY5G1Ll7GYLXB9NWLHgitkTsB1pQKwHRYYchqN2YG0VVShg=="],
|
||||||
|
|
||||||
"dependency-graph": ["dependency-graph@1.0.0", "", {}, "sha512-cW3gggJ28HZ/LExwxP2B++aiKxhJXMSIt9K48FOXQkm+vuG5gyatXnLsONRJdzO/7VfjDIiaOOa/bs4l464Lwg=="],
|
"dependency-graph": ["dependency-graph@1.0.0", "", {}, "sha512-cW3gggJ28HZ/LExwxP2B++aiKxhJXMSIt9K48FOXQkm+vuG5gyatXnLsONRJdzO/7VfjDIiaOOa/bs4l464Lwg=="],
|
||||||
@@ -169,12 +184,24 @@
|
|||||||
|
|
||||||
"enhanced-resolve": ["enhanced-resolve@5.18.1", "", { "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" } }, "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg=="],
|
"enhanced-resolve": ["enhanced-resolve@5.18.1", "", { "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" } }, "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg=="],
|
||||||
|
|
||||||
|
"es5-ext": ["es5-ext@0.10.64", "", { "dependencies": { "es6-iterator": "^2.0.3", "es6-symbol": "^3.1.3", "esniff": "^2.0.1", "next-tick": "^1.1.0" } }, "sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg=="],
|
||||||
|
|
||||||
|
"es6-iterator": ["es6-iterator@2.0.3", "", { "dependencies": { "d": "1", "es5-ext": "^0.10.35", "es6-symbol": "^3.1.1" } }, "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g=="],
|
||||||
|
|
||||||
|
"es6-symbol": ["es6-symbol@3.1.4", "", { "dependencies": { "d": "^1.0.2", "ext": "^1.7.0" } }, "sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg=="],
|
||||||
|
|
||||||
"esbuild": ["esbuild@0.25.0", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.0", "@esbuild/android-arm": "0.25.0", "@esbuild/android-arm64": "0.25.0", "@esbuild/android-x64": "0.25.0", "@esbuild/darwin-arm64": "0.25.0", "@esbuild/darwin-x64": "0.25.0", "@esbuild/freebsd-arm64": "0.25.0", "@esbuild/freebsd-x64": "0.25.0", "@esbuild/linux-arm": "0.25.0", "@esbuild/linux-arm64": "0.25.0", "@esbuild/linux-ia32": "0.25.0", "@esbuild/linux-loong64": "0.25.0", "@esbuild/linux-mips64el": "0.25.0", "@esbuild/linux-ppc64": "0.25.0", "@esbuild/linux-riscv64": "0.25.0", "@esbuild/linux-s390x": "0.25.0", "@esbuild/linux-x64": "0.25.0", "@esbuild/netbsd-arm64": "0.25.0", "@esbuild/netbsd-x64": "0.25.0", "@esbuild/openbsd-arm64": "0.25.0", "@esbuild/openbsd-x64": "0.25.0", "@esbuild/sunos-x64": "0.25.0", "@esbuild/win32-arm64": "0.25.0", "@esbuild/win32-ia32": "0.25.0", "@esbuild/win32-x64": "0.25.0" }, "bin": "bin/esbuild" }, "sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw=="],
|
"esbuild": ["esbuild@0.25.0", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.0", "@esbuild/android-arm": "0.25.0", "@esbuild/android-arm64": "0.25.0", "@esbuild/android-x64": "0.25.0", "@esbuild/darwin-arm64": "0.25.0", "@esbuild/darwin-x64": "0.25.0", "@esbuild/freebsd-arm64": "0.25.0", "@esbuild/freebsd-x64": "0.25.0", "@esbuild/linux-arm": "0.25.0", "@esbuild/linux-arm64": "0.25.0", "@esbuild/linux-ia32": "0.25.0", "@esbuild/linux-loong64": "0.25.0", "@esbuild/linux-mips64el": "0.25.0", "@esbuild/linux-ppc64": "0.25.0", "@esbuild/linux-riscv64": "0.25.0", "@esbuild/linux-s390x": "0.25.0", "@esbuild/linux-x64": "0.25.0", "@esbuild/netbsd-arm64": "0.25.0", "@esbuild/netbsd-x64": "0.25.0", "@esbuild/openbsd-arm64": "0.25.0", "@esbuild/openbsd-x64": "0.25.0", "@esbuild/sunos-x64": "0.25.0", "@esbuild/win32-arm64": "0.25.0", "@esbuild/win32-ia32": "0.25.0", "@esbuild/win32-x64": "0.25.0" }, "bin": "bin/esbuild" }, "sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw=="],
|
||||||
|
|
||||||
"escalade": ["escalade@3.2.0", "", {}, "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA=="],
|
"escalade": ["escalade@3.2.0", "", {}, "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA=="],
|
||||||
|
|
||||||
"escape-string-regexp": ["escape-string-regexp@4.0.0", "", {}, "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="],
|
"escape-string-regexp": ["escape-string-regexp@4.0.0", "", {}, "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="],
|
||||||
|
|
||||||
|
"esniff": ["esniff@2.0.1", "", { "dependencies": { "d": "^1.0.1", "es5-ext": "^0.10.62", "event-emitter": "^0.3.5", "type": "^2.7.2" } }, "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg=="],
|
||||||
|
|
||||||
|
"event-emitter": ["event-emitter@0.3.5", "", { "dependencies": { "d": "1", "es5-ext": "~0.10.14" } }, "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA=="],
|
||||||
|
|
||||||
|
"ext": ["ext@1.7.0", "", { "dependencies": { "type": "^2.7.2" } }, "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw=="],
|
||||||
|
|
||||||
"fdir": ["fdir@6.4.4", "", { "peerDependencies": { "picomatch": "^3 || ^4" }, "optionalPeers": ["picomatch"] }, "sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg=="],
|
"fdir": ["fdir@6.4.4", "", { "peerDependencies": { "picomatch": "^3 || ^4" }, "optionalPeers": ["picomatch"] }, "sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg=="],
|
||||||
|
|
||||||
"fill-range": ["fill-range@7.1.1", "", { "dependencies": { "to-regex-range": "^5.0.1" } }, "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg=="],
|
"fill-range": ["fill-range@7.1.1", "", { "dependencies": { "to-regex-range": "^5.0.1" } }, "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg=="],
|
||||||
@@ -229,12 +256,18 @@
|
|||||||
|
|
||||||
"loader-utils": ["loader-utils@3.3.1", "", {}, "sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg=="],
|
"loader-utils": ["loader-utils@3.3.1", "", {}, "sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg=="],
|
||||||
|
|
||||||
|
"mdn-data": ["mdn-data@2.0.14", "", {}, "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow=="],
|
||||||
|
|
||||||
"mrmime": ["mrmime@1.0.1", "", {}, "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw=="],
|
"mrmime": ["mrmime@1.0.1", "", {}, "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw=="],
|
||||||
|
|
||||||
"nanoid": ["nanoid@3.3.8", "", { "bin": "bin/nanoid.cjs" }, "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w=="],
|
"nanoid": ["nanoid@3.3.8", "", { "bin": "bin/nanoid.cjs" }, "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w=="],
|
||||||
|
|
||||||
|
"next-tick": ["next-tick@1.1.0", "", {}, "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ=="],
|
||||||
|
|
||||||
"normalize-path": ["normalize-path@3.0.0", "", {}, "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA=="],
|
"normalize-path": ["normalize-path@3.0.0", "", {}, "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA=="],
|
||||||
|
|
||||||
|
"pagedjs": ["pagedjs@0.4.3", "", { "dependencies": { "@babel/polyfill": "^7.10.1", "@babel/runtime": "^7.21.0", "clear-cut": "^2.0.2", "css-tree": "^1.1.3", "event-emitter": "^0.3.5" } }, "sha512-YtAN9JAjsQw1142gxEjEAwXvOF5nYQuDwnQ67RW2HZDkMLI+b4RsBE37lULZa9gAr6kDAOGBOhXI4wGMoY3raw=="],
|
||||||
|
|
||||||
"picocolors": ["picocolors@1.1.1", "", {}, "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="],
|
"picocolors": ["picocolors@1.1.1", "", {}, "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="],
|
||||||
|
|
||||||
"picomatch": ["picomatch@4.0.2", "", {}, "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg=="],
|
"picomatch": ["picomatch@4.0.2", "", {}, "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg=="],
|
||||||
@@ -259,6 +292,8 @@
|
|||||||
|
|
||||||
"readdirp": ["readdirp@3.6.0", "", { "dependencies": { "picomatch": "^2.2.1" } }, "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA=="],
|
"readdirp": ["readdirp@3.6.0", "", { "dependencies": { "picomatch": "^2.2.1" } }, "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA=="],
|
||||||
|
|
||||||
|
"regenerator-runtime": ["regenerator-runtime@0.13.11", "", {}, "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg=="],
|
||||||
|
|
||||||
"require-directory": ["require-directory@2.1.1", "", {}, "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q=="],
|
"require-directory": ["require-directory@2.1.1", "", {}, "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q=="],
|
||||||
|
|
||||||
"rollup": ["rollup@4.34.9", "", { "dependencies": { "@types/estree": "1.0.6" }, "optionalDependencies": { "@rollup/rollup-android-arm-eabi": "4.34.9", "@rollup/rollup-android-arm64": "4.34.9", "@rollup/rollup-darwin-arm64": "4.34.9", "@rollup/rollup-darwin-x64": "4.34.9", "@rollup/rollup-freebsd-arm64": "4.34.9", "@rollup/rollup-freebsd-x64": "4.34.9", "@rollup/rollup-linux-arm-gnueabihf": "4.34.9", "@rollup/rollup-linux-arm-musleabihf": "4.34.9", "@rollup/rollup-linux-arm64-gnu": "4.34.9", "@rollup/rollup-linux-arm64-musl": "4.34.9", "@rollup/rollup-linux-loongarch64-gnu": "4.34.9", "@rollup/rollup-linux-powerpc64le-gnu": "4.34.9", "@rollup/rollup-linux-riscv64-gnu": "4.34.9", "@rollup/rollup-linux-s390x-gnu": "4.34.9", "@rollup/rollup-linux-x64-gnu": "4.34.9", "@rollup/rollup-linux-x64-musl": "4.34.9", "@rollup/rollup-win32-arm64-msvc": "4.34.9", "@rollup/rollup-win32-ia32-msvc": "4.34.9", "@rollup/rollup-win32-x64-msvc": "4.34.9", "fsevents": "~2.3.2" }, "bin": "dist/bin/rollup" }, "sha512-nF5XYqWWp9hx/LrpC8sZvvvmq0TeTjQgaZHYmAgwysT9nh8sWnZhBnM8ZyVbbJFIQBLwHDNoMqsBZBbUo4U8sQ=="],
|
"rollup": ["rollup@4.34.9", "", { "dependencies": { "@types/estree": "1.0.6" }, "optionalDependencies": { "@rollup/rollup-android-arm-eabi": "4.34.9", "@rollup/rollup-android-arm64": "4.34.9", "@rollup/rollup-darwin-arm64": "4.34.9", "@rollup/rollup-darwin-x64": "4.34.9", "@rollup/rollup-freebsd-arm64": "4.34.9", "@rollup/rollup-freebsd-x64": "4.34.9", "@rollup/rollup-linux-arm-gnueabihf": "4.34.9", "@rollup/rollup-linux-arm-musleabihf": "4.34.9", "@rollup/rollup-linux-arm64-gnu": "4.34.9", "@rollup/rollup-linux-arm64-musl": "4.34.9", "@rollup/rollup-linux-loongarch64-gnu": "4.34.9", "@rollup/rollup-linux-powerpc64le-gnu": "4.34.9", "@rollup/rollup-linux-riscv64-gnu": "4.34.9", "@rollup/rollup-linux-s390x-gnu": "4.34.9", "@rollup/rollup-linux-x64-gnu": "4.34.9", "@rollup/rollup-linux-x64-musl": "4.34.9", "@rollup/rollup-win32-arm64-msvc": "4.34.9", "@rollup/rollup-win32-ia32-msvc": "4.34.9", "@rollup/rollup-win32-x64-msvc": "4.34.9", "fsevents": "~2.3.2" }, "bin": "dist/bin/rollup" }, "sha512-nF5XYqWWp9hx/LrpC8sZvvvmq0TeTjQgaZHYmAgwysT9nh8sWnZhBnM8ZyVbbJFIQBLwHDNoMqsBZBbUo4U8sQ=="],
|
||||||
@@ -267,6 +302,8 @@
|
|||||||
|
|
||||||
"slash": ["slash@5.1.0", "", {}, "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg=="],
|
"slash": ["slash@5.1.0", "", {}, "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg=="],
|
||||||
|
|
||||||
|
"source-map": ["source-map@0.6.1", "", {}, "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="],
|
||||||
|
|
||||||
"source-map-js": ["source-map-js@1.2.1", "", {}, "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA=="],
|
"source-map-js": ["source-map-js@1.2.1", "", {}, "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA=="],
|
||||||
|
|
||||||
"string-width": ["string-width@4.2.3", "", { "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" } }, "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g=="],
|
"string-width": ["string-width@4.2.3", "", { "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" } }, "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g=="],
|
||||||
@@ -283,6 +320,8 @@
|
|||||||
|
|
||||||
"to-regex-range": ["to-regex-range@5.0.1", "", { "dependencies": { "is-number": "^7.0.0" } }, "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ=="],
|
"to-regex-range": ["to-regex-range@5.0.1", "", { "dependencies": { "is-number": "^7.0.0" } }, "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ=="],
|
||||||
|
|
||||||
|
"type": ["type@2.7.3", "", {}, "sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ=="],
|
||||||
|
|
||||||
"ulid": ["ulid@2.3.0", "", { "bin": "bin/cli.js" }, "sha512-keqHubrlpvT6G2wH0OEfSW4mquYRcbe/J8NMmveoQOjUqmo+hXtO+ORCpWhdbZ7k72UtY61BL7haGxW6enBnjw=="],
|
"ulid": ["ulid@2.3.0", "", { "bin": "bin/cli.js" }, "sha512-keqHubrlpvT6G2wH0OEfSW4mquYRcbe/J8NMmveoQOjUqmo+hXtO+ORCpWhdbZ7k72UtY61BL7haGxW6enBnjw=="],
|
||||||
|
|
||||||
"universalify": ["universalify@2.0.1", "", {}, "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw=="],
|
"universalify": ["universalify@2.0.1", "", {}, "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw=="],
|
||||||
|
|||||||
@@ -24,6 +24,8 @@
|
|||||||
<script type="module" src="/assets/scripts.js"></script>
|
<script type="module" src="/assets/scripts.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="/assets/style.css" />
|
<link rel="stylesheet" type="text/css" href="/assets/style.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="/assets/css/remixicon.css" />
|
<link rel="stylesheet" type="text/css" href="/assets/css/remixicon.css" />
|
||||||
|
|
||||||
|
<link rel="stylesheet" type="text/css" href="/assets/css/interface.css" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="w-full text-lg" hx-ext="response-targets" hx-boost="true">
|
<body class="w-full text-lg" hx-ext="response-targets" hx-boost="true">
|
||||||
|
|||||||
@@ -31,5 +31,8 @@
|
|||||||
"prettier-plugin-go-template": "^0.0.15",
|
"prettier-plugin-go-template": "^0.0.15",
|
||||||
"tailwindcss": "^4.1.4",
|
"tailwindcss": "^4.1.4",
|
||||||
"vite": "^6.3.3"
|
"vite": "^6.3.3"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"pagedjs": "^0.4.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
180
views/public/css/interface.css
Normal file
180
views/public/css/interface.css
Normal file
@@ -0,0 +1,180 @@
|
|||||||
|
/* CSS for Paged.js interface – v0.4 */
|
||||||
|
|
||||||
|
/* Change the look */
|
||||||
|
:root {
|
||||||
|
--color-background: whitesmoke;
|
||||||
|
--color-pageSheet: #cfcfcf;
|
||||||
|
--color-pageBox: violet;
|
||||||
|
--color-paper: white;
|
||||||
|
--color-marginBox: transparent;
|
||||||
|
--pagedjs-crop-color: black;
|
||||||
|
--pagedjs-crop-shadow: white;
|
||||||
|
--pagedjs-crop-stroke: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* To define how the book look on the screen: */
|
||||||
|
@media screen, pagedjs-ignore {
|
||||||
|
body {
|
||||||
|
background-color: var(--color-background);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_pages {
|
||||||
|
display: flex;
|
||||||
|
width: calc(var(--pagedjs-width) * 2);
|
||||||
|
flex: 0;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_page {
|
||||||
|
background-color: var(--color-paper);
|
||||||
|
box-shadow: 0 0 0 1px var(--color-pageSheet);
|
||||||
|
margin: 0;
|
||||||
|
flex-shrink: 0;
|
||||||
|
flex-grow: 0;
|
||||||
|
margin-top: 10mm;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_first_page {
|
||||||
|
margin-left: var(--pagedjs-width);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_page:last-of-type {
|
||||||
|
margin-bottom: 10mm;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_pagebox{
|
||||||
|
box-shadow: 0 0 0 1px var(--color-pageBox);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_left_page{
|
||||||
|
z-index: 20;
|
||||||
|
width: calc(var(--pagedjs-bleed-left) + var(--pagedjs-pagebox-width))!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_left_page .pagedjs_bleed-right .pagedjs_marks-crop {
|
||||||
|
border-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_left_page .pagedjs_bleed-right .pagedjs_marks-middle{
|
||||||
|
width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_right_page{
|
||||||
|
z-index: 10;
|
||||||
|
position: relative;
|
||||||
|
left: calc(var(--pagedjs-bleed-left)*-1);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* show the margin-box */
|
||||||
|
|
||||||
|
.pagedjs_margin-top-left-corner-holder,
|
||||||
|
.pagedjs_margin-top,
|
||||||
|
.pagedjs_margin-top-left,
|
||||||
|
.pagedjs_margin-top-center,
|
||||||
|
.pagedjs_margin-top-right,
|
||||||
|
.pagedjs_margin-top-right-corner-holder,
|
||||||
|
.pagedjs_margin-bottom-left-corner-holder,
|
||||||
|
.pagedjs_margin-bottom,
|
||||||
|
.pagedjs_margin-bottom-left,
|
||||||
|
.pagedjs_margin-bottom-center,
|
||||||
|
.pagedjs_margin-bottom-right,
|
||||||
|
.pagedjs_margin-bottom-right-corner-holder,
|
||||||
|
.pagedjs_margin-right,
|
||||||
|
.pagedjs_margin-right-top,
|
||||||
|
.pagedjs_margin-right-middle,
|
||||||
|
.pagedjs_margin-right-bottom,
|
||||||
|
.pagedjs_margin-left,
|
||||||
|
.pagedjs_margin-left-top,
|
||||||
|
.pagedjs_margin-left-middle,
|
||||||
|
.pagedjs_margin-left-bottom {
|
||||||
|
box-shadow: 0 0 0 1px inset var(--color-marginBox);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* uncomment this part for recto/verso book : ------------------------------------ */
|
||||||
|
|
||||||
|
/*
|
||||||
|
.pagedjs_pages {
|
||||||
|
flex-direction: column;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_first_page {
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_page {
|
||||||
|
margin: 0 auto;
|
||||||
|
margin-top: 10mm;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_left_page{
|
||||||
|
width: calc(var(--pagedjs-bleed-left) + var(--pagedjs-pagebox-width) + var(--pagedjs-bleed-left))!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_left_page .pagedjs_bleed-right .pagedjs_marks-crop{
|
||||||
|
border-color: var(--pagedjs-crop-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_left_page .pagedjs_bleed-right .pagedjs_marks-middle{
|
||||||
|
width: var(--pagedjs-cross-size)!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_right_page{
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*--------------------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* uncomment this par to see the baseline : -------------------------------------------*/
|
||||||
|
|
||||||
|
|
||||||
|
/* .pagedjs_pagebox {
|
||||||
|
--pagedjs-baseline: 22px;
|
||||||
|
--pagedjs-baseline-position: 5px;
|
||||||
|
--pagedjs-baseline-color: cyan;
|
||||||
|
background: linear-gradient(transparent 0%, transparent calc(var(--pagedjs-baseline) - 1px), var(--pagedjs-baseline-color) calc(var(--pagedjs-baseline) - 1px), var(--pagedjs-baseline-color) var(--pagedjs-baseline)), transparent;
|
||||||
|
background-size: 100% var(--pagedjs-baseline);
|
||||||
|
background-repeat: repeat-y;
|
||||||
|
background-position-y: var(--pagedjs-baseline-position);
|
||||||
|
} */
|
||||||
|
|
||||||
|
|
||||||
|
/*--------------------------------------------------------------------------------------*/
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* Marks (to delete when merge in paged.js) */
|
||||||
|
|
||||||
|
.pagedjs_marks-crop{
|
||||||
|
z-index: 999999999999;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_bleed-top .pagedjs_marks-crop,
|
||||||
|
.pagedjs_bleed-bottom .pagedjs_marks-crop{
|
||||||
|
box-shadow: 1px 0px 0px 0px var(--pagedjs-crop-shadow);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_bleed-top .pagedjs_marks-crop:last-child,
|
||||||
|
.pagedjs_bleed-bottom .pagedjs_marks-crop:last-child{
|
||||||
|
box-shadow: -1px 0px 0px 0px var(--pagedjs-crop-shadow);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_bleed-left .pagedjs_marks-crop,
|
||||||
|
.pagedjs_bleed-right .pagedjs_marks-crop{
|
||||||
|
box-shadow: 0px 1px 0px 0px var(--pagedjs-crop-shadow);
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagedjs_bleed-left .pagedjs_marks-crop:last-child,
|
||||||
|
.pagedjs_bleed-right .pagedjs_marks-crop:last-child{
|
||||||
|
box-shadow: 0px -1px 0px 0px var(--pagedjs-crop-shadow);
|
||||||
|
}
|
||||||
4
views/public/js/paged.min.js
vendored
Normal file
4
views/public/js/paged.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
views/public/js/paged.polyfill.min.js
vendored
Normal file
4
views/public/js/paged.polyfill.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
@@ -18,9 +18,18 @@
|
|||||||
></a>
|
></a>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
|
<div class="self-end justify-self-end grow-0 print:hidden ml-4">
|
||||||
|
<a
|
||||||
|
href="?print=true"
|
||||||
|
class="text-gray-700 hover:text-slate-900 cursor-pointer"
|
||||||
|
hx-boost="false"
|
||||||
|
target="_blank">
|
||||||
|
<i class="ri-printer-line"></i>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="text flex flex-row">
|
<div class="text flex flex-row print:flex-col">
|
||||||
{{- Safe (ParseGeneric .text.Content) -}}
|
{{- Safe (ParseGeneric .text.Content) -}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -29,51 +38,6 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script type="module">
|
<script type="module">
|
||||||
function alignSidenotes() {
|
import { Letter } from "/assets/scripts.js";
|
||||||
const text = document.querySelector(".text");
|
Letter();
|
||||||
if (!text) return;
|
|
||||||
const notes = text.querySelectorAll(".note-sidenote-meta,.note-hand,.page");
|
|
||||||
|
|
||||||
// Only do margin notes if wide enough and not printing
|
|
||||||
// if (window.innerWidth < 900 || window.matchMedia("print").matches) return;
|
|
||||||
// Reset all notes for fallback
|
|
||||||
notes.forEach((note) => {
|
|
||||||
note.classList.remove("margin-note");
|
|
||||||
note.style.top = "";
|
|
||||||
});
|
|
||||||
|
|
||||||
notes.forEach((note) => {
|
|
||||||
const noteId = note.id;
|
|
||||||
if (!noteId) return;
|
|
||||||
const anchor = text.querySelector(
|
|
||||||
`.sidenote[aria-describedby="${noteId}"], .hand[aria-describedby="${noteId}"],
|
|
||||||
.eanchor-page[aria-describedby="${noteId}"]`,
|
|
||||||
);
|
|
||||||
if (!anchor) return;
|
|
||||||
|
|
||||||
console.log(anchor);
|
|
||||||
// Mark as margin note
|
|
||||||
note.classList.add("margin-note");
|
|
||||||
// Position: relative to .text
|
|
||||||
const textRect = text.getBoundingClientRect();
|
|
||||||
const anchorRect = anchor.getBoundingClientRect();
|
|
||||||
// Get scroll offset for window
|
|
||||||
const top = anchorRect.top - textRect.top;
|
|
||||||
note.style.top = `${top}px`;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// Run on load, resize, and before/after print
|
|
||||||
alignSidenotes();
|
|
||||||
window.addEventListener("resize", alignSidenotes);
|
|
||||||
window.addEventListener("scroll", alignSidenotes); // If container is scrollable
|
|
||||||
|
|
||||||
// Revert to fallback for print, reapply after
|
|
||||||
window.matchMedia("print").addEventListener("change", (e) => {
|
|
||||||
if (e.matches) {
|
|
||||||
alignSidenotes(); // fallback mode (will un-absolute)
|
|
||||||
} else {
|
|
||||||
setTimeout(alignSidenotes, 100); // recalc after print closes
|
|
||||||
}
|
|
||||||
});
|
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -91,15 +91,15 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.text .count {
|
.text .count {
|
||||||
@apply hidden lg:block print:block min-w-[4ch] max-w-[10ch] shrink grow-0 relative;
|
@apply print:hidden hidden lg:block min-w-[4ch] max-w-[10ch] shrink grow-0 relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
.text .fulltext {
|
.text .fulltext {
|
||||||
@apply max-w-[80ch] mr-8 grow;
|
@apply max-w-[80ch] mr-8 grow relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
.text .notes {
|
.text .notes {
|
||||||
@apply relative max-w-[80ch] pr-4;
|
@apply relative max-w-[80ch] pr-4 shrink grow-0 print:hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
.text .eanchor-page,
|
.text .eanchor-page,
|
||||||
@@ -273,11 +273,13 @@
|
|||||||
content: "; ";
|
content: "; ";
|
||||||
}
|
}
|
||||||
|
|
||||||
.text .note-sidenote-meta > div {
|
.text .note-sidenote-meta > div,
|
||||||
|
.text .inline-sidenote-meta > div {
|
||||||
@apply inline;
|
@apply inline;
|
||||||
}
|
}
|
||||||
|
|
||||||
.text .note-sidenote-meta .sidenote-pos {
|
.text .note-sidenote-meta .sidenote-pos,
|
||||||
|
.text .inline-sidenote-meta .sidenote-pos {
|
||||||
@apply !hidden;
|
@apply !hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -286,7 +288,12 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.text .margin-note {
|
.text .margin-note {
|
||||||
@apply absolute w-[13rem] text-sm;
|
@apply absolute;
|
||||||
|
}
|
||||||
|
|
||||||
|
.text .margin-note.note-sidenote-meta,
|
||||||
|
.text .margin-note.note-hand {
|
||||||
|
@apply w-[13rem];
|
||||||
}
|
}
|
||||||
|
|
||||||
.text div[class^="note-"],
|
.text div[class^="note-"],
|
||||||
@@ -308,6 +315,27 @@
|
|||||||
|
|
||||||
.text .eanchor-page-inside::before {
|
.text .eanchor-page-inside::before {
|
||||||
content: "|";
|
content: "|";
|
||||||
@apply text-slate-600 font-sans text-sm relative bottom-[0.15rem] pr-[1ch];
|
@apply text-slate-600 font-sans text-sm relative bottom-[0.15rem] pr-[1ch] print:hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.text .page-counter {
|
||||||
|
@apply hidden text-slate-600 font-sans text-sm relative bottom-[0.15rem] pr-[1ch] print:inline;
|
||||||
|
}
|
||||||
|
|
||||||
|
.text .inline-sidenote-meta,
|
||||||
|
.text .inline-hand {
|
||||||
|
@apply text-sm text-slate-800 hidden print:block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.text .page-counter::before {
|
||||||
|
content: "[";
|
||||||
|
}
|
||||||
|
|
||||||
|
.text .page-counter::after {
|
||||||
|
content: "]";
|
||||||
|
}
|
||||||
|
|
||||||
|
@page {
|
||||||
|
size: A4;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user