diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
new file mode 100644
index 0000000..a236911
--- /dev/null
+++ b/.github/workflows/deploy.yml
@@ -0,0 +1,43 @@
+name: Deploy pages
+
+on:
+ workflow_dispatch: {}
+ push:
+ branches:
+ - master
+
+jobs:
+ deploy:
+ runs-on: ubuntu-latest
+
+ permissions:
+ contents: read
+ pages: write
+ id-token: write
+
+ environment:
+ name: github-pages
+ url: ${{ steps.deployment.outputs.page_url }}
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - uses: actions/setup-node@v4
+ with:
+ node-version: 'lts/*'
+
+ - name: Install dependencies
+ run: npm install
+
+ - name: Build
+ run: npm run build -- --base /docker_slides/
+
+ - uses: actions/configure-pages@v4
+
+ - uses: actions/upload-pages-artifact@v3
+ with:
+ path: dist
+
+ - name: Deploy
+ id: deployment
+ uses: actions/deploy-pages@v4
diff --git a/.gitignore b/.gitignore
index 727e813..c5e70d2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,6 @@
node_modules
.DS_Store
+dist
*.local
index.html
.remote-assets
diff --git a/dist/404.html b/dist/404.html
deleted file mode 100644
index ce32d04..0000000
--- a/dist/404.html
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/dist/_redirects b/dist/_redirects
deleted file mode 100644
index ad37e2c..0000000
--- a/dist/_redirects
+++ /dev/null
@@ -1 +0,0 @@
-/* /index.html 200
diff --git a/dist/application.png b/dist/application.png
deleted file mode 100644
index d4a3830..0000000
Binary files a/dist/application.png and /dev/null differ
diff --git a/dist/assets/DrawingControls-1daNm2Jp.js b/dist/assets/DrawingControls-1daNm2Jp.js
deleted file mode 100644
index 454ad4c..0000000
--- a/dist/assets/DrawingControls-1daNm2Jp.js
+++ /dev/null
@@ -1,4 +0,0 @@
-import{o as r,e as i,f as t,d as y,v as C,a4 as K,a5 as N,a6 as R,n as M,g as n,_ as D,q as T,O as U,s as a,a7 as h,a8 as _,l as e,$ as d,a9 as m,m as f,aa as $,h as j,ab as x,ac as F,F as P,ad as Y,ae as G,af as I,ag as J,ah as g,ai as b,aj as k,ak as Q}from"./index-dXjYKNDw.js";const W={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},X=t("path",{fill:"currentColor",d:"M16 2C8.2 2 2 8.2 2 16s6.2 14 14 14s14-6.2 14-14S23.8 2 16 2m0 26C9.4 28 4 22.6 4 16S9.4 4 16 4s12 5.4 12 12s-5.4 12-12 12"},null,-1),nn=t("path",{fill:"currentColor",d:"M21.4 23L16 17.6L10.6 23L9 21.4l5.4-5.4L9 10.6L10.6 9l5.4 5.4L21.4 9l1.6 1.6l-5.4 5.4l5.4 5.4z"},null,-1),en=[X,nn];function tn(c,l){return r(),i("svg",W,[...en])}const on={name:"carbon-close-outline",render:tn},sn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},ln=t("path",{fill:"currentColor",d:"M2 16A14 14 0 1 0 16 2A14 14 0 0 0 2 16m23.15 7.75L8.25 6.85a12 12 0 0 1 16.9 16.9M8.24 25.16a12 12 0 0 1-1.4-16.89l16.89 16.89a12 12 0 0 1-15.49 0"},null,-1),rn=[ln];function an(c,l){return r(),i("svg",sn,[...rn])}const cn={name:"carbon-error",render:an},dn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},_n=t("path",{fill:"currentColor",d:"M28.59 13.31L30 11.9L20 2l-1.31 1.42l1.18 1.18l-11.49 9.72l-1.72-1.71L5.25 14l5.66 5.68L2 28.58L3.41 30l8.91-8.91L18 26.75l1.39-1.42l-1.71-1.71l9.72-11.49ZM16.26 22.2L9.8 15.74L21.29 6L26 10.71Z"},null,-1),un=[_n];function hn(c,l){return r(),i("svg",dn,[...un])}const pn={name:"carbon-pin",render:hn},mn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},vn=t("path",{fill:"currentColor",d:"M28.586 13.314L30 11.9L20 2l-1.314 1.415l1.186 1.186L8.38 14.322l-1.716-1.715L5.25 14l5.657 5.677L2 28.583L3.41 30l8.911-8.909L18 26.748l1.393-1.414l-1.716-1.716l9.724-11.49Z"},null,-1),gn=[vn];function bn(c,l){return r(),i("svg",mn,[...gn])}const wn={name:"carbon-pin-filled",render:bn},fn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},$n=t("path",{fill:"currentColor",d:"M29 26H12a1 1 0 0 1-.707-.293l-9-9a1 1 0 0 1 0-1.414l9-9A1 1 0 0 1 12 6h17a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1m-16.586-2H28V8H12.414l-8 8z"},null,-1),xn=t("path",{fill:"currentColor",d:"M20.414 16L25 11.414L23.586 10L19 14.586L14.414 10L13 11.414L17.586 16L13 20.586L14.414 22L19 17.414L23.586 22L25 20.586z"},null,-1),Ln=[$n,xn];function Cn(c,l){return r(),i("svg",fn,[...Ln])}const kn={name:"carbon-delete",render:Cn},yn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Mn=t("path",{fill:"currentColor",d:"M12 10h12.185l-3.587-3.586L22 5l6 6l-6 6l-1.402-1.415L24.182 12H12a6 6 0 0 0 0 12h8v2h-8a8 8 0 0 1 0-16"},null,-1),Dn=[Mn];function Bn(c,l){return r(),i("svg",yn,[...Dn])}const Vn={name:"carbon-redo",render:Bn},Hn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Sn=t("path",{fill:"currentColor",d:"M20 10H7.815l3.587-3.586L10 5l-6 6l6 6l1.402-1.415L7.818 12H20a6 6 0 0 1 0 12h-8v2h8a8 8 0 0 0 0-16"},null,-1),zn=[Sn];function An(c,l){return r(),i("svg",Hn,[...zn])}const On={name:"carbon-undo",render:An},Zn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},qn=t("path",{fill:"currentColor",d:"M26 4H6a2 2 0 0 0-2 2v20a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M6 26V6h20v20Z"},null,-1),En=[qn];function Kn(c,l){return r(),i("svg",Zn,[...En])}const Nn={name:"carbon-checkbox",render:Kn},Rn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Tn=t("path",{fill:"currentColor",d:"M16 2a14 14 0 1 0 14 14A14 14 0 0 0 16 2m0 26a12 12 0 1 1 12-12a12 12 0 0 1-12 12"},null,-1),Un=[Tn];function jn(c,l){return r(),i("svg",Rn,[...Un])}const Fn={name:"carbon-radio-button",render:jn},Pn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Yn=t("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),Gn=[Yn];function In(c,l){return r(),i("svg",Pn,[...Gn])}const Jn={name:"carbon-arrow-up-right",render:In},Qn=y({__name:"Draggable",props:{storageKey:{type:String,required:!1},initial:{type:Object,required:!1}},setup(c){const l=c,v=C(null),u=l.initial??{x:0,y:0},w=l.storageKey?K(l.storageKey,u):C(u),{style:p}=N(v,{initialValue:w});return(o,L)=>(r(),i("div",{ref_key:"el",ref:v,class:"fixed",style:M(n(p))},[R(o.$slots,"default")],4))}}),Wn=D(Qn,[["__file","/home/chun/repo/docker_hs/node_modules/@slidev/client/internals/Draggable.vue"]]),Xn=t("svg",{width:"1em",height:"1em",class:"-mt-0.5",preserveAspectRatio:"xMidYMid meet",viewBox:"0 0 24 24"},[t("path",{d:"M21.71 3.29a1 1 0 0 0-1.42 0l-18 18a1 1 0 0 0 0 1.42a1 1 0 0 0 1.42 0l18-18a1 1 0 0 0 0-1.42z",fill:"currentColor"})],-1),ne=["onClick"],ee=y({__name:"DrawingControls",setup(c){function l(){k.undo()}function v(){k.redo()}function u(p){m.value=p,h.value=!0}function w(p){x.color=p,h.value=!0}return(p,o)=>{const L=Q,B=Jn,V=Fn,H=Nn,S=On,z=Vn,A=kn,O=wn,Z=pn,q=cn,E=on;return r(),T(Wn,{class:a(["flex flex-wrap text-xl p-2 gap-1 rounded-md bg-main shadow transition-opacity duration-200",n(h)?"":n(_)?"opacity-40 hover:opacity-90":"opacity-0 pointer-events-none"]),dark:"border border-gray-400 border-opacity-10","storage-key":"slidev-drawing-pos","initial-x":10,"initial-y":10},{default:U(()=>[t("button",{class:a(["slidev-icon-btn",{shallow:n(m)!=="stylus"}]),onClick:o[0]||(o[0]=s=>u("stylus"))},[e(d,{text:"Draw with stylus"}),e(L)],2),t("button",{class:a(["slidev-icon-btn",{shallow:n(m)!=="line"}]),onClick:o[1]||(o[1]=s=>u("line"))},[e(d,{text:"Draw a line"}),Xn],2),t("button",{class:a(["slidev-icon-btn",{shallow:n(m)!=="arrow"}]),onClick:o[2]||(o[2]=s=>u("arrow"))},[e(d,{text:"Draw an arrow"}),e(B)],2),t("button",{class:a(["slidev-icon-btn",{shallow:n(m)!=="ellipse"}]),onClick:o[3]||(o[3]=s=>u("ellipse"))},[e(d,{text:"Draw an ellipse"}),e(V)],2),t("button",{class:a(["slidev-icon-btn",{shallow:n(m)!=="rectangle"}]),onClick:o[4]||(o[4]=s=>u("rectangle"))},[e(d,{text:"Draw a rectangle"}),e(H)],2),f(" TODO: not sure why it's not working! "),f(` `),e($),(r(!0),i(P,null,j(n(F),s=>(r(),i("button",{key:s,class:a(["slidev-icon-btn",n(x).color===s?"active":"shallow"]),onClick:te=>w(s)},[e(d,{text:"Set brush color"}),t("div",{class:a(["w-6 h-6 transition-all transform border border-gray-400/50",n(x).color!==s?"rounded-1/2 scale-85":"rounded-md"]),style:M(n(h)?{background:s}:{borderColor:s})},null,6)],10,ne))),128)),e($),t("button",{class:a(["slidev-icon-btn",{disabled:!n(Y)}]),onClick:o[5]||(o[5]=s=>l())},[e(d,{text:"Undo"}),e(S)],2),t("button",{class:a(["slidev-icon-btn",{disabled:!n(G)}]),onClick:o[6]||(o[6]=s=>v())},[e(d,{text:"Redo"}),e(z)],2),t("button",{class:a(["slidev-icon-btn",{disabled:!n(I)}]),onClick:o[7]||(o[7]=s=>n(J)())},[e(d,{text:"Delete"}),e(A)],2),e($),t("button",{class:a(["slidev-icon-btn",{shallow:!n(_)}]),onClick:o[8]||(o[8]=s=>_.value=!n(_))},[e(d,{text:n(_)?"Unpin drawing":"Pin drawing"},null,8,["text"]),g(e(O,{class:"transform -rotate-45"},null,512),[[b,n(_)]]),g(e(Z,null,null,512),[[b,!n(_)]])],2),n(h)?(r(),i("button",{key:0,class:a(["slidev-icon-btn",{shallow:!n(h)}]),onClick:o[9]||(o[9]=s=>h.value=!n(h))},[e(d,{text:n(_)?"Drawing pinned":"Drawing unpinned"},null,8,["text"]),g(e(q,null,null,512),[[b,n(_)]]),g(e(E,null,null,512),[[b,!n(_)]])],2)):f("v-if",!0)]),_:1},8,["class"])}}}),se=D(ee,[["__file","/home/chun/repo/docker_hs/node_modules/@slidev/client/internals/DrawingControls.vue"]]);export{se as default};
diff --git a/dist/assets/DrawingLayer-g06oUimD.js b/dist/assets/DrawingLayer-g06oUimD.js
deleted file mode 100644
index 25d36b1..0000000
--- a/dist/assets/DrawingLayer-g06oUimD.js
+++ /dev/null
@@ -1 +0,0 @@
-import{d as r,al as l,am as c,v as u,E as i,aj as a,J as m,an as _,ao as d,o as f,e as p,s as v,g as o,a7 as s,_ as g}from"./index-dXjYKNDw.js";const h=r({__name:"DrawingLayer",setup(w){const t=l(c),e=u();return i(()=>{a.mount(e.value,e.value.parentElement),m(t,n=>a.options.coordinateScale=1/n,{immediate:!0}),_()}),d(()=>{a.unmount()}),(n,k)=>(f(),p("svg",{ref_key:"svg",ref:e,class:v(["w-full h-full absolute top-0",{"pointer-events-none":!o(s),"touch-none":o(s)}])},null,2))}}),E=g(h,[["__file","/home/chun/repo/docker_hs/node_modules/@slidev/client/internals/DrawingLayer.vue"]]);export{E as default};
diff --git a/dist/assets/FileSaver.min-LVY1lggI.js b/dist/assets/FileSaver.min-LVY1lggI.js
deleted file mode 100644
index c4f1b3b..0000000
--- a/dist/assets/FileSaver.min-LVY1lggI.js
+++ /dev/null
@@ -1 +0,0 @@
-function O(r,v){for(var u=0;ua[s]})}}}return Object.freeze(Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}))}var d=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function _(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var g={exports:{}};(function(r,v){(function(u,a){a()})(d,function(){function u(e,t){return typeof t>"u"?t={autoBom:!1}:typeof t!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\uFEFF",e],{type:e.type}):e}function a(e,t,l){var o=new XMLHttpRequest;o.open("GET",e),o.responseType="blob",o.onload=function(){p(o.response,t,l)},o.onerror=function(){console.error("could not download file")},o.send()}function s(e){var t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch{}return 200<=t.status&&299>=t.status}function c(e){try{e.dispatchEvent(new MouseEvent("click"))}catch{var t=document.createEvent("MouseEvents");t.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var i=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof d=="object"&&d.global===d?d:void 0,y=i.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),p=i.saveAs||(typeof window!="object"||window!==i?function(){}:"download"in HTMLAnchorElement.prototype&&!y?function(e,t,l){var o=i.URL||i.webkitURL,n=document.createElement("a");t=t||e.name||"download",n.download=t,n.rel="noopener",typeof e=="string"?(n.href=e,n.origin===location.origin?c(n):s(n.href)?a(e,t,l):c(n,n.target="_blank")):(n.href=o.createObjectURL(e),setTimeout(function(){o.revokeObjectURL(n.href)},4e4),setTimeout(function(){c(n)},0))}:"msSaveOrOpenBlob"in navigator?function(e,t,l){if(t=t||e.name||"download",typeof e!="string")navigator.msSaveOrOpenBlob(u(e,l),t);else if(s(e))a(e,t,l);else{var o=document.createElement("a");o.href=e,o.target="_blank",setTimeout(function(){c(o)})}}:function(e,t,l,o){if(o=o||open("","_blank"),o&&(o.document.title=o.document.body.innerText="downloading..."),typeof e=="string")return a(e,t,l);var n=e.type==="application/octet-stream",E=/constructor/i.test(i.HTMLElement)||i.safari,b=/CriOS\/[\d]+/.test(navigator.userAgent);if((b||n&&E||y)&&typeof FileReader<"u"){var w=new FileReader;w.onloadend=function(){var f=w.result;f=b?f:f.replace(/^data:[^;]*;/,"data:attachment/file;"),o?o.location.href=f:location=f,o=null},w.readAsDataURL(e)}else{var h=i.URL||i.webkitURL,m=h.createObjectURL(e);o?o.location=m:location.href=m,o=null,setTimeout(function(){h.revokeObjectURL(m)},4e4)}});i.saveAs=p.saveAs=p,r.exports=p})})(g);var j=g.exports;const A=_(j),L=O({__proto__:null,default:A},[j]);export{L as F};
diff --git a/dist/assets/NoteDisplay-1AS2rRz8.js b/dist/assets/NoteDisplay-1AS2rRz8.js
deleted file mode 100644
index 052abdc..0000000
--- a/dist/assets/NoteDisplay-1AS2rRz8.js
+++ /dev/null
@@ -1 +0,0 @@
-import{d as c,o as n,e as s,s as l,f as r,t as a,_ as d}from"./index-dXjYKNDw.js";const u=["innerHTML"],m=["textContent"],f=["textContent"],k=c({__name:"NoteDisplay",props:{class:{type:String,required:!1},noteHtml:{type:String,required:!1},note:{type:String,required:!1},placeholder:{type:String,required:!1}},emits:["click"],setup(p){const o=p;return(e,t)=>e.noteHtml?(n(),s("div",{key:0,class:l(["prose overflow-auto outline-none",o.class]),onClick:t[0]||(t[0]=i=>e.$emit("click")),innerHTML:e.noteHtml},null,10,u)):e.note?(n(),s("div",{key:1,class:l(["prose overflow-auto outline-none",o.class]),onClick:t[1]||(t[1]=i=>e.$emit("click"))},[r("p",{textContent:a(e.note)},null,8,m)],2)):(n(),s("div",{key:2,class:l(["prose overflow-auto outline-none opacity-50 italic",o.class]),onClick:t[2]||(t[2]=i=>e.$emit("click"))},[r("p",{textContent:a(o.placeholder||"No notes.")},null,8,f)],2))}}),v=d(k,[["__file","/home/chun/repo/docker_hs/node_modules/@slidev/client/internals/NoteDisplay.vue"]]);export{v as N};
diff --git a/dist/assets/Presenter-Khn14gwB.css b/dist/assets/Presenter-Khn14gwB.css
deleted file mode 100644
index 5566767..0000000
--- a/dist/assets/Presenter-Khn14gwB.css
+++ /dev/null
@@ -1 +0,0 @@
-.slidev-presenter[data-v-574fd206]{--slidev-controls-foreground: current}.timer-btn[data-v-574fd206]:hover>:first-child{opacity:0}.timer-btn[data-v-574fd206]:hover>:last-child{opacity:1}.section-title[data-v-574fd206]{padding:.5rem 1rem;font-size:1.25rem;line-height:1.75rem}.grid-container[data-v-574fd206]{height:100%;width:100%;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.15;display:grid;gap:1px 1px}.grid-container.layout1[data-v-574fd206]{grid-template-columns:1fr 1fr;grid-template-rows:min-content 2fr 1fr min-content;grid-template-areas:"top top" "main main" "note next" "bottom bottom"}.grid-container.layout2[data-v-574fd206]{grid-template-columns:3fr 2fr;grid-template-rows:min-content 2fr 1fr min-content;grid-template-areas:"top top" "note main" "note next" "bottom bottom"}@media (max-aspect-ratio: 3/5){.grid-container.layout1[data-v-574fd206]{grid-template-columns:1fr;grid-template-rows:min-content 1fr 1fr 1fr min-content;grid-template-areas:"top" "main" "note" "next" "bottom"}}@media (min-aspect-ratio: 1/1){.grid-container.layout1[data-v-574fd206]{grid-template-columns:1fr 1.1fr .9fr;grid-template-rows:min-content 1fr 2fr min-content;grid-template-areas:"top top top" "main main next" "main main note" "bottom bottom bottom"}}.progress-bar[data-v-574fd206]{position:fixed;left:0;right:0;bottom:0}.grid-section[data-v-574fd206]{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));--un-text-opacity:1;color:rgb(24 24 24 / var(--un-text-opacity))}.grid-section.top[data-v-574fd206]{grid-area:top}.grid-section.main[data-v-574fd206]{grid-area:main}.grid-section.next[data-v-574fd206]{grid-area:next}.grid-section.note[data-v-574fd206]{grid-area:note}.grid-section.bottom[data-v-574fd206]{grid-area:bottom}.dark .grid-section[data-v-574fd206]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity));--un-text-opacity:1;color:rgb(221 221 221 / var(--un-text-opacity))}.context[data-v-574fd206]{position:absolute;top:0;left:0;border-bottom-right-radius:.375rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.5;padding-left:.25rem;padding-right:.25rem;font-size:.75rem;line-height:1rem;opacity:.75}
diff --git a/dist/assets/Presenter-my0I1Ult.js b/dist/assets/Presenter-my0I1Ult.js
deleted file mode 100644
index dadaeb2..0000000
--- a/dist/assets/Presenter-my0I1Ult.js
+++ /dev/null
@@ -1 +0,0 @@
-import{o as i,e as _,f as e,d as A,b as k,p as $,q as v,s as C,_ as D,v as y,w as I,x as R,c as N,a as E,y as q,z as M,A as O,B as U,C as W,D as Z,E as G,G as X,H as j,I as J,J as K,K as Q,L as Y,M as ee,g as t,N as te,l as o,t as se,n as p,i as V,O as P,S as B,m as S,P as oe,Q as H,R as T,T as ne,j as le,U as b,V as ae,W as ie,F as re,X as ce,Y as ue,Z as de,$ as L,a0 as _e,a1 as me,a2 as he,a3 as pe}from"./index-dXjYKNDw.js";import{N as ve}from"./NoteDisplay-1AS2rRz8.js";import fe from"./DrawingControls-1daNm2Jp.js";const ge={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},xe=e("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),we=e("path",{fill:"currentColor",d:"M21.448 20A10.856 10.856 0 0 0 24 13a11 11 0 1 0-11 11a10.856 10.856 0 0 0 7-2.552L27.586 29L29 27.586ZM13 22a9 9 0 1 1 9-9a9.01 9.01 0 0 1-9 9"},null,-1),ye=[xe,we];function Se(l,r){return i(),_("svg",ge,[...ye])}const be={name:"carbon-zoom-out",render:Se},ke={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},$e=e("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),Ce=e("path",{fill:"currentColor",d:"M21.448 20A10.856 10.856 0 0 0 24 13a11 11 0 1 0-11 11a10.856 10.856 0 0 0 7-2.552L27.586 29L29 27.586ZM13 22a9 9 0 1 1 9-9a9.01 9.01 0 0 1-9 9"},null,-1),ze=[$e,Ce];function Ne(l,r){return i(),_("svg",ke,[...ze])}const Me={name:"carbon-zoom-in",render:Ne},Ve={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Pe=e("path",{fill:"currentColor",d:"M12 10H6.78A11 11 0 0 1 27 16h2A13 13 0 0 0 6 7.68V4H4v8h8zm8 12h5.22A11 11 0 0 1 5 16H3a13 13 0 0 0 23 8.32V28h2v-8h-8z"},null,-1),Be=[Pe];function He(l,r){return i(),_("svg",Ve,[...Be])}const Te={name:"carbon-renew",render:He},Le={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Ae=e("path",{fill:"currentColor",d:"M16 30a14 14 0 1 1 14-14a14 14 0 0 1-14 14m0-26a12 12 0 1 0 12 12A12 12 0 0 0 16 4"},null,-1),De=e("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),Fe=[Ae,De];function Ie(l,r){return i(),_("svg",Le,[...Fe])}const Re={name:"carbon-time",render:Ie},Ee="/assets/logo-title-horizontal-XSaaVPPu.png",qe=A({__name:"NoteStatic",props:{class:{type:String,required:!1}},setup(l){const r=l,g=k(()=>{var c,u,n;return(n=(u=(c=$.value)==null?void 0:c.meta)==null?void 0:u.slide)==null?void 0:n.note}),x=k(()=>{var c,u,n;return(n=(u=(c=$.value)==null?void 0:c.meta)==null?void 0:u.slide)==null?void 0:n.noteHTML});return(c,u)=>(i(),v(ve,{class:C(r.class),note:g.value,"note-html":x.value},null,8,["class","note","note-html"]))}}),Oe=D(qe,[["__file","/home/chun/repo/docker_hs/node_modules/@slidev/client/internals/NoteStatic.vue"]]),f=l=>(he("data-v-574fd206"),l=l(),pe(),l),Ue={class:"bg-main h-full slidev-presenter"},We={class:"grid-section top flex"},Ze=f(()=>e("img",{src:Ee,class:"ml-2 my-auto h-10 py-1 lg:h-14 lg:py-2",style:{height:"3.5rem"},alt:"Slidev logo"},null,-1)),Ge=f(()=>e("div",{class:"flex-auto"},null,-1)),Xe={class:"text-2xl pl-2 pr-6 my-auto tabular-nums"},je=f(()=>e("div",{class:"context"}," current ",-1)),Je=f(()=>e("div",{class:"context"}," next ",-1)),Ke={key:1,class:"grid-section note grid grid-rows-[1fr_min-content] overflow-hidden"},Qe={class:"border-t border-main py-1 px-2 text-sm"},Ye={class:"grid-section bottom"},et={class:"progress-bar"},tt=A({__name:"Presenter",setup(l){const r=y();I(),R(r);const g=N.titleTemplate.replace("%s",N.title||"Slidev");E({title:`Presenter - ${g}`}),y(!1);const{timer:x,resetTimer:c}=q(),u=y([]),n=k(()=>M.value{const z=r.value.querySelector("#slide-content"),s=X(j()),w=J();K(()=>{if(!w.value||Y.value||!ee.value)return;const d=z.getBoundingClientRect(),m=(s.x-d.left)/d.width*100,h=(s.y-d.top)/d.height*100;if(!(m<0||m>100||h<0||h>100))return{x:m,y:h}},d=>{Q.cursor=d})}),(z,s)=>{const w=Re,d=Te,m=Me,h=be;return i(),_(re,null,[e("div",Ue,[e("div",{class:C(["grid-container",`layout${t(te)}`])},[e("div",We,[Ze,Ge,e("div",{class:"timer-btn my-auto relative w-22px h-22px cursor-pointer text-lg",opacity:"50 hover:100",onClick:s[0]||(s[0]=(...a)=>t(c)&&t(c)(...a))},[o(w,{class:"absolute"}),o(d,{class:"absolute opacity-0"})]),e("div",Xe,se(t(x)),1)]),e("div",{ref_key:"main",ref:r,class:"relative grid-section main flex flex-col p-2 lg:p-4",style:p(t(V))},[o(B,{key:"main",class:"h-full w-full"},{default:P(()=>[o(ce,{"render-context":"presenter"})]),_:1}),je],4),e("div",{class:"relative grid-section next flex flex-col p-2 lg:p-4",style:p(t(V))},[n.value?(i(),v(B,{key:"next",class:"h-full w-full"},{default:P(()=>{var a;return[o(t(de),{is:(a=n.value.route)==null?void 0:a.component,"clicks-elements":u.value,"onUpdate:clicksElements":s[1]||(s[1]=F=>u.value=F),clicks:n.value.clicks,"clicks-disabled":!1,class:C(t(ue)(n.value.route)),route:n.value.route,"render-context":"previewNext"},null,8,["is","clicks-elements","clicks","class","route"])]}),_:1})):S("v-if",!0),Je],4),S(" Notes "),(i(),_("div",Ke,[(i(),v(Oe,{key:1,class:"w-full max-w-full h-full overflow-auto p-2 lg:p-4",style:p({fontSize:`${t(oe)}em`})},null,8,["style"])),e("div",Qe,[e("button",{class:"slidev-icon-btn",onClick:s[2]||(s[2]=(...a)=>t(H)&&t(H)(...a))},[o(L,{text:"Increase font size"}),o(m)]),e("button",{class:"slidev-icon-btn",onClick:s[3]||(s[3]=(...a)=>t(T)&&t(T)(...a))},[o(L,{text:"Decrease font size"}),o(h)]),S("v-if",!0)])])),e("div",Ye,[o(_e,{persist:!0})]),(i(),v(fe,{key:2}))],2),e("div",et,[e("div",{class:"progress h-2px bg-primary transition-all",style:p({width:`${(t(ne)-1)/(t(le)-1)*100}%`})},null,4)])]),o(me),o(ie,{modelValue:t(b),"onUpdate:modelValue":s[5]||(s[5]=a=>ae(b)?b.value=a:null)},null,8,["modelValue"])],64)}}}),lt=D(tt,[["__scopeId","data-v-574fd206"],["__file","/home/chun/repo/docker_hs/node_modules/@slidev/client/internals/Presenter.vue"]]);export{lt as default};
diff --git a/dist/assets/PresenterPrint-LdyV9vXi.js b/dist/assets/PresenterPrint-LdyV9vXi.js
deleted file mode 100644
index 709ad1e..0000000
--- a/dist/assets/PresenterPrint-LdyV9vXi.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import{d as _,u as d,a as h,c as m,b as p,r as u,o as a,e as n,f as t,t as s,g as l,F as f,h as g,n as v,i as x,j as y,k as b,l as k,m as N,_ as P}from"./index-dXjYKNDw.js";import{N as w}from"./NoteDisplay-1AS2rRz8.js";const V={class:"m-4"},L={class:"mb-10"},S={class:"text-4xl font-bold mt-2"},T={class:"opacity-50"},B={class:"text-lg"},D={class:"font-bold flex gap-2"},H={class:"opacity-50"},j=t("div",{class:"flex-auto"},null,-1),z={key:0,class:"border-gray-400/50 mb-8"},C=_({__name:"PresenterPrint",setup(F){d(`
-@page {
- size: A4;
- margin-top: 1.5cm;
- margin-bottom: 1cm;
-}
-* {
- -webkit-print-color-adjust: exact;
-}
-html,
-html body,
-html #app,
-html #page-root {
- height: auto;
- overflow: auto !important;
-}
-`),h({title:`Notes - ${m.title}`});const c=p(()=>u.map(o=>{var r;return(r=o.meta)==null?void 0:r.slide}).filter(o=>o!==void 0&&o.noteHTML!==""));return(o,r)=>(a(),n("div",{id:"page-root",style:v(l(x))},[t("div",V,[t("div",L,[t("h1",S,s(l(m).title),1),t("div",T,s(new Date().toLocaleString()),1)]),(a(!0),n(f,null,g(c.value,(e,i)=>(a(),n("div",{key:i,class:"flex flex-col gap-4 break-inside-avoid-page"},[t("div",null,[t("h2",B,[t("div",D,[t("div",H,s(e==null?void 0:e.no)+"/"+s(l(y)),1),b(" "+s(e==null?void 0:e.title)+" ",1),j])]),k(w,{"note-html":e.noteHTML,class:"max-w-full"},null,8,["note-html"])]),i{for(const o of s)if(o.type==="childList")for(const r of o.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&i(r)}).observe(document,{childList:!0,subtree:!0});function n(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function i(s){if(s.ep)return;s.ep=!0;const o=n(s);fetch(s.href,o)}})();/**
-* @vue/shared v3.4.15
-* (c) 2018-present Yuxi (Evan) You and Vue contributors
-* @license MIT
-**/function Is(e,t){const n=new Set(e.split(","));return t?i=>n.has(i.toLowerCase()):i=>n.has(i)}const Ge=Object.freeze({}),Qi=Object.freeze([]),vt=()=>{},Tf=()=>!1,rr=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Yr=e=>e.startsWith("onUpdate:"),Xe=Object.assign,wc=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},ag=Object.prototype.hasOwnProperty,Pe=(e,t)=>ag.call(e,t),ge=Array.isArray,Bi=e=>ar(e)==="[object Map]",Bf=e=>ar(e)==="[object Set]",lg=e=>ar(e)==="[object RegExp]",ke=e=>typeof e=="function",Ze=e=>typeof e=="string",lo=e=>typeof e=="symbol",Fe=e=>e!==null&&typeof e=="object",$c=e=>(Fe(e)||ke(e))&&ke(e.then)&&ke(e.catch),Df=Object.prototype.toString,ar=e=>Df.call(e),xc=e=>ar(e).slice(8,-1),Mf=e=>ar(e)==="[object Object]",Cc=e=>Ze(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Rr=Is(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),cg=Is("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),wa=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},ug=/-(\w)/g,ws=wa(e=>e.replace(ug,(t,n)=>n?n.toUpperCase():"")),dg=/\B([A-Z])/g,Ls=wa(e=>e.replace(dg,"-$1").toLowerCase()),Ni=wa(e=>e.charAt(0).toUpperCase()+e.slice(1)),yi=wa(e=>e?`on${Ni(e)}`:""),ri=(e,t)=>!Object.is(e,t),$i=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},fg=e=>{const t=parseFloat(e);return isNaN(t)?e:t},hg=e=>{const t=Ze(e)?Number(e):NaN;return isNaN(t)?e:t};let xu;const Ac=()=>xu||(xu=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function at(e){if(ge(e)){const t={};for(let n=0;n{if(n){const i=n.split(mg);i.length>1&&(t[i[0].trim()]=i[1].trim())}}),t}function Je(e){let t="";if(Ze(e))t=e;else if(ge(e))for(let n=0;nZe(e)?e:e==null?"":ge(e)||Fe(e)&&(e.toString===Df||!ke(e.toString))?JSON.stringify(e,Rf,2):String(e),Rf=(e,t)=>t&&t.__v_isRef?Rf(e,t.value):Bi(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[i,s],o)=>(n[Wa(i,o)+" =>"]=s,n),{})}:Bf(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Wa(n))}:lo(t)?Wa(t):Fe(t)&&!ge(t)&&!Mf(t)?String(t):t,Wa=(e,t="")=>{var n;return lo(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/**
-* @vue/reactivity v3.4.15
-* (c) 2018-present Yuxi (Evan) You and Vue contributors
-* @license MIT
-**/function Jr(e,...t){console.warn(`[Vue warn] ${e}`,...t)}let Mt;class If{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=Mt,!t&&Mt&&(this.index=(Mt.scopes||(Mt.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=Mt;try{return Mt=this,t()}finally{Mt=n}}else Jr("cannot run an inactive effect scope.")}on(){Mt=this}off(){Mt=this.parent}stop(t){if(this._active){let n,i;for(n=0,i=this.effects.length;n=2))break}this._dirtyLevel<2&&(this._dirtyLevel=0),di()}return this._dirtyLevel>=2}set dirty(t){this._dirtyLevel=t?2:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=Xs,n=Di;try{return Xs=!0,Di=this,this._runnings++,Cu(this),this.fn()}finally{Au(this),this._runnings--,Di=n,Xs=t}}stop(){var t;this.active&&(Cu(this),Au(this),(t=this.onStop)==null||t.call(this),this.active=!1)}}function Eg(e){return e.value}function Cu(e){e._trackId++,e._depsLength=0}function Au(e){if(e.deps&&e.deps.length>e._depsLength){for(let t=e._depsLength;t{const n=new Map;return n.cleanup=e,n.computed=t,n},Xr=new WeakMap,Mi=Symbol("iterate"),xl=Symbol("Map key iterate");function yt(e,t,n){if(Xs&&Di){let i=Xr.get(e);i||Xr.set(e,i=new Map);let s=i.get(n);s||i.set(n,s=Uf(()=>i.delete(n))),Vf(Di,s,{target:e,type:t,key:n})}}function bs(e,t,n,i,s,o){const r=Xr.get(e);if(!r)return;let a=[];if(t==="clear")a=[...r.values()];else if(n==="length"&&ge(e)){const c=Number(i);r.forEach((u,d)=>{(d==="length"||!lo(d)&&d>=c)&&a.push(u)})}else switch(n!==void 0&&a.push(r.get(n)),t){case"add":ge(e)?Cc(n)&&a.push(r.get("length")):(a.push(r.get(Mi)),Bi(e)&&a.push(r.get(xl)));break;case"delete":ge(e)||(a.push(r.get(Mi)),Bi(e)&&a.push(r.get(xl)));break;case"set":Bi(e)&&a.push(r.get(Mi));break}Ec();for(const c of a)c&&Hf(c,2,{target:e,type:t,key:n,newValue:i,oldValue:s,oldTarget:o});Oc()}function Og(e,t){var n;return(n=Xr.get(e))==null?void 0:n.get(t)}const Tg=Is("__proto__,__v_isRef,__isVue"),Kf=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(lo)),Su=Bg();function Bg(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const i=be(this);for(let o=0,r=this.length;o{e[t]=function(...n){ui(),Ec();const i=be(this)[t].apply(this,n);return Oc(),di(),i}}),e}function Dg(e){const t=be(this);return yt(t,"has",e),t.hasOwnProperty(e)}class qf{constructor(t=!1,n=!1){this._isReadonly=t,this._shallow=n}get(t,n,i){const s=this._isReadonly,o=this._shallow;if(n==="__v_isReactive")return!s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return o;if(n==="__v_raw")return i===(s?o?Qf:Xf:o?Jf:Zf).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(i)?t:void 0;const r=ge(t);if(!s){if(r&&Pe(Su,n))return Reflect.get(Su,n,i);if(n==="hasOwnProperty")return Dg}const a=Reflect.get(t,n,i);return(lo(n)?Kf.has(n):Tg(n))||(s||yt(t,"get",n),o)?a:Ve(a)?r&&Cc(n)?a:a.value:Fe(a)?s?fs(a):T(a):a}}class zf extends qf{constructor(t=!1){super(!1,t)}set(t,n,i,s){let o=t[n];if(!this._shallow){const c=ai(o);if(!Qr(i)&&!ai(i)&&(o=be(o),i=be(i)),!ge(t)&&Ve(o)&&!Ve(i))return c?!1:(o.value=i,!0)}const r=ge(t)&&Cc(n)?Number(n)e,$a=e=>Reflect.getPrototypeOf(e);function kr(e,t,n=!1,i=!1){e=e.__v_raw;const s=be(e),o=be(t);n||(ri(t,o)&&yt(s,"get",t),yt(s,"get",o));const{has:r}=$a(s),a=i?Tc:n?Bc:Wo;if(r.call(s,t))return a(e.get(t));if(r.call(s,o))return a(e.get(o));e!==s&&e.get(t)}function yr(e,t=!1){const n=this.__v_raw,i=be(n),s=be(e);return t||(ri(e,s)&&yt(i,"has",e),yt(i,"has",s)),e===s?n.has(e):n.has(e)||n.has(s)}function br(e,t=!1){return e=e.__v_raw,!t&&yt(be(e),"iterate",Mi),Reflect.get(e,"size",e)}function Eu(e){e=be(e);const t=be(this);return $a(t).has.call(t,e)||(t.add(e),bs(t,"add",e,e)),this}function Ou(e,t){t=be(t);const n=be(this),{has:i,get:s}=$a(n);let o=i.call(n,e);o?Yf(n,i,e):(e=be(e),o=i.call(n,e));const r=s.call(n,e);return n.set(e,t),o?ri(t,r)&&bs(n,"set",e,t,r):bs(n,"add",e,t),this}function Tu(e){const t=be(this),{has:n,get:i}=$a(t);let s=n.call(t,e);s?Yf(t,n,e):(e=be(e),s=n.call(t,e));const o=i?i.call(t,e):void 0,r=t.delete(e);return s&&bs(t,"delete",e,void 0,o),r}function Bu(){const e=be(this),t=e.size!==0,n=Bi(e)?new Map(e):new Set(e),i=e.clear();return t&&bs(e,"clear",void 0,void 0,n),i}function wr(e,t){return function(i,s){const o=this,r=o.__v_raw,a=be(r),c=t?Tc:e?Bc:Wo;return!e&&yt(a,"iterate",Mi),r.forEach((u,d)=>i.call(s,c(u),c(d),o))}}function $r(e,t,n){return function(...i){const s=this.__v_raw,o=be(s),r=Bi(o),a=e==="entries"||e===Symbol.iterator&&r,c=e==="keys"&&r,u=s[e](...i),d=n?Tc:t?Bc:Wo;return!t&&yt(o,"iterate",c?xl:Mi),{next(){const{value:f,done:p}=u.next();return p?{value:f,done:p}:{value:a?[d(f[0]),d(f[1])]:d(f),done:p}},[Symbol.iterator](){return this}}}}function Ns(e){return function(...t){{const n=t[0]?`on key "${t[0]}" `:"";console.warn(`${Ni(e)} operation ${n}failed: target is readonly.`,be(this))}return e==="delete"?!1:e==="clear"?void 0:this}}function Ig(){const e={get(o){return kr(this,o)},get size(){return br(this)},has:yr,add:Eu,set:Ou,delete:Tu,clear:Bu,forEach:wr(!1,!1)},t={get(o){return kr(this,o,!1,!0)},get size(){return br(this)},has:yr,add:Eu,set:Ou,delete:Tu,clear:Bu,forEach:wr(!1,!0)},n={get(o){return kr(this,o,!0)},get size(){return br(this,!0)},has(o){return yr.call(this,o,!0)},add:Ns("add"),set:Ns("set"),delete:Ns("delete"),clear:Ns("clear"),forEach:wr(!0,!1)},i={get(o){return kr(this,o,!0,!0)},get size(){return br(this,!0)},has(o){return yr.call(this,o,!0)},add:Ns("add"),set:Ns("set"),delete:Ns("delete"),clear:Ns("clear"),forEach:wr(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(o=>{e[o]=$r(o,!1,!1),n[o]=$r(o,!0,!1),t[o]=$r(o,!1,!0),i[o]=$r(o,!0,!0)}),[e,n,t,i]}const[jg,Ng,Fg,Vg]=Ig();function xa(e,t){const n=t?e?Vg:Fg:e?Ng:jg;return(i,s,o)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?i:Reflect.get(Pe(n,s)&&s in i?n:i,s,o)}const Hg={get:xa(!1,!1)},Wg={get:xa(!1,!0)},Ug={get:xa(!0,!1)},Kg={get:xa(!0,!0)};function Yf(e,t,n){const i=be(n);if(i!==n&&t.call(e,i)){const s=xc(e);console.warn(`Reactive ${s} contains both the raw and reactive versions of the same object${s==="Map"?" as keys":""}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`)}}const Zf=new WeakMap,Jf=new WeakMap,Xf=new WeakMap,Qf=new WeakMap;function qg(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function zg(e){return e.__v_skip||!Object.isExtensible(e)?0:qg(xc(e))}function T(e){return ai(e)?e:Ca(e,!1,Mg,Hg,Zf)}function eh(e){return Ca(e,!1,Lg,Wg,Jf)}function fs(e){return Ca(e,!0,Pg,Ug,Xf)}function Ji(e){return Ca(e,!0,Rg,Kg,Qf)}function Ca(e,t,n,i,s){if(!Fe(e))return console.warn(`value cannot be made reactive: ${String(e)}`),e;if(e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=s.get(e);if(o)return o;const r=zg(e);if(r===0)return e;const a=new Proxy(e,r===2?i:n);return s.set(e,a),a}function Pi(e){return ai(e)?Pi(e.__v_raw):!!(e&&e.__v_isReactive)}function ai(e){return!!(e&&e.__v_isReadonly)}function Qr(e){return!!(e&&e.__v_isShallow)}function ea(e){return Pi(e)||ai(e)}function be(e){const t=e&&e.__v_raw;return t?be(t):e}function Aa(e){return Zr(e,"__v_skip",!0),e}const Wo=e=>Fe(e)?T(e):e,Bc=e=>Fe(e)?fs(e):e;class th{constructor(t,n,i,s){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Sc(()=>t(this._value),()=>Mo(this,1),()=>this.dep&&Wf(this.dep)),this.effect.computed=this,this.effect.active=this._cacheable=!s,this.__v_isReadonly=i}get value(){const t=be(this);return(!t._cacheable||t.effect.dirty)&&ri(t._value,t._value=t.effect.run())&&Mo(t,2),Dc(t),t.effect._dirtyLevel>=1&&Mo(t,1),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function Gg(e,t,n=!1){let i,s;const o=ke(e);o?(i=e,s=()=>{console.warn("Write operation failed: computed value is readonly")}):(i=e.get,s=e.set);const r=new th(i,s,o||!s,n);return t&&!n&&(r.effect.onTrack=t.onTrack,r.effect.onTrigger=t.onTrigger),r}function Dc(e){Xs&&Di&&(e=be(e),Vf(Di,e.dep||(e.dep=Uf(()=>e.dep=void 0,e instanceof th?e:void 0)),{target:e,type:"get",key:"value"}))}function Mo(e,t=2,n){e=be(e);const i=e.dep;i&&Hf(i,t,{target:e,type:"set",key:"value",newValue:n})}function Ve(e){return!!(e&&e.__v_isRef===!0)}function G(e){return nh(e,!1)}function $s(e){return nh(e,!0)}function nh(e,t){return Ve(e)?e:new Yg(e,t)}class Yg{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:be(t),this._value=n?t:Wo(t)}get value(){return Dc(this),this._value}set value(t){const n=this.__v_isShallow||Qr(t)||ai(t);t=n?t:be(t),ri(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:Wo(t),Mo(this,2,t))}}function A(e){return Ve(e)?e.value:e}const Zg={get:(e,t,n)=>A(Reflect.get(e,t,n)),set:(e,t,n,i)=>{const s=e[t];return Ve(s)&&!Ve(n)?(s.value=n,!0):Reflect.set(e,t,n,i)}};function sh(e){return Pi(e)?e:new Proxy(e,Zg)}class Jg{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:i}=t(()=>Dc(this),()=>Mo(this));this._get=n,this._set=i}get value(){return this._get()}set value(t){this._set(t)}}function Mc(e){return new Jg(e)}function Xg(e){ea(e)||console.warn("toRefs() expects a reactive object but received a plain one.");const t=ge(e)?new Array(e.length):{};for(const n in e)t[n]=ih(e,n);return t}class Qg{constructor(t,n,i){this._object=t,this._key=n,this._defaultValue=i,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return Og(be(this._object),this._key)}}class e_{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function oe(e,t,n){return Ve(e)?e:ke(e)?new e_(e):Fe(e)&&arguments.length>1?ih(e,t,n):G(e)}function ih(e,t,n){const i=e[t];return Ve(i)?i:new Qg(e,t,n)}/**
-* @vue/runtime-core v3.4.15
-* (c) 2018-present Yuxi (Evan) You and Vue contributors
-* @license MIT
-**/const Li=[];function Ir(e){Li.push(e)}function jr(){Li.pop()}function W(e,...t){ui();const n=Li.length?Li[Li.length-1].component:null,i=n&&n.appContext.config.warnHandler,s=t_();if(i)Ms(i,n,11,[e+t.join(""),n&&n.proxy,s.map(({vnode:o})=>`at <${Ra(n,o.type)}>`).join(`
-`),s]);else{const o=[`[Vue warn]: ${e}`,...t];s.length&&o.push(`
-`,...n_(s)),console.warn(...o)}di()}function t_(){let e=Li[Li.length-1];if(!e)return[];const t=[];for(;e;){const n=t[0];n&&n.vnode===e?n.recurseCount++:t.push({vnode:e,recurseCount:0});const i=e.component&&e.component.parent;e=i&&i.vnode}return t}function n_(e){const t=[];return e.forEach((n,i)=>{t.push(...i===0?[]:[`
-`],...s_(n))}),t}function s_({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",i=e.component?e.component.parent==null:!1,s=` at <${Ra(e.component,e.type,i)}`,o=">"+n;return e.props?[s,...i_(e.props),o]:[s+o]}function i_(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(i=>{t.push(...oh(i,e[i]))}),n.length>3&&t.push(" ..."),t}function oh(e,t,n){return Ze(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:Ve(t)?(t=oh(e,be(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):ke(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=be(t),n?t:[`${e}=`,t])}function o_(e,t){e!==void 0&&(typeof e!="number"?W(`${t} is not a valid number - got ${JSON.stringify(e)}.`):isNaN(e)&&W(`${t} is NaN - the duration expression might be incorrect.`))}const Pc={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core ."};function Ms(e,t,n,i){let s;try{s=i?e(...i):e()}catch(o){lr(o,t,n)}return s}function qt(e,t,n,i){if(ke(e)){const o=Ms(e,t,n,i);return o&&$c(o)&&o.catch(r=>{lr(r,t,n)}),o}const s=[];for(let o=0;o>>1,s=gt[i],o=Ko(s);o_s&>.splice(t,1)}function lh(e){ge(e)?eo.push(...e):(!Bs||!Bs.includes(e,e.allowRecurse?Us+1:Us))&&eo.push(e),ah()}function Du(e,t,n=Uo?_s+1:0){for(t=t||new Map;nKo(n)-Ko(i));if(eo.length=0,Bs){Bs.push(...t);return}for(Bs=t,e=e||new Map,Us=0;Use.id==null?1/0:e.id,u_=(e,t)=>{const n=Ko(e)-Ko(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function uh(e){Cl=!1,Uo=!0,e=e||new Map,gt.sort(u_);const t=n=>Rc(e,n);try{for(_s=0;_sa_){const i=t.ownerInstance,s=i&&Go(i.type);return lr(`Maximum recursive updates exceeded${s?` in component <${s}>`:""}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`,null,10),!0}else e.set(t,n+1)}}let Qs=!1;const Zi=new Set;Ac().__VUE_HMR_RUNTIME__={createRecord:Ua(dh),rerender:Ua(h_),reload:Ua(p_)};const Fi=new Map;function d_(e){const t=e.type.__hmrId;let n=Fi.get(t);n||(dh(t,e.type),n=Fi.get(t)),n.instances.add(e)}function f_(e){Fi.get(e.type.__hmrId).instances.delete(e)}function dh(e,t){return Fi.has(e)?!1:(Fi.set(e,{initialDef:Po(t),instances:new Set}),!0)}function Po(e){return Gh(e)?e.__vccOpts:e}function h_(e,t){const n=Fi.get(e);n&&(n.initialDef.render=t,[...n.instances].forEach(i=>{t&&(i.render=t,Po(i.type).render=t),i.renderCache=[],Qs=!0,i.effect.dirty=!0,i.update(),Qs=!1}))}function p_(e,t){const n=Fi.get(e);if(!n)return;t=Po(t),Mu(n.initialDef,t);const i=[...n.instances];for(const s of i){const o=Po(s.type);Zi.has(o)||(o!==n.initialDef&&Mu(o,t),Zi.add(o)),s.appContext.propsCache.delete(s.type),s.appContext.emitsCache.delete(s.type),s.appContext.optionsCache.delete(s.type),s.ceReload?(Zi.add(o),s.ceReload(t.styles),Zi.delete(o)):s.parent?(s.parent.effect.dirty=!0,Sa(s.parent.update)):s.appContext.reload?s.appContext.reload():typeof window<"u"?window.location.reload():console.warn("[HMR] Root or manually mounted instance modified. Full reload required.")}lh(()=>{for(const s of i)Zi.delete(Po(s.type))})}function Mu(e,t){Xe(e,t);for(const n in e)n!=="__file"&&!(n in t)&&delete e[n]}function Ua(e){return(t,n)=>{try{return e(t,n)}catch(i){console.error(i),console.warn("[HMR] Something went wrong during Vue component hot-reload. Full reload required.")}}}let vs,Eo=[],Al=!1;function cr(e,...t){vs?vs.emit(e,...t):Al||Eo.push({event:e,args:t})}function fh(e,t){var n,i;vs=e,vs?(vs.enabled=!0,Eo.forEach(({event:s,args:o})=>vs.emit(s,...o)),Eo=[]):typeof window<"u"&&window.HTMLElement&&!((i=(n=window.navigator)==null?void 0:n.userAgent)!=null&&i.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(o=>{fh(o,t)}),setTimeout(()=>{vs||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Al=!0,Eo=[])},3e3)):(Al=!0,Eo=[])}function m_(e,t){cr("app:init",e,t,{Fragment:De,Text:fr,Comment:lt,Static:Nr})}function g_(e){cr("app:unmount",e)}const Sl=Ic("component:added"),hh=Ic("component:updated"),__=Ic("component:removed"),v_=e=>{vs&&typeof vs.cleanupBuffer=="function"&&!vs.cleanupBuffer(e)&&__(e)};function Ic(e){return t=>{cr(e,t.appContext.app,t.uid,t.parent?t.parent.uid:void 0,t)}}const k_=ph("perf:start"),y_=ph("perf:end");function ph(e){return(t,n,i)=>{cr(e,t.appContext.app,t.uid,t,n,i)}}function b_(e,t,n){cr("component:emit",e.appContext.app,e,t,n)}function w_(e,t,...n){if(e.isUnmounted)return;const i=e.vnode.props||Ge;{const{emitsOptions:d,propsOptions:[f]}=e;if(d)if(!(t in d))(!f||!(yi(t)in f))&&W(`Component emitted event "${t}" but it is neither declared in the emits option nor as an "${yi(t)}" prop.`);else{const p=d[t];ke(p)&&(p(...n)||W(`Invalid event arguments: event validation failed for event "${t}".`))}}let s=n;const o=t.startsWith("update:"),r=o&&t.slice(7);if(r&&r in i){const d=`${r==="modelValue"?"model":r}Modifiers`,{number:f,trim:p}=i[d]||Ge;p&&(s=n.map(m=>Ze(m)?m.trim():m)),f&&(s=n.map(fg))}b_(e,t,s);{const d=t.toLowerCase();d!==t&&i[yi(d)]&&W(`Event "${d}" is emitted in component ${Ra(e,e.type)} but the handler is registered for "${t}". Note that HTML attributes are case-insensitive and you cannot use v-on to listen to camelCase events when using in-DOM templates. You should probably use "${Ls(t)}" instead of "${t}".`)}let a,c=i[a=yi(t)]||i[a=yi(ws(t))];!c&&o&&(c=i[a=yi(Ls(t))]),c&&qt(c,e,6,s);const u=i[a+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,qt(u,e,6,s)}}function mh(e,t,n=!1){const i=t.emitsCache,s=i.get(e);if(s!==void 0)return s;const o=e.emits;let r={},a=!1;if(!ke(e)){const c=u=>{const d=mh(u,t,!0);d&&(a=!0,Xe(r,d))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!o&&!a?(Fe(e)&&i.set(e,null),null):(ge(o)?o.forEach(c=>r[c]=null):Xe(r,o),Fe(e)&&i.set(e,r),r)}function Ea(e,t){return!e||!rr(t)?!1:(t=t.slice(2).replace(/Once$/,""),Pe(e,t[0].toLowerCase()+t.slice(1))||Pe(e,Ls(t))||Pe(e,t))}let nt=null,Oa=null;function ta(e){const t=nt;return nt=e,Oa=e&&e.type.__scopeId||null,t}function aB(e){Oa=e}function lB(){Oa=null}function L(e,t=nt,n){if(!t||e._n)return e;const i=(...s)=>{i._d&&Yu(-1);const o=ta(t);let r;try{r=e(...s)}finally{ta(o),i._d&&Yu(1)}return hh(t),r};return i._n=!0,i._c=!0,i._d=!0,i}let El=!1;function na(){El=!0}function Ka(e){const{type:t,vnode:n,proxy:i,withProxy:s,props:o,propsOptions:[r],slots:a,attrs:c,emit:u,render:d,renderCache:f,data:p,setupState:m,ctx:_,inheritAttrs:b}=e;let x,C;const S=ta(e);El=!1;try{if(n.shapeFlag&4){const B=s||i,F=m.__isScriptSetup?new Proxy(B,{get(O,j,R){return W(`Property '${String(j)}' was accessed via 'this'. Avoid using 'this' in templates.`),Reflect.get(O,j,R)}}):B;x=ds(d.call(F,B,f,o,m,p,_)),C=c}else{const B=t;c===o&&na(),x=ds(B.length>1?B(o,{get attrs(){return na(),c},slots:a,emit:u}):B(o,null)),C=t.props?c:$_(c)}}catch(B){Lo.length=0,lr(B,e,1),x=N(lt)}let w=x,E;if(x.patchFlag>0&&x.patchFlag&2048&&([w,E]=gh(x)),C&&b!==!1){const B=Object.keys(C),{shapeFlag:F}=w;if(B.length){if(F&7)r&&B.some(Yr)&&(C=x_(C,r)),w=ps(w,C);else if(!El&&w.type!==lt){const O=Object.keys(c),j=[],R=[];for(let Z=0,le=O.length;Z renders non-element root node that cannot be animated."),w.transition=n.transition),E?E(w):x=w,ta(S),x}const gh=e=>{const t=e.children,n=e.dynamicChildren,i=jc(t,!1);if(i){if(i.patchFlag>0&&i.patchFlag&2048)return gh(i)}else return[e,void 0];const s=t.indexOf(i),o=n?n.indexOf(i):-1,r=a=>{t[s]=a,n&&(o>-1?n[o]=a:a.patchFlag>0&&(e.dynamicChildren=[...n,a]))};return[ds(i),r]};function jc(e,t=!0){let n;for(let i=0;i0&&n.patchFlag&2048)return jc(n.children)}}else return}return n}const $_=e=>{let t;for(const n in e)(n==="class"||n==="style"||rr(n))&&((t||(t={}))[n]=e[n]);return t},x_=(e,t)=>{const n={};for(const i in e)(!Yr(i)||!(i.slice(9)in t))&&(n[i]=e[i]);return n},Pu=e=>e.shapeFlag&7||e.type===lt;function C_(e,t,n){const{props:i,children:s,component:o}=e,{props:r,children:a,patchFlag:c}=t,u=o.emitsOptions;if((s||a)&&Qs||t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return i?Lu(i,r,u):!!r;if(c&8){const d=t.dynamicProps;for(let f=0;fe.__isSuspense;function E_(e,t){t&&t.pendingBranch?ge(e)?t.effects.push(...e):t.effects.push(e):lh(e)}const O_=Symbol.for("v-scx"),T_=()=>{{const e=k(O_);return e||W("Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build."),e}};function Wi(e,t){return Nc(e,null,t)}const xr={};function Se(e,t,n){return ke(t)||W("`watch(fn, options?)` signature has been moved to a separate API. Use `watchEffect(fn, options?)` instead. `watch` now only supports `watch(source, cb, options?) signature."),Nc(e,t,n)}function Nc(e,t,{immediate:n,deep:i,flush:s,once:o,onTrack:r,onTrigger:a}=Ge){if(t&&o){const O=t;t=(...j)=>{O(...j),F()}}i!==void 0&&typeof i=="number"&&W('watch() "deep" option with number value will be used as watch depth in future versions. Please use a boolean instead to avoid potential breakage.'),t||(n!==void 0&&W('watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.'),i!==void 0&&W('watch() "deep" option is only respected when using the watch(source, callback, options?) signature.'),o!==void 0&&W('watch() "once" option is only respected when using the watch(source, callback, options?) signature.'));const c=O=>{W("Invalid watch source: ",O,"A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.")},u=it,d=O=>i===!0?O:Ei(O,i===!1?1:void 0);let f,p=!1,m=!1;if(Ve(e)?(f=()=>e.value,p=Qr(e)):Pi(e)?(f=()=>d(e),p=!0):ge(e)?(m=!0,p=e.some(O=>Pi(O)||Qr(O)),f=()=>e.map(O=>{if(Ve(O))return O.value;if(Pi(O))return d(O);if(ke(O))return Ms(O,u,2);c(O)})):ke(e)?t?f=()=>Ms(e,u,2):f=()=>(_&&_(),qt(e,u,3,[b])):(f=vt,c(e)),t&&i){const O=f;f=()=>Ei(O())}let _,b=O=>{_=E.onStop=()=>{Ms(O,u,4),_=E.onStop=void 0}},x;if(Pa)if(b=vt,t?n&&qt(t,u,3,[f(),m?[]:void 0,b]):f(),s==="sync"){const O=T_();x=O.__watcherHandles||(O.__watcherHandles=[])}else return vt;let C=m?new Array(e.length).fill(xr):xr;const S=()=>{if(!(!E.active||!E.dirty))if(t){const O=E.run();(i||p||(m?O.some((j,R)=>ri(j,C[R])):ri(O,C)))&&(_&&_(),qt(t,u,3,[O,C===xr?void 0:m&&C[0]===xr?[]:C,b]),C=O)}else E.run()};S.allowRecurse=!!t;let w;s==="sync"?w=S:s==="post"?w=()=>ut(S,u&&u.suspense):(S.pre=!0,u&&(S.id=u.uid),w=()=>Sa(S));const E=new Sc(f,vt,w),B=jf(),F=()=>{E.stop(),B&&wc(B.effects,E)};return E.onTrack=r,E.onTrigger=a,t?n?S():C=E.run():s==="post"?ut(E.run.bind(E),u&&u.suspense):E.run(),x&&x.push(F),F}function B_(e,t,n){const i=this.proxy,s=Ze(e)?e.includes(".")?yh(i,e):()=>i[e]:e.bind(i,i);let o;ke(t)?o=t:(o=t.handler,n=t);const r=hr(this),a=Nc(s,o.bind(i),n);return r(),a}function yh(e,t){const n=t.split(".");return()=>{let i=e;for(let s=0;s0){if(n>=t)return e;n++}if(i=i||new Set,i.has(e))return e;if(i.add(e),Ve(e))Ei(e.value,t,n,i);else if(ge(e))for(let s=0;s{Ei(s,t,n,i)});else if(Mf(e))for(const s in e)Ei(e[s],t,n,i);return e}function bh(e){cg(e)&&W("Do not use built-in directive ids as custom directive id: "+e)}function wh(e,t){if(nt===null)return W("withDirectives can only be used inside render functions."),e;const n=La(nt)||nt.proxy,i=e.dirs||(e.dirs=[]);for(let s=0;s{e.isMounted=!0}),dr(()=>{e.isUnmounting=!0}),e}const Vt=[Function,Array],xh={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Vt,onEnter:Vt,onAfterEnter:Vt,onEnterCancelled:Vt,onBeforeLeave:Vt,onLeave:Vt,onAfterLeave:Vt,onLeaveCancelled:Vt,onBeforeAppear:Vt,onAppear:Vt,onAfterAppear:Vt,onAppearCancelled:Vt},D_={name:"BaseTransition",props:xh,setup(e,{slots:t}){const n=Gt(),i=$h();let s;return()=>{const o=t.default&&Fc(t.default(),!0);if(!o||!o.length)return;let r=o[0];if(o.length>1){let b=!1;for(const x of o)if(x.type!==lt){if(b){W(" can only be used on a single element or component. Use for lists.");break}r=x,b=!0}}const a=be(e),{mode:c}=a;if(c&&c!=="in-out"&&c!=="out-in"&&c!=="default"&&W(`invalid mode: ${c}`),i.isLeaving)return qa(r);const u=Iu(r);if(!u)return qa(r);const d=qo(u,a,i,n);io(u,d);const f=n.subTree,p=f&&Iu(f);let m=!1;const{getTransitionKey:_}=u.type;if(_){const b=_();s===void 0?s=b:b!==s&&(s=b,m=!0)}if(p&&p.type!==lt&&(!Zs(u,p)||m)){const b=qo(p,a,i,n);if(io(p,b),c==="out-in")return i.isLeaving=!0,b.afterLeave=()=>{i.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},qa(r);c==="in-out"&&u.type!==lt&&(b.delayLeave=(x,C,S)=>{const w=Ch(i,p);w[String(p.key)]=p,x[Ks]=()=>{C(),x[Ks]=void 0,delete d.delayedLeave},d.delayedLeave=S})}return r}}},M_=D_;function Ch(e,t){const{leavingVNodes:n}=e;let i=n.get(t.type);return i||(i=Object.create(null),n.set(t.type,i)),i}function qo(e,t,n,i){const{appear:s,mode:o,persisted:r=!1,onBeforeEnter:a,onEnter:c,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:f,onLeave:p,onAfterLeave:m,onLeaveCancelled:_,onBeforeAppear:b,onAppear:x,onAfterAppear:C,onAppearCancelled:S}=t,w=String(e.key),E=Ch(n,e),B=(j,R)=>{j&&qt(j,i,9,R)},F=(j,R)=>{const Z=R[1];B(j,R),ge(j)?j.every(le=>le.length<=1)&&Z():j.length<=1&&Z()},O={mode:o,persisted:r,beforeEnter(j){let R=a;if(!n.isMounted)if(s)R=b||a;else return;j[Ks]&&j[Ks](!0);const Z=E[w];Z&&Zs(e,Z)&&Z.el[Ks]&&Z.el[Ks](),B(R,[j])},enter(j){let R=c,Z=u,le=d;if(!n.isMounted)if(s)R=x||c,Z=C||u,le=S||d;else return;let q=!1;const ve=j[Cr]=we=>{q||(q=!0,we?B(le,[j]):B(Z,[j]),O.delayedLeave&&O.delayedLeave(),j[Cr]=void 0)};R?F(R,[j,ve]):ve()},leave(j,R){const Z=String(e.key);if(j[Cr]&&j[Cr](!0),n.isUnmounting)return R();B(f,[j]);let le=!1;const q=j[Ks]=ve=>{le||(le=!0,R(),ve?B(_,[j]):B(m,[j]),j[Ks]=void 0,E[Z]===e&&delete E[Z])};E[Z]=e,p?F(p,[j,q]):q()},clone(j){return qo(j,t,n,i)}};return O}function qa(e){if(ur(e))return e=ps(e),e.children=null,e}function Iu(e){return ur(e)?e.component?e.component.subTree:e.children?e.children[0]:void 0:e}function io(e,t){e.shapeFlag&6&&e.component?io(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Fc(e,t=!1,n){let i=[],s=0;for(let o=0;o1)for(let o=0;o!!e.type.__asyncLoader,ur=e=>e.type.__isKeepAlive,P_={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Gt(),i=n.ctx;if(!i.renderer)return()=>{const S=t.default&&t.default();return S&&S.length===1?S[0]:S};const s=new Map,o=new Set;let r=null;n.__v_cache=s;const a=n.suspense,{renderer:{p:c,m:u,um:d,o:{createElement:f}}}=i,p=f("div");i.activate=(S,w,E,B,F)=>{const O=S.component;u(S,w,E,0,a),c(O.vnode,S,w,E,O,a,B,S.slotScopeIds,F),ut(()=>{O.isDeactivated=!1,O.a&&$i(O.a);const j=S.props&&S.props.onVnodeMounted;j&&Ht(j,O.parent,S)},a),Sl(O)},i.deactivate=S=>{const w=S.component;u(S,p,null,1,a),ut(()=>{w.da&&$i(w.da);const E=S.props&&S.props.onVnodeUnmounted;E&&Ht(E,w.parent,S),w.isDeactivated=!0},a),Sl(w)};function m(S){za(S),d(S,n,a,!0)}function _(S){s.forEach((w,E)=>{const B=Go(w.type);B&&(!S||!S(B))&&b(E)})}function b(S){const w=s.get(S);!r||!Zs(w,r)?m(w):r&&za(r),s.delete(S),o.delete(S)}Se(()=>[e.include,e.exclude],([S,w])=>{S&&_(E=>Oo(S,E)),w&&_(E=>!Oo(w,E))},{flush:"post",deep:!0});let x=null;const C=()=>{x!=null&&s.set(x,Ga(n.subTree))};return fi(C),Ba(C),dr(()=>{s.forEach(S=>{const{subTree:w,suspense:E}=n,B=Ga(w);if(S.type===B.type&&S.key===B.key){za(B);const F=B.component.da;F&&ut(F,E);return}m(S)})}),()=>{if(x=null,!t.default)return null;const S=t.default(),w=S[0];if(S.length>1)return W("KeepAlive should contain exactly one component child."),r=null,S;if(!li(w)||!(w.shapeFlag&4)&&!(w.shapeFlag&128))return r=null,w;let E=Ga(w);const B=E.type,F=Go(to(E)?E.type.__asyncResolved||{}:B),{include:O,exclude:j,max:R}=e;if(O&&(!F||!Oo(O,F))||j&&F&&Oo(j,F))return r=E,w;const Z=E.key==null?B:E.key,le=s.get(Z);return E.el&&(E=ps(E),w.shapeFlag&128&&(w.ssContent=E)),x=Z,le?(E.el=le.el,E.component=le.component,E.transition&&io(E,E.transition),E.shapeFlag|=512,o.delete(Z),o.add(Z)):(o.add(Z),R&&o.size>parseInt(R,10)&&b(o.values().next().value)),E.shapeFlag|=256,r=E,kh(w.type)?w:E}}},Ah=P_;function Oo(e,t){return ge(e)?e.some(n=>Oo(n,t)):Ze(e)?e.split(",").includes(t):lg(e)?e.test(t):!1}function Sh(e,t){Oh(e,"a",t)}function Eh(e,t){Oh(e,"da",t)}function Oh(e,t,n=it){const i=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(Ta(t,i,n),n){let s=n.parent;for(;s&&s.parent;)ur(s.parent.vnode)&&L_(i,t,n,s),s=s.parent}}function L_(e,t,n,i){const s=Ta(t,e,i,!0);Da(()=>{wc(i[t],s)},n)}function za(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Ga(e){return e.shapeFlag&128?e.ssContent:e}function Ta(e,t,n=it,i=!1){if(n){const s=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...r)=>{if(n.isUnmounted)return;ui();const a=hr(n),c=qt(t,n,e,r);return a(),di(),c});return i?s.unshift(o):s.push(o),o}else{const s=yi(Pc[e].replace(/ hook$/,""));W(`${s} is called when there is no active component instance to be associated with. Lifecycle injection APIs can only be used during execution of setup(). If you are using async setup(), make sure to register lifecycle hooks before the first await statement.`)}}const js=e=>(t,n=it)=>(!Pa||e==="sp")&&Ta(e,(...i)=>t(...i),n),R_=js("bm"),fi=js("m"),I_=js("bu"),Ba=js("u"),dr=js("bum"),Da=js("um"),j_=js("sp"),N_=js("rtg"),F_=js("rtc");function V_(e,t=it){Ta("ec",e,t)}function co(e,t,n,i){let s;const o=n&&n[i];if(ge(e)||Ze(e)){s=new Array(e.length);for(let r=0,a=e.length;rt(r,a,void 0,o&&o[a]));else{const r=Object.keys(e);s=new Array(r.length);for(let a=0,c=r.length;a1&&(W("SSR-optimized slot function detected in a non-SSR-optimized render function. You need to mark this component with $dynamic-slots in the parent template."),o=()=>[]),o&&o._c&&(o._d=!1),y();const r=o&&Th(o(n)),a=K(De,{key:n.key||r&&r.key||`_${t}`},r||(i?i():[]),r&&e._===1?64:-2);return!s&&a.scopeId&&(a.slotScopeIds=[a.scopeId+"-s"]),o&&o._c&&(o._d=!0),a}function Th(e){return e.some(t=>li(t)?!(t.type===lt||t.type===De&&!Th(t.children)):!0)?e:null}const Ol=e=>e?Kh(e)?La(e)||e.proxy:Ol(e.parent):null,Ri=Xe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>Ji(e.props),$attrs:e=>Ji(e.attrs),$slots:e=>Ji(e.slots),$refs:e=>Ji(e.refs),$parent:e=>Ol(e.parent),$root:e=>Ol(e.root),$emit:e=>e.emit,$options:e=>Hc(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Sa(e.update)}),$nextTick:e=>e.n||(e.n=dt.bind(e.proxy)),$watch:e=>B_.bind(e)}),Vc=e=>e==="_"||e==="$",Ya=(e,t)=>e!==Ge&&!e.__isScriptSetup&&Pe(e,t),Bh={get({_:e},t){const{ctx:n,setupState:i,data:s,props:o,accessCache:r,type:a,appContext:c}=e;if(t==="__isVue")return!0;let u;if(t[0]!=="$"){const m=r[t];if(m!==void 0)switch(m){case 1:return i[t];case 2:return s[t];case 4:return n[t];case 3:return o[t]}else{if(Ya(i,t))return r[t]=1,i[t];if(s!==Ge&&Pe(s,t))return r[t]=2,s[t];if((u=e.propsOptions[0])&&Pe(u,t))return r[t]=3,o[t];if(n!==Ge&&Pe(n,t))return r[t]=4,n[t];Tl&&(r[t]=0)}}const d=Ri[t];let f,p;if(d)return t==="$attrs"?(yt(e,"get",t),na()):t==="$slots"&&yt(e,"get",t),d(e);if((f=a.__cssModules)&&(f=f[t]))return f;if(n!==Ge&&Pe(n,t))return r[t]=4,n[t];if(p=c.config.globalProperties,Pe(p,t))return p[t];nt&&(!Ze(t)||t.indexOf("__v")!==0)&&(s!==Ge&&Vc(t[0])&&Pe(s,t)?W(`Property ${JSON.stringify(t)} must be accessed via $data because it starts with a reserved character ("$" or "_") and is not proxied on the render context.`):e===nt&&W(`Property ${JSON.stringify(t)} was accessed during render but is not defined on instance.`))},set({_:e},t,n){const{data:i,setupState:s,ctx:o}=e;return Ya(s,t)?(s[t]=n,!0):s.__isScriptSetup&&Pe(s,t)?(W(`Cannot mutate