From a295061365349df7adf14d2ed8171a476f46eda9 Mon Sep 17 00:00:00 2001 From: Hsieh Chin Fan Date: Sun, 13 Oct 2024 18:58:56 +0800 Subject: feat: use option to set blocks --- src/dumbymap.mjs | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'src') 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) => { /** Render HTML */ htmlHolder.innerHTML = md.render(mdContent) - /** Post HTML rendered */ - // TODO Do this in markdown-it - const blocks = htmlHolder.querySelectorAll(':scope > div:not(:has(nav))') - blocks.forEach(b => { - b.classList.add('dumby-block') - b.dataset.total = blocks.length - }) return container } @@ -126,13 +119,18 @@ export const generateMaps = (container, { layouts = [], delay, renderCallback, + addBlocks = htmlHolder => Array.from(htmlHolder.children) + .map(e => { e.classList.add('dumby-block'); return e }), } = {}) => { /** Prepare Contaner/HTML-Holder/Showcase */ container.classList.add('Dumby') delete container.dataset.layout container.dataset.layout = defaultLayouts[0].name + const htmlHolder = container.querySelector('.SemanticHtml') ?? container - const blocks = Array.from(htmlHolder.querySelectorAll('.dumby-block')) + const blocks = addBlocks(htmlHolder) + blocks.forEach(b => b.dataset.total = blocks.length) + const showcase = document.createElement('div') container.appendChild(showcase) showcase.classList.add('Showcase') -- cgit v1.2.3-70-g09d2