@codename/deck 0.1.0 → 0.1.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/dist/deck.mjs CHANGED
@@ -13,18 +13,18 @@ function ye(e){let t=e.replace(/\r\n?/g,`
13
13
  `),a=a.slice(0,c.index));let h=[],f="default",g=n,y="",w=[],C=()=>h.push({name:f,text:w.join(`
14
14
  `),start:t[g]}),W=dt(a.split(`
15
15
  `));for(let[j,E]of a.split(`
16
- `).entries()){let R=/^\s*(`{3,}|~{3,})/.exec(E)?.[1],_=ct.exec(E)??(W.has(j)?[E,W.get(j)]:null);if(y)R&&E.trimStart().startsWith(y)&&(y="");else if(R)y=R;else if(_){C(),f=_[1],w=[],g=n+j+1;continue}w.push(E)}C();let U=h.filter((j,E)=>E>0||j.text.trim()||h.length===1),F=/^#{1,6}\s+(.+)$/m.exec(a.replace(/^```[\s\S]*?^```/gm,""));return{index:o,start:t[s?s[0]-1:n],end:t[r]-1,settings:i,slots:U,notes:u,title:String(i.title??F?.[1]??"").trim()}}import{Lexer as ht}from"marked";var Ue=/^[a-z][a-z0-9-]{0,31}$/,pt=/^(auto|min-content|max-content|\d{1,2}(\.\d)?fr|\d{1,3}%)$/,ft=["Title Slide","Title and Content","Section Header","Two Content","Comparison","Title Only","Blank","Content with Caption","Picture with Caption"],We={align:["start","center","end"],justify:["start","center","end"],paper:["paper","fill","ink","soft"],title:["normal","large","huge"]},be={title:"cover","title-slide":"cover","two-columns":"two-cols","two-column":"two-cols",columns:"two-cols",comparison:"two-cols-header","three-columns":"three-cols","section-header":"section",divider:"section",big:"fact",number:"fact","image-text":"image-right",closing:"end",thanks:"end"},ue={name:"standard",tokens:{},layouts:Object.fromEntries(Object.entries({default:{label:{en:"Title and content",fr:"Titre et contenu"},pptx:"Title and Content"},cover:{label:{en:"Cover",fr:"Couverture"},justify:"center",paper:"fill",title:"huge",pptx:"Title Slide",numbered:!1},intro:{label:{en:"Introduction",fr:"Introduction"},justify:"center",paper:"fill",title:"large",pptx:"Title Slide",numbered:!1},section:{label:{en:"Section",fr:"Section"},justify:"center",paper:"ink",title:"huge",pptx:"Section Header",numbered:!1},center:{label:{en:"Centred",fr:"Centré"},justify:"center",align:"center",pptx:"Title Only"},statement:{label:{en:"Statement",fr:"Affirmation"},justify:"center",align:"center",title:"large",pptx:"Title Only"},fact:{label:{en:"Big number",fr:"Grand chiffre"},justify:"center",align:"center",title:"huge",pptx:"Title Only"},quote:{label:{en:"Quote",fr:"Citation"},justify:"center",pptx:"Title Only"},end:{label:{en:"Closing",fr:"Clôture"},justify:"center",align:"center",paper:"fill",title:"large",pptx:"Title Slide",numbered:!1},full:{label:{en:"Full",fr:"Plein cadre"},pptx:"Blank",numbered:!1},none:{label:{en:"Blank",fr:"Vide"},pptx:"Blank",numbered:!1},"two-cols":{label:{en:"Two columns",fr:"Deux colonnes"},slots:["default","right"],areas:"default right",columns:"1fr 1fr",pptx:"Two Content"},"two-cols-header":{label:{en:"Comparison",fr:"Comparaison"},slots:["default","left","right","bottom"],areas:"default default | left right | bottom bottom",columns:"1fr 1fr",rows:"auto 1fr auto",pptx:"Comparison"},"three-cols":{label:{en:"Three columns",fr:"Trois colonnes"},slots:["default","left","middle","right"],areas:"default default default | left middle right",columns:"1fr 1fr 1fr",rows:"auto 1fr",pptx:"Comparison"},"image-left":{label:{en:"Picture left",fr:"Image à gauche"},pptx:"Picture with Caption",justify:"center"},"image-right":{label:{en:"Picture right",fr:"Image à droite"},pptx:"Picture with Caption",justify:"center"},image:{label:{en:"Picture",fr:"Image"},pptx:"Blank",numbered:!1}}).map(([e,t])=>[e,ke(t).layout]))};function ke(e){let t=[];if(!e||typeof e!="object")return{layout:null,problems:["not a layout"]};let n={},r=Array.isArray(e.slots)||typeof e.slots=="string"?[e.slots].flat().map(String):e.slots&&typeof e.slots=="object"?Object.entries(e.slots).map(([f,g])=>(g&&typeof g=="object"&&(n[f]=mt(g)),f==="title"?"default":f)):["default"],s=[...new Set(r)];if(!s.every(f=>Ue.test(f)))return{layout:null,problems:["a slot name is not a-z, 0-9 and -"]};s.includes("default")||s.unshift("default");let i=(Array.isArray(e.areas)?e.areas.map(f=>[f].flat().join(" ")):String(e.areas??s.join(" ")).split(/\||\n/)).map(f=>f.trim().replace(/^"|"$/g,"").split(/\s+/)).filter(f=>f.length&&f[0]),l=i[0]?.length??0;if(!i.length||i.some(f=>f.length!==l)||i.flat().some(f=>f!=="."&&!s.includes(f)))return{layout:null,problems:["areas are not a rectangle of its slots"]};for(let f of s){let g=i.flatMap((C,W)=>C.map((U,F)=>[U,F,W])).filter(([C])=>C===f);if(!g.length){f!=="default"&&t.push(`slot ${f} has no area`);continue}let y=g.map(C=>C[1]),w=g.map(C=>C[2]);if(g.length!==(Math.max(...y)-Math.min(...y)+1)*(Math.max(...w)-Math.min(...w)+1))return{layout:null,problems:[`slot ${f} is not a rectangle`]}}let a=(f,g)=>{let y=f===void 0?Array(g).fill("1fr"):(Array.isArray(f)?f:String(f).split(/\s+/)).map(String);return y.length===g&&y.every(w=>pt.test(w))?y:null},u=a(e.columns,l),p=a(e.rows,i.length);if(!u||!p)return{layout:null,problems:["columns or rows are not tracks deck knows (auto, 1fr, 40%…), one per column or row"]};let d=(f,g)=>{let y=String(e[f]??g);return We[f].includes(y)?y:(t.push(`${f} ${y} is not one of ${We[f].join(", ")}`),g)},c=typeof e.label=="string"||e.label&&typeof e.label=="object"?e.label:void 0,h=f=>typeof f=="string"?f.slice(0,300):void 0;return{layout:{label:c,intent:h(e.intent),use_when:h(e.use_when),avoid_when:h(e.avoid_when),slots:s,budgets:n,areas:i,columns:u,rows:p,align:d("align","start"),justify:d("justify","start"),paper:d("paper","paper"),title:d("title","normal"),pptx:ft.includes(e.pptx)?e.pptx:s.length>1?"Comparison":"Title and Content",numbered:e.numbered!==!1},problems:t}}function mt(e){let t={};for(let n of["max_words","max_chars","item_max_words","heading_max_words"])Number.isInteger(e[n])&&e[n]>0&&(t[n]=e[n]);return Array.isArray(e.items)&&e.items.length===2&&e.items.every(Number.isInteger)&&(t.items=e.items),typeof e.required=="boolean"&&(t.required=e.required),typeof e.kind=="string"&&/^[a-z-]{1,20}$/.test(e.kind)&&(t.kind=e.kind),t}function _e(e){if(!e||typeof e!="object")return{};if(!JSON.stringify(e).includes('"$value"'))return e;let t=c=>c&&typeof c=="object"&&"$value"in c?c.$value:c,n=c=>{let h=t(c);return typeof h=="string"?h:typeof h?.hex=="string"?h.hex:void 0},r=c=>{let h=t(c);return Array.isArray(h)?h.map(String):typeof h=="string"?[h]:void 0},s={bg:"paper",background:"paper",paper:"paper",fg:"ink",text:"ink",ink:"ink",accent:"primary",primary:"primary",muted:"muted",surface:"soft",soft:"soft"},o=c=>Object.fromEntries(Object.entries(c??{}).filter(([h])=>h in s).map(([h,f])=>[s[h],n(f)]).filter(([,h])=>h)),i=e.color??e.colour??{},l={...o(i),...o(i.light)},a=o(i.dark);Object.keys(a).length&&(l.dark=a);let u=e.font??e.fontFamily??{},p=r(u.heading??u.display??u.sans),d=r(u.body??u.text??u.sans);return(p||d)&&(l.fonts={heading:p??d,body:d??p}),l}function pe(...e){let t={name:"standard",tokens:{},layouts:{...ue.layouts}},n=[];for(let r of e)if(!(!r||typeof r!="object")){typeof r.name=="string"&&(t.name=r.name),r.tokens&&typeof r.tokens=="object"&&(t.tokens={...t.tokens,..._e(r.tokens)});for(let[s,o]of Object.entries(r.layouts??r.types??{})){if(!Ue.test(s)){n.push(`layout ${s}: not a-z, 0-9 and -`);continue}let{layout:i,problems:l}=ke(o);n.push(...l.map(a=>`layout ${s}: ${a}`)),i&&(t.layouts[s]=i)}}return{kit:t,problems:n}}function xe(e,t,n){return typeof e.label=="string"?e.label:e.label?.[n]??e.label?.[n.split("-")[0]]??e.label?.en??t}function we(e){let t=e.slots.map(s=>s.name);if(t.includes("middle"))return"three-cols";if(t.includes("left"))return"two-cols-header";if(t.includes("right"))return"two-cols";if(e.index===0)return"cover";let r=e.slots.map(s=>s.text).join(`
16
+ `).entries()){let R=/^\s*(`{3,}|~{3,})/.exec(E)?.[1],_=ct.exec(E)??(W.has(j)?[E,W.get(j)]:null);if(y)R&&E.trimStart().startsWith(y)&&(y="");else if(R)y=R;else if(_){C(),f=_[1],w=[],g=n+j+1;continue}w.push(E)}C();let U=h.filter((j,E)=>E>0||j.text.trim()||h.length===1),F=/^#{1,6}\s+(.+)$/m.exec(a.replace(/^```[\s\S]*?^```/gm,""));return{index:o,start:t[s?s[0]-1:n],end:t[r]-1,settings:i,slots:U,notes:u,title:String(i.title??F?.[1]??"").trim()}}var Ue=/^[a-z][a-z0-9-]{0,31}$/,pt=/^(auto|min-content|max-content|\d{1,2}(\.\d)?fr|\d{1,3}%)$/,ft=["Title Slide","Title and Content","Section Header","Two Content","Comparison","Title Only","Blank","Content with Caption","Picture with Caption"],We={align:["start","center","end"],justify:["start","center","end"],paper:["paper","fill","ink","soft"],title:["normal","large","huge"]},be={title:"cover","title-slide":"cover","two-columns":"two-cols","two-column":"two-cols",columns:"two-cols",comparison:"two-cols-header","three-columns":"three-cols","section-header":"section",divider:"section",big:"fact",number:"fact","image-text":"image-right",closing:"end",thanks:"end"},ue={name:"standard",tokens:{},layouts:Object.fromEntries(Object.entries({default:{label:{en:"Title and content",fr:"Titre et contenu"},pptx:"Title and Content"},cover:{label:{en:"Cover",fr:"Couverture"},justify:"center",paper:"fill",title:"huge",pptx:"Title Slide",numbered:!1},intro:{label:{en:"Introduction",fr:"Introduction"},justify:"center",paper:"fill",title:"large",pptx:"Title Slide",numbered:!1},section:{label:{en:"Section",fr:"Section"},justify:"center",paper:"ink",title:"huge",pptx:"Section Header",numbered:!1},center:{label:{en:"Centred",fr:"Centré"},justify:"center",align:"center",pptx:"Title Only"},statement:{label:{en:"Statement",fr:"Affirmation"},justify:"center",align:"center",title:"large",pptx:"Title Only"},fact:{label:{en:"Big number",fr:"Grand chiffre"},justify:"center",align:"center",title:"huge",pptx:"Title Only"},quote:{label:{en:"Quote",fr:"Citation"},justify:"center",pptx:"Title Only"},end:{label:{en:"Closing",fr:"Clôture"},justify:"center",align:"center",paper:"fill",title:"large",pptx:"Title Slide",numbered:!1},full:{label:{en:"Full",fr:"Plein cadre"},pptx:"Blank",numbered:!1},none:{label:{en:"Blank",fr:"Vide"},pptx:"Blank",numbered:!1},"two-cols":{label:{en:"Two columns",fr:"Deux colonnes"},slots:["default","right"],areas:"default right",columns:"1fr 1fr",pptx:"Two Content"},"two-cols-header":{label:{en:"Comparison",fr:"Comparaison"},slots:["default","left","right","bottom"],areas:"default default | left right | bottom bottom",columns:"1fr 1fr",rows:"auto 1fr auto",pptx:"Comparison"},"three-cols":{label:{en:"Three columns",fr:"Trois colonnes"},slots:["default","left","middle","right"],areas:"default default default | left middle right",columns:"1fr 1fr 1fr",rows:"auto 1fr",pptx:"Comparison"},"image-left":{label:{en:"Picture left",fr:"Image à gauche"},pptx:"Picture with Caption",justify:"center"},"image-right":{label:{en:"Picture right",fr:"Image à droite"},pptx:"Picture with Caption",justify:"center"},image:{label:{en:"Picture",fr:"Image"},pptx:"Blank",numbered:!1}}).map(([e,t])=>[e,ke(t).layout]))};function ke(e){let t=[];if(!e||typeof e!="object")return{layout:null,problems:["not a layout"]};let n={},r=Array.isArray(e.slots)||typeof e.slots=="string"?[e.slots].flat().map(String):e.slots&&typeof e.slots=="object"?Object.entries(e.slots).map(([f,g])=>(g&&typeof g=="object"&&(n[f]=mt(g)),f==="title"?"default":f)):["default"],s=[...new Set(r)];if(!s.every(f=>Ue.test(f)))return{layout:null,problems:["a slot name is not a-z, 0-9 and -"]};s.includes("default")||s.unshift("default");let i=(Array.isArray(e.areas)?e.areas.map(f=>[f].flat().join(" ")):String(e.areas??s.join(" ")).split(/\||\n/)).map(f=>f.trim().replace(/^"|"$/g,"").split(/\s+/)).filter(f=>f.length&&f[0]),l=i[0]?.length??0;if(!i.length||i.some(f=>f.length!==l)||i.flat().some(f=>f!=="."&&!s.includes(f)))return{layout:null,problems:["areas are not a rectangle of its slots"]};for(let f of s){let g=i.flatMap((C,W)=>C.map((U,F)=>[U,F,W])).filter(([C])=>C===f);if(!g.length){f!=="default"&&t.push(`slot ${f} has no area`);continue}let y=g.map(C=>C[1]),w=g.map(C=>C[2]);if(g.length!==(Math.max(...y)-Math.min(...y)+1)*(Math.max(...w)-Math.min(...w)+1))return{layout:null,problems:[`slot ${f} is not a rectangle`]}}let a=(f,g)=>{let y=f===void 0?Array(g).fill("1fr"):(Array.isArray(f)?f:String(f).split(/\s+/)).map(String);return y.length===g&&y.every(w=>pt.test(w))?y:null},u=a(e.columns,l),p=a(e.rows,i.length);if(!u||!p)return{layout:null,problems:["columns or rows are not tracks deck knows (auto, 1fr, 40%…), one per column or row"]};let d=(f,g)=>{let y=String(e[f]??g);return We[f].includes(y)?y:(t.push(`${f} ${y} is not one of ${We[f].join(", ")}`),g)},c=typeof e.label=="string"||e.label&&typeof e.label=="object"?e.label:void 0,h=f=>typeof f=="string"?f.slice(0,300):void 0;return{layout:{label:c,intent:h(e.intent),use_when:h(e.use_when),avoid_when:h(e.avoid_when),slots:s,budgets:n,areas:i,columns:u,rows:p,align:d("align","start"),justify:d("justify","start"),paper:d("paper","paper"),title:d("title","normal"),pptx:ft.includes(e.pptx)?e.pptx:s.length>1?"Comparison":"Title and Content",numbered:e.numbered!==!1},problems:t}}function mt(e){let t={};for(let n of["max_words","max_chars","item_max_words","heading_max_words"])Number.isInteger(e[n])&&e[n]>0&&(t[n]=e[n]);return Array.isArray(e.items)&&e.items.length===2&&e.items.every(Number.isInteger)&&(t.items=e.items),typeof e.required=="boolean"&&(t.required=e.required),typeof e.kind=="string"&&/^[a-z-]{1,20}$/.test(e.kind)&&(t.kind=e.kind),t}function _e(e){if(!e||typeof e!="object")return{};if(!JSON.stringify(e).includes('"$value"'))return e;let t=c=>c&&typeof c=="object"&&"$value"in c?c.$value:c,n=c=>{let h=t(c);return typeof h=="string"?h:typeof h?.hex=="string"?h.hex:void 0},r=c=>{let h=t(c);return Array.isArray(h)?h.map(String):typeof h=="string"?[h]:void 0},s={bg:"paper",background:"paper",paper:"paper",fg:"ink",text:"ink",ink:"ink",accent:"primary",primary:"primary",muted:"muted",surface:"soft",soft:"soft"},o=c=>Object.fromEntries(Object.entries(c??{}).filter(([h])=>h in s).map(([h,f])=>[s[h],n(f)]).filter(([,h])=>h)),i=e.color??e.colour??{},l={...o(i),...o(i.light)},a=o(i.dark);Object.keys(a).length&&(l.dark=a);let u=e.font??e.fontFamily??{},p=r(u.heading??u.display??u.sans),d=r(u.body??u.text??u.sans);return(p||d)&&(l.fonts={heading:p??d,body:d??p}),l}function pe(...e){let t={name:"standard",tokens:{},layouts:{...ue.layouts}},n=[];for(let r of e)if(!(!r||typeof r!="object")){typeof r.name=="string"&&(t.name=r.name),r.tokens&&typeof r.tokens=="object"&&(t.tokens={...t.tokens,..._e(r.tokens)});for(let[s,o]of Object.entries(r.layouts??r.types??{})){if(!Ue.test(s)){n.push(`layout ${s}: not a-z, 0-9 and -`);continue}let{layout:i,problems:l}=ke(o);n.push(...l.map(a=>`layout ${s}: ${a}`)),i&&(t.layouts[s]=i)}}return{kit:t,problems:n}}function xe(e,t,n){return typeof e.label=="string"?e.label:e.label?.[n]??e.label?.[n.split("-")[0]]??e.label?.en??t}function we(e){let t=e.slots.map(s=>s.name);if(t.includes("middle"))return"three-cols";if(t.includes("left"))return"two-cols-header";if(t.includes("right"))return"two-cols";if(e.index===0)return"cover";let r=e.slots.map(s=>s.text).join(`
17
17
  `).trim().split(`
18
18
  `).filter(s=>s.trim());return r.length===1&&/^#{1,2}\s+\S/.test(r[0])?"section":/^#\s+[^\s]*\d[\d\s.,%€$£¥]*\S*\s*$/u.test(r[0]??"")&&r.length<=3&&!/^\s*[-*\d]+[.)]?\s/m.test(r.slice(1).join(`
19
- `))?"fact":r.length&&r.every((s,o)=>s.startsWith(">")||o===r.length-1&&!s.startsWith("#"))&&r[0].startsWith(">")?"quote":"default"}function k(e,t={},n=[]){let r=document.createElement(e);for(let[s,o]of Object.entries(t))o!==void 0&&o!==!1&&r.setAttribute(s,o===!0?"":String(o));for(let s of n)(s||s==="")&&r.append(s);return r}function gt(e){let t=String(e??"").trim();return/^(https?:|mailto:|blob:|#)/i.test(t)||/^data:image\/(png|jpe?g|gif|webp|avif|svg\+xml);/i.test(t)?t:/^[a-z][\w+.-]*:/i.test(t)?null:t}function fe(e,t){let n=String(e.settings.layout??"").trim().toLowerCase(),r=t.kit.layouts[n]?n:t.kit.layouts[be[n]]?be[n]:we(e),s=t.kit.layouts[r]??ue.layouts.default,o=String(e.settings.class??"").split(/\s+/).filter(c=>["invert","text-center","text-left"].includes(c)),i={step:0},l=new Map(e.slots.map(c=>[c.name,c])),a=s.slots,u=k("section",{class:["deck-slide",`deck-layout-${r}`,...o.map(c=>`deck-class-${c}`)].join(" "),"data-index":e.index,"data-layout":r,"data-paper":s.paper,"data-align":s.align,"data-justify":s.justify,"data-title":s.title,"aria-roledescription":"slide",role:"group"}),p=k("div",{class:"deck-canvas"});p.style.setProperty("grid-template-areas",s.areas.map(c=>`"${c.map(h=>h==="."?".":`s-${h}`).join(" ")}"`).join(" ")),p.style.setProperty("grid-template-columns",s.columns.join(" ")),p.style.setProperty("grid-template-rows",s.rows.join(" ")),u.append(p);let d=e.settings.image??e.settings.background;if(typeof d=="string"&&["image-left","image-right","image","cover"].includes(r)){let c=t.resolve(d);if(c){let h=k("div",{class:"deck-image",role:"img","aria-label":String(e.settings.alt??"")||void 0});h.style.setProperty("--deck-image",`url("${c.replace(/["\\\n]/g,encodeURIComponent)}")`),p.append(h),u.classList.add("has-image")}}for(let c of a){let h=l.get(c),f=k("div",{class:"deck-slot","data-slot":c},h?Ve(h,t,i):[]);f.style.setProperty("grid-area",`s-${c}`),p.append(f)}for(let c of e.slots)a.includes(c.name)||p.append(k("div",{class:"deck-slot","data-slot":c.name},Ve(c,t,i)));return s.numbered&&e.settings.paginate!==!1&&u.append(k("span",{class:"deck-number","aria-hidden":"true"},[t.number(e.index+1)])),{element:u,steps:i.step}}function Ve(e,t,n){let r=new ht({gfm:!0}).lex(e.text),s=[],o=e.start,i="";for(let l of r){let a=o;o+=l.raw.length;let u=l.type==="paragraph"?l.raw.trim().split(`
20
- `).map(d=>d.trim()):[];if(u.length&&u.every(d=>/^:{3,}/.test(d))){for(let d of u)/^:{3,}[ \t]*\{?[ \t]*\.?incremental\b/.test(d)?i="clicks":/^:{3,}\s*$/.test(d)&&i==="clicks"&&(i="");continue}if(l.type==="html"){let d=/^\s*<(\/?)(v-clicks?|br)\b[^>]*>\s*$/i.exec(l.raw);if(d&&d[2]==="br")s.push(k("br"));else if(d)i=d[1]?"":d[2].toLowerCase()==="v-clicks"?"clicks":"click";else if(/<li\b/i.test(l.raw)){let c=k(/<ol\b/i.test(l.raw)?"ol":"ul",{dir:"auto"});for(let[,h,f]of l.raw.matchAll(/<li\b([^>]*)>([\s\S]*?)(?=<\/li>|<li\b|<\/[ou]l>|$)/gi)){let g=f.replace(/<!--[\s\S]*?-->/g,"").replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim();if(!g)continue;let y=k("li",{dir:"auto"},[g]);(/\bv-click\b/.test(h)||i==="clicks")&&$e(y,++n.step),c.append(y)}c.childElementCount&&s.push(c)}else{let c=l.raw.replace(/<!--[\s\S]*?-->/g,"").replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim();c&&s.push(k("p",{},[c]))}continue}let p=ve(l,a,t,i==="clicks"?n:null);p&&((i==="click"||i==="clicks"&&l.type!=="list")&&$e(p,++n.step),s.push(p))}return s}var $e=(e,t)=>{e.classList.add("deck-step"),e.setAttribute("data-step",String(t))};function ve(e,t,n,r){switch(e.type){case"heading":{let s=/^\s*#{1,6}[ \t]+/.exec(e.raw),o=s?Se(t+s[0].length,t+e.raw.replace(/\s*#*\s*$/,"").length):void 0;return n.headings==="real"?k(`h${e.depth}`,{dir:"auto","data-edit":o},B(e.tokens,n)):k("p",{class:`deck-h deck-h${e.depth}`,role:"heading","aria-level":Math.min(6,e.depth+2),dir:"auto","data-edit":o},B(e.tokens,n))}case"paragraph":{let s=e.tokens.length===1&&e.tokens[0].type==="image";return k("p",{dir:"auto",class:s?"deck-picture":void 0,"data-edit":s?void 0:Se(t,t+e.raw.trimEnd().length)},B(e.tokens,n))}case"text":return k("p",{dir:"auto"},B(e.tokens??[{type:"text",text:e.text}],n));case"blockquote":return k("blockquote",{},yt(e.tokens,t,e.raw,n));case"list":{let s=0,o=k(e.ordered?"ol":"ul",{start:e.ordered&&e.start!==1?e.start:void 0,class:e.items.some(i=>i.task)?"deck-tasks":void 0});for(let i of e.items){let l=e.raw.indexOf(i.raw,s);s=l+i.raw.length;let a=t+Math.max(0,l),u=/^\s*(?:[-*+]|\d+[.)])\s+(?:\[[ xX]\]\s+)?/.exec(i.raw),p=i.tokens.length===1&&i.tokens[0].type==="text"&&!/\n\s*\S/.test(i.raw.trim().split(`
19
+ `))?"fact":r.length&&r.every((s,o)=>s.startsWith(">")||o===r.length-1&&!s.startsWith("#"))&&r[0].startsWith(">")?"quote":"default"}function k(e,t={},n=[]){let r=document.createElement(e);for(let[s,o]of Object.entries(t))o!==void 0&&o!==!1&&r.setAttribute(s,o===!0?"":String(o));for(let s of n)(s||s==="")&&r.append(s);return r}function ht(e){let t=String(e??"").trim();return/^(https?:|mailto:|blob:|#)/i.test(t)||/^data:image\/(png|jpe?g|gif|webp|avif|svg\+xml);/i.test(t)?t:/^[a-z][\w+.-]*:/i.test(t)?null:t}function fe(e,t){let n=String(e.settings.layout??"").trim().toLowerCase(),r=t.kit.layouts[n]?n:t.kit.layouts[be[n]]?be[n]:we(e),s=t.kit.layouts[r]??ue.layouts.default,o=String(e.settings.class??"").split(/\s+/).filter(c=>["invert","text-center","text-left"].includes(c)),i={step:0},l=new Map(e.slots.map(c=>[c.name,c])),a=s.slots,u=k("section",{class:["deck-slide",`deck-layout-${r}`,...o.map(c=>`deck-class-${c}`)].join(" "),"data-index":e.index,"data-layout":r,"data-paper":s.paper,"data-align":s.align,"data-justify":s.justify,"data-title":s.title,"aria-roledescription":t.slide,role:"group"}),p=k("div",{class:"deck-canvas"});p.style.setProperty("grid-template-areas",s.areas.map(c=>`"${c.map(h=>h==="."?".":`s-${h}`).join(" ")}"`).join(" ")),p.style.setProperty("grid-template-columns",s.columns.join(" ")),p.style.setProperty("grid-template-rows",s.rows.join(" ")),u.append(p);let d=e.settings.image??e.settings.background;if(typeof d=="string"&&["image-left","image-right","image","cover"].includes(r)){let c=t.resolve(d);if(c){let h=k("div",{class:"deck-image",role:"img","aria-label":String(e.settings.alt??"")||void 0});h.style.setProperty("--deck-image",`url("${c.replace(/["\\\n]/g,encodeURIComponent)}")`),p.append(h),u.classList.add("has-image")}}for(let c of a){let h=l.get(c),f=k("div",{class:"deck-slot","data-slot":c},h?Ve(h,t,i):[]);f.style.setProperty("grid-area",`s-${c}`),p.append(f)}for(let c of e.slots)a.includes(c.name)||p.append(k("div",{class:"deck-slot","data-slot":c.name},Ve(c,t,i)));return s.numbered&&e.settings.paginate!==!1&&u.append(k("span",{class:"deck-number","aria-hidden":"true"},[t.number(e.index+1)])),{element:u,steps:i.step}}function Ve(e,t,n){let r=t.lex(e.text),s=[],o=e.start,i="";for(let l of r){let a=o;o+=l.raw.length;let u=l.type==="paragraph"?l.raw.trim().split(`
20
+ `).map(d=>d.trim()):[];if(u.length&&u.every(d=>/^:{3,}/.test(d))){for(let d of u)/^:{3,}[ \t]*\{?[ \t]*\.?incremental\b/.test(d)?i="clicks":/^:{3,}\s*$/.test(d)&&i==="clicks"&&(i="");continue}if(l.type==="html"){let d=/^\s*<(\/?)(v-clicks?|br)\b[^>]*>\s*$/i.exec(l.raw);if(d&&d[2]==="br")s.push(k("br"));else if(d)i=d[1]?"":d[2].toLowerCase()==="v-clicks"?"clicks":"click";else if(/<li\b/i.test(l.raw)){let c=k(/<ol\b/i.test(l.raw)?"ol":"ul",{dir:"auto"});for(let[,h,f]of l.raw.matchAll(/<li\b([^>]*)>([\s\S]*?)(?=<\/li>|<li\b|<\/[ou]l>|$)/gi)){let g=f.replace(/<!--[\s\S]*?-->/g,"").replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim();if(!g)continue;let y=k("li",{dir:"auto"},[g]);(/\bv-click\b/.test(h)||i==="clicks")&&$e(y,++n.step),c.append(y)}c.childElementCount&&s.push(c)}else{let c=l.raw.replace(/<!--[\s\S]*?-->/g,"").replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim();c&&s.push(k("p",{},[c]))}continue}let p=ve(l,a,t,i==="clicks"?n:null);p&&((i==="click"||i==="clicks"&&l.type!=="list")&&$e(p,++n.step),s.push(p))}return s}var $e=(e,t)=>{e.classList.add("deck-step"),e.setAttribute("data-step",String(t))};function ve(e,t,n,r){switch(e.type){case"heading":{let s=/^\s*#{1,6}[ \t]+/.exec(e.raw),o=s?Se(t+s[0].length,t+e.raw.replace(/\s*#*\s*$/,"").length):void 0;return n.headings==="real"?k(`h${e.depth}`,{dir:"auto","data-edit":o},B(e.tokens,n)):k("p",{class:`deck-h deck-h${e.depth}`,role:"heading","aria-level":Math.min(6,e.depth+2),dir:"auto","data-edit":o},B(e.tokens,n))}case"paragraph":{let s=e.tokens.length===1&&e.tokens[0].type==="image";return k("p",{dir:"auto",class:s?"deck-picture":void 0,"data-edit":s?void 0:Se(t,t+e.raw.trimEnd().length)},B(e.tokens,n))}case"text":return k("p",{dir:"auto"},B(e.tokens??[{type:"text",text:e.text}],n));case"blockquote":return k("blockquote",{},gt(e.tokens,t,e.raw,n));case"list":{let s=0,o=k(e.ordered?"ol":"ul",{start:e.ordered&&e.start!==1?e.start:void 0,class:e.items.some(i=>i.task)?"deck-tasks":void 0});for(let i of e.items){let l=e.raw.indexOf(i.raw,s);s=l+i.raw.length;let a=t+Math.max(0,l),u=/^\s*(?:[-*+]|\d+[.)])\s+(?:\[[ xX]\]\s+)?/.exec(i.raw),p=i.tokens.length===1&&i.tokens[0].type==="text"&&!/\n\s*\S/.test(i.raw.trim().split(`
21
21
  `).slice(1).join(`
22
- `)),d=k("li",{dir:"auto","data-edit":p&&u?Se(a+u[0].length,a+i.raw.trimEnd().length):void 0},[i.task?k("input",{type:"checkbox",checked:i.checked,disabled:!0,"aria-label":i.text}):null,...i.tokens.flatMap(c=>c.type==="text"?B(c.tokens??[{type:"text",text:c.text}],n):[ve(c,a+Math.max(0,i.raw.indexOf(c.raw)),n,null)])]);r&&$e(d,++r.step),o.append(d)}return o}case"code":{let s=/^(\S*)\s*(?:\{([^}]*)\})?/.exec(e.lang??"")??[],o=(s[1]??"").toLowerCase(),i=n.blocks[o];if(i){let u=k("div",{class:`deck-block deck-${o}`,"data-source":e.text});return u.append(k("pre",{class:"deck-block-source",dir:"ltr"},[k("code",{},[e.text])])),queueMicrotask(()=>Promise.resolve(i(u,e.text)).catch(()=>u.classList.add("is-failed"))),u}let l=bt(s[2]??""),a=k("code",{class:o?`language-${o}`:void 0});for(let[u,p]of e.text.split(`
22
+ `)),d=k("li",{dir:"auto","data-edit":p&&u?Se(a+u[0].length,a+i.raw.trimEnd().length):void 0},[i.task?k("input",{type:"checkbox",checked:i.checked,disabled:!0,"aria-label":i.text}):null,...i.tokens.flatMap(c=>c.type==="text"?B(c.tokens??[{type:"text",text:c.text}],n):[ve(c,a+Math.max(0,i.raw.indexOf(c.raw)),n,null)])]);r&&$e(d,++r.step),o.append(d)}return o}case"code":{let s=/^(\S*)\s*(?:\{([^}]*)\})?/.exec(e.lang??"")??[],o=(s[1]??"").toLowerCase(),i=n.blocks[o];if(i){let u=k("div",{class:`deck-block deck-${o}`,"data-source":e.text});return u.append(k("pre",{class:"deck-block-source",dir:"ltr"},[k("code",{},[e.text])])),queueMicrotask(()=>Promise.resolve(i(u,e.text)).catch(()=>u.classList.add("is-failed"))),u}let l=yt(s[2]??""),a=k("code",{class:o?`language-${o}`:void 0});for(let[u,p]of e.text.split(`
23
23
  `).entries())a.append(k("span",{class:l.has(u+1)?"deck-line is-marked":"deck-line"},[p,`
24
- `]));return k("pre",{dir:"ltr",class:l.size?"has-marks":void 0,tabindex:0},[a])}case"table":{let s=o=>o??void 0;return k("div",{class:"deck-table"},[k("table",{},[k("thead",{},[k("tr",{},e.header.map((o,i)=>k("th",{"data-align":s(e.align[i]),dir:"auto"},B(o.tokens,n))))]),k("tbody",{},e.rows.map(o=>k("tr",{},o.map((i,l)=>k("td",{"data-align":s(e.align[l]),dir:"auto"},B(i.tokens,n))))))])])}default:return null}}function yt(e,t,n,r){let s=0;return e.map(o=>{let i=n.indexOf(o.raw,s);return s=Math.max(s,i+o.raw.length),ve(o,t+Math.max(0,i),r,null)})}function bt(e){let t=new Set;for(let n of e.split(/[,|]/)){let[r,s]=n.split("-").map(o=>parseInt(o,10));if(Number.isFinite(r))for(let o=r;o<=(Number.isFinite(s)?s:r);o++)t.add(o)}return t}var Se=(e,t)=>t>e?`${e}-${t}`:void 0;function B(e=[],t){return e.flatMap(n=>{switch(n.type){case"text":case"escape":return n.tokens?B(n.tokens,t):[n.text.replace(/&(amp|lt|gt|quot|#39);/g,(r,s)=>({amp:"&",lt:"<",gt:">",quot:'"',"#39":"'"})[s])];case"strong":return[k("strong",{},B(n.tokens,t))];case"em":return[k("em",{},B(n.tokens,t))];case"del":return[k("del",{},B(n.tokens,t))];case"codespan":return[k("code",{},[n.text.replace(/&(amp|lt|gt|quot|#39);/g,(r,s)=>({amp:"&",lt:"<",gt:">",quot:'"',"#39":"'"})[s])])];case"br":return[k("br")];case"link":{let r=gt(n.href);return r?[k("a",{href:r,rel:"noopener noreferrer",target:r.startsWith("#")?void 0:"_blank"},B(n.tokens,t))]:B(n.tokens,t)}case"image":{let r=t.resolve(n.href);return r?[k("img",{src:r,alt:n.text,loading:"lazy"})]:[n.text]}case"html":return/^<br\s*\/?>$/i.test(n.raw)?[k("br")]:[];default:return n.text?[n.text]:[]}})}var Ce={default:{paper:"#fffdf8",ink:"#1d1b16",primary:"#f7c531",voice:"calm",radius:10},ocean:{paper:"#f6fafb",ink:"#0d2530",primary:"#0f766e",voice:"calm",radius:6},ember:{paper:"#fff8f3",ink:"#2a160c",primary:"#d9480f",voice:"bold",radius:2},ink:{paper:"#ffffff",ink:"#111111",primary:"#3b5bdb",voice:"elegant",radius:0}},Ee={calm:{heading:'ui-sans-serif, system-ui, "Segoe UI", Roboto, "Noto Sans", sans-serif',body:'ui-sans-serif, system-ui, "Segoe UI", Roboto, "Noto Sans", sans-serif'},elegant:{heading:'ui-serif, "Iowan Old Style", Georgia, "Noto Serif", serif',body:'ui-sans-serif, system-ui, "Segoe UI", Roboto, sans-serif'},bold:{heading:'"Avenir Next Condensed", "Arial Narrow", ui-sans-serif, system-ui, sans-serif',body:'ui-sans-serif, system-ui, "Segoe UI", Roboto, sans-serif'},friendly:{heading:'ui-rounded, "SF Pro Rounded", "Nunito", system-ui, sans-serif',body:'ui-rounded, "SF Pro Rounded", system-ui, sans-serif'}};function Me(e,t={}){let n=Ce[String(e.theme??"")]??Ce.default,r=typeof e.themeConfig=="object"&&e.themeConfig?e.themeConfig:{},s={...n,...Ke(t),...Ke(r)};return Ee[s.voice]||(s.voice="calm"),s}function Ke(e){let t={};for(let n of["paper","ink","primary","muted","soft"])typeof e[n]=="string"&&K(e[n])&&(t[n]=e[n]);return e.dark&&typeof e.dark=="object"&&(t.dark=Object.fromEntries(Object.entries(e.dark).filter(([,n])=>typeof n=="string"&&K(n)))),e.fonts&&Array.isArray(e.fonts.heading)&&Array.isArray(e.fonts.body)&&(t.fonts={heading:e.fonts.heading.map(String),body:e.fonts.body.map(String)}),typeof e.voice=="string"&&(t.voice=e.voice),typeof e.radius=="number"&&(t.radius=e.radius),t}function je(e,t){let n=K(e.paper)??[255,253,248],r=K(e.ink)??[29,27,22],s=t==="dark"?e.dark??{}:{},o=se(K(s.paper??"")??(t==="dark"?ee(r,[0,0,0],.35):n)),i=se(K(s.ink??"")??(t==="dark"?ee(n,[255,255,255],.2):r)),l=K(s.primary??e.primary)??[247,197,49],a=me(l,o,4.5),u=he(i,l)>=he(o,l)?i:o,p=[0,1,2,3,4,5].map(d=>me(kt(l,d*57),o,3));return{paper:J(o),ink:J(i),muted:J(me(se(K(s.muted??(t==="light"?e.muted??"":""))??ee(i,o,.38)),o,4.5)),line:J(ee(i,o,.82)),primary:J(a),onPrimary:J(u),soft:J(K(s.soft??(t==="light"?e.soft??"":""))??ee(l,o,.78)),series:p.map(J)}}function K(e){let t=/^#?([\da-f]{3}|[\da-f]{6})$/i.exec(String(e).trim());if(!t)return null;let n=t[1].length===3?[...t[1]].map(r=>r+r).join(""):t[1];return[0,2,4].map(r=>parseInt(n.slice(r,r+2),16))}var J=e=>`#${e.map(t=>Math.round(Math.max(0,Math.min(255,t))).toString(16).padStart(2,"0")).join("")}`,se=e=>e.map(t=>Math.round(Math.max(0,Math.min(255,t)))),ee=(e,t,n)=>e.map((r,s)=>r+(t[s]-r)*n);function Ae(e){let[t,n,r]=e.map(s=>{let o=s/255;return o<=.03928?o/12.92:((o+.055)/1.055)**2.4});return .2126*t+.7152*n+.0722*r}function he(e,t){let[n,r]=[Ae(e),Ae(t)].sort((s,o)=>o-s);return(n+.05)/(r+.05)}function me(e,t,n){let r=Ae(t)>.18?[0,0,0]:[255,255,255],s=0,o=se(e);for(;he(o,t)<n&&s<1;)o=se(ee(e,r,s=Math.min(1,s+.02)));return o}function kt(e,t){let[n,r,s]=e.map(w=>w/255),o=Math.max(n,r,s),i=Math.min(n,r,s),l=(o+i)/2,a=o-i,u=a===0?0:a/(1-Math.abs(2*l-1)),p=a===0?0:o===n?(r-s)/a%6:o===r?(s-n)/a+2:(n-r)/a+4;p=(p*60+t+360)%360;let d=(1-Math.abs(2*l-1))*Math.max(u,.55),c=d*(1-Math.abs(p/60%2-1)),h=l-d/2,[f,g,y]=p<60?[d,c,0]:p<120?[c,d,0]:p<180?[0,d,c]:p<240?[0,c,d]:p<300?[c,0,d]:[d,0,c];return[f+h,g+h,y+h].map(w=>w*255)}var Ge={en:{deck:"Slides",previous:"Previous",next:"Next",present:"Present full screen",presenter:"Presenter view",overview:"All slides",edit:"Change",scheme:"Light or dark",export:"Save as PowerPoint",source:"The deck as text",notes:"Notes",noNotes:"No notes for this slide.",upNext:"Next",last:"Last slide",where:"Slide {n} of {count}",saved:"Saved"},fr:{deck:"Diapositives",previous:"Précédente",next:"Suivante",present:"Présenter en plein écran",presenter:"Vue présentateur",overview:"Toutes les diapositives",edit:"Modifier",scheme:"Clair ou sombre",export:"Enregistrer en PowerPoint",source:"La présentation en texte",notes:"Notes",noNotes:"Pas de notes pour cette diapositive.",upNext:"Ensuite",last:"Dernière diapositive",where:"Diapositive {n} sur {count}",saved:"Enregistré"},ar:{deck:"الشرائح",previous:"السابقة",next:"التالية",present:"العرض بملء الشاشة",presenter:"عرض المقدّم",overview:"كل الشرائح",edit:"تعديل",scheme:"فاتح أو داكن",export:"الحفظ بصيغة PowerPoint",source:"العرض كنص",notes:"الملاحظات",noNotes:"لا ملاحظات لهذه الشريحة.",upNext:"التالية",last:"الشريحة الأخيرة",where:"الشريحة {n} من {count}",saved:"تم الحفظ"},ja:{deck:"スライド",previous:"前へ",next:"次へ",present:"全画面で発表",presenter:"発表者ビュー",overview:"すべてのスライド",edit:"編集",scheme:"ライトまたはダーク",export:"PowerPoint で保存",source:"テキストとしてのスライド",notes:"メモ",noNotes:"このスライドにメモはありません。",upNext:"次",last:"最後のスライド",where:"スライド {n} / {count}",saved:"保存しました"}},Xe=e=>Ge[e.split("-")[0].toLowerCase()]??Ge.en;var xt=/^(ar|he|fa|ur|ps|sd|ug|yi|dv|ckb)\b/i,wt={back:"M15 5l-7 7 7 7",next:"M9 5l7 7-7 7",present:"M4 9V4h5M20 9V4h-5M4 15v5h5M20 15v5h-5",presenter:"M3 5h12v9H3zM18 8h3M18 12h3M6 19h6",grid:"M4 4h6v6H4zM14 4h6v6h-6zM4 14h6v6H4zM14 14h6v6h-6z",edit:"M4 20h4L19 9l-4-4L4 16zM13.5 6.5l4 4",scheme:"M12 3a9 9 0 1 0 9 9 7 7 0 0 1-9-9z",export:"M12 4v11M7 10l5 5 5-5M5 20h14"};function St(e){let t=document.createElementNS("http://www.w3.org/2000/svg","svg");t.setAttribute("viewBox","0 0 24 24"),t.setAttribute("aria-hidden","true"),(e==="back"||e==="next")&&t.setAttribute("class","deck-flip");let n=document.createElementNS("http://www.w3.org/2000/svg","path");return n.setAttribute("d",wt[e]),t.append(n),t}function $t(e,t){let n=t.source.replace(/\r\n?/g,`
25
- `),r=de(n),s=0,o=0,i=[],l=String(t.lang??r.settings.lang??document.documentElement.lang??"en")||"en",a=String(t.dir??r.settings.dir??(xt.test(l)?"rtl":"ltr")),u={...Xe(l),...t.strings},p=new Intl.NumberFormat(l).format,d=matchMedia("(prefers-color-scheme: dark)"),c="light",h=Date.now();e.classList.add("deck"),e.lang=l,e.dir=a;let f=k("div",{class:"deck-stage",tabindex:0,role:"region","aria-roledescription":"carousel","aria-label":u.deck}),g=k("span",{class:"deck-where","aria-live":"polite"}),y=(m,b,S)=>{let N=k("button",{type:"button","aria-label":b,"data-act":m},[St(m)]);return N.addEventListener("click",S),N},w=y("back",u.previous,()=>x(-1)),C=y("next",u.next,()=>x(1)),W=y("edit",u.edit,()=>D("is-editing")),U=y("presenter",u.presenter,()=>D("is-presenting")),F=y("grid",u.overview,()=>D("is-overview")),j=k("div",{class:"deck-bar"},[w,g,C,k("span",{class:"deck-gap"}),F,U,t.editable===!1?null:W,y("scheme",u.scheme,()=>{c=c==="dark"?"light":"dark",P()}),t.onExport?y("export",u.export,()=>t.onExport?.(Re)):null,document.fullscreenEnabled?y("present",u.present,()=>Q()):null]),E=k("textarea",{class:"deck-source",spellcheck:"false","aria-label":u.source,dir:"auto"}),R=k("div",{class:"deck-next"}),_=k("div",{class:"deck-notes",dir:"auto","aria-label":u.notes}),q=k("span",{class:"deck-clock"}),te=k("div",{class:"deck-presenter"},[R,_]);e.replaceChildren(E,f,te,j),j.insertBefore(q,j.querySelector(".deck-gap"));let G=[],ie=()=>{let m=pe(t.kit,r.settings.kit);return G=m.problems,m.kit};function P(){V.kit=ie();let m=Me(r.settings,V.kit.tokens),b=je(m,c),S=A=>A.map(O=>/^[\w-]+$/.test(O)?O:`"${O.replace(/["\\]/g,"")}"`).join(", "),N=m.fonts?{heading:S(m.fonts.heading),body:S(m.fonts.body)}:Ee[m.voice];for(let[A,O]of Object.entries({paper:b.paper,ink:b.ink,muted:b.muted,line:b.line,primary:b.primary,fill:m.primary,"on-fill":b.onPrimary,soft:b.soft,heading:N.heading,body:N.body,radius:`${m.radius}px`,...Object.fromEntries(b.series.map((T,M)=>[`series-${M+1}`,T]))}))e.style.setProperty(`--deck-${A}`,O);e.dataset.scheme=c,e.dispatchEvent(new CustomEvent("deck-scheme",{detail:{scheme:c,colours:b,tokens:m}}))}let X=()=>{let m=t.scheme??r.settings.colorSchema??"auto";c=m==="dark"||m==="auto"&&d.matches?"dark":"light"},V={blocks:t.blocks??{},resolve:t.resolve??(m=>m),headings:t.headings??"real",number:m=>p(m),total:0,kit:pe().kit};function ne(){V.total=r.slides.length,i=r.slides.map(m=>fe(m,V));for(let[m,{element:b}]of i.entries())b.setAttribute("aria-label",u.where.replace("{n}",p(m+1)).replace("{count}",p(i.length))),b.addEventListener("click",()=>{e.classList.contains("is-overview")&&(D("is-overview"),L(m,0))});f.replaceChildren(...i.map(({element:m})=>m)),s=Math.min(s,i.length-1),I(),requestAnimationFrame(()=>$())}function $(){for(let{element:m}of i)v(m)}function v(m){let b=!1;for(let S of m.querySelectorAll(".deck-slot")){let N=1;for(S.style.setProperty("--deck-fit","1");S.scrollHeight>S.clientHeight+1&&N>.6;)S.style.setProperty("--deck-fit",String(N=Math.round((N-.05)*100)/100));S.scrollHeight>S.clientHeight+1&&(b=!0)}b?m.dataset.overflow="true":delete m.dataset.overflow}function I(){for(let[b,{element:S,steps:N}]of i.entries()){S.classList.toggle("is-shown",b===s),S.inert=b!==s&&!e.classList.contains("is-overview");for(let A of S.querySelectorAll(".deck-step"))A.classList.toggle("is-on",b<s||b===s&&Number(A.getAttribute("data-step"))<=o||N===0)}g.textContent=`${p(s+1)} / ${p(i.length)}`,w.toggleAttribute("disabled",s===0&&o===0),C.toggleAttribute("disabled",s>=i.length-1&&o>=(i[s]?.steps??0)),_.textContent=r.slides[s]?.notes||u.noNotes;let m=r.slides[s+1];R.replaceChildren(k("span",{},[m?u.upNext:u.last]),...m?[fe(m,V).element]:[]),e.dispatchEvent(new CustomEvent("deck-move",{detail:{at:s,step:o}}))}function x(m){let b=i[s]?.steps??0;if(m>0&&o<b){o++,I();return}if(m<0&&o>0){o--,I();return}let S=s+m;S<0||S>=i.length||L(S,m>0?0:i[S].steps)}function L(m,b=0){if(m===s){o=b,I();return}let S=m>s,N=r.slides[S?m:s]?.settings??{},A=String(N.transition??r.settings.transition??"none"),[O,T]=A.split("|").map(oe=>oe.trim()),M=S?O:T??O;a==="rtl"&&(M=M.replace(/-(left|right)$/,(oe,ae)=>ae==="left"?"-right":"-left")),M==="view-transition"&&(M="morph");let Y=()=>{s=m,o=b,M==="morph"&&z(i[m].element),I()},ot=matchMedia("(prefers-reduced-motion: reduce)").matches;if(!document.startViewTransition||M==="none"||ot||e.classList.contains("is-overview"))return Y();M==="morph"&&z(i[s].element,i[m].element),document.documentElement.dataset.deckTransition=M;let qe=document.startViewTransition(Y);qe.ready.catch(()=>{}),qe.finished.finally(()=>{delete document.documentElement.dataset.deckTransition;for(let{element:oe}of i)for(let ae of oe.querySelectorAll("[data-morph]"))ae.style.removeProperty("view-transition-name"),ae.removeAttribute("data-morph")})}function z(m,b){let S=A=>`${A.tagName}:${A.tagName==="IMG"?A.getAttribute("src"):(A.textContent??"").trim().slice(0,80)}`,N=A=>[...A.querySelectorAll("h1, h2, h3, h4, .deck-h, li, p, img, .deck-block, blockquote, .deck-image")];if(b){let A=new Map(N(b).map(T=>[S(T),T])),O=0;for(let T of N(m)){let M=A.get(S(T));if(!M||M.dataset.morph||T.closest("[data-morph]"))continue;let Y=`deck-m${O++}`;T.dataset.morph=M.dataset.morph=Y,T.style.setProperty("view-transition-name",Y)}return}for(let A of m.querySelectorAll("[data-morph]")){let O=A.dataset.morph;for(let T of f.querySelectorAll(`[data-morph="${O}"]`))T!==A&&T.style.removeProperty("view-transition-name");A.style.setProperty("view-transition-name",O)}}function D(m){for(let b of["is-editing","is-presenting","is-overview"])b!==m&&e.classList.remove(b);e.classList.toggle(m),W.setAttribute("aria-pressed",String(e.classList.contains("is-editing"))),U.setAttribute("aria-pressed",String(e.classList.contains("is-presenting"))),F.setAttribute("aria-pressed",String(e.classList.contains("is-overview"))),e.classList.contains("is-editing")&&(E.value=n,E.focus()),I(),requestAnimationFrame(()=>$())}function Q(){f.requestFullscreen?.().then(()=>f.focus(),()=>{})}function Z(m){n=m.replace(/\r\n?/g,`
24
+ `]));return k("pre",{dir:"ltr",class:l.size?"has-marks":void 0,tabindex:0},[a])}case"table":{let s=o=>o??void 0;return k("div",{class:"deck-table"},[k("table",{},[k("thead",{},[k("tr",{},e.header.map((o,i)=>k("th",{"data-align":s(e.align[i]),dir:"auto"},B(o.tokens,n))))]),k("tbody",{},e.rows.map(o=>k("tr",{},o.map((i,l)=>k("td",{"data-align":s(e.align[l]),dir:"auto"},B(i.tokens,n))))))])])}default:return null}}function gt(e,t,n,r){let s=0;return e.map(o=>{let i=n.indexOf(o.raw,s);return s=Math.max(s,i+o.raw.length),ve(o,t+Math.max(0,i),r,null)})}function yt(e){let t=new Set;for(let n of e.split(/[,|]/)){let[r,s]=n.split("-").map(o=>parseInt(o,10));if(Number.isFinite(r))for(let o=r;o<=(Number.isFinite(s)?s:r);o++)t.add(o)}return t}var Se=(e,t)=>t>e?`${e}-${t}`:void 0;function B(e=[],t){return e.flatMap(n=>{switch(n.type){case"text":case"escape":return n.tokens?B(n.tokens,t):[n.text.replace(/&(amp|lt|gt|quot|#39);/g,(r,s)=>({amp:"&",lt:"<",gt:">",quot:'"',"#39":"'"})[s])];case"strong":return[k("strong",{},B(n.tokens,t))];case"em":return[k("em",{},B(n.tokens,t))];case"del":return[k("del",{},B(n.tokens,t))];case"codespan":return[k("code",{},[n.text.replace(/&(amp|lt|gt|quot|#39);/g,(r,s)=>({amp:"&",lt:"<",gt:">",quot:'"',"#39":"'"})[s])])];case"br":return[k("br")];case"link":{let r=ht(n.href);return r?[k("a",{href:r,rel:"noopener noreferrer",target:r.startsWith("#")?void 0:"_blank"},B(n.tokens,t))]:B(n.tokens,t)}case"image":{let r=t.resolve(n.href);return r?[k("img",{src:r,alt:n.text,loading:"lazy"})]:[n.text]}case"html":return/^<br\s*\/?>$/i.test(n.raw)?[k("br")]:[];default:return n.text?[n.text]:[]}})}var Ce={default:{paper:"#fffdf8",ink:"#1d1b16",primary:"#f7c531",voice:"calm",radius:10},ocean:{paper:"#f6fafb",ink:"#0d2530",primary:"#0f766e",voice:"calm",radius:6},ember:{paper:"#fff8f3",ink:"#2a160c",primary:"#d9480f",voice:"bold",radius:2},ink:{paper:"#ffffff",ink:"#111111",primary:"#3b5bdb",voice:"elegant",radius:0}},Ee={calm:{heading:'ui-sans-serif, system-ui, "Segoe UI", Roboto, "Noto Sans", sans-serif',body:'ui-sans-serif, system-ui, "Segoe UI", Roboto, "Noto Sans", sans-serif'},elegant:{heading:'ui-serif, "Iowan Old Style", Georgia, "Noto Serif", serif',body:'ui-sans-serif, system-ui, "Segoe UI", Roboto, sans-serif'},bold:{heading:'"Avenir Next Condensed", "Arial Narrow", ui-sans-serif, system-ui, sans-serif',body:'ui-sans-serif, system-ui, "Segoe UI", Roboto, sans-serif'},friendly:{heading:'ui-rounded, "SF Pro Rounded", "Nunito", system-ui, sans-serif',body:'ui-rounded, "SF Pro Rounded", system-ui, sans-serif'}};function Me(e,t={}){let n=Ce[String(e.theme??"")]??Ce.default,r=typeof e.themeConfig=="object"&&e.themeConfig?e.themeConfig:{},s={...n,...Ke(t),...Ke(r)};return Ee[s.voice]||(s.voice="calm"),s}function Ke(e){let t={};for(let n of["paper","ink","primary","muted","soft"])typeof e[n]=="string"&&K(e[n])&&(t[n]=e[n]);return e.dark&&typeof e.dark=="object"&&(t.dark=Object.fromEntries(Object.entries(e.dark).filter(([,n])=>typeof n=="string"&&K(n)))),e.fonts&&Array.isArray(e.fonts.heading)&&Array.isArray(e.fonts.body)&&(t.fonts={heading:e.fonts.heading.map(String),body:e.fonts.body.map(String)}),typeof e.voice=="string"&&(t.voice=e.voice),typeof e.radius=="number"&&(t.radius=e.radius),t}function je(e,t){let n=K(e.paper)??[255,253,248],r=K(e.ink)??[29,27,22],s=t==="dark"?e.dark??{}:{},o=se(K(s.paper??"")??(t==="dark"?ee(r,[0,0,0],.35):n)),i=se(K(s.ink??"")??(t==="dark"?ee(n,[255,255,255],.2):r)),l=K(s.primary??e.primary)??[247,197,49],a=me(l,o,4.5),u=he(i,l)>=he(o,l)?i:o,p=[0,1,2,3,4,5].map(d=>me(bt(l,d*57),o,3));return{paper:J(o),ink:J(i),muted:J(me(se(K(s.muted??(t==="light"?e.muted??"":""))??ee(i,o,.38)),o,4.5)),line:J(ee(i,o,.82)),primary:J(a),onPrimary:J(u),soft:J(K(s.soft??(t==="light"?e.soft??"":""))??ee(l,o,.78)),series:p.map(J)}}function K(e){let t=/^#?([\da-f]{3}|[\da-f]{6})$/i.exec(String(e).trim());if(!t)return null;let n=t[1].length===3?[...t[1]].map(r=>r+r).join(""):t[1];return[0,2,4].map(r=>parseInt(n.slice(r,r+2),16))}var J=e=>`#${e.map(t=>Math.round(Math.max(0,Math.min(255,t))).toString(16).padStart(2,"0")).join("")}`,se=e=>e.map(t=>Math.round(Math.max(0,Math.min(255,t)))),ee=(e,t,n)=>e.map((r,s)=>r+(t[s]-r)*n);function Ae(e){let[t,n,r]=e.map(s=>{let o=s/255;return o<=.03928?o/12.92:((o+.055)/1.055)**2.4});return .2126*t+.7152*n+.0722*r}function he(e,t){let[n,r]=[Ae(e),Ae(t)].sort((s,o)=>o-s);return(n+.05)/(r+.05)}function me(e,t,n){let r=Ae(t)>.18?[0,0,0]:[255,255,255],s=0,o=se(e);for(;he(o,t)<n&&s<1;)o=se(ee(e,r,s=Math.min(1,s+.02)));return o}function bt(e,t){let[n,r,s]=e.map(w=>w/255),o=Math.max(n,r,s),i=Math.min(n,r,s),l=(o+i)/2,a=o-i,u=a===0?0:a/(1-Math.abs(2*l-1)),p=a===0?0:o===n?(r-s)/a%6:o===r?(s-n)/a+2:(n-r)/a+4;p=(p*60+t+360)%360;let d=(1-Math.abs(2*l-1))*Math.max(u,.55),c=d*(1-Math.abs(p/60%2-1)),h=l-d/2,[f,g,y]=p<60?[d,c,0]:p<120?[c,d,0]:p<180?[0,d,c]:p<240?[0,c,d]:p<300?[c,0,d]:[d,0,c];return[f+h,g+h,y+h].map(w=>w*255)}var Ge={en:{deck:"Slides",slide:"slide",carousel:"carousel",previous:"Previous",next:"Next",present:"Present full screen",presenter:"Presenter view",overview:"All slides",edit:"Change",scheme:"Light or dark",export:"Save as PowerPoint",source:"The deck as text",notes:"Notes",noNotes:"No notes for this slide.",upNext:"Next",last:"Last slide",where:"Slide {n} of {count}",saved:"Saved"},fr:{deck:"Diapositives",slide:"diapositive",carousel:"carrousel",previous:"Précédente",next:"Suivante",present:"Présenter en plein écran",presenter:"Vue présentateur",overview:"Toutes les diapositives",edit:"Modifier",scheme:"Clair ou sombre",export:"Enregistrer en PowerPoint",source:"La présentation en texte",notes:"Notes",noNotes:"Pas de notes pour cette diapositive.",upNext:"Ensuite",last:"Dernière diapositive",where:"Diapositive {n} sur {count}",saved:"Enregistré"},ar:{deck:"الشرائح",slide:"شريحة",carousel:"عرض شرائح",previous:"السابقة",next:"التالية",present:"العرض بملء الشاشة",presenter:"عرض المقدّم",overview:"كل الشرائح",edit:"تعديل",scheme:"فاتح أو داكن",export:"الحفظ بصيغة PowerPoint",source:"العرض كنص",notes:"الملاحظات",noNotes:"لا ملاحظات لهذه الشريحة.",upNext:"التالية",last:"الشريحة الأخيرة",where:"الشريحة {n} من {count}",saved:"تم الحفظ"},ja:{deck:"スライド",slide:"スライド",carousel:"カルーセル",previous:"前へ",next:"次へ",present:"全画面で発表",presenter:"発表者ビュー",overview:"すべてのスライド",edit:"編集",scheme:"ライトまたはダーク",export:"PowerPoint で保存",source:"テキストとしてのスライド",notes:"メモ",noNotes:"このスライドにメモはありません。",upNext:"次",last:"最後のスライド",where:"スライド {n} / {count}",saved:"保存しました"}},Xe=e=>Ge[e.split("-")[0].toLowerCase()]??Ge.en;import{Lexer as kt}from"marked";var xt=/^(ar|he|fa|ur|ps|sd|ug|yi|dv|ckb)\b/i,wt={back:"M15 5l-7 7 7 7",next:"M9 5l7 7-7 7",present:"M4 9V4h5M20 9V4h-5M4 15v5h5M20 15v5h-5",presenter:"M3 5h12v9H3zM18 8h3M18 12h3M6 19h6",grid:"M4 4h6v6H4zM14 4h6v6h-6zM4 14h6v6H4zM14 14h6v6h-6z",edit:"M4 20h4L19 9l-4-4L4 16zM13.5 6.5l4 4",scheme:"M12 3a9 9 0 1 0 9 9 7 7 0 0 1-9-9z",export:"M12 4v11M7 10l5 5 5-5M5 20h14"};function St(e){let t=document.createElementNS("http://www.w3.org/2000/svg","svg");t.setAttribute("viewBox","0 0 24 24"),t.setAttribute("aria-hidden","true"),(e==="back"||e==="next")&&t.setAttribute("class","deck-flip");let n=document.createElementNS("http://www.w3.org/2000/svg","path");return n.setAttribute("d",wt[e]),t.append(n),t}function $t(e,t){let n=t.source.replace(/\r\n?/g,`
25
+ `),r=de(n),s=0,o=0,i=[],l=String(t.lang??r.settings.lang??document.documentElement.lang??"en")||"en",a=String(t.dir??r.settings.dir??(xt.test(l)?"rtl":"ltr")),u={...Xe(l),...t.strings},p=new Intl.NumberFormat(l).format,d=matchMedia("(prefers-color-scheme: dark)"),c="light",h=Date.now();e.classList.add("deck"),e.lang=l,e.dir=a;let f=k("div",{class:"deck-stage",tabindex:0,role:"region","aria-roledescription":u.carousel,"aria-label":u.deck}),g=k("span",{class:"deck-where","aria-live":"polite"}),y=(m,b,S)=>{let N=k("button",{type:"button","aria-label":b,"data-act":m},[St(m)]);return N.addEventListener("click",S),N},w=y("back",u.previous,()=>x(-1)),C=y("next",u.next,()=>x(1)),W=y("edit",u.edit,()=>D("is-editing")),U=y("presenter",u.presenter,()=>D("is-presenting")),F=y("grid",u.overview,()=>D("is-overview")),j=k("div",{class:"deck-bar"},[w,g,C,k("span",{class:"deck-gap"}),F,U,t.editable===!1?null:W,y("scheme",u.scheme,()=>{c=c==="dark"?"light":"dark",P()}),t.onExport?y("export",u.export,()=>t.onExport?.(Re)):null,document.fullscreenEnabled?y("present",u.present,()=>Q()):null]),E=k("textarea",{class:"deck-source",spellcheck:"false","aria-label":u.source,dir:"auto"}),R=k("div",{class:"deck-next"}),_=k("div",{class:"deck-notes",dir:"auto","aria-label":u.notes}),q=k("span",{class:"deck-clock"}),te=k("div",{class:"deck-presenter"},[R,_]);e.replaceChildren(E,f,te,j),j.insertBefore(q,j.querySelector(".deck-gap"));let G=[],ie=()=>{let m=pe(t.kit,r.settings.kit);return G=m.problems,m.kit};function P(){V.kit=ie();let m=Me(r.settings,V.kit.tokens),b=je(m,c),S=A=>A.map(O=>/^[\w-]+$/.test(O)?O:`"${O.replace(/["\\]/g,"")}"`).join(", "),N=m.fonts?{heading:S(m.fonts.heading),body:S(m.fonts.body)}:Ee[m.voice];for(let[A,O]of Object.entries({paper:b.paper,ink:b.ink,muted:b.muted,line:b.line,primary:b.primary,fill:m.primary,"on-fill":b.onPrimary,soft:b.soft,heading:N.heading,body:N.body,radius:`${m.radius}px`,...Object.fromEntries(b.series.map((T,M)=>[`series-${M+1}`,T]))}))e.style.setProperty(`--deck-${A}`,O);e.dataset.scheme=c,e.dispatchEvent(new CustomEvent("deck-scheme",{detail:{scheme:c,colours:b,tokens:m}}))}let X=()=>{let m=t.scheme??r.settings.colorSchema??"auto";c=m==="dark"||m==="auto"&&d.matches?"dark":"light"},V={blocks:t.blocks??{},resolve:t.resolve??(m=>m),headings:t.headings??"real",number:m=>p(m),total:0,kit:pe().kit,lex:t.lex??(m=>new kt({gfm:!0}).lex(m)),slide:u.slide};function ne(){V.total=r.slides.length,i=r.slides.map(m=>fe(m,V));for(let[m,{element:b}]of i.entries())b.setAttribute("aria-label",u.where.replace("{n}",p(m+1)).replace("{count}",p(i.length))),b.addEventListener("click",()=>{e.classList.contains("is-overview")&&(D("is-overview"),L(m,0))});f.replaceChildren(...i.map(({element:m})=>m)),s=Math.min(s,i.length-1),I(),requestAnimationFrame(()=>$())}function $(){for(let{element:m}of i)v(m)}function v(m){let b=!1;for(let S of m.querySelectorAll(".deck-slot")){let N=1;for(S.style.setProperty("--deck-fit","1");S.scrollHeight>S.clientHeight+1&&N>.6;)S.style.setProperty("--deck-fit",String(N=Math.round((N-.05)*100)/100));S.scrollHeight>S.clientHeight+1&&(b=!0)}b?m.dataset.overflow="true":delete m.dataset.overflow}function I(){for(let[b,{element:S,steps:N}]of i.entries()){S.classList.toggle("is-shown",b===s),S.inert=b!==s&&!e.classList.contains("is-overview");for(let A of S.querySelectorAll(".deck-step"))A.classList.toggle("is-on",b<s||b===s&&Number(A.getAttribute("data-step"))<=o||N===0)}g.textContent=`${p(s+1)} / ${p(i.length)}`,w.toggleAttribute("disabled",s===0&&o===0),C.toggleAttribute("disabled",s>=i.length-1&&o>=(i[s]?.steps??0)),_.textContent=r.slides[s]?.notes||u.noNotes;let m=r.slides[s+1];R.replaceChildren(k("span",{},[m?u.upNext:u.last]),...m?[fe(m,V).element]:[]),e.dispatchEvent(new CustomEvent("deck-move",{detail:{at:s,step:o}}))}function x(m){let b=i[s]?.steps??0;if(m>0&&o<b){o++,I();return}if(m<0&&o>0){o--,I();return}let S=s+m;S<0||S>=i.length||L(S,m>0?0:i[S].steps)}function L(m,b=0){if(m===s){o=b,I();return}let S=m>s,N=r.slides[S?m:s]?.settings??{},A=String(N.transition??r.settings.transition??"none"),[O,T]=A.split("|").map(oe=>oe.trim()),M=S?O:T??O;a==="rtl"&&(M=M.replace(/-(left|right)$/,(oe,ae)=>ae==="left"?"-right":"-left")),M==="view-transition"&&(M="morph");let Y=()=>{s=m,o=b,M==="morph"&&z(i[m].element),I()},ot=matchMedia("(prefers-reduced-motion: reduce)").matches;if(!document.startViewTransition||M==="none"||ot||e.classList.contains("is-overview"))return Y();M==="morph"&&z(i[s].element,i[m].element),document.documentElement.dataset.deckTransition=M;let qe=document.startViewTransition(Y);qe.ready.catch(()=>{}),qe.finished.finally(()=>{delete document.documentElement.dataset.deckTransition;for(let{element:oe}of i)for(let ae of oe.querySelectorAll("[data-morph]"))ae.style.removeProperty("view-transition-name"),ae.removeAttribute("data-morph")})}function z(m,b){let S=A=>`${A.tagName}:${A.tagName==="IMG"?A.getAttribute("src"):(A.textContent??"").trim().slice(0,80)}`,N=A=>[...A.querySelectorAll("h1, h2, h3, h4, .deck-h, li, p, img, .deck-block, blockquote, .deck-image")];if(b){let A=new Map(N(b).map(T=>[S(T),T])),O=0;for(let T of N(m)){let M=A.get(S(T));if(!M||M.dataset.morph||T.closest("[data-morph]"))continue;let Y=`deck-m${O++}`;T.dataset.morph=M.dataset.morph=Y,T.style.setProperty("view-transition-name",Y)}return}for(let A of m.querySelectorAll("[data-morph]")){let O=A.dataset.morph;for(let T of f.querySelectorAll(`[data-morph="${O}"]`))T!==A&&T.style.removeProperty("view-transition-name");A.style.setProperty("view-transition-name",O)}}function D(m){for(let b of["is-editing","is-presenting","is-overview"])b!==m&&e.classList.remove(b);e.classList.toggle(m),W.setAttribute("aria-pressed",String(e.classList.contains("is-editing"))),U.setAttribute("aria-pressed",String(e.classList.contains("is-presenting"))),F.setAttribute("aria-pressed",String(e.classList.contains("is-overview"))),e.classList.contains("is-editing")&&(E.value=n,E.focus()),I(),requestAnimationFrame(()=>$())}function Q(){f.requestFullscreen?.().then(()=>f.focus(),()=>{})}function Z(m){n=m.replace(/\r\n?/g,`
26
26
  `),r=de(n),P(),ne(),t.onChange?.(n)}let ze=0;E.addEventListener("input",m=>{m.isComposing||(clearTimeout(ze),ze=setTimeout(()=>Z(E.value),120))});let De=()=>{let m=E.selectionStart,b=r.slides.findIndex(S=>m>=S.start&&m<=S.end+1);b>=0&&b!==s&&(s=b,o=i[b]?.steps??0,I())};E.addEventListener("keyup",De),E.addEventListener("click",De),f.addEventListener("dblclick",m=>{if(t.editable===!1||document.fullscreenElement)return;let b=m.target.closest("[data-edit]");if(!b)return;let[S,N]=b.dataset.edit.split("-").map(Number);b.contentEditable="true",b.focus();let A=M=>{b.removeEventListener("keydown",O),b.removeEventListener("blur",T),b.contentEditable="false";let Y=Ne(b);M&&Y!==n.slice(S,N)?Z(n.slice(0,S)+Y+n.slice(N)):ne()},O=M=>{M.isComposing||(M.key==="Enter"&&!M.shiftKey&&(M.preventDefault(),A(!0)),M.key==="Escape"&&(M.preventDefault(),A(!1)))},T=()=>A(!0);b.addEventListener("keydown",O),b.addEventListener("blur",T)}),e.addEventListener("keydown",m=>{let b=m.target;if(b.isContentEditable||b===E||b.tagName==="BUTTON"&&(m.key===" "||m.key==="Enter")){(m.metaKey||m.ctrlKey)&&m.key==="s"&&(m.preventDefault(),t.onSave?.(n));return}let S=a==="rtl"?"ArrowLeft":"ArrowRight",N=a==="rtl"?"ArrowRight":"ArrowLeft";if(m.altKey||m.ctrlKey||m.metaKey){(m.metaKey||m.ctrlKey)&&m.key==="s"&&(m.preventDefault(),t.onSave?.(n));return}let O={[S]:()=>x(1),[N]:()=>x(-1),ArrowDown:()=>x(1),ArrowUp:()=>x(-1),PageDown:()=>x(1),PageUp:()=>x(-1)," ":()=>x(1),Home:()=>L(0),End:()=>L(i.length-1,i.at(-1)?.steps??0),f:Q,p:()=>D("is-presenting"),o:()=>D("is-overview"),e:()=>D("is-editing")}[m.key];O&&(m.preventDefault(),O())}),f.addEventListener("click",m=>{document.fullscreenElement&&!m.target.closest("a, button, input")&&x(1)});let Fe=0;f.addEventListener("touchstart",m=>{Fe=m.touches[0].clientX},{passive:!0}),f.addEventListener("touchend",m=>{let b=m.changedTouches[0].clientX-Fe;Math.abs(b)>50&&x(b<0==(a!=="rtl")?1:-1)}),d.addEventListener("change",()=>{X(),P()});let it=setInterval(()=>{let m=Math.floor((Date.now()-h)/1e3);q.textContent=e.classList.contains("is-presenting")?`${String(Math.floor(m/60)).padStart(2,"0")}:${String(m%60).padStart(2,"0")}`:""},1e3);X(),P(),ne(),document.fonts?.ready.then(()=>$());let Re={root:e,stage:f,get source(){return n},get deck(){return r},get at(){return s},get scheme(){return c},get kit(){return V.kit},get kitProblems(){return G},lang:l,dir:a,slides:()=>i.map(({element:m})=>m),setSource:Z,go:L,toggle:D,present:Q,fitAll:$,setScheme:m=>{c=m,P()},destroy:()=>clearInterval(it)};return Re}function Ne(e){let t="";for(let n of e.childNodes)if(n.nodeType===Node.TEXT_NODE)t+=(n.textContent??"").replace(/([*_`[\]\\])/g,"\\$1");else if(n instanceof HTMLElement){let r=Ne(n);t+={STRONG:`**${r}**`,B:`**${r}**`,EM:`*${r}*`,I:`*${r}*`,CODE:`\`${n.textContent}\``,DEL:`~~${r}~~`,BR:`
27
- `,A:`[${r}](${n.getAttribute("href")??""})`}[n.tagName]??r}return t.replace(/ /g," ").replace(/\n+$/,"")}var ge="0.1.0";var Oe='<script type="text/markdown" id="deck">',vt="<\/script>",Ye=e=>e.replace(/<(\\*)(\/?script)/gi,"<\\$1$2"),Je=e=>e.replace(/<\\(\\*)(\/?script)/gi,"<$1$2"),re=e=>e.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;"),Ct=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");function At(e){if(/\\<(!--|\/?script)/i.test(e))throw new Error("This code cannot be held in a page as it is.");return e.replace(/<(!--|\/?script)/gi,"\\x3C$1")}function Et(e){let t=e.indexOf(Oe);if(t<0)return null;let n=t+Oe.length,r=e.slice(n).search(/<\/script/i);return r<0?null:Je(e.slice(n,n+r).replace(/^\n/,"").replace(/\n$/,""))}var Qe=(e=ge)=>`https://cdn.jsdelivr.net/npm/@codename/deck@${e}/dist/deck.js`;function Mt(e,{title:t="",lang:n="en",dir:r="auto",renderer:s={src:Qe()},base:o,generator:i=`deck ${ge}`}={}){let l=o?` data-base="${re(o)}"`:"",a="src"in s?`<script src="${re(s.src)}"${l}><\/script>`:`<script${l}>${At(s.code)}<\/script>`;return`<!doctype html>
27
+ `,A:`[${r}](${n.getAttribute("href")??""})`}[n.tagName]??r}return t.replace(/ /g," ").replace(/\n+$/,"")}var ge="0.1.1";var Oe='<script type="text/markdown" id="deck">',vt="<\/script>",Ye=e=>e.replace(/<(\\*)(\/?script)/gi,"<\\$1$2"),Je=e=>e.replace(/<\\(\\*)(\/?script)/gi,"<$1$2"),re=e=>e.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;"),Ct=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");function At(e){if(/\\<(!--|\/?script)/i.test(e))throw new Error("This code cannot be held in a page as it is.");return e.replace(/<(!--|\/?script)/gi,"\\x3C$1")}function Et(e){let t=e.indexOf(Oe);if(t<0)return null;let n=t+Oe.length,r=e.slice(n).search(/<\/script/i);return r<0?null:Je(e.slice(n,n+r).replace(/^\n/,"").replace(/\n$/,""))}var Qe=(e=ge)=>`https://cdn.jsdelivr.net/npm/@codename/deck@${e}/dist/deck.js`;function Mt(e,{title:t="",lang:n="en",dir:r="auto",renderer:s={src:Qe()},base:o,generator:i=`deck ${ge}`}={}){let l=o?` data-base="${re(o)}"`:"",a="src"in s?`<script src="${re(s.src)}"${l}><\/script>`:`<script${l}>${At(s.code)}<\/script>`;return`<!doctype html>
28
28
  <html lang="${re(n)}" dir="${re(r)}">
29
29
  <meta charset="utf-8">
30
30
  <meta name="viewport" content="width=device-width, initial-scale=1">