@curio-sd/e-module-builder 0.5.1 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +313 -308
- package/build-pdf.mjs +1 -1
- package/build.mjs +20 -14
- package/package.json +2 -2
- package/public/favicon.svg +292 -5
- package/src/css/main.css +2 -2
- package/src/js/exercises/exercise-shared.js +11 -16
- package/src/js/exercises/hub.js +1 -1
- package/src/js/exercises/load-exercise.js +24 -1
- package/src/js/nav.js +6 -5
- package/src/js/storage.js +10 -1
- package/templates/page.html +27 -24
- package/templates/pages/checklist.html +38 -32
- package/templates/pages/inleveropdracht.html +26 -5
- package/templates/pages/meetmoment-praktijk.html +1 -1
- package/templates/pages/oefening.html +4 -1
- package/templates/pages/theorie.html +29 -25
- package/public/Logo Schaalbaar (1).svg +0 -293
package/build.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import fs from 'fs'
|
|
2
2
|
import path from 'path'
|
|
3
3
|
import { fileURLToPath } from 'url'
|
|
4
|
-
import matter from 'gray-matter'
|
|
4
|
+
import matter from '@11ty/gray-matter'
|
|
5
5
|
import { Marked } from 'marked'
|
|
6
6
|
import { markedHighlight } from "marked-highlight";
|
|
7
7
|
import hljs from 'highlight.js';
|
|
@@ -140,14 +140,18 @@ for (const weekDir of activeWeeks) {
|
|
|
140
140
|
}
|
|
141
141
|
writeJson(SRC_DATA, `theory-week${weekNum}.json`, theoryOut)
|
|
142
142
|
|
|
143
|
-
// quiz.md → src/data/meetmoment-quiz-weekN.json
|
|
144
|
-
const
|
|
145
|
-
const
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
143
|
+
// quiz.md → src/data/meetmoment-quiz-weekN.json (optional)
|
|
144
|
+
const quizPath = path.join(dir, 'quiz.md')
|
|
145
|
+
const hasQuiz = fs.existsSync(quizPath)
|
|
146
|
+
if (hasQuiz) {
|
|
147
|
+
const quizMd = readMd(quizPath)
|
|
148
|
+
const quizOut = {
|
|
149
|
+
title: quizMd.data.title,
|
|
150
|
+
passScore: quizMd.data.passScore ?? 70,
|
|
151
|
+
questions: quizMd.data.questions ?? [],
|
|
152
|
+
}
|
|
153
|
+
writeJson(SRC_DATA, `meetmoment-quiz-week${weekNum}.json`, quizOut)
|
|
149
154
|
}
|
|
150
|
-
writeJson(SRC_DATA, `meetmoment-quiz-week${weekNum}.json`, quizOut)
|
|
151
155
|
|
|
152
156
|
// exercises/ subfolder → src/data/exercises/weekN.json
|
|
153
157
|
const exDir = path.join(dir, 'exercises')
|
|
@@ -163,8 +167,8 @@ for (const weekDir of activeWeeks) {
|
|
|
163
167
|
}
|
|
164
168
|
ex.descriptionInlineHtml = marked.parseInline(ex.description ?? '')
|
|
165
169
|
if (ex.type === 'external') {
|
|
166
|
-
if (ex.task)
|
|
167
|
-
if (ex.hint)
|
|
170
|
+
if (ex.task) ex.taskHtml = marked.parseInline(ex.task)
|
|
171
|
+
if (ex.hint) ex.hintHtml = marked.parse(ex.hint)
|
|
168
172
|
if (ex.solution) ex.solutionHtml = marked.parse(ex.solution)
|
|
169
173
|
}
|
|
170
174
|
return ex
|
|
@@ -197,6 +201,7 @@ for (const weekDir of activeWeeks) {
|
|
|
197
201
|
week: weekNum,
|
|
198
202
|
dirName: weekDir,
|
|
199
203
|
prefix: sectionPrefix,
|
|
204
|
+
hasQuiz,
|
|
200
205
|
title: theoryMd.data.title,
|
|
201
206
|
summary: marked.parseInline(theoryMd.data.summary ?? ''),
|
|
202
207
|
goal: theoryMd.data.goal,
|
|
@@ -205,7 +210,7 @@ for (const weekDir of activeWeeks) {
|
|
|
205
210
|
pages: [
|
|
206
211
|
{ key: 'theorie', href: `/pages/${weekDir}-theorie.html`, label: 'Theorie' },
|
|
207
212
|
{ key: 'oefeningen', href: `/pages/${weekDir}-oefeningen.html`, label: 'Oefeningen' },
|
|
208
|
-
{ key: 'meetmoment', href: `/pages/${weekDir}-meetmoment.html`, label: 'Meetmoment' },
|
|
213
|
+
...(hasQuiz ? [{ key: 'meetmoment', href: `/pages/${weekDir}-meetmoment.html`, label: 'Meetmoment' }] : []),
|
|
209
214
|
{ key: 'oefening', href: `/pages/${weekDir}-oefening.html`, label: 'Oefening' },
|
|
210
215
|
{ key: 'inleveropdracht', href: `/pages/${weekDir}-inleveropdracht.html`, label: 'Inleveropdracht' },
|
|
211
216
|
],
|
|
@@ -237,7 +242,7 @@ function buildPracticalAssessmentData(filePath, fallbackTitle, fallbackNavLabel)
|
|
|
237
242
|
title: md.data.title ?? fallbackTitle,
|
|
238
243
|
navLabel: md.data.navLabel ?? fallbackNavLabel,
|
|
239
244
|
description: marked.parseInline(md.data.description ?? ''),
|
|
240
|
-
html: marked.parse(md.content ?? ''),
|
|
245
|
+
html: rewriteAssetPaths(marked.parse(md.content ?? ''), 'assessments'),
|
|
241
246
|
}
|
|
242
247
|
}
|
|
243
248
|
return { title: fallbackTitle, navLabel: fallbackNavLabel, description: '', html: '' }
|
|
@@ -277,7 +282,7 @@ const manifest = {
|
|
|
277
282
|
children: [
|
|
278
283
|
{ href: `/pages/${wk.dirName}-theorie.html`, label: 'Theorie' },
|
|
279
284
|
{ href: `/pages/${wk.dirName}-oefeningen.html`, label: 'Oefeningen' },
|
|
280
|
-
{ href: `/pages/${wk.dirName}-meetmoment.html`, label: 'Quiz' },
|
|
285
|
+
...(wk.hasQuiz ? [{ href: `/pages/${wk.dirName}-meetmoment.html`, label: 'Quiz' }] : []),
|
|
281
286
|
{ href: `/pages/${wk.dirName}-inleveropdracht.html`, label: 'Inleveropdracht' },
|
|
282
287
|
],
|
|
283
288
|
})),
|
|
@@ -300,7 +305,7 @@ const manifest = {
|
|
|
300
305
|
week: weeksData.flatMap(wk => [
|
|
301
306
|
`pages/${wk.dirName}-theorie.html`,
|
|
302
307
|
`pages/${wk.dirName}-oefeningen.html`,
|
|
303
|
-
`pages/${wk.dirName}-meetmoment.html
|
|
308
|
+
...(wk.hasQuiz ? [`pages/${wk.dirName}-meetmoment.html`] : []),
|
|
304
309
|
`pages/${wk.dirName}-oefening.html`,
|
|
305
310
|
`pages/${wk.dirName}-inleveropdracht.html`,
|
|
306
311
|
]),
|
|
@@ -377,6 +382,7 @@ fs.mkdirSync(PAGES, { recursive: true })
|
|
|
377
382
|
for (const { tplFile, suffix, pageTitle } of PAGE_TYPES) {
|
|
378
383
|
const tpl = fs.readFileSync(path.join(TEMPLATES, tplFile), 'utf8')
|
|
379
384
|
for (const wk of weeksData) {
|
|
385
|
+
if (suffix === 'meetmoment' && !wk.hasQuiz) continue
|
|
380
386
|
const out = applyTemplate(tpl, {
|
|
381
387
|
week: String(wk.week),
|
|
382
388
|
weekPadded: String(wk.week).padStart(2, '0'),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@curio-sd/e-module-builder",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "A tool for building e-modules for Curio SD",
|
|
6
6
|
"license": "MIT",
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
"test:watch": "vitest"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
+
"@11ty/gray-matter": "^2.1.0",
|
|
28
29
|
"@tailwindcss/vite": "^4.1.8",
|
|
29
|
-
"gray-matter": "^4.0.3",
|
|
30
30
|
"highlight.js": "^11.11.1",
|
|
31
31
|
"marked": "^18.0.5",
|
|
32
32
|
"marked-highlight": "^2.2.4",
|
package/public/favicon.svg
CHANGED
|
@@ -1,6 +1,293 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!-- Generator: Adobe Illustrator 27.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
3
|
+
<svg version="1.1" id="Laag_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
4
|
+
viewBox="0 0 935 550" style="enable-background:new 0 0 935 550;" xml:space="preserve">
|
|
5
|
+
<style type="text/css">
|
|
6
|
+
.st0{fill:#D6CBCB;}
|
|
7
|
+
.st1{fill:#F63030;stroke:#000000;stroke-width:0.25;stroke-miterlimit:10;}
|
|
8
|
+
.st2{fill:#F63030;}
|
|
9
|
+
.st3{fill:#FFCB03;}
|
|
10
|
+
</style>
|
|
11
|
+
<g>
|
|
12
|
+
<path class="st0" d="M362.6,176.6c-2-1.7-4.3-3.2-6.9-4.5v63.6l6,1.3c0.6,0.1,1.1,0.2,1.7,0.4v-60
|
|
13
|
+
C363.1,177,362.8,176.8,362.6,176.6z"/>
|
|
14
|
+
<path class="st0" d="M389.3,204.9v39.3c2.6,0.8,5.2,1.7,7.7,2.6v-41.9H389.3z"/>
|
|
15
|
+
<path class="st0" d="M428.1,95.3c-5.9,0-11,3.7-13.1,8.8c2.3,1.3,4.5,2.7,6.7,4.1c0.6-3,3.2-5.3,6.4-5.3c3.6,0,6.5,2.9,6.5,6.5
|
|
16
|
+
c0,2.5-1.4,4.6-3.4,5.7c2.1,1.7,4.1,3.4,6,5.1c3.1-2.6,5.1-6.5,5.1-10.8C442.2,101.7,435.9,95.3,428.1,95.3z M424.1,204.9v54.3
|
|
17
|
+
c2.7,1.5,5.2,3.1,7.7,4.7v-59.1h-7.7V204.9z"/>
|
|
18
|
+
<path class="st0" d="M224.1,298.2c-6.5,0-11.9,4.4-13.6,10.3h-8.3v7.7h8.2c1.7,6,7.1,10.4,13.7,10.4c7.8,0,14.2-6.4,14.2-14.2
|
|
19
|
+
C238.3,304.5,231.9,298.2,224.1,298.2z M224.1,318.9c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5
|
|
20
|
+
C230.6,315.9,227.7,318.9,224.1,318.9z"/>
|
|
21
|
+
<path class="st0" d="M324,465.3c-3.8,0-7.5-0.1-11.2-0.3l85.1,85h8.7v-2.1L324,465.3z"/>
|
|
22
|
+
<path class="st0" d="M283.9,464.6c0.3-0.8,0.6-1.6,0.8-2.4c-2.6-0.4-5.1-0.8-7.6-1.3c-0.8,2.6-3.3,4.5-6.2,4.5
|
|
23
|
+
c-3.6,0-6.5-2.9-6.5-6.5c0-0.3,0-0.5,0-0.8c-2.5-0.6-5-1.3-7.4-2c-0.2,0.9-0.3,1.9-0.3,2.9c0,7.8,6.4,14.2,14.2,14.2
|
|
24
|
+
c3,0,5.8-0.9,8.1-2.5l79.5,79.4h10.8L283.9,464.6z"/>
|
|
25
|
+
<path class="st0" d="M230.9,455.6v-9.7c-2.6-1.3-5.2-2.7-7.7-4.2v17.1l86.7,86.6v4.6h7.7v-7.8L230.9,455.6z"/>
|
|
26
|
+
<path class="st0" d="M363.8,463c-3.2,0.4-6.4,0.8-9.8,1.1l68.1,68V550h7.7v-21L363.8,463z"/>
|
|
27
|
+
<path class="st0" d="M254,514.3h-27.1c-1.7-5.9-7.2-10.3-13.6-10.3c-7.8,0-14.2,6.4-14.2,14.2c0,7.8,6.4,14.2,14.2,14.2
|
|
28
|
+
c6.5,0,12-4.4,13.7-10.4h24l26.3,26.3v1.7h7.7v-4.9L254,514.3z M213.3,524.7c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5
|
|
29
|
+
s6.5,2.9,6.5,6.5S216.8,524.7,213.3,524.7z"/>
|
|
30
|
+
<path class="st0" d="M245.9,313.1l6.2,6.2l5.4-5.4l-3.9-3.9v-2.6h-7.7L245.9,313.1L245.9,313.1z"/>
|
|
31
|
+
<path class="st0" d="M265.5,321.9l-5.4,5.4l8,8l5.4-5.4L265.5,321.9z"/>
|
|
32
|
+
<path class="st0" d="M441.8,498l-5.4,5.4l8,8l5.4-5.4L441.8,498z"/>
|
|
33
|
+
<path class="st0" d="M425.8,482l-5.4,5.4l8,8l5.4-5.4L425.8,482z"/>
|
|
34
|
+
<path class="st0" d="M281.6,337.9l-5.4,5.4l8,8l5.4-5.4L281.6,337.9z"/>
|
|
35
|
+
<path class="st0" d="M452.4,519.4l3,3v3.9h7.7v-7.1l-5.3-5.2L452.4,519.4z"/>
|
|
36
|
+
<path class="st0" d="M463.1,537.6h-7.7v11.3h7.7V537.6z"/>
|
|
37
|
+
<path class="st0" d="M409.8,465.9l-5.4,5.4l8,8l5.4-5.4L409.8,465.9z"/>
|
|
38
|
+
<path class="st0" d="M401.7,457.9l-5.4,5.4l-5.7-5.7c2.8-0.8,5.6-1.6,8.3-2.5L401.7,457.9z"/>
|
|
39
|
+
<path class="st0" d="M297.6,353.9l-5.4,5.4l8,8l5.4-5.4L297.6,353.9z"/>
|
|
40
|
+
<path class="st0" d="M321.6,377.9l-4.2,4.2c-0.9-0.1-1.7-0.1-2.6-0.2l-6.6-6.6l5.4-5.4L321.6,377.9z"/>
|
|
41
|
+
<path class="st0" d="M428.5,441.8c-2.2,1.4-4.5,2.7-6.9,3.9l62.2,62.2V550h7.7v-45.3L428.5,441.8z M296.7,310l-13.8-3l70.9,70.9
|
|
42
|
+
c2.7-1,5.1-2.2,7.2-3.6L296.7,310z M285.8,180.2c-2.4,3.3-4,7-4.6,11v9.4c0.4,2.2,1.1,4.4,2,6.4c1.3,2.4,3.2,4.7,5.6,6.9v-37
|
|
43
|
+
C287.8,177.9,286.7,179,285.8,180.2z"/>
|
|
44
|
+
<path class="st0" d="M449.6,425.2c-1.8,1.8-3.6,3.6-5.6,5.2l77.4,77.3V550h7.7v-45.3L449.6,425.2z M374.7,350.4L347,322.7
|
|
45
|
+
c-4.6-1.7-9.8-3.3-15.8-4.9l42,42c1-2.7,1.5-5.6,1.5-8.6C374.8,350.9,374.8,350.7,374.7,350.4z M326,166.4c-4.5,0-8.7,0.2-12.5,0.7
|
|
46
|
+
c1.5,1.3,3.4,2.2,5.3,2.7v57.7c2.4,0.7,5,1.3,7.6,1.9v-59.6c2.1-0.6,4-1.7,5.6-3.2C330.2,166.4,328.1,166.4,326,166.4z"/>
|
|
47
|
+
<rect x="179.9" y="328.4" class="st0" width="7.7" height="1.6"/>
|
|
48
|
+
<path class="st0" d="M179.9,316.9h7.7v-0.8h3.1v-7.7H180v8.5H179.9z"/>
|
|
49
|
+
<path class="st0" d="M187.6,512.4h-7.7v11.5h7.7V512.4z"/>
|
|
50
|
+
<path class="st0" d="M187.6,535.4h-7.7v11.5h7.7V535.4z"/>
|
|
51
|
+
<path class="st0" d="M187.6,489.4h-7.7v11.5h7.7V489.4z"/>
|
|
52
|
+
<path class="st0" d="M187.6,466.4h-7.7v11.5h7.7V466.4z"/>
|
|
53
|
+
<path class="st0" d="M187.6,443.4h-7.7v11.5h7.7V443.4z"/>
|
|
54
|
+
<path class="st0" d="M187.6,420.4h-7.7v11.5h7.7V420.4z"/>
|
|
55
|
+
<path class="st0" d="M187.5,408.9H180v-11.5h0.6c1.7,3.2,3.5,6.4,5.5,9.4C186.5,407.5,187,408.2,187.5,408.9z"/>
|
|
56
|
+
<path class="st0" d="M223.8,84.6c-7.8,0-14.2,6.4-14.2,14.2c0,6.4,4.3,11.9,10.3,13.6v2c5.3-4,11.1-7.6,17.3-10.9
|
|
57
|
+
c0.5-1.5,0.8-3.1,0.8-4.7C238,90.9,231.6,84.6,223.8,84.6z M223.8,105.3c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5
|
|
58
|
+
S227.4,105.3,223.8,105.3z M217.8,281.6h-66.2v267.2c2.5,0.3,5.1,0.6,7.7,0.7V289.3h68.3v-1.8C224.1,285.6,220.9,283.7,217.8,281.6
|
|
59
|
+
z"/>
|
|
60
|
+
<path class="st0" d="M757.3,539.8c-6.4,0-11.9,4.3-13.6,10.2h8.5c1.2-1.5,3-2.5,5.1-2.5c2.1,0,3.9,1,5.1,2.5h1.6
|
|
61
|
+
c2.3,0,4.6,0,6.8-0.1C769,544.1,763.6,539.8,757.3,539.8z M522.4,461l-0.1-0.1h-5.8v-48.1c-3-0.6-5.3-3.2-5.3-6.4
|
|
62
|
+
c0-3.2,2.3-5.8,5.3-6.4v-7.7c-7.3,0.6-13,6.7-13,14.1c0,6.5,4.4,12,10.3,13.7v43.3l39.1,39.1V550h7.7v-39.9l39.9,39.9h10.8
|
|
63
|
+
L522.4,461z"/>
|
|
64
|
+
<path class="st0" d="M802.8,435.2c0,7.8-6.4,14.2-14.2,14.2c-7.8,0-14.2-6.3-14.2-14.2c0-3.1,1-6,2.8-8.3c0,0,0,0,0-0.1
|
|
65
|
+
c2.1-1.5,4.2-3.1,6.2-4.8c0,0,0,0,0,0c1.6-0.6,3.4-1,5.2-1C796.4,421,802.8,427.4,802.8,435.2z"/>
|
|
66
|
+
<path class="st0" d="M848.6,396.8c0,7.8,6.4,14.2,14.2,14.2s14.2-6.4,14.2-14.2c0-7.8-6.4-14.2-14.2-14.2
|
|
67
|
+
C854.9,382.6,848.6,389,848.6,396.8z M869.3,396.8c0,3.6-2.9,6.5-6.5,6.5s-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5
|
|
68
|
+
C866.4,390.3,869.3,393.2,869.3,396.8z"/>
|
|
69
|
+
<path class="st0" d="M788.6,458.5c-7.8,0-14.2,6.4-14.2,14.2s6.4,14.2,14.2,14.2s14.2-6.4,14.2-14.2
|
|
70
|
+
C802.8,464.8,796.4,458.5,788.6,458.5z M788.6,479.2c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5
|
|
71
|
+
C795.1,476.3,792.2,479.2,788.6,479.2z"/>
|
|
72
|
+
<path class="st0" d="M740.8,103L641,0h-10.7l94.5,97.5l0,0C730.3,99.2,735.7,101,740.8,103L740.8,103z M819.3,540.4v-160
|
|
73
|
+
c-2.4,4.1-5,8-7.7,11.7v148.3c-2.9,0.8-5.4,2.5-7.2,4.8c5.3-1.3,10.5-2.8,15.6-4.6C819.8,540.5,819.5,540.5,819.3,540.4z"/>
|
|
74
|
+
<path class="st0" d="M492.3,374c-1.7-6-7.2-10.4-13.7-10.4c-0.4,0-0.7,0-1.2,0.1c0,0-0.1,0-0.1,0c-0.3,2.7-0.6,5.4-1,8
|
|
75
|
+
c0,0,0.1,0,0.1,0c0.7-0.3,1.4-0.4,2.2-0.4c3.6,0,6.5,2.9,6.5,6.5c0,3.6-2.9,6.5-6.5,6.5c-1.8,0-3.3-0.7-4.5-1.8c0,0,0,0-0.1-0.1
|
|
76
|
+
c-0.7,2.6-1.5,5.2-2.4,7.7c0,0,0.1,0,0.1,0c2.1,1.2,4.5,1.8,6.9,1.8c6.5,0,12-4.4,13.6-10.3h24.2V374H492.3z M719.9,506.3
|
|
77
|
+
c-6.5,0-12,4.4-13.7,10.4H617L603.3,503v-42h-7.7v34.3L561.3,461h-10.9l63.4,63.3h92.5c1.7,6,7.2,10.4,13.7,10.4
|
|
78
|
+
c7.8,0,14.2-6.4,14.2-14.2C734.1,512.6,727.7,506.3,719.9,506.3z M719.9,527c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5
|
|
79
|
+
c3.6,0,6.5,2.9,6.5,6.5C726.4,524,723.5,527,719.9,527z"/>
|
|
80
|
+
<path class="st0" d="M724.7,0c-1.1,0.7-2.3,1.1-3.7,1.1s-2.6-0.4-3.7-1.1h-9.5C710,5.1,715,8.8,721,8.8c5.9,0,11-3.6,13.1-8.8
|
|
81
|
+
H724.7z"/>
|
|
82
|
+
<path class="st0" d="M759.5,2.3V0h-7.7v2.3c-6,1.7-10.4,7.1-10.4,13.6c0,7.8,6.4,14.2,14.2,14.2s14.2-6.4,14.2-14.2
|
|
83
|
+
C769.9,9.5,765.5,4,759.5,2.3z M755.7,22.5c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5
|
|
84
|
+
C762.2,19.5,759.3,22.5,755.7,22.5z"/>
|
|
85
|
+
<path class="st0" d="M572.8,16.9l-1.1-1.1h-18.3c-1.7-5.9-7.2-10.3-13.6-10.3c-7.8,0-14.2,6.4-14.2,14.2s6.4,14.2,14.2,14.2
|
|
86
|
+
c6.5,0,12-4.4,13.7-10.4h15.1l65.2,65.1h10.8L572.8,16.9z M539.7,26.2c-3.6,0-6.5-2.9-6.5-6.5c0-3.6,2.9-6.5,6.5-6.5
|
|
87
|
+
c3.6,0,6.5,2.9,6.5,6.5C546.2,23.3,543.3,26.2,539.7,26.2z"/>
|
|
88
|
+
<path class="st0" d="M617.6,187.1V198l60.6,60.6v46.7h7.7v-49.9L617.6,187.1z M554.8,46.9c-7.8,0-14.2,6.4-14.2,14.2
|
|
89
|
+
c0,6.5,4.4,12,10.3,13.6v13.9h7.7V74.7c6-1.7,10.4-7.2,10.4-13.6C569,53.2,562.6,46.9,554.8,46.9z M554.8,67.6
|
|
90
|
+
c-3.6,0-6.5-2.9-6.5-6.5c0-3.6,2.9-6.5,6.5-6.5c3.6,0,6.5,2.9,6.5,6.5C561.3,64.6,558.4,67.6,554.8,67.6z"/>
|
|
91
|
+
<path class="st0" d="M683.4,459.9l-0.1,0.1l-22.7,22.7h-26.3v-21.8h-7.7v29.4h37.1l31.9-31.9C691.7,459.1,687.6,459.5,683.4,459.9z
|
|
92
|
+
M648.8,174.4H638l67.4,67.3v123.4c2.7-1.4,5.3-2.9,7.7-4.7V238.6L648.8,174.4z"/>
|
|
93
|
+
<path class="st0" d="M630.5,344.5c-5.7,0-10.6,3.4-12.9,8.2v11.9c2.2,4.9,7.2,8.2,12.9,8.2c7.8,0,14.2-6.4,14.2-14.2
|
|
94
|
+
C644.6,350.8,638.3,344.5,630.5,344.5z M630.5,365.1c-3.6,0-6.5-2.9-6.5-6.5c0-3.6,2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5
|
|
95
|
+
C637,362.2,634.1,365.1,630.5,365.1z"/>
|
|
96
|
+
<path class="st0" d="M630.5,267.5c-5.7,0-10.6,3.4-12.9,8.2v11.9c2.2,4.8,7.2,8.2,12.9,8.2c7.8,0,14.2-6.4,14.2-14.2
|
|
97
|
+
C644.6,273.8,638.3,267.5,630.5,267.5z M630.5,288.2c-3.6,0-6.5-2.9-6.5-6.5c0-3.6,2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5
|
|
98
|
+
C637,285.2,634.1,288.2,630.5,288.2z"/>
|
|
99
|
+
<path class="st0" d="M696.3,327.5c0-7.8-6.4-14.2-14.2-14.2s-14.2,6.4-14.2,14.2s6.4,14.2,14.2,14.2
|
|
100
|
+
C689.9,341.6,696.3,335.3,696.3,327.5z M682.1,334c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5S685.7,334,682.1,334z"
|
|
101
|
+
/>
|
|
102
|
+
<path class="st0" d="M685.9,351.5V372c-2.5,0.6-5,1.1-7.7,1.5v-22H685.9z"/>
|
|
103
|
+
<path class="st0" d="M737.1,225.6v-0.7c-0.2-0.8-0.4-1.5-0.7-2.2c0-0.1-0.1-0.2-0.1-0.3L694,180.2l0-0.1c-4.5-1.5-9.3-2.7-14.4-3.6
|
|
104
|
+
l0,0l50.1,50.1v115.2c1.2-2,2.2-4.1,3.3-6.3c1.6-3.4,3.1-7.2,4.3-11.2c0-0.1,0.1-0.2,0.1-0.3v-97.3
|
|
105
|
+
C737.3,226.3,737.2,225.9,737.1,225.6z M602.9,83c0-7.8-6.4-14.2-14.2-14.2s-14.2,6.4-14.2,14.2c0,2,0.4,3.9,1.2,5.6h9.7
|
|
106
|
+
c-1.9-1.1-3.2-3.2-3.2-5.6c0-3.6,2.9-6.5,6.5-6.5c3.6,0,6.5,2.9,6.5,6.5c0,2.4-1.3,4.5-3.2,5.6h10.3l-0.4-0.4
|
|
107
|
+
C602.5,86.5,602.9,84.8,602.9,83z"/>
|
|
108
|
+
<polygon class="st0" points="604.3,5.4 598.9,10.9 590.7,2.7 593.4,0 598.8,0 "/>
|
|
109
|
+
<path class="st1" d="M783.4,422c-2,1.7-4.1,3.3-6.2,4.8c0,0,0,0,0,0.1c2.1-1.5,4.2-3.1,6.1-4.8C783.3,422.1,783.4,422,783.4,422
|
|
110
|
+
C783.4,422,783.4,422,783.4,422z M740.8,103c-5.2-2.1-10.5-4-15.9-5.5c-0.1,0-0.1,0-0.1,0l0,0C730.3,99.2,735.7,101,740.8,103
|
|
111
|
+
L740.8,103z M736.3,222.4l-0.3-0.3c0,0.1,0.1,0.2,0.1,0.3l0.3,0.3C736.4,222.6,736.3,222.5,736.3,222.4z M683.4,459.9l-0.1,0.1
|
|
112
|
+
C683.3,460,683.4,460,683.4,459.9c4.1-0.3,8-0.7,11.9-1.2l0.2-0.2C691.7,459.1,687.6,459.5,683.4,459.9z M694,180.1
|
|
113
|
+
c-4.5-1.5-9.3-2.7-14.4-3.6l0,0C684.7,177.4,689.4,178.6,694,180.1C694,180.1,694,180.1,694,180.1L694,180.1z M677.4,89.2
|
|
114
|
+
c0,0-0.1,0-0.1,0l0,0c1,0.1,2,0.2,3,0.2C679.3,89.4,678.4,89.3,677.4,89.2z M680.3,89.5c1,0.1,1.9,0.1,2.9,0.2l0,0
|
|
115
|
+
C682.3,89.6,681.3,89.5,680.3,89.5z M626.6,460.9L626.6,460.9l7.7,0.1v-0.1H626.6z M522.3,460.9h-5.8v0.1h5.9L522.3,460.9z"/>
|
|
116
|
+
<path class="st2" d="M822.3,174.9c-15.1-27.9-36.7-49.2-64.7-64c-5.4-2.9-10.9-5.5-16.6-7.8c0,0-0.1,0-0.2-0.1l0.1,0.1
|
|
117
|
+
c-5.2-2.1-10.6-3.9-16.1-5.6l0,0c-6.5-1.9-13.1-3.6-20-4.8c-6.9-1.3-14.1-2.3-21.4-2.9c0,0-0.1,0-0.1,0l0,0
|
|
118
|
+
c-0.9-0.1-1.9-0.2-2.9-0.2h-0.1c-1-0.1-2-0.2-3-0.2l0,0c-6.2-0.4-12.4-0.6-18.9-0.6H516.5v372.3h5.8l0.1,0.1h104.2v-0.1h7.7v0.1
|
|
119
|
+
h25.5c8.1,0,15.9-0.3,23.5-1l0.1-0.1c4.2-0.4,8.3-0.8,12.2-1.5l-0.2,0.2c0.1,0,0.2,0,0.4-0.1c23.1-3.3,43.9-9.9,62.4-19.7
|
|
120
|
+
c6.7-3.6,13.1-7.6,19-12c0,0,0,0,0.1,0c0,0,0,0,0-0.1c2.1-1.5,4.2-3.1,6.2-4.8c0,0,0,0,0,0c5.3-4.3,10.3-8.9,14.9-13.8
|
|
121
|
+
c4.7-5,9.1-10.3,13.1-16c2.7-3.8,5.3-7.7,7.7-11.7c1.1-1.9,2.2-3.7,3.2-5.6c15.2-27.9,22.7-61.2,22.7-100
|
|
122
|
+
C845.2,236,837.6,202.7,822.3,174.9z M737.4,324c0,0.1-0.1,0.2-0.1,0.3c-1.2,4-2.7,7.8-4.3,11.2c-1.1,2.2-2.1,4.3-3.3,6.3
|
|
123
|
+
c0,0.1-0.1,0.1-0.1,0.2c-4.5,7.6-10,13.8-16.5,18.5c-2.4,1.8-5,3.3-7.7,4.7c-0.7,0.4-1.5,0.7-2.2,1.1c-5.3,2.4-11.1,4.4-17.3,5.8
|
|
124
|
+
c-2.5,0.6-5,1.1-7.7,1.5c-6.9,1.1-14.2,1.6-22.1,1.6h-38.5V174.4h35.6c9.5,0,18.3,0.7,26.3,2.1c0,0,0.1,0,0.1,0l0,0
|
|
125
|
+
c5.1,0.9,9.9,2.1,14.4,3.6l0,0.1c2.9,0.9,5.6,2,8.2,3.1c13.5,5.9,23.6,16.2,30.5,30.7c1.2,2.5,2.3,5.2,3.3,8.1l0.3,0.3
|
|
126
|
+
c0,0.1,0.1,0.2,0.1,0.3c0.3,0.7,0.5,1.4,0.7,2.2v0.7c0.1,0.3,0.2,0.7,0.3,1c3.8,12.9,5.8,29,5.8,48.2
|
|
127
|
+
C743.4,294.4,741.4,310.8,737.4,324z"/>
|
|
128
|
+
<path class="st0" d="M685.9,87l-2.7,2.7c-0.9-0.1-1.9-0.2-2.9-0.2h-0.1c-1-0.1-2-0.2-3-0.2l-5-5l5.4-5.4L685.9,87z"/>
|
|
129
|
+
<path class="st0" d="M661.4,62.5l-5.4,5.4l8.2,8.2l5.4-5.4L661.4,62.5z"/>
|
|
130
|
+
<path class="st0" d="M645.2,46.2l-5.4,5.4l8.2,8.2l5.4-5.4L645.2,46.2z"/>
|
|
131
|
+
<path class="st0" d="M628.8,29.9l-5.4,5.4l8.2,8.2L637,38L628.8,29.9z"/>
|
|
132
|
+
<path class="st0" d="M612.5,13.6l-5.4,5.4l8.2,8.2l5.4-5.4L612.5,13.6z"/>
|
|
133
|
+
<path class="st0" d="M28.1,323.4c-1.8-5.8-7.2-9.9-13.5-9.9c-6.4,0-11.8,4.2-13.5,10c-0.4,1.3-0.6,2.7-0.6,4.2s0.2,2.9,0.6,4.2
|
|
134
|
+
c1.8,5.8,7.2,9.9,13.5,9.9s11.7-4.2,13.5-9.9c0.4-1.3,0.6-2.8,0.6-4.2C28.7,326.2,28.5,324.7,28.1,323.4z M14.5,334.2
|
|
135
|
+
c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5C21.1,331.2,18.2,334.2,14.5,334.2z"/>
|
|
136
|
+
<path class="st0" d="M28.1,277.5c-1.8-5.8-7.2-9.9-13.5-9.9c-6.4,0-11.8,4.2-13.5,10c-0.4,1.3-0.6,2.8-0.6,4.2
|
|
137
|
+
c0,1.5,0.2,2.9,0.6,4.2c1.8,5.8,7.2,10,13.5,10s11.7-4.2,13.5-9.9c0.4-1.3,0.6-2.8,0.6-4.2C28.7,280.3,28.5,278.9,28.1,277.5z
|
|
138
|
+
M14.5,288.3c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5C21.1,285.4,18.2,288.3,14.5,288.3z"/>
|
|
139
|
+
<path class="st0" d="M28.1,422.2c-1.8-5.8-7.2-9.9-13.5-9.9c-3.7,0-7,1.4-9.5,3.7c1.9,8.4,4.3,16.6,7.4,24.5
|
|
140
|
+
c0.7,0.1,1.4,0.2,2.2,0.2c6.3,0,11.7-4.2,13.5-9.9c0.4-1.3,0.6-2.8,0.6-4.2S28.5,423.5,28.1,422.2z M14.5,432.9
|
|
141
|
+
c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5C21.1,430,18.2,432.9,14.5,432.9z"/>
|
|
142
|
+
<path class="st0" d="M126.1,390.2c-7.8,0-14.2,6.4-14.2,14.2c0,7.8,6.4,14.2,14.2,14.2s14.2-6.4,14.2-14.2S133.9,390.2,126.1,390.2
|
|
143
|
+
z M126.1,410.9c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5S129.7,410.9,126.1,410.9z"/>
|
|
144
|
+
<path class="st0" d="M18.4,351.1h-7.7v51.2h7.7V351.1z"/>
|
|
145
|
+
<path class="st0" d="M18.4,448.6v5.5c-0.9-1.8-1.8-3.7-2.6-5.5H18.4z"/>
|
|
146
|
+
<path class="st0" d="M191.6,257.6c-0.6,0.2-1.2,0.3-1.9,0.3c-3.6,0-6.5-2.9-6.5-6.5c0-1.8,0.7-3.4,1.9-4.6
|
|
147
|
+
c-1.2-2.3-2.2-4.7-3.2-7.2c-2.8,1.8-4.9,4.6-5.8,7.9h-37.6v7.6H176c1.6,6,7.2,10.4,13.7,10.4c2.5,0,4.8-0.6,6.8-1.8
|
|
148
|
+
C194.7,261.7,193.1,259.7,191.6,257.6z M45,376.3v117.2c2.5,2.7,5,5.4,7.7,8v-119C50,380.6,47.4,378.6,45,376.3z M1,247.4v7.7h27.1
|
|
149
|
+
v-7.7H1z"/>
|
|
150
|
+
<path class="st0" d="M76.9,391.3v129.8c-2.6-1.8-5.2-3.6-7.7-5.5V389.9C71.8,390.6,74.3,391,76.9,391.3z"/>
|
|
151
|
+
<path class="st0" d="M94.2,390.6v140.7c2.5,1.3,5.1,2.5,7.7,3.7V388.5C99.4,389.4,96.8,390.1,94.2,390.6z"/>
|
|
152
|
+
<path class="st0" d="M130.5,494.5h-7.7v11.6h7.7V494.5z"/>
|
|
153
|
+
<path class="st0" d="M130.5,471.3h-7.7v11.6h7.7V471.3z"/>
|
|
154
|
+
<path class="st0" d="M130.5,448h-7.7v11.6h7.7V448z"/>
|
|
155
|
+
<path class="st0" d="M130.5,517.8h-7.7v11.6h7.7V517.8z"/>
|
|
156
|
+
<path class="st0" d="M130.5,541.1v3.8c-2.6-0.6-5.1-1.3-7.7-2.1v-1.7H130.5z"/>
|
|
157
|
+
<path class="st0" d="M130.5,430.6h-7.7v5.8h7.7V430.6z"/>
|
|
158
|
+
<path class="st0" d="M930.6,132.3c-1,0.6-2.1,0.9-3.3,0.9c-3.6,0-6.5-2.9-6.5-6.5c0-3.6,2.9-6.5,6.5-6.5l0,0
|
|
159
|
+
c-0.8-2.5-1.6-5-2.5-7.4c-6.6,1.2-11.7,7-11.7,13.9c0,7.8,6.4,14.2,14.2,14.2c1.7,0,3.4-0.3,4.9-0.9
|
|
160
|
+
C931.7,137.4,931.2,134.8,930.6,132.3z"/>
|
|
161
|
+
<path class="st0" d="M878.9,123.5V65.7l-19.1-19.1h-39.7c-1.7-6-7.2-10.4-13.7-10.4c-7.8,0-14.2,6.4-14.2,14.2s6.4,14.2,14.2,14.2
|
|
162
|
+
c6.5,0,12-4.4,13.6-10.3h36.6l14.6,14.6v57.8l63.7,63.7v-10.8L878.9,123.5z M806.4,56.9c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5
|
|
163
|
+
s6.5,2.9,6.5,6.5S810,56.9,806.4,56.9z"/>
|
|
164
|
+
<path class="st0" d="M130.5,376.1h-7.7v5.8h7.7V376.1z"/>
|
|
165
|
+
<polygon class="st0" points="130.5,365.1 130.5,365.3 130.3,365.3 "/>
|
|
166
|
+
<polygon class="st0" points="867,187.3 867,365.6 859.3,365.6 859.3,190.5 668.6,0 679.4,0 "/>
|
|
167
|
+
<path class="st0" d="M515.4,185h-7.7v11.5h7.7V185z"/>
|
|
168
|
+
<path class="st0" d="M515.4,208h-7.7v11.5h7.7V208z"/>
|
|
169
|
+
<path class="st0" d="M515.4,139h-7.7v11.5h7.7V139z"/>
|
|
170
|
+
<path class="st0" d="M515.4,24h-7.7v11.5h7.7V24z"/>
|
|
171
|
+
<path class="st0" d="M515.4,1h-7.7v11.5h7.7V1z"/>
|
|
172
|
+
<path class="st0" d="M515.4,70h-7.7v11.5h7.7V70z"/>
|
|
173
|
+
<path class="st0" d="M515.4,93h-7.7v11.5h7.7V93z"/>
|
|
174
|
+
<path class="st0" d="M515.4,162h-7.7v11.5h7.7V162z"/>
|
|
175
|
+
<path class="st0" d="M515.4,231h-7.7v11.5h7.7V231z"/>
|
|
176
|
+
<path class="st0" d="M515.4,116h-7.7v11.5h7.7V116z"/>
|
|
177
|
+
<polygon class="st0" points="516.5,280.3 516.5,286.7 514.2,288.9 507.7,282.4 507.7,277 515.4,277 515.4,279.2 "/>
|
|
178
|
+
<path class="st0" d="M515.4,47h-7.7v11.5h7.7V47z"/>
|
|
179
|
+
<path class="st0" d="M515.4,254h-7.7v11.5h7.7V254z"/>
|
|
180
|
+
<path class="st0" d="M487,313.8V0h-7.7v313.9c-2.4,0.7-4.5,2-6.2,3.8c2.2,7.2,3.7,14.8,4.4,22.7c1.8,0.8,3.8,1.3,5.8,1.3
|
|
181
|
+
c7.8,0,14.2-6.4,14.2-14.2C497.5,320.9,493,315.4,487,313.8z M483.3,334c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5
|
|
182
|
+
C489.9,331.1,487,334,483.3,334z"/>
|
|
183
|
+
<path class="st0" d="M13.7,179c-1.5-5.7-6.6-10-12.6-10.5c0,0.8,0,1.6,0,2.5v5.2c3.1,0.5,5.5,3.2,5.5,6.4s-2.4,5.9-5.5,6.4v7.7
|
|
184
|
+
c6-0.4,10.9-4.6,12.6-10.1h20.9c1.4-2.7,3.1-5.2,4.9-7.6L13.7,179L13.7,179z M145.1,168.5c-0.6,0-1.1,0-1.6,0.1
|
|
185
|
+
c-5.8,0.7-10.6,4.9-12.1,10.4h-4.3c3.1,4,5.6,8.5,7.5,13.3l0,0c2.2,2.5,5.4,4.1,8.8,4.5c0.5,0.1,1.1,0.1,1.6,0.1
|
|
186
|
+
c7.8,0,14.2-6.4,14.2-14.2C159.3,174.9,152.9,168.5,145.1,168.5z M145.1,189.2c-0.6,0-1.1-0.1-1.6-0.2c-2.8-0.7-4.9-3.3-4.9-6.3
|
|
187
|
+
s2.1-5.6,4.9-6.3c0.5-0.1,1.1-0.2,1.6-0.2c3.6,0,6.5,2.9,6.5,6.5S148.7,189.2,145.1,189.2z"/>
|
|
188
|
+
<path class="st0" d="M175.5,174.9c0,2.4,0.6,4.6,1.6,6.6c1.1-6.4,2.8-12.6,5-18.5C178.2,165.5,175.5,169.9,175.5,174.9z"/>
|
|
189
|
+
<path class="st0" d="M172,0c-2.3,0-4.6,0-6.9,0.1c0,3.5-2.9,6.5-6.5,6.5c-3.2,0-5.9-2.4-6.4-5.5c-2.5,0.3-5.1,0.6-7.6,1
|
|
190
|
+
c1,6.8,6.9,12.1,14,12.1c7.8,0,14.2-6.4,14.2-14.2v0H172z"/>
|
|
191
|
+
<path class="st0" d="M175.5,204.5c-2.1-1.3-4.6-2-7.3-2c-6.4,0-11.9,4.3-13.6,10.2h-16.2v7.6h16.1c1.6,6.1,7.2,10.5,13.7,10.5
|
|
192
|
+
c3.8,0,7.2-1.5,9.8-3.9C176.5,219.9,175.6,212.4,175.5,204.5z M168.2,223.1c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5
|
|
193
|
+
s6.5,2.9,6.5,6.5C174.8,220.2,171.8,223.1,168.2,223.1z M1,212.6v7.6h27.1v-7.6H1z"/>
|
|
194
|
+
<path class="st0" d="M193.9,90.3h-7.7v11.4h7.7V90.3z"/>
|
|
195
|
+
<path class="st0" d="M193.9,135.9v4.9c-1.5,2.1-2.9,4.3-4.2,6.5h-3.4v-11.4H193.9z"/>
|
|
196
|
+
<path class="st0" d="M193.9,113.1h-7.7v11.4h7.7V113.1z"/>
|
|
197
|
+
<path class="st0" d="M193.9,69.4h-9.6V77h1.9v2h7.7L193.9,69.4L193.9,69.4z"/>
|
|
198
|
+
<path class="st0" d="M128.1,69.4h-11.2V77h11.2V69.4z"/>
|
|
199
|
+
<path class="st0" d="M60.6,69.4H49.4V77h11.2C60.6,77,60.6,69.4,60.6,69.4z"/>
|
|
200
|
+
<path class="st0" d="M150.5,69.4h-11.2V77h11.2V69.4z"/>
|
|
201
|
+
<path class="st0" d="M173,69.4h-11.2V77H173V69.4z"/>
|
|
202
|
+
<path class="st0" d="M105.6,69.4H94.4V77h11.2V69.4z"/>
|
|
203
|
+
<path class="st0" d="M83.1,69.4H71.9V77h11.2V69.4z"/>
|
|
204
|
+
<path class="st0" d="M38.2,69.4V77h-9.1c1.7-2.6,3.5-5.2,5.4-7.7L38.2,69.4L38.2,69.4z"/>
|
|
205
|
+
<path class="st0" d="M142.9,94.6c-6.4,0-11.8,4.2-13.6,10.1h-115c-1.1,2.5-2.1,5.1-3,7.7h117.9c0.1,0.3,0.2,0.6,0.3,0.9
|
|
206
|
+
c1.9,5.6,7.2,9.7,13.5,9.7c0.2,0,0.3,0,0.5,0c7.6-0.3,13.7-6.5,13.7-14.2C157.1,101,150.8,94.6,142.9,94.6z M143.5,115.3
|
|
207
|
+
c-0.2,0-0.4,0-0.5,0c-1.9,0-3.6-0.8-4.8-2.1c-1.1-1.2-1.8-2.7-1.8-4.4c0-3.6,2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5
|
|
208
|
+
C149.5,112.2,146.8,115,143.5,115.3z"/>
|
|
209
|
+
<path class="st0" d="M143.5,131.7c-0.2,0-0.4,0-0.5,0c-6.6,0-12.1,4.5-13.7,10.5H3.4c-0.4,2.5-0.8,5.1-1.1,7.6h127
|
|
210
|
+
c1.7,5.9,7.2,10.2,13.6,10.2c0.2,0,0.3,0,0.5,0c7.6-0.3,13.7-6.5,13.7-14.2C157.1,138.2,151,132,143.5,131.7z M143.5,152.4
|
|
211
|
+
c-0.2,0-0.4,0-0.5,0c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5c0.2,0,0.3,0,0.5,0c3.3,0.3,6,3.1,6,6.5
|
|
212
|
+
C149.5,149.3,146.8,152.1,143.5,152.4z"/>
|
|
213
|
+
<path class="st0" d="M904.8,464.9h-8.3v7.7h8.2c0.2,0.8,0.5,1.5,0.8,2.3c4.4-6.4,8.3-13.2,11.7-20.2
|
|
214
|
+
C911.4,455.1,906.5,459.3,904.8,464.9z"/>
|
|
215
|
+
<path class="st0" d="M874.3,473.3h7.7v-0.8h3.1v-7.7h-10.7L874.3,473.3L874.3,473.3z"/>
|
|
216
|
+
<path class="st0" d="M882,484.8h-7.7v11.5h7.7V484.8z"/>
|
|
217
|
+
<path class="st0" d="M918.2,241c-7.8,0-14.2,6.4-14.2,14.2c0,6.5,4.3,11.9,10.3,13.6V438H846v91.1c2.6-1.4,5.2-2.9,7.7-4.5v-79H922
|
|
218
|
+
V268.8c6-1.6,10.4-7.1,10.4-13.7C932.3,247.4,926,241,918.2,241z M918.2,261.7c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5
|
|
219
|
+
s6.5,2.9,6.5,6.5C924.7,258.8,921.8,261.7,918.2,261.7z"/>
|
|
220
|
+
<path class="st0" d="M391.3,40.4V0h-7.7v40.2c-6.1,1.6-10.6,7.1-10.6,13.7c0,7.8,6.4,14.2,14.2,14.2c7.8,0,14.2-6.4,14.2-14.2
|
|
221
|
+
C401.4,47.6,397.2,42.1,391.3,40.4z M387.2,60.4c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5S390.8,60.4,387.2,60.4z"
|
|
222
|
+
/>
|
|
223
|
+
<path class="st0" d="M353.7,40.2V0H346v40.3l0,0c-5.9,1.7-10.2,7.2-10.2,13.6c0,7.8,6.4,14.2,14.2,14.2c7.8,0,14.2-6.4,14.2-14.2
|
|
224
|
+
C364.3,47.4,359.8,41.8,353.7,40.2z M350.1,60.4c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5S353.7,60.4,350.1,60.4z"
|
|
225
|
+
/>
|
|
226
|
+
<path class="st0" d="M452.7,4.4V0H445v4.3c-6,1.6-10.4,7.1-10.4,13.7c0,7.8,6.4,14.2,14.2,14.2c7.8,0,14.2-6.4,14.2-14.2
|
|
227
|
+
C463,11.5,458.7,6.1,452.7,4.4z M448.8,24.5c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5S452.4,24.5,448.8,24.5z"/>
|
|
228
|
+
<path class="st0" d="M272,11.6V0h-7.7v11.6c-6,1.7-10.4,7.2-10.4,13.6c0,7.8,6.4,14.2,14.2,14.2c7.8,0,14.2-6.4,14.2-14.2
|
|
229
|
+
C282.3,18.8,277.9,13.3,272,11.6z M268.1,31.8c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5
|
|
230
|
+
C274.7,28.9,271.7,31.8,268.1,31.8z"/>
|
|
231
|
+
<path class="st0" d="M307.2,39.8c-6.5,0-12,4.4-13.7,10.3h-36.6l-14.7-14.6V0h-7.7v38.6l19.1,19.1h39.7c1.7,6,7.2,10.4,13.7,10.4
|
|
232
|
+
c7.8,0,14.2-6.3,14.2-14.2S315,39.8,307.2,39.8z M307.2,60.5c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5
|
|
233
|
+
S310.8,60.5,307.2,60.5z"/>
|
|
234
|
+
<path class="st0" d="M200.4,33.1c-6.5,0-11.9,4.3-13.6,10.3H58.2c-2.8,2.5-5.5,5-8,7.6h136.5c1.6,6,7.1,10.4,13.7,10.4
|
|
235
|
+
c7.8,0,14.2-6.4,14.2-14.2C214.6,39.4,208.2,33.1,200.4,33.1z M200.4,53.8c-3.6,0-6.5-2.9-6.5-6.5s2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5
|
|
236
|
+
C206.9,50.8,204,53.8,200.4,53.8z"/>
|
|
237
|
+
<path class="st0" d="M849.3,132.8V92.7c6-1.7,10.3-7.2,10.3-13.6c0-7.8-6.4-14.2-14.2-14.2s-14.2,6.4-14.2,14.2
|
|
238
|
+
c0,6.5,4.4,12,10.4,13.6V136l93.4,93.3v-10.9L849.3,132.8z M838.9,79c0-3.6,2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5s-2.9,6.5-6.5,6.5
|
|
239
|
+
C841.8,85.5,838.9,82.6,838.9,79z"/>
|
|
240
|
+
<g>
|
|
241
|
+
<path class="st2" d="M478,351.1c0,4.3-0.2,8.5-0.6,12.6c-0.3,2.7-0.6,5.4-1,8c-0.6,3.7-1.4,7.3-2.3,10.7c-0.7,2.6-1.5,5.2-2.4,7.7
|
|
242
|
+
c-3,8.4-7,16.1-12,23.2c-3,4.2-6.4,8.2-10,11.9c-1.8,1.8-3.6,3.6-5.6,5.2c-4.7,4.1-9.9,7.9-15.5,11.3c-2.2,1.4-4.5,2.7-6.9,3.9
|
|
243
|
+
c-4.4,2.3-9.1,4.4-14,6.3c-2.8,1.1-5.7,2.2-8.7,3.1c-2.7,0.9-5.5,1.7-8.3,2.5c-8.4,2.3-17.3,4.1-26.8,5.3
|
|
244
|
+
c-3.2,0.4-6.4,0.8-9.8,1.1c-8.7,0.8-17.8,1.2-27.3,1.2c-0.9,0-1.9,0-2.8,0c-3.8,0-7.5-0.1-11.2-0.3c-9.8-0.4-19.1-1.3-28.1-2.7
|
|
245
|
+
c-2.6-0.4-5.1-0.8-7.6-1.3c-4.3-0.8-8.6-1.8-12.7-2.8c-2.5-0.6-5-1.3-7.4-2c-5.2-1.5-10.2-3.2-15-5.2c-3.9-1.5-7.6-3.2-11.2-5
|
|
246
|
+
c-2.6-1.3-5.2-2.7-7.7-4.2c-14.4-8.5-26.3-19.5-35.7-32.8c-0.5-0.7-1-1.4-1.5-2.1c-2-3-3.8-6.1-5.5-9.4
|
|
247
|
+
C171,379,166.1,356.5,166,330h96c0.6,11.4,3.5,21,8.5,28.7c5.1,7.8,12.2,13.6,21.5,17.6c6.7,2.9,14.3,4.7,22.8,5.5
|
|
248
|
+
c0.9,0.1,1.7,0.2,2.6,0.2c2.5,0.2,5.2,0.3,7.9,0.3c10.8,0,19.8-1.3,27.1-4c0.5-0.2,0.9-0.3,1.4-0.5c2.7-1,5.1-2.2,7.2-3.6
|
|
249
|
+
c3.2-2,5.9-4.3,8-7c1.9-2.4,3.3-4.9,4.3-7.6s1.5-5.6,1.5-8.6c0-0.2,0-0.5,0-0.7c-0.2-5.4-2.1-10.2-5.6-14.2
|
|
250
|
+
c-3.5-4.4-9.3-8.2-17.5-11.6c-1.5-0.6-3-1.3-4.7-1.9c-4.6-1.7-9.8-3.3-15.8-4.9c-3.9-1-8-2-12.5-3l-22.1-4.8l-13.8-3l-1.1-0.2
|
|
251
|
+
c-20.8-4.5-38.9-10.9-54.1-19.3c-3.4-1.8-6.7-3.8-9.8-5.8c-5.1-3.3-9.8-6.9-14.1-10.7c-2.6-2.3-5-4.7-7.2-7.2
|
|
252
|
+
c-1.8-2-3.4-4-4.9-6.2c-2.5-3.4-4.7-7-6.5-10.8c-1.2-2.3-2.2-4.7-3.2-7.2c-1.6-4-2.8-8.2-3.8-12.7c-1.6-7-2.4-14.5-2.5-22.4
|
|
253
|
+
c0-0.8,0-1.6,0-2.4c0-7.1,0.5-13.9,1.6-20.5c1.1-6.4,2.8-12.6,5-18.5c2-5.4,4.5-10.7,7.5-15.7c1.3-2.2,2.7-4.4,4.2-6.5
|
|
254
|
+
c0.2-0.2,0.3-0.5,0.5-0.8c7-9.7,15.5-18.3,25.5-25.7c5.3-4,11.1-7.6,17.3-10.9c3.4-1.8,6.9-3.5,10.5-5.1
|
|
255
|
+
c22.8-9.9,48.9-14.9,78.4-14.9c30.1,0,56.1,5,78,15.1c3.8,1.7,7.4,3.6,10.9,5.6c2.3,1.3,4.5,2.7,6.7,4.1c3.3,2.2,6.5,4.5,9.6,6.9
|
|
256
|
+
c2.1,1.7,4.1,3.4,6,5.1c6.7,6.2,12.6,13.2,17.6,20.8c12,18.2,18.1,39.5,18.2,63.8h-96.7c-0.9-11.7-5.2-21-12.8-27.7
|
|
257
|
+
c-0.3-0.2-0.5-0.5-0.8-0.7c-2-1.7-4.3-3.2-6.9-4.5c-6.3-3.1-14.1-5-23.6-5.5c-2-0.1-4-0.2-6.1-0.2c-4.5,0-8.7,0.2-12.5,0.7
|
|
258
|
+
c-5,0.6-9.4,1.7-13.1,3.1c-4.7,1.8-8.5,4-11.5,6.6c-1.2,1.1-2.2,2.2-3.1,3.4c-2.4,3.3-4,7-4.6,11c-0.2,1.2-0.3,2.3-0.3,3.5
|
|
259
|
+
c-0.1,2,0,4,0.3,5.8c0.4,2.2,1.1,4.4,2,6.4c1.3,2.4,3.2,4.7,5.6,6.9c1.1,1,2.2,1.9,3.5,2.8c4.1,2.8,9.4,5.3,15.8,7.6
|
|
260
|
+
c3.2,1.2,6.8,2.3,10.7,3.3c2.4,0.7,5,1.3,7.6,1.9c1.5,0.3,3,0.7,4.6,1l24.6,5.3l6,1.3c0.6,0.1,1.1,0.2,1.7,0.4
|
|
261
|
+
c9.3,2,17.9,4.3,26,6.9c2.6,0.8,5.2,1.7,7.7,2.6c6.3,2.3,12.1,4.7,17.6,7.4c3.3,1.6,6.5,3.3,9.6,5.1c2.7,1.5,5.2,3.1,7.7,4.7
|
|
262
|
+
c7.1,4.7,13.4,9.9,18.8,15.5c9.3,9.6,16.2,20.4,20.5,32.4c0.7,1.9,1.4,3.9,2,5.8c2.2,7.2,3.7,14.8,4.4,22.7
|
|
263
|
+
C477.8,343.9,478,347.5,478,351.1z"/>
|
|
264
|
+
</g>
|
|
265
|
+
<g>
|
|
266
|
+
<g>
|
|
267
|
+
<g>
|
|
268
|
+
<g>
|
|
269
|
+
<path class="st3" d="M107.6,346c0,13.2-9.8,23.2-22.9,23.2s-23-10-23-23.2c0-8.6,4.3-15.9,10.9-19.4l6.1,10.7
|
|
270
|
+
c-3,1.6-4.9,4.9-4.9,8.7c0,6.3,4.7,10.8,10.9,10.8c6.1,0,10.8-4.5,10.8-10.8c0-4.3-2.1-7.8-5.6-9.5l5-11.2
|
|
271
|
+
C102.5,328.6,107.6,336.6,107.6,346z"/>
|
|
272
|
+
</g>
|
|
273
|
+
<g>
|
|
274
|
+
<path class="st3" d="M86.2,280.9c12.6,0,21.4,8.6,21.4,21c0,12.3-8.8,20.9-21.4,20.9H62.6v-12.6h23.6c5.7,0,9.3-3.2,9.3-8.4
|
|
275
|
+
s-3.6-8.4-9.3-8.4H62.6v-12.7h23.6V280.9z"/>
|
|
276
|
+
</g>
|
|
277
|
+
<g>
|
|
278
|
+
<path class="st3" d="M74.6,247.3v14.5h32.1v12.6H62.6v-27L74.6,247.3L74.6,247.3z"/>
|
|
279
|
+
</g>
|
|
280
|
+
<g>
|
|
281
|
+
<path class="st3" d="M48.8,227.9c4.2,0,7.7,3.5,7.7,7.7s-3.5,7.7-7.7,7.7c-4.1,0-7.6-3.5-7.6-7.7S44.7,227.9,48.8,227.9z
|
|
282
|
+
M62.6,229.3h44.1V242H62.6V229.3z"/>
|
|
283
|
+
</g>
|
|
284
|
+
<g>
|
|
285
|
+
<path class="st3" d="M84.7,177.5c13.1,0,22.9,10,22.9,22.9c0,13-9.8,22.9-22.9,22.9s-23-9.9-23-22.9
|
|
286
|
+
C61.7,187.5,71.6,177.5,84.7,177.5z M84.7,210.9c6.1,0,10.8-4.5,10.8-10.5c0-5.9-4.7-10.5-10.8-10.5c-6.3,0-10.9,4.6-10.9,10.5
|
|
287
|
+
C73.8,206.4,78.4,210.9,84.7,210.9z"/>
|
|
288
|
+
</g>
|
|
289
|
+
</g>
|
|
290
|
+
</g>
|
|
291
|
+
</g>
|
|
292
|
+
</g>
|
|
6
293
|
</svg>
|
package/src/css/main.css
CHANGED
|
@@ -193,7 +193,7 @@
|
|
|
193
193
|
}
|
|
194
194
|
|
|
195
195
|
main p {
|
|
196
|
-
@apply leading-relaxed;
|
|
196
|
+
@apply leading-relaxed mt-4 first:mt-0;
|
|
197
197
|
}
|
|
198
198
|
|
|
199
199
|
main ul {
|
|
@@ -217,7 +217,7 @@
|
|
|
217
217
|
}
|
|
218
218
|
|
|
219
219
|
main pre {
|
|
220
|
-
@apply overflow-x-auto bg-zinc-950 p-5 font-mono text-[13px] leading-relaxed text-zinc-300;
|
|
220
|
+
@apply overflow-x-auto bg-zinc-950 mt-2 p-5 font-mono text-[13px] leading-relaxed text-zinc-300;
|
|
221
221
|
}
|
|
222
222
|
|
|
223
223
|
main pre code {
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { getItem, setItem } from '../storage.js'
|
|
2
|
+
|
|
1
3
|
const DIFFICULTY = ['', 'Beginner', 'Beginner', 'Gemiddeld', 'Gemiddeld', 'Gevorderd', 'Gevorderd', 'Expert', 'Expert']
|
|
2
4
|
|
|
3
5
|
export function renderExerciseMeta(exercise) {
|
|
@@ -15,23 +17,16 @@ export function renderExerciseMeta(exercise) {
|
|
|
15
17
|
if (descEl) descEl.innerHTML = exercise.descriptionInlineHtml ?? ''
|
|
16
18
|
}
|
|
17
19
|
|
|
20
|
+
export function getSolvedExercises(week) {
|
|
21
|
+
return getItem(`exercises:week${week}`, [])
|
|
22
|
+
}
|
|
23
|
+
|
|
18
24
|
export function markExerciseSolved(week, id) {
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
const raw = localStorage.getItem(key)
|
|
22
|
-
const solved = raw ? JSON.parse(raw) : []
|
|
23
|
-
if (!solved.includes(id)) {
|
|
24
|
-
solved.push(id)
|
|
25
|
-
localStorage.setItem(key, JSON.stringify(solved))
|
|
26
|
-
}
|
|
27
|
-
} catch { /* ignore */ }
|
|
25
|
+
const solved = getSolvedExercises(week)
|
|
26
|
+
if (!solved.includes(id)) setItem(`exercises:week${week}`, [...solved, id])
|
|
28
27
|
}
|
|
29
28
|
|
|
30
|
-
export function
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
return raw ? JSON.parse(raw) : []
|
|
34
|
-
} catch {
|
|
35
|
-
return []
|
|
36
|
-
}
|
|
29
|
+
export function markExerciseUnsolved(week, id) {
|
|
30
|
+
const solved = getSolvedExercises(week)
|
|
31
|
+
setItem(`exercises:week${week}`, solved.filter((s) => s !== id))
|
|
37
32
|
}
|
package/src/js/exercises/hub.js
CHANGED
|
@@ -50,7 +50,7 @@ export function initExerciseHub(weekData, weekNum) {
|
|
|
50
50
|
|
|
51
51
|
container.innerHTML = `<div class="card divide-y divide-zinc-100 p-0">${items}</div>`
|
|
52
52
|
|
|
53
|
-
const progressEl = document.querySelector('[data-hub-progress]')
|
|
53
|
+
const progressEl = document.querySelector('[data-hub-progress-text]')
|
|
54
54
|
const progressBar = document.querySelector('[data-hub-progress-bar]')
|
|
55
55
|
if (progressEl) {
|
|
56
56
|
const total = weekData.exercises.length
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { renderExerciseMeta, markExerciseSolved } from './exercise-shared.js'
|
|
1
|
+
import { renderExerciseMeta, markExerciseSolved, markExerciseUnsolved, getSolvedExercises } from './exercise-shared.js'
|
|
2
2
|
import { sitePath } from '../site-path.js'
|
|
3
3
|
import { initExternalExercise } from './external-exercise.js'
|
|
4
4
|
import { initTheoryPanel } from './theory-panel.js'
|
|
@@ -69,6 +69,7 @@ export async function initExercisePage(weekNum) {
|
|
|
69
69
|
|
|
70
70
|
renderExerciseMeta(exercise)
|
|
71
71
|
renderNavButtons(weekNum, id, weekData.exercises.length)
|
|
72
|
+
initCompletionToggle(weekNum, id)
|
|
72
73
|
return
|
|
73
74
|
}
|
|
74
75
|
|
|
@@ -85,6 +86,7 @@ export async function initExercisePage(weekNum) {
|
|
|
85
86
|
})
|
|
86
87
|
|
|
87
88
|
renderNavButtons(weekNum, id, weekData.exercises.length)
|
|
89
|
+
initCompletionToggle(weekNum, id)
|
|
88
90
|
return
|
|
89
91
|
}
|
|
90
92
|
|
|
@@ -146,6 +148,27 @@ export async function initExercisePage(weekNum) {
|
|
|
146
148
|
}
|
|
147
149
|
|
|
148
150
|
renderNavButtons(weekNum, id, weekData.exercises.length)
|
|
151
|
+
initCompletionToggle(weekNum, id)
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
function initCompletionToggle(weekNum, id) {
|
|
155
|
+
const btn = document.querySelector('[data-mark-complete]')
|
|
156
|
+
if (!btn) return
|
|
157
|
+
|
|
158
|
+
let done = getSolvedExercises(weekNum).includes(id)
|
|
159
|
+
|
|
160
|
+
function update() {
|
|
161
|
+
btn.textContent = done ? 'Voltooid ✓' : 'Markeer als voltooid'
|
|
162
|
+
btn.classList.toggle('btn-primary', done)
|
|
163
|
+
btn.classList.toggle('btn-secondary', !done)
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
update()
|
|
167
|
+
btn.addEventListener('click', () => {
|
|
168
|
+
done = !done
|
|
169
|
+
done ? markExerciseSolved(weekNum, id) : markExerciseUnsolved(weekNum, id)
|
|
170
|
+
update()
|
|
171
|
+
})
|
|
149
172
|
}
|
|
150
173
|
|
|
151
174
|
function renderNavButtons(week, currentId, total) {
|
package/src/js/nav.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { mountLayout } from './layout.js'
|
|
2
2
|
import manifest from '../data/manifest.json'
|
|
3
3
|
import { sitePath } from './site-path.js'
|
|
4
|
+
import { prefixedKey } from './storage.js'
|
|
4
5
|
|
|
5
6
|
function buildNavItems() {
|
|
6
7
|
const items = [{ href: manifest.nav.home.href, label: manifest.nav.home.label }]
|
|
@@ -32,11 +33,11 @@ function isActive(href) {
|
|
|
32
33
|
function renderNavLink(item, nested = false) {
|
|
33
34
|
const active = isActive(item.href)
|
|
34
35
|
const base = nested
|
|
35
|
-
? 'block
|
|
36
|
-
: 'block px-3 py-2.5 text-[13px] font-medium transition'
|
|
36
|
+
? 'block pl-6 pr-3 py-2 text-[13px] transition rounded'
|
|
37
|
+
: 'block px-3 py-2.5 text-[13px] font-medium transition rounded'
|
|
37
38
|
const classes = active
|
|
38
|
-
? `${base} text-white`
|
|
39
|
-
: `${base} text-zinc-300 hover:text-white`
|
|
39
|
+
? `${base} text-white bg-white/10`
|
|
40
|
+
: `${base} text-zinc-300 hover:text-white hover:bg-white/5`
|
|
40
41
|
|
|
41
42
|
const external = item.external ? ' target="_blank" rel="noopener noreferrer"' : ''
|
|
42
43
|
return `<a href="${sitePath(item.href)}" class="${classes}"${external}>${item.label}</a>`
|
|
@@ -85,7 +86,7 @@ function renderNavGroup(group) {
|
|
|
85
86
|
}
|
|
86
87
|
|
|
87
88
|
function initCollapsible(navEl, defaultExpandedKeys) {
|
|
88
|
-
const STORAGE_KEY = 'nav-collapsed-groups'
|
|
89
|
+
const STORAGE_KEY = prefixedKey('nav-collapsed-groups')
|
|
89
90
|
|
|
90
91
|
function getCollapsed() {
|
|
91
92
|
try {
|
package/src/js/storage.js
CHANGED
|
@@ -1,4 +1,13 @@
|
|
|
1
|
-
|
|
1
|
+
function computePrefix() {
|
|
2
|
+
const first = window.location.pathname.split('/').filter(Boolean)[0] ?? ''
|
|
3
|
+
return first && first !== 'pages' ? `${first}:` : 'e-module:'
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
export const PREFIX = computePrefix()
|
|
7
|
+
|
|
8
|
+
export function prefixedKey(key) {
|
|
9
|
+
return PREFIX + key
|
|
10
|
+
}
|
|
2
11
|
|
|
3
12
|
export function getItem(key, fallback = null) {
|
|
4
13
|
try {
|
package/templates/page.html
CHANGED
|
@@ -1,29 +1,32 @@
|
|
|
1
1
|
<!DOCTYPE html>
|
|
2
2
|
<html lang="nl">
|
|
3
|
-
<head>
|
|
4
|
-
<!-- include:head -->
|
|
5
|
-
<title>Paginatitel — CSS Grid E-module</title>
|
|
6
|
-
</head>
|
|
7
|
-
<body class="font-sans antialiased">
|
|
8
|
-
<div data-page-content>
|
|
9
|
-
<main class="px-4 py-10 md:px-10">
|
|
10
|
-
<div class="mx-auto max-w-3xl">
|
|
11
|
-
<!-- Pagina-inhoud -->
|
|
12
|
-
</div>
|
|
13
|
-
</main>
|
|
14
|
-
</div>
|
|
15
3
|
|
|
16
|
-
|
|
17
|
-
|
|
4
|
+
<head>
|
|
5
|
+
<!-- include:head -->
|
|
6
|
+
<title>Paginatitel — CSS Grid E-module</title>
|
|
7
|
+
</head>
|
|
18
8
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
9
|
+
<body class="font-sans antialiased">
|
|
10
|
+
<div data-page-content>
|
|
11
|
+
<main class="px-4 py-10 md:px-10">
|
|
12
|
+
<div class="mx-auto max-w-3xl">
|
|
13
|
+
<!-- Pagina-inhoud -->
|
|
14
|
+
</div>
|
|
15
|
+
</main>
|
|
16
|
+
</div>
|
|
25
17
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
18
|
+
<script type="module">
|
|
19
|
+
import { initPage } from '/src/js/nav.js'
|
|
20
|
+
|
|
21
|
+
initPage({
|
|
22
|
+
breadcrumbs: [
|
|
23
|
+
{ label: 'Home', href: '/index.html' },
|
|
24
|
+
{ label: 'Titel' },
|
|
25
|
+
],
|
|
26
|
+
})
|
|
27
|
+
|
|
28
|
+
// Optioneel: pagina-specifieke JS importeren
|
|
29
|
+
</script>
|
|
30
|
+
</body>
|
|
31
|
+
|
|
32
|
+
</html>
|