diff options
author | Hsieh Chin Fan <pham@topo.tw> | 2024-10-13 18:58:56 +0800 |
---|---|---|
committer | Hsieh Chin Fan <pham@topo.tw> | 2024-10-14 16:34:00 +0800 |
commit | a295061365349df7adf14d2ed8171a476f46eda9 (patch) | |
tree | 92f1839f8b9e35ded769e4d354deda5dad37dd91 /src/dumbymap.mjs | |
parent | cdb80969e186404dc56761e844a3efcb065192cc (diff) |
feat: use option to set blocks
Diffstat (limited to 'src/dumbymap.mjs')
-rw-r--r-- | src/dumbymap.mjs | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/src/dumbymap.mjs b/src/dumbymap.mjs index 3151261..4405786 100644 --- a/src/dumbymap.mjs +++ b/src/dumbymap.mjs | |||
@@ -101,13 +101,6 @@ export const markdown2HTML = (container, mdContent) => { | |||
101 | 101 | ||
102 | /** Render HTML */ | 102 | /** Render HTML */ |
103 | htmlHolder.innerHTML = md.render(mdContent) | 103 | htmlHolder.innerHTML = md.render(mdContent) |
104 | /** Post HTML rendered */ | ||
105 | // TODO Do this in markdown-it | ||
106 | const blocks = htmlHolder.querySelectorAll(':scope > div:not(:has(nav))') | ||
107 | blocks.forEach(b => { | ||
108 | b.classList.add('dumby-block') | ||
109 | b.dataset.total = blocks.length | ||
110 | }) | ||
111 | 104 | ||
112 | return container | 105 | return container |
113 | } | 106 | } |
@@ -126,13 +119,18 @@ export const generateMaps = (container, { | |||
126 | layouts = [], | 119 | layouts = [], |
127 | delay, | 120 | delay, |
128 | renderCallback, | 121 | renderCallback, |
122 | addBlocks = htmlHolder => Array.from(htmlHolder.children) | ||
123 | .map(e => { e.classList.add('dumby-block'); return e }), | ||
129 | } = {}) => { | 124 | } = {}) => { |
130 | /** Prepare Contaner/HTML-Holder/Showcase */ | 125 | /** Prepare Contaner/HTML-Holder/Showcase */ |
131 | container.classList.add('Dumby') | 126 | container.classList.add('Dumby') |
132 | delete container.dataset.layout | 127 | delete container.dataset.layout |
133 | container.dataset.layout = defaultLayouts[0].name | 128 | container.dataset.layout = defaultLayouts[0].name |
129 | |||
134 | const htmlHolder = container.querySelector('.SemanticHtml') ?? container | 130 | const htmlHolder = container.querySelector('.SemanticHtml') ?? container |
135 | const blocks = Array.from(htmlHolder.querySelectorAll('.dumby-block')) | 131 | const blocks = addBlocks(htmlHolder) |
132 | blocks.forEach(b => b.dataset.total = blocks.length) | ||
133 | |||
136 | const showcase = document.createElement('div') | 134 | const showcase = document.createElement('div') |
137 | container.appendChild(showcase) | 135 | container.appendChild(showcase) |
138 | showcase.classList.add('Showcase') | 136 | showcase.classList.add('Showcase') |