diff --git a/01-overview/404.html b/01-overview/404.html index e277e28..49fde88 100644 --- a/01-overview/404.html +++ b/01-overview/404.html @@ -7,14 +7,15 @@ - - - + + + - +
+
diff --git a/01-overview/assets/10-BvyMk7kb.js b/01-overview/assets/10-BvyMk7kb.js new file mode 100644 index 0000000..a2aedfa --- /dev/null +++ b/01-overview/assets/10-BvyMk7kb.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as i,s as _,A as s,e as t}from"./modules/vue-CnDFeQoy.js";import{I as n}from"./slidev/default-CeBPafXo.js";import{_ as c,af as e}from"./index-DCjvn3b2.js";import{p as m,u as p,f as d}from"./slidev/context-C6suSrgS.js";import"./modules/shiki-DeQJCler.js";const f="/sa2024/01-overview/assets/01-hard-ButGMUZi.png",l=t("h1",null,"开发软件还是很难",-1),u=t("div",{style:{width:"80%",margin:"0 auto"}},[t("img",{src:f,class:"h-100"})],-1),h={__name:"10",setup(v){return m(e),p(),(x,g)=>(o(),a(n,i(_(s(d)(s(e),9))),{default:r(()=>[l,u]),_:1},16))}},C=c(h,[["__file","/@slidev/slides/10.md"]]);export{C as default}; diff --git a/01-overview/assets/16-ibNtBorL.js b/01-overview/assets/16-ibNtBorL.js new file mode 100644 index 0000000..a24941b --- /dev/null +++ b/01-overview/assets/16-ibNtBorL.js @@ -0,0 +1 @@ +import{o as r,c as l,k as t,q as a,s as i,A as o,e as s}from"./modules/vue-CnDFeQoy.js";import{I as n}from"./slidev/two-cols-Sg1cj3NL.js";import{_,al as e}from"./index-DCjvn3b2.js";import{p as c,u,f as p}from"./slidev/context-C6suSrgS.js";import"./modules/shiki-DeQJCler.js";const m="/sa2024/01-overview/assets/01-architecturaldecisions-DOJDdj89.png",d=s("h1",null,"架构层设计",-1),f=s("p",null,"在计算的算法和数据结构之外,设计并确定系统整体结构",-1),h=s("ul",null,[s("li",null,"总体组织结构和全局控制结构"),s("li",null,"通信、同步和数据访问的协议"),s("li",null,"设计元素的功能分配"),s("li",null,"物理分布与性能"),s("li",null,"备选设计的选择")],-1),v=s("img",{src:m,class:"m-5 h-90"},null,-1),x={__name:"16",setup(g){return c(e),u(),(P,k)=>(r(),l(n,a(i(o(p)(o(e),15))),{right:t(B=>[v]),default:t(()=>[d,f,h]),_:1},16))}},q=_(x,[["__file","/@slidev/slides/16.md"]]);export{q as default}; diff --git a/01-overview/assets/18-gMfUrhCv.js b/01-overview/assets/18-gMfUrhCv.js new file mode 100644 index 0000000..a6f35c1 --- /dev/null +++ b/01-overview/assets/18-gMfUrhCv.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as i,s as n,A as t,e as s}from"./modules/vue-CnDFeQoy.js";import{I as m}from"./slidev/default-CeBPafXo.js";import{_,an as e}from"./index-DCjvn3b2.js";import{p as c,u as p,f as d}from"./slidev/context-C6suSrgS.js";import"./modules/shiki-DeQJCler.js";const l="/sa2024/01-overview/assets/01-stakeholders-BPS74Cgp.png",f=s("h1",null,"Communication among stakeholders",-1),u=s("div",{style:{width:"60%",margin:"0 auto"}},[s("img",{src:l,class:"h-95"})],-1),h={__name:"18",setup(g){return c(e),p(),(v,k)=>(o(),a(m,i(n(t(d)(t(e),17))),{default:r(()=>[f,u]),_:1},16))}},y=_(h,[["__file","/@slidev/slides/18.md"]]);export{y as default}; diff --git a/01-overview/assets/2-NtOujJdO.js b/01-overview/assets/2-NtOujJdO.js new file mode 100644 index 0000000..8194365 --- /dev/null +++ b/01-overview/assets/2-NtOujJdO.js @@ -0,0 +1 @@ +import{o as r,c as a,k as t,q as l,s as i,A as o,e as s}from"./modules/vue-CnDFeQoy.js";import{I as n}from"./slidev/two-cols-Sg1cj3NL.js";import{_,a7 as e}from"./index-DCjvn3b2.js";import{p,u as c,f as m}from"./slidev/context-C6suSrgS.js";import"./modules/shiki-DeQJCler.js";const u="/sa2024/01-overview/assets/01-spring-logo-C5TUz5pd.png",d=s("h1",null,"主题",-1),f=s("ul",null,[s("li",null,"介绍软件体系结构的基本概念"),s("li",null,"当前流行的软件设计开发方法"),s("li",null,"基于Spring框架的软件设计和开发")],-1),h=s("div",{class:"absolute bottom-20"},[s("img",{src:u,class:"h-20"})],-1),g={__name:"2",setup(v){return p(e),c(),(x,P)=>(r(),a(n,l(i(o(m)(o(e),1))),{right:t(k=>[h]),default:t(()=>[d,f]),_:1},16))}},I=_(g,[["__file","/@slidev/slides/2.md"]]);export{I as default}; diff --git a/01-overview/assets/20-DKIrS2xr.js b/01-overview/assets/20-DKIrS2xr.js new file mode 100644 index 0000000..40fb488 --- /dev/null +++ b/01-overview/assets/20-DKIrS2xr.js @@ -0,0 +1 @@ +import{o as e,c as a,k as r,q as i,s as m,A as t,e as s}from"./modules/vue-CnDFeQoy.js";import{I as n}from"./slidev/default-CeBPafXo.js";import{_ as c,ap as o}from"./index-DCjvn3b2.js";import{p as _,u as p,f as d}from"./slidev/context-C6suSrgS.js";import"./modules/shiki-DeQJCler.js";const f="/sa2024/01-overview/assets/01-mis-communication-CjRafAPS.png",u=s("h1",null,"“mis-communication”",-1),l=s("div",{style:{width:"60%",margin:"0 auto"}},[s("img",{src:f,class:"h-100"})],-1),h={__name:"20",setup(v){return _(o),p(),(x,g)=>(e(),a(n,i(m(t(d)(t(o),19))),{default:r(()=>[u,l]),_:1},16))}},j=c(h,[["__file","/@slidev/slides/20.md"]]);export{j as default}; diff --git a/01-overview/assets/22-DmbAwB-t.js b/01-overview/assets/22-DmbAwB-t.js new file mode 100644 index 0000000..73ed93b --- /dev/null +++ b/01-overview/assets/22-DmbAwB-t.js @@ -0,0 +1 @@ +import{o as e,c as o,k as r,q as i,s as _,A as t,e as s}from"./modules/vue-CnDFeQoy.js";import{I as n}from"./slidev/default-CeBPafXo.js";import{_ as c,ar as a}from"./index-DCjvn3b2.js";import{p as m,u as p,f as d}from"./slidev/context-C6suSrgS.js";import"./modules/shiki-DeQJCler.js";const f="/sa2024/01-overview/assets/01-vasa-D915BdB9.png",l=s("h1",null,"Swedish Warship Vasa",-1),u=s("div",{style:{width:"70%",margin:"0 auto"}},[s("img",{src:f,class:"h-100"})],-1),h={__name:"22",setup(v){return m(a),p(),(x,B)=>(e(),o(n,i(_(t(d)(t(a),21))),{default:r(()=>[l,u]),_:1},16))}},C=c(h,[["__file","/@slidev/slides/22.md"]]);export{C as default}; diff --git a/01-overview/assets/26--oVPEWF9.js b/01-overview/assets/26--oVPEWF9.js new file mode 100644 index 0000000..cc463c3 --- /dev/null +++ b/01-overview/assets/26--oVPEWF9.js @@ -0,0 +1 @@ +import{o as r,c as a,k as t,q as n,s as i,A as l,e,a6 as o}from"./modules/vue-CnDFeQoy.js";import{I as u}from"./slidev/two-cols-Sg1cj3NL.js";import{_,az as s}from"./index-DCjvn3b2.js";import{p as c,u as m,f as p}from"./slidev/context-C6suSrgS.js";import"./modules/shiki-DeQJCler.js";const d="/sa2024/01-overview/assets/01-mvc-Db7lVaAE.png",f=e("h1",null,"Example: Model-View-Controller",-1),h=e("ul",null,[e("li",null,[o("Context "),e("ul",null,[e("li",null,"人机交互界面设计")])]),e("li",null,[o("Problem "),e("ul",null,[e("li",null,"功能的变化要求用户界面的改变"),e("li",null,"平台的改变要求用户界面随之改变"),e("li",null,"界面的改变需足够方便,且不应影响系统功能本身")])])],-1),x=e("img",{src:d,class:"m-5 h-70"},null,-1),v={__name:"26",setup(P){return c(s),m(),(g,C)=>(r(),a(u,n(i(l(p)(l(s),25))),{right:t(V=>[x]),default:t(()=>[f,h]),_:1},16))}},A=_(v,[["__file","/@slidev/slides/26.md"]]);export{A as default}; diff --git a/01-overview/assets/3-CeTKme6P.js b/01-overview/assets/3-CeTKme6P.js new file mode 100644 index 0000000..eee6671 --- /dev/null +++ b/01-overview/assets/3-CeTKme6P.js @@ -0,0 +1 @@ +import{o as r,c as a,k as t,q as i,s as c,A as e,e as s}from"./modules/vue-CnDFeQoy.js";import{I as _}from"./slidev/two-cols-Sg1cj3NL.js";import{_ as n,a8 as o}from"./index-DCjvn3b2.js";import{p as m,u as p,f as l}from"./slidev/context-C6suSrgS.js";import"./modules/shiki-DeQJCler.js";const u="/sa2024/01-overview/assets/01-building-BQbONAF4.png",d="/sa2024/01-overview/assets/01-skyscraper-C0mCrQuk.gif",f=s("h1",null,"Architecture",-1),h=s("img",{src:u,class:"m-20 h-80"},null,-1),g=s("img",{src:d,class:"m-20 h-90"},null,-1),v={__name:"3",setup(k){return m(o),p(),(x,B)=>(r(),a(_,i(c(e(l)(e(o),2))),{right:t(C=>[g]),default:t(()=>[f,h]),_:1},16))}},F=n(v,[["__file","/@slidev/slides/3.md"]]);export{F as default}; diff --git a/01-overview/assets/30-CBMx7fGt.js b/01-overview/assets/30-CBMx7fGt.js new file mode 100644 index 0000000..7b5794c --- /dev/null +++ b/01-overview/assets/30-CBMx7fGt.js @@ -0,0 +1 @@ +import{o as e,c as r,k as o,q as _,s as i,A as t,e as s}from"./modules/vue-CnDFeQoy.js";import{I as n}from"./slidev/two-cols-Sg1cj3NL.js";import{_ as c,aD as a}from"./index-DCjvn3b2.js";import{p as l,u as m,f as p}from"./slidev/context-C6suSrgS.js";import"./modules/shiki-DeQJCler.js";const u="/sa2024/01-overview/assets/01-aosa-1-CbaX-bzr.jpg",d="/sa2024/01-overview/assets/01-aosa-2-DqXSM4wG.jpg",f=s("h2",null,"aoasbook.org",-1),h=s("img",{src:u,class:"m-5 h-100"},null,-1),g=s("br",null,null,-1),v=s("img",{src:d,class:"m-10 h-100"},null,-1),x={__name:"30",setup(b){return l(a),m(),(k,w)=>(e(),r(n,_(i(t(p)(t(a),29))),{right:o(P=>[g,v]),default:o(()=>[f,h]),_:1},16))}},D=c(x,[["__file","/@slidev/slides/30.md"]]);export{D as default}; diff --git a/01-overview/assets/31-CXjrG5we.js b/01-overview/assets/31-CXjrG5we.js new file mode 100644 index 0000000..9352e47 --- /dev/null +++ b/01-overview/assets/31-CXjrG5we.js @@ -0,0 +1 @@ +import{o as r,c as a,k as o,q as _,s as n,A as t,e as s}from"./modules/vue-CnDFeQoy.js";import{I as i}from"./slidev/two-cols-Sg1cj3NL.js";import{_ as c,aE as e}from"./index-DCjvn3b2.js";import{p as l,u as m,f as p}from"./slidev/context-C6suSrgS.js";import"./modules/shiki-DeQJCler.js";const u="/sa2024/01-overview/assets/01-posa-e5f98RWE.png",d="/sa2024/01-overview/assets/01-500l-4j3B_M17.png",f=s("h2",null,"aoasbook.org",-1),h=s("img",{src:u,class:"m-5 h-100"},null,-1),g=s("br",null,null,-1),v=s("img",{src:d,class:"m-10 h-100"},null,-1),x={__name:"31",setup(k){return l(e),m(),(B,P)=>(r(),a(i,_(n(t(p)(t(e),30))),{right:o(w=>[g,v]),default:o(()=>[f,h]),_:1},16))}},R=c(x,[["__file","/@slidev/slides/31.md"]]);export{R as default}; diff --git a/01-overview/assets/32-ByOMWVhg.js b/01-overview/assets/32-ByOMWVhg.js new file mode 100644 index 0000000..6bc9c67 --- /dev/null +++ b/01-overview/assets/32-ByOMWVhg.js @@ -0,0 +1 @@ +import{o as a,c as o,k as r,q as i,s as n,A as s,e as t}from"./modules/vue-CnDFeQoy.js";import{I as p}from"./slidev/default-CeBPafXo.js";import{_,aF as e}from"./index-DCjvn3b2.js";import{p as m,u as c,f as l}from"./slidev/context-C6suSrgS.js";import"./modules/shiki-DeQJCler.js";const d="/sa2024/01-overview/assets/01-spring-all-CQ-WjdQ-.png",f=t("h1",null,"Explaining SA patterns with Spring",-1),u=t("div",{style:{width:"100%",margin:"0 auto"}},[t("img",{src:d,class:"m-5 h-90"})],-1),h={__name:"32",setup(g){return m(e),c(),(v,x)=>(a(),o(p,i(n(s(l)(s(e),31))),{default:r(()=>[f,u]),_:1},16))}},S=_(h,[["__file","/@slidev/slides/32.md"]]);export{S as default}; diff --git a/01-overview/assets/5-D8aSFY1a.js b/01-overview/assets/5-D8aSFY1a.js new file mode 100644 index 0000000..e801144 --- /dev/null +++ b/01-overview/assets/5-D8aSFY1a.js @@ -0,0 +1 @@ +import{o as r,c as a,k as s,q as n,s as i,A as e,e as t}from"./modules/vue-CnDFeQoy.js";import{I as _}from"./slidev/two-cols-Sg1cj3NL.js";import{_ as c,aa as o}from"./index-DCjvn3b2.js";import{p as l,u as p,f as u}from"./slidev/context-C6suSrgS.js";import"./modules/shiki-DeQJCler.js";const m="/sa2024/01-overview/assets/01-bjarne-CYjwaqzc.png",d=t("h1",null,"Software Artifacts",-1),f=t("img",{src:m,class:"m-10 h-90"},null,-1),h=t("p",null,[t("br"),t("br"),t("br"),t("br"),t("br")],-1),b=t("blockquote",null,[t("div",{style:{"font-size":"30px","line-height":"150%"}},"Our civilization runs on software.")],-1),v=t("p",null,[t("br"),t("br")],-1),x=t("div",{style:{"text-align":"center"}},"-Bjarne Stroustrup(比雅尼·斯特劳斯特鲁普)",-1),g={__name:"5",setup(w){return l(o),p(),(j,k)=>(r(),a(_,n(i(e(u)(e(o),4))),{right:s(z=>[h,b,v,x]),default:s(()=>[d,f]),_:1},16))}},S=c(g,[["__file","/@slidev/slides/5.md"]]);export{S as default}; diff --git a/01-overview/assets/7-D6Mbu72C.js b/01-overview/assets/7-D6Mbu72C.js new file mode 100644 index 0000000..f37d3f2 --- /dev/null +++ b/01-overview/assets/7-D6Mbu72C.js @@ -0,0 +1 @@ +import{o as r,c as o,k as t,q as l,s as n,A as e,e as s}from"./modules/vue-CnDFeQoy.js";import{I as i}from"./slidev/two-cols-Sg1cj3NL.js";import{_,ac as a}from"./index-DCjvn3b2.js";import{p as c,u as m,f as p}from"./slidev/context-C6suSrgS.js";import"./modules/shiki-DeQJCler.js";const u="/sa2024/01-overview/assets/01-davidparnas-DmTrf5M5.jpg",d=s("h1",null,"Software is",-1),f=s("ul",null,[s("li",null,"Buggy"),s("li",null,"Unreliable"),s("li",null,"Forever changing"),s("li",null,"Unwarrantable")],-1),h=s("div",{style:{"text-align":"center"}},"- Dvaid Parnas",-1),g=s("img",{src:u,class:"m-10 h-90"},null,-1),v={__name:"7",setup(x){return c(a),m(),(P,w)=>(r(),o(i,l(n(e(p)(e(a),6))),{right:t(B=>[g]),default:t(()=>[d,f,h]),_:1},16))}},D=_(v,[["__file","/@slidev/slides/7.md"]]);export{D as default}; diff --git a/01-overview/assets/ClicksSlider-qq1Ub2AL.css b/01-overview/assets/ClicksSlider-qq1Ub2AL.css new file mode 100644 index 0000000..ded5c92 --- /dev/null +++ b/01-overview/assets/ClicksSlider-qq1Ub2AL.css @@ -0,0 +1 @@ +.range[data-v-e916140b]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}.range[data-v-e916140b]::-webkit-slider-thumb{-webkit-appearance:none;height:100%;width:var(--thumb-width, .5rem)}.range[data-v-e916140b]::-moz-range-thumb{height:100%;width:var(--thumb-width, .5rem)} diff --git a/01-overview/assets/ContextMenu-DSnskk1a.css b/01-overview/assets/ContextMenu-DSnskk1a.css new file mode 100644 index 0000000..b193adb --- /dev/null +++ b/01-overview/assets/ContextMenu-DSnskk1a.css @@ -0,0 +1 @@ +.select-list[data-v-9e4a80e3]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-9e4a80e3]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-9e4a80e3]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-9e4a80e3]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-9e4a80e3]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}.autocomplete-list[data-v-a9c46306]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-a9c46306]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-a9c46306]{cursor:pointer}#slideshow[data-v-63954aac]{height:100%} diff --git a/01-overview/assets/DrawingControls-BO6lw4N5.css b/01-overview/assets/DrawingControls-BO6lw4N5.css deleted file mode 100644 index beec79d..0000000 --- a/01-overview/assets/DrawingControls-BO6lw4N5.css +++ /dev/null @@ -1 +0,0 @@ -.resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper__popper{z-index:10000;top:0;left:0;outline:none}.v-popper__popper.v-popper__popper--hidden{visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s;pointer-events:none}.v-popper__popper.v-popper__popper--shown{visibility:visible;opacity:1;transition:opacity .15s}.v-popper__popper.v-popper__popper--skip-transition,.v-popper__popper.v-popper__popper--skip-transition>.v-popper__wrapper{transition:none!important}.v-popper__backdrop{position:absolute;top:0;left:0;width:100%;height:100%;display:none}.v-popper__inner{position:relative;box-sizing:border-box;overflow-y:auto}.v-popper__inner>div{position:relative;z-index:1;max-width:inherit;max-height:inherit}.v-popper__arrow-container{position:absolute;width:10px;height:10px}.v-popper__popper--arrow-overflow .v-popper__arrow-container,.v-popper__popper--no-positioning .v-popper__arrow-container{display:none}.v-popper__arrow-inner,.v-popper__arrow-outer{border-style:solid;position:absolute;top:0;left:0;width:0;height:0}.v-popper__arrow-inner{visibility:hidden;border-width:7px}.v-popper__arrow-outer{border-width:6px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{left:-2px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{left:-1px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer{border-bottom-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:0}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{border-top-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{top:-4px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{top:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{top:-1px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{border-left-width:0;border-left-color:transparent!important;border-top-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{left:-4px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{left:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer{border-right-width:0;border-top-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner{left:-2px}.v-popper--theme-tooltip .v-popper__inner{background:#000c;color:#fff;border-radius:6px;padding:7px 12px 6px}.v-popper--theme-tooltip .v-popper__arrow-outer{border-color:#000c}.v-popper--theme-dropdown .v-popper__inner{background:#fff;color:#000;border-radius:6px;border:1px solid #ddd;box-shadow:0 6px 30px #0000001a}.v-popper--theme-dropdown .v-popper__arrow-inner{visibility:visible;border-color:#fff}.v-popper--theme-dropdown .v-popper__arrow-outer{border-color:#ddd}.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/01-overview/assets/DrawingControls-C5T1oZL5.css b/01-overview/assets/DrawingControls-C5T1oZL5.css new file mode 100644 index 0000000..bf95bff --- /dev/null +++ b/01-overview/assets/DrawingControls-C5T1oZL5.css @@ -0,0 +1 @@ +.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/01-overview/assets/DrawingPreview-DJ7dOR_1.css b/01-overview/assets/DrawingPreview-DJ7dOR_1.css new file mode 100644 index 0000000..d8ce4e2 --- /dev/null +++ b/01-overview/assets/DrawingPreview-DJ7dOR_1.css @@ -0,0 +1 @@ +#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.disable-view-transition[data-v-1e2c950d] *{view-transition-name:none!important}.slidev-page[data-v-1e2c950d]{position:absolute;width:100%;height:100%} diff --git a/01-overview/assets/SlidesShow-Do3DTZt5.css b/01-overview/assets/SlidesShow-Do3DTZt5.css deleted file mode 100644 index 4ca12c5..0000000 --- a/01-overview/assets/SlidesShow-Do3DTZt5.css +++ /dev/null @@ -1 +0,0 @@ -#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete-list[data-v-9ed224f5]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-9ed224f5]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-9ed224f5]{cursor:pointer}.select-list[data-v-38e64e7e]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-38e64e7e]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-38e64e7e]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-38e64e7e]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-38e64e7e]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}#slideshow[data-v-2fe83b23]{height:100%}#slideshow>div[data-v-2fe83b23]{position:absolute;height:100%;width:100%} diff --git a/01-overview/assets/index-B06xYRGX.js b/01-overview/assets/index-B06xYRGX.js deleted file mode 100644 index b2d15ab..0000000 --- a/01-overview/assets/index-B06xYRGX.js +++ /dev/null @@ -1,7 +0,0 @@ -import{n as Pe,y as yi,z as w,A as wi,t as U,B as de,C as pe,D as bi,E as ki,G as xi,H as $i,I as u,J as y,K as Mi,L as Si,M as Pi,N as Ci,O as ne,P as Xs,Q as Ti,R as Li,d as Hs,b as Ds,e as c,f as Ue,h as Ei,o as M,c as L,k as x,q as A,s as O,i as rs,S as E,T as Is,U as Ai,V as Oi,W as Hi,X as Di,Y as Ii,Z as Ri,_ as ji,$ as X,a0 as En,a1 as Ni,a2 as Ye,a3 as Fi,a4 as zi,a5 as Ui,r as Wi,a6 as qi,a7 as Vi,u as Bi}from"./modules/vue-CnJIpJLC.js";import{T as Ki}from"./modules/shiki-BgDwwTVx.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const o of i)if(o.type==="childList")for(const a of o.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&n(a)}).observe(document,{childList:!0,subtree:!0});function s(i){const o={};return i.integrity&&(o.integrity=i.integrity),i.referrerPolicy&&(o.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?o.credentials="include":i.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function n(i){if(i.ep)return;i.ep=!0;const o=s(i);fetch(i.href,o)}})();function vs(t,e={},s){for(const n in t){const i=t[n],o=s?`${s}:${n}`:n;typeof i=="object"&&i!==null?vs(i,e,o):typeof i=="function"&&(e[o]=i)}return e}const Gi={run:t=>t()},Ji=()=>Gi,An=typeof console.createTask<"u"?console.createTask:Ji;function Zi(t,e){const s=e.shift(),n=An(s);return t.reduce((i,o)=>i.then(()=>n.run(()=>o(...e))),Promise.resolve())}function Qi(t,e){const s=e.shift(),n=An(s);return Promise.all(t.map(i=>n.run(()=>i(...e))))}function as(t,e){for(const s of[...t])s(e)}class Xi{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,s,n={}){if(!e||typeof s!="function")return()=>{};const i=e;let o;for(;this._deprecatedHooks[e];)o=this._deprecatedHooks[e],e=o.to;if(o&&!n.allowDeprecated){let a=o.message;a||(a=`${i} hook has been deprecated`+(o.to?`, please use ${o.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(a)||(console.warn(a),this._deprecatedMessages.add(a))}if(!s.name)try{Object.defineProperty(s,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(s),()=>{s&&(this.removeHook(e,s),s=void 0)}}hookOnce(e,s){let n,i=(...o)=>(typeof n=="function"&&n(),n=void 0,i=void 0,s(...o));return n=this.hook(e,i),n}removeHook(e,s){if(this._hooks[e]){const n=this._hooks[e].indexOf(s);n!==-1&&this._hooks[e].splice(n,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,s){this._deprecatedHooks[e]=typeof s=="string"?{to:s}:s;const n=this._hooks[e]||[];delete this._hooks[e];for(const i of n)this.hook(e,i)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const s in e)this.deprecateHook(s,e[s])}addHooks(e){const s=vs(e),n=Object.keys(s).map(i=>this.hook(i,s[i]));return()=>{for(const i of n.splice(0,n.length))i()}}removeHooks(e){const s=vs(e);for(const n in s)this.removeHook(n,s[n])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...s){return s.unshift(e),this.callHookWith(Zi,e,...s)}callHookParallel(e,...s){return s.unshift(e),this.callHookWith(Qi,e,...s)}callHookWith(e,s,...n){const i=this._before||this._after?{name:s,args:n,context:{}}:void 0;this._before&&as(this._before,i);const o=e(s in this._hooks?[...this._hooks[s]]:[],n);return o instanceof Promise?o.finally(()=>{this._after&&i&&as(this._after,i)}):(this._after&&i&&as(this._after,i),o)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const s=this._before.indexOf(e);s!==-1&&this._before.splice(s,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const s=this._after.indexOf(e);s!==-1&&this._after.splice(s,1)}}}}function Yi(){return new Xi}function to(t){return Array.isArray(t)?t:[t]}const eo=["title","titleTemplate","script","style","noscript"],Ie=["base","meta","link","style","script","noscript"],so=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],no=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],On=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],io=typeof window<"u";function Rs(t){let e=9;for(let s=0;s>>9)+65536).toString(16).substring(1,8).toLowerCase()}function Ys(t){return t._h||Rs(t._d?t._d:`${t.tag}:${t.textContent||t.innerHTML||""}:${Object.entries(t.props).map(([e,s])=>`${e}:${String(s)}`).join(",")}`)}function Hn(t,e){const{props:s,tag:n}=t;if(no.includes(n))return n;if(n==="link"&&s.rel==="canonical")return"canonical";if(s.charset)return"charset";const i=["id"];n==="meta"&&i.push("name","property","http-equiv");for(const o of i)if(typeof s[o]<"u"){const a=String(s[o]);return e&&!e(a)?!1:`${n}:${o}:${a}`}return!1}function tn(t,e){return t==null?e||null:typeof t=="function"?t(e):t}async function oo(t,e,s){const n={tag:t,props:await Dn(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(t)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(t))};return On.forEach(i=>{const o=typeof n.props[i]<"u"?n.props[i]:s[i];typeof o<"u"&&((!["innerHTML","textContent","children"].includes(i)||eo.includes(n.tag))&&(n[i==="children"?"innerHTML":i]=o),delete n.props[i])}),n.props.body&&(n.tagPosition="bodyClose",delete n.props.body),n.tag==="script"&&typeof n.innerHTML=="object"&&(n.innerHTML=JSON.stringify(n.innerHTML),n.props.type=n.props.type||"application/json"),Array.isArray(n.props.content)?n.props.content.map(i=>({...n,props:{...n.props,content:i}})):n}function ro(t){return typeof t=="object"&&!Array.isArray(t)&&(t=Object.keys(t).filter(e=>t[e])),(Array.isArray(t)?t.join(" "):t).split(" ").filter(e=>e.trim()).filter(Boolean).join(" ")}async function Dn(t,e){for(const s of Object.keys(t)){if(s==="class"){t[s]=ro(t[s]);continue}if(t[s]instanceof Promise&&(t[s]=await t[s]),!e&&!On.includes(s)){const n=String(t[s]),i=s.startsWith("data-");n==="true"||n===""?t[s]=i?"true":!0:t[s]||(i&&n==="false"?t[s]="false":delete t[s])}}return t}const ao=10;async function lo(t){const e=[];return Object.entries(t.resolvedInput).filter(([s,n])=>typeof n<"u"&&so.includes(s)).forEach(([s,n])=>{const i=to(n);e.push(...i.map(o=>oo(s,o,t)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((s,n)=>(s._e=t._i,t.mode&&(s._m=t.mode),s._p=(t._i<l&&l[h]||void 0,e):r=e[a],typeof r<"u"?(r||"").replace(/"/g,'\\"'):!1}let i=t;try{i=decodeURI(t)}catch{}return(i.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(a=>{const r=n(a.slice(1));typeof r=="string"&&(t=t.replace(new RegExp(`\\${a}(\\W|$)`,"g"),(l,h)=>`${r}${h}`).trim())}),t.includes(te)&&(t.endsWith(te)&&(t=t.slice(0,-te.length).trim()),t.startsWith(te)&&(t=t.slice(te.length).trim()),t=t.replace(new RegExp(`\\${te}\\s*\\${te}`,"g"),te),t=Re(t,{separator:s},s)),t}async function uo(t){const e={tag:t.tagName.toLowerCase(),props:await Dn(t.getAttributeNames().reduce((s,n)=>({...s,[n]:t.getAttribute(n)}),{})),innerHTML:t.innerHTML};return e._d=Hn(e),e}async function ho(t,e={}){var d;const s=e.document||t.resolvedOptions.document;if(!s)return;const n={shouldRender:t.dirty,tags:[]};if(await t.hooks.callHook("dom:beforeRender",n),!n.shouldRender)return;const i=(await t.resolveTags()).map(f=>({tag:f,id:Ie.includes(f.tag)?Ys(f):f.tag,shouldRender:!0}));let o=t._dom;if(!o){o={elMap:{htmlAttrs:s.documentElement,bodyAttrs:s.body}};for(const f of["body","head"]){const m=(d=s==null?void 0:s[f])==null?void 0:d.children;for(const p of[...m].filter(g=>Ie.includes(g.tagName.toLowerCase())))o.elMap[p.getAttribute("data-hid")||Ys(await uo(p))]=p}}o.pendingSideEffects={...o.sideEffects||{}},o.sideEffects={};function a(f,m,p){const g=`${f}:${m}`;o.sideEffects[g]=p,delete o.pendingSideEffects[g]}function r({id:f,$el:m,tag:p}){const g=p.tag.endsWith("Attrs");o.elMap[f]=m,g||(["textContent","innerHTML"].forEach(_=>{p[_]&&p[_]!==m[_]&&(m[_]=p[_])}),a(f,"el",()=>{o.elMap[f].remove(),delete o.elMap[f]})),Object.entries(p.props).forEach(([_,v])=>{const b=`attr:${_}`;if(_==="class")for(const $ of(v||"").split(" ").filter(Boolean))g&&a(f,`${b}:${$}`,()=>m.classList.remove($)),!m.classList.contains($)&&m.classList.add($);else m.getAttribute(_)!==v&&m.setAttribute(_,v===!0?"":String(v)),g&&a(f,b,()=>m.removeAttribute(_))})}const l=[],h={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const f of i){const{tag:m,shouldRender:p,id:g}=f;if(p){if(m.tag==="title"){s.title=m.textContent;continue}f.$el=f.$el||o.elMap[g],f.$el?r(f):Ie.includes(m.tag)&&l.push(f)}}for(const f of l){const m=f.tag.tagPosition||"head";f.$el=s.createElement(f.tag.tag),r(f),h[m]=h[m]||s.createDocumentFragment(),h[m].appendChild(f.$el)}for(const f of i)await t.hooks.callHook("dom:renderTag",f,s,a);h.head&&s.head.appendChild(h.head),h.bodyOpen&&s.body.insertBefore(h.bodyOpen,s.body.firstChild),h.bodyClose&&s.body.appendChild(h.bodyClose),Object.values(o.pendingSideEffects).forEach(f=>f()),t._dom=o,t.dirty=!1,await t.hooks.callHook("dom:rendered",{renders:i})}async function fo(t,e={}){const s=e.delayFn||(n=>setTimeout(n,10));return t._domUpdatePromise=t._domUpdatePromise||new Promise(n=>s(async()=>{await ho(t,e),delete t._domUpdatePromise,n()}))}function po(t){return e=>{var n,i;const s=((i=(n=e.resolvedOptions.document)==null?void 0:n.head.querySelector('script[id="unhead:payload"]'))==null?void 0:i.innerHTML)||!1;return s&&e.push(JSON.parse(s)),{mode:"client",hooks:{"entries:updated":function(o){fo(o,t)}}}}}const mo=["templateParams","htmlAttrs","bodyAttrs"],go={hooks:{"tag:normalise":function({tag:t}){["hid","vmid","key"].forEach(n=>{t.props[n]&&(t.key=t.props[n],delete t.props[n])});const s=Hn(t)||(t.key?`${t.tag}:${t.key}`:!1);s&&(t._d=s)},"tags:resolve":function(t){const e={};t.tags.forEach(n=>{const i=(n.key?`${n.tag}:${n.key}`:n._d)||n._p,o=e[i];if(o){let r=n==null?void 0:n.tagDuplicateStrategy;if(!r&&mo.includes(n.tag)&&(r="merge"),r==="merge"){const l=o.props;["class","style"].forEach(h=>{l[h]&&(n.props[h]?(h==="style"&&!l[h].endsWith(";")&&(l[h]+=";"),n.props[h]=`${l[h]} ${n.props[h]}`):n.props[h]=l[h])}),e[i].props={...l,...n.props};return}else if(n._e===o._e){o._duped=o._duped||[],n._d=`${o._d}:${o._duped.length+1}`,o._duped.push(n);return}else if(We(n)>We(o))return}const a=Object.keys(n.props).length+(n.innerHTML?1:0)+(n.textContent?1:0);if(Ie.includes(n.tag)&&a===0){delete e[i];return}e[i]=n});const s=[];Object.values(e).forEach(n=>{const i=n._duped;delete n._duped,s.push(n),i&&s.push(...i)}),t.tags=s,t.tags=t.tags.filter(n=>!(n.tag==="meta"&&(n.props.name||n.props.property)&&!n.props.content))}}},_o={mode:"server",hooks:{"tags:resolve":function(t){const e={};t.tags.filter(s=>["titleTemplate","templateParams","title"].includes(s.tag)&&s._m==="server").forEach(s=>{e[s.tag]=s.tag.startsWith("title")?s.textContent:s.props}),Object.keys(e).length&&t.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},vo=["script","link","bodyAttrs"];function yo(t){const e={},s={};return Object.entries(t.props).forEach(([n,i])=>{n.startsWith("on")&&typeof i=="function"?(In.includes(n)&&(e[n]=`this.dataset.${n} = true`),s[n]=i):e[n]=i}),{props:e,eventHandlers:s}}const wo=t=>({hooks:{"tags:resolve":function(e){for(const s of e.tags)if(vo.includes(s.tag)){const{props:n,eventHandlers:i}=yo(s);s.props=n,Object.keys(i).length&&((s.props.src||s.props.href)&&(s.key=s.key||Rs(s.props.src||s.props.href)),s._eventHandlers=i)}},"dom:renderTag":function(e,s,n){if(!e.tag._eventHandlers)return;const i=e.tag.tag==="bodyAttrs"?s.defaultView:e.$el;Object.entries(e.tag._eventHandlers).forEach(([o,a])=>{const r=`${e.tag._d||e.tag._p}:${o}`,l=o.slice(2).toLowerCase(),h=`data-h-${l}`;if(n(e.id,r,()=>{}),e.$el.hasAttribute(h))return;e.$el.setAttribute(h,"");let d;const f=m=>{a(m),d==null||d.disconnect()};o in e.$el.dataset?f(new Event(o.replace("on",""))):In.includes(o)&&typeof MutationObserver<"u"?(d=new MutationObserver(m=>{m.some(g=>g.attributeName===`data-${o}`)&&(f(new Event(o.replace("on",""))),d==null||d.disconnect())}),d.observe(e.$el,{attributes:!0})):i.addEventListener(l,f),n(e.id,r,()=>{d==null||d.disconnect(),i.removeEventListener(l,f),e.$el.removeAttribute(h)})})}}}),bo=["link","style","script","noscript"],ko={hooks:{"tag:normalise":({tag:t})=>{t.key&&bo.includes(t.tag)&&(t.props["data-hid"]=t._h=Rs(t.key))}}},xo={hooks:{"tags:resolve":t=>{const e=s=>{var n;return(n=t.tags.find(i=>i._d===s))==null?void 0:n._p};for(const{prefix:s,offset:n}of co)for(const i of t.tags.filter(o=>typeof o.tagPriority=="string"&&o.tagPriority.startsWith(s))){const o=e(i.tagPriority.replace(s,""));typeof o<"u"&&(i._p=o+n)}t.tags.sort((s,n)=>s._p-n._p).sort((s,n)=>We(s)-We(n))}}},$o={meta:"content",link:"href",htmlAttrs:"lang"},Mo=t=>({hooks:{"tags:resolve":e=>{var r;const{tags:s}=e,n=(r=s.find(l=>l.tag==="title"))==null?void 0:r.textContent,i=s.findIndex(l=>l.tag==="templateParams"),o=i!==-1?s[i].props:{},a=o.separator||"|";delete o.separator,o.pageTitle=Re(o.pageTitle||n||"",o,a);for(const l of s.filter(h=>h.processTemplateParams!==!1)){const h=$o[l.tag];h&&typeof l.props[h]=="string"?l.props[h]=Re(l.props[h],o,a):(l.processTemplateParams===!0||["titleTemplate","title"].includes(l.tag))&&["innerHTML","textContent"].forEach(d=>{typeof l[d]=="string"&&(l[d]=Re(l[d],o,a))})}t._templateParams=o,t._separator=a,e.tags=s.filter(l=>l.tag!=="templateParams")}}}),So={hooks:{"tags:resolve":t=>{const{tags:e}=t;let s=e.findIndex(i=>i.tag==="titleTemplate");const n=e.findIndex(i=>i.tag==="title");if(n!==-1&&s!==-1){const i=tn(e[s].textContent,e[n].textContent);i!==null?e[n].textContent=i||e[n].textContent:delete e[n]}else if(s!==-1){const i=tn(e[s].textContent);i!==null&&(e[s].textContent=i,e[s].tag="title",s=-1)}s!==-1&&delete e[s],t.tags=e.filter(Boolean)}}},Po={hooks:{"tags:afterResolve":function(t){for(const e of t.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{r.dirty=!0,e.callHook("entries:updated",r)};let i=0,o=[];const a=[],r={plugins:a,dirty:!1,resolvedOptions:t,hooks:e,headEntries(){return o},use(l){const h=typeof l=="function"?l(r):l;(!h.key||!a.some(d=>d.key===h.key))&&(a.push(h),nn(h.mode,s)&&e.addHooks(h.hooks||{}))},push(l,h){h==null||delete h.head;const d={_i:i++,input:l,...h};return nn(d.mode,s)&&(o.push(d),n()),{dispose(){o=o.filter(f=>f._i!==d._i),e.callHook("entries:updated",r),n()},patch(f){o=o.map(m=>(m._i===d._i&&(m.input=d.input=f),m)),n()}}},async resolveTags(){const l={tags:[],entries:[...o]};await e.callHook("entries:resolve",l);for(const h of l.entries){const d=h.resolvedInput||h.input;if(h.resolvedInput=await(h.transform?h.transform(d):d),h.resolvedInput)for(const f of await lo(h)){const m={tag:f,entry:h,resolvedOptions:r.resolvedOptions};await e.callHook("tag:normalise",m),l.tags.push(m.tag)}}return await e.callHook("tags:beforeResolve",l),await e.callHook("tags:resolve",l),await e.callHook("tags:afterResolve",l),l.tags},ssr:s};return[go,_o,wo,ko,xo,Mo,So,Po,...(t==null?void 0:t.plugins)||[]].forEach(l=>r.use(l)),r.hooks.callHook("init",r),r}function Lo(){return Rn}const Eo=yi.startsWith("3");function Ao(t){return typeof t=="function"?t():w(t)}function qe(t,e=""){if(t instanceof Promise)return t;const s=Ao(t);return!t||!s?s:Array.isArray(s)?s.map(n=>qe(n,e)):typeof s=="object"?Object.fromEntries(Object.entries(s).map(([n,i])=>n==="titleTemplate"||n.startsWith("on")?[n,w(i)]:[n,qe(i,n)])):s}const Oo={hooks:{"entries:resolve":function(t){for(const e of t.entries)e.resolvedInput=qe(e.input)}}},jn="usehead";function Ho(t){return{install(s){Eo&&(s.config.globalProperties.$unhead=t,s.config.globalProperties.$head=t,s.provide(jn,t))}}.install}function Do(t={}){t.domDelayFn=t.domDelayFn||(s=>Pe(()=>setTimeout(()=>s(),0)));const e=Co(t);return e.use(Oo),e.install=Ho(e),e}const on=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},rn="__unhead_injection_handler__";function Io(){if(rn in on)return on[rn]();const t=wi(jn);return t||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),t||Lo()}function Ro(t,e={}){const s=e.head||Io();if(s)return s.ssr?s.push(t,e):jo(s,t,e)}function jo(t,e,s={}){const n=U(!1),i=U({});de(()=>{i.value=n.value?{}:qe(e)});const o=t.push(i.value,s);return pe(i,r=>{o.patch(r)}),$i()&&(bi(()=>{o.dispose()}),ki(()=>{n.value=!0}),xi(()=>{n.value=!1})),o}function No(...t){return zo(t).reduce((e,s)=>e+s,0)}function Fo(t){return t=t??[],Array.isArray(t)?t:[t]}function zo(t){return Fo(t).flat(1)}function Uo(t){return t!=null}function Wo(t,e){return Object.fromEntries(Object.entries(t).map(([s,n])=>e(s,n)).filter(Uo))}const N={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:"dev",monacoTypesSource:"local",monacoTypesAdditionalPackages:[],download:!1,export:{},info:!1,highlighter:"shiki",lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},Nn=N.aspectRatio??16/9,qo=N.canvasWidth??980,vd=Math.ceil(qo/Nn),Vo=u(()=>Wo(N.themeConfig||{},(t,e)=>[`--slidev-theme-${t}`,e]));function Fn(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function it(t,e,s){Object.defineProperty(t,e,{value:s,writable:!0,enumerable:!1})}const ae=y({page:0,clicks:0});let Bo=[],Ko=[];it(ae,"$syncUp",!0);it(ae,"$syncDown",!0);it(ae,"$paused",!1);it(ae,"$onSet",t=>Bo.push(t));it(ae,"$onPatch",t=>Ko.push(t));Fn();it(ae,"$patch",async()=>!1);function zn(t,e,s=!1){const n=[];let i=!1,o=!1,a,r;const l=y(e);function h(p){n.push(p)}function d(p,g){l[p]!==g&&(clearTimeout(a),i=!0,l[p]=g,a=setTimeout(()=>i=!1,0))}function f(p){i||(clearTimeout(r),o=!0,Object.entries(p).forEach(([g,_])=>{l[g]=_}),r=setTimeout(()=>o=!1,0))}function m(p){let g;s?s&&window.addEventListener("storage",v=>{v&&v.key===p&&v.newValue&&f(JSON.parse(v.newValue))}):(g=new BroadcastChannel(p),g.addEventListener("message",v=>f(v.data)));function _(){!s&&g&&!o?g.postMessage(Mi(l)):s&&!o&&window.localStorage.setItem(p,JSON.stringify(l)),i||n.forEach(v=>v(l))}if(pe(l,_,{deep:!0,flush:"sync"}),s){const v=window.localStorage.getItem(p);v&&f(JSON.parse(v))}}return{init:m,onPatch:h,patch:d,state:l}}const{init:Go,onPatch:Jo,patch:_e,state:yd}=zn(ae,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),le=y({});let Zo=[],Qo=[];it(le,"$syncUp",!0);it(le,"$syncDown",!0);it(le,"$paused",!1);it(le,"$onSet",t=>Zo.push(t));it(le,"$onPatch",t=>Qo.push(t));Fn();it(le,"$patch",async()=>!1);const{init:Xo,onPatch:Yo,patch:Un,state:Wn}=zn(le,{},!1),tr="modulepreload",er=function(t){return"/sa2024/01-overview/"+t},an={},Ce=function(e,s,n){let i=Promise.resolve();if(s&&s.length>0){const o=document.getElementsByTagName("link");i=Promise.all(s.map(a=>{if(a=er(a),a in an)return;an[a]=!0;const r=a.endsWith(".css"),l=r?'[rel="stylesheet"]':"";if(!!n)for(let f=o.length-1;f>=0;f--){const m=o[f];if(m.href===a&&(!r||m.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${a}"]${l}`))return;const d=document.createElement("link");if(d.rel=r?"stylesheet":tr,r||(d.as="script",d.crossOrigin=""),d.href=a,document.head.appendChild(d),r)return new Promise((f,m)=>{d.addEventListener("load",f),d.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${a}`)))})}))}return i.then(()=>e()).catch(o=>{const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=o,window.dispatchEvent(a),!a.defaultPrevented)throw o})},S=(t,e)=>{const s=t.__vccOpts||t;for(const[n,i]of e)s[n]=i;return s};function wd(){const t=U(Date.now()),e=Si({interval:1e3}),s=u(()=>{const i=(e.value-t.value)/1e3,o=Math.floor(i%60).toString().padStart(2,"0");return`${Math.floor(i/60).toString().padStart(2,"0")}:${o}`});function n(){t.value=e.value}return{timer:s,resetTimer:n}}function sr(t=5){const e=[],s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n=s.length;for(let i=0;ii.max||0))}}}function lr(t){var i,o;if((i=t==null?void 0:t.meta)!=null&&i.__clicksContext)return t.meta.__clicksContext;const e=+((t==null?void 0:t.path)??ys),s=u({get(){var r;const a=+(((r=Jt.value)==null?void 0:r.path)??Number.NaN);return!a||Number.isNaN(a)?0:a===e?fe.value:a>e?ys:0},set(a){var l;+(((l=Jt.value)==null?void 0:l.path)??Number.NaN)===e&&(fe.value=a)}}),n=Jn(s,(o=t==null?void 0:t.meta)==null?void 0:o.clicks);return t!=null&&t.meta&&(t.meta.__clicksContext=n),n}function cr(t,e=0){var s;return Jn(U(e),(s=t==null?void 0:t.meta)==null?void 0:s.clicks)}const ur=Ci(cr());function C(){const t=ne(Vn),e=Xs(t,"nav"),s=ne(js,ur).value,n=Xs(s,"current"),i=ne(qn),o=ne(Bn),a=ne(Kn,{}),r=ne(or,void 0),l=ne(ir,U(1));return{$slidev:t,$nav:e,$clicksContext:s,$clicks:n,$page:i,$route:r,$renderContext:o,$frontmatter:a,$scale:l}}function H(t){var i,o;Ti(Kn,t);const{$slidev:e,$page:s}=C(),n=e.nav.rawRoutes.find(a=>a.path===String(s.value));if((o=(i=n==null?void 0:n.meta)==null?void 0:i.slide)!=null&&o.frontmatter){for(const a of Object.keys(n.meta.slide.frontmatter))a in t||delete n.meta.slide.frontmatter[a];Object.assign(n.meta.slide.frontmatter,t)}}function D(t,e){return{...Li(t,e===0?ar:Gn),frontmatter:t}}function ln(t){return t.startsWith("/")?"/sa2024/01-overview/"+t.slice(1):t}function hr(t,e=!1){const s=t&&["#","rgb","hsl"].some(i=>t.indexOf(i)===0),n={background:s?t:void 0,color:t&&!s?"white":void 0,backgroundImage:s?void 0:t?e?`linear-gradient(#0005, #0008), url(${ln(t)})`:`url("${ln(t)}")`:void 0,backgroundRepeat:"no-repeat",backgroundPosition:"center",backgroundSize:"cover"};return n.background||delete n.background,n}const dr={class:"my-auto w-full"},fr=Hs({__name:"cover",props:{background:{default:""}},setup(t){C();const e=t,s=u(()=>hr(e.background,!0));return(n,i)=>(M(),Ds("div",{class:"slidev-layout cover",style:Ei(s.value)},[c("div",dr,[Ue(n.$slots,"default")])],4))}}),pr=S(fr,[["__file","/opt/homebrew/lib/node_modules/@slidev/theme-default/layouts/cover.vue"]]),mt=y({theme:"default",layout:"cover"}),mr=y({layout:u(()=>mt.layout),transition:u(()=>mt.transition),class:u(()=>mt.class),clicks:u(()=>mt.clicks),name:u(()=>mt.name),preload:u(()=>mt.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:mt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),gr=c("h1",null,"Software Architecture",-1),_r=c("h2",null,"Overview",-1),vr={__name:"1",setup(t){return H(mt),C(),(e,s)=>(M(),L(pr,A(O(w(D)(w(mt),0))),{default:x(()=>[gr,_r]),_:1},16))}},yr=S(vr,[["__file","/@slidev/slides/1.md"]]),wr="/sa2024/01-overview/assets/01-spring-logo-C5TUz5pd.png",br=Hs({__name:"two-cols",props:{class:{type:String},layoutClass:{type:String}},setup(t){const e=t;return(s,n)=>(M(),Ds("div",{class:rs(["slidev-layout two-columns w-full h-full grid grid-cols-2",e.layoutClass])},[c("div",{class:rs(["col-left",e.class])},[Ue(s.$slots,"default")],2),c("div",{class:rs(["col-right",e.class])},[Ue(s.$slots,"right")],2)],2))}}),Zt=S(br,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/two-cols.vue"]]),gt=y({layout:"two-cols"}),kr=y({layout:u(()=>gt.layout),transition:u(()=>gt.transition),class:u(()=>gt.class),clicks:u(()=>gt.clicks),name:u(()=>gt.name),preload:u(()=>gt.preload),slide:{index:1,content:"",note:"",title:"主题",level:1,noteHTML:"",raw:"",frontmatter:gt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:10,id:1,no:2},__clicksContext:null,__preloaded:!1}),xr=c("h1",null,"主题",-1),$r=c("ul",null,[c("li",null,"介绍软件体系结构的基本概念"),c("li",null,"当前流行的软件设计开发方法"),c("li",null,"基于Spring框架的软件设计和开发")],-1),Mr=c("div",{class:"absolute bottom-20"},[c("img",{src:wr,class:"h-20"})],-1),Sr={__name:"2",setup(t){return H(gt),C(),(e,s)=>(M(),L(Zt,A(O(w(D)(w(gt),1))),{right:x(n=>[Mr]),default:x(()=>[xr,$r]),_:1},16))}},Pr=S(Sr,[["__file","/@slidev/slides/2.md"]]),Cr="/sa2024/01-overview/assets/01-building-BQbONAF4.png",Tr="/sa2024/01-overview/assets/01-skyscraper-C0mCrQuk.gif",_t=y({layout:"two-cols"}),Lr=y({layout:u(()=>_t.layout),transition:u(()=>_t.transition),class:u(()=>_t.class),clicks:u(()=>_t.clicks),name:u(()=>_t.name),preload:u(()=>_t.preload),slide:{index:2,content:"",note:"",title:"Architecture",level:1,noteHTML:"",raw:"",frontmatter:_t,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:26,id:2,no:3},__clicksContext:null,__preloaded:!1}),Er=c("h1",null,"Architecture",-1),Ar=c("img",{src:Cr,class:"m-20 h-80"},null,-1),Or=c("img",{src:Tr,class:"m-20 h-90"},null,-1),Hr={__name:"3",setup(t){return H(_t),C(),(e,s)=>(M(),L(Zt,A(O(w(D)(w(_t),2))),{right:x(n=>[Or]),default:x(()=>[Er,Ar]),_:1},16))}},Dr=S(Hr,[["__file","/@slidev/slides/3.md"]]),Ir={},Rr={class:"slidev-layout default"};function jr(t,e){return M(),Ds("div",Rr,[Ue(t.$slots,"default")])}const F=S(Ir,[["render",jr],["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/default.vue"]]),vt=y({}),Nr=y({layout:u(()=>vt.layout),transition:u(()=>vt.transition),class:u(()=>vt.class),clicks:u(()=>vt.clicks),name:u(()=>vt.name),preload:u(()=>vt.preload),slide:{index:3,content:"",note:"",title:"Architecture defined",level:1,noteHTML:"",raw:"",frontmatter:vt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:40,id:3,no:4},__clicksContext:null,__preloaded:!1}),Fr=c("h1",null,"Architecture defined",-1),zr=c("ul",null,[c("li",null,"The art or science of building or constructing edifices of any kind for human use"),c("li",null,"The action or process of building"),c("li",null,"The special method of ‘style’ in accordance with which the details of the structure and ornamentation of a building are arranged"),c("li",null,"The conceptual structure and overall logical organization of a computer or computer-based system from the point of view of its use or design; a particular realization of this")],-1),Ur={__name:"4",setup(t){return H(vt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(vt),3))),{default:x(()=>[Fr,zr]),_:1},16))}},Wr=S(Ur,[["__file","/@slidev/slides/4.md"]]),qr="/sa2024/01-overview/assets/01-bjarne-CYjwaqzc.png",yt=y({layout:"two-cols"}),Vr=y({layout:u(()=>yt.layout),transition:u(()=>yt.transition),class:u(()=>yt.class),clicks:u(()=>yt.clicks),name:u(()=>yt.name),preload:u(()=>yt.preload),slide:{index:4,content:"",note:"",title:"Software Artifacts",level:1,noteHTML:"",raw:"",frontmatter:yt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:48,id:4,no:5},__clicksContext:null,__preloaded:!1}),Br=c("h1",null,"Software Artifacts",-1),Kr=c("img",{src:qr,class:"m-10 h-90"},null,-1),Gr=c("p",null,[c("br"),c("br"),c("br"),c("br"),c("br")],-1),Jr=c("blockquote",null,[c("div",{style:{"font-size":"30px","line-height":"150%"}},"Our civilization runs on software.")],-1),Zr=c("p",null,[c("br"),c("br")],-1),Qr=c("div",{style:{"text-align":"center"}},"-Bjarne Stroustrup(比雅尼·斯特劳斯特鲁普)",-1),Xr={__name:"5",setup(t){return H(yt),C(),(e,s)=>(M(),L(Zt,A(O(w(D)(w(yt),4))),{right:x(n=>[Gr,Jr,Zr,Qr]),default:x(()=>[Br,Kr]),_:1},16))}},Yr=S(Xr,[["__file","/@slidev/slides/5.md"]]),wt=y({}),ta=y({layout:u(()=>wt.layout),transition:u(()=>wt.transition),class:u(()=>wt.class),clicks:u(()=>wt.clicks),name:u(()=>wt.name),preload:u(()=>wt.preload),slide:{index:5,content:"",note:"",title:"软件危机(Software Crisis)",level:1,noteHTML:"",raw:"",frontmatter:wt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:70,id:5,no:6},__clicksContext:null,__preloaded:!1}),ea=c("h1",null,"软件危机(Software Crisis)",-1),sa=c("ul",null,[c("li",null,[E("1968年,联邦德国,NATO科技委员会 "),c("ul",null,[c("li",null,"成本不断提高"),c("li",null,"开发进度难以控制"),c("li",null,"质量低下"),c("li",null,"维护困难"),c("li",null,"用户难以满意"),c("li",null,"软件生产率赶不上硬件发展和用户需求增长")])])],-1),na={__name:"6",setup(t){return H(wt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(wt),5))),{default:x(()=>[ea,sa]),_:1},16))}},ia=S(na,[["__file","/@slidev/slides/6.md"]]),oa="/sa2024/01-overview/assets/01-davidparnas-DmTrf5M5.jpg",bt=y({layout:"two-cols"}),ra=y({layout:u(()=>bt.layout),transition:u(()=>bt.transition),class:u(()=>bt.class),clicks:u(()=>bt.clicks),name:u(()=>bt.name),preload:u(()=>bt.preload),slide:{index:6,content:"",note:"",title:"Software is",level:1,noteHTML:"",raw:"",frontmatter:bt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:81,id:6,no:7},__clicksContext:null,__preloaded:!1}),aa=c("h1",null,"Software is",-1),la=c("ul",null,[c("li",null,"Buggy"),c("li",null,"Unreliable"),c("li",null,"Forever changing"),c("li",null,"Unwarrantable")],-1),ca=c("div",{style:{"text-align":"center"}},"- Dvaid Parnas",-1),ua=c("img",{src:oa,class:"m-10 h-90"},null,-1),ha={__name:"7",setup(t){return H(bt),C(),(e,s)=>(M(),L(Zt,A(O(w(D)(w(bt),6))),{right:x(n=>[ua]),default:x(()=>[aa,la,ca]),_:1},16))}},da=S(ha,[["__file","/@slidev/slides/7.md"]]),kt=y({}),fa=y({layout:u(()=>kt.layout),transition:u(()=>kt.transition),class:u(()=>kt.class),clicks:u(()=>kt.clicks),name:u(()=>kt.name),preload:u(()=>kt.preload),slide:{index:7,content:"",note:"",title:"Unsuitability of Software",level:1,noteHTML:"",raw:"",frontmatter:kt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:100,id:7,no:8},__clicksContext:null,__preloaded:!1}),pa=c("h1",null,"Unsuitability of Software",-1),ma=c("ul",null,[c("li",null,[E("U.S. Army study of Federal projects "),c("ul",null,[c("li",null,"47% delivered, but not used"),c("li",null,"29% paid for, but not delivered"),c("li",null,"19% abandoned or reworked"),c("li",null,"3% used after changes"),c("li",null,"2% used as delivered")])])],-1),ga={__name:"8",setup(t){return H(kt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(kt),7))),{default:x(()=>[pa,ma]),_:1},16))}},_a=S(ga,[["__file","/@slidev/slides/8.md"]]),xt=y({}),va=y({layout:u(()=>xt.layout),transition:u(()=>xt.transition),class:u(()=>xt.class),clicks:u(()=>xt.clicks),name:u(()=>xt.name),preload:u(()=>xt.preload),slide:{index:8,content:"",note:"",title:"软件工程:软件危机的解决之道",level:1,noteHTML:"",raw:"",frontmatter:xt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:111,id:8,no:9},__clicksContext:null,__preloaded:!1}),ya=c("h1",null,"软件工程:软件危机的解决之道",-1),wa=c("ul",null,[c("li",null,[E("软件工程一门研究如何用系统化、规范化、数量化等工程原则和方法去进行软件的开发和维护的学科 "),c("ul",null,[c("li",null,[E("软件开发技术 "),c("ul",null,[c("li",null,"开发方法学 / 软件工具 / 软件工程环境")])]),c("li",null,[E("软件项目管理 "),c("ul",null,[c("li",null,"项目估算 / 进度控制 / 人员组织 / 项目计划")])])])])],-1),ba={__name:"9",setup(t){return H(xt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(xt),8))),{default:x(()=>[ya,wa]),_:1},16))}},ka=S(ba,[["__file","/@slidev/slides/9.md"]]),xa="/sa2024/01-overview/assets/01-hard-ButGMUZi.png",$t=y({}),$a=y({layout:u(()=>$t.layout),transition:u(()=>$t.transition),class:u(()=>$t.class),clicks:u(()=>$t.clicks),name:u(()=>$t.name),preload:u(()=>$t.preload),slide:{index:9,content:"",note:"",title:"开发软件还是很难",level:1,noteHTML:"",raw:"",frontmatter:$t,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:121,id:9,no:10},__clicksContext:null,__preloaded:!1}),Ma=c("h1",null,"开发软件还是很难",-1),Sa=c("div",{style:{width:"80%",margin:"0 auto"}},[c("img",{src:xa,class:"h-100"})],-1),Pa={__name:"10",setup(t){return H($t),C(),(e,s)=>(M(),L(F,A(O(w(D)(w($t),9))),{default:x(()=>[Ma,Sa]),_:1},16))}},Ca=S(Pa,[["__file","/@slidev/slides/10.md"]]),Mt=y({}),Ta=y({layout:u(()=>Mt.layout),transition:u(()=>Mt.transition),class:u(()=>Mt.class),clicks:u(()=>Mt.clicks),name:u(()=>Mt.name),preload:u(()=>Mt.preload),slide:{index:10,content:"",note:"",title:"Software architecture",level:1,noteHTML:"",raw:"",frontmatter:Mt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:131,id:10,no:11},__clicksContext:null,__preloaded:!1}),La=c("h1",null,"Software architecture",-1),Ea=c("ul",null,[c("li",null,"随着软件系统规模越来越大、越来越复杂,整个系统的结构和规格说明显得越来越重要"),c("li",null,"对于大规模的复杂软件系统来说,对总体的系统结构设计和规格说明比起对计算的算法和数据结构的选择已变得明显重要得多"),c("li",null,"对于软件体系结构的系统、深入的研究将会成为提高软件生产率和解决软件维护问题的新的最有希望的途径"),c("li",null,"对于软件体系结构的研究成为了最新的研究方向和独立学科分支")],-1),Aa={__name:"11",setup(t){return H(Mt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Mt),10))),{default:x(()=>[La,Ea]),_:1},16))}},Oa=S(Aa,[["__file","/@slidev/slides/11.md"]]),St=y({}),Ha=y({layout:u(()=>St.layout),transition:u(()=>St.transition),class:u(()=>St.class),clicks:u(()=>St.clicks),name:u(()=>St.name),preload:u(()=>St.preload),slide:{index:11,content:"",note:"",title:"Software architecture defined",level:1,noteHTML:"",raw:"",frontmatter:St,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:140,id:11,no:12},__clicksContext:null,__preloaded:!1}),Da=c("h1",null,"Software architecture defined",-1),Ia=c("br",null,null,-1),Ra=c("blockquote",null,[c("div",{style:{"font-size":"25px","line-height":"150%"}},[E("The software architecture of a program or computing system is the "),c("span",{style:{color:"red","font-weight":"bold"}},"structure or structures"),E(" of the system, which comprise "),c("span",{style:{color:"green","font-weight":"bold"}},"software elements"),E(", the "),c("span",{style:{color:"blue","font-weight":"bold"}},"externally visible properties"),E(" of those elements, and the "),c("span",{style:{color:"purple","font-weight":"bold"}},"relationships among them"),E(".")])],-1),ja=c("br",null,null,-1),Na=c("div",{style:{"text-align":"right"}},"-- Clements et al., 1997",-1),Fa={__name:"12",setup(t){return H(St),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(St),11))),{default:x(()=>[Da,Ia,Ra,ja,Na]),_:1},16))}},za=S(Fa,[["__file","/@slidev/slides/12.md"]]),Pt=y({}),Ua=y({layout:u(()=>Pt.layout),transition:u(()=>Pt.transition),class:u(()=>Pt.class),clicks:u(()=>Pt.clicks),name:u(()=>Pt.name),preload:u(()=>Pt.preload),slide:{index:12,content:"",note:"",title:"Some other definitions",level:1,noteHTML:"",raw:"",frontmatter:Pt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:152,id:12,no:13},__clicksContext:null,__preloaded:!1}),Wa=c("h1",null,"Some other definitions",-1),qa=c("ul",null,[c("li",null,[E("Perry and Wolf, 1992 "),c("ul",null,[c("li",null,"A set of architectural elements that have a particular form")])]),c("li",null,[E("Boehm et al., 1995 "),c("ul",null,[c("li",null,[E("A software system architecture comprises "),c("ul",null,[c("li",null,"A collection of components, connections, and constraints"),c("li",null,"A collection of system stakeholders’ need statements"),c("li",null,"A rationale which demonstrates that those components, connections and constraints would satisfy stakeholders’ need statements")])])])])],-1),Va={__name:"13",setup(t){return H(Pt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Pt),12))),{default:x(()=>[Wa,qa]),_:1},16))}},Ba=S(Va,[["__file","/@slidev/slides/13.md"]]),Ct=y({}),Ka=y({layout:u(()=>Ct.layout),transition:u(()=>Ct.transition),class:u(()=>Ct.class),clicks:u(()=>Ct.clicks),name:u(()=>Ct.name),preload:u(()=>Ct.preload),slide:{index:13,content:"",note:"",title:"My favorite one",level:1,noteHTML:"",raw:"",frontmatter:Ct,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:165,id:13,no:14},__clicksContext:null,__preloaded:!1}),Ga=c("h1",null,"My favorite one",-1),Ja=c("br",null,null,-1),Za=c("blockquote",null,[c("div",{style:{"font-size":"25px","line-height":"150%"}},[E("Architecture is a subjective thing, a "),c("span",{style:{color:"red","font-weight":"bold"}},"shared understanding of a system’s design"),E(" by the expert developers on a project. Commonly this shared understanding is in the form of the "),c("span",{style:{color:"blue","font-weight":"bold"}},"major components of the system"),E(" and "),c("span",{style:{color:"green","font-weight":"bold"}},"how they interact"),E(". It’s also about decisions, in that it’s the decisions that developers wish they could get right early on because they’re perceived as hard to change. ")])],-1),Qa=c("br",null,null,-1),Xa=c("div",{style:{"text-align":"right"}},"-- Martin Fowler, 2003",-1),Ya={__name:"14",setup(t){return H(Ct),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Ct),13))),{default:x(()=>[Ga,Ja,Za,Qa,Xa]),_:1},16))}},tl=S(Ya,[["__file","/@slidev/slides/14.md"]]),Tt=y({}),el=y({layout:u(()=>Tt.layout),transition:u(()=>Tt.transition),class:u(()=>Tt.class),clicks:u(()=>Tt.clicks),name:u(()=>Tt.name),preload:u(()=>Tt.preload),slide:{index:14,content:"",note:"",title:"架构师",level:1,noteHTML:"",raw:"",frontmatter:Tt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:179,id:14,no:15},__clicksContext:null,__preloaded:!1}),sl=c("h1",null,"架构师",-1),nl=c("blockquote",null,[c("div",{style:{"font-size":"30px","line-height":"150%"}},"架构师实际上就是软件的总体设计师。首席设计师就是总设计师。")],-1),il=c("br",null,null,-1),ol=c("blockquote",null,[c("div",{style:{"font-size":"30px","line-height":"150%"}},"打个通俗的比方:邓小平是中国改革开放的总设计师,我们用现在的说法可以讲,邓小平是中国改革开放的首席架构师。")],-1),rl=c("br",null,null,-1),al=c("div",{style:{"text-align":"right"}},"-- 百度百科",-1),ll={__name:"15",setup(t){return H(Tt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Tt),14))),{default:x(()=>[sl,nl,il,ol,rl,al]),_:1},16))}},cl=S(ll,[["__file","/@slidev/slides/15.md"]]),ul="/sa2024/01-overview/assets/01-architecturaldecisions-DOJDdj89.png",Lt=y({layout:"two-cols"}),hl=y({layout:u(()=>Lt.layout),transition:u(()=>Lt.transition),class:u(()=>Lt.class),clicks:u(()=>Lt.clicks),name:u(()=>Lt.name),preload:u(()=>Lt.preload),slide:{index:15,content:"",note:"",title:"架构层设计",level:1,noteHTML:"",raw:"",frontmatter:Lt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:192,id:15,no:16},__clicksContext:null,__preloaded:!1}),dl=c("h1",null,"架构层设计",-1),fl=c("p",null,"在计算的算法和数据结构之外,设计并确定系统整体结构",-1),pl=c("ul",null,[c("li",null,"总体组织结构和全局控制结构"),c("li",null,"通信、同步和数据访问的协议"),c("li",null,"设计元素的功能分配"),c("li",null,"物理分布与性能"),c("li",null,"备选设计的选择")],-1),ml=c("img",{src:ul,class:"m-5 h-90"},null,-1),gl={__name:"16",setup(t){return H(Lt),C(),(e,s)=>(M(),L(Zt,A(O(w(D)(w(Lt),15))),{right:x(n=>[ml]),default:x(()=>[dl,fl,pl]),_:1},16))}},_l=S(gl,[["__file","/@slidev/slides/16.md"]]),Et=y({}),vl=y({layout:u(()=>Et.layout),transition:u(()=>Et.transition),class:u(()=>Et.class),clicks:u(()=>Et.clicks),name:u(()=>Et.name),preload:u(()=>Et.preload),slide:{index:16,content:"",note:"",title:"Why is SA important?",level:1,noteHTML:"",raw:"",frontmatter:Et,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:213,id:16,no:17},__clicksContext:null,__preloaded:!1}),yl=c("h1",null,"Why is SA important?",-1),wl=c("br",null,null,-1),bl=c("ul",null,[c("li",null,"Communication among stakeholders"),c("li",null,"Early design decisions"),c("li",null,"Transferable abstraction of a system")],-1),kl=c("p",null,[c("br"),c("br"),c("br")],-1),xl=c("div",{style:{"text-align":"center","font-size":"30px"}},"软件开发组织的一种核心财富",-1),$l={__name:"17",setup(t){return H(Et),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Et),16))),{default:x(()=>[yl,wl,bl,kl,xl]),_:1},16))}},Ml=S($l,[["__file","/@slidev/slides/17.md"]]),Sl="/sa2024/01-overview/assets/01-stakeholders-BPS74Cgp.png",At=y({}),Pl=y({layout:u(()=>At.layout),transition:u(()=>At.transition),class:u(()=>At.class),clicks:u(()=>At.clicks),name:u(()=>At.name),preload:u(()=>At.preload),slide:{index:17,content:"",note:"",title:"Communication among stakeholders",level:1,noteHTML:"",raw:"",frontmatter:At,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:227,id:17,no:18},__clicksContext:null,__preloaded:!1}),Cl=c("h1",null,"Communication among stakeholders",-1),Tl=c("div",{style:{width:"60%",margin:"0 auto"}},[c("img",{src:Sl,class:"h-95"})],-1),Ll={__name:"18",setup(t){return H(At),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(At),17))),{default:x(()=>[Cl,Tl]),_:1},16))}},El=S(Ll,[["__file","/@slidev/slides/18.md"]]),Ot=y({}),Al=y({layout:u(()=>Ot.layout),transition:u(()=>Ot.transition),class:u(()=>Ot.class),clicks:u(()=>Ot.clicks),name:u(()=>Ot.name),preload:u(()=>Ot.preload),slide:{index:18,content:"",note:"",title:"Stakeholders",level:1,noteHTML:"",raw:"",frontmatter:Ot,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:238,id:18,no:19},__clicksContext:null,__preloaded:!1}),Ol=c("h1",null,"Stakeholders",-1),Hl=c("p",null,"Each stakeholder of a software system is concerned with different system characteristics that are affected by the architecture.",-1),Dl=c("ul",null,[c("li",null,[c("strong",null,"user"),E(" - is the system reliable and available when needed?")]),c("li",null,[c("strong",null,"customer"),E(" - can the architecture be implemented on schedule and to budget?")]),c("li",null,[c("strong",null,"manager"),E(" - will that the architecture allow teams to work largely independently, interacting in disciplined and controlled ways?")]),c("li",null,[c("strong",null,"architect"),E(" - will the strategies to achieve all of those goals?")])],-1),Il={__name:"19",setup(t){return H(Ot),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Ot),18))),{default:x(()=>[Ol,Hl,Dl]),_:1},16))}},Rl=S(Il,[["__file","/@slidev/slides/19.md"]]),jl="/sa2024/01-overview/assets/01-mis-communication-CjRafAPS.png",Ht=y({}),Nl=y({layout:u(()=>Ht.layout),transition:u(()=>Ht.transition),class:u(()=>Ht.class),clicks:u(()=>Ht.clicks),name:u(()=>Ht.name),preload:u(()=>Ht.preload),slide:{index:19,content:"",note:"",title:"“mis-communication”",level:1,noteHTML:"",raw:"",frontmatter:Ht,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:249,id:19,no:20},__clicksContext:null,__preloaded:!1}),Fl=c("h1",null,"“mis-communication”",-1),zl=c("div",{style:{width:"60%",margin:"0 auto"}},[c("img",{src:jl,class:"h-100"})],-1),Ul={__name:"20",setup(t){return H(Ht),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Ht),19))),{default:x(()=>[Fl,zl]),_:1},16))}},Wl=S(Ul,[["__file","/@slidev/slides/20.md"]]),Dt=y({}),ql=y({layout:u(()=>Dt.layout),transition:u(()=>Dt.transition),class:u(()=>Dt.class),clicks:u(()=>Dt.clicks),name:u(()=>Dt.name),preload:u(()=>Dt.preload),slide:{index:20,content:"",note:"",title:"Earliest design decisions",level:1,noteHTML:"",raw:"",frontmatter:Dt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:260,id:20,no:21},__clicksContext:null,__preloaded:!1}),Vl=c("h1",null,"Earliest design decisions",-1),Bl=c("p",null,"Software architecture",-1),Kl=c("ul",null,[c("li",null,"Defines constraints on implementation"),c("li",null,"Dictates organizational structure"),c("li",null,[E("Inhibits or enables a system’s quality attributes "),c("ul",null,[c("li",null,"performance/ modifiability/security/scalability/inter-couple")])]),c("li",null,"Predicts system qualities by studying the architecture"),c("li",null,"Makes it easier to reason about and manage change"),c("li",null,"Enables more accurate cost and schedule estimates")],-1),Gl={__name:"21",setup(t){return H(Dt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Dt),20))),{default:x(()=>[Vl,Bl,Kl]),_:1},16))}},Jl=S(Gl,[["__file","/@slidev/slides/21.md"]]),Zl="/sa2024/01-overview/assets/01-vasa-D915BdB9.png",It=y({}),Ql=y({layout:u(()=>It.layout),transition:u(()=>It.transition),class:u(()=>It.class),clicks:u(()=>It.clicks),name:u(()=>It.name),preload:u(()=>It.preload),slide:{index:21,content:"",note:"",title:"Swedish Warship Vasa",level:1,noteHTML:"",raw:"",frontmatter:It,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:274,id:21,no:22},__clicksContext:null,__preloaded:!1}),Xl=c("h1",null,"Swedish Warship Vasa",-1),Yl=c("div",{style:{width:"70%",margin:"0 auto"}},[c("img",{src:Zl,class:"h-100"})],-1),tc={__name:"22",setup(t){return H(It),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(It),21))),{default:x(()=>[Xl,Yl]),_:1},16))}},ec=S(tc,[["__file","/@slidev/slides/22.md"]]),Rt=y({}),sc=y({layout:u(()=>Rt.layout),transition:u(()=>Rt.transition),class:u(()=>Rt.class),clicks:u(()=>Rt.clicks),name:u(()=>Rt.name),preload:u(()=>Rt.preload),slide:{index:22,content:"",note:"",title:"Lessons from Vasa",level:1,noteHTML:"",raw:"",frontmatter:Rt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:284,id:22,no:23},__clicksContext:null,__preloaded:!1}),nc=c("h1",null,"Lessons from Vasa",-1),ic=c("ul",null,[c("li",null,"Case studies of successful architectures crafted to satisfy demanding requirements, so as to help set the technical playing field of the day."),c("li",null,"Methods to assess an architecture before any system is built from it, so as to mitigate the risks associated with launching unprecedented designs."),c("li",null,"Techniques for incremental architecture-based development, so as to uncover design flaws before it is too late to correct them.")],-1),oc={__name:"23",setup(t){return H(Rt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Rt),22))),{default:x(()=>[nc,ic]),_:1},16))}},rc=S(oc,[["__file","/@slidev/slides/23.md"]]),jt=y({}),ac=y({layout:u(()=>jt.layout),transition:u(()=>jt.transition),class:u(()=>jt.class),clicks:u(()=>jt.clicks),name:u(()=>jt.name),preload:u(()=>jt.preload),slide:{index:23,content:"",note:"",title:"Transferable abstraction of a system",level:1,noteHTML:"",raw:"",frontmatter:jt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:292,id:23,no:24},__clicksContext:null,__preloaded:!1}),lc=c("h1",null,"Transferable abstraction of a system",-1),cc=c("p",null,[E("An architectural design codifies specific knowledge collected from experience in a domain and "),c("strong",null,"good designs"),E(" are noted as "),c("strong",null,"patterns")],-1),uc=c("ul",null,[c("li",null,"To follow in developing software systems"),c("li",null,"To achieve specific properties"),c("li",null,"To solve the design problems effectively and elegantly")],-1),hc={__name:"24",setup(t){return H(jt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(jt),23))),{default:x(()=>[lc,cc,uc]),_:1},16))}},dc=S(hc,[["__file","/@slidev/slides/24.md"]]),Nt=y({layout:"two-cols"}),fc=y({layout:u(()=>Nt.layout),transition:u(()=>Nt.transition),class:u(()=>Nt.class),clicks:u(()=>Nt.clicks),name:u(()=>Nt.name),preload:u(()=>Nt.preload),slide:{index:24,content:"",note:"",title:"Patterns",level:1,noteHTML:"",raw:"",frontmatter:Nt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:300,id:24,no:25},__clicksContext:null,__preloaded:!1}),pc=c("h1",null,"Patterns",-1),mc=c("p",null,"A pattern is a solution to a problem in a context",-1),gc=c("ul",null,[c("li",null,"Blackboard"),c("li",null,"Client-server (2-tier, 3-tier, n-tier)"),c("li",null,"Component-based"),c("li",null,"Event-driven (or Implicit invocation)"),c("li",null,"Layered (or Multilayered architecture)"),c("li",null,"Monolithic application"),c("li",null,"Peer-to-peer (P2P)")],-1),_c=c("p",null,[c("br"),c("br"),c("br")],-1),vc=c("ul",null,[c("li",null,"Pipes and filters"),c("li",null,"Plug-ins"),c("li",null,"Representational state transfer (REST)"),c("li",null,"Rule-based"),c("li",null,"Service-oriented architecture and microservices"),c("li",null,"Shared nothing architecture"),c("li",null,"Space-based architecture")],-1),yc={__name:"25",setup(t){return H(Nt),C(),(e,s)=>(M(),L(Zt,A(O(w(D)(w(Nt),24))),{right:x(n=>[_c,vc]),default:x(()=>[pc,mc,gc]),_:1},16))}},wc=S(yc,[["__file","/@slidev/slides/25.md"]]),bc="/sa2024/01-overview/assets/01-mvc-Db7lVaAE.png",Ft=y({layout:"two-cols"}),kc=y({layout:u(()=>Ft.layout),transition:u(()=>Ft.transition),class:u(()=>Ft.class),clicks:u(()=>Ft.clicks),name:u(()=>Ft.name),preload:u(()=>Ft.preload),slide:{index:25,content:"",note:"",title:"Example: Model-View-Controller",level:1,noteHTML:"",raw:"",frontmatter:Ft,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:327,id:25,no:26},__clicksContext:null,__preloaded:!1}),xc=c("h1",null,"Example: Model-View-Controller",-1),$c=c("ul",null,[c("li",null,[E("Context "),c("ul",null,[c("li",null,"人机交互界面设计")])]),c("li",null,[E("Problem "),c("ul",null,[c("li",null,"功能的变化要求用户界面的改变"),c("li",null,"平台的改变要求用户界面随之改变"),c("li",null,"界面的改变需足够方便,且不应影响系统功能本身")])])],-1),Mc=c("img",{src:bc,class:"m-5 h-70"},null,-1),Sc={__name:"26",setup(t){return H(Ft),C(),(e,s)=>(M(),L(Zt,A(O(w(D)(w(Ft),25))),{right:x(n=>[Mc]),default:x(()=>[xc,$c]),_:1},16))}},Pc=S(Sc,[["__file","/@slidev/slides/26.md"]]),zt=y({}),Cc=y({layout:u(()=>zt.layout),transition:u(()=>zt.transition),class:u(()=>zt.class),clicks:u(()=>zt.clicks),name:u(()=>zt.name),preload:u(()=>zt.preload),slide:{index:26,content:"",note:"",title:"分类",level:1,noteHTML:"",raw:"",frontmatter:zt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:346,id:26,no:27},__clicksContext:null,__preloaded:!1}),Tc=c("h1",null,"分类",-1),Lc=c("ul",null,[c("li",null,[E("Architectural patterns "),c("ul",null,[c("li",null,"Help in structuring a software system into subsystems")])]),c("li",null,[E("Design patterns "),c("ul",null,[c("li",null,"Support the refinement of subsystems and components")])]),c("li",null,[E("Idioms "),c("ul",null,[c("li",null,"Help in implementing particular design aspects in a specific programming language")])])],-1),Ec={__name:"27",setup(t){return H(zt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(zt),26))),{default:x(()=>[Tc,Lc]),_:1},16))}},Ac=S(Ec,[["__file","/@slidev/slides/27.md"]]),Ut=y({}),Oc=y({layout:u(()=>Ut.layout),transition:u(()=>Ut.transition),class:u(()=>Ut.class),clicks:u(()=>Ut.clicks),name:u(()=>Ut.name),preload:u(()=>Ut.preload),slide:{index:27,content:"",note:"",title:"Architectural Patterns",level:1,noteHTML:"",raw:"",frontmatter:Ut,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:358,id:27,no:28},__clicksContext:null,__preloaded:!1}),Hc=c("h1",null,"Architectural Patterns",-1),Dc=c("ul",null,[c("li",null,[E("Expresses a "),c("strong",null,"fundamental structural organization schema"),E(" for software systems.")]),c("li",null,[E("It provides a set of "),c("strong",null,"predefined subsystems"),E(", specifies their responsibilities, and includes rules and guidelines for organizing the relationships between them. "),c("ul",null,[c("li",null,"System-wide"),c("li",null,[E("Fundamental design decision "),c("ul",null,[c("li",null,"E.g. MVC provides a structure for interactive software system")])])])])],-1),Ic={__name:"28",setup(t){return H(Ut),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Ut),27))),{default:x(()=>[Hc,Dc]),_:1},16))}},Rc=S(Ic,[["__file","/@slidev/slides/28.md"]]),Wt=y({}),jc=y({layout:u(()=>Wt.layout),transition:u(()=>Wt.transition),class:u(()=>Wt.class),clicks:u(()=>Wt.clicks),name:u(()=>Wt.name),preload:u(()=>Wt.preload),slide:{index:28,content:"",note:"",title:"研究内容",level:1,noteHTML:"",raw:"",frontmatter:Wt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:368,id:28,no:29},__clicksContext:null,__preloaded:!1}),Nc=c("h1",null,"研究内容",-1),Fc=c("ul",null,[c("li",null,"体系结构分析"),c("li",null,[c("strong",null,"体系结构设计")]),c("li",null,"软件体系结构评价方法"),c("li",null,"体系结构发现"),c("li",null,"体系结构演化"),c("li",null,"特定领域的体系结构框架"),c("li",null,"软件体系结构支持工具")],-1),zc={__name:"29",setup(t){return H(Wt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Wt),28))),{default:x(()=>[Nc,Fc]),_:1},16))}},Uc=S(zc,[["__file","/@slidev/slides/29.md"]]),Wc="/sa2024/01-overview/assets/01-aosa-1-CbaX-bzr.jpg",qc="/sa2024/01-overview/assets/01-aosa-2-DqXSM4wG.jpg",qt=y({layout:"two-cols"}),Vc=y({layout:u(()=>qt.layout),transition:u(()=>qt.transition),class:u(()=>qt.class),clicks:u(()=>qt.clicks),name:u(()=>qt.name),preload:u(()=>qt.preload),slide:{index:29,content:"",note:"",title:"aoasbook.org",level:2,noteHTML:"",raw:"",frontmatter:qt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:379,id:29,no:30},__clicksContext:null,__preloaded:!1}),Bc=c("h2",null,"aoasbook.org",-1),Kc=c("img",{src:Wc,class:"m-5 h-100"},null,-1),Gc=c("br",null,null,-1),Jc=c("img",{src:qc,class:"m-10 h-100"},null,-1),Zc={__name:"30",setup(t){return H(qt),C(),(e,s)=>(M(),L(Zt,A(O(w(D)(w(qt),29))),{right:x(n=>[Gc,Jc]),default:x(()=>[Bc,Kc]),_:1},16))}},Qc=S(Zc,[["__file","/@slidev/slides/30.md"]]),Xc="/sa2024/01-overview/assets/01-posa-e5f98RWE.png",Yc="/sa2024/01-overview/assets/01-500l-4j3B_M17.png",Vt=y({layout:"two-cols"}),tu=y({layout:u(()=>Vt.layout),transition:u(()=>Vt.transition),class:u(()=>Vt.class),clicks:u(()=>Vt.clicks),name:u(()=>Vt.name),preload:u(()=>Vt.preload),slide:{index:30,content:"",note:"",title:"aoasbook.org",level:2,noteHTML:"",raw:"",frontmatter:Vt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:389,id:30,no:31},__clicksContext:null,__preloaded:!1}),eu=c("h2",null,"aoasbook.org",-1),su=c("img",{src:Xc,class:"m-5 h-100"},null,-1),nu=c("br",null,null,-1),iu=c("img",{src:Yc,class:"m-10 h-100"},null,-1),ou={__name:"31",setup(t){return H(Vt),C(),(e,s)=>(M(),L(Zt,A(O(w(D)(w(Vt),30))),{right:x(n=>[nu,iu]),default:x(()=>[eu,su]),_:1},16))}},ru=S(ou,[["__file","/@slidev/slides/31.md"]]),au="/sa2024/01-overview/assets/01-spring-all-CQ-WjdQ-.png",Bt=y({}),lu=y({layout:u(()=>Bt.layout),transition:u(()=>Bt.transition),class:u(()=>Bt.class),clicks:u(()=>Bt.clicks),name:u(()=>Bt.name),preload:u(()=>Bt.preload),slide:{index:31,content:"",note:"",title:"Explaining SA patterns with Spring",level:1,noteHTML:"",raw:"",frontmatter:Bt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:400,id:31,no:32},__clicksContext:null,__preloaded:!1}),cu=c("h1",null,"Explaining SA patterns with Spring",-1),uu=c("div",{style:{width:"100%",margin:"0 auto"}},[c("img",{src:au,class:"m-5 h-90"})],-1),hu={__name:"32",setup(t){return H(Bt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Bt),31))),{default:x(()=>[cu,uu]),_:1},16))}},du=S(hu,[["__file","/@slidev/slides/32.md"]]),Kt=y({}),fu=y({layout:u(()=>Kt.layout),transition:u(()=>Kt.transition),class:u(()=>Kt.class),clicks:u(()=>Kt.clicks),name:u(()=>Kt.name),preload:u(()=>Kt.preload),slide:{index:32,content:"",note:"",title:"Spring",level:1,noteHTML:"",raw:"",frontmatter:Kt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:410,id:32,no:33},__clicksContext:null,__preloaded:!1}),pu=c("h1",null,"Spring",-1),mu=c("p",null,"Spring框架是Java平台的一个开源的全栈(Full-stack)应用程序框架和控制反转容器实现,一般被直接称为Spring。该框架的一些核心功能理论上可用于任何Java应用,但Spring还为基于Java企业版平台构建的Web应用提供了大量的拓展支持。Spring没有直接实现任何的编程模型,但它已经在Java社区中广为流行,基本上完全代替了企业级JavaBeans(EJB)模型。",-1),gu=c("ul",null,[c("li",null,"第一版由 Rod Johnson 开发,并在2002年10月发布。"),c("li",null,"2003年6月,Spring Framework 第一次发布在 Apache 2.0 许可证下。"),c("li",null,"2006年,Spring Framework 获得了Jolt生产力奖和JAX创新奖。")],-1),_u={__name:"33",setup(t){return H(Kt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Kt),32))),{default:x(()=>[pu,mu,gu]),_:1},16))}},vu=S(_u,[["__file","/@slidev/slides/33.md"]]),Gt=y({}),yu=y({layout:u(()=>Gt.layout),transition:u(()=>Gt.transition),class:u(()=>Gt.class),clicks:u(()=>Gt.clicks),name:u(()=>Gt.name),preload:u(()=>Gt.preload),slide:{index:33,content:"",note:"",title:"Spring Projects Covered",level:3,noteHTML:"",raw:"",frontmatter:Gt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:423,id:33,no:34},__clicksContext:null,__preloaded:!1}),wu=c("h3",null,"Spring Projects Covered",-1),bu=c("ul",null,[c("li",null,"Spring Core Containers - Components and IoC"),c("li",null,"Spring Boot & Spring Web & Spring Mobile - MVC"),c("li",null,"Spring Batch - Pipes-and-filters"),c("li",null,"Spring Cloud - Microservices"),c("li",null,"Spring Cloud Function - Serverless"),c("li",null,"Spring Event & Spring AMQP - Event-driven"),c("li",null,"Spring HATEOAS - RESTFul"),c("li",null,"Spring Integration - Message-driven"),c("li",null,"Spring Webflux and Project Reactor - Responsive")],-1),ku={__name:"34",setup(t){return H(Gt),C(),(e,s)=>(M(),L(F,A(O(w(D)(w(Gt),33))),{default:x(()=>[wu,bu]),_:1},16))}},xu=S(ku,[["__file","/@slidev/slides/34.md"]]),K=[{path:"1",name:"page-1",component:yr,meta:mr},{path:"2",name:"page-2",component:Pr,meta:kr},{path:"3",name:"page-3",component:Dr,meta:Lr},{path:"4",name:"page-4",component:Wr,meta:Nr},{path:"5",name:"page-5",component:Yr,meta:Vr},{path:"6",name:"page-6",component:ia,meta:ta},{path:"7",name:"page-7",component:da,meta:ra},{path:"8",name:"page-8",component:_a,meta:fa},{path:"9",name:"page-9",component:ka,meta:va},{path:"10",name:"page-10",component:Ca,meta:$a},{path:"11",name:"page-11",component:Oa,meta:Ta},{path:"12",name:"page-12",component:za,meta:Ha},{path:"13",name:"page-13",component:Ba,meta:Ua},{path:"14",name:"page-14",component:tl,meta:Ka},{path:"15",name:"page-15",component:cl,meta:el},{path:"16",name:"page-16",component:_l,meta:hl},{path:"17",name:"page-17",component:Ml,meta:vl},{path:"18",name:"page-18",component:El,meta:Pl},{path:"19",name:"page-19",component:Rl,meta:Al},{path:"20",name:"page-20",component:Wl,meta:Nl},{path:"21",name:"page-21",component:Jl,meta:ql},{path:"22",name:"page-22",component:ec,meta:Ql},{path:"23",name:"page-23",component:rc,meta:sc},{path:"24",name:"page-24",component:dc,meta:ac},{path:"25",name:"page-25",component:wc,meta:fc},{path:"26",name:"page-26",component:Pc,meta:kc},{path:"27",name:"page-27",component:Ac,meta:Cc},{path:"28",name:"page-28",component:Rc,meta:Oc},{path:"29",name:"page-29",component:Uc,meta:jc},{path:"30",name:"page-30",component:Qc,meta:Vc},{path:"31",name:"page-31",component:ru,meta:tu},{path:"32",name:"page-32",component:du,meta:lu},{path:"33",name:"page-33",component:vu,meta:fu},{path:"34",name:"page-34",component:xu,meta:yu}].map(Is),$u=[].map(Is),Ne=[{name:"play",path:"/",component:()=>Ce(()=>import("./slidev/play-Z7U5Nfiq.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])),children:[...K,...$u]},{name:"print",path:"/print",component:()=>Ce(()=>import("./slidev/print-CrKjQ_D3.js"),__vite__mapDeps([11,1,4,9,6,7,12]))},{path:"",redirect:{path:"/1"}},{path:"/:pathMatch(.*)",redirect:{path:"/1"}}];{let t=function(e){if(!N.remote||N.remote===e.query.password)return!0;if(N.remote&&e.query.password===void 0){const s=prompt("Enter password");if(N.remote===s)return!0}return e.params.no?{path:`/${e.params.no}`}:{path:""}};Ne.push({path:"/presenter/print",component:()=>Ce(()=>import("./slidev/print-DRKmZ4J6.js"),__vite__mapDeps([13,1,14,15,6,7]))}),Ne.push({name:"presenter",path:"/presenter/:no",component:()=>Ce(()=>import("./slidev/presenter-CGrB5aTx.js"),__vite__mapDeps([16,3,1,2,4,5,6,7,8,14,15,17,18,19])),beforeEnter:t}),Ne.push({path:"/presenter",redirect:{path:"/presenter/1"}})}const tt=Ai({history:Oi("/sa2024/01-overview/"),routes:Ne}),Zn=U(!1);function Mu(t,e,{mode:s="replace"}={}){return u({get(){const n=tt.currentRoute.value.query[t];return n==null?e??null:Array.isArray(n)?n.filter(Boolean):n},set(n){Pe(()=>{tt[w(s)]({query:{...tt.currentRoute.value.query,[t]:n}})})}})}var Su=Object.defineProperty,cn=Object.getOwnPropertySymbols,Pu=Object.prototype.hasOwnProperty,Cu=Object.prototype.propertyIsEnumerable,un=(t,e,s)=>e in t?Su(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,ws=(t,e)=>{for(var s in e||(e={}))Pu.call(e,s)&&un(t,s,e[s]);if(cn)for(var s of cn(e))Cu.call(e,s)&&un(t,s,e[s]);return t},Tu=()=>({emit(t,...e){for(let s=0,n=this.events[t]||[],i=n.length;s{var n;this.events[t]=(n=this.events[t])==null?void 0:n.filter(i=>e!==i)}}});function hn(t,e,s,n=i=>i){return t*n(.5-e*(.5-s))}function Lu(t){return[-t[0],-t[1]]}function ct(t,e){return[t[0]+e[0],t[1]+e[1]]}function nt(t,e){return[t[0]-e[0],t[1]-e[1]]}function lt(t,e){return[t[0]*e,t[1]*e]}function Eu(t,e){return[t[0]/e,t[1]/e]}function we(t){return[t[1],-t[0]]}function dn(t,e){return t[0]*e[0]+t[1]*e[1]}function Au(t,e){return t[0]===e[0]&&t[1]===e[1]}function Ou(t){return Math.hypot(t[0],t[1])}function Hu(t){return t[0]*t[0]+t[1]*t[1]}function fn(t,e){return Hu(nt(t,e))}function Qn(t){return Eu(t,Ou(t))}function Du(t,e){return Math.hypot(t[1]-e[1],t[0]-e[0])}function be(t,e,s){let n=Math.sin(s),i=Math.cos(s),o=t[0]-e[0],a=t[1]-e[1],r=o*i-a*n,l=o*n+a*i;return[r+e[0],l+e[1]]}function bs(t,e,s){return ct(t,lt(nt(e,t),s))}function pn(t,e,s){return ct(t,lt(e,s))}var{min:ue,PI:Iu}=Math,mn=.275,ke=Iu+1e-4;function Ru(t,e={}){let{size:s=16,smoothing:n=.5,thinning:i=.5,simulatePressure:o=!0,easing:a=P=>P,start:r={},end:l={},last:h=!1}=e,{cap:d=!0,easing:f=P=>P*(2-P)}=r,{cap:m=!0,easing:p=P=>--P*P*P+1}=l;if(t.length===0||s<=0)return[];let g=t[t.length-1].runningLength,_=r.taper===!1?0:r.taper===!0?Math.max(s,g):r.taper,v=l.taper===!1?0:l.taper===!0?Math.max(s,g):l.taper,b=Math.pow(s*n,2),$=[],T=[],B=t.slice(0,10).reduce((P,q)=>{let R=q.pressure;if(o){let j=ue(1,q.distance/s),ns=ue(1,1-j);R=ue(1,P+(ns-P)*(j*mn))}return(P+R)/2},t[0].pressure),z=hn(s,i,t[t.length-1].pressure,a),ft,Qt=t[0].vector,et=t[0].point,ot=et,ut=et,ht=ot,J=!1;for(let P=0;Pb)&&($.push(ut),et=ut),ht=ct(R,Qs),(P<=1||fn(ot,ht)>b)&&(T.push(ht),ot=ht),B=q,Qt=j}let I=t[0].point.slice(0,2),W=t.length>1?t[t.length-1].point.slice(0,2):ct(t[0].point,[1,1]),Xt=[],rt=[];if(t.length===1){if(!(_||v)||h){let P=pn(I,Qn(we(nt(I,W))),-(ft||z)),q=[];for(let R=1/13,j=R;j<=1;j+=R)q.push(be(P,I,ke*2*j));return q}}else{if(!(_||v&&t.length===1))if(d)for(let q=1/13,R=q;R<=1;R+=q){let j=be(T[0],I,ke*R);Xt.push(j)}else{let q=nt($[0],T[0]),R=lt(q,.5),j=lt(q,.51);Xt.push(nt(I,R),nt(I,j),ct(I,j),ct(I,R))}let P=we(Lu(t[t.length-1].vector));if(v||_&&t.length===1)rt.push(W);else if(m){let q=pn(W,P,z);for(let R=1/29,j=R;j<1;j+=R)rt.push(be(q,W,ke*3*j))}else rt.push(ct(W,lt(P,z)),ct(W,lt(P,z*.99)),nt(W,lt(P,z*.99)),nt(W,lt(P,z)))}return $.concat(rt,T.reverse(),Xt)}function ju(t,e={}){var s;let{streamline:n=.5,size:i=16,last:o=!1}=e;if(t.length===0)return[];let a=.15+(1-n)*.85,r=Array.isArray(t[0])?t:t.map(({x:p,y:g,pressure:_=.5})=>[p,g,_]);if(r.length===2){let p=r[1];r=r.slice(0,-1);for(let g=1;g<5;g++)r.push(bs(r[0],p,g/4))}r.length===1&&(r=[...r,[...ct(r[0],[1,1]),...r[0].slice(2)]]);let l=[{point:[r[0][0],r[0][1]],pressure:r[0][2]>=0?r[0][2]:.25,vector:[1,1],distance:0,runningLength:0}],h=!1,d=0,f=l[0],m=r.length-1;for(let p=1;p=0?r[p][2]:.5,vector:Qn(nt(f.point,g)),distance:_,runningLength:d},l.push(f)}return l[0].vector=((s=l[1])==null?void 0:s.vector)||[0,0],l}function Nu(t,e={}){return Ru(ju(t,e),e)}function Ve(t,e){return t-e}function Fu(t){return t<0?-1:1}function Be(t){return[Math.abs(t),Fu(t)]}function Xn(){const t=()=>((1+Math.random())*65536|0).toString(16).substring(1);return`${t()+t()}-${t()}-${t()}-${t()}-${t()}${t()}${t()}`}var zu=2,pt=zu,me=class{constructor(t){this.drauu=t,this.event=void 0,this.point=void 0,this.start=void 0,this.el=null}onSelected(t){}onUnselected(){}onStart(t){}onMove(t){return!1}onEnd(t){}get brush(){return this.drauu.brush}get shiftPressed(){return this.drauu.shiftPressed}get altPressed(){return this.drauu.altPressed}get svgElement(){return this.drauu.el}getMousePosition(t){var e,s,n;const i=this.drauu.el,o=(e=this.drauu.options.coordinateScale)!=null?e:1,a=(s=this.drauu.options.offset)!=null?s:{x:0,y:0};if(this.drauu.options.coordinateTransform===!1){const r=this.drauu.el.getBoundingClientRect();return{x:(t.pageX-r.left+a.x)*o,y:(t.pageY-r.top+a.y)*o,pressure:t.pressure}}else{const r=this.drauu.svgPoint;r.x=t.clientX+a.x,r.y=t.clientY+a.y;const l=r.matrixTransform((n=i.getScreenCTM())==null?void 0:n.inverse());return{x:l.x*o,y:l.y*o,pressure:t.pressure}}}createElement(t,e){var s;const n=document.createElementNS("http://www.w3.org/2000/svg",t),i=e?ws(ws({},this.brush),e):this.brush;return n.setAttribute("fill",(s=i.fill)!=null?s:"transparent"),n.setAttribute("stroke",i.color),n.setAttribute("stroke-width",i.size.toString()),n.setAttribute("stroke-linecap","round"),i.dasharray&&n.setAttribute("stroke-dasharray",i.dasharray),n}attr(t,e){this.el.setAttribute(t,typeof e=="string"?e:e.toFixed(pt))}_setEvent(t){this.event=t,this.point=this.getMousePosition(t)}_eventDown(t){return this._setEvent(t),this.start=this.point,this.onStart(this.point)}_eventMove(t){return this._setEvent(t),this.onMove(this.point)}_eventUp(t){return this._setEvent(t),this.onEnd(this.point)}},Uu=class Yn extends me{constructor(){super(...arguments),this.points=[]}onStart(e){return this.el=document.createElementNS("http://www.w3.org/2000/svg","path"),this.points=[e],this.attr("fill",this.brush.color),this.attr("d",this.getSvgData(this.points)),this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&this.points.push(e),this.attr("d",this.getSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!!e}getSvgData(e){return Yn.getSvgData(e,this.brush)}static getSvgData(e,s){const n=Nu(e,ws({size:s.size,thinning:.9,simulatePressure:!1,start:{taper:5},end:{taper:5}},s.stylusOptions));if(!n.length)return"";const i=n.reduce((o,[a,r],l,h)=>{const[d,f]=h[(l+1)%h.length];return o.push(a,r,(a+d)/2,(r+f)/2),o},["M",...n[0],"Q"]);return i.push("Z"),i.map(o=>typeof o=="number"?o.toFixed(2):o).join(" ")}},Wu=class extends me{onStart(t){return this.el=this.createElement("ellipse"),this.attr("cx",t.x),this.attr("cy",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=Be(t.x-this.start.x),[n,i]=Be(t.y-this.start.y);if(this.shiftPressed){const o=Math.min(e,n);e=o,n=o}if(this.altPressed)this.attr("cx",this.start.x),this.attr("cy",this.start.y),this.attr("rx",e),this.attr("ry",n);else{const[o,a]=[this.start.x,this.start.x+e*s].sort(Ve),[r,l]=[this.start.y,this.start.y+n*i].sort(Ve);this.attr("cx",(o+a)/2),this.attr("cy",(r+l)/2),this.attr("rx",(a-o)/2),this.attr("ry",(l-r)/2)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function ti(t,e){const s=document.createElementNS("http://www.w3.org/2000/svg","defs"),n=document.createElementNS("http://www.w3.org/2000/svg","marker"),i=document.createElementNS("http://www.w3.org/2000/svg","path");return i.setAttribute("fill",e),n.setAttribute("id",t),n.setAttribute("viewBox","0 -5 10 10"),n.setAttribute("refX","5"),n.setAttribute("refY","0"),n.setAttribute("markerWidth","4"),n.setAttribute("markerHeight","4"),n.setAttribute("orient","auto"),i.setAttribute("d","M0,-5L10,0L0,5"),n.appendChild(i),s.appendChild(n),s}var qu=class extends me{onStart(t){if(this.el=this.createElement("line",{fill:"transparent"}),this.attr("x1",t.x),this.attr("y1",t.y),this.attr("x2",t.x),this.attr("y2",t.y),this.brush.arrowEnd){const e=Xn(),s=document.createElementNS("http://www.w3.org/2000/svg","g");return s.append(ti(e,this.brush.color)),s.append(this.el),this.attr("marker-end",`url(#${e})`),s}return this.el}onMove(t){if(!this.el)return!1;let{x:e,y:s}=t;if(this.shiftPressed){const n=t.x-this.start.x,i=t.y-this.start.y;if(i!==0){let o=n/i;o=Math.round(o),Math.abs(o)<=1?(e=this.start.x+i*o,s=this.start.y+i):(e=this.start.x+n,s=this.start.y)}}return this.altPressed?(this.attr("x1",this.start.x*2-e),this.attr("y1",this.start.y*2-s),this.attr("x2",e),this.attr("y2",s)):(this.attr("x1",this.start.x),this.attr("y1",this.start.y),this.attr("x2",e),this.attr("y2",s)),!0}onEnd(){const t=this.el;return this.el=null,!(!t||t.getTotalLength()<5)}},Vu=class extends me{onStart(t){return this.el=this.createElement("rect"),this.brush.cornerRadius&&(this.attr("rx",this.brush.cornerRadius),this.attr("ry",this.brush.cornerRadius)),this.attr("x",t.x),this.attr("y",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=Be(t.x-this.start.x),[n,i]=Be(t.y-this.start.y);if(this.shiftPressed){const o=Math.min(e,n);e=o,n=o}if(this.altPressed)this.attr("x",this.start.x-e),this.attr("y",this.start.y-n),this.attr("width",e*2),this.attr("height",n*2);else{const[o,a]=[this.start.x,this.start.x+e*s].sort(Ve),[r,l]=[this.start.y,this.start.y+n*i].sort(Ve);this.attr("x",o),this.attr("y",r),this.attr("width",a-o),this.attr("height",l-r)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function Bu(t,e){const s=t.x-e.x,n=t.y-e.y;return s*s+n*n}function Ku(t,e,s){let n=e.x,i=e.y,o=s.x-n,a=s.y-i;if(o!==0||a!==0){const r=((t.x-n)*o+(t.y-i)*a)/(o*o+a*a);r>1?(n=s.x,i=s.y):r>0&&(n+=o*r,i+=a*r)}return o=t.x-n,a=t.y-i,o*o+a*a}function Gu(t,e){let s=t[0];const n=[s];let i;for(let o=1,a=t.length;oe&&(n.push(i),s=i);return s!==i&&i&&n.push(i),n}function ks(t,e,s,n,i){let o=n,a=0;for(let r=e+1;ro&&(a=r,o=l)}o>n&&(a-e>1&&ks(t,e,a,n,i),i.push(t[a]),s-a>1&&ks(t,a,s,n,i))}function Ju(t,e){const s=t.length-1,n=[t[0]];return ks(t,0,s,e,n),n.push(t[s]),n}function gn(t,e,s=!1){if(t.length<=2)return t;const n=e!==void 0?e*e:1;return t=s?t:Gu(t,n),t=Ju(t,n),t}var Zu=class ie extends me{constructor(){super(...arguments),this.points=[],this.count=0}onStart(e){if(this.el=this.createElement("path",{fill:"transparent"}),this.points=[e],this.brush.arrowEnd){this.arrowId=Xn();const s=ti(this.arrowId,this.brush.color);this.el.appendChild(s)}return this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&(this.points.push(e),this.count+=1),this.count>5&&(this.points=gn(this.points,1,!0),this.count=0),this.attr("d",ie.toSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!(!e||(e.setAttribute("d",ie.toSvgData(gn(this.points,1,!0))),!e.getTotalLength()))}static line(e,s){const n=s.x-e.x,i=s.y-e.y;return{length:Math.sqrt(n**2+i**2),angle:Math.atan2(i,n)}}static controlPoint(e,s,n,i){const o=s||e,a=n||e,r=.2,l=ie.line(o,a),h=l.angle+(i?Math.PI:0),d=l.length*r,f=e.x+Math.cos(h)*d,m=e.y+Math.sin(h)*d;return{x:f,y:m}}static bezierCommand(e,s,n){const i=ie.controlPoint(n[s-1],n[s-2],e),o=ie.controlPoint(e,n[s-1],n[s+1],!0);return`C ${i.x.toFixed(pt)},${i.y.toFixed(pt)} ${o.x.toFixed(pt)},${o.y.toFixed(pt)} ${e.x.toFixed(pt)},${e.y.toFixed(pt)}`}static toSvgData(e){return e.reduce((s,n,i,o)=>i===0?`M ${n.x.toFixed(pt)},${n.y.toFixed(pt)}`:`${s} ${ie.bezierCommand(n,i,o)}`,"")}},Qu=class extends me{constructor(){super(...arguments),this.pathSubFactor=20,this.pathFragments=[],this._erased=[]}onSelected(t){const e=(s,n)=>{if(s&&s.length)for(let i=0;it.forEach(e=>this.drauu._restoreNode(e)),redo:()=>t.forEach(e=>this.drauu._removeNode(e))}}checkAndEraseElement(){if(this.pathFragments.length)for(let t=0;t!this._erased.includes(t.element))),this._erased.length>0}lineLineIntersect(t,e){const s=t.x1,n=t.x2,i=e.x1,o=e.x2,a=t.y1,r=t.y2,l=e.y1,h=e.y2,d=(s-n)*(l-h)-(a-r)*(i-o),f=(s*r-a*n)*(i-o)-(s-n)*(i*h-l*o),m=(s*r-a*n)*(l-h)-(a-r)*(i*h-l*o),p=(g,_,v)=>g>=_&&g<=v?!0:g>=v&&g<=_;if(d===0)return!1;{const g={x:f/d,y:m/d};return p(g.x,s,n)&&p(g.y,a,r)&&p(g.x,i,o)&&p(g.y,l,h)}}};function Xu(t){return{draw:new Zu(t),stylus:new Uu(t),line:new qu(t),rectangle:new Vu(t),ellipse:new Wu(t),eraseLine:new Qu(t)}}var Yu=class{constructor(t={}){this.options=t,this.el=null,this.svgPoint=null,this.eventEl=null,this.shiftPressed=!1,this.altPressed=!1,this.drawing=!1,this._emitter=Tu(),this._originalPointerId=null,this._models=Xu(this),this._opStack=[],this._opIndex=0,this._disposables=[],this._elements=[],this.options.brush||(this.options.brush={color:"black",size:3,mode:"stylus"}),t.el&&this.mount(t.el,t.eventTarget,t.window)}get model(){return this._models[this.mode]}get mounted(){return!!this.el}get mode(){return this.options.brush.mode||"stylus"}set mode(t){this._models[this.mode].onUnselected(),this.options.brush.mode=t,this.model.onSelected(this.el)}get brush(){return this.options.brush}set brush(t){this.options.brush=t}resolveSelector(t){return typeof t=="string"?document.querySelector(t):t||null}mount(t,e,s=window){if(this.el)throw new Error("[drauu] already mounted, unmount previous target first");if(this.el=this.resolveSelector(t),!this.el)throw new Error("[drauu] target element not found");if(this.el.tagName.toLocaleLowerCase()!=="svg")throw new Error("[drauu] can only mount to a SVG element");if(!this.el.createSVGPoint)throw new Error("[drauu] SVG element must be create by document.createElementNS('http://www.w3.org/2000/svg', 'svg')");this.svgPoint=this.el.createSVGPoint();const n=this.resolveSelector(e)||this.el,i=this.eventStart.bind(this),o=this.eventMove.bind(this),a=this.eventEnd.bind(this),r=this.eventKeyboard.bind(this);n.addEventListener("pointerdown",i,{passive:!1}),s.addEventListener("pointermove",o,{passive:!1}),s.addEventListener("pointerup",a,{passive:!1}),s.addEventListener("pointercancel",a,{passive:!1}),s.addEventListener("keydown",r,!1),s.addEventListener("keyup",r,!1),this._disposables.push(()=>{n.removeEventListener("pointerdown",i),s.removeEventListener("pointermove",o),s.removeEventListener("pointerup",a),s.removeEventListener("pointercancel",a),s.removeEventListener("keydown",r,!1),s.removeEventListener("keyup",r,!1)}),this._emitter.emit("mounted")}unmount(){this._disposables.forEach(t=>t()),this._disposables.length=0,this._elements.length=0,this.el=null,this._emitter.emit("unmounted")}on(t,e){return this._emitter.on(t,e)}undo(){return!this.canUndo()||this.drawing?!1:(this._opStack[--this._opIndex].undo(),this._emitter.emit("changed"),!0)}redo(){return!this.canRedo()||this.drawing?!1:(this._opStack[this._opIndex++].redo(),this._emitter.emit("changed"),!0)}canRedo(){return this._opIndex0}eventMove(t){!this.acceptsInput(t)||!this.drawing||this.model._eventMove(t)&&(t.stopPropagation(),t.preventDefault(),this._emitter.emit("changed"))}eventStart(t){this.acceptsInput(t)&&(t.stopPropagation(),t.preventDefault(),this._currentNode&&this.cancel(),this.drawing=!0,this._originalPointerId=t.pointerId,this._emitter.emit("start"),this._currentNode=this.model._eventDown(t),this._currentNode&&this.mode!=="eraseLine"&&this.el.appendChild(this._currentNode),this._emitter.emit("changed"))}eventEnd(t){if(!this.acceptsInput(t)||!this.drawing)return;const e=this.model._eventUp(t);if(!e)this.cancel();else if(e===!0){const s=this._currentNode;this._appendNode(s),this.commit({undo:()=>this._removeNode(s),redo:()=>this._restoreNode(s)})}else this.commit(e);this.drawing=!1,this._emitter.emit("end"),this._emitter.emit("changed"),this._originalPointerId=null}acceptsInput(t){return(!this.options.acceptsInputTypes||this.options.acceptsInputTypes.includes(t.pointerType))&&!(this._originalPointerId&&this._originalPointerId!==t.pointerId)}eventKeyboard(t){this.shiftPressed===t.shiftKey&&this.altPressed===t.altKey||(this.shiftPressed=t.shiftKey,this.altPressed=t.altKey,this.model.point&&this.model.onMove(this.model.point)&&this._emitter.emit("changed"))}commit(t){this._opStack.length=this._opIndex,this._opStack.push(t),this._opIndex++;const e=this._currentNode;this._currentNode=void 0,this._emitter.emit("committed",e)}clear(){this._opStack.length=0,this._opIndex=0,this.cancel(),this.el.innerHTML="",this._emitter.emit("changed")}cancel(){this._currentNode&&(this.el.removeChild(this._currentNode),this._currentNode=void 0,this._emitter.emit("canceled"))}dump(){return this.el.innerHTML}load(t){this.clear(),this.el.innerHTML=t}_appendNode(t){const e=this._elements.at(-1);e?e.after(t):this.el.append(t);const s=this._elements.push(t)-1;t.dataset.drauu_index=s.toString()}_removeNode(t){t.remove(),this._elements[+t.dataset.drauu_index]=null}_restoreNode(t){const e=+t.dataset.drauu_index;this._elements[e]=t;for(let s=e-1;s>=0;s--){const n=this._elements[s];if(n){n.after(t);return}}this.el.prepend(t)}};function th(t){return new Yu(t)}const kd=U(!1),xd=U(!1),$d=U(!1),eh=U(!1),Md=U(!0),Sd=Hi({xs:460,...Ni}),_n=Di(),Pd=Ii(),Cd=u(()=>_n.height.value-_n.width.value/Nn>120),Td=Ri(Ye?document.body:null),xs=ji(),sh=u(()=>{var t,e;return["INPUT","TEXTAREA"].includes(((t=xs.value)==null?void 0:t.tagName)||"")||((e=xs.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),Ld=u(()=>{var t;return["BUTTON","A"].includes(((t=xs.value)==null?void 0:t.tagName)||"")});X("slidev-camera","default",{listenToStorageChanges:!1});X("slidev-mic","default",{listenToStorageChanges:!1});const Ed=X("slidev-scale",0),Ad=X("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),Od=X("slidev-show-editor",!1,{listenToStorageChanges:!1}),Hd=X("slidev-editor-vertical",!1,{listenToStorageChanges:!1});X("slidev-editor-width",Ye?window.innerWidth*.4:318,{listenToStorageChanges:!1});X("slidev-editor-height",Ye?window.innerHeight*.4:300,{listenToStorageChanges:!1});const Ke=X("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),Oe=X("slidev-presenter-layout",1,{listenToStorageChanges:!1});function Dd(){Oe.value=Oe.value+1,Oe.value>2&&(Oe.value=1)}function Id(){Ke.value=Math.min(2,Ke.value+.1)}function Rd(){Ke.value=Math.max(.5,Ke.value-.1)}const jd=En(eh),$s=["#ff595e","#ffca3a","#8ac926","#1982c4","#6a4c93","#ffffff","#000000"],Ms=X("slidev-drawing-enabled",!1),Nd=X("slidev-drawing-pinned",!1),nh=U(!1),ih=U(!1),oh=U(!1),Ge=U(!1),Je=Fi(X("slidev-drawing-brush",{color:$s[0],size:4,mode:"stylus"})),vn=U("stylus"),ei=u(()=>N.drawings.syncAll||re.value);let Te=!1;const xe=u({get(){return vn.value},set(t){vn.value=t,t==="arrow"?(G.mode="line",Je.arrowEnd=!0):(G.mode=t,Je.arrowEnd=!1)}}),rh=y({brush:Je,acceptsInputTypes:u(()=>Ms.value&&(!N.drawings.presenterOnly||re.value)?void 0:["pen"]),coordinateTransform:!1}),G=Is(th(rh));function ah(){G.clear(),ei.value&&Un(V.value,"")}function Ns(){var t;ih.value=G.canRedo(),nh.value=G.canUndo(),oh.value=!!((t=G.el)!=null&&t.children.length)}function lh(t){Te=!0;const e=Wn[t||V.value];e!=null?G.load(e):G.clear(),Ns(),Te=!1}G.on("changed",()=>{if(Ns(),!Te){const t=G.dump(),e=V.value;(Wn[e]||"")!==t&&ei.value&&Un(e,G.dump())}});Yo(t=>{Te=!0,t[V.value]!=null&&G.load(t[V.value]||""),Te=!1,Ns()});Pe(()=>{pe(V,()=>{G.mounted&&lh()},{immediate:!0})});G.on("start",()=>Ge.value=!0);G.on("end",()=>Ge.value=!1);window.addEventListener("keydown",t=>{if(!Ms.value||sh.value)return;const e=!t.ctrlKey&&!t.altKey&&!t.shiftKey&&!t.metaKey;let s=!0;t.code==="KeyZ"&&(t.ctrlKey||t.metaKey)?t.shiftKey?G.redo():G.undo():t.code==="Escape"?Ms.value=!1:t.code==="KeyL"&&e?xe.value="line":t.code==="KeyA"&&e?xe.value="arrow":t.code==="KeyS"&&e?xe.value="stylus":t.code==="KeyR"&&e?xe.value="rectangle":t.code==="KeyE"&&e?xe.value="ellipse":t.code==="KeyC"&&e?ah():t.code.startsWith("Digit")&&e&&+t.code[5]<=$s.length?Je.color=$s[+t.code[5]-1]:s=!1,s&&(t.preventDefault(),t.stopPropagation())},!1);const Ss=U(0);Pe(()=>{tt.afterEach(async()=>{await Pe(),Ss.value+=1})});const si=U(0),ts=U(0),dt=u(()=>tt.currentRoute.value),ch=u(()=>dt.value.query.print!==void 0),uh=u(()=>dt.value.query.print==="clicks"),Fd=u(()=>dt.value.query.embedded!==void 0),re=u(()=>dt.value.path.startsWith("/presenter")),hh=u(()=>dt.value.path.startsWith("/notes")),dh=u(()=>dt.value.query.password),zd=u(()=>!re.value&&(!N.remote||dh.value===N.remote)),yn=Mu("clicks","0"),fe=u({get(){if(ee.value.disabled)return ys;let t=+(yn.value||0);return Number.isNaN(t)&&(t=0),t},set(t){yn.value=t.toString()}}),Ud=u(()=>K.length),fh=u(()=>dt.value.path),V=u(()=>Number.parseInt(fh.value.split(/\//g).slice(-1)[0])||1);u(()=>es(V.value));const Jt=u(()=>K.find(t=>t.path===`${V.value}`)),Wd=u(()=>{var t,e,s;return(s=(e=(t=Jt.value)==null?void 0:t.meta)==null?void 0:e.slide)==null?void 0:s.id});u(()=>{var t,e;return((e=(t=Jt.value)==null?void 0:t.meta)==null?void 0:e.layout)||(V.value===1?"cover":"default")});const qd=u(()=>K.find(t=>t.path===`${Math.min(K.length,V.value+1)}`)),ph=u(()=>K.find(t=>t.path===`${Math.max(1,V.value-1)}`)),ee=u(()=>lr(Jt.value)),Fs=u(()=>ee.value.current),Le=u(()=>ee.value.total),Vd=u(()=>V.valueV.value>1||Fs.value>0),mh=u(()=>K.filter(t=>{var e,s;return(s=(e=t.meta)==null?void 0:e.slide)==null?void 0:s.title}).reduce((t,e)=>(qs(t,e),t),[])),gh=u(()=>Vs(mh.value,Jt.value));u(()=>Bs(gh.value));const Kd=u(()=>bh(si.value,Jt.value,ph.value));pe(Jt,(t,e)=>{si.value=Number(t==null?void 0:t.path)-Number(e==null?void 0:e.path)});async function ni(){ts.value=1,Le.value<=fe.value?await zs():fe.value+=1}async function ii(){ts.value=-1,fe.value<=0?await Us():fe.value-=1}function es(t){return re.value?`/presenter/${t}`:`/${t}`}async function zs(){ts.value=1,V.value.3||o>75?s.value==="left"?ni():ii():(a/window.innerHeight>.4||a>200)&&(s.value==="down"?Us():zs())}})}async function _h(){const{saveAs:t}=await Ce(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),__vite__mapDeps([]));t(typeof N.download=="string"?N.download:N.exportFilename?`${N.exportFilename}.pdf`:"/sa2024/01-overview/slidev-exported.pdf",`${N.title}.pdf`)}async function vh(t){var e,s;if(t==null){const n=(s=(e=Jt.value)==null?void 0:e.meta)==null?void 0:s.slide;if(!n)return!1;t=`${n.filepath}:${n.start}`}return await fetch(`/__open-in-editor?file=${encodeURIComponent(t)}`),!0}function qs(t,e,s=1){var i,o,a,r,l,h,d;const n=(o=(i=e.meta)==null?void 0:i.slide)==null?void 0:o.level;n&&n>s&&t.length>0?qs(t[t.length-1].children,e,s+1):t.push({children:[],level:s,path:e.path,hideInToc:!!((l=(r=(a=e.meta)==null?void 0:a.slide)==null?void 0:r.frontmatter)!=null&&l.hideInToc),title:(d=(h=e.meta)==null?void 0:h.slide)==null?void 0:d.title})}function Vs(t,e,s=!1,n){return t.map(i=>{const o={...i,active:i.path===(e==null?void 0:e.path),hasActiveParent:s};return o.children.length>0&&(o.children=Vs(o.children,e,o.active||o.hasActiveParent,o)),n&&(o.active||o.activeParent)&&(n.activeParent=!0),o})}function Bs(t,e=1){return t.filter(s=>!s.hideInToc).map(s=>({...s,children:Bs(s.children,e+1)}))}const yh={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function wh(t,e=!1){if(!t||(typeof t=="string"&&(t={name:t}),!t.name))return;let s=t.name.includes("|")?t.name:yh[t.name]||t.name;if(s.includes("|")){const[n,i]=s.split("|").map(o=>o.trim());s=e?i:n}if(s)return{...t,name:s}}function bh(t,e,s){var i,o;let n=t>0?(i=s==null?void 0:s.meta)==null?void 0:i.transition:(o=e==null?void 0:e.meta)==null?void 0:o.transition;return n||(n=N.transition),wh(n,t<0)}function kh(){const t=N.titleTemplate.replace("%s",N.title||"Slidev");Ro({title:t,htmlAttrs:N.htmlAttrs}),Go(`${t} - shared`),Xo(`${t} - drawings`);const e=`${location.origin}_${sr()}`;function s(){hh.value||!re.value&&!rr.includes(location.host.split(":")[0])||(re.value?(_e("page",+V.value),_e("clicks",ee.value.current)):(_e("viewerPage",+V.value),_e("viewerClicks",ee.value.current)),_e("lastUpdate",{id:e,type:re.value?"presenter":"viewer",time:new Date().getTime()}))}tt.afterEach(s),pe(ee,s),Jo(n=>{var o;tt.currentRoute.value.path.match(/^\/(\d+|presenter)\/?/)&&((o=n.lastUpdate)==null?void 0:o.type)==="presenter"&&(+n.page!=+V.value||+ee.value.current!=+n.clicks)&&(Zn.value=!1,tt.replace({path:es(n.page),query:{...tt.currentRoute.value.query,clicks:n.clicks||0}}))})}const xh=Hs({__name:"App",setup(t){return kh(),de(()=>{for(const[e,s]of Object.entries(Vo.value))document.body.style.setProperty(e,s.toString())}),(e,s)=>{const n=Wi("RouterView");return M(),L(n)}}}),$h=S(xh,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function Mh(t){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e),t.app.use(qi),t.app.use(Ki)}function oi(t,e,s){var n;return((n=t.instance)==null?void 0:n.$).provides[e]??s}function Sh(){return{install(t){t.directive("click",{name:"v-click",mounted(e,s){const n=Fe(e,s,s.value);if(n==null)return;e.classList.toggle(je,!0);const i=Array.isArray(n.clicks)?n.clicks:[n.clicks,void 0];e.dataset.slidevClicksStart=String(i[0]),i[1]!=null&&(e.dataset.slidevClicksEnd=String(i[1])),de(()=>{const o=n.isActive.value,a=n.isCurrent.value,r=o&&!a;n.flagHide?(e.classList.toggle(n.flagFade?ye:ve,o),e.classList.toggle(ls,o)):e.classList.toggle(n.flagFade?ye:ve,!o),e.classList.toggle(cs,a),e.classList.toggle(us,r)})},unmounted:ds}),t.directive("after",{name:"v-after",mounted(e,s){const n=Fe(e,s,s.value,!0);n!=null&&(e.classList.toggle(je,!0),de(()=>{const i=n.isActive.value,o=n.isCurrent.value,a=i&&!o;n.flagHide?(e.classList.toggle(n.flagFade?ye:ve,i),e.classList.toggle(ls,i)):e.classList.toggle(n.flagFade?ye:ve,!i),e.classList.toggle(cs,o),e.classList.toggle(us,a)}))},unmounted:ds}),t.directive("click-hide",{name:"v-click-hide",mounted(e,s){const n=Fe(e,s,s.value,!1,!0);n!=null&&(e.classList.toggle(je,!0),de(()=>{const i=n.isActive.value,o=n.isCurrent.value,a=i&&!o;e.classList.toggle(n.flagFade?ye:ve,i),e.classList.toggle(ls,i),e.classList.toggle(cs,o),e.classList.toggle(us,a)}))},unmounted:ds})}}}function hs(t,e){return Array.isArray(t)?t[0]<=e&&ehs(l,o.current)),isCurrent:u(()=>Ph(l,o.current)),isShown:u(()=>i?!hs(l,o.current):hs(l,o.current)),flagFade:a,flagHide:i};return o.register(t,d),d}function ds(t,e){var n;t.classList.toggle(je,!1);const s=(n=oi(e,js))==null?void 0:n.value;s==null||s.unregister(t)}function ri(){return Math.floor(Math.random()*2**31)}class Ch{constructor(e){this.seed=e}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}}function Ps(t,e,s){if(t&&t.length){const[n,i]=e,o=Math.PI/180*s,a=Math.cos(o),r=Math.sin(o);for(const l of t){const[h,d]=l;l[0]=(h-n)*a-(d-i)*r+n,l[1]=(h-n)*r+(d-i)*a+i}}}function Th(t,e,s){const n=[];t.forEach(i=>n.push(...i)),Ps(n,e,s)}function Lh(t,e){return t[0]===e[0]&&t[1]===e[1]}function Eh(t,e,s,n=1){const i=s,o=Math.max(e,.1),a=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,r=[0,0];if(i)for(const h of a)Ps(h,r,i);const l=Ah(a,o,n);if(i){for(const h of a)Ps(h,r,-i);Th(l,r,-i)}return l}function Ah(t,e,s){const n=[];for(const h of t){const d=[...h];Lh(d[0],d[d.length-1])||d.push([d[0][0],d[0][1]]),d.length>2&&n.push(d)}const i=[];e=Math.max(e,.1);const o=[];for(const h of n)for(let d=0;dh.ymind.ymin?1:h.xd.x?1:h.ymax===d.ymax?0:(h.ymax-d.ymax)/Math.abs(h.ymax-d.ymax)),!o.length)return i;let a=[],r=o[0].ymin,l=0;for(;a.length||o.length;){if(o.length){let h=-1;for(let f=0;fr);f++)h=f;o.splice(0,h+1).forEach(f=>{a.push({s:r,edge:f})})}if(a=a.filter(h=>!(h.edge.ymax<=r)),a.sort((h,d)=>h.edge.x===d.edge.x?0:(h.edge.x-d.edge.x)/Math.abs(h.edge.x-d.edge.x)),(s!==1||l%e===0)&&a.length>1)for(let h=0;h=a.length)break;const f=a[h].edge,m=a[d].edge;i.push([[Math.round(f.x),r],[Math.round(m.x),r]])}r+=s,a.forEach(h=>{h.edge.x=h.edge.x+s*h.edge.islope}),l++}return i}function Ee(t,e){var s;const n=e.hachureAngle+90;let i=e.hachureGap;i<0&&(i=e.strokeWidth*4),i=Math.round(Math.max(i,.1));let o=1;return e.roughness>=1&&(((s=e.randomizer)===null||s===void 0?void 0:s.next())||Math.random())>.7&&(o=i),Eh(t,i,n,o||1)}class Ks{constructor(e){this.helper=e}fillPolygons(e,s){return this._fillPolygons(e,s)}_fillPolygons(e,s){const n=Ee(e,s);return{type:"fillSketch",ops:this.renderLines(n,s)}}renderLines(e,s){const n=[];for(const i of e)n.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],s));return n}}function ss(t){const e=t[0],s=t[1];return Math.sqrt(Math.pow(e[0]-s[0],2)+Math.pow(e[1]-s[1],2))}class Oh extends Ks{fillPolygons(e,s){let n=s.hachureGap;n<0&&(n=s.strokeWidth*4),n=Math.max(n,.1);const i=Object.assign({},s,{hachureGap:n}),o=Ee(e,i),a=Math.PI/180*s.hachureAngle,r=[],l=n*.5*Math.cos(a),h=n*.5*Math.sin(a);for(const[f,m]of o)ss([f,m])&&r.push([[f[0]-l,f[1]+h],[...m]],[[f[0]+l,f[1]-h],[...m]]);return{type:"fillSketch",ops:this.renderLines(r,s)}}}class Hh extends Ks{fillPolygons(e,s){const n=this._fillPolygons(e,s),i=Object.assign({},s,{hachureAngle:s.hachureAngle+90}),o=this._fillPolygons(e,i);return n.ops=n.ops.concat(o.ops),n}}class Dh{constructor(e){this.helper=e}fillPolygons(e,s){s=Object.assign({},s,{hachureAngle:0});const n=Ee(e,s);return this.dotsOnLines(n,s)}dotsOnLines(e,s){const n=[];let i=s.hachureGap;i<0&&(i=s.strokeWidth*4),i=Math.max(i,.1);let o=s.fillWeight;o<0&&(o=s.strokeWidth/2);const a=i/4;for(const r of e){const l=ss(r),h=l/i,d=Math.ceil(h)-1,f=l-d*i,m=(r[0][0]+r[1][0])/2-i/4,p=Math.min(r[0][1],r[1][1]);for(let g=0;g{const r=ss(a),l=Math.floor(r/(n+i)),h=(r+i-l*(n+i))/2;let d=a[0],f=a[1];d[0]>f[0]&&(d=a[1],f=a[0]);const m=Math.atan((f[1]-d[1])/(f[0]-d[0]));for(let p=0;p{const a=ss(o),r=Math.round(a/(2*s));let l=o[0],h=o[1];l[0]>h[0]&&(l=o[1],h=o[0]);const d=Math.atan((h[1]-l[1])/(h[0]-l[0]));for(let f=0;fd%2?h+s:h+e);o.push({key:"C",data:l}),e=l[4],s=l[5];break}case"Q":o.push({key:"Q",data:[...r]}),e=r[2],s=r[3];break;case"q":{const l=r.map((h,d)=>d%2?h+s:h+e);o.push({key:"Q",data:l}),e=l[2],s=l[3];break}case"A":o.push({key:"A",data:[...r]}),e=r[5],s=r[6];break;case"a":e+=r[5],s+=r[6],o.push({key:"A",data:[r[0],r[1],r[2],r[3],r[4],e,s]});break;case"H":o.push({key:"H",data:[...r]}),e=r[0];break;case"h":e+=r[0],o.push({key:"H",data:[e]});break;case"V":o.push({key:"V",data:[...r]}),s=r[0];break;case"v":s+=r[0],o.push({key:"V",data:[s]});break;case"S":o.push({key:"S",data:[...r]}),e=r[2],s=r[3];break;case"s":{const l=r.map((h,d)=>d%2?h+s:h+e);o.push({key:"S",data:l}),e=l[2],s=l[3];break}case"T":o.push({key:"T",data:[...r]}),e=r[0],s=r[1];break;case"t":e+=r[0],s+=r[1],o.push({key:"T",data:[e,s]});break;case"Z":case"z":o.push({key:"Z",data:[]}),e=n,s=i;break}return o}function ci(t){const e=[];let s="",n=0,i=0,o=0,a=0,r=0,l=0;for(const{key:h,data:d}of t){switch(h){case"M":e.push({key:"M",data:[...d]}),[n,i]=d,[o,a]=d;break;case"C":e.push({key:"C",data:[...d]}),n=d[4],i=d[5],r=d[2],l=d[3];break;case"L":e.push({key:"L",data:[...d]}),[n,i]=d;break;case"H":n=d[0],e.push({key:"L",data:[n,i]});break;case"V":i=d[0],e.push({key:"L",data:[n,i]});break;case"S":{let f=0,m=0;s==="C"||s==="S"?(f=n+(n-r),m=i+(i-l)):(f=n,m=i),e.push({key:"C",data:[f,m,...d]}),r=d[0],l=d[1],n=d[2],i=d[3];break}case"T":{const[f,m]=d;let p=0,g=0;s==="Q"||s==="T"?(p=n+(n-r),g=i+(i-l)):(p=n,g=i);const _=n+2*(p-n)/3,v=i+2*(g-i)/3,b=f+2*(p-f)/3,$=m+2*(g-m)/3;e.push({key:"C",data:[_,v,b,$,f,m]}),r=p,l=g,n=f,i=m;break}case"Q":{const[f,m,p,g]=d,_=n+2*(f-n)/3,v=i+2*(m-i)/3,b=p+2*(f-p)/3,$=g+2*(m-g)/3;e.push({key:"C",data:[_,v,b,$,p,g]}),r=f,l=m,n=p,i=g;break}case"A":{const f=Math.abs(d[0]),m=Math.abs(d[1]),p=d[2],g=d[3],_=d[4],v=d[5],b=d[6];f===0||m===0?(e.push({key:"C",data:[n,i,v,b,v,b]}),n=v,i=b):(n!==v||i!==b)&&(ui(n,i,v,b,f,m,p,g,_).forEach(function(T){e.push({key:"C",data:T})}),n=v,i=b);break}case"Z":e.push({key:"Z",data:[]}),n=o,i=a;break}s=h}return e}function zh(t){return Math.PI*t/180}function $e(t,e,s){const n=t*Math.cos(s)-e*Math.sin(s),i=t*Math.sin(s)+e*Math.cos(s);return[n,i]}function ui(t,e,s,n,i,o,a,r,l,h){const d=zh(a);let f=[],m=0,p=0,g=0,_=0;if(h)[m,p,g,_]=h;else{[t,e]=$e(t,e,-d),[s,n]=$e(s,n,-d);const J=(t-s)/2,I=(e-n)/2;let W=J*J/(i*i)+I*I/(o*o);W>1&&(W=Math.sqrt(W),i=W*i,o=W*o);const Xt=r===l?-1:1,rt=i*i,P=o*o,q=rt*P-rt*I*I-P*J*J,R=rt*I*I+P*J*J,j=Xt*Math.sqrt(Math.abs(q/R));g=j*i*I/o+(t+s)/2,_=j*-o*J/i+(e+n)/2,m=Math.asin(parseFloat(((e-_)/o).toFixed(9))),p=Math.asin(parseFloat(((n-_)/o).toFixed(9))),tp&&(m=m-Math.PI*2),!l&&p>m&&(p=p-Math.PI*2)}let v=p-m;if(Math.abs(v)>Math.PI*120/180){const J=p,I=s,W=n;l&&p>m?p=m+Math.PI*120/180*1:p=m+Math.PI*120/180*-1,s=g+i*Math.cos(p),n=_+o*Math.sin(p),f=ui(s,n,I,W,i,o,a,0,l,[p,J,g,_])}v=p-m;const b=Math.cos(m),$=Math.sin(m),T=Math.cos(p),B=Math.sin(p),z=Math.tan(v/4),ft=4/3*i*z,Qt=4/3*o*z,et=[t,e],ot=[t+ft*$,e-Qt*b],ut=[s+ft*B,n-Qt*T],ht=[s,n];if(ot[0]=2*et[0]-ot[0],ot[1]=2*et[1]-ot[1],h)return[ot,ut,ht].concat(f);{f=[ot,ut,ht].concat(f);const J=[];for(let I=0;I2){const i=[];for(let o=0;oMath.PI*2&&(p=0,g=Math.PI*2);const _=Math.PI*2/l.curveStepCount,v=Math.min(_/2,(g-p)/2),b=Mn(v,h,d,f,m,p,g,1,l);if(!l.disableMultiStroke){const $=Mn(v,h,d,f,m,p,g,1.5,l);b.push(...$)}return a&&(r?b.push(...se(h,d,h+f*Math.cos(p),d+m*Math.sin(p),l),...se(h,d,h+f*Math.cos(g),d+m*Math.sin(g),l)):b.push({op:"lineTo",data:[h,d]},{op:"lineTo",data:[h+f*Math.cos(p),d+m*Math.sin(p)]})),{type:"path",ops:b}}function kn(t,e){const s=ci(li(Gs(t))),n=[];let i=[0,0],o=[0,0];for(const{key:a,data:r}of s)switch(a){case"M":{o=[r[0],r[1]],i=[r[0],r[1]];break}case"L":n.push(...se(o[0],o[1],r[0],r[1],e)),o=[r[0],r[1]];break;case"C":{const[l,h,d,f,m,p]=r;n.push(...Gh(l,h,d,f,m,p,o,e)),o=[m,p];break}case"Z":n.push(...se(o[0],o[1],i[0],i[1],e)),o=[i[0],i[1]];break}return{type:"path",ops:n}}function ps(t,e){const s=[];for(const n of t)if(n.length){const i=e.maxRandomnessOffset||0,o=n.length;if(o>2){s.push({op:"move",data:[n[0][0]+k(i,e),n[0][1]+k(i,e)]});for(let a=1;aMath.PI*2&&(f=0,m=Math.PI*2);const p=(m-f)/a.curveStepCount,g=[];for(let _=f;_<=m;_=_+p)g.push([r+h*Math.cos(_),l+d*Math.sin(_)]);return g.push([r+h*Math.cos(m),l+d*Math.sin(m)]),g.push([r,l]),he([g],a)}function Vh(t,e){return k(t,e)}function Bh(t,e,s){return Ze(t,e,s)}function Kh(t,e,s,n,i){return se(t,e,s,n,i,!0)}function xn(t){const e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function fi(t){return t.randomizer||(t.randomizer=new Ch(t.seed||0)),t.randomizer.next()}function Ze(t,e,s,n=1){return s.roughness*n*(fi(s)*(e-t)+t)}function k(t,e,s=1){return Ze(-t,t,e,s)}function se(t,e,s,n,i,o=!1){const a=o?i.disableMultiStrokeFill:i.disableMultiStroke,r=Es(t,e,s,n,i,!0,!1);if(a)return r;const l=Es(t,e,s,n,i,!0,!0);return r.concat(l)}function Es(t,e,s,n,i,o,a){const r=Math.pow(t-s,2)+Math.pow(e-n,2),l=Math.sqrt(r);let h=1;l<200?h=1:l>500?h=.4:h=-.0016668*l+1.233334;let d=i.maxRandomnessOffset||0;d*d*100>r&&(d=l/10);const f=d/2,m=.2+fi(i)*.2;let p=i.bowing*i.maxRandomnessOffset*(n-e)/200,g=i.bowing*i.maxRandomnessOffset*(t-s)/200;p=k(p,i,h),g=k(g,i,h);const _=[],v=()=>k(f,i,h),b=()=>k(d,i,h),$=i.preserveVertices;return o&&(a?_.push({op:"move",data:[t+($?0:v()),e+($?0:v())]}):_.push({op:"move",data:[t+($?0:k(d,i,h)),e+($?0:k(d,i,h))]})),a?_.push({op:"bcurveTo",data:[p+t+(s-t)*m+v(),g+e+(n-e)*m+v(),p+t+2*(s-t)*m+v(),g+e+2*(n-e)*m+v(),s+($?0:v()),n+($?0:v())]}):_.push({op:"bcurveTo",data:[p+t+(s-t)*m+b(),g+e+(n-e)*m+b(),p+t+2*(s-t)*m+b(),g+e+2*(n-e)*m+b(),s+($?0:b()),n+($?0:b())]}),_}function De(t,e,s){if(!t.length)return[];const n=[];n.push([t[0][0]+k(e,s),t[0][1]+k(e,s)]),n.push([t[0][0]+k(e,s),t[0][1]+k(e,s)]);for(let i=1;i3){const o=[],a=1-s.curveTightness;i.push({op:"move",data:[t[1][0],t[1][1]]});for(let r=1;r+21&&i.push(o):i.push(o),i.push(t[e+3])}else{const a=t[e+0],r=t[e+1],l=t[e+2],h=t[e+3],d=oe(a,r,.5),f=oe(r,l,.5),m=oe(l,h,.5),p=oe(d,f,.5),g=oe(f,m,.5),_=oe(p,g,.5);As([a,d,p,_],0,s,i),As([_,g,m,h],0,s,i)}return i}function Xh(t,e){return Xe(t,0,t.length,e)}function Xe(t,e,s,n,i){const o=i||[],a=t[e],r=t[s-1];let l=0,h=1;for(let d=e+1;dl&&(l=f,h=d)}return Math.sqrt(l)>n?(Xe(t,e,h+1,n,o),Xe(t,h,s,n,o)):(o.length||o.push(a),o.push(r)),o}function Os(t,e=.15,s){const n=[],i=(t.length-1)/3;for(let o=0;o0?Xe(n,0,n.length,s):n}function Yh(t,e,s){const n=Gs(t),i=ci(li(n)),o=[];let a=[],r=[0,0],l=[];const h=()=>{l.length>=4&&a.push(...Os(l,e)),l=[]},d=()=>{h(),a.length&&(o.push(a),a=[])};for(const{key:m,data:p}of i)switch(m){case"M":d(),r=[p[0],p[1]],a.push(r);break;case"L":h(),a.push([p[0],p[1]]);break;case"C":if(!l.length){const g=a.length?a[a.length-1]:r;l.push([g[0],g[1]])}l.push([p[0],p[1]]),l.push([p[2],p[3]]),l.push([p[4],p[5]]);break;case"Z":h(),a.push([r[0],r[1]]);break}if(d(),!s)return o;const f=[];for(const m of o){const p=Xh(m,s);p.length&&f.push(p)}return f}const Y="none";class td{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return ri()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,s,n){return{shape:e,sets:s||[],options:n||this.defaultOptions}}line(e,s,n,i,o){const a=this._o(o);return this._d("line",[st(e,s,n,i,a)],a)}rectangle(e,s,n,i,o){const a=this._o(o),r=[],l=hi(e,s,n,i,a);if(a.fill){const h=[[e,s],[e+n,s],[e+n,s+i],[e,s+i]];a.fillStyle==="solid"?r.push(ps([h],a)):r.push(he([h],a))}return a.stroke!==Y&&r.push(l),this._d("rectangle",r,a)}ellipse(e,s,n,i,o){const a=this._o(o),r=[],l=di(n,i,a),h=Ls(e,s,a,l);if(a.fill)if(a.fillStyle==="solid"){const d=Ls(e,s,a,l).opset;d.type="fillPath",r.push(d)}else r.push(he([h.estimatedPoints],a));return a.stroke!==Y&&r.push(h.opset),this._d("ellipse",r,a)}circle(e,s,n,i){const o=this.ellipse(e,s,n,n,i);return o.shape="circle",o}linearPath(e,s){const n=this._o(s);return this._d("linearPath",[Se(e,!1,n)],n)}arc(e,s,n,i,o,a,r=!1,l){const h=this._o(l),d=[],f=bn(e,s,n,i,o,a,r,!0,h);if(r&&h.fill)if(h.fillStyle==="solid"){const m=Object.assign({},h);m.disableMultiStroke=!0;const p=bn(e,s,n,i,o,a,!0,!1,m);p.type="fillPath",d.push(p)}else d.push(qh(e,s,n,i,o,a,h));return h.stroke!==Y&&d.push(f),this._d("arc",d,h)}curve(e,s){const n=this._o(s),i=[],o=wn(e,n);if(n.fill&&n.fill!==Y)if(n.fillStyle==="solid"){const a=wn(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(a.ops)})}else{const a=[],r=e;if(r.length){const h=typeof r[0][0]=="number"?[r]:r;for(const d of h)d.length<3?a.push(...d):d.length===3?a.push(...Os(Sn([d[0],d[0],d[1],d[2]]),10,(1+n.roughness)/2)):a.push(...Os(Sn(d),10,(1+n.roughness)/2))}a.length&&i.push(he([a],n))}return n.stroke!==Y&&i.push(o),this._d("curve",i,n)}polygon(e,s){const n=this._o(s),i=[],o=Se(e,!0,n);return n.fill&&(n.fillStyle==="solid"?i.push(ps([e],n)):i.push(he([e],n))),n.stroke!==Y&&i.push(o),this._d("polygon",i,n)}path(e,s){const n=this._o(s),i=[];if(!e)return this._d("path",i,n);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const o=n.fill&&n.fill!=="transparent"&&n.fill!==Y,a=n.stroke!==Y,r=!!(n.simplification&&n.simplification<1),l=r?4-4*(n.simplification||1):(1+n.roughness)/2,h=Yh(e,1,l),d=kn(e,n);if(o)if(n.fillStyle==="solid")if(h.length===1){const f=kn(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(f.ops)})}else i.push(ps(h,n));else i.push(he(h,n));return a&&(r?h.forEach(f=>{i.push(Se(f,!1,n))}):i.push(d)),this._d("path",i,n)}opsToPath(e,s){let n="";for(const i of e.ops){const o=typeof s=="number"&&s>=0?i.data.map(a=>+a.toFixed(s)):i.data;switch(i.op){case"move":n+=`M${o[0]} ${o[1]} `;break;case"bcurveTo":n+=`C${o[0]} ${o[1]}, ${o[2]} ${o[3]}, ${o[4]} ${o[5]} `;break;case"lineTo":n+=`L${o[0]} ${o[1]} `;break}}return n.trim()}toPaths(e){const s=e.sets||[],n=e.options||this.defaultOptions,i=[];for(const o of s){let a=null;switch(o.type){case"path":a={d:this.opsToPath(o),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:Y};break;case"fillPath":a={d:this.opsToPath(o),stroke:Y,strokeWidth:0,fill:n.fill||Y};break;case"fillSketch":a=this.fillSketch(o,n);break}a&&i.push(a)}return i}fillSketch(e,s){let n=s.fillWeight;return n<0&&(n=s.strokeWidth/2),{d:this.opsToPath(e),stroke:s.fill||Y,strokeWidth:n,fill:Y}}_mergedShape(e){return e.filter((s,n)=>n===0?!0:s.op!=="move")}}const pi="http://www.w3.org/2000/svg",ed=800;let ms=null;function sd(){return ms||(ms=new td().defaultOptions),ms}function gs(t,e,s){return{...sd(),maxRandomnessOffset:2,roughness:t==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:t!=="double",disableMultiStrokeFill:!1,seed:e,...s}}function nd(t){const e=t.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const s=e;if(s.length)switch(s.length){case 4:return[...s];case 1:return[s[0],s[0],s[0],s[0]];case 2:return[...s,...s];case 3:return[...s,s[1]];default:return[s[0],s[1],s[2],s[3]]}}}return[5,5,5,5]}function id(t,e,s,n,i,o){const a=[];let r=s.strokeWidth||2;const l=nd(s),h=s.animate===void 0?!0:!!s.animate,d=s.iterations||2,f=s.rtl?1:0,m=gs("single",o,s);switch(s.type){case"underline":{const p=e.y+e.h+l[2];for(let g=f;g$.setAttribute(T,B);for(const $ of p){const T=document.createElementNS(pi,"path");if(b(T,"d",$),b(T,"fill","none"),b(T,"stroke",s.color||"currentColor"),b(T,"stroke-width",`${r}`),s.opacity!==void 0&&b(T,"style",`opacity:${s.opacity}`),h){const B=T.getTotalLength();g.push(B),v+=B}t.appendChild(T),_.push(T)}if(h){let $=0;for(let T=0;T<_.length;T++){const B=_[T],z=g[T],ft=v?i*(z/v):0,Qt=n+$,et=B.style;et.strokeDashoffset=`${z}`,et.strokeDasharray=`${z}`,et.animation=`rough-notation-dash ${ft}ms ease-out ${Qt}ms forwards`,$+=ft}return Pn(i+n)}}return Pn(0)}function Pn(t){return new Promise(e=>setTimeout(e,t))}function od(t){const e=[];for(const s of t){let n="";for(const i of s.ops){const o=i.data;switch(i.op){case"move":n.trim()&&e.push(n.trim()),n=`M${o[0]} ${o[1]} `;break;case"bcurveTo":n+=`C${o[0]} ${o[1]}, ${o[2]} ${o[3]}, ${o[4]} ${o[5]} `;break;case"lineTo":n+=`L${o[0]} ${o[1]} `;break}}n.trim()&&e.push(n.trim())}return e}function rd(){if(!window.__rno_kf_s){const t=window.__rno_kf_s=document.createElement("style");t.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(t)}}var ad=Object.defineProperty,ld=(t,e,s)=>e in t?ad(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,at=(t,e,s)=>(ld(t,typeof e!="symbol"?e+"":e,s),s);class cd{constructor(e,s){at(this,"_state","unattached"),at(this,"_config"),at(this,"_resizing",!1),at(this,"_ro"),at(this,"_seed",ri()),at(this,"_e"),at(this,"_svg"),at(this,"_lastSizes",[]),at(this,"_animationDelay",0),at(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),at(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(s)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,s){this._config[e]!==s&&(this._config[e]=s,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){rd();const e=this._svg=document.createElementNS(pi,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const s=e.style;s.position="absolute",s.top="0",s.left="0",s.overflow="visible",s.pointerEvents="none",s.width="100px",s.height="100px";const n=this._config.type==="highlight";if(this._e.insertAdjacentElement(n?"beforebegin":"afterend",e),this._state="not-showing",n){const i=window.getComputedStyle(this._e).position;(!i||i==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const s of e)s.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let s=0;sMath.round(i)===Math.round(o);return n(e.x,s.x)&&n(e.y,s.y)&&n(e.w,s.w)&&n(e.h,s.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,s){let n=this._config;s&&(n=JSON.parse(JSON.stringify(this._config)),n.animate=!1);const i=this.rects();let o=0;i.forEach(h=>o+=h.w);const a=n.animationDuration||ed;let r=0;const l=[];for(let h=0;hObject.assign(t,{type:"box"}),circle:t=>Object.assign(t,{type:"circle"}),underline:t=>Object.assign(t,{type:"underline"}),highlight:t=>Object.assign(t,{type:"highlight"}),"strike-through":t=>Object.assign(t,{type:"strike-through"}),"crossed-off":t=>Object.assign(t,{type:"crossed-off"}),bracket:t=>Object.assign(t,{type:"bracket"}),strike:t=>Object.assign(t,{type:"strike-through"}),cross:t=>Object.assign(t,{type:"crossed-off"}),crossed:t=>Object.assign(t,{type:"crossed-off"}),linethrough:t=>Object.assign(t,{type:"strike-through"}),"line-through":t=>Object.assign(t,{type:"strike-through"}),black:t=>Q(t,"text-black"),blue:t=>Q(t,"text-blue"),cyan:t=>Q(t,"text-cyan"),gray:t=>Q(t,"text-gray"),green:t=>Q(t,"text-green"),indigo:t=>Q(t,"text-indigo"),lime:t=>Q(t,"text-lime"),orange:t=>Q(t,"text-orange"),pink:t=>Q(t,"text-pink"),purple:t=>Q(t,"text-purple"),red:t=>Q(t,"text-red"),teal:t=>Q(t,"text-teal"),white:t=>Q(t,"text-white"),yellow:t=>Q(t,"text-yellow")},hd=[[/^delay-?(\d+)?$/,(t,e,s)=>{const n=(t[1]?Number.parseInt(t[1]):s)||300;return e.delay=n,e}],[/^(?:op|opacity)-?(\d+)?$/,(t,e,s)=>{const n=(t[1]?Number.parseInt(t[1]):s)||100;return e.opacity=n/100,e}]];function dd(){return{install(t){t.directive("mark",{name:"v-mark",mounted:(e,s)=>{const n=u(()=>{const a=typeof s.value=="object"&&!Array.isArray(s.value)?{...s.value}:{at:s.value};let r={at:a.at};const l=Object.entries(s.modifiers).filter(([d,f])=>{if(Cn[d])return r=Cn[d](r,f),!1;for(const[m,p]of hd){const g=d.match(m);if(g)return r=p(g,r,f),!1}return!0});l.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",l);const h={...r,...a};return h.type||(h.type="underline"),h}),i=ud(e,n.value),o=Fe(e,s,n.value.at);if(!o){console.error("[Slidev] Invalid value for v-mark:",n.value.at);return}de(()=>{let a;n.value.class&&(i.class=n.value.class),n.value.color&&(i.color=n.value.color);const r=n.value.at;if(r===!0)a=!0;else if(r===!1)a=!1;else if(o)a=o.isActive.value;else{console.error("[Slidev] Invalid value for v-mark:",r);return}a!=null&&(a?i.show():i.hide())})}})}}}const Tn=Vi(),_s=X("slidev-color-schema","auto"),Ln=u(()=>N.colorSchema!=="auto"),mi=u({get(){return Ln.value?N.colorSchema==="dark":_s.value==="auto"?Tn.value:_s.value==="dark"},set(t){Ln.value||(_s.value=t===Tn.value?"auto":t?"dark":"light")}}),Jd=En(mi);Ye&&pe(mi,t=>{const e=document.querySelector("html");e.classList.toggle("dark",t),e.classList.toggle("light",!t)},{immediate:!0});function fd(t){const e=u(()=>t.value.path),s=u(()=>K.length),n=u(()=>Number.parseInt(e.value.split(/\//g).slice(-1)[0])||1),i=u(()=>es(n.value)),o=u(()=>K.find(m=>m.path===`${n.value}`)??K.at(-1)??K[0]),a=u(()=>{var m,p,g;return(g=(p=(m=o.value)==null?void 0:m.meta)==null?void 0:p.slide)==null?void 0:g.id}),r=u(()=>{var m,p;return((p=(m=o.value)==null?void 0:m.meta)==null?void 0:p.layout)||(n.value===1?"cover":"default")}),l=u(()=>K.find(m=>m.path===`${Math.min(K.length,n.value+1)}`)),h=u(()=>K.filter(m=>{var p,g;return(g=(p=m.meta)==null?void 0:p.slide)==null?void 0:g.title}).reduce((m,p)=>(qs(m,p),m),[])),d=u(()=>Vs(h.value,o.value)),f=u(()=>Bs(d.value));return{rawRoutes:K,route:t,path:e,total:s,clicksContext:ee,clicks:Fs,clicksTotal:Le,currentPage:n,currentPath:i,currentRoute:o,currentSlideId:a,currentLayout:r,nextRoute:l,rawTree:h,treeWithActiveStatuses:d,tree:f,go:Ws,downloadPDF:_h,next:ni,nextSlide:zs,openInEditor:vh,prev:ii,prevSlide:Us}}function pd(t){return{nav:fd(t),configs:N,themeConfigs:u(()=>N.themeConfig)}}function md(){return{install(t){const e=y(pd(dt));t.provide(Bn,U("none")),t.provide(Vn,e),t.provide(qn,u(()=>e.nav.currentPage))}}}const ce=Bi($h);ce.use(tt);ce.use(Do());ce.use(Sh());ce.use(dd());ce.use(md());Mh({app:ce,router:tt});ce.mount("#app");export{Ld as $,Ud as A,wd as B,ys as C,ee as D,Jt as E,Vd as F,qd as G,fe as H,yd as I,Ad as J,Oe as K,lr as L,Wd as M,Ke as N,Id as O,Rd as P,V as Q,zs as R,Us as S,Ms as T,Jd as U,jd as V,$d as W,Ws as X,Pd as Y,Md as Z,S as _,kd as a,sh as a0,Td as a1,ts as a2,Sd as a3,xs as a4,dh as a5,Bd as a6,Ln as a7,mi as a8,re as a9,Je as aa,zd as ab,Dd as ac,_h as ad,Zn as ae,Kd as af,or as ag,qn as ah,Bn as ai,bd as aj,js as ak,xe as al,$s as am,nh as an,ih as ao,oh as ap,ah as aq,Nd as ar,G as as,C as at,lh as au,Wn as av,xd as b,N as c,Od as d,Ce as e,ch as f,Ge as g,Fd as h,Cd as i,Ed as j,Hd as k,vd as l,qo as m,ni as n,Vn as o,ii as p,fd as q,cr as r,eh as s,Nn as t,Gd as u,dt as v,_n as w,K as x,ir as y,Ro as z}; -function __vite__mapDeps(indexes) { - if (!__vite__mapDeps.viteFileDeps) { - __vite__mapDeps.viteFileDeps = ["assets/slidev/play-Z7U5Nfiq.js","assets/modules/vue-CnJIpJLC.js","assets/slidev/SlidesShow-BSMebv3R.js","assets/modules/unplugin-icons-Bc68jzww.js","assets/slidev/bottom-B94u-vcJ.js","assets/slidev/DrawingPreview-zVczfu-q.js","assets/modules/shiki-BgDwwTVx.js","assets/modules/shiki-BSchMNmt.css","assets/SlidesShow-Do3DTZt5.css","assets/slidev/PrintStyle-BL_8NHmX.js","assets/play-CoA43pdi.css","assets/slidev/print-CrKjQ_D3.js","assets/print-Nssgrd1X.css","assets/slidev/print-DRKmZ4J6.js","assets/slidev/NoteDisplay-CBFeieqG.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/presenter-CGrB5aTx.js","assets/slidev/DrawingControls-Ctpc7CvA.js","assets/DrawingControls-BO6lw4N5.css","assets/presenter-BRsvFpoV.css"] - } - return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) -} diff --git a/01-overview/assets/index-Cg0iU_GL.css b/01-overview/assets/index-Cg0iU_GL.css deleted file mode 100644 index b75aa51..0000000 --- a/01-overview/assets/index-Cg0iU_GL.css +++ /dev/null @@ -1 +0,0 @@ -.slidev-layout.end[data-v-e7ce0abf]{display:grid;height:100%;-webkit-user-select:none;user-select:none;place-content:center;--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity));text-align:center;font-size:1.25rem;line-height:1.75rem;--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity));--un-text-opacity:.85;letter-spacing:.1em}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media print{.print-container{width:100%}}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 640px){@media print{.print-container{max-width:640px}}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 768px){@media print{.print-container{max-width:768px}}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1024px){@media print{.print-container{max-width:1024px}}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1280px){@media print{.print-container{max-width:1280px}}}@media (min-width: 1536px){.container{max-width:1536px}}@media (min-width: 1536px){@media print{.print-container{max-width:1536px}}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .line.dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}div[widgetid=messageoverlay]{transform:translateY(calc(100% * (var(--slidev-slide-scale) - 1)))}.slidev-monaco-container{position:relative;margin:var(--slidev-code-margin);padding:var(--slidev-code-padding);line-height:var(--slidev-code-line-height);border-radius:var(--slidev-code-radius);background:var(--slidev-code-background)}.slidev-monaco-container .monaco-editor{--monaco-monospace-font: var(--slidev-code-font-family);--vscode-editor-background: var(--slidev-code-background);--vscode-editorGutter-background: var(--slidev-code-background)}.slidev-monaco-container .monaco-editor a,.slidev-monaco-container .monaco-editor a:hover{border-bottom:none}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:calc(13px * var(--slidev-slide-scale, 1))}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute,[absolute=""]{position:absolute}.fixed{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.bottom-20{bottom:5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5{right:1.25rem}.top-0{top:0}.top-1\/2{top:50%}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-1{margin:.25rem}.m-10{margin:2.5rem}.m-20{margin:5rem}.m-4{margin:1rem}.m-5{margin:1.25rem}.m-auto{margin:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.mb-10{margin-bottom:2.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.aspect-ratio-initial{aspect-ratio:initial}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-100{height:25rem}.h-20{height:5rem}.h-22px{height:22px}.h-3px{height:3px}.h-40px{height:40px}.h-5,.h5,[h5=""]{height:1.25rem}.h-6{height:1.5rem}.h-70{height:17.5rem}.h-80{height:20rem}.h-90{height:22.5rem}.h-95{height:23.75rem}.h-full,[h-full=""]{height:100%}.h1{height:.25rem}.h2{height:.5rem}.max-w-150{max-width:37.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-w-16{min-width:4rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-1px{width:1px}.w-22px{width:22px}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.flex,[flex=""],[flex~="~"]{display:flex}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-0{--un-translate-x:0;--un-translate-y:0;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-inside-avoid-page{break-inside:avoid-page}.break-after-page{break-after:page}.place-content-center{place-content:center}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4{gap:1rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""]{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border~=t]{border-top-width:1px}.border-gray-300\/50{border-color:#d1d5db80}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.\!border-none{border-style:none!important}.bg-black,[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray\/20{background-color:#9ca3af33}.bg-transparent{background-color:transparent}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.\!bg-opacity-75{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2{padding:.5rem}.\!p-4{padding:1rem!important}.px,.px-4,.px4,[p~=x-4]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2{padding-left:.5rem;padding-right:.5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-4{padding-top:1rem;padding-bottom:1rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}.text-opacity-85{--un-text-opacity:.85}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""]{opacity:1}.op20{opacity:.2}.op30{opacity:.3}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80{opacity:.8}.\!opacity-0{opacity:0!important}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.opacity-25{opacity:.25}.opacity-40{opacity:.4}[hover~=op100]:hover,.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@media (max-width: 767.9px){.lt-md\:hidden{display:none}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}} diff --git a/01-overview/assets/index-DCjvn3b2.js b/01-overview/assets/index-DCjvn3b2.js new file mode 100644 index 0000000..756d2d9 --- /dev/null +++ b/01-overview/assets/index-DCjvn3b2.js @@ -0,0 +1,51 @@ +const __vite__fileDeps=["assets/slidev/1-C7iqVxm_.js","assets/modules/vue-CnDFeQoy.js","assets/slidev/context-C6suSrgS.js","assets/modules/shiki-DeQJCler.js","assets/modules/shiki-BSchMNmt.css","assets/2-NtOujJdO.js","assets/slidev/two-cols-Sg1cj3NL.js","assets/3-CeTKme6P.js","assets/slidev/4-B3ZdCu9g.js","assets/slidev/default-CeBPafXo.js","assets/5-D8aSFY1a.js","assets/slidev/6-CFrSikeK.js","assets/7-D6Mbu72C.js","assets/slidev/8-DXGQUuv0.js","assets/slidev/9-CP2J6QLm.js","assets/10-BvyMk7kb.js","assets/slidev/11-BIg7j8YU.js","assets/slidev/12-BtcUC4Gn.js","assets/slidev/13-bCUUZQF4.js","assets/slidev/14-CwsPRv68.js","assets/slidev/15-BLKutZeJ.js","assets/16-ibNtBorL.js","assets/slidev/17-n3MKchv1.js","assets/18-gMfUrhCv.js","assets/slidev/19-GEv_1Rck.js","assets/20-DKIrS2xr.js","assets/slidev/21-BTjc_ckL.js","assets/22-DmbAwB-t.js","assets/slidev/23-D_F16ggt.js","assets/slidev/24-DWoQFB83.js","assets/slidev/25-C6P7SWDK.js","assets/26--oVPEWF9.js","assets/slidev/27-BdleMuJX.js","assets/slidev/28-CHAPH_Ik.js","assets/slidev/29-DZ6fVzj-.js","assets/30-CBMx7fGt.js","assets/31-CXjrG5we.js","assets/32-ByOMWVhg.js","assets/slidev/33-B_EXRXeJ.js","assets/slidev/34-DvquXM3k.js","assets/slidev/entry-BlAJ4omr.js","assets/modules/unplugin-icons-DFTLwknM.js","assets/slidev/overview-tjiJJMPz.js","assets/slidev/DrawingPreview-Dui7pBCf.js","assets/DrawingPreview-DJ7dOR_1.css","assets/slidev/IconButton-BcQKU8KC.js","assets/slidev/NoteDisplay-DT8BiPx0.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/ClicksSlider-BFxBWNO_.js","assets/ClicksSlider-qq1Ub2AL.css","assets/slidev/notes-BfATp3gG.js","assets/slidev/presenter-DpgahFDW.js","assets/slidev/ContextMenu-B_ofaILd.js","assets/ContextMenu-DSnskk1a.css","assets/slidev/DrawingControls-Wh4GcIDM.js","assets/DrawingControls-C5T1oZL5.css","assets/presenter-D5oC5Gjj.css","assets/slidev/play-CjlEe2CW.js","assets/play-CoA43pdi.css"],__vite__mapDeps=i=>i.map(i=>__vite__fileDeps[i]); +import{t as P,y as d,n as Ht,z as to,A as $n,B as ps,C as st,D as Q,E as no,G as so,H as oo,I as ms,J as k,K as ro,L as io,o as gs,b as ao,M as Pn,N as Kt,O as lo,P as co,Q as te,R as ys,S as Jt,T as vs,U as uo,d as fo,r as ho,c as po,V as mo,W as go,X as yo,Y as vo,Z as _o,_ as wo,$ as ko,a0 as bo,a1 as So,a2 as Mo,a3 as Oo,a4 as Eo,a5 as To,u as $o}from"./modules/vue-CnDFeQoy.js";import{T as Po}from"./modules/shiki-DeQJCler.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))s(o);new MutationObserver(o=>{for(const r of o)if(r.type==="childList")for(const i of r.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&s(i)}).observe(document,{childList:!0,subtree:!0});function n(o){const r={};return o.integrity&&(r.integrity=o.integrity),o.referrerPolicy&&(r.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?r.credentials="include":o.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function s(o){if(o.ep)return;o.ep=!0;const r=n(o);fetch(o.href,r)}})();function yt(t,e,n){return Math.min(n,Math.max(e,t))}function Lo(...t){return Co(t).reduce((e,n)=>e+n,0)}function Ao(t){return t=t??[],Array.isArray(t)?t:[t]}function Co(t){return Ao(t).flat(1)}function fl(...t){let e,n,s;t.length===1?(e=0,s=1,[n]=t):[e,n,s=1]=t;const o=[];let r=e;for(;re(n,s)).filter(Do))}const H={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:!0,monacoTypesSource:"local",monacoTypesAdditionalPackages:[],monacoRunAdditionalDeps:[],download:!1,export:{},info:!1,highlighter:"shiki",twoslash:!0,lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},dl="build",_s=P(H.aspectRatio??16/9),xo=P(H.canvasWidth??980),hl=d(()=>Math.ceil(xo.value/_s.value)),Ho=d(()=>Io(H.themeConfig||{},(t,e)=>[`--slidev-theme-${t}`,e]));function hn(t,e={},n){for(const s in t){const o=t[s],r=n?`${n}:${s}`:s;typeof o=="object"&&o!==null?hn(o,e,r):typeof o=="function"&&(e[r]=o)}return e}const jo={run:t=>t()},Ro=()=>jo,ws=typeof console.createTask<"u"?console.createTask:Ro;function No(t,e){const n=e.shift(),s=ws(n);return t.reduce((o,r)=>o.then(()=>s.run(()=>r(...e))),Promise.resolve())}function Fo(t,e){const n=e.shift(),s=ws(n);return Promise.all(t.map(o=>s.run(()=>o(...e))))}function tn(t,e){for(const n of[...t])n(e)}class Vo{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,n,s={}){if(!e||typeof n!="function")return()=>{};const o=e;let r;for(;this._deprecatedHooks[e];)r=this._deprecatedHooks[e],e=r.to;if(r&&!s.allowDeprecated){let i=r.message;i||(i=`${o} hook has been deprecated`+(r.to?`, please use ${r.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(i)||(console.warn(i),this._deprecatedMessages.add(i))}if(!n.name)try{Object.defineProperty(n,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(n),()=>{n&&(this.removeHook(e,n),n=void 0)}}hookOnce(e,n){let s,o=(...r)=>(typeof s=="function"&&s(),s=void 0,o=void 0,n(...r));return s=this.hook(e,o),s}removeHook(e,n){if(this._hooks[e]){const s=this._hooks[e].indexOf(n);s!==-1&&this._hooks[e].splice(s,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,n){this._deprecatedHooks[e]=typeof n=="string"?{to:n}:n;const s=this._hooks[e]||[];delete this._hooks[e];for(const o of s)this.hook(e,o)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const n in e)this.deprecateHook(n,e[n])}addHooks(e){const n=hn(e),s=Object.keys(n).map(o=>this.hook(o,n[o]));return()=>{for(const o of s.splice(0,s.length))o()}}removeHooks(e){const n=hn(e);for(const s in n)this.removeHook(s,n[s])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...n){return n.unshift(e),this.callHookWith(No,e,...n)}callHookParallel(e,...n){return n.unshift(e),this.callHookWith(Fo,e,...n)}callHookWith(e,n,...s){const o=this._before||this._after?{name:n,args:s,context:{}}:void 0;this._before&&tn(this._before,o);const r=e(n in this._hooks?[...this._hooks[n]]:[],s);return r instanceof Promise?r.finally(()=>{this._after&&o&&tn(this._after,o)}):(this._after&&o&&tn(this._after,o),r)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const n=this._before.indexOf(e);n!==-1&&this._before.splice(n,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const n=this._after.indexOf(e);n!==-1&&this._after.splice(n,1)}}}}function Uo(){return new Vo}function Bo(t){return Array.isArray(t)?t:[t]}const Wo=["title","titleTemplate","script","style","noscript"],$t=["base","meta","link","style","script","noscript"],zo=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],qo=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],ks=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],Ko=typeof window<"u";function Ln(t){let e=9;for(let n=0;n>>9)+65536).toString(16).substring(1,8).toLowerCase()}function zn(t){return t._h||Ln(t._d?t._d:`${t.tag}:${t.textContent||t.innerHTML||""}:${Object.entries(t.props).map(([e,n])=>`${e}:${String(n)}`).join(",")}`)}function bs(t,e){const{props:n,tag:s}=t;if(qo.includes(s))return s;if(s==="link"&&n.rel==="canonical")return"canonical";if(n.charset)return"charset";const o=["id"];s==="meta"&&o.push("name","property","http-equiv");for(const r of o)if(typeof n[r]<"u"){const i=String(n[r]);return e&&!e(i)?!1:`${s}:${r}:${i}`}return!1}function qn(t,e){return t==null?e||null:typeof t=="function"?t(e):t}async function Jo(t,e,n){const s={tag:t,props:await Ss(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(t)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(t))};return ks.forEach(o=>{const r=typeof s.props[o]<"u"?s.props[o]:n[o];typeof r<"u"&&((!["innerHTML","textContent","children"].includes(o)||Wo.includes(s.tag))&&(s[o==="children"?"innerHTML":o]=r),delete s.props[o])}),s.props.body&&(s.tagPosition="bodyClose",delete s.props.body),s.tag==="script"&&typeof s.innerHTML=="object"&&(s.innerHTML=JSON.stringify(s.innerHTML),s.props.type=s.props.type||"application/json"),Array.isArray(s.props.content)?s.props.content.map(o=>({...s,props:{...s.props,content:o}})):s}function Go(t,e){var s;const n=t==="class"?" ":";";return typeof e=="object"&&!Array.isArray(e)&&(e=Object.entries(e).filter(([,o])=>o).map(([o,r])=>t==="style"?`${o}:${r}`:o)),(s=Array.isArray(e)?e.join(n):e)==null?void 0:s.split(n).filter(o=>o.trim()).filter(Boolean).join(n)}async function Ss(t,e){for(const n of Object.keys(t)){if(["class","style"].includes(n)){t[n]=Go(n,t[n]);continue}if(t[n]instanceof Promise&&(t[n]=await t[n]),!e&&!ks.includes(n)){const s=String(t[n]),o=n.startsWith("data-");s==="true"||s===""?t[n]=o?"true":!0:t[n]||(o&&s==="false"?t[n]="false":delete t[n])}}return t}const Qo=10;async function Zo(t){const e=[];return Object.entries(t.resolvedInput).filter(([n,s])=>typeof s<"u"&&zo.includes(n)).forEach(([n,s])=>{const o=Bo(s);e.push(...o.map(r=>Jo(n,r,t)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((n,s)=>(n._e=t._i,t.mode&&(n._m=t.mode),n._p=(t._i<l&&l[c]||void 0,e):a=e[i],typeof a<"u"?(a||"").replace(/"/g,'\\"'):!1}let o=t;try{o=decodeURI(t)}catch{}return(o.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(i=>{const a=s(i.slice(1));typeof a=="string"&&(t=t.replace(new RegExp(`\\${i}(\\W|$)`,"g"),(l,c)=>`${a}${c}`).trim())}),t.includes(ae)&&(t.endsWith(ae)&&(t=t.slice(0,-ae.length).trim()),t.startsWith(ae)&&(t=t.slice(ae.length).trim()),t=t.replace(new RegExp(`\\${ae}\\s*\\${ae}`,"g"),ae),t=Pt(t,{separator:n},n)),t}async function Xo(t,e={}){var u;const n=e.document||t.resolvedOptions.document;if(!n||!t.dirty)return;const s={shouldRender:!0,tags:[]};if(await t.hooks.callHook("dom:beforeRender",s),!s.shouldRender)return;const o=(await t.resolveTags()).map(f=>({tag:f,id:$t.includes(f.tag)?zn(f):f.tag,shouldRender:!0}));let r=t._dom;if(!r){r={elMap:{htmlAttrs:n.documentElement,bodyAttrs:n.body}};for(const f of["body","head"]){const h=(u=n[f])==null?void 0:u.children,p=[];for(const m of[...h].filter(g=>$t.includes(g.tagName.toLowerCase()))){const g={tag:m.tagName.toLowerCase(),props:await Ss(m.getAttributeNames().reduce((_,w)=>({..._,[w]:m.getAttribute(w)}),{})),innerHTML:m.innerHTML};let y=1,v=bs(g);for(;v&&p.find(_=>_._d===v);)v=`${v}:${y++}`;g._d=v||void 0,p.push(g),r.elMap[m.getAttribute("data-hid")||zn(g)]=m}}}r.pendingSideEffects={...r.sideEffects||{}},r.sideEffects={};function i(f,h,p){const m=`${f}:${h}`;r.sideEffects[m]=p,delete r.pendingSideEffects[m]}function a({id:f,$el:h,tag:p}){const m=p.tag.endsWith("Attrs");r.elMap[f]=h,m||(["textContent","innerHTML"].forEach(g=>{p[g]&&p[g]!==h[g]&&(h[g]=p[g])}),i(f,"el",()=>{var g;(g=r.elMap[f])==null||g.remove(),delete r.elMap[f]}));for(const[g,y]of Object.entries(p._eventHandlers||{}))h.getAttribute(`data-${g}`)!==""&&((p.tag==="bodyAttrs"?n.defaultView:h).addEventListener(g.replace("on",""),y.bind(h)),h.setAttribute(`data-${g}`,""));Object.entries(p.props).forEach(([g,y])=>{const v=`attr:${g}`;if(g==="class")for(const _ of(y||"").split(" ").filter(Boolean))m&&i(f,`${v}:${_}`,()=>h.classList.remove(_)),!h.classList.contains(_)&&h.classList.add(_);else if(g==="style")for(const _ of(y||"").split(";").filter(Boolean)){const[w,...b]=_.split(":").map(E=>E.trim());i(f,`${v}:${_}:${w}`,()=>{h.style.removeProperty(w)}),h.style.setProperty(w,b.join(":"))}else h.getAttribute(g)!==y&&h.setAttribute(g,y===!0?"":String(y)),m&&i(f,v,()=>h.removeAttribute(g))})}const l=[],c={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const f of o){const{tag:h,shouldRender:p,id:m}=f;if(p){if(h.tag==="title"){n.title=h.textContent;continue}f.$el=f.$el||r.elMap[m],f.$el?a(f):$t.includes(h.tag)&&l.push(f)}}for(const f of l){const h=f.tag.tagPosition||"head";f.$el=n.createElement(f.tag.tag),a(f),c[h]=c[h]||n.createDocumentFragment(),c[h].appendChild(f.$el)}for(const f of o)await t.hooks.callHook("dom:renderTag",f,n,i);c.head&&n.head.appendChild(c.head),c.bodyOpen&&n.body.insertBefore(c.bodyOpen,n.body.firstChild),c.bodyClose&&n.body.appendChild(c.bodyClose),Object.values(r.pendingSideEffects).forEach(f=>f()),t._dom=r,t.dirty=!1,await t.hooks.callHook("dom:rendered",{renders:o})}async function er(t,e={}){const n=e.delayFn||(s=>setTimeout(s,10));return t._domUpdatePromise=t._domUpdatePromise||new Promise(s=>n(async()=>{await Xo(t,e),delete t._domUpdatePromise,s()}))}function tr(t){return e=>{var s,o;const n=((o=(s=e.resolvedOptions.document)==null?void 0:s.head.querySelector('script[id="unhead:payload"]'))==null?void 0:o.innerHTML)||!1;return n&&e.push(JSON.parse(n)),{mode:"client",hooks:{"entries:updated":function(r){er(r,t)}}}}}const nr=["templateParams","htmlAttrs","bodyAttrs"],sr={hooks:{"tag:normalise":function({tag:t}){["hid","vmid","key"].forEach(s=>{t.props[s]&&(t.key=t.props[s],delete t.props[s])});const n=bs(t)||(t.key?`${t.tag}:${t.key}`:!1);n&&(t._d=n)},"tags:resolve":function(t){const e={};t.tags.forEach(s=>{const o=(s.key?`${s.tag}:${s.key}`:s._d)||s._p,r=e[o];if(r){let a=s==null?void 0:s.tagDuplicateStrategy;if(!a&&nr.includes(s.tag)&&(a="merge"),a==="merge"){const l=r.props;["class","style"].forEach(c=>{l[c]&&(s.props[c]?(c==="style"&&!l[c].endsWith(";")&&(l[c]+=";"),s.props[c]=`${l[c]} ${s.props[c]}`):s.props[c]=l[c])}),e[o].props={...l,...s.props};return}else if(s._e===r._e){r._duped=r._duped||[],s._d=`${r._d}:${r._duped.length+1}`,r._duped.push(s);return}else if(jt(s)>jt(r))return}const i=Object.keys(s.props).length+(s.innerHTML?1:0)+(s.textContent?1:0);if($t.includes(s.tag)&&i===0){delete e[o];return}e[o]=s});const n=[];Object.values(e).forEach(s=>{const o=s._duped;delete s._duped,n.push(s),o&&n.push(...o)}),t.tags=n,t.tags=t.tags.filter(s=>!(s.tag==="meta"&&(s.props.name||s.props.property)&&!s.props.content))}}},or={mode:"server",hooks:{"tags:resolve":function(t){const e={};t.tags.filter(n=>["titleTemplate","templateParams","title"].includes(n.tag)&&n._m==="server").forEach(n=>{e[n.tag]=n.tag.startsWith("title")?n.textContent:n.props}),Object.keys(e).length&&t.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},rr=["script","link","bodyAttrs"],ir=t=>({hooks:{"tags:resolve":function(e){for(const n of e.tags.filter(s=>rr.includes(s.tag)))Object.entries(n.props).forEach(([s,o])=>{s.startsWith("on")&&typeof o=="function"&&(t.ssr&&Gn.includes(s)?n.props[s]=`this.dataset.${s}fired = true`:delete n.props[s],n._eventHandlers=n._eventHandlers||{},n._eventHandlers[s]=o)}),t.ssr&&n._eventHandlers&&(n.props.src||n.props.href)&&(n.key=n.key||Ln(n.props.src||n.props.href))},"dom:renderTag":function({$el:e,tag:n}){var s,o;for(const r of Object.keys((e==null?void 0:e.dataset)||{}).filter(i=>Gn.some(a=>`${a}fired`===i))){const i=r.replace("fired","");(o=(s=n._eventHandlers)==null?void 0:s[i])==null||o.call(e,new Event(i.replace("on","")))}}}}),ar=["link","style","script","noscript"],lr={hooks:{"tag:normalise":({tag:t})=>{t.key&&ar.includes(t.tag)&&(t.props["data-hid"]=t._h=Ln(t.key))}}},cr={hooks:{"tags:resolve":t=>{const e=n=>{var s;return(s=t.tags.find(o=>o._d===n))==null?void 0:s._p};for(const{prefix:n,offset:s}of Yo)for(const o of t.tags.filter(r=>typeof r.tagPriority=="string"&&r.tagPriority.startsWith(n))){const r=e(o.tagPriority.replace(n,""));typeof r<"u"&&(o._p=r+s)}t.tags.sort((n,s)=>n._p-s._p).sort((n,s)=>jt(n)-jt(s))}}},ur={meta:"content",link:"href",htmlAttrs:"lang"},fr=t=>({hooks:{"tags:resolve":e=>{var a;const{tags:n}=e,s=(a=n.find(l=>l.tag==="title"))==null?void 0:a.textContent,o=n.findIndex(l=>l.tag==="templateParams"),r=o!==-1?n[o].props:{},i=r.separator||"|";delete r.separator,r.pageTitle=Pt(r.pageTitle||s||"",r,i);for(const l of n.filter(c=>c.processTemplateParams!==!1)){const c=ur[l.tag];c&&typeof l.props[c]=="string"?l.props[c]=Pt(l.props[c],r,i):(l.processTemplateParams===!0||["titleTemplate","title"].includes(l.tag))&&["innerHTML","textContent"].forEach(u=>{typeof l[u]=="string"&&(l[u]=Pt(l[u],r,i))})}t._templateParams=r,t._separator=i,e.tags=n.filter(l=>l.tag!=="templateParams")}}}),dr={hooks:{"tags:resolve":t=>{const{tags:e}=t;let n=e.findIndex(o=>o.tag==="titleTemplate");const s=e.findIndex(o=>o.tag==="title");if(s!==-1&&n!==-1){const o=qn(e[n].textContent,e[s].textContent);o!==null?e[s].textContent=o||e[s].textContent:delete e[s]}else if(n!==-1){const o=qn(e[n].textContent);o!==null&&(e[n].textContent=o,e[n].tag="title",n=-1)}n!==-1&&delete e[n],t.tags=e.filter(Boolean)}}},hr={hooks:{"tags:afterResolve":function(t){for(const e of t.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{a.dirty=!0,e.callHook("entries:updated",a)};let o=0,r=[];const i=[],a={plugins:i,dirty:!1,resolvedOptions:t,hooks:e,headEntries(){return r},use(l){const c=typeof l=="function"?l(a):l;(!c.key||!i.some(u=>u.key===c.key))&&(i.push(c),Qn(c.mode,n)&&e.addHooks(c.hooks||{}))},push(l,c){c==null||delete c.head;const u={_i:o++,input:l,...c};return Qn(u.mode,n)&&(r.push(u),s()),{dispose(){r=r.filter(f=>f._i!==u._i),e.callHook("entries:updated",a),s()},patch(f){r=r.map(h=>(h._i===u._i&&(h.input=u.input=f),h)),s()}}},async resolveTags(){const l={tags:[],entries:[...r]};await e.callHook("entries:resolve",l);for(const c of l.entries){const u=c.resolvedInput||c.input;if(c.resolvedInput=await(c.transform?c.transform(u):u),c.resolvedInput)for(const f of await Zo(c)){const h={tag:f,entry:c,resolvedOptions:a.resolvedOptions};await e.callHook("tag:normalise",h),l.tags.push(h.tag)}}return await e.callHook("tags:beforeResolve",l),await e.callHook("tags:resolve",l),await e.callHook("tags:afterResolve",l),l.tags},ssr:n};return[sr,or,ir,lr,cr,fr,dr,hr,...(t==null?void 0:t.plugins)||[]].forEach(l=>a.use(l)),a.hooks.callHook("init",a),a}function gr(){return Ms}const yr=to.startsWith("3");function vr(t){return typeof t=="function"?t():$n(t)}function Rt(t,e=""){if(t instanceof Promise)return t;const n=vr(t);return!t||!n?n:Array.isArray(n)?n.map(s=>Rt(s,e)):typeof n=="object"?Object.fromEntries(Object.entries(n).map(([s,o])=>s==="titleTemplate"||s.startsWith("on")?[s,$n(o)]:[s,Rt(o,s)])):n}const _r={hooks:{"entries:resolve":function(t){for(const e of t.entries)e.resolvedInput=Rt(e.input)}}},Os="usehead";function wr(t){return{install(n){yr&&(n.config.globalProperties.$unhead=t,n.config.globalProperties.$head=t,n.provide(Os,t))}}.install}function kr(t={}){t.domDelayFn=t.domDelayFn||(n=>Ht(()=>setTimeout(()=>n(),0)));const e=pr(t);return e.use(_r),e.install=wr(e),e}const Zn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Yn="__unhead_injection_handler__";function br(){if(Yn in Zn)return Zn[Yn]();const t=ps(Os);return t||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),t||gr()}function Sr(t,e={}){const n=e.head||br();if(n)return n.ssr?n.push(t,e):Mr(n,t,e)}function Mr(t,e,n={}){const s=P(!1),o=P({});st(()=>{o.value=s.value?{}:Rt(e)});const r=t.push(o.value,n);return Q(o,a=>{r.patch(a)}),ms()&&(no(()=>{r.dispose()}),so(()=>{s.value=!0}),oo(()=>{s.value=!1})),r}function Es(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function Z(t,e,n){Object.defineProperty(t,e,{value:n,writable:!0,enumerable:!1})}const Je=k({page:0,clicks:0});let Or=[],Er=[];Z(Je,"$syncUp",!0);Z(Je,"$syncDown",!0);Z(Je,"$paused",!1);Z(Je,"$onSet",t=>Or.push(t));Z(Je,"$onPatch",t=>Er.push(t));Es();Z(Je,"$patch",async()=>!1);function Ts(t,e,n=!1){const s=[];let o=!1,r=!1,i,a;const l=k(e);function c(p){s.push(p)}function u(p,m){l[p]!==m&&(clearTimeout(i),o=!0,l[p]=m,i=setTimeout(()=>o=!1,0))}function f(p){o||(clearTimeout(a),r=!0,Object.entries(p).forEach(([m,g])=>{l[m]=g}),a=setTimeout(()=>r=!1,0))}function h(p){let m;n?n&&window.addEventListener("storage",y=>{y&&y.key===p&&y.newValue&&f(JSON.parse(y.newValue))}):(m=new BroadcastChannel(p),m.addEventListener("message",y=>f(y.data)));function g(){!n&&m&&!r?m.postMessage(ro(l)):n&&!r&&window.localStorage.setItem(p,JSON.stringify(l)),o||s.forEach(y=>y(l))}if(Q(l,g,{deep:!0,flush:"sync"}),n){const y=window.localStorage.getItem(p);y&&f(JSON.parse(y))}}return{init:h,onPatch:c,patch:u,state:l}}const{init:Tr,onPatch:$r,patch:lt,state:pl}=Ts(Je,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),Ge=k({});let Pr=[],Lr=[];Z(Ge,"$syncUp",!0);Z(Ge,"$syncDown",!0);Z(Ge,"$paused",!1);Z(Ge,"$onSet",t=>Pr.push(t));Z(Ge,"$onPatch",t=>Lr.push(t));Es();Z(Ge,"$patch",async()=>!1);const{init:Ar,onPatch:ml,patch:gl,state:yl}=Ts(Ge,{},!1),Gt="$$slidev-clicks-context",An="$$slidev-page",$s="$$slidev-slide-element",Cr="$$slidev-slide-scale",Dr="$$slidev-context",vl="$$slidev-route",Cn="$$slidev-render-context",_l="$$slidev-active",Ir="$$slidev-fontmatter",xr="$$slidev-slide-zoom",Lt="slidev-vclick-target",ct="slidev-vclick-hidden",ut="slidev-vclick-fade",nn="slidev-vclick-hidden-explicitly",sn="slidev-vclick-current",on="slidev-vclick-prior",pn=999999,Hr=["localhost","127.0.0.1"],jr=["clicks","clicksStart","disabled","hide","hideInToc","layout","level","preload","routeAlias","src","title","transition","zoom","dragPos"],wl=[...jr,"theme","titleTemplate","info","author","keywords","presenter","download","exportFilename","export","highlighter","lineNumbers","monaco","monacoTypesSource","monacoTypesAdditionalPackages","monacoRunAdditionalDeps","remoteAssets","selectable","record","colorSchema","routerMode","aspectRatio","canvasWidth","themeConfig","favicon","plantUmlServer","fonts","defaults","drawings","htmlAttrs","mdc","contextMenu"],Ps=P(!1),Dn=Symbol.for("yaml.alias"),Rr=Symbol.for("yaml.document"),Ke=Symbol.for("yaml.map"),Ls=Symbol.for("yaml.pair"),In=Symbol.for("yaml.scalar"),kt=Symbol.for("yaml.seq"),re=Symbol.for("yaml.node.type"),rt=t=>!!t&&typeof t=="object"&&t[re]===Dn,Qt=t=>!!t&&typeof t=="object"&&t[re]===Rr,As=t=>!!t&&typeof t=="object"&&t[re]===Ke,U=t=>!!t&&typeof t=="object"&&t[re]===Ls,F=t=>!!t&&typeof t=="object"&&t[re]===In,xn=t=>!!t&&typeof t=="object"&&t[re]===kt;function J(t){if(t&&typeof t=="object")switch(t[re]){case Ke:case kt:return!0}return!1}function q(t){if(t&&typeof t=="object")switch(t[re]){case Dn:case Ke:case In:case kt:return!0}return!1}const Nr=t=>(F(t)||J(t))&&!!t.anchor,We=Symbol("break visit"),Fr=Symbol("skip children"),pt=Symbol("remove node");function vt(t,e){const n=Vr(e);Qt(t)?Xe(null,t.contents,n,Object.freeze([t]))===pt&&(t.contents=null):Xe(null,t,n,Object.freeze([]))}vt.BREAK=We;vt.SKIP=Fr;vt.REMOVE=pt;function Xe(t,e,n,s){const o=Ur(t,e,n,s);if(q(o)||U(o))return Br(t,s,o),Xe(t,o,n,s);if(typeof o!="symbol"){if(J(e)){s=Object.freeze(s.concat(e));for(let r=0;ree(s,String(o),n));if(t&&typeof t.toJSON=="function"){if(!n||!Nr(t))return t.toJSON(e,n);const s={aliasCount:0,count:1,res:void 0};n.anchors.set(t,s),n.onCreate=r=>{s.res=r,delete n.onCreate};const o=t.toJSON(e,n);return n.onCreate&&n.onCreate(o),o}return typeof t=="bigint"&&!(n!=null&&n.keep)?Number(t):t}class Hn{constructor(e){Object.defineProperty(this,re,{value:e})}clone(){const e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:n,maxAliasCount:s,onAnchor:o,reviver:r}={}){if(!Qt(e))throw new TypeError("A document argument is required");const i={anchors:new Map,doc:e,keep:!0,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof s=="number"?s:100},a=ee(this,"",i);if(typeof o=="function")for(const{count:l,res:c}of i.anchors.values())o(c,l);return typeof r=="function"?ht(r,{"":a},"",a):a}}class Wr extends Hn{constructor(e){super(Dn),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e){let n;return vt(e,{Node:(s,o)=>{if(o===this)return vt.BREAK;o.anchor===this.source&&(n=o)}}),n}toJSON(e,n){if(!n)return{source:this.source};const{anchors:s,doc:o,maxAliasCount:r}=n,i=this.resolve(o);if(!i){const l=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(l)}let a=s.get(i);if(a||(ee(i,null,n),a=s.get(i)),!a||a.res===void 0){const l="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(l)}if(r>=0&&(a.count+=1,a.aliasCount===0&&(a.aliasCount=At(o,i,s)),a.count*a.aliasCount>r)){const l="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(l)}return a.res}toString(e,n,s){const o=`*${this.source}`;if(e){if(Cs(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){const r=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(r)}if(e.implicitKey)return`${o} `}return o}}function At(t,e,n){if(rt(e)){const s=e.resolve(t),o=n&&s&&n.get(s);return o?o.count*o.aliasCount:0}else if(J(e)){let s=0;for(const o of e.items){const r=At(t,o,n);r>s&&(s=r)}return s}else if(U(e)){const s=At(t,e.key,n),o=At(t,e.value,n);return Math.max(s,o)}return 1}const Ds=t=>!t||typeof t!="function"&&typeof t!="object";class R extends Hn{constructor(e){super(In),this.value=e}toJSON(e,n){return n!=null&&n.keep?this.value:ee(this.value,e,n)}toString(){return String(this.value)}}R.BLOCK_FOLDED="BLOCK_FOLDED";R.BLOCK_LITERAL="BLOCK_LITERAL";R.PLAIN="PLAIN";R.QUOTE_DOUBLE="QUOTE_DOUBLE";R.QUOTE_SINGLE="QUOTE_SINGLE";const zr="tag:yaml.org,2002:";function qr(t,e,n){if(e){const s=n.filter(r=>r.tag===e),o=s.find(r=>!r.format)??s[0];if(!o)throw new Error(`Tag ${e} not found`);return o}return n.find(s=>{var o;return((o=s.identify)==null?void 0:o.call(s,t))&&!s.format})}function Nt(t,e,n){var f,h,p;if(Qt(t)&&(t=t.contents),q(t))return t;if(U(t)){const m=(h=(f=n.schema[Ke]).createNode)==null?void 0:h.call(f,n.schema,null,n);return m.items.push(t),m}(t instanceof String||t instanceof Number||t instanceof Boolean||typeof BigInt<"u"&&t instanceof BigInt)&&(t=t.valueOf());const{aliasDuplicateObjects:s,onAnchor:o,onTagObj:r,schema:i,sourceObjects:a}=n;let l;if(s&&t&&typeof t=="object"){if(l=a.get(t),l)return l.anchor||(l.anchor=o(t)),new Wr(l.anchor);l={anchor:null,node:null},a.set(t,l)}e!=null&&e.startsWith("!!")&&(e=zr+e.slice(2));let c=qr(t,e,i.tags);if(!c){if(t&&typeof t.toJSON=="function"&&(t=t.toJSON()),!t||typeof t!="object"){const m=new R(t);return l&&(l.node=m),m}c=t instanceof Map?i[Ke]:Symbol.iterator in Object(t)?i[kt]:i[Ke]}r&&(r(c),delete n.onTagObj);const u=c!=null&&c.createNode?c.createNode(n.schema,t,n):typeof((p=c==null?void 0:c.nodeClass)==null?void 0:p.from)=="function"?c.nodeClass.from(n.schema,t,n):new R(t);return e?u.tag=e:c.default||(u.tag=c.tag),l&&(l.node=u),u}function Xn(t,e,n){let s=n;for(let o=e.length-1;o>=0;--o){const r=e[o];if(typeof r=="number"&&Number.isInteger(r)&&r>=0){const i=[];i[r]=s,s=i}else s=new Map([[r,s]])}return Nt(s,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:t,sourceObjects:new Map})}const Kr=t=>t==null||typeof t=="object"&&!!t[Symbol.iterator]().next().done;class jn extends Hn{constructor(e,n){super(e),Object.defineProperty(this,"schema",{value:n,configurable:!0,enumerable:!1,writable:!0})}clone(e){const n=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(n.schema=e),n.items=n.items.map(s=>q(s)||U(s)?s.clone(e):s),this.range&&(n.range=this.range.slice()),n}addIn(e,n){if(Kr(e))this.add(n);else{const[s,...o]=e,r=this.get(s,!0);if(J(r))r.addIn(o,n);else if(r===void 0&&this.schema)this.set(s,Xn(this.schema,o,n));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${o}`)}}deleteIn(e){const[n,...s]=e;if(s.length===0)return this.delete(n);const o=this.get(n,!0);if(J(o))return o.deleteIn(s);throw new Error(`Expected YAML collection at ${n}. Remaining path: ${s}`)}getIn(e,n){const[s,...o]=e,r=this.get(s,!0);return o.length===0?!n&&F(r)?r.value:r:J(r)?r.getIn(o,n):void 0}hasAllNullValues(e){return this.items.every(n=>{if(!U(n))return!1;const s=n.value;return s==null||e&&F(s)&&s.value==null&&!s.commentBefore&&!s.comment&&!s.tag})}hasIn(e){const[n,...s]=e;if(s.length===0)return this.has(n);const o=this.get(n,!0);return J(o)?o.hasIn(s):!1}setIn(e,n){const[s,...o]=e;if(o.length===0)this.set(s,n);else{const r=this.get(s,!0);if(J(r))r.setIn(o,n);else if(r===void 0&&this.schema)this.set(s,Xn(this.schema,o,n));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${o}`)}}}jn.maxFlowStringSingleLineLength=60;const Jr=t=>t.replace(/^(?!$)(?: $)?/gm,"#");function _t(t,e){return/^\n+$/.test(t)?t.substring(1):e?t.replace(/^(?! *$)/gm,e):t}const et=(t,e,n)=>t.endsWith(` +`)?_t(n,e):n.includes(` +`)?` +`+_t(n,e):(t.endsWith(" ")?"":" ")+n,Is="flow",mn="block",Ct="quoted";function Zt(t,e,n="flow",{indentAtStart:s,lineWidth:o=80,minContentWidth:r=20,onFold:i,onOverflow:a}={}){if(!o||o<0)return t;const l=Math.max(1+r,1+o-e.length);if(t.length<=l)return t;const c=[],u={};let f=o-e.length;typeof s=="number"&&(s>o-Math.max(2,r)?c.push(0):f=o-s);let h,p,m=!1,g=-1,y=-1,v=-1;n===mn&&(g=es(t,g,e.length),g!==-1&&(f=g+l));for(let w;w=t[g+=1];){if(n===Ct&&w==="\\"){switch(y=g,t[g+1]){case"x":g+=3;break;case"u":g+=5;break;case"U":g+=9;break;default:g+=1}v=g}if(w===` +`)n===mn&&(g=es(t,g,e.length)),f=g+e.length+l,h=void 0;else{if(w===" "&&p&&p!==" "&&p!==` +`&&p!==" "){const b=t[g+1];b&&b!==" "&&b!==` +`&&b!==" "&&(h=g)}if(g>=f)if(h)c.push(h),f=h+l,h=void 0;else if(n===Ct){for(;p===" "||p===" ";)p=w,w=t[g+=1],m=!0;const b=g>v+1?g-2:y-1;if(u[b])return t;c.push(b),u[b]=!0,f=b+l,h=void 0}else m=!0}p=w}if(m&&a&&a(),c.length===0)return t;i&&i();let _=t.slice(0,c[0]);for(let w=0;w({indentAtStart:e?t.indent.length:t.indentAtStart,lineWidth:t.options.lineWidth,minContentWidth:t.options.minContentWidth}),Xt=t=>/^(%|---|\.\.\.)/m.test(t);function Gr(t,e,n){if(!e||e<0)return!1;const s=e-n,o=t.length;if(o<=s)return!1;for(let r=0,i=0;rs)return!0;if(i=r+1,o-i<=s)return!1}return!0}function mt(t,e){const n=JSON.stringify(t);if(e.options.doubleQuotedAsJSON)return n;const{implicitKey:s}=e,o=e.options.doubleQuotedMinMultiLineLength,r=e.indent||(Xt(t)?" ":"");let i="",a=0;for(let l=0,c=n[l];c;c=n[++l])if(c===" "&&n[l+1]==="\\"&&n[l+2]==="n"&&(i+=n.slice(a,l)+"\\ ",l+=1,a=l,c="\\"),c==="\\")switch(n[l+1]){case"u":{i+=n.slice(a,l);const u=n.substr(l+2,4);switch(u){case"0000":i+="\\0";break;case"0007":i+="\\a";break;case"000b":i+="\\v";break;case"001b":i+="\\e";break;case"0085":i+="\\N";break;case"00a0":i+="\\_";break;case"2028":i+="\\L";break;case"2029":i+="\\P";break;default:u.substr(0,2)==="00"?i+="\\x"+u.substr(2):i+=n.substr(l,6)}l+=5,a=l+1}break;case"n":if(s||n[l+2]==='"'||n.length +`;let f,h;for(h=n.length;h>0;--h){const M=n[h-1];if(M!==` +`&&M!==" "&&M!==" ")break}let p=n.substring(h);const m=p.indexOf(` +`);m===-1?f="-":n===p||m!==p.length-1?(f="+",r&&r()):f="",p&&(n=n.slice(0,-p.length),p[p.length-1]===` +`&&(p=p.slice(0,-1)),p=p.replace(yn,`$&${c}`));let g=!1,y,v=-1;for(y=0;y")+(g?c?"2":"1":"")+f;if(t&&(b+=" "+a(t.replace(/ ?[\r\n]+/g," ")),o&&o()),u)return n=n.replace(/\n+/g,`$&${c}`),`${b} +${c}${_}${n}${p}`;n=n.replace(/\n+/g,` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${c}`);const E=Zt(`${_}${n}${p}`,c,mn,Yt(s,!0));return`${b} +${c}${E}`}function Qr(t,e,n,s){const{type:o,value:r}=t,{actualString:i,implicitKey:a,indent:l,indentStep:c,inFlow:u}=e;if(a&&r.includes(` +`)||u&&/[[\]{},]/.test(r))return tt(r,e);if(!r||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(r))return a||u||!r.includes(` +`)?tt(r,e):Dt(t,e,n,s);if(!a&&!u&&o!==R.PLAIN&&r.includes(` +`))return Dt(t,e,n,s);if(Xt(r)){if(l==="")return e.forceBlockIndent=!0,Dt(t,e,n,s);if(a&&l===c)return tt(r,e)}const f=r.replace(/\n+/g,`$& +${l}`);if(i){const h=g=>{var y;return g.default&&g.tag!=="tag:yaml.org,2002:str"&&((y=g.test)==null?void 0:y.test(f))},{compat:p,tags:m}=e.doc.schema;if(m.some(h)||p!=null&&p.some(h))return tt(r,e)}return a?f:Zt(f,l,Is,Yt(e,!1))}function Zr(t,e,n,s){const{implicitKey:o,inFlow:r}=e,i=typeof t.value=="string"?t:Object.assign({},t,{value:String(t.value)});let{type:a}=t;a!==R.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(i.value)&&(a=R.QUOTE_DOUBLE);const l=u=>{switch(u){case R.BLOCK_FOLDED:case R.BLOCK_LITERAL:return o||r?tt(i.value,e):Dt(i,e,n,s);case R.QUOTE_DOUBLE:return mt(i.value,e);case R.QUOTE_SINGLE:return gn(i.value,e);case R.PLAIN:return Qr(i,e,n,s);default:return null}};let c=l(a);if(c===null){const{defaultKeyType:u,defaultStringType:f}=e.options,h=o&&u||f;if(c=l(h),c===null)throw new Error(`Unsupported default string type ${h}`)}return c}function Yr(t,e){const n=Object.assign({blockQuote:!0,commentString:Jr,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},t.schema.toStringOptions,e);let s;switch(n.collectionStyle){case"block":s=!1;break;case"flow":s=!0;break;default:s=null}return{anchors:new Set,doc:t,flowCollectionPadding:n.flowCollectionPadding?" ":"",indent:"",indentStep:typeof n.indent=="number"?" ".repeat(n.indent):" ",inFlow:s,options:n}}function Xr(t,e){var o;if(e.tag){const r=t.filter(i=>i.tag===e.tag);if(r.length>0)return r.find(i=>i.format===e.format)??r[0]}let n,s;if(F(e)){s=e.value;const r=t.filter(i=>{var a;return(a=i.identify)==null?void 0:a.call(i,s)});n=r.find(i=>i.format===e.format)??r.find(i=>!i.format)}else s=e,n=t.find(r=>r.nodeClass&&s instanceof r.nodeClass);if(!n){const r=((o=s==null?void 0:s.constructor)==null?void 0:o.name)??typeof s;throw new Error(`Tag not resolved for ${r} value`)}return n}function ei(t,e,{anchors:n,doc:s}){if(!s.directives)return"";const o=[],r=(F(t)||J(t))&&t.anchor;r&&Cs(r)&&(n.add(r),o.push(`&${r}`));const i=t.tag?t.tag:e.default?null:e.tag;return i&&o.push(s.directives.tagString(i)),o.join(" ")}function Ft(t,e,n,s){var l;if(U(t))return t.toString(e,n,s);if(rt(t)){if(e.doc.directives)return t.toString(e);if((l=e.resolvedAliases)!=null&&l.has(t))throw new TypeError("Cannot stringify circular structure without alias nodes");e.resolvedAliases?e.resolvedAliases.add(t):e.resolvedAliases=new Set([t]),t=t.resolve(e.doc)}let o;const r=q(t)?t:e.doc.createNode(t,{onTagObj:c=>o=c});o||(o=Xr(e.doc.schema.tags,r));const i=ei(r,o,e);i.length>0&&(e.indentAtStart=(e.indentAtStart??0)+i.length+1);const a=typeof o.stringify=="function"?o.stringify(r,e,n,s):F(r)?Zr(r,e,n,s):r.toString(e,n,s);return i?F(r)||a[0]==="{"||a[0]==="["?`${i} ${a}`:`${i} +${e.indent}${a}`:a}function ti({key:t,value:e},n,s,o){const{allNullValues:r,doc:i,indent:a,indentStep:l,options:{commentString:c,indentSeq:u,simpleKeys:f}}=n;let h=q(t)&&t.comment||null;if(f){if(h)throw new Error("With simple keys, key nodes cannot have comments");if(J(t)){const L="With simple keys, collection cannot be used as a key value";throw new Error(L)}}let p=!f&&(!t||h&&e==null&&!n.inFlow||J(t)||(F(t)?t.type===R.BLOCK_FOLDED||t.type===R.BLOCK_LITERAL:typeof t=="object"));n=Object.assign({},n,{allNullValues:!1,implicitKey:!p&&(f||!r),indent:a+l});let m=!1,g=!1,y=Ft(t,n,()=>m=!0,()=>g=!0);if(!p&&!n.inFlow&&y.length>1024){if(f)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");p=!0}if(n.inFlow){if(r||e==null)return m&&s&&s(),y===""?"?":p?`? ${y}`:y}else if(r&&!f||e==null&&p)return y=`? ${y}`,h&&!m?y+=et(y,n.indent,c(h)):g&&o&&o(),y;m&&(h=null),p?(h&&(y+=et(y,n.indent,c(h))),y=`? ${y} +${a}:`):(y=`${y}:`,h&&(y+=et(y,n.indent,c(h))));let v,_,w;q(e)?(v=!!e.spaceBefore,_=e.commentBefore,w=e.comment):(v=!1,_=null,w=null,e&&typeof e=="object"&&(e=i.createNode(e))),n.implicitKey=!1,!p&&!h&&F(e)&&(n.indentAtStart=y.length+1),g=!1,!u&&l.length>=2&&!n.inFlow&&!p&&xn(e)&&!e.flow&&!e.tag&&!e.anchor&&(n.indent=n.indent.substring(2));let b=!1;const E=Ft(e,n,()=>b=!0,()=>g=!0);let M=" ";if(h||v||_){if(M=v?` +`:"",_){const L=c(_);M+=` +${_t(L,n.indent)}`}E===""&&!n.inFlow?M===` +`&&(M=` + +`):M+=` +${n.indent}`}else if(!p&&J(e)){const L=E[0],A=E.indexOf(` +`),I=A!==-1,V=n.inFlow??e.flow??e.items.length===0;if(I||!V){let ne=!1;if(I&&(L==="&"||L==="!")){let $=E.indexOf(" ");L==="&"&&$!==-1&&$t===ts||F(t)&&t.value===ts&&(!t.type||t.type===R.PLAIN);function rn(t,e,n){const s=t&&rt(n)?n.resolve(t.doc):n;if(!As(s))throw new Error("Merge sources must be maps or map aliases");const o=s.toJSON(null,t,Map);for(const[r,i]of o)e instanceof Map?e.has(r)||e.set(r,i):e instanceof Set?e.add(r):Object.prototype.hasOwnProperty.call(e,r)||Object.defineProperty(e,r,{value:i,writable:!0,enumerable:!0,configurable:!0});return e}function oi(t,e,n){if(e===null)return"";if(typeof e!="object")return String(e);if(q(t)&&(n!=null&&n.doc)){const s=Yr(n.doc,{});s.anchors=new Set;for(const r of n.anchors.keys())s.anchors.add(r.anchor);s.inFlow=!0,s.inStringifyKey=!0;const o=t.toString(s);if(!n.mapKeyWarned){let r=JSON.stringify(o);r.length>40&&(r=r.substring(0,36)+'..."'),ni(n.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${r}. Set mapAsMap: true to use object keys.`),n.mapKeyWarned=!0}return o}return JSON.stringify(e)}function Rn(t,e,n){const s=Nt(t,void 0,n),o=Nt(e,void 0,n);return new ie(s,o)}class ie{constructor(e,n=null){Object.defineProperty(this,re,{value:Ls}),this.key=e,this.value=n}clone(e){let{key:n,value:s}=this;return q(n)&&(n=n.clone(e)),q(s)&&(s=s.clone(e)),new ie(n,s)}toJSON(e,n){const s=n!=null&&n.mapAsMap?new Map:{};return xs(n,s,this)}toString(e,n,s){return e!=null&&e.doc?ti(this,e,n,s):JSON.stringify(this)}}function Hs(t,e,n){return(e.inFlow??t.flow?ii:ri)(t,e,n)}function ri({comment:t,items:e},n,{blockItemPrefix:s,flowChars:o,itemIndent:r,onChompKeep:i,onComment:a}){const{indent:l,options:{commentString:c}}=n,u=Object.assign({},n,{indent:r,type:null});let f=!1;const h=[];for(let m=0;my=null,()=>f=!0);y&&(v+=et(v,r,c(y))),f&&y&&(f=!1),h.push(s+v)}let p;if(h.length===0)p=o.start+o.end;else{p=h[0];for(let m=1;my=null);mu||v.includes(` +`))&&(c=!0),f.push(v),u=f.length}const{start:h,end:p}=n;if(f.length===0)return h+p;if(!c){const m=f.reduce((g,y)=>g+y.length+2,2);c=e.options.lineWidth>0&&m>e.options.lineWidth}if(c){let m=h;for(const g of f)m+=g?` +${r}${o}${g}`:` +`;return`${m} +${o}${p}`}else return`${h}${i}${f.join(" ")}${i}${p}`}function Vt({indent:t,options:{commentString:e}},n,s,o){if(s&&o&&(s=s.replace(/^\n+/,"")),s){const r=_t(e(s),t);n.push(r.trimStart())}}function qe(t,e){const n=F(e)?e.value:e;for(const s of t)if(U(s)&&(s.key===e||s.key===n||F(s.key)&&s.key.value===n))return s}class Ze extends jn{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(Ke,e),this.items=[]}static from(e,n,s){const{keepUndefined:o,replacer:r}=s,i=new this(e),a=(l,c)=>{if(typeof r=="function")c=r.call(n,l,c);else if(Array.isArray(r)&&!r.includes(l))return;(c!==void 0||o)&&i.items.push(Rn(l,c,s))};if(n instanceof Map)for(const[l,c]of n)a(l,c);else if(n&&typeof n=="object")for(const l of Object.keys(n))a(l,n[l]);return typeof e.sortMapEntries=="function"&&i.items.sort(e.sortMapEntries),i}add(e,n){var i;let s;U(e)?s=e:!e||typeof e!="object"||!("key"in e)?s=new ie(e,e==null?void 0:e.value):s=new ie(e.key,e.value);const o=qe(this.items,s.key),r=(i=this.schema)==null?void 0:i.sortMapEntries;if(o){if(!n)throw new Error(`Key ${s.key} already set`);F(o.value)&&Ds(s.value)?o.value.value=s.value:o.value=s.value}else if(r){const a=this.items.findIndex(l=>r(s,l)<0);a===-1?this.items.push(s):this.items.splice(a,0,s)}else this.items.push(s)}delete(e){const n=qe(this.items,e);return n?this.items.splice(this.items.indexOf(n),1).length>0:!1}get(e,n){const s=qe(this.items,e),o=s==null?void 0:s.value;return(!n&&F(o)?o.value:o)??void 0}has(e){return!!qe(this.items,e)}set(e,n){this.add(new ie(e,n),!0)}toJSON(e,n,s){const o=s?new s:n!=null&&n.mapAsMap?new Map:{};n!=null&&n.onCreate&&n.onCreate(o);for(const r of this.items)xs(n,o,r);return o}toString(e,n,s){if(!e)return JSON.stringify(this);for(const o of this.items)if(!U(o))throw new Error(`Map items must all be pairs; found ${JSON.stringify(o)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),Hs(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:s,onComment:n})}}class js extends jn{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(kt,e),this.items=[]}add(e){this.items.push(e)}delete(e){const n=St(e);return typeof n!="number"?!1:this.items.splice(n,1).length>0}get(e,n){const s=St(e);if(typeof s!="number")return;const o=this.items[s];return!n&&F(o)?o.value:o}has(e){const n=St(e);return typeof n=="number"&&n=0?e:null}function ai(t,e,n){const{replacer:s}=n,o=new js(t);o.tag="tag:yaml.org,2002:pairs";let r=0;if(e&&Symbol.iterator in Object(e))for(let i of e){typeof s=="function"&&(i=s.call(e,String(r++),i));let a,l;if(Array.isArray(i))if(i.length===2)a=i[0],l=i[1];else throw new TypeError(`Expected [key, value] tuple: ${i}`);else if(i&&i instanceof Object){const c=Object.keys(i);if(c.length===1)a=c[0],l=i[a];else throw new TypeError(`Expected tuple with one key, not ${c.length} keys`)}else a=i;o.items.push(Rn(a,l,n))}return o}class Nn extends js{constructor(){super(),this.add=Ze.prototype.add.bind(this),this.delete=Ze.prototype.delete.bind(this),this.get=Ze.prototype.get.bind(this),this.has=Ze.prototype.has.bind(this),this.set=Ze.prototype.set.bind(this),this.tag=Nn.tag}toJSON(e,n){if(!n)return super.toJSON(e);const s=new Map;n!=null&&n.onCreate&&n.onCreate(s);for(const o of this.items){let r,i;if(U(o)?(r=ee(o.key,"",n),i=ee(o.value,r,n)):r=ee(o,"",n),s.has(r))throw new Error("Ordered maps must not include duplicate keys");s.set(r,i)}return s}static from(e,n,s){const o=ai(e,n,s),r=new this;return r.items=o.items,r}}Nn.tag="tag:yaml.org,2002:omap";class Fn extends Ze{constructor(e){super(e),this.tag=Fn.tag}add(e){let n;U(e)?n=e:e&&typeof e=="object"&&"key"in e&&"value"in e&&e.value===null?n=new ie(e.key,null):n=new ie(e,null),qe(this.items,n.key)||this.items.push(n)}get(e,n){const s=qe(this.items,e);return!n&&U(s)?F(s.key)?s.key.value:s.key:s}set(e,n){if(typeof n!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof n}`);const s=qe(this.items,e);s&&!n?this.items.splice(this.items.indexOf(s),1):!s&&n&&this.items.push(new ie(e))}toJSON(e,n){return super.toJSON(e,n,Set)}toString(e,n,s){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),n,s);throw new Error("Set items must all have null values")}static from(e,n,s){const{replacer:o}=s,r=new this(e);if(n&&Symbol.iterator in Object(n))for(let i of n)typeof o=="function"&&(i=o.call(n,i,i)),r.items.push(Rn(i,null,s));return r}}Fn.tag="tag:yaml.org,2002:set";function kl(){const t=P(Date.now()),e=io({interval:1e3}),n=d(()=>{const o=(e.value-t.value)/1e3,r=Math.floor(o%60).toString().padStart(2,"0");return`${Math.floor(o/60).toString().padStart(2,"0")}:${r}`});function s(){t.value=e.value}return{timer:n,resetTimer:s}}function Vn(t=5){const e=[],n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",s=n.length;for(let o=0;o0){const r=document.getElementsByTagName("link"),i=document.querySelector("meta[property=csp-nonce]"),a=(i==null?void 0:i.nonce)||(i==null?void 0:i.getAttribute("nonce"));o=Promise.all(n.map(l=>{if(l=ci(l),l in ns)return;ns[l]=!0;const c=l.endsWith(".css"),u=c?'[rel="stylesheet"]':"";if(!!s)for(let p=r.length-1;p>=0;p--){const m=r[p];if(m.href===l&&(!c||m.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${u}`))return;const h=document.createElement("link");if(h.rel=c?"stylesheet":li,c||(h.as="script",h.crossOrigin=""),h.href=l,a&&h.setAttribute("nonce",a),document.head.appendChild(h),c)return new Promise((p,m)=>{h.addEventListener("load",p),h.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${l}`)))})}))}return o.then(()=>e()).catch(r=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=r,window.dispatchEvent(i),!i.defaultPrevented)throw r})},Rs=(t,e)=>{const n=t.__vccOpts||t;for(const[s,o]of e)n[s]=o;return n},ui={},fi={class:"px-4 py-10 text-center text-red-700 dark:text-red-500 font-bold font-mono"};function di(t,e){return gs(),ao("div",fi," An error occurred on this slide. Check the terminal for more information. ")}const hi=Rs(ui,[["render",di],["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/error.vue"]]),T=Object.freeze(Object.defineProperty({__proto__:null,default:hi},Symbol.toStringTag,{value:"Module"})),ue=k({theme:"default",layout:"cover"}),pi=k({layout:d(()=>ue.layout),transition:d(()=>ue.transition),class:d(()=>ue.class),clicks:d(()=>ue.clicks),name:d(()=>ue.name),preload:d(()=>ue.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:ue,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),fe=k({layout:"two-cols"}),mi=k({layout:d(()=>fe.layout),transition:d(()=>fe.transition),class:d(()=>fe.class),clicks:d(()=>fe.clicks),name:d(()=>fe.name),preload:d(()=>fe.preload),slide:{index:1,content:"",note:"",title:"主题",level:1,noteHTML:"",raw:"",frontmatter:fe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:10,id:1,no:2},__clicksContext:null,__preloaded:!1}),de=k({layout:"two-cols"}),gi=k({layout:d(()=>de.layout),transition:d(()=>de.transition),class:d(()=>de.class),clicks:d(()=>de.clicks),name:d(()=>de.name),preload:d(()=>de.preload),slide:{index:2,content:"",note:"",title:"Architecture",level:1,noteHTML:"",raw:"",frontmatter:de,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:26,id:2,no:3},__clicksContext:null,__preloaded:!1}),he=k({}),yi=k({layout:d(()=>he.layout),transition:d(()=>he.transition),class:d(()=>he.class),clicks:d(()=>he.clicks),name:d(()=>he.name),preload:d(()=>he.preload),slide:{index:3,content:"",note:"",title:"Architecture defined",level:1,noteHTML:"",raw:"",frontmatter:he,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:40,id:3,no:4},__clicksContext:null,__preloaded:!1}),pe=k({layout:"two-cols"}),vi=k({layout:d(()=>pe.layout),transition:d(()=>pe.transition),class:d(()=>pe.class),clicks:d(()=>pe.clicks),name:d(()=>pe.name),preload:d(()=>pe.preload),slide:{index:4,content:"",note:"",title:"Software Artifacts",level:1,noteHTML:"",raw:"",frontmatter:pe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:48,id:4,no:5},__clicksContext:null,__preloaded:!1}),me=k({}),_i=k({layout:d(()=>me.layout),transition:d(()=>me.transition),class:d(()=>me.class),clicks:d(()=>me.clicks),name:d(()=>me.name),preload:d(()=>me.preload),slide:{index:5,content:"",note:"",title:"软件危机(Software Crisis)",level:1,noteHTML:"",raw:"",frontmatter:me,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:70,id:5,no:6},__clicksContext:null,__preloaded:!1}),ge=k({layout:"two-cols"}),wi=k({layout:d(()=>ge.layout),transition:d(()=>ge.transition),class:d(()=>ge.class),clicks:d(()=>ge.clicks),name:d(()=>ge.name),preload:d(()=>ge.preload),slide:{index:6,content:"",note:"",title:"Software is",level:1,noteHTML:"",raw:"",frontmatter:ge,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:81,id:6,no:7},__clicksContext:null,__preloaded:!1}),ye=k({}),ki=k({layout:d(()=>ye.layout),transition:d(()=>ye.transition),class:d(()=>ye.class),clicks:d(()=>ye.clicks),name:d(()=>ye.name),preload:d(()=>ye.preload),slide:{index:7,content:"",note:"",title:"Unsuitability of Software",level:1,noteHTML:"",raw:"",frontmatter:ye,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:100,id:7,no:8},__clicksContext:null,__preloaded:!1}),ve=k({}),bi=k({layout:d(()=>ve.layout),transition:d(()=>ve.transition),class:d(()=>ve.class),clicks:d(()=>ve.clicks),name:d(()=>ve.name),preload:d(()=>ve.preload),slide:{index:8,content:"",note:"",title:"软件工程:软件危机的解决之道",level:1,noteHTML:"",raw:"",frontmatter:ve,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:111,id:8,no:9},__clicksContext:null,__preloaded:!1}),_e=k({}),Si=k({layout:d(()=>_e.layout),transition:d(()=>_e.transition),class:d(()=>_e.class),clicks:d(()=>_e.clicks),name:d(()=>_e.name),preload:d(()=>_e.preload),slide:{index:9,content:"",note:"",title:"开发软件还是很难",level:1,noteHTML:"",raw:"",frontmatter:_e,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:121,id:9,no:10},__clicksContext:null,__preloaded:!1}),we=k({}),Mi=k({layout:d(()=>we.layout),transition:d(()=>we.transition),class:d(()=>we.class),clicks:d(()=>we.clicks),name:d(()=>we.name),preload:d(()=>we.preload),slide:{index:10,content:"",note:"",title:"Software architecture",level:1,noteHTML:"",raw:"",frontmatter:we,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:131,id:10,no:11},__clicksContext:null,__preloaded:!1}),ke=k({}),Oi=k({layout:d(()=>ke.layout),transition:d(()=>ke.transition),class:d(()=>ke.class),clicks:d(()=>ke.clicks),name:d(()=>ke.name),preload:d(()=>ke.preload),slide:{index:11,content:"",note:"",title:"Software architecture defined",level:1,noteHTML:"",raw:"",frontmatter:ke,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:140,id:11,no:12},__clicksContext:null,__preloaded:!1}),be=k({}),Ei=k({layout:d(()=>be.layout),transition:d(()=>be.transition),class:d(()=>be.class),clicks:d(()=>be.clicks),name:d(()=>be.name),preload:d(()=>be.preload),slide:{index:12,content:"",note:"",title:"Some other definitions",level:1,noteHTML:"",raw:"",frontmatter:be,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:152,id:12,no:13},__clicksContext:null,__preloaded:!1}),Se=k({}),Ti=k({layout:d(()=>Se.layout),transition:d(()=>Se.transition),class:d(()=>Se.class),clicks:d(()=>Se.clicks),name:d(()=>Se.name),preload:d(()=>Se.preload),slide:{index:13,content:"",note:"",title:"My favorite one",level:1,noteHTML:"",raw:"",frontmatter:Se,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:165,id:13,no:14},__clicksContext:null,__preloaded:!1}),Me=k({}),$i=k({layout:d(()=>Me.layout),transition:d(()=>Me.transition),class:d(()=>Me.class),clicks:d(()=>Me.clicks),name:d(()=>Me.name),preload:d(()=>Me.preload),slide:{index:14,content:"",note:"",title:"架构师",level:1,noteHTML:"",raw:"",frontmatter:Me,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:179,id:14,no:15},__clicksContext:null,__preloaded:!1}),Oe=k({layout:"two-cols"}),Pi=k({layout:d(()=>Oe.layout),transition:d(()=>Oe.transition),class:d(()=>Oe.class),clicks:d(()=>Oe.clicks),name:d(()=>Oe.name),preload:d(()=>Oe.preload),slide:{index:15,content:"",note:"",title:"架构层设计",level:1,noteHTML:"",raw:"",frontmatter:Oe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:192,id:15,no:16},__clicksContext:null,__preloaded:!1}),Ee=k({}),Li=k({layout:d(()=>Ee.layout),transition:d(()=>Ee.transition),class:d(()=>Ee.class),clicks:d(()=>Ee.clicks),name:d(()=>Ee.name),preload:d(()=>Ee.preload),slide:{index:16,content:"",note:"",title:"Why is SA important?",level:1,noteHTML:"",raw:"",frontmatter:Ee,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:213,id:16,no:17},__clicksContext:null,__preloaded:!1}),Te=k({}),Ai=k({layout:d(()=>Te.layout),transition:d(()=>Te.transition),class:d(()=>Te.class),clicks:d(()=>Te.clicks),name:d(()=>Te.name),preload:d(()=>Te.preload),slide:{index:17,content:"",note:"",title:"Communication among stakeholders",level:1,noteHTML:"",raw:"",frontmatter:Te,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:227,id:17,no:18},__clicksContext:null,__preloaded:!1}),$e=k({}),Ci=k({layout:d(()=>$e.layout),transition:d(()=>$e.transition),class:d(()=>$e.class),clicks:d(()=>$e.clicks),name:d(()=>$e.name),preload:d(()=>$e.preload),slide:{index:18,content:"",note:"",title:"Stakeholders",level:1,noteHTML:"",raw:"",frontmatter:$e,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:238,id:18,no:19},__clicksContext:null,__preloaded:!1}),Pe=k({}),Di=k({layout:d(()=>Pe.layout),transition:d(()=>Pe.transition),class:d(()=>Pe.class),clicks:d(()=>Pe.clicks),name:d(()=>Pe.name),preload:d(()=>Pe.preload),slide:{index:19,content:"",note:"",title:"“mis-communication”",level:1,noteHTML:"",raw:"",frontmatter:Pe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:249,id:19,no:20},__clicksContext:null,__preloaded:!1}),Le=k({}),Ii=k({layout:d(()=>Le.layout),transition:d(()=>Le.transition),class:d(()=>Le.class),clicks:d(()=>Le.clicks),name:d(()=>Le.name),preload:d(()=>Le.preload),slide:{index:20,content:"",note:"",title:"Earliest design decisions",level:1,noteHTML:"",raw:"",frontmatter:Le,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:260,id:20,no:21},__clicksContext:null,__preloaded:!1}),Ae=k({}),xi=k({layout:d(()=>Ae.layout),transition:d(()=>Ae.transition),class:d(()=>Ae.class),clicks:d(()=>Ae.clicks),name:d(()=>Ae.name),preload:d(()=>Ae.preload),slide:{index:21,content:"",note:"",title:"Swedish Warship Vasa",level:1,noteHTML:"",raw:"",frontmatter:Ae,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:274,id:21,no:22},__clicksContext:null,__preloaded:!1}),Ce=k({}),Hi=k({layout:d(()=>Ce.layout),transition:d(()=>Ce.transition),class:d(()=>Ce.class),clicks:d(()=>Ce.clicks),name:d(()=>Ce.name),preload:d(()=>Ce.preload),slide:{index:22,content:"",note:"",title:"Lessons from Vasa",level:1,noteHTML:"",raw:"",frontmatter:Ce,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:284,id:22,no:23},__clicksContext:null,__preloaded:!1}),De=k({}),ji=k({layout:d(()=>De.layout),transition:d(()=>De.transition),class:d(()=>De.class),clicks:d(()=>De.clicks),name:d(()=>De.name),preload:d(()=>De.preload),slide:{index:23,content:"",note:"",title:"Transferable abstraction of a system",level:1,noteHTML:"",raw:"",frontmatter:De,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:292,id:23,no:24},__clicksContext:null,__preloaded:!1}),Ie=k({layout:"two-cols"}),Ri=k({layout:d(()=>Ie.layout),transition:d(()=>Ie.transition),class:d(()=>Ie.class),clicks:d(()=>Ie.clicks),name:d(()=>Ie.name),preload:d(()=>Ie.preload),slide:{index:24,content:"",note:"",title:"Patterns",level:1,noteHTML:"",raw:"",frontmatter:Ie,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:300,id:24,no:25},__clicksContext:null,__preloaded:!1}),xe=k({layout:"two-cols"}),Ni=k({layout:d(()=>xe.layout),transition:d(()=>xe.transition),class:d(()=>xe.class),clicks:d(()=>xe.clicks),name:d(()=>xe.name),preload:d(()=>xe.preload),slide:{index:25,content:"",note:"",title:"Example: Model-View-Controller",level:1,noteHTML:"",raw:"",frontmatter:xe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:327,id:25,no:26},__clicksContext:null,__preloaded:!1}),He=k({}),Fi=k({layout:d(()=>He.layout),transition:d(()=>He.transition),class:d(()=>He.class),clicks:d(()=>He.clicks),name:d(()=>He.name),preload:d(()=>He.preload),slide:{index:26,content:"",note:"",title:"分类",level:1,noteHTML:"",raw:"",frontmatter:He,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:346,id:26,no:27},__clicksContext:null,__preloaded:!1}),je=k({}),Vi=k({layout:d(()=>je.layout),transition:d(()=>je.transition),class:d(()=>je.class),clicks:d(()=>je.clicks),name:d(()=>je.name),preload:d(()=>je.preload),slide:{index:27,content:"",note:"",title:"Architectural Patterns",level:1,noteHTML:"",raw:"",frontmatter:je,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:358,id:27,no:28},__clicksContext:null,__preloaded:!1}),Re=k({}),Ui=k({layout:d(()=>Re.layout),transition:d(()=>Re.transition),class:d(()=>Re.class),clicks:d(()=>Re.clicks),name:d(()=>Re.name),preload:d(()=>Re.preload),slide:{index:28,content:"",note:"",title:"研究内容",level:1,noteHTML:"",raw:"",frontmatter:Re,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:368,id:28,no:29},__clicksContext:null,__preloaded:!1}),Ne=k({layout:"two-cols"}),Bi=k({layout:d(()=>Ne.layout),transition:d(()=>Ne.transition),class:d(()=>Ne.class),clicks:d(()=>Ne.clicks),name:d(()=>Ne.name),preload:d(()=>Ne.preload),slide:{index:29,content:"",note:"",title:"aoasbook.org",level:2,noteHTML:"",raw:"",frontmatter:Ne,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:379,id:29,no:30},__clicksContext:null,__preloaded:!1}),Fe=k({layout:"two-cols"}),Wi=k({layout:d(()=>Fe.layout),transition:d(()=>Fe.transition),class:d(()=>Fe.class),clicks:d(()=>Fe.clicks),name:d(()=>Fe.name),preload:d(()=>Fe.preload),slide:{index:30,content:"",note:"",title:"aoasbook.org",level:2,noteHTML:"",raw:"",frontmatter:Fe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:389,id:30,no:31},__clicksContext:null,__preloaded:!1}),Ve=k({}),zi=k({layout:d(()=>Ve.layout),transition:d(()=>Ve.transition),class:d(()=>Ve.class),clicks:d(()=>Ve.clicks),name:d(()=>Ve.name),preload:d(()=>Ve.preload),slide:{index:31,content:"",note:"",title:"Explaining SA patterns with Spring",level:1,noteHTML:"",raw:"",frontmatter:Ve,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:400,id:31,no:32},__clicksContext:null,__preloaded:!1}),Ue=k({}),qi=k({layout:d(()=>Ue.layout),transition:d(()=>Ue.transition),class:d(()=>Ue.class),clicks:d(()=>Ue.clicks),name:d(()=>Ue.name),preload:d(()=>Ue.preload),slide:{index:32,content:"",note:"",title:"Spring",level:1,noteHTML:"",raw:"",frontmatter:Ue,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:410,id:32,no:33},__clicksContext:null,__preloaded:!1}),Be=k({}),Ki=k({layout:d(()=>Be.layout),transition:d(()=>Be.transition),class:d(()=>Be.class),clicks:d(()=>Be.clicks),name:d(()=>Be.name),preload:d(()=>Be.preload),slide:{index:33,content:"",note:"",title:"Spring Projects Covered",level:3,noteHTML:"",raw:"",frontmatter:Be,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/01-overview.md",start:423,id:33,no:34},__clicksContext:null,__preloaded:!1}),Ji=[{no:1,meta:pi,component:async()=>{try{return await O(()=>import("./slidev/1-C7iqVxm_.js"),__vite__mapDeps([0,1,2,3,4]))}catch(t){return console.error("Failed to load slide 1:",t),T}}},{no:2,meta:mi,component:async()=>{try{return await O(()=>import("./2-NtOujJdO.js"),__vite__mapDeps([5,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 2:",t),T}}},{no:3,meta:gi,component:async()=>{try{return await O(()=>import("./3-CeTKme6P.js"),__vite__mapDeps([7,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 3:",t),T}}},{no:4,meta:yi,component:async()=>{try{return await O(()=>import("./slidev/4-B3ZdCu9g.js"),__vite__mapDeps([8,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 4:",t),T}}},{no:5,meta:vi,component:async()=>{try{return await O(()=>import("./5-D8aSFY1a.js"),__vite__mapDeps([10,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 5:",t),T}}},{no:6,meta:_i,component:async()=>{try{return await O(()=>import("./slidev/6-CFrSikeK.js"),__vite__mapDeps([11,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 6:",t),T}}},{no:7,meta:wi,component:async()=>{try{return await O(()=>import("./7-D6Mbu72C.js"),__vite__mapDeps([12,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 7:",t),T}}},{no:8,meta:ki,component:async()=>{try{return await O(()=>import("./slidev/8-DXGQUuv0.js"),__vite__mapDeps([13,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 8:",t),T}}},{no:9,meta:bi,component:async()=>{try{return await O(()=>import("./slidev/9-CP2J6QLm.js"),__vite__mapDeps([14,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 9:",t),T}}},{no:10,meta:Si,component:async()=>{try{return await O(()=>import("./10-BvyMk7kb.js"),__vite__mapDeps([15,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 10:",t),T}}},{no:11,meta:Mi,component:async()=>{try{return await O(()=>import("./slidev/11-BIg7j8YU.js"),__vite__mapDeps([16,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 11:",t),T}}},{no:12,meta:Oi,component:async()=>{try{return await O(()=>import("./slidev/12-BtcUC4Gn.js"),__vite__mapDeps([17,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 12:",t),T}}},{no:13,meta:Ei,component:async()=>{try{return await O(()=>import("./slidev/13-bCUUZQF4.js"),__vite__mapDeps([18,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 13:",t),T}}},{no:14,meta:Ti,component:async()=>{try{return await O(()=>import("./slidev/14-CwsPRv68.js"),__vite__mapDeps([19,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 14:",t),T}}},{no:15,meta:$i,component:async()=>{try{return await O(()=>import("./slidev/15-BLKutZeJ.js"),__vite__mapDeps([20,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 15:",t),T}}},{no:16,meta:Pi,component:async()=>{try{return await O(()=>import("./16-ibNtBorL.js"),__vite__mapDeps([21,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 16:",t),T}}},{no:17,meta:Li,component:async()=>{try{return await O(()=>import("./slidev/17-n3MKchv1.js"),__vite__mapDeps([22,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 17:",t),T}}},{no:18,meta:Ai,component:async()=>{try{return await O(()=>import("./18-gMfUrhCv.js"),__vite__mapDeps([23,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 18:",t),T}}},{no:19,meta:Ci,component:async()=>{try{return await O(()=>import("./slidev/19-GEv_1Rck.js"),__vite__mapDeps([24,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 19:",t),T}}},{no:20,meta:Di,component:async()=>{try{return await O(()=>import("./20-DKIrS2xr.js"),__vite__mapDeps([25,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 20:",t),T}}},{no:21,meta:Ii,component:async()=>{try{return await O(()=>import("./slidev/21-BTjc_ckL.js"),__vite__mapDeps([26,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 21:",t),T}}},{no:22,meta:xi,component:async()=>{try{return await O(()=>import("./22-DmbAwB-t.js"),__vite__mapDeps([27,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 22:",t),T}}},{no:23,meta:Hi,component:async()=>{try{return await O(()=>import("./slidev/23-D_F16ggt.js"),__vite__mapDeps([28,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 23:",t),T}}},{no:24,meta:ji,component:async()=>{try{return await O(()=>import("./slidev/24-DWoQFB83.js"),__vite__mapDeps([29,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 24:",t),T}}},{no:25,meta:Ri,component:async()=>{try{return await O(()=>import("./slidev/25-C6P7SWDK.js"),__vite__mapDeps([30,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 25:",t),T}}},{no:26,meta:Ni,component:async()=>{try{return await O(()=>import("./26--oVPEWF9.js"),__vite__mapDeps([31,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 26:",t),T}}},{no:27,meta:Fi,component:async()=>{try{return await O(()=>import("./slidev/27-BdleMuJX.js"),__vite__mapDeps([32,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 27:",t),T}}},{no:28,meta:Vi,component:async()=>{try{return await O(()=>import("./slidev/28-CHAPH_Ik.js"),__vite__mapDeps([33,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 28:",t),T}}},{no:29,meta:Ui,component:async()=>{try{return await O(()=>import("./slidev/29-DZ6fVzj-.js"),__vite__mapDeps([34,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 29:",t),T}}},{no:30,meta:Bi,component:async()=>{try{return await O(()=>import("./30-CBMx7fGt.js"),__vite__mapDeps([35,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 30:",t),T}}},{no:31,meta:Wi,component:async()=>{try{return await O(()=>import("./31-CXjrG5we.js"),__vite__mapDeps([36,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 31:",t),T}}},{no:32,meta:zi,component:async()=>{try{return await O(()=>import("./32-ByOMWVhg.js"),__vite__mapDeps([37,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 32:",t),T}}},{no:33,meta:qi,component:async()=>{try{return await O(()=>import("./slidev/33-B_EXRXeJ.js"),__vite__mapDeps([38,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 33:",t),T}}},{no:34,meta:Ki,component:async()=>{try{return await O(()=>import("./slidev/34-DvquXM3k.js"),__vite__mapDeps([39,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 34:",t),T}}}],oe=Pn(Ji);function wt(t){return oe.value.find(e=>{var n;return e.no===+t||((n=e.meta.slide)==null?void 0:n.frontmatter.routeAlias)===t})}function nt(t,e){var s;(typeof t=="number"||typeof t=="string")&&(t=wt(t));const n=((s=t.meta.slide)==null?void 0:s.frontmatter.routeAlias)??t.no;return e?`/presenter/${n}`:`/${n}`}function Gi(t,e,{mode:n="replace"}={}){const s=Kt();return d({get(){const o=s.currentRoute.value.query[t];return o==null?e??null:Array.isArray(o)?o.filter(Boolean):o},set(o){Ht(()=>{(s.currentRoute.value.query[t]??(e==null?void 0:e.toString()))!==o.toString()&&s[$n(n)]({query:{...s.currentRoute.value.query,[t]:`${o}`===e?void 0:o}})})}})}const vn=P(0);function Qi(t){return t===!1||t==="false"?null:t==null||t===!0||t==="true"?"+1":Array.isArray(t)?[+t[0],+t[1]]:typeof t=="string"&&"+-".includes(t[0])?t:+t}function Ns(t,e=0,n){const s={get current(){return yt(+t.value,e,s.total)},set current(o){t.value=yt(+o,e,s.total)},clicksStart:e,relativeOffsets:new Map,maxMap:lo(new Map),onMounted(){},calculateSince(o,r=1){let i,a,l;if(typeof o=="string"){const c=s.currentOffset,u=+o;i=c+u,a=c+u+r-1,l=u+r-1}else i=o,a=o+r-1,l=0;return{start:i,end:+Number.POSITIVE_INFINITY,max:a,delta:l,isCurrent:d(()=>s.current===i),isActive:d(()=>s.current>=i)}},calculateRange([o,r]){let i,a,l;return typeof o=="string"?(i=s.currentOffset+ +o,l=+o):(i=o,l=0),typeof r=="string"?(a=i+ +r,l+=+r):a=r,{start:i,end:a,max:a,delta:l,isCurrent:d(()=>s.current===i),isActive:d(()=>i<=s.current&&s.currentH.colorSchema!=="auto"),Fs=d({get(){return os.value?H.colorSchema==="dark":an.value==="auto"?ss.value:an.value==="dark"},set(t){os.value||(an.value=t===ss.value?"auto":t?"dark":"light")}}),bl=ys(Fs);Jt&&Q(Fs,t=>{const e=document.querySelector("html");e.classList.toggle("dark",t),e.classList.toggle("light",!t)},{immediate:!0});const Yi={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function Xi(t,e=!1){if(!t||(typeof t=="string"&&(t={name:t}),!t.name))return;let n=t.name.includes("|")?t.name:Yi[t.name]||t.name;if(n.includes("|")){const[s,o]=n.split("|").map(r=>r.trim());n=e?o:s}if(n)return{...t,name:n}}function ea(t,e,n){var o,r;let s=t>0?(o=n==null?void 0:n.meta)==null?void 0:o.transition:(r=e==null?void 0:e.meta)==null?void 0:r.transition;return s||(s=H.transition),Xi(s,t<0)}function Vs(t,e,n=1){var o,r,i,a,l,c,u,f,h;const s=(r=(o=e.meta)==null?void 0:o.slide)==null?void 0:r.level;s&&s>n&&t.length>0?Vs(t[t.length-1].children,e,n+1):t.push({no:e.no,children:[],level:n,path:nt(((a=(i=e.meta.slide)==null?void 0:i.frontmatter)==null?void 0:a.routeAlias)??e.no,!1),hideInToc:!!((u=(c=(l=e.meta)==null?void 0:l.slide)==null?void 0:c.frontmatter)!=null&&u.hideInToc),title:(h=(f=e.meta)==null?void 0:f.slide)==null?void 0:h.title})}function Us(t,e,n=!1,s,o){return t.map(r=>{const i={...r,active:r.no===(o==null?void 0:o.value),hasActiveParent:n};return i.children.length>0&&(i.children=Us(i.children,e,i.active||i.hasActiveParent,i,o)),s&&(i.active||i.activeParent)&&(s.activeParent=!0),i})}function Bs(t,e=1){return t.filter(n=>!n.hideInToc).map(n=>({...n,children:Bs(n.children,e+1)}))}function ta(t,e,n){const s=d(()=>t.value.filter(r=>{var i,a;return(a=(i=r.meta)==null?void 0:i.slide)==null?void 0:a.title}).reduce((r,i)=>(Vs(r,i),r),[])),o=d(()=>Us(s.value,n.value,void 0,void 0,e));return d(()=>Bs(o.value))}function na(t,e,n=P(0),s,o,r){const i=d(()=>oe.value.length),a=P(0),l=P(0),c=d(()=>nt(t.value,s.value)),u=d(()=>t.value.no),f=d(()=>{var N;return((N=t.value.meta)==null?void 0:N.layout)||(u.value===1?"cover":"default")}),h=d(()=>e.value.current),p=d(()=>e.value.clicksStart),m=d(()=>e.value.total),g=d(()=>oe.value[Math.min(oe.value.length,u.value+1)-1]),y=d(()=>oe.value[Math.max(1,u.value-1)-1]),v=d(()=>u.valueu.value>1||h.value>0),w=d(()=>ea(a.value,t.value,y.value));Q(t,(N,x)=>{a.value=N.no-x.no});async function b(N){return!1}const E=ta(oe,u,t);async function M(){l.value=1,m.value<=n.value?await A():n.value+=1}async function L(){l.value=-1,n.value<=p.value?await I():n.value-=1}async function A(){l.value=1,u.value{const t=Kt(),e=d(()=>t.currentRoute.value),n=d(()=>(t.currentRoute.value.query,new URLSearchParams(location.search))),s=d(()=>n.value.has("print")),o=d(()=>n.value.get("print")==="clicks"),r=d(()=>n.value.has("embedded")),i=d(()=>e.value.name==="play"),a=d(()=>e.value.name==="presenter"),l=d(()=>e.value.name==="notes"),c=d(()=>!a.value&&(!H.remote||n.value.get("password")===H.remote)),u=uo(i,a),f=d(()=>{var v;return u.value?((v=wt(e.value.params.no))==null?void 0:v.no)??1:1}),h=d(()=>oe.value[f.value-1]),p=Gi("clicks","0"),m=d(()=>y(h.value)),g=d({get(){let v=+(p.value||0);return Number.isNaN(v)&&(v=0),v},set(v){p.value=v.toString()}});function y(v){var b,E;if((b=v==null?void 0:v.meta)!=null&&b.__clicksContext)return v.meta.__clicksContext;const _=v.no,w=Ns(d({get(){return f.value===_?Math.max(+(p.value??0),w.clicksStart):f.value>_?pn:w.clicksStart},set(M){f.value===_&&(p.value=yt(M,w.clicksStart,w.total).toString())}}),((E=v==null?void 0:v.meta.slide)==null?void 0:E.frontmatter.clicksStart)??0,v==null?void 0:v.meta.clicks);return w.onMounted=()=>{f.value===_&&(p.value=yt(+p.value,w.clicksStart,w.total).toString())},v!=null&&v.meta&&(v.meta.__clicksContext=w),w}return{router:t,currentRoute:e,isPrintMode:s,isPrintWithClicks:o,isEmbedded:r,isPlaying:i,isPresenter:a,isNotesViewer:l,isPresenterAvailable:c,hasPrimarySlide:u,currentSlideNo:f,currentSlideRoute:h,clicksContext:m,queryClicksRaw:p,queryClicks:g,getPrimaryClicks:y}}),_n=vs(()=>{const t=sa(),e=Kt(),n=na(t.currentSlideRoute,t.clicksContext,t.queryClicks,t.isPresenter,t.isPrintMode,e);return Q([n.total,t.currentRoute],async()=>{t.hasPrimarySlide.value&&!wt(t.currentRoute.value.params.no)&&await n.goLast()},{flush:"pre",immediate:!0}),{...n,...t}}),oa=[];function ra(){const t=ms().appContext.app,e=k({nav:_n(),configs:H,themeConfigs:d(()=>H.themeConfig)});t.provide(Cn,P("none")),t.provide(Dr,e),t.provide(An,d(()=>e.nav.currentSlideNo)),t.provide(Gt,Pn(Zi()));for(const f of oa)f();const n=H.titleTemplate.replace("%s",H.title||"Slidev"),{clicksContext:s,currentSlideNo:o,hasPrimarySlide:r,isNotesViewer:i,isPresenter:a}=_n();Sr({title:n,htmlAttrs:H.htmlAttrs}),Tr(`${n} - shared`),Ar(`${n} - drawings`);const l=`${location.origin}_${Vn()}`;function c(){i.value||!a.value&&!Hr.includes(location.host.split(":")[0])||(a.value?(lt("page",+o.value),lt("clicks",s.value.current)):(lt("viewerPage",+o.value),lt("viewerClicks",s.value.current)),lt("lastUpdate",{id:l,type:a.value?"presenter":"viewer",time:new Date().getTime()}))}const u=Kt();u.afterEach(c),Q(s,c),$r(f=>{var h;r.value&&((h=f.lastUpdate)==null?void 0:h.type)==="presenter"&&(+f.page!=+o.value||+s.value.current!=+f.clicks)&&(Ps.value=!1,u.replace({path:nt(f.page,a.value),query:{...u.currentRoute.value.query,clicks:f.clicks||0}}))})}const ia=fo({__name:"App",setup(t){return ra(),st(()=>{for(const[e,n]of Object.entries(Ho.value))document.body.style.setProperty(e,n.toString())}),(e,n)=>{const s=ho("RouterView");return gs(),po(s)}}}),aa=Rs(ia,[["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function Sl(t,e=""){var o,r;const n=["slidev-page",e],s=(r=(o=t==null?void 0:t.meta)==null?void 0:o.slide)==null?void 0:r.no;return s!=null&&n.push(`slidev-page-${s}`),n.filter(Boolean).join(" ")}async function Ml(){const{saveAs:t}=await O(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),[]);t(typeof H.download=="string"?H.download:H.exportFilename?`${H.exportFilename}.pdf`:"/sa2024/01-overview/slidev-exported.pdf",`${H.title}.pdf`)}function ot(t,e,n){var s;return((s=t.instance)==null?void 0:s.$).provides[e]??n}function la(){return{install(t){t.directive("click",{name:"v-click",mounted(e,n){const s=It(e,n,n.value);s!=null&&(e.classList.toggle(Lt,!0),e.dataset.slidevClicksStart=String(s.start),Number.isFinite(s.end)&&(e.dataset.slidevClicksEnd=String(s.end)),e.watchStopHandle=st(()=>{const o=s.isActive.value,r=s.isCurrent.value,i=o&&!r;s.flagHide?(e.classList.toggle(s.flagFade?ut:ct,o),e.classList.toggle(nn,o)):e.classList.toggle(s.flagFade?ut:ct,!o),e.classList.toggle(sn,r),e.classList.toggle(on,i)}))},unmounted:ln}),t.directive("after",{name:"v-after",mounted(e,n){const s=It(e,n,"+0");s!=null&&(e.classList.toggle(Lt,!0),e.watchStopHandle=st(()=>{const o=s.isActive.value,r=s.isCurrent.value,i=o&&!r;s.flagHide?(e.classList.toggle(s.flagFade?ut:ct,o),e.classList.toggle(nn,o)):e.classList.toggle(s.flagFade?ut:ct,!o),e.classList.toggle(sn,r),e.classList.toggle(on,i)}))},unmounted:ln}),t.directive("click-hide",{name:"v-click-hide",mounted(e,n){const s=It(e,n,n.value,!0);s!=null&&(e.classList.toggle(Lt,!0),e.watchStopHandle=st(()=>{const o=s.isActive.value,r=s.isCurrent.value,i=o&&!r;e.classList.toggle(s.flagFade?ut:ct,o),e.classList.toggle(nn,o),e.classList.toggle(sn,r),e.classList.toggle(on,i)}))},unmounted:ln})}}}const Ws=new Map;function It(t,e,n,s=!1){var h;const o=(h=ot(e,Gt))==null?void 0:h.value;if(!t||!o)return null;const r=s||e.modifiers.hide!==!1&&e.modifiers.hide!=null,i=e.modifiers.fade!==!1&&e.modifiers.fade!=null,a=Qi(n),l=o.calculate(a);if(!l)return null;o.register(t,l);const c=d(()=>r?!l.isActive.value:l.isActive.value),u=d(()=>c.value?"shown":Number.isFinite(l.end)?o.currents.push(...o)),wn(s,e,n)}function fa(t,e){return t[0]===e[0]&&t[1]===e[1]}function da(t,e,n,s=1){const o=n,r=Math.max(e,.1),i=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,a=[0,0];if(o)for(const c of i)wn(c,a,o);const l=ha(i,r,s);if(o){for(const c of i)wn(c,a,-o);ua(l,a,-o)}return l}function ha(t,e,n){const s=[];for(const c of t){const u=[...c];fa(u[0],u[u.length-1])||u.push([u[0][0],u[0][1]]),u.length>2&&s.push(u)}const o=[];e=Math.max(e,.1);const r=[];for(const c of s)for(let u=0;uc.yminu.ymin?1:c.xu.x?1:c.ymax===u.ymax?0:(c.ymax-u.ymax)/Math.abs(c.ymax-u.ymax)),!r.length)return o;let i=[],a=r[0].ymin,l=0;for(;i.length||r.length;){if(r.length){let c=-1;for(let f=0;fa);f++)c=f;r.splice(0,c+1).forEach(f=>{i.push({s:a,edge:f})})}if(i=i.filter(c=>!(c.edge.ymax<=a)),i.sort((c,u)=>c.edge.x===u.edge.x?0:(c.edge.x-u.edge.x)/Math.abs(c.edge.x-u.edge.x)),(n!==1||l%e===0)&&i.length>1)for(let c=0;c=i.length)break;const f=i[c].edge,h=i[u].edge;o.push([[Math.round(f.x),a],[Math.round(h.x),a]])}a+=n,i.forEach(c=>{c.edge.x=c.edge.x+n*c.edge.islope}),l++}return o}function bt(t,e){var n;const s=e.hachureAngle+90;let o=e.hachureGap;o<0&&(o=e.strokeWidth*4),o=Math.round(Math.max(o,.1));let r=1;return e.roughness>=1&&(((n=e.randomizer)===null||n===void 0?void 0:n.next())||Math.random())>.7&&(r=o),da(t,o,s,r||1)}class Un{constructor(e){this.helper=e}fillPolygons(e,n){return this._fillPolygons(e,n)}_fillPolygons(e,n){const s=bt(e,n);return{type:"fillSketch",ops:this.renderLines(s,n)}}renderLines(e,n){const s=[];for(const o of e)s.push(...this.helper.doubleLineOps(o[0][0],o[0][1],o[1][0],o[1][1],n));return s}}function en(t){const e=t[0],n=t[1];return Math.sqrt(Math.pow(e[0]-n[0],2)+Math.pow(e[1]-n[1],2))}class pa extends Un{fillPolygons(e,n){let s=n.hachureGap;s<0&&(s=n.strokeWidth*4),s=Math.max(s,.1);const o=Object.assign({},n,{hachureGap:s}),r=bt(e,o),i=Math.PI/180*n.hachureAngle,a=[],l=s*.5*Math.cos(i),c=s*.5*Math.sin(i);for(const[f,h]of r)en([f,h])&&a.push([[f[0]-l,f[1]+c],[...h]],[[f[0]+l,f[1]-c],[...h]]);return{type:"fillSketch",ops:this.renderLines(a,n)}}}class ma extends Un{fillPolygons(e,n){const s=this._fillPolygons(e,n),o=Object.assign({},n,{hachureAngle:n.hachureAngle+90}),r=this._fillPolygons(e,o);return s.ops=s.ops.concat(r.ops),s}}class ga{constructor(e){this.helper=e}fillPolygons(e,n){n=Object.assign({},n,{hachureAngle:0});const s=bt(e,n);return this.dotsOnLines(s,n)}dotsOnLines(e,n){const s=[];let o=n.hachureGap;o<0&&(o=n.strokeWidth*4),o=Math.max(o,.1);let r=n.fillWeight;r<0&&(r=n.strokeWidth/2);const i=o/4;for(const a of e){const l=en(a),c=l/o,u=Math.ceil(c)-1,f=l-u*o,h=(a[0][0]+a[1][0])/2-o/4,p=Math.min(a[0][1],a[1][1]);for(let m=0;m{const a=en(i),l=Math.floor(a/(s+o)),c=(a+o-l*(s+o))/2;let u=i[0],f=i[1];u[0]>f[0]&&(u=i[1],f=i[0]);const h=Math.atan((f[1]-u[1])/(f[0]-u[0]));for(let p=0;p{const i=en(r),a=Math.round(i/(2*n));let l=r[0],c=r[1];l[0]>c[0]&&(l=r[1],c=r[0]);const u=Math.atan((c[1]-l[1])/(c[0]-l[0]));for(let f=0;fu%2?c+n:c+e);r.push({key:"C",data:l}),e=l[4],n=l[5];break}case"Q":r.push({key:"Q",data:[...a]}),e=a[2],n=a[3];break;case"q":{const l=a.map((c,u)=>u%2?c+n:c+e);r.push({key:"Q",data:l}),e=l[2],n=l[3];break}case"A":r.push({key:"A",data:[...a]}),e=a[5],n=a[6];break;case"a":e+=a[5],n+=a[6],r.push({key:"A",data:[a[0],a[1],a[2],a[3],a[4],e,n]});break;case"H":r.push({key:"H",data:[...a]}),e=a[0];break;case"h":e+=a[0],r.push({key:"H",data:[e]});break;case"V":r.push({key:"V",data:[...a]}),n=a[0];break;case"v":n+=a[0],r.push({key:"V",data:[n]});break;case"S":r.push({key:"S",data:[...a]}),e=a[2],n=a[3];break;case"s":{const l=a.map((c,u)=>u%2?c+n:c+e);r.push({key:"S",data:l}),e=l[2],n=l[3];break}case"T":r.push({key:"T",data:[...a]}),e=a[0],n=a[1];break;case"t":e+=a[0],n+=a[1],r.push({key:"T",data:[e,n]});break;case"Z":case"z":r.push({key:"Z",data:[]}),e=s,n=o;break}return r}function Js(t){const e=[];let n="",s=0,o=0,r=0,i=0,a=0,l=0;for(const{key:c,data:u}of t){switch(c){case"M":e.push({key:"M",data:[...u]}),[s,o]=u,[r,i]=u;break;case"C":e.push({key:"C",data:[...u]}),s=u[4],o=u[5],a=u[2],l=u[3];break;case"L":e.push({key:"L",data:[...u]}),[s,o]=u;break;case"H":s=u[0],e.push({key:"L",data:[s,o]});break;case"V":o=u[0],e.push({key:"L",data:[s,o]});break;case"S":{let f=0,h=0;n==="C"||n==="S"?(f=s+(s-a),h=o+(o-l)):(f=s,h=o),e.push({key:"C",data:[f,h,...u]}),a=u[0],l=u[1],s=u[2],o=u[3];break}case"T":{const[f,h]=u;let p=0,m=0;n==="Q"||n==="T"?(p=s+(s-a),m=o+(o-l)):(p=s,m=o);const g=s+2*(p-s)/3,y=o+2*(m-o)/3,v=f+2*(p-f)/3,_=h+2*(m-h)/3;e.push({key:"C",data:[g,y,v,_,f,h]}),a=p,l=m,s=f,o=h;break}case"Q":{const[f,h,p,m]=u,g=s+2*(f-s)/3,y=o+2*(h-o)/3,v=p+2*(f-p)/3,_=m+2*(h-m)/3;e.push({key:"C",data:[g,y,v,_,p,m]}),a=f,l=h,s=p,o=m;break}case"A":{const f=Math.abs(u[0]),h=Math.abs(u[1]),p=u[2],m=u[3],g=u[4],y=u[5],v=u[6];f===0||h===0?(e.push({key:"C",data:[s,o,y,v,y,v]}),s=y,o=v):(s!==y||o!==v)&&(Gs(s,o,y,v,f,h,p,m,g).forEach(function(w){e.push({key:"C",data:w})}),s=y,o=v);break}case"Z":e.push({key:"Z",data:[]}),s=r,o=i;break}n=c}return e}function ba(t){return Math.PI*t/180}function ft(t,e,n){const s=t*Math.cos(n)-e*Math.sin(n),o=t*Math.sin(n)+e*Math.cos(n);return[s,o]}function Gs(t,e,n,s,o,r,i,a,l,c){const u=ba(i);let f=[],h=0,p=0,m=0,g=0;if(c)[h,p,m,g]=c;else{[t,e]=ft(t,e,-u),[n,s]=ft(n,s,-u);const $=(t-n)/2,C=(e-s)/2;let j=$*$/(o*o)+C*C/(r*r);j>1&&(j=Math.sqrt(j),o=j*o,r=j*r);const N=a===l?-1:1,x=o*o,se=r*r,B=x*se-x*C*C-se*$*$,Y=x*C*C+se*$*$,D=N*Math.sqrt(Math.abs(B/Y));m=D*o*C/r+(t+n)/2,g=D*-r*$/o+(e+s)/2,h=Math.asin(parseFloat(((e-g)/r).toFixed(9))),p=Math.asin(parseFloat(((s-g)/r).toFixed(9))),tp&&(h=h-Math.PI*2),!l&&p>h&&(p=p-Math.PI*2)}let y=p-h;if(Math.abs(y)>Math.PI*120/180){const $=p,C=n,j=s;l&&p>h?p=h+Math.PI*120/180*1:p=h+Math.PI*120/180*-1,n=m+o*Math.cos(p),s=g+r*Math.sin(p),f=Gs(n,s,C,j,o,r,i,0,l,[p,$,m,g])}y=p-h;const v=Math.cos(h),_=Math.sin(h),w=Math.cos(p),b=Math.sin(p),E=Math.tan(y/4),M=4/3*o*E,L=4/3*r*E,A=[t,e],I=[t+M*_,e-L*v],V=[n+M*b,s-L*w],ne=[n,s];if(I[0]=2*A[0]-I[0],I[1]=2*A[1]-I[1],c)return[I,V,ne].concat(f);{f=[I,V,ne].concat(f);const $=[];for(let C=0;C2){const o=[];for(let r=0;rMath.PI*2&&(p=0,m=Math.PI*2);const g=Math.PI*2/l.curveStepCount,y=Math.min(g/2,(m-p)/2),v=us(y,c,u,f,h,p,m,1,l);if(!l.disableMultiStroke){const _=us(y,c,u,f,h,p,m,1.5,l);v.push(..._)}return i&&(a?v.push(...le(c,u,c+f*Math.cos(p),u+h*Math.sin(p),l),...le(c,u,c+f*Math.cos(m),u+h*Math.sin(m),l)):v.push({op:"lineTo",data:[c,u]},{op:"lineTo",data:[c+f*Math.cos(p),u+h*Math.sin(p)]})),{type:"path",ops:v}}function as(t,e){const n=Js(Ks(Bn(t))),s=[];let o=[0,0],r=[0,0];for(const{key:i,data:a}of n)switch(i){case"M":{r=[a[0],a[1]],o=[a[0],a[1]];break}case"L":s.push(...le(r[0],r[1],a[0],a[1],e)),r=[a[0],a[1]];break;case"C":{const[l,c,u,f,h,p]=a;s.push(...Pa(l,c,u,f,h,p,r,e)),r=[h,p];break}case"Z":s.push(...le(r[0],r[1],o[0],o[1],e)),r=[o[0],o[1]];break}return{type:"path",ops:s}}function un(t,e){const n=[];for(const s of t)if(s.length){const o=e.maxRandomnessOffset||0,r=s.length;if(r>2){n.push({op:"move",data:[s[0][0]+S(o,e),s[0][1]+S(o,e)]});for(let i=1;iMath.PI*2&&(f=0,h=Math.PI*2);const p=(h-f)/i.curveStepCount,m=[];for(let g=f;g<=h;g=g+p)m.push([a+c*Math.cos(g),l+u*Math.sin(g)]);return m.push([a+c*Math.cos(h),l+u*Math.sin(h)]),m.push([a,l]),Ye([m],i)}function Ea(t,e){return S(t,e)}function Ta(t,e,n){return Ut(t,e,n)}function $a(t,e,n,s,o){return le(t,e,n,s,o,!0)}function ls(t){const e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function Ys(t){return t.randomizer||(t.randomizer=new ca(t.seed||0)),t.randomizer.next()}function Ut(t,e,n,s=1){return n.roughness*s*(Ys(n)*(e-t)+t)}function S(t,e,n=1){return Ut(-t,t,e,n)}function le(t,e,n,s,o,r=!1){const i=r?o.disableMultiStrokeFill:o.disableMultiStroke,a=Mn(t,e,n,s,o,!0,!1);if(i)return a;const l=Mn(t,e,n,s,o,!0,!0);return a.concat(l)}function Mn(t,e,n,s,o,r,i){const a=Math.pow(t-n,2)+Math.pow(e-s,2),l=Math.sqrt(a);let c=1;l<200?c=1:l>500?c=.4:c=-.0016668*l+1.233334;let u=o.maxRandomnessOffset||0;u*u*100>a&&(u=l/10);const f=u/2,h=.2+Ys(o)*.2;let p=o.bowing*o.maxRandomnessOffset*(s-e)/200,m=o.bowing*o.maxRandomnessOffset*(t-n)/200;p=S(p,o,c),m=S(m,o,c);const g=[],y=()=>S(f,o,c),v=()=>S(u,o,c),_=o.preserveVertices;return r&&(i?g.push({op:"move",data:[t+(_?0:y()),e+(_?0:y())]}):g.push({op:"move",data:[t+(_?0:S(u,o,c)),e+(_?0:S(u,o,c))]})),i?g.push({op:"bcurveTo",data:[p+t+(n-t)*h+y(),m+e+(s-e)*h+y(),p+t+2*(n-t)*h+y(),m+e+2*(s-e)*h+y(),n+(_?0:y()),s+(_?0:y())]}):g.push({op:"bcurveTo",data:[p+t+(n-t)*h+v(),m+e+(s-e)*h+v(),p+t+2*(n-t)*h+v(),m+e+2*(s-e)*h+v(),n+(_?0:v()),s+(_?0:v())]}),g}function Ot(t,e,n){if(!t.length)return[];const s=[];s.push([t[0][0]+S(e,n),t[0][1]+S(e,n)]),s.push([t[0][0]+S(e,n),t[0][1]+S(e,n)]);for(let o=1;o3){const r=[],i=1-n.curveTightness;o.push({op:"move",data:[t[1][0],t[1][1]]});for(let a=1;a+21&&o.push(r):o.push(r),o.push(t[e+3])}else{const i=t[e+0],a=t[e+1],l=t[e+2],c=t[e+3],u=ze(i,a,.5),f=ze(a,l,.5),h=ze(l,c,.5),p=ze(u,f,.5),m=ze(f,h,.5),g=ze(p,m,.5);On([i,u,p,g],0,n,o),On([g,m,h,c],0,n,o)}return o}function Da(t,e){return Wt(t,0,t.length,e)}function Wt(t,e,n,s,o){const r=o||[],i=t[e],a=t[n-1];let l=0,c=1;for(let u=e+1;ul&&(l=f,c=u)}return Math.sqrt(l)>s?(Wt(t,e,c+1,s,r),Wt(t,c,n,s,r)):(r.length||r.push(i),r.push(a)),r}function En(t,e=.15,n){const s=[],o=(t.length-1)/3;for(let r=0;r0?Wt(s,0,s.length,n):s}function Ia(t,e,n){const s=Bn(t),o=Js(Ks(s)),r=[];let i=[],a=[0,0],l=[];const c=()=>{l.length>=4&&i.push(...En(l,e)),l=[]},u=()=>{c(),i.length&&(r.push(i),i=[])};for(const{key:h,data:p}of o)switch(h){case"M":u(),a=[p[0],p[1]],i.push(a);break;case"L":c(),i.push([p[0],p[1]]);break;case"C":if(!l.length){const m=i.length?i[i.length-1]:a;l.push([m[0],m[1]])}l.push([p[0],p[1]]),l.push([p[2],p[3]]),l.push([p[4],p[5]]);break;case"Z":c(),i.push([a[0],a[1]]);break}if(u(),!n)return r;const f=[];for(const h of r){const p=Da(h,n);p.length&&f.push(p)}return f}const K="none";class xa{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return zs()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,n,s){return{shape:e,sets:n||[],options:s||this.defaultOptions}}line(e,n,s,o,r){const i=this._o(r);return this._d("line",[G(e,n,s,o,i)],i)}rectangle(e,n,s,o,r){const i=this._o(r),a=[],l=Qs(e,n,s,o,i);if(i.fill){const c=[[e,n],[e+s,n],[e+s,n+o],[e,n+o]];i.fillStyle==="solid"?a.push(un([c],i)):a.push(Ye([c],i))}return i.stroke!==K&&a.push(l),this._d("rectangle",a,i)}ellipse(e,n,s,o,r){const i=this._o(r),a=[],l=Zs(s,o,i),c=Sn(e,n,i,l);if(i.fill)if(i.fillStyle==="solid"){const u=Sn(e,n,i,l).opset;u.type="fillPath",a.push(u)}else a.push(Ye([c.estimatedPoints],i));return i.stroke!==K&&a.push(c.opset),this._d("ellipse",a,i)}circle(e,n,s,o){const r=this.ellipse(e,n,s,s,o);return r.shape="circle",r}linearPath(e,n){const s=this._o(n);return this._d("linearPath",[gt(e,!1,s)],s)}arc(e,n,s,o,r,i,a=!1,l){const c=this._o(l),u=[],f=is(e,n,s,o,r,i,a,!0,c);if(a&&c.fill)if(c.fillStyle==="solid"){const h=Object.assign({},c);h.disableMultiStroke=!0;const p=is(e,n,s,o,r,i,!0,!1,h);p.type="fillPath",u.push(p)}else u.push(Oa(e,n,s,o,r,i,c));return c.stroke!==K&&u.push(f),this._d("arc",u,c)}curve(e,n){const s=this._o(n),o=[],r=rs(e,s);if(s.fill&&s.fill!==K)if(s.fillStyle==="solid"){const i=rs(e,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));o.push({type:"fillPath",ops:this._mergedShape(i.ops)})}else{const i=[],a=e;if(a.length){const c=typeof a[0][0]=="number"?[a]:a;for(const u of c)u.length<3?i.push(...u):u.length===3?i.push(...En(fs([u[0],u[0],u[1],u[2]]),10,(1+s.roughness)/2)):i.push(...En(fs(u),10,(1+s.roughness)/2))}i.length&&o.push(Ye([i],s))}return s.stroke!==K&&o.push(r),this._d("curve",o,s)}polygon(e,n){const s=this._o(n),o=[],r=gt(e,!0,s);return s.fill&&(s.fillStyle==="solid"?o.push(un([e],s)):o.push(Ye([e],s))),s.stroke!==K&&o.push(r),this._d("polygon",o,s)}path(e,n){const s=this._o(n),o=[];if(!e)return this._d("path",o,s);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const r=s.fill&&s.fill!=="transparent"&&s.fill!==K,i=s.stroke!==K,a=!!(s.simplification&&s.simplification<1),l=a?4-4*(s.simplification||1):(1+s.roughness)/2,c=Ia(e,1,l),u=as(e,s);if(r)if(s.fillStyle==="solid")if(c.length===1){const f=as(e,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));o.push({type:"fillPath",ops:this._mergedShape(f.ops)})}else o.push(un(c,s));else o.push(Ye(c,s));return i&&(a?c.forEach(f=>{o.push(gt(f,!1,s))}):o.push(u)),this._d("path",o,s)}opsToPath(e,n){let s="";for(const o of e.ops){const r=typeof n=="number"&&n>=0?o.data.map(i=>+i.toFixed(n)):o.data;switch(o.op){case"move":s+=`M${r[0]} ${r[1]} `;break;case"bcurveTo":s+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":s+=`L${r[0]} ${r[1]} `;break}}return s.trim()}toPaths(e){const n=e.sets||[],s=e.options||this.defaultOptions,o=[];for(const r of n){let i=null;switch(r.type){case"path":i={d:this.opsToPath(r),stroke:s.stroke,strokeWidth:s.strokeWidth,fill:K};break;case"fillPath":i={d:this.opsToPath(r),stroke:K,strokeWidth:0,fill:s.fill||K};break;case"fillSketch":i=this.fillSketch(r,s);break}i&&o.push(i)}return o}fillSketch(e,n){let s=n.fillWeight;return s<0&&(s=n.strokeWidth/2),{d:this.opsToPath(e),stroke:n.fill||K,strokeWidth:s,fill:K}}_mergedShape(e){return e.filter((n,s)=>s===0?!0:n.op!=="move")}}const Xs="http://www.w3.org/2000/svg",Ha=800;let fn=null;function ja(){return fn||(fn=new xa().defaultOptions),fn}function dn(t,e,n){return{...ja(),maxRandomnessOffset:2,roughness:t==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:t!=="double",disableMultiStrokeFill:!1,seed:e,...n}}function Ra(t){const e=t.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const n=e;if(n.length)switch(n.length){case 4:return[...n];case 1:return[n[0],n[0],n[0],n[0]];case 2:return[...n,...n];case 3:return[...n,n[1]];default:return[n[0],n[1],n[2],n[3]]}}}return[5,5,5,5]}function Na(t,e,n,s,o,r){const i=[];let a=n.strokeWidth||2;const l=Ra(n),c=n.animate===void 0?!0:!!n.animate,u=n.iterations||2,f=n.rtl?1:0,h=dn("single",r,n);switch(n.type){case"underline":{const p=e.y+e.h+l[2];for(let m=f;m_.setAttribute(w,b);for(const _ of p){const w=document.createElementNS(Xs,"path");if(v(w,"d",_),v(w,"fill","none"),v(w,"stroke",n.color||"currentColor"),v(w,"stroke-width",`${a}`),n.opacity!==void 0&&v(w,"style",`opacity:${n.opacity}`),c){const b=w.getTotalLength();m.push(b),y+=b}t.appendChild(w),g.push(w)}if(c){let _=0;for(let w=0;wsetTimeout(e,t))}function Fa(t){const e=[];for(const n of t){let s="";for(const o of n.ops){const r=o.data;switch(o.op){case"move":s.trim()&&e.push(s.trim()),s=`M${r[0]} ${r[1]} `;break;case"bcurveTo":s+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":s+=`L${r[0]} ${r[1]} `;break}}s.trim()&&e.push(s.trim())}return e}function Va(){if(!window.__rno_kf_s){const t=window.__rno_kf_s=document.createElement("style");t.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(t)}}var Ua=Object.defineProperty,Ba=(t,e,n)=>e in t?Ua(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,X=(t,e,n)=>(Ba(t,typeof e!="symbol"?e+"":e,n),n);class Wa{constructor(e,n){X(this,"_state","unattached"),X(this,"_config"),X(this,"_resizing",!1),X(this,"_ro"),X(this,"_seed",zs()),X(this,"_e"),X(this,"_svg"),X(this,"_lastSizes",[]),X(this,"_animationDelay",0),X(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),X(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(n)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,n){this._config[e]!==n&&(this._config[e]=n,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){Va();const e=this._svg=document.createElementNS(Xs,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const n=e.style;n.position="absolute",n.top="0",n.left="0",n.overflow="visible",n.pointerEvents="none",n.width="100px",n.height="100px";const s=this._config.type==="highlight";if(this._e.insertAdjacentElement(s?"beforebegin":"afterend",e),this._state="not-showing",s){const o=window.getComputedStyle(this._e).position;(!o||o==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const n of e)n.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let n=0;nMath.round(o)===Math.round(r);return s(e.x,n.x)&&s(e.y,n.y)&&s(e.w,n.w)&&s(e.h,n.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,n){let s=this._config;n&&(s=JSON.parse(JSON.stringify(this._config)),s.animate=!1);const o=this.rects();let r=0;o.forEach(c=>r+=c.w);const i=s.animationDuration||Ha;let a=0;const l=[];for(let c=0;cObject.assign(t,{type:"box"}),circle:t=>Object.assign(t,{type:"circle"}),underline:t=>Object.assign(t,{type:"underline"}),highlight:t=>Object.assign(t,{type:"highlight"}),"strike-through":t=>Object.assign(t,{type:"strike-through"}),"crossed-off":t=>Object.assign(t,{type:"crossed-off"}),bracket:t=>Object.assign(t,{type:"bracket"}),strike:t=>Object.assign(t,{type:"strike-through"}),cross:t=>Object.assign(t,{type:"crossed-off"}),crossed:t=>Object.assign(t,{type:"crossed-off"}),linethrough:t=>Object.assign(t,{type:"strike-through"}),"line-through":t=>Object.assign(t,{type:"strike-through"}),black:t=>z(t,"text-black"),blue:t=>z(t,"text-blue"),cyan:t=>z(t,"text-cyan"),gray:t=>z(t,"text-gray"),green:t=>z(t,"text-green"),indigo:t=>z(t,"text-indigo"),lime:t=>z(t,"text-lime"),orange:t=>z(t,"text-orange"),pink:t=>z(t,"text-pink"),purple:t=>z(t,"text-purple"),red:t=>z(t,"text-red"),teal:t=>z(t,"text-teal"),white:t=>z(t,"text-white"),yellow:t=>z(t,"text-yellow")},qa=[[/^delay-?(\d+)?$/,(t,e,n)=>{const s=(t[1]?Number.parseInt(t[1]):n)||300;return e.delay=s,e}],[/^(?:op|opacity)-?(\d+)?$/,(t,e,n)=>{const s=(t[1]?Number.parseInt(t[1]):n)||100;return e.opacity=s/100,e}]];function Ka(){return{install(t){t.directive("mark",{name:"v-mark",mounted:(e,n)=>{const s=d(()=>{const i=typeof n.value=="object"&&!Array.isArray(n.value)?{...n.value}:{at:n.value};let a={at:i.at};const l=Object.entries(n.modifiers).filter(([u,f])=>{if(hs[u])return a=hs[u](a,f),!1;for(const[h,p]of qa){const m=u.match(h);if(m)return a=p(m,a,f),!1}return!0});l.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",l);const c={...a,...i};return c.type||(c.type="underline"),c}),o=za(e,s.value),r=It(e,n,s.value.at);if(!r){o.show();return}e.watchStopHandle=st(()=>{let i;s.value.class&&(o.class=s.value.class),s.value.color&&(o.color=s.value.color);const a=s.value.at;a===!0?i=!0:a===!1?i=!1:i=r.isActive.value,i!=null&&(i?o.show():o.hide())})},unmounted:e=>{var n;(n=e.watchStopHandle)==null||n.call(e)}})}}}const Ol=P(!1),El=P(!1),Tl=P(!1),Ja=P(!1),$l=P(!0),Pl=mo({xs:460,...wo}),zt=go(),Ll=yo(),Al=d(()=>zt.height.value-zt.width.value/_s.value>120),Cl=vo(Jt?document.body:null),Tn=_o(),Dl=d(()=>{var t,e;return["INPUT","TEXTAREA"].includes(((t=Tn.value)==null?void 0:t.tagName)||"")||((e=Tn.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),Il=d(()=>{var t;return["BUTTON","A"].includes(((t=Tn.value)==null?void 0:t.tagName)||"")});te("slidev-camera","default",{listenToStorageChanges:!1});te("slidev-mic","default",{listenToStorageChanges:!1});const Ga=te("slidev-scale",0),xl=te("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),Qa=te("slidev-show-editor",!1,{listenToStorageChanges:!1}),Za=te("slidev-editor-vertical",!1,{listenToStorageChanges:!1}),Ya=te("slidev-editor-width",Jt?window.innerWidth*.4:318,{listenToStorageChanges:!1}),Xa=te("slidev-editor-height",Jt?window.innerHeight*.4:300,{listenToStorageChanges:!1}),Et=Pn(null),qt=te("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),Tt=te("slidev-presenter-layout",1,{listenToStorageChanges:!1});function Hl(){Tt.value=Tt.value+1,Tt.value>2&&(Tt.value=1)}function jl(){qt.value=Math.min(2,qt.value+.1)}function Rl(){qt.value=Math.max(.5,qt.value-.1)}const Nl=ys(Ja);function el(t=ps($s,P())){const e=ko(t),n=Q([Qa,Za,Ya,Xa,Ga,zt.width,zt.height],()=>{setTimeout(e.update,300)},{flush:"post",immediate:!0});return{...e,stop:n}}function tl(t){return()=>{}}function nl(t,e,n){var Y;function s(D){return t?ot(t,D):Mo(D)}const o=s(Cn),r=s(Ir)??{},i=s(An),a=d(()=>tl(i.value)),l=s(Cr)??P(1),c=s(xr)??P(1),{left:u,top:f,stop:h}=el(s($s)??P()),p=["slide","presenter"].includes(o.value);let m=t?"directive":"prop",g=Vn(),y;if(Array.isArray(e)?y=e:typeof e=="string"&&e.includes(",")?y=e.split(",").map(Number):e!=null&&(m="frontmatter",g=`${e}`,e=(Y=r==null?void 0:r.dragPos)==null?void 0:Y[g],y=e==null?void 0:e.split(",").map(Number)),m!=="frontmatter"&&!n)throw new Error("[Slidev] Can not identify the source position of the v-drag element, please provide an explicit `id` prop.");const v=[h],_=e!=null&&!Number.isFinite(y==null?void 0:y[3]);y??(y=[Number.NaN,Number.NaN,0]);const w=P(y[2]),b=P(y[0]+y[2]/2),E=P(y[4]??0),M=d(()=>E.value*Math.PI/180),L=d(()=>Math.sin(M.value)),A=d(()=>Math.cos(M.value)),I=P(),V=P({left:0,top:0,width:0,height:0}),ne=P(0);function $(){const D=I.value.getBoundingClientRect();V.value={left:D.left/c.value,top:D.top/c.value,width:D.width/c.value,height:D.height/c.value},ne.value=(V.value.width+V.value.height)/l.value/(Math.abs(L.value)+Math.abs(A.value))-w.value}v.push(Q(w,$,{flush:"post"}));const C=P(y[3]??0),j=d({get:()=>(_?ne.value:C.value)||0,set:D=>!_&&(C.value=D)}),N=P(y[1]),x=d({get:()=>N.value+j.value/2,set:D=>N.value=D-j.value/2}),se=d(()=>Number.isFinite(b.value)?{position:"absolute",zIndex:100,left:`${b.value-w.value/2}px`,top:`${x.value-j.value/2}px`,width:`${w.value}px`,height:_?void 0:`${j.value}px`,transformOrigin:"center center",transform:`rotate(${E.value}deg)`}:{position:"absolute",zIndex:100});v.push(Q([b,x,w,j,E],([D,ce,it,at,Wn])=>{let Qe=[D-it/2,ce-at/2,it].map(Math.round).join();_?Qe+=m==="directive"?",NaN":",_":Qe+=`,${Math.round(at)}`,Math.round(Wn)!==0&&(Qe+=`,${Math.round(Wn)}`),m==="directive"&&(Qe=`[${Qe}]`),a.value(g,Qe,m,n)}));const B={id:g,dataSource:m,markdownSource:n,zoom:c,autoHeight:_,x0:b,y0:x,width:w,height:j,rotate:E,container:I,containerStyle:se,watchStopHandles:v,dragging:d(()=>Et.value===B),mounted(){p&&($(),e||setTimeout(()=>{$(),b.value=(V.value.left+V.value.width/2-u.value)/l.value,x.value=(V.value.top-f.value)/l.value,w.value=V.value.width/l.value,j.value=V.value.height/l.value},100))},unmounted(){p&&B.stopDragging()},startDragging(){$(),Et.value=B},stopDragging(){Et.value===B&&(Et.value=null)}};return v.push(bo(I,D=>{const ce=document.querySelector("#drag-control-container");ce&&D.target&&ce.contains(D.target)||B.stopDragging()}),Q(So(),D=>{D||B.stopDragging()})),B}function sl(){return{install(t){t.directive("drag",{name:"v-drag",created(e,n,s){var r;const o=nl(n,n.value,(r=s.props)==null?void 0:r.markdownSource);s.props&&(s.props={...s.props},delete s.props.markdownSource),o.container.value=e,e.draggingState=o,e.dataset.dragId=o.id,o.watchStopHandles.push(Q(o.containerStyle,i=>{for(const[a,l]of Object.entries(i))l&&(e.style[a]=l)},{immediate:!0})),e.addEventListener("dblclick",o.startDragging)},mounted(e){e.draggingState.mounted()},unmounted(e){const n=e.draggingState;n.unmounted(),e.removeEventListener("dblclick",n.startDragging),n.watchStopHandles.forEach(s=>s())}})}}}function ol(){return{install(t){const e=Oo();t.directive("motion",{name:"v-motion",mounted(n,s,o,r){var w,b,E;const i=ot(s,Gt),a=ot(s,An),l=ot(s,Cn),{currentPage:c,clicks:u,isPrintMode:f}=_n(),h=o.props={...o.props},p={...h.initial,...(w=h.variants)==null?void 0:w["slidev-initial"]},m={...h.enter,...(b=h.variants)==null?void 0:b["slidev-enter"]},g={...h.leave,...(E=h.variants)==null?void 0:E["slidev-leave"]};delete h.initial,delete h.enter,delete h.leave;const y=`${Vn()}-`,v=[];for(const M of Object.keys(h))if(M.startsWith("click-")){const L=M.slice(6),A=L.includes("-")?L.split("-").map(Number):+L,I=y+L;v.push({id:I,at:A,variant:{...h[M]},info:i==null?void 0:i.value.calculate(A)}),delete h[M]}v.sort((M,L)=>(Array.isArray(M.at)?M.at[0]:M.at)-(Array.isArray(L.at)?L.at[0]:L.at)),e.created(n,s,o,r),e.mounted(n,s,o,r);const _=n.motionInstance;_.clickIds=v.map(M=>M.id),_.set(p),_.watchStopHandle=Q([a,c,u].filter(Boolean),()=>{var L;const M=((L=Ws.get(n))==null?void 0:L.visibilityState.value)??"shown";if(!(i!=null&&i.value)||!["slide","presenter"].includes((l==null?void 0:l.value)??"")){const A={...p,...m};for(const{variant:I}of v)Object.assign(A,I);_.set(A)}else if(f.value||(a==null?void 0:a.value)===c.value)if(M==="shown"){const A={...p,...m};for(const{variant:I,info:V}of v)(!V||V.isActive.value)&&Object.assign(A,I);f.value?_.set(A):_.apply(A)}else _.apply(M==="before"?p:g);else _.apply(((a==null?void 0:a.value)??-1)>c.value?p:g)},{immediate:!0})},unmounted(n){n.motionInstance.watchStopHandle()}})}}}const rl=[];function il(){const t=[];{let e=function(n){if(!H.remote||H.remote===n.query.password)return!0;if(H.remote&&n.query.password===void 0){const s=prompt("Enter password");if(H.remote===s)return!0}return n.params.no?{path:`/${n.params.no}`}:{path:""}};t.push({name:"entry",path:"/entry",component:()=>O(()=>import("./slidev/entry-BlAJ4omr.js"),__vite__mapDeps([40,41,1,3,4]))},{name:"overview",path:"/overview",component:()=>O(()=>import("./slidev/overview-tjiJJMPz.js"),__vite__mapDeps([42,41,1,43,44,45,46,47,48,49,3,4]))},{name:"notes",path:"/notes",component:()=>O(()=>import("./slidev/notes-BfATp3gG.js"),__vite__mapDeps([50,41,1,46,47,45,3,4])),beforeEnter:e},{name:"presenter",path:"/presenter/:no",component:()=>O(()=>import("./slidev/presenter-DpgahFDW.js"),__vite__mapDeps([51,41,1,52,43,44,45,2,3,4,53,46,47,54,55,48,49,56])),beforeEnter:e},{path:"/presenter",redirect:{path:"/presenter/1"}})}return t.push({name:"play",path:"/:no",component:()=>O(()=>import("./slidev/play-CjlEe2CW.js"),__vite__mapDeps([57,1,52,43,44,41,45,2,3,4,53,58]))},{path:"",redirect:{path:"/1"}}),rl.reduce((e,n)=>n(e),t)}const al=[];async function ll(t){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e);const n=Eo({history:To("/sa2024/01-overview/"),routes:il()});t.use(n),t.use(kr()),t.use(la()),t.use(Ka()),t.use(sl()),t.use(ol()),t.use(Po,{container:"#twoslash-container"});const s={app:t,router:n};Ht(()=>{n.afterEach(async()=>{await Ht(),vn.value+=1})});for(const o of al)await o(s)}const eo=$o(aa);ll(eo);eo.mount("#app");export{Cn as $,O as A,zt as B,pn as C,Ga as D,Za as E,oe as F,Et as G,Nl as H,Tl as I,Ll as J,Ml as K,$l as L,Il as M,Dl as N,dl as O,Pl as P,Tn as Q,Hl as R,wt as S,Cr as T,el as U,Ps as V,_s as W,$s as X,vl as Y,An as Z,Rs as _,_n as a,_l as a0,Gt as a1,xr as a2,yl as a3,gl as a4,ml as a5,ue as a6,fe as a7,de as a8,he as a9,He as aA,je as aB,Re as aC,Ne as aD,Fe as aE,Ve as aF,Ue as aG,Be as aH,pe as aa,me as ab,ge as ac,ye as ad,ve as ae,_e as af,we as ag,ke as ah,be as ai,Se as aj,Me as ak,Oe as al,Ee as am,Te as an,$e as ao,Pe as ap,Le as aq,Ae as ar,Ce as as,De as at,Ie as au,Dr as av,Ir as aw,wl as ax,jr as ay,xe as az,Zi as b,H as c,Fs as d,Sl as e,Cl as f,nt as g,kl as h,os as i,xl as j,Ja as k,qt as l,jl as m,Rl as n,yt as o,Tt as p,Ol as q,fl as r,pl as s,bl as t,Sr as u,El as v,xo as w,hl as x,Al as y,Qa as z}; diff --git a/01-overview/assets/index-_yLYxq2k.css b/01-overview/assets/index-_yLYxq2k.css new file mode 100644 index 0000000..c4cbbfe --- /dev/null +++ b/01-overview/assets/index-_yLYxq2k.css @@ -0,0 +1 @@ +*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border-main=""],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main,[bg-main=""]{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main,.dark [bg-main=""]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.hover\:bg-active:hover,[hover\:bg-active=""]:hover{background-color:#9ca3af1a}.dark .text-main{--un-text-opacity:1;color:rgb(221 221 221 / var(--un-text-opacity))}.text-main{--un-text-opacity:1;color:rgb(24 24 24 / var(--un-text-opacity))}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .slidev-code-dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:13px}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.i-svg-spinners-90-ring-with-bg{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z' opacity='.25'/%3E%3Cpath fill='currentColor' d='M10.14,1.16a11,11,0,0,0-9,8.92A1.59,1.59,0,0,0,2.46,12,1.52,1.52,0,0,0,4.11,10.7a8,8,0,0,1,6.66-6.61A1.42,1.42,0,0,0,12,2.69h0A1.57,1.57,0,0,0,10.14,1.16Z'%3E%3CanimateTransform attributeName='transform' dur='0.75s' repeatCount='indefinite' type='rotate' values='0 12 12;360 12 12'/%3E%3C/path%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1em;height:1em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none,[pointer-events-none=""]{pointer-events:none}.visible{visibility:visible}.absolute,[absolute=""]{position:absolute}.fixed,[fixed=""]{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.bottom-20{bottom:5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-110\%,[left-110\%=""]{left:110%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5,[right-5=""]{right:1.25rem}.top-0{top:0}.top-1\/2,.top-50\%,[top-50\%=""]{top:50%}.-top-15px{top:-15px}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-100{z-index:100}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-cols-\[35px_1fr\]{grid-template-columns:35px 1fr}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-rows-\[auto_max-content\]{grid-template-rows:auto max-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-1{margin:.25rem}.m-10{margin:2.5rem}.m-20{margin:5rem}.m-5{margin:1.25rem}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.my1{margin-top:.25rem;margin-bottom:.25rem}.my4{margin-top:1rem;margin-bottom:1rem}.my5{margin-top:1.25rem;margin-bottom:1.25rem}.mb-4{margin-bottom:1rem}.mb2{margin-bottom:.5rem}.ml--4{margin-left:-1rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr--3,[mr--3=""]{margin-right:-.75rem}.mr--8{margin-right:-2rem}.mr-1,.mr1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-0\.5{margin-top:.125rem}.mt-1,.mt1{margin-top:.25rem}.mt-2,[mt-2=""]{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.aspect-ratio-initial{aspect-ratio:initial}.h-\[40px\],.h-40px{height:40px}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-100{height:25rem}.h-20{height:5rem}.h-22px{height:22px}.h-2px{height:2px}.h-3px{height:3px}.h-40{height:10rem}.h-5,.h5,[h5=""]{height:1.25rem}.h-6{height:1.5rem}.h-70{height:17.5rem}.h-8,[h-8=""]{height:2rem}.h-80{height:20rem}.h-9,[h-9=""]{height:2.25rem}.h-90{height:22.5rem}.h-95{height:23.75rem}.h-full,[h-full=""]{height:100%}.h-max{height:max-content}.h-screen{height:100vh}.h1{height:.25rem}.max-h-full{max-height:100%}.max-w-150{max-width:37.5rem}.max-w-250,[max-w-250=""]{max-width:62.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-h-50,[min-h-50=""]{min-height:12.5rem}.min-w-16{min-width:4rem}.min-w-40{min-width:10rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-\[40px\]{width:40px}.w-0{width:0}.w-13{width:3.25rem}.w-1px{width:1px}.w-200{width:50rem}.w-22px{width:22px}.w-250,[w-250=""]{width:62.5rem}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-7{width:1.75rem}.w-8,[w-8=""]{width:2rem}.w-9,[w-9=""]{width:2.25rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.w-screen{width:100vw}.w1{width:.25rem}.flex,[flex=""],[flex~="~"]{display:flex}.flex-1,[flex-1=""]{flex:1 1 0%}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-y--50\%,[translate-y--50\%=""]{--un-translate-y:-50%;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in 1s linear 1}.animate-duration-100{animation-duration:.1s}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.important\:\[\&_\*\]\:select-none *{-webkit-user-select:none!important;user-select:none!important}.select-none,[select-none=""]{-webkit-user-select:none;user-select:none}[select-none~="default:"]:default{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-after-page{break-after:page}.items-end{align-items:flex-end}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.justify-items-start{justify-items:start}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4,[gap-4=""]{gap:1rem}.gap-5{gap:1.25rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""],[overflow-hidden=""]{overflow:hidden}.of-scroll{overflow:scroll}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap,.ws-nowrap,[ws-nowrap=""]{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border=""],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border-t=""],[border~=t]{border-top-width:1px}.b-dark{--un-border-opacity:1;border-color:rgb(34 34 34 / var(--un-border-opacity))}.border-gray,.dark .dark\:b-gray-400{--un-border-opacity:1;border-color:rgb(156 163 175 / var(--un-border-opacity))}.border-gray-300\/50{border-color:#d1d5db80}.dark .dark\:border-gray-500{--un-border-opacity:1;border-color:rgb(107 114 128 / var(--un-border-opacity))}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded],[rounded=""]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full,[rounded-full=""]{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-lb{border-bottom-left-radius:.25rem}.rounded-tl{border-top-left-radius:.25rem}.b-dashed{border-style:dashed}.\!border-none{border-style:none!important}[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray,[hover\:op100~="bg-gray:5"]{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.dark .dark\:bg-gray-800{--un-bg-opacity:1;background-color:rgb(31 41 55 / var(--un-bg-opacity))}.bg-gray\:10{background-color:#9ca3af1a}.bg-gray\:5{background-color:#9ca3af0d}.bg-gray\/20{background-color:#9ca3af33}.bg-teal-500{--un-bg-opacity:1;background-color:rgb(20 184 166 / var(--un-bg-opacity))}.bg-transparent,[bg-transparent~=","],[bg-transparent~="{"],[bg-transparent~="&&"],[bg-transparent~="text.value"]{background-color:transparent}[bg-transparent~="!valid.value"]{background-color:transparent!important}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.hover\:bg-gray\/20:hover{background-color:#9ca3af33}[bg-transparent~="placeholder:"]::placeholder{background-color:transparent}.bg-opacity-30{--un-bg-opacity:.3}.\!bg-opacity-75,.bg-opacity-75\!{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.dark .dark\:stroke-black{--un-stroke-opacity:1;stroke:rgb(0 0 0 / var(--un-stroke-opacity))}.stroke-white{--un-stroke-opacity:1;stroke:rgb(255 255 255 / var(--un-stroke-opacity))}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2,.p2,[p2=""]{padding:.5rem}.\!p-4{padding:1rem!important}.p3{padding:.75rem}.p4{padding:1rem}.px,.px-4,.px4,[p~=x-4],[px=""]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2,[px2=""]{padding-left:.5rem;padding-right:.5rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px1{padding-left:.25rem;padding-right:.25rem}.px3{padding-left:.75rem;padding-right:.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3,.py3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py0\.5{padding-top:.125rem;padding-bottom:.125rem}.py1\.5{padding-top:.375rem;padding-bottom:.375rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-0{padding-left:0}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.pt5{padding-top:1.25rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3em{font-size:3em}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg,[text-lg=""]{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}[text-sm~="default:"]:default{font-size:.875rem;line-height:1.25rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.dark .dark\:text-red-500{--un-text-opacity:1;color:rgb(239 68 68 / var(--un-text-opacity))}.text-red-700{--un-text-opacity:1;color:rgb(185 28 28 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}.important-text-op-50,.text-opacity-50\!{--un-text-opacity:.5 !important}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.font-mono,[font-mono=""]{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.tab{-moz-tab-size:4;-o-tab-size:4;tab-size:4}[tab~="1032"]{-moz-tab-size:1032;-o-tab-size:1032;tab-size:1032}[tab~="2"]{-moz-tab-size:2;-o-tab-size:2;tab-size:2}[tab~="default:"]:default{-moz-tab-size:4;-o-tab-size:4;tab-size:4}.\!opacity-0,.important\:op0{opacity:0!important}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""],.group:hover .group-hover\:op100{opacity:1}.op15{opacity:.15}.op20{opacity:.2}.op25,.opacity-25,[op25=""]{opacity:.25}.op30{opacity:.3}.op35{opacity:.35}.op40,.opacity-40{opacity:.4}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80,.group:hover .group-hover\:op80{opacity:.8}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.hover\:op100:hover,[hover~=op100]:hover,.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-xl,[shadow-xl=""]{--un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none,[outline-none=""]{outline:2px solid transparent;outline-offset:2px}.backdrop-blur,.backdrop-blur-8,[backdrop-blur-8=""]{--un-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition,[transition=""]{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300,[duration-300=""]{transition-duration:.3s}.duration-400,[duration-400=""]{transition-duration:.4s}.duration-500{transition-duration:.5s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.view-transition-name{view-transition-name:name}@media (max-width: 767.9px){.lt-md\:hidden{display:none}.lt-md\:flex-col{flex-direction:column}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}}.shiki-magic-move-container{position:relative;white-space:pre}.shiki-magic-move-line-number{opacity:.3;-webkit-user-select:none;user-select:none}.shiki-magic-move-item{display:inline-block;transition:color var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-move,.shiki-magic-move-enter-active,.shiki-magic-move-leave-active{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-container-resize,.shiki-magic-move-container-restyle{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease");transition-delay:calc(var(--smm-duration, .5s) * var(--smm-delay-container, 1))}.shiki-magic-move-move{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-move, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-enter-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-enter, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-leave-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-leave, 1)) + var(--smm-stagger, 0))}.shiki-magic-move-enter-from,.shiki-magic-move-leave-to{opacity:0}br.shiki-magic-move-leave-active{display:none} diff --git a/01-overview/assets/modules/shiki-BgDwwTVx.js b/01-overview/assets/modules/shiki-DeQJCler.js similarity index 99% rename from 01-overview/assets/modules/shiki-BgDwwTVx.js rename to 01-overview/assets/modules/shiki-DeQJCler.js index 869d7f4..ceff989 100644 --- a/01-overview/assets/modules/shiki-BgDwwTVx.js +++ b/01-overview/assets/modules/shiki-DeQJCler.js @@ -1 +1 @@ -import{d as xe,n as Vt,p as Wt,a as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-CnJIpJLC.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),Vt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Wt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};jt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T}; +import{d as xe,p as Vt,a as Wt,n as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-CnDFeQoy.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),jt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Vt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};Wt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T,Nt as t}; diff --git a/01-overview/assets/modules/unplugin-icons-Bc68jzww.js b/01-overview/assets/modules/unplugin-icons-Bc68jzww.js deleted file mode 100644 index eea4df7..0000000 --- a/01-overview/assets/modules/unplugin-icons-Bc68jzww.js +++ /dev/null @@ -1 +0,0 @@ -import{o as e,b as o,e as n}from"./vue-CnJIpJLC.js";const c={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},_=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),i=[_];function l(t,s){return e(),o("svg",c,[...i])}const P2={name:"carbon-list-boxes",render:l},h={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),a=[r];function d(t,s){return e(),o("svg",h,[...a])}const Q2={name:"carbon-close",render:d},u={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},m=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),v=[m];function $(t,s){return e(),o("svg",u,[...v])}const R2={name:"carbon-settings-adjust",render:$},p={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),L=n("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),f=[g,L];function w(t,s){return e(),o("svg",p,[...f])}const T2={name:"carbon-information",render:w},x={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),z=[M];function C(t,s){return e(),o("svg",x,[...z])}const U2={name:"carbon-download",render:C},H={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),B=[b];function V(t,s){return e(),o("svg",H,[...B])}const W2={name:"carbon-template",render:V},Z={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),k=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),j=[A,k];function y(t,s){return e(),o("svg",Z,[...j])}const X2={name:"carbon-user-speaker",render:y},q={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},E=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),S=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),D=[E,S];function F(t,s){return e(),o("svg",q,[...D])}const Y2={name:"carbon-presentation-file",render:F},G={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},N=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),I=[N];function J(t,s){return e(),o("svg",G,[...I])}const nn={name:"carbon-pen",render:J},K={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},O=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0L140 164a8 8 0 0 0-13 2.46l-19.46 44.77a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85L166.45 127a8 8 0 0 0-2.45 13l49.67 49.67a8 8 0 0 1-.01 11.33",opacity:".2"}),n("path",{d:"m169.64 134.33l44.77-19.46a16 16 0 0 0-1.41-29.8L52.92 32.8A16 16 0 0 0 32.8 52.92L85.07 213a15.83 15.83 0 0 0 14.41 11h.78a15.83 15.83 0 0 0 14.61-9.59l19.46-44.77L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63Zm-69.48 73.76l.06-.05Zm95.15-.09l-49.67-49.67a16 16 0 0 0-26 4.94l-19.42 44.65L48 48l159.87 52.21l-44.64 19.41a16 16 0 0 0-4.94 26L208 195.31Z"})],-1),P=[O];function Q(t,s){return e(),o("svg",K,[...P])}const en={name:"ph-cursor-duotone",render:Q},R={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},T=n("path",{fill:"currentColor",d:"M219.31 192a16 16 0 0 1 0 22.63l-4.68 4.68a16 16 0 0 1-22.63 0l-55.25-55.24l-21.88 50.34a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-50.34 21.88Z"},null,-1),U=[T];function W(t,s){return e(),o("svg",R,[...U])}const on={name:"ph-cursor-fill",render:W},X={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Y=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),n1=[Y];function e1(t,s){return e(),o("svg",X,[...n1])}const tn={name:"carbon-sun",render:e1},o1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},t1=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),s1=[t1];function c1(t,s){return e(),o("svg",o1,[...s1])}const sn={name:"carbon-moon",render:c1},_1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},i1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),l1=[i1];function h1(t,s){return e(),o("svg",_1,[...l1])}const cn={name:"carbon-apps",render:h1},r1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},a1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),d1=[a1];function u1(t,s){return e(),o("svg",r1,[...d1])}const _n={name:"carbon-arrow-right",render:u1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),$1=[v1];function p1(t,s){return e(),o("svg",m1,[...$1])}const ln={name:"carbon-arrow-left",render:p1},g1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},L1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),f1=[L1];function w1(t,s){return e(),o("svg",g1,[...f1])}const hn={name:"carbon-maximize",render:w1},x1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),z1=[M1];function C1(t,s){return e(),o("svg",x1,[...z1])}const rn={name:"carbon-minimize",render:C1},H1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b1=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),B1=[b1];function V1(t,s){return e(),o("svg",H1,[...B1])}const an={name:"carbon-checkmark",render:V1},Z1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A1=n("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),k1=[A1];function j1(t,s){return e(),o("svg",Z1,[...k1])}const dn={name:"carbon-renew",render:j1},y1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q1=n("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),E1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),S1=[q1,E1];function D1(t,s){return e(),o("svg",y1,[...S1])}const un={name:"carbon-time",render:D1},F1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},G1=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),N1=n("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),I1=[G1,N1];function J1(t,s){return e(),o("svg",F1,[...I1])}const mn={name:"carbon-zoom-out",render:J1},K1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},O1=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),P1=n("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),Q1=[O1,P1];function R1(t,s){return e(),o("svg",K1,[...Q1])}const vn={name:"carbon-zoom-in",render:R1},T1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},U1=n("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),W1=n("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),X1=[U1,W1];function Y1(t,s){return e(),o("svg",T1,[...X1])}const $n={name:"carbon-close-outline",render:Y1},n2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},e2=n("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),o2=[e2];function t2(t,s){return e(),o("svg",n2,[...o2])}const pn={name:"carbon-error",render:t2},s2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},c2=n("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),_2=[c2];function i2(t,s){return e(),o("svg",s2,[..._2])}const gn={name:"carbon-pin",render:i2},l2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},h2=n("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),r2=[h2];function a2(t,s){return e(),o("svg",l2,[...r2])}const Ln={name:"carbon-pin-filled",render:a2},d2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},u2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),m2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),v2=[u2,m2];function $2(t,s){return e(),o("svg",d2,[...v2])}const fn={name:"carbon-trash-can",render:$2},p2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g2=n("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),L2=[g2];function f2(t,s){return e(),o("svg",p2,[...L2])}const wn={name:"carbon-redo",render:f2},w2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},x2=n("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),M2=[x2];function z2(t,s){return e(),o("svg",w2,[...M2])}const xn={name:"carbon-undo",render:z2},C2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},H2=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),b2=[H2];function B2(t,s){return e(),o("svg",C2,[...b2])}const Mn={name:"carbon-erase",render:B2},V2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Z2=n("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),A2=[Z2];function k2(t,s){return e(),o("svg",V2,[...A2])}const zn={name:"carbon-checkbox",render:k2},j2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y2=n("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),q2=[y2];function E2(t,s){return e(),o("svg",j2,[...q2])}const Cn={name:"carbon-radio-button",render:E2},S2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},D2=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),F2=[D2];function G2(t,s){return e(),o("svg",S2,[...F2])}const Hn={name:"carbon-arrow-up-right",render:G2},N2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},I2=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),J2=[I2];function K2(t,s){return e(),o("svg",N2,[...J2])}const bn={name:"carbon-cursor1",render:K2};export{Mn as A,xn as B,wn as C,fn as D,Ln as E,gn as F,pn as G,$n as H,bn as _,vn as a,mn as b,un as c,dn as d,Q2 as e,P2 as f,an as g,rn as h,hn as i,ln as j,_n as k,sn as l,tn as m,on as n,en as o,nn as p,R2 as q,cn as r,Y2 as s,X2 as t,W2 as u,U2 as v,T2 as w,Hn as x,Cn as y,zn as z}; diff --git a/01-overview/assets/modules/unplugin-icons-DFTLwknM.js b/01-overview/assets/modules/unplugin-icons-DFTLwknM.js new file mode 100644 index 0000000..536b07a --- /dev/null +++ b/01-overview/assets/modules/unplugin-icons-DFTLwknM.js @@ -0,0 +1 @@ +import{o as e,b as o,e as n}from"./vue-CnDFeQoy.js";const s={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},l=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),_=[l];function i(t,c){return e(),o("svg",s,[..._])}const Ln={name:"carbon-list-boxes",render:i},h={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M26 2H8a2 2 0 0 0-2 2v4H4v2h2v5H4v2h2v5H4v2h2v4a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2m0 26H8v-4h2v-2H8v-5h2v-2H8v-5h2V8H8V4h18Z"},null,-1),a=n("path",{fill:"currentColor",d:"M14 8h8v2h-8zm0 7h8v2h-8zm0 7h8v2h-8z"},null,-1),d=[r,a];function u(t,c){return e(),o("svg",h,[...d])}const fn={name:"carbon-catalog",render:u},v={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},m=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),$=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),p=[m,$];function g(t,c){return e(),o("svg",v,[...p])}const wn={name:"carbon-user-speaker",render:g},L={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},f=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),w=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),x=[f,w];function M(t,c){return e(),o("svg",L,[...x])}const xn={name:"carbon-presentation-file",render:M},z={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),H=[C];function B(t,c){return e(),o("svg",z,[...H])}const Mn={name:"carbon-pen",render:B},b={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},V=n("path",{fill:"currentColor",d:"m20.17 19l-2.59 2.59L19 23l4-4l-4-4l-1.42 1.41zm-8.34 0l2.59-2.59L13 15l-4 4l4 4l1.42-1.41z"},null,-1),Z=n("circle",{cx:"9",cy:"8",r:"1",fill:"currentColor"},null,-1),A=n("circle",{cx:"6",cy:"8",r:"1",fill:"currentColor"},null,-1),k=n("path",{fill:"currentColor",d:"M28 4H4c-1.103 0-2 .898-2 2v20c0 1.103.897 2 2 2h24c1.103 0 2-.897 2-2V6c0-1.102-.897-2-2-2m0 2v4H4V6zM4 26V12h24v14z"},null,-1),y=[V,Z,A,k];function j(t,c){return e(),o("svg",b,[...y])}const zn={name:"carbon-cics-program",render:j},D={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),I=[q];function E(t,c){return e(),o("svg",D,[...I])}const Cn={name:"carbon-sun",render:E},S={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},F=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),G=[F];function J(t,c){return e(),o("svg",S,[...G])}const Hn={name:"carbon-moon",render:J},K={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},N=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),U=[N];function O(t,c){return e(),o("svg",K,[...U])}const Bn={name:"carbon-cursor1",render:O},P={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Q=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),R=n("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),T=[Q,R];function W(t,c){return e(),o("svg",P,[...T])}const bn={name:"carbon-zoom-out",render:W},X={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Y=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),n1=n("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),e1=[Y,n1];function o1(t,c){return e(),o("svg",X,[...e1])}const Vn={name:"carbon-zoom-in",render:o1},t1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},c1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),s1=[c1];function l1(t,c){return e(),o("svg",t1,[...s1])}const Zn={name:"carbon-maximize",render:l1},_1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},i1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),h1=[i1];function r1(t,c){return e(),o("svg",_1,[...h1])}const An={name:"carbon-minimize",render:r1},a1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},d1=n("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),u1=[d1];function v1(t,c){return e(),o("svg",a1,[...u1])}const kn={name:"carbon-renew",render:v1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},$1=n("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),p1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),g1=[$1,p1];function L1(t,c){return e(),o("svg",m1,[...g1])}const yn={name:"carbon-time",render:L1},f1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},w1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),x1=[w1];function M1(t,c){return e(),o("svg",f1,[...x1])}const jn={name:"carbon-arrow-left",render:M1},z1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),H1=[C1];function B1(t,c){return e(),o("svg",z1,[...H1])}const Dn={name:"carbon-arrow-right",render:B1},b1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},V1=n("path",{fill:"currentColor",d:"M16 4L6 14l1.41 1.41L15 7.83V28h2V7.83l7.59 7.58L26 14z"},null,-1),Z1=[V1];function A1(t,c){return e(),o("svg",b1,[...Z1])}const qn={name:"carbon-arrow-up",render:A1},k1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y1=n("path",{fill:"currentColor",d:"M24.59 16.59L17 24.17V4h-2v20.17l-7.59-7.58L6 18l10 10l10-10z"},null,-1),j1=[y1];function D1(t,c){return e(),o("svg",k1,[...j1])}const In={name:"carbon-arrow-down",render:D1},q1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},I1=n("path",{d:"M29.537 13.76l-3.297-3.297a1.586 1.586 0 0 0-2.24 0L10 24.467V30h5.533l14.004-14a1.586 1.586 0 0 0 0-2.24zM14.704 28H12v-2.704l9.44-9.441l2.705 2.704zM25.56 17.145l-2.704-2.704l2.267-2.267l2.704 2.704z",fill:"currentColor"},null,-1),E1=n("path",{d:"M11 17h2v-7h3V8H8v2h3v7z",fill:"currentColor"},null,-1),S1=n("path",{d:"M8 20H4V4h16v4h2V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4z",fill:"currentColor"},null,-1),F1=[I1,E1,S1];function G1(t,c){return e(),o("svg",q1,[...F1])}const En={name:"carbon-text-annotation-toggle",render:G1},J1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),N1=[K1];function U1(t,c){return e(),o("svg",J1,[...N1])}const Sn={name:"carbon-apps",render:U1},O1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},P1=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),Q1=[P1];function R1(t,c){return e(),o("svg",O1,[...Q1])}const Fn={name:"carbon-settings-adjust",render:R1},T1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},W1=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),X1=n("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),Y1=[W1,X1];function n2(t,c){return e(),o("svg",T1,[...Y1])}const Gn={name:"carbon-information",render:n2},e2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},o2=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),t2=[o2];function c2(t,c){return e(),o("svg",e2,[...t2])}const Jn={name:"carbon-download",render:c2},s2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},l2=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),_2=[l2];function i2(t,c){return e(),o("svg",s2,[..._2])}const Kn={name:"carbon-template",render:i2},h2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},r2=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0l-51.31-51.31a8 8 0 0 0-13 2.46l-17.82 46.41a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85l-46.41 17.82a8 8 0 0 0-2.46 13l51.31 51.31a8 8 0 0 1 0 11.34",opacity:".2"}),n("path",{d:"M168 132.69L214.08 115l.33-.13a16 16 0 0 0-1.41-29.8L52.92 32.8A15.95 15.95 0 0 0 32.8 52.92L85.07 213a15.82 15.82 0 0 0 14.41 11h.78a15.84 15.84 0 0 0 14.61-9.59l.13-.33L132.69 168L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63ZM195.31 208L144 156.69a16 16 0 0 0-26 4.93c0 .11-.09.22-.13.32l-17.65 46L48 48l159.85 52.2l-45.95 17.64l-.32.13a16 16 0 0 0-4.93 26L208 195.31Z"})],-1),a2=[r2];function d2(t,c){return e(),o("svg",h2,[...a2])}const Nn={name:"ph-cursor-duotone",render:d2},u2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},v2=n("path",{fill:"currentColor",d:"m220.49 207.8l-12.69 12.69a12 12 0 0 1-17 0l-56.57-56.57L115 214.08l-.13.33a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-.33.13l-50.16 19.27l56.57 56.56a12 12 0 0 1 0 16.97"},null,-1),m2=[v2];function $2(t,c){return e(),o("svg",u2,[...m2])}const Un={name:"ph-cursor-fill",render:$2},p2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g2=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),L2=[g2];function f2(t,c){return e(),o("svg",p2,[...L2])}const On={name:"carbon-checkmark",render:f2},w2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},x2=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),M2=[x2];function z2(t,c){return e(),o("svg",w2,[...M2])}const Pn={name:"carbon-close",render:z2},C2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},H2=n("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),B2=n("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),b2=[H2,B2];function V2(t,c){return e(),o("svg",C2,[...b2])}const Qn={name:"carbon-close-outline",render:V2},Z2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A2=n("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),k2=[A2];function y2(t,c){return e(),o("svg",Z2,[...k2])}const Rn={name:"carbon-error",render:y2},j2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},D2=n("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),q2=[D2];function I2(t,c){return e(),o("svg",j2,[...q2])}const Tn={name:"carbon-pin",render:I2},E2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},S2=n("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),F2=[S2];function G2(t,c){return e(),o("svg",E2,[...F2])}const Wn={name:"carbon-pin-filled",render:G2},J2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),N2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),U2=[K2,N2];function O2(t,c){return e(),o("svg",J2,[...U2])}const Xn={name:"carbon-trash-can",render:O2},P2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Q2=n("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),R2=[Q2];function T2(t,c){return e(),o("svg",P2,[...R2])}const Yn={name:"carbon-redo",render:T2},W2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},X2=n("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),Y2=[X2];function nn(t,c){return e(),o("svg",W2,[...Y2])}const ne={name:"carbon-undo",render:nn},en={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},on=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),tn=[on];function cn(t,c){return e(),o("svg",en,[...tn])}const ee={name:"carbon-erase",render:cn},sn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},ln=n("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),_n=[ln];function hn(t,c){return e(),o("svg",sn,[..._n])}const oe={name:"carbon-checkbox",render:hn},rn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},an=n("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),dn=[an];function un(t,c){return e(),o("svg",rn,[...dn])}const te={name:"carbon-radio-button",render:un},vn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},mn=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),$n=[mn];function pn(t,c){return e(),o("svg",vn,[...$n])}const ce={name:"carbon-arrow-up-right",render:pn};export{Pn as A,ce as B,te as C,oe as D,ee as E,ne as F,Yn as G,Xn as H,qn as I,Wn as J,Tn as K,Rn as L,Qn as M,xn as _,wn as a,fn as b,Ln as c,Hn as d,Cn as e,zn as f,Mn as g,Vn as h,bn as i,An as j,Zn as k,yn as l,kn as m,Bn as n,jn as o,Dn as p,In as q,En as r,Sn as s,On as t,Un as u,Nn as v,Fn as w,Kn as x,Jn as y,Gn as z}; diff --git a/01-overview/assets/modules/vue-CnDFeQoy.js b/01-overview/assets/modules/vue-CnDFeQoy.js new file mode 100644 index 0000000..a9f6bec --- /dev/null +++ b/01-overview/assets/modules/vue-CnDFeQoy.js @@ -0,0 +1,91 @@ +/** +* @vue/shared v3.4.25 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function Ke(e,t){const n=new Set(e.split(","));return t?s=>n.has(s.toLowerCase()):s=>n.has(s)}const ge=Object.freeze({}),ms=Object.freeze([]),Pe=()=>{},ci=()=>!1,rn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),bi=e=>e.startsWith("onUpdate:"),oe=Object.assign,Bl=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},dm=Object.prototype.hasOwnProperty,de=(e,t)=>dm.call(e,t),H=Array.isArray,Jn=e=>Fs(e)==="[object Map]",as=e=>Fs(e)==="[object Set]",uc=e=>Fs(e)==="[object Date]",pm=e=>Fs(e)==="[object RegExp]",Z=e=>typeof e=="function",ne=e=>typeof e=="string",xt=e=>typeof e=="symbol",me=e=>e!==null&&typeof e=="object",Gi=e=>(me(e)||Z(e))&&Z(e.then)&&Z(e.catch),lf=Object.prototype.toString,Fs=e=>lf.call(e),Hl=e=>Fs(e).slice(8,-1),af=e=>Fs(e)==="[object Object]",Ul=e=>ne(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,An=Ke(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),cf=Ke("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),Yi=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},hm=/-(\w)/g,Re=Yi(e=>e.replace(hm,(t,n)=>n?n.toUpperCase():"")),mm=/\B([A-Z])/g,Qe=Yi(e=>e.replace(mm,"-$1").toLowerCase()),Wt=Yi(e=>e.charAt(0).toUpperCase()+e.slice(1)),Vt=Yi(e=>e?`on${Wt(e)}`:""),Mt=(e,t)=>!Object.is(e,t),En=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},_i=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Si=e=>{const t=ne(e)?Number(e):NaN;return isNaN(t)?e:t};let fc;const Kl=()=>fc||(fc=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}),Ht={1:"TEXT",2:"CLASS",4:"STYLE",8:"PROPS",16:"FULL_PROPS",32:"NEED_HYDRATION",64:"STABLE_FRAGMENT",128:"KEYED_FRAGMENT",256:"UNKEYED_FRAGMENT",512:"NEED_PATCH",1024:"DYNAMIC_SLOTS",2048:"DEV_ROOT_FRAGMENT",[-1]:"HOISTED",[-2]:"BAIL"},gm={1:"STABLE",2:"DYNAMIC",3:"FORWARDED"},ym="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error",vm=Ke(ym),dc=2;function bm(e,t=0,n=e.length){let s=e.split(/(\r?\n)/);const r=s.filter((l,a)=>a%2===1);s=s.filter((l,a)=>a%2===0);let i=0;const o=[];for(let l=0;l=t){for(let a=l-dc;a<=l+dc||n>i;a++){if(a<0||a>=s.length)continue;const u=a+1;o.push(`${u}${" ".repeat(Math.max(3-String(u).length,0))}| ${s[a]}`);const f=s[a].length,c=r[a]&&r[a].length||0;if(a===l){const d=t-(i-(f+c)),p=Math.max(1,n>i?f-d:n-t);o.push(" | "+" ".repeat(d)+"^".repeat(p))}else if(a>l){if(n>i){const d=Math.max(Math.min(n-i,f),1);o.push(" | "+"^".repeat(d))}i+=f+c}}break}return o.join(` +`)}function Ls(e){if(H(e)){const t={};for(let n=0;n{if(n){const s=n.split(Sm);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Em(e){let t="";if(!e||ne(e))return t;for(const n in e){const s=e[n],r=n.startsWith("--")?n:Qe(n);(ne(s)||typeof s=="number")&&(t+=`${r}:${s};`)}return t}function Ds(e){let t="";if(ne(e))t=e;else if(H(e))for(let n=0;nkn(n,t))}const $m=e=>ne(e)?e:e==null?"":H(e)||me(e)&&(e.toString===lf||!Z(e.toString))?JSON.stringify(e,gf,2):String(e),gf=(e,t)=>t&&t.__v_isRef?gf(e,t.value):Jn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[wo(s,i)+" =>"]=r,n),{})}:as(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>wo(n))}:xt(t)?wo(t):me(t)&&!H(t)&&!af(t)?String(t):t,wo=(e,t="")=>{var n;return xt(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.4.25 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function qt(e,...t){console.warn(`[Vue warn] ${e}`,...t)}let ht;class ql{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=ht,!t&&ht&&(this.index=(ht.scopes||(ht.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=ht;try{return ht=this,t()}finally{ht=n}}else qt("cannot run an inactive effect scope.")}on(){ht=this}off(){ht=this.parent}stop(t){if(this._active){let n,s;for(n=0,s=this.effects.length;n=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),an()}return this._dirtyLevel>=4}set dirty(t){this._dirtyLevel=t?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=On,n=Xn;try{return On=!0,Xn=this,this._runnings++,hc(this),this.fn()}finally{mc(this),this._runnings--,Xn=n,On=t}}stop(){var t;this.active&&(hc(this),mc(this),(t=this.onStop)==null||t.call(this),this.active=!1)}}function Fm(e){return e.value}function hc(e){e._trackId++,e._depsLength=0}function mc(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{n.dirty&&n.run()});t&&(oe(n,t),t.scope&&vf(n,t.scope)),(!t||!t.lazy)&&n.run();const s=n.run.bind(n);return s.effect=n,s}function Dm(e){e.effect.stop()}let On=!0,qo=0;const Sf=[];function ln(){Sf.push(On),On=!1}function an(){const e=Sf.pop();On=e===void 0?!0:e}function Gl(){qo++}function Yl(){for(qo--;!qo&&zo.length;)zo.shift()()}function wf(e,t,n){var s;if(t.get(e)!==e._trackId){t.set(e,e._trackId);const r=e.deps[e._depsLength];r!==t?(r&&_f(r,e),e.deps[e._depsLength++]=t):e._depsLength++,(s=e.onTrack)==null||s.call(e,oe({effect:e},n))}}const zo=[];function Ef(e,t,n){var s;Gl();for(const r of e.keys()){let i;r._dirtyLevel{const n=new Map;return n.cleanup=e,n.computed=t,n},wi=new WeakMap,Qn=Symbol("iterate"),Go=Symbol("Map key iterate");function tt(e,t,n){if(On&&Xn){let s=wi.get(e);s||wi.set(e,s=new Map);let r=s.get(n);r||s.set(n,r=Cf(()=>s.delete(n))),wf(Xn,r,{target:e,type:t,key:n})}}function Ut(e,t,n,s,r,i){const o=wi.get(e);if(!o)return;let l=[];if(t==="clear")l=[...o.values()];else if(n==="length"&&H(e)){const a=Number(s);o.forEach((u,f)=>{(f==="length"||!xt(f)&&f>=a)&&l.push(u)})}else switch(n!==void 0&&l.push(o.get(n)),t){case"add":H(e)?Ul(n)&&l.push(o.get("length")):(l.push(o.get(Qn)),Jn(e)&&l.push(o.get(Go)));break;case"delete":H(e)||(l.push(o.get(Qn)),Jn(e)&&l.push(o.get(Go)));break;case"set":Jn(e)&&l.push(o.get(Qn));break}Gl();for(const a of l)a&&Ef(a,4,{target:e,type:t,key:n,newValue:s,oldValue:r,oldTarget:i});Yl()}function Vm(e,t){var n;return(n=wi.get(e))==null?void 0:n.get(t)}const jm=Ke("__proto__,__v_isRef,__isVue"),Tf=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(xt)),gc=Bm();function Bm(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const s=re(this);for(let i=0,o=this.length;i{e[t]=function(...n){ln(),Gl();const s=re(this)[t].apply(this,n);return Yl(),an(),s}}),e}function Hm(e){xt(e)||(e=String(e));const t=re(this);return tt(t,"has",e),t.hasOwnProperty(e)}class xf{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?kf:Pf:i?Nf:Rf).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=H(t);if(!r){if(o&&de(gc,n))return Reflect.get(gc,n,s);if(n==="hasOwnProperty")return Hm}const l=Reflect.get(t,n,s);return(xt(n)?Tf.has(n):jm(n))||(r||tt(t,"get",n),i)?l:Te(l)?o&&Ul(n)?l:l.value:me(l)?r?Nt(l):pt(l):l}}class Af extends xf{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];if(!this._isShallow){const a=Mn(i);if(!In(s)&&!Mn(s)&&(i=re(i),s=re(s)),!H(t)&&Te(i)&&!Te(s))return a?!1:(i.value=s,!0)}const o=H(t)&&Ul(n)?Number(n)e,Xi=e=>Reflect.getPrototypeOf(e);function Wr(e,t,n=!1,s=!1){e=e.__v_raw;const r=re(e),i=re(t);n||(Mt(t,i)&&tt(r,"get",t),tt(r,"get",i));const{has:o}=Xi(r),l=s?Jl:n?Ql:fr;if(o.call(r,t))return l(e.get(t));if(o.call(r,i))return l(e.get(i));e!==r&&e.get(t)}function qr(e,t=!1){const n=this.__v_raw,s=re(n),r=re(e);return t||(Mt(e,r)&&tt(s,"has",e),tt(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function zr(e,t=!1){return e=e.__v_raw,!t&&tt(re(e),"iterate",Qn),Reflect.get(e,"size",e)}function yc(e){e=re(e);const t=re(this);return Xi(t).has.call(t,e)||(t.add(e),Ut(t,"add",e,e)),this}function vc(e,t){t=re(t);const n=re(this),{has:s,get:r}=Xi(n);let i=s.call(n,e);i?If(n,s,e):(e=re(e),i=s.call(n,e));const o=r.call(n,e);return n.set(e,t),i?Mt(t,o)&&Ut(n,"set",e,t,o):Ut(n,"add",e,t),this}function bc(e){const t=re(this),{has:n,get:s}=Xi(t);let r=n.call(t,e);r?If(t,n,e):(e=re(e),r=n.call(t,e));const i=s?s.call(t,e):void 0,o=t.delete(e);return r&&Ut(t,"delete",e,void 0,i),o}function _c(){const e=re(this),t=e.size!==0,n=Jn(e)?new Map(e):new Set(e),s=e.clear();return t&&Ut(e,"clear",void 0,void 0,n),s}function Gr(e,t){return function(s,r){const i=this,o=i.__v_raw,l=re(o),a=t?Jl:e?Ql:fr;return!e&&tt(l,"iterate",Qn),o.forEach((u,f)=>s.call(r,a(u),a(f),i))}}function Yr(e,t,n){return function(...s){const r=this.__v_raw,i=re(r),o=Jn(i),l=e==="entries"||e===Symbol.iterator&&o,a=e==="keys"&&o,u=r[e](...s),f=n?Jl:t?Ql:fr;return!t&&tt(i,"iterate",a?Go:Qn),{next(){const{value:c,done:d}=u.next();return d?{value:c,done:d}:{value:l?[f(c[0]),f(c[1])]:f(c),done:d}},[Symbol.iterator](){return this}}}}function dn(e){return function(...t){{const n=t[0]?`on key "${t[0]}" `:"";qt(`${Wt(e)} operation ${n}failed: target is readonly.`,re(this))}return e==="delete"?!1:e==="clear"?void 0:this}}function zm(){const e={get(i){return Wr(this,i)},get size(){return zr(this)},has:qr,add:yc,set:vc,delete:bc,clear:_c,forEach:Gr(!1,!1)},t={get(i){return Wr(this,i,!1,!0)},get size(){return zr(this)},has:qr,add:yc,set:vc,delete:bc,clear:_c,forEach:Gr(!1,!0)},n={get(i){return Wr(this,i,!0)},get size(){return zr(this,!0)},has(i){return qr.call(this,i,!0)},add:dn("add"),set:dn("set"),delete:dn("delete"),clear:dn("clear"),forEach:Gr(!0,!1)},s={get(i){return Wr(this,i,!0,!0)},get size(){return zr(this,!0)},has(i){return qr.call(this,i,!0)},add:dn("add"),set:dn("set"),delete:dn("delete"),clear:dn("clear"),forEach:Gr(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=Yr(i,!1,!1),n[i]=Yr(i,!0,!1),t[i]=Yr(i,!1,!0),s[i]=Yr(i,!0,!0)}),[e,n,t,s]}const[Gm,Ym,Jm,Xm]=zm();function Qi(e,t){const n=t?e?Xm:Jm:e?Ym:Gm;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(de(n,r)&&r in s?n:s,r,i)}const Qm={get:Qi(!1,!1)},Zm={get:Qi(!1,!0)},eg={get:Qi(!0,!1)},tg={get:Qi(!0,!0)};function If(e,t,n){const s=re(n);if(s!==n&&t.call(e,s)){const r=Hl(e);qt(`Reactive ${r} contains both the raw and reactive versions of the same object${r==="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 Rf=new WeakMap,Nf=new WeakMap,Pf=new WeakMap,kf=new WeakMap;function ng(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function sg(e){return e.__v_skip||!Object.isExtensible(e)?0:ng(Hl(e))}function pt(e){return Mn(e)?e:Zi(e,!1,Um,Qm,Rf)}function Xl(e){return Zi(e,!1,Wm,Zm,Nf)}function Nt(e){return Zi(e,!0,Km,eg,Pf)}function Bt(e){return Zi(e,!0,qm,tg,kf)}function Zi(e,t,n,s,r){if(!me(e))return qt(`value cannot be made reactive: ${String(e)}`),e;if(e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=sg(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function Zn(e){return Mn(e)?Zn(e.__v_raw):!!(e&&e.__v_isReactive)}function Mn(e){return!!(e&&e.__v_isReadonly)}function In(e){return!!(e&&e.__v_isShallow)}function ur(e){return e?!!e.__v_raw:!1}function re(e){const t=e&&e.__v_raw;return t?re(t):e}function Mf(e){return Object.isExtensible(e)&&uf(e,"__v_skip",!0),e}const fr=e=>me(e)?pt(e):e,Ql=e=>me(e)?Nt(e):e,rg="Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free";class $f{constructor(t,n,s,r){this.getter=t,this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Cs(()=>t(this._value),()=>gs(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=s}get value(){const t=re(this);return(!t._cacheable||t.effect.dirty)&&Mt(t._value,t._value=t.effect.run())&&gs(t,4),Zl(t),t.effect._dirtyLevel>=2&&(this._warnRecursive&&qt(rg,` + +getter: `,this.getter),gs(t,2)),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function ig(e,t,n=!1){let s,r;const i=Z(e);i?(s=e,r=()=>{qt("Write operation failed: computed value is readonly")}):(s=e.get,r=e.set);const o=new $f(s,r,i||!r,n);return t&&!n&&(o.effect.onTrack=t.onTrack,o.effect.onTrigger=t.onTrigger),o}function Zl(e){var t;On&&Xn&&(e=re(e),wf(Xn,(t=e.dep)!=null?t:e.dep=Cf(()=>e.dep=void 0,e instanceof $f?e:void 0),{target:e,type:"get",key:"value"}))}function gs(e,t=4,n){e=re(e);const s=e.dep;s&&Ef(s,t,{target:e,type:"set",key:"value",newValue:n})}function Te(e){return!!(e&&e.__v_isRef===!0)}function X(e){return Ff(e,!1)}function ea(e){return Ff(e,!0)}function Ff(e,t){return Te(e)?e:new og(e,t)}class og{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:re(t),this._value=n?t:fr(t)}get value(){return Zl(this),this._value}set value(t){const n=this.__v_isShallow||In(t)||Mn(t);t=n?t:re(t),Mt(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:fr(t),gs(this,4,t))}}function lg(e){gs(e,4,e.value)}function Ge(e){return Te(e)?e.value:e}function ag(e){return Z(e)?e():Ge(e)}const cg={get:(e,t,n)=>Ge(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return Te(r)&&!Te(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function ta(e){return Zn(e)?e:new Proxy(e,cg)}class ug{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:s}=t(()=>Zl(this),()=>gs(this));this._get=n,this._set=s}get value(){return this._get()}set value(t){this._set(t)}}function eo(e){return new ug(e)}function Lf(e){ur(e)||qt("toRefs() expects a reactive object but received a plain one.");const t=H(e)?new Array(e.length):{};for(const n in e)t[n]=Vf(e,n);return t}class fg{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,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 Vm(re(this._object),this._key)}}class dg{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Df(e,t,n){return Te(e)?e:Z(e)?new dg(e):me(e)&&arguments.length>1?Vf(e,t,n):X(e)}function Vf(e,t,n){const s=e[t];return Te(s)?s:new fg(e,t,n)}const pg={GET:"get",HAS:"has",ITERATE:"iterate"},hg={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"};/** +* @vue/runtime-core v3.4.25 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/const es=[];function Xs(e){es.push(e)}function Qs(){es.pop()}function M(e,...t){ln();const n=es.length?es[es.length-1].component:null,s=n&&n.appContext.config.warnHandler,r=mg();if(s)Kt(s,n,11,[e+t.map(i=>{var o,l;return(l=(o=i.toString)==null?void 0:o.call(i))!=null?l:JSON.stringify(i)}).join(""),n&&n.proxy,r.map(({vnode:i})=>`at <${fo(n,i.type)}>`).join(` +`),r]);else{const i=[`[Vue warn]: ${e}`,...t];r.length&&i.push(` +`,...gg(r)),console.warn(...i)}an()}function mg(){let e=es[es.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 s=e.component&&e.component.parent;e=s&&s.vnode}return t}function gg(e){const t=[];return e.forEach((n,s)=>{t.push(...s===0?[]:[` +`],...yg(n))}),t}function yg({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",s=e.component?e.component.parent==null:!1,r=` at <${fo(e.component,e.type,s)}`,i=">"+n;return e.props?[r,...vg(e.props),i]:[r+i]}function vg(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(s=>{t.push(...jf(s,e[s]))}),n.length>3&&t.push(" ..."),t}function jf(e,t,n){return ne(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:Te(t)?(t=jf(e,re(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):Z(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=re(t),n?t:[`${e}=`,t])}function na(e,t){e!==void 0&&(typeof e!="number"?M(`${t} is not a valid number - got ${JSON.stringify(e)}.`):isNaN(e)&&M(`${t} is NaN - the duration expression might be incorrect.`))}const bg={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",WATCH_GETTER:2,2:"WATCH_GETTER",WATCH_CALLBACK:3,3:"WATCH_CALLBACK",WATCH_CLEANUP:4,4:"WATCH_CLEANUP",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER"},to={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 Kt(e,t,n,s){try{return s?e(...s):e()}catch(r){Dn(r,t,n)}}function gt(e,t,n,s){if(Z(e)){const r=Kt(e,t,n,s);return r&&Gi(r)&&r.catch(i=>{Dn(i,t,n)}),r}if(H(e)){const r=[];for(let i=0;i>>1,r=Ze[s],i=hr(r);ijt&&Ze.splice(t,1)}function pr(e){H(e)?ys.push(...e):(!Zt||!Zt.includes(e,e.allowRecurse?yn+1:yn))&&ys.push(e),Hf()}function Sc(e,t,n=dr?jt+1:0){for(t=t||new Map;nhr(n)-hr(s));if(ys.length=0,Zt){Zt.push(...t);return}for(Zt=t,e=e||new Map,yn=0;yne.id==null?1/0:e.id,Cg=(e,t)=>{const n=hr(e)-hr(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Uf(e){Yo=!1,dr=!0,e=e||new Map,Ze.sort(Cg);const t=n=>ra(e,n);try{for(jt=0;jtSg){const s=t.ownerInstance,r=s&&vr(s.type);return Dn(`Maximum recursive updates exceeded${r?` in component <${r}>`:""}. 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 Rn=!1;const hs=new Set;Kl().__VUE_HMR_RUNTIME__={createRecord:Eo(Kf),rerender:Eo(Ag),reload:Eo(Og)};const ss=new Map;function Tg(e){const t=e.type.__hmrId;let n=ss.get(t);n||(Kf(t,e.type),n=ss.get(t)),n.instances.add(e)}function xg(e){ss.get(e.type.__hmrId).instances.delete(e)}function Kf(e,t){return ss.has(e)?!1:(ss.set(e,{initialDef:Zs(t),instances:new Set}),!0)}function Zs(e){return Wd(e)?e.__vccOpts:e}function Ag(e,t){const n=ss.get(e);n&&(n.initialDef.render=t,[...n.instances].forEach(s=>{t&&(s.render=t,Zs(s.type).render=t),s.renderCache=[],Rn=!0,s.effect.dirty=!0,s.update(),Rn=!1}))}function Og(e,t){const n=ss.get(e);if(!n)return;t=Zs(t),wc(n.initialDef,t);const s=[...n.instances];for(const r of s){const i=Zs(r.type);hs.has(i)||(i!==n.initialDef&&wc(i,t),hs.add(i)),r.appContext.propsCache.delete(r.type),r.appContext.emitsCache.delete(r.type),r.appContext.optionsCache.delete(r.type),r.ceReload?(hs.add(i),r.ceReload(t.styles),hs.delete(i)):r.parent?(r.parent.effect.dirty=!0,Ir(r.parent.update)):r.appContext.reload?r.appContext.reload():typeof window<"u"?window.location.reload():console.warn("[HMR] Root or manually mounted instance modified. Full reload required.")}pr(()=>{for(const r of s)hs.delete(Zs(r.type))})}function wc(e,t){oe(e,t);for(const n in e)n!=="__file"&&!(n in t)&&delete e[n]}function Eo(e){return(t,n)=>{try{return e(t,n)}catch(s){console.error(s),console.warn("[HMR] Something went wrong during Vue component hot-reload. Full reload required.")}}}let It,Gs=[],Jo=!1;function Rr(e,...t){It?It.emit(e,...t):Jo||Gs.push({event:e,args:t})}function ia(e,t){var n,s;It=e,It?(It.enabled=!0,Gs.forEach(({event:r,args:i})=>It.emit(r,...i)),Gs=[]):typeof window<"u"&&window.HTMLElement&&!((s=(n=window.navigator)==null?void 0:n.userAgent)!=null&&s.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(i=>{ia(i,t)}),setTimeout(()=>{It||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Jo=!0,Gs=[])},3e3)):(Jo=!0,Gs=[])}function Ig(e,t){Rr("app:init",e,t,{Fragment:De,Text:$n,Comment:$e,Static:Nn})}function Rg(e){Rr("app:unmount",e)}const Xo=oa("component:added"),Wf=oa("component:updated"),Ng=oa("component:removed"),Pg=e=>{It&&typeof It.cleanupBuffer=="function"&&!It.cleanupBuffer(e)&&Ng(e)};/*! #__NO_SIDE_EFFECTS__ */function oa(e){return t=>{Rr(e,t.appContext.app,t.uid,t.parent?t.parent.uid:void 0,t)}}const kg=qf("perf:start"),Mg=qf("perf:end");function qf(e){return(t,n,s)=>{Rr(e,t.appContext.app,t.uid,t,n,s)}}function $g(e,t,n){Rr("component:emit",e.appContext.app,e,t,n)}function Fg(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||ge;{const{emitsOptions:f,propsOptions:[c]}=e;if(f)if(!(t in f))(!c||!(Vt(t)in c))&&M(`Component emitted event "${t}" but it is neither declared in the emits option nor as an "${Vt(t)}" prop.`);else{const d=f[t];Z(d)&&(d(...n)||M(`Invalid event arguments: event validation failed for event "${t}".`))}}let r=n;const i=t.startsWith("update:"),o=i&&t.slice(7);if(o&&o in s){const f=`${o==="modelValue"?"model":o}Modifiers`,{number:c,trim:d}=s[f]||ge;d&&(r=n.map(p=>ne(p)?p.trim():p)),c&&(r=n.map(_i))}$g(e,t,r);{const f=t.toLowerCase();f!==t&&s[Vt(f)]&&M(`Event "${f}" is emitted in component ${fo(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 "${Qe(t)}" instead of "${t}".`)}let l,a=s[l=Vt(t)]||s[l=Vt(Re(t))];!a&&i&&(a=s[l=Vt(Qe(t))]),a&>(a,e,6,r);const u=s[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,gt(u,e,6,r)}}function zf(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!Z(e)){const a=u=>{const f=zf(u,t,!0);f&&(l=!0,oe(o,f))};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!i&&!l?(me(e)&&s.set(e,null),null):(H(i)?i.forEach(a=>o[a]=null):oe(o,i),me(e)&&s.set(e,o),o)}function no(e,t){return!e||!rn(t)?!1:(t=t.slice(2).replace(/Once$/,""),de(e,t[0].toLowerCase()+t.slice(1))||de(e,Qe(t))||de(e,t))}let Ie=null,so=null;function mr(e){const t=Ie;return Ie=e,so=e&&e.type.__scopeId||null,t}function Lg(e){so=e}function Dg(){so=null}const Vg=e=>la;function la(e,t=Ie,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&ol(-1);const i=mr(t);let o;try{o=e(...r)}finally{mr(i),s._d&&ol(1)}return Wf(t),o};return s._n=!0,s._c=!0,s._d=!0,s}let Qo=!1;function Ci(){Qo=!0}function ui(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:a,render:u,renderCache:f,props:c,data:d,setupState:p,ctx:m,inheritAttrs:w}=e,E=mr(e);let y,v;Qo=!1;try{if(n.shapeFlag&4){const S=r||s,O=p.__isScriptSetup?new Proxy(S,{get(C,x,T){return M(`Property '${String(x)}' was accessed via 'this'. Avoid using 'this' in templates.`),Reflect.get(C,x,T)}}):S;y=ut(u.call(O,S,f,Bt(c),p,d,m)),v=l}else{const S=t;l===c&&Ci(),y=ut(S.length>1?S(Bt(c),{get attrs(){return Ci(),l},slots:o,emit:a}):S(Bt(c),null)),v=t.props?l:jg(l)}}catch(S){tr.length=0,Dn(S,e,1),y=xe($e)}let g=y,b;if(y.patchFlag>0&&y.patchFlag&2048&&([g,b]=Gf(y)),v&&w!==!1){const S=Object.keys(v),{shapeFlag:O}=g;if(S.length){if(O&7)i&&S.some(bi)&&(v=Bg(v,i)),g=At(g,v);else if(!Qo&&g.type!==$e){const C=Object.keys(l),x=[],T=[];for(let A=0,k=C.length;A renders non-element root node that cannot be animated."),g.transition=n.transition),b?b(g):y=g,mr(E),y}const Gf=e=>{const t=e.children,n=e.dynamicChildren,s=ro(t,!1);if(s){if(s.patchFlag>0&&s.patchFlag&2048)return Gf(s)}else return[e,void 0];const r=t.indexOf(s),i=n?n.indexOf(s):-1,o=l=>{t[r]=l,n&&(i>-1?n[i]=l:l.patchFlag>0&&(e.dynamicChildren=[...n,l]))};return[ut(s),o]};function ro(e,t=!0){let n;for(let s=0;s0&&n.patchFlag&2048)return ro(n.children)}}else return}return n}const jg=e=>{let t;for(const n in e)(n==="class"||n==="style"||rn(n))&&((t||(t={}))[n]=e[n]);return t},Bg=(e,t)=>{const n={};for(const s in e)(!bi(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n},Ec=e=>e.shapeFlag&7||e.type===$e;function Hg(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:a}=t,u=i.emitsOptions;if((r||l)&&Rn||t.dirs||t.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return s?Cc(s,o,u):!!o;if(a&8){const f=t.dynamicProps;for(let c=0;ce.__isSuspense;let Zo=0;const zg={name:"Suspense",__isSuspense:!0,process(e,t,n,s,r,i,o,l,a,u){if(e==null)Yg(t,n,s,r,i,o,l,a,u);else{if(i&&i.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}Jg(e,t,n,s,r,o,l,a,u)}},hydrate:Xg,create:fa,normalize:Qg},Gg=zg;function gr(e,t){const n=e.props&&e.props[t];Z(n)&&n()}function Yg(e,t,n,s,r,i,o,l,a){const{p:u,o:{createElement:f}}=a,c=f("div"),d=e.suspense=fa(e,r,s,t,c,n,i,o,l,a);u(null,d.pendingBranch=e.ssContent,c,null,s,d,i,o),d.deps>0?(gr(e,"onPending"),gr(e,"onFallback"),u(null,e.ssFallback,t,n,s,null,i,o),vs(d,e.ssFallback)):d.resolve(!1,!0)}function Jg(e,t,n,s,r,i,o,l,{p:a,um:u,o:{createElement:f}}){const c=t.suspense=e.suspense;c.vnode=t,t.el=e.el;const d=t.ssContent,p=t.ssFallback,{activeBranch:m,pendingBranch:w,isInFallback:E,isHydrating:y}=c;if(w)c.pendingBranch=d,Rt(d,w)?(a(w,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():E&&(y||(a(m,p,n,s,r,null,i,o,l),vs(c,p)))):(c.pendingId=Zo++,y?(c.isHydrating=!1,c.activeBranch=w):u(w,r,c),c.deps=0,c.effects.length=0,c.hiddenContainer=f("div"),E?(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():(a(m,p,n,s,r,null,i,o,l),vs(c,p))):m&&Rt(d,m)?(a(m,d,n,s,r,c,i,o,l),c.resolve(!0)):(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0&&c.resolve()));else if(m&&Rt(d,m))a(m,d,n,s,r,c,i,o,l),vs(c,d);else if(gr(t,"onPending"),c.pendingBranch=d,d.shapeFlag&512?c.pendingId=d.component.suspenseId:c.pendingId=Zo++,a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0)c.resolve();else{const{timeout:v,pendingId:g}=c;v>0?setTimeout(()=>{c.pendingId===g&&c.fallback(p)},v):v===0&&c.fallback(p)}}let xc=!1;function fa(e,t,n,s,r,i,o,l,a,u,f=!1){xc||(xc=!0,console[console.info?"info":"log"](" is an experimental feature and its API will likely change."));const{p:c,m:d,um:p,n:m,o:{parentNode:w,remove:E}}=u;let y;const v=Zg(e);v&&t!=null&&t.pendingBranch&&(y=t.pendingId,t.deps++);const g=e.props?Si(e.props.timeout):void 0;na(g,"Suspense timeout");const b=i,S={vnode:e,parent:t,parentComponent:n,namespace:o,container:s,hiddenContainer:r,deps:0,pendingId:Zo++,timeout:typeof g=="number"?g:-1,activeBranch:null,pendingBranch:null,isInFallback:!f,isHydrating:f,isUnmounted:!1,effects:[],resolve(O=!1,C=!1){{if(!O&&!S.pendingBranch)throw new Error("suspense.resolve() is called without a pending branch.");if(S.isUnmounted)throw new Error("suspense.resolve() is called on an already unmounted suspense boundary.")}const{vnode:x,activeBranch:T,pendingBranch:A,pendingId:k,effects:I,parentComponent:V,container:Y}=S;let Q=!1;S.isHydrating?S.isHydrating=!1:O||(Q=T&&A.transition&&A.transition.mode==="out-in",Q&&(T.transition.afterLeave=()=>{k===S.pendingId&&(d(A,Y,i===b?m(T):i,0),pr(I))}),T&&(w(T.el)!==S.hiddenContainer&&(i=m(T)),p(T,V,S,!0)),Q||d(A,Y,i,0)),vs(S,A),S.pendingBranch=null,S.isInFallback=!1;let z=S.parent,G=!1;for(;z;){if(z.pendingBranch){z.effects.push(...I),G=!0;break}z=z.parent}!G&&!Q&&pr(I),S.effects=[],v&&t&&t.pendingBranch&&y===t.pendingId&&(t.deps--,t.deps===0&&!C&&t.resolve()),gr(x,"onResolve")},fallback(O){if(!S.pendingBranch)return;const{vnode:C,activeBranch:x,parentComponent:T,container:A,namespace:k}=S;gr(C,"onFallback");const I=m(x),V=()=>{S.isInFallback&&(c(null,O,A,I,T,null,k,l,a),vs(S,O))},Y=O.transition&&O.transition.mode==="out-in";Y&&(x.transition.afterLeave=V),S.isInFallback=!0,p(x,T,null,!0),Y||V()},move(O,C,x){S.activeBranch&&d(S.activeBranch,O,C,x),S.container=O},next(){return S.activeBranch&&m(S.activeBranch)},registerDep(O,C){const x=!!S.pendingBranch;x&&S.deps++;const T=O.vnode.el;O.asyncDep.catch(A=>{Dn(A,O,0)}).then(A=>{if(O.isUnmounted||S.isUnmounted||S.pendingId!==O.suspenseId)return;O.asyncResolved=!0;const{vnode:k}=O;Xs(k),fl(O,A,!1),T&&(k.el=T);const I=!T&&O.subTree.el;C(O,k,w(T||O.subTree.el),T?null:m(O.subTree),S,o,a),I&&E(I),aa(O,k.el),Qs(),x&&--S.deps===0&&S.resolve()})},unmount(O,C){S.isUnmounted=!0,S.activeBranch&&p(S.activeBranch,n,O,C),S.pendingBranch&&p(S.pendingBranch,n,O,C)}};return S}function Xg(e,t,n,s,r,i,o,l,a){const u=t.suspense=fa(t,s,n,e.parentNode,document.createElement("div"),null,r,i,o,l,!0),f=a(e,u.pendingBranch=t.ssContent,n,u,i,o);return u.deps===0&&u.resolve(!1,!0),f}function Qg(e){const{shapeFlag:t,children:n}=e,s=t&32;e.ssContent=Ac(s?n.default:n),e.ssFallback=s?Ac(n.fallback):xe($e)}function Ac(e){let t;if(Z(e)){const n=is&&e._c;n&&(e._d=!1,co()),e=e(),n&&(e._d=!0,t=ft,kd())}if(H(e)){const n=ro(e);!n&&e.filter(s=>s!==ca).length>0&&M(" slots expect a single root node."),e=n}return e=ut(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function Jf(e,t){t&&t.pendingBranch?H(e)?t.effects.push(...e):t.effects.push(e):pr(e)}function vs(e,t){e.activeBranch=t;const{vnode:n,parentComponent:s}=e;let r=t.el;for(;!r&&t.component;)t=t.component.subTree,r=t.el;n.el=r,s&&s.subTree===n&&(s.vnode.el=r,aa(s,r))}function Zg(e){var t;return((t=e.props)==null?void 0:t.suspensible)!=null&&e.props.suspensible!==!1}const Xf=Symbol.for("v-scx"),Qf=()=>{{const e=Ct(Xf);return e||M("Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build."),e}};function da(e,t){return Nr(e,null,t)}function Zf(e,t){return Nr(e,null,oe({},t,{flush:"post"}))}function ed(e,t){return Nr(e,null,oe({},t,{flush:"sync"}))}const Jr={};function be(e,t,n){return Z(t)||M("`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."),Nr(e,t,n)}function Nr(e,t,{immediate:n,deep:s,flush:r,once:i,onTrack:o,onTrigger:l}=ge){if(t&&i){const C=t;t=(...x)=>{C(...x),O()}}s!==void 0&&typeof s=="number"&&M('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&&M('watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.'),s!==void 0&&M('watch() "deep" option is only respected when using the watch(source, callback, options?) signature.'),i!==void 0&&M('watch() "once" option is only respected when using the watch(source, callback, options?) signature.'));const a=C=>{M("Invalid watch source: ",C,"A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.")},u=ke,f=C=>s===!0?C:qn(C,s===!1?1:void 0);let c,d=!1,p=!1;if(Te(e)?(c=()=>e.value,d=In(e)):Zn(e)?(c=()=>f(e),d=!0):H(e)?(p=!0,d=e.some(C=>Zn(C)||In(C)),c=()=>e.map(C=>{if(Te(C))return C.value;if(Zn(C))return f(C);if(Z(C))return Kt(C,u,2);a(C)})):Z(e)?t?c=()=>Kt(e,u,2):c=()=>(m&&m(),gt(e,u,3,[w])):(c=Pe,a(e)),t&&s){const C=c;c=()=>qn(C())}let m,w=C=>{m=b.onStop=()=>{Kt(C,u,4),m=b.onStop=void 0}},E;if(Mr)if(w=Pe,t?n&>(t,u,3,[c(),p?[]:void 0,w]):c(),r==="sync"){const C=Qf();E=C.__watcherHandles||(C.__watcherHandles=[])}else return Pe;let y=p?new Array(e.length).fill(Jr):Jr;const v=()=>{if(!(!b.active||!b.dirty))if(t){const C=b.run();(s||d||(p?C.some((x,T)=>Mt(x,y[T])):Mt(C,y)))&&(m&&m(),gt(t,u,3,[C,y===Jr?void 0:p&&y[0]===Jr?[]:y,w]),y=C)}else b.run()};v.allowRecurse=!!t;let g;r==="sync"?g=v:r==="post"?g=()=>ze(v,u&&u.suspense):(v.pre=!0,u&&(v.id=u.uid),g=()=>Ir(v));const b=new Cs(c,Pe,g),S=zl(),O=()=>{b.stop(),S&&Bl(S.effects,b)};return b.onTrack=o,b.onTrigger=l,t?n?v():y=b.run():r==="post"?ze(b.run.bind(b),u&&u.suspense):b.run(),E&&E.push(O),O}function ey(e,t,n){const s=this.proxy,r=ne(e)?e.includes(".")?td(s,e):()=>s[e]:e.bind(s,s);let i;Z(t)?i=t:(i=t.handler,n=t);const o=os(this),l=Nr(r,i.bind(s),n);return o(),l}function td(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r0){if(n>=t)return e;n++}if(s=s||new Set,s.has(e))return e;if(s.add(e),Te(e))qn(e.value,t,n,s);else if(H(e))for(let r=0;r{qn(r,t,n,s)});else if(af(e))for(const r in e)qn(e[r],t,n,s);return e}function nd(e){cf(e)&&M("Do not use built-in directive ids as custom directive id: "+e)}function ty(e,t){if(Ie===null)return M("withDirectives can only be used inside render functions."),e;const n=uo(Ie)||Ie.proxy,s=e.dirs||(e.dirs=[]);for(let r=0;r{e.isMounted=!0}),ao(()=>{e.isUnmounting=!0}),e}const _t=[Function,Array],ha={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:_t,onEnter:_t,onAfterEnter:_t,onEnterCancelled:_t,onBeforeLeave:_t,onLeave:_t,onAfterLeave:_t,onLeaveCancelled:_t,onBeforeAppear:_t,onAppear:_t,onAfterAppear:_t,onAppearCancelled:_t},ny={name:"BaseTransition",props:ha,setup(e,{slots:t}){const n=Ye(),s=pa();return()=>{const r=t.default&&io(t.default(),!0);if(!r||!r.length)return;let i=r[0];if(r.length>1){let d=!1;for(const p of r)if(p.type!==$e){if(d){M(" can only be used on a single element or component. Use for lists.");break}i=p,d=!0}}const o=re(e),{mode:l}=o;if(l&&l!=="in-out"&&l!=="out-in"&&l!=="default"&&M(`invalid mode: ${l}`),s.isLeaving)return Co(i);const a=Oc(i);if(!a)return Co(i);const u=Ts(a,o,s,n);rs(a,u);const f=n.subTree,c=f&&Oc(f);if(c&&c.type!==$e&&!Rt(a,c)){const d=Ts(c,o,s,n);if(rs(c,d),l==="out-in")return s.isLeaving=!0,d.afterLeave=()=>{s.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},Co(i);l==="in-out"&&a.type!==$e&&(d.delayLeave=(p,m,w)=>{const E=rd(s,c);E[String(c.key)]=c,p[vn]=()=>{m(),p[vn]=void 0,delete u.delayedLeave},u.delayedLeave=w})}return i}}},sd=ny;function rd(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function Ts(e,t,n,s){const{appear:r,mode:i,persisted:o=!1,onBeforeEnter:l,onEnter:a,onAfterEnter:u,onEnterCancelled:f,onBeforeLeave:c,onLeave:d,onAfterLeave:p,onLeaveCancelled:m,onBeforeAppear:w,onAppear:E,onAfterAppear:y,onAppearCancelled:v}=t,g=String(e.key),b=rd(n,e),S=(x,T)=>{x&>(x,s,9,T)},O=(x,T)=>{const A=T[1];S(x,T),H(x)?x.every(k=>k.length<=1)&&A():x.length<=1&&A()},C={mode:i,persisted:o,beforeEnter(x){let T=l;if(!n.isMounted)if(r)T=w||l;else return;x[vn]&&x[vn](!0);const A=b[g];A&&Rt(e,A)&&A.el[vn]&&A.el[vn](),S(T,[x])},enter(x){let T=a,A=u,k=f;if(!n.isMounted)if(r)T=E||a,A=y||u,k=v||f;else return;let I=!1;const V=x[Xr]=Y=>{I||(I=!0,Y?S(k,[x]):S(A,[x]),C.delayedLeave&&C.delayedLeave(),x[Xr]=void 0)};T?O(T,[x,V]):V()},leave(x,T){const A=String(e.key);if(x[Xr]&&x[Xr](!0),n.isUnmounting)return T();S(c,[x]);let k=!1;const I=x[vn]=V=>{k||(k=!0,T(),V?S(m,[x]):S(p,[x]),x[vn]=void 0,b[A]===e&&delete b[A])};b[A]=e,d?O(d,[x,I]):I()},clone(x){return Ts(x,t,n,s)}};return C}function Co(e){if(Vs(e))return e=At(e),e.children=null,e}function Oc(e){if(!Vs(e))return e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&Z(n.default))return n.default()}}function rs(e,t){e.shapeFlag&6&&e.component?rs(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 io(e,t=!1,n){let s=[],r=0;for(let i=0;i1)for(let i=0;i!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function sy(e){Z(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:r=200,timeout:i,suspensible:o=!0,onError:l}=e;let a=null,u,f=0;const c=()=>(f++,a=null,d()),d=()=>{let p;return a||(p=a=t().catch(m=>{if(m=m instanceof Error?m:new Error(String(m)),l)return new Promise((w,E)=>{l(m,()=>w(c()),()=>E(m),f+1)});throw m}).then(m=>{if(p!==a&&a)return a;if(m||M("Async component loader resolved to undefined. If you are using retry(), make sure to return its return value."),m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),m&&!me(m)&&!Z(m))throw new Error(`Invalid async component load result: ${m}`);return u=m,m}))};return Pr({name:"AsyncComponentWrapper",__asyncLoader:d,get __asyncResolved(){return u},setup(){const p=ke;if(u)return()=>To(u,p);const m=v=>{a=null,Dn(v,p,13,!s)};if(o&&p.suspense||Mr)return d().then(v=>()=>To(v,p)).catch(v=>(m(v),()=>s?xe(s,{error:v}):null));const w=X(!1),E=X(),y=X(!!r);return r&&setTimeout(()=>{y.value=!1},r),i!=null&&setTimeout(()=>{if(!w.value&&!E.value){const v=new Error(`Async component timed out after ${i}ms.`);m(v),E.value=v}},i),d().then(()=>{w.value=!0,p.parent&&Vs(p.parent.vnode)&&(p.parent.effect.dirty=!0,Ir(p.parent.update))}).catch(v=>{m(v),E.value=v}),()=>{if(w.value&&u)return To(u,p);if(E.value&&s)return xe(s,{error:E.value});if(n&&!y.value)return xe(n)}}})}function To(e,t){const{ref:n,props:s,children:r,ce:i}=t.vnode,o=xe(e,s,r);return o.ref=n,o.ce=i,delete t.vnode.ce,o}const Vs=e=>e.type.__isKeepAlive,ry={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Ye(),s=n.ctx;if(!s.renderer)return()=>{const v=t.default&&t.default();return v&&v.length===1?v[0]:v};const r=new Map,i=new Set;let o=null;n.__v_cache=r;const l=n.suspense,{renderer:{p:a,m:u,um:f,o:{createElement:c}}}=s,d=c("div");s.activate=(v,g,b,S,O)=>{const C=v.component;u(v,g,b,0,l),a(C.vnode,v,g,b,C,l,S,v.slotScopeIds,O),ze(()=>{C.isDeactivated=!1,C.a&&En(C.a);const x=v.props&&v.props.onVnodeMounted;x&&at(x,C.parent,v)},l),Xo(C)},s.deactivate=v=>{const g=v.component;u(v,d,null,1,l),ze(()=>{g.da&&En(g.da);const b=v.props&&v.props.onVnodeUnmounted;b&&at(b,g.parent,v),g.isDeactivated=!0},l),Xo(g)};function p(v){xo(v),f(v,n,l,!0)}function m(v){r.forEach((g,b)=>{const S=vr(g.type);S&&(!v||!v(S))&&w(b)})}function w(v){const g=r.get(v);!o||!Rt(g,o)?p(g):o&&xo(o),r.delete(v),i.delete(v)}be(()=>[e.include,e.exclude],([v,g])=>{v&&m(b=>Ys(v,b)),g&&m(b=>!Ys(g,b))},{flush:"post",deep:!0});let E=null;const y=()=>{E!=null&&r.set(E,Ao(n.subTree))};return cs(y),lo(y),ao(()=>{r.forEach(v=>{const{subTree:g,suspense:b}=n,S=Ao(g);if(v.type===S.type&&v.key===S.key){xo(S);const O=S.component.da;O&&ze(O,b);return}p(v)})}),()=>{if(E=null,!t.default)return o=null;const v=t.default(),g=v[0];if(v.length>1)return M("KeepAlive should contain exactly one component child."),o=null,v;if(!on(g)||!(g.shapeFlag&4)&&!(g.shapeFlag&128))return o=null,g;let b=Ao(g);const S=b.type,O=vr(ts(b)?b.type.__asyncResolved||{}:S),{include:C,exclude:x,max:T}=e;if(C&&(!O||!Ys(C,O))||x&&O&&Ys(x,O))return o=b,g;const A=b.key==null?S:b.key,k=r.get(A);return b.el&&(b=At(b),g.shapeFlag&128&&(g.ssContent=b)),E=A,k?(b.el=k.el,b.component=k.component,b.transition&&rs(b,b.transition),b.shapeFlag|=512,i.delete(A),i.add(A)):(i.add(A),T&&i.size>parseInt(T,10)&&w(i.values().next().value)),b.shapeFlag|=256,o=b,Yf(g.type)?g:b}}},iy=ry;function Ys(e,t){return H(e)?e.some(n=>Ys(n,t)):ne(e)?e.split(",").includes(t):pm(e)?e.test(t):!1}function id(e,t){ld(e,"a",t)}function od(e,t){ld(e,"da",t)}function ld(e,t,n=ke){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(oo(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Vs(r.parent.vnode)&&oy(s,t,n,r),r=r.parent}}function oy(e,t,n,s){const r=oo(t,e,s,!0);kr(()=>{Bl(s[t],r)},n)}function xo(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Ao(e){return e.shapeFlag&128?e.ssContent:e}function oo(e,t,n=ke,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;ln();const l=os(n),a=gt(t,n,e,o);return l(),an(),a});return s?r.unshift(i):r.push(i),i}else{const r=Vt(to[e].replace(/ hook$/,""));M(`${r} 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 cn=e=>(t,n=ke)=>(!Mr||e==="sp")&&oo(e,(...s)=>t(...s),n),ad=cn("bm"),cs=cn("m"),cd=cn("bu"),lo=cn("u"),ao=cn("bum"),kr=cn("um"),ud=cn("sp"),fd=cn("rtg"),dd=cn("rtc");function pd(e,t=ke){oo("ec",e,t)}function ly(e,t,n,s){let r;const i=n&&n[s];if(H(e)||ne(e)){r=new Array(e.length);for(let o=0,l=e.length;ot(o,l,void 0,i&&i[l]));else{const o=Object.keys(e);r=new Array(o.length);for(let l=0,a=o.length;l{const i=s.fn(...r);return i&&(i.key=s.key),i}:s.fn)}return e}function cy(e,t,n={},s,r){if(Ie.isCE||Ie.parent&&ts(Ie.parent)&&Ie.parent.isCE)return t!=="default"&&(n.name=t),xe("slot",n,s&&s());let i=e[t];i&&i.length>1&&(M("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."),i=()=>[]),i&&i._c&&(i._d=!1),co();const o=i&&hd(i(n)),l=va(De,{key:n.key||o&&o.key||`_${t}`},o||(s?s():[]),o&&e._===1?64:-2);return!r&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),i&&i._c&&(i._d=!0),l}function hd(e){return e.some(t=>on(t)?!(t.type===$e||t.type===De&&!hd(t.children)):!0)?e:null}function uy(e,t){const n={};if(!me(e))return M("v-on with no argument expects an object value."),n;for(const s in e)n[t&&/[A-Z]/.test(s)?`on:${s}`:Vt(s)]=e[s];return n}const el=e=>e?jd(e)?uo(e)||e.proxy:el(e.parent):null,ns=oe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>Bt(e.props),$attrs:e=>Bt(e.attrs),$slots:e=>Bt(e.slots),$refs:e=>Bt(e.refs),$parent:e=>el(e.parent),$root:e=>el(e.root),$emit:e=>e.emit,$options:e=>ga(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Ir(e.update)}),$nextTick:e=>e.n||(e.n=Vn.bind(e.proxy)),$watch:e=>ey.bind(e)}),ma=e=>e==="_"||e==="$",Oo=(e,t)=>e!==ge&&!e.__isScriptSetup&&de(e,t),er={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:a}=e;if(t==="__isVue")return!0;let u;if(t[0]!=="$"){const p=o[t];if(p!==void 0)switch(p){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(Oo(s,t))return o[t]=1,s[t];if(r!==ge&&de(r,t))return o[t]=2,r[t];if((u=e.propsOptions[0])&&de(u,t))return o[t]=3,i[t];if(n!==ge&&de(n,t))return o[t]=4,n[t];tl&&(o[t]=0)}}const f=ns[t];let c,d;if(f)return t==="$attrs"?(tt(e.attrs,"get",""),Ci()):t==="$slots"&&tt(e,"get",t),f(e);if((c=l.__cssModules)&&(c=c[t]))return c;if(n!==ge&&de(n,t))return o[t]=4,n[t];if(d=a.config.globalProperties,de(d,t))return d[t];Ie&&(!ne(t)||t.indexOf("__v")!==0)&&(r!==ge&&ma(t[0])&&de(r,t)?M(`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===Ie&&M(`Property ${JSON.stringify(t)} was accessed during render but is not defined on instance.`))},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return Oo(r,t)?(r[t]=n,!0):r.__isScriptSetup&&de(r,t)?(M(`Cannot mutate - - + + + - +
+
diff --git a/02-components/404.html b/02-components/404.html index 46ab5fe..fe3f6e0 100644 --- a/02-components/404.html +++ b/02-components/404.html @@ -7,15 +7,15 @@ - - - - + + + - +
+
diff --git a/02-components/assets/10-Cp9YEeLJ.js b/02-components/assets/10-Cp9YEeLJ.js new file mode 100644 index 0000000..1a2cb90 --- /dev/null +++ b/02-components/assets/10-Cp9YEeLJ.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as i,s as n,A as s,e as t,a6 as p}from"./modules/vue-B2FnwHXb.js";import{I as _}from"./slidev/default-Bs1EBt5I.js";import{_ as c,af as e}from"./index-Cx-7sCC6.js";import{p as l,u as m,f as d}from"./slidev/context-DN_z6xTi.js";import"./modules/shiki-DHDjwTm4.js";const h="/sa2024/02-components/assets/02-bootstrap-CI_hrqDh.png",f=t("h1",null,"CBD a web app with Spring",-1),u=t("img",{src:h,class:"m-10 h-80"},null,-1),g=t("div",{style:{"text-align":"right"}},"sa-spring/spring-bootstrap",-1),w=t("p",null,[t("a",{href:"https://www.bilibili.com/video/BV1A7411F7Jh?p=3",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV1A7411F7Jh?p=3"),p(" (5:30)")],-1),b={__name:"10",setup(x){return l(e),m(),(v,B)=>(o(),a(_,i(n(s(d)(s(e),9))),{default:r(()=>[f,u,g,w]),_:1},16))}},I=c(b,[["__file","/@slidev/slides/10.md"]]);export{I as default}; diff --git a/02-components/assets/11-DABYCeg4.js b/02-components/assets/11-DABYCeg4.js new file mode 100644 index 0000000..e583e97 --- /dev/null +++ b/02-components/assets/11-DABYCeg4.js @@ -0,0 +1 @@ +import{o as e,c as a,k as r,q as n,s as i,A as s,e as o}from"./modules/vue-B2FnwHXb.js";import{I as m}from"./slidev/default-Bs1EBt5I.js";import{_ as p,ag as t}from"./index-Cx-7sCC6.js";import{p as c,u as _,f as l}from"./slidev/context-DN_z6xTi.js";import"./modules/shiki-DHDjwTm4.js";const f="/sa2024/02-components/assets/02-bootstrap-components-jRQva9uT.png",u=o("h1",null,"Compositing/Assembling/Wiring",-1),d=o("img",{src:f,class:"m-20 h-80"},null,-1),g={__name:"11",setup(h){return c(t),_(),(x,v)=>(e(),a(m,n(i(s(l)(s(t),10))),{default:r(()=>[u,d]),_:1},16))}},j=p(g,[["__file","/@slidev/slides/11.md"]]);export{j as default}; diff --git a/02-components/assets/12-CgnLgc9Y.js b/02-components/assets/12-CgnLgc9Y.js new file mode 100644 index 0000000..7672a27 --- /dev/null +++ b/02-components/assets/12-CgnLgc9Y.js @@ -0,0 +1 @@ +import{o as e,c as r,k as n,q as a,s as l,A as s,e as t}from"./modules/vue-B2FnwHXb.js";import{I as i}from"./slidev/default-Bs1EBt5I.js";import{_,ah as o}from"./index-Cx-7sCC6.js";import{p as c,u as m,f as p}from"./slidev/context-DN_z6xTi.js";import"./modules/shiki-DHDjwTm4.js";const d="/sa2024/02-components/assets/02-moviefinder-BJnjULb8.png",u=t("h1",null,"控制反转 IoC",-1),f=t("br",null,null,-1),h=t("p",null,"提供服务的组件是被“注入”的而不是被“直接写入”到请求者的代码中",-1),x=t("br",null,null,-1),g=t("img",{src:d,class:"m-0 h-50"},null,-1),v=t("br",null,null,-1),b=t("div",{style:{"text-align":"right"}},"https://martinfowler.com/articles/injection.html",-1),B={__name:"12",setup(j){return c(o),m(),(k,C)=>(e(),r(i,a(l(s(p)(s(o),11))),{default:n(()=>[u,f,h,x,g,v,b]),_:1},16))}},q=_(B,[["__file","/@slidev/slides/12.md"]]);export{q as default}; diff --git a/02-components/assets/23-Ctcl-K0N.js b/02-components/assets/23-Ctcl-K0N.js new file mode 100644 index 0000000..114c563 --- /dev/null +++ b/02-components/assets/23-Ctcl-K0N.js @@ -0,0 +1,9 @@ +import{_ as e}from"./slidev/CodeBlockWrapper-CyepWtKb.js";import{o as k,c as n,k as t,l as r,m as p,q as d,s as o,A as h,e as i,a6 as s}from"./modules/vue-B2FnwHXb.js";import{I as g}from"./slidev/two-cols-CTaAQFQ5.js";import{_ as y,at as a}from"./index-Cx-7sCC6.js";import{p as c,u as A,f as _}from"./slidev/context-DN_z6xTi.js";import"./modules/unplugin-icons-DUsU9osv.js";import"./modules/shiki-DHDjwTm4.js";const B="/sa2024/02-components/assets/02-wiring-CQw0Pt1P.png",m=i("h1",null,"Example: Setter Injection with Spring",-1),D=i("br",null,null,-1),C=i("ol",{start:"3"},[i("li",null,"Start the container")],-1),u=i("br",null,null,-1),f=i("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[i("code",{class:"language-java"},[i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"public"),i("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," void"),i("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," testWithSpring"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"()"),i("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," throws Exception"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"{")]),s(` +`),i("span",{class:"line"}),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ApplicationContext"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," ctx"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}}," new"),i("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," FileSystemXmlApplicationContext"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"spring.xml"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");")]),s(` +`),i("span",{class:"line"}),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," MovieLister"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," lister"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ("),i("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"MovieLister"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," ctx"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),i("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"getBean"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"MovieLister"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," Movie"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"[]"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," movies"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," lister"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),i("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"moviesDirectedBy"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"Sergio Leone"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");")]),s(` +`),i("span",{class:"line"}),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," assertEquals"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"Once Upon a Time in the West"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),i("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," movies"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"["),i("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}},"0"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"]."),i("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"getTitle"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"());")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"}")])])],-1),v=i("br",null,null,-1),x=i("div",{style:{"text-align":"right"}},"sa-spring/spring-bean",-1),E=i("img",{src:B,class:"m-20 h-50"},null,-1),b=i("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1A7411F7Jh?p=5",-1),w={__name:"23",setup(P){return c(a),A(),(S,F)=>{const l=e;return k(),n(g,d(o(h(_)(h(a),22))),{right:t(L=>[E,b]),default:t(()=>[m,D,C,u,r(l,p({},{ranges:[]}),{default:t(()=>[f]),_:1},16),v,x]),_:1},16)}}},q=y(w,[["__file","/@slidev/slides/23.md"]]);export{q as default}; diff --git a/02-components/assets/3-D_pcmViu.js b/02-components/assets/3-D_pcmViu.js new file mode 100644 index 0000000..57d2356 --- /dev/null +++ b/02-components/assets/3-D_pcmViu.js @@ -0,0 +1 @@ +import{o as n,c as a,k as o,q as r,s as i,A as e,e as s,a6 as t}from"./modules/vue-B2FnwHXb.js";import{I as _}from"./slidev/two-cols-CTaAQFQ5.js";import{_ as u,a8 as l}from"./index-Cx-7sCC6.js";import{p as c,u as p,f as m}from"./slidev/context-DN_z6xTi.js";import"./modules/shiki-DHDjwTm4.js";const d="/sa2024/02-components/assets/02-component-based-Ci6WRO_e.jpg",f=s("h1",null,"Components-based",-1),h=s("br",null,null,-1),x=s("p",null,[t("软件工程强调软件开发过程应该采用工程化开发方法和工业化生产技术,"),s("strong",null,"从传统工业借鉴方法和技术"),t("是一种有效手段")],-1),g=s("ul",null,[s("li",null,[t("基于标准化构件的生产技术 "),s("ul",null,[s("li",null,"汽车生产:汽车零件"),s("li",null,"建筑工程:建筑材料")])]),s("li",null,[t("第三方提供 vs. 自身积累 "),s("ul",null,[s("li",null,"汽车轮胎 、变速箱总成")])])],-1),v=s("img",{src:d,class:"m-20 h-60"},null,-1),C={__name:"3",setup(P){return c(l),p(),(b,k)=>(n(),a(_,r(i(e(m)(e(l),2))),{right:o(B=>[v]),default:o(()=>[f,h,x,g]),_:1},16))}},V=u(C,[["__file","/@slidev/slides/3.md"]]);export{V as default}; diff --git a/02-components/assets/4-CCv7RTMX.js b/02-components/assets/4-CCv7RTMX.js new file mode 100644 index 0000000..b91bcd0 --- /dev/null +++ b/02-components/assets/4-CCv7RTMX.js @@ -0,0 +1 @@ +import{o as r,c as a,k as o,q as i,s as l,A as s,e as t,a6 as e}from"./modules/vue-B2FnwHXb.js";import{I as c}from"./slidev/two-cols-CTaAQFQ5.js";import{_ as p,a9 as n}from"./index-Cx-7sCC6.js";import{p as d,u as _,f as m}from"./slidev/context-DN_z6xTi.js";import"./modules/shiki-DHDjwTm4.js";const f="/sa2024/02-components/assets/02-componentsoftware-Dun4RDYd.png",u=t("h1",null,"Software Component",-1),h=t("br",null,null,-1),y=t("blockquote",null,[t("div",{style:{"font-size":"20px","line-height":"150%"}},[e("A software component is "),t("span",{style:{color:"red","font-weight":"bold"}},"a unit of composition"),e(" with "),t("span",{style:{color:"green","font-weight":"bold"}},"contractually specified interfaces"),e(" and "),t("span",{style:{color:"blue","font-weight":"bold"}},"explicit context dependencies"),e(" only. A software component can be "),t("span",{style:{color:"purple","font-weight":"bold"}},"deployed independently"),e(" and is subject to composition by third parties. ")])],-1),g=t("br",null,null,-1),b=t("div",{style:{"text-align":"right"}},"-- Clemens Szyperski",-1),w=t("img",{src:f,class:"m-20 h-80"},null,-1),x={__name:"4",setup(k){return d(n),_(),(v,C)=>(r(),a(c,i(l(s(m)(s(n),3))),{right:o(P=>[w]),default:o(()=>[u,h,y,g,b]),_:1},16))}},q=p(x,[["__file","/@slidev/slides/4.md"]]);export{q as default}; diff --git a/02-components/assets/5-BlgFocKq.js b/02-components/assets/5-BlgFocKq.js new file mode 100644 index 0000000..4321622 --- /dev/null +++ b/02-components/assets/5-BlgFocKq.js @@ -0,0 +1 @@ +import{o as r,c as a,k as s,q as i,s as n,A as o,e as t}from"./modules/vue-B2FnwHXb.js";import{I as l}from"./slidev/two-cols-CTaAQFQ5.js";import{_ as c,aa as e}from"./index-Cx-7sCC6.js";import{p,u as _,f as m}from"./slidev/context-DN_z6xTi.js";import"./modules/shiki-DHDjwTm4.js";const u="/sa2024/02-components/assets/02-pc-BTqobrfu.jpg",d=t("h1",null,"类比:DIY",-1),f=t("img",{src:u,class:"m-5 h-100"},null,-1),h=t("p",null,[t("br"),t("br"),t("br"),t("br"),t("br"),t("br"),t("br")],-1),b=t("ul",null,[t("li",null,"A unit of composition"),t("li",null,"Contractually specified interfaces"),t("li",null,"Explicit context dependencies"),t("li",null,"Composition by third parties")],-1),x={__name:"5",setup(g){return p(e),_(),(B,C)=>(r(),a(l,i(n(o(m)(o(e),4))),{right:s(P=>[h,b]),default:s(()=>[d,f]),_:1},16))}},q=c(x,[["__file","/@slidev/slides/5.md"]]);export{q as default}; diff --git a/02-components/assets/6-DAEZa0sA.js b/02-components/assets/6-DAEZa0sA.js new file mode 100644 index 0000000..2d8cc5c --- /dev/null +++ b/02-components/assets/6-DAEZa0sA.js @@ -0,0 +1 @@ +import{o as a,c as r,k as s,q as i,s as p,A as o,e,a6 as t}from"./modules/vue-B2FnwHXb.js";import{I as c}from"./slidev/two-cols-CTaAQFQ5.js";import{_ as m,ab as n}from"./index-Cx-7sCC6.js";import{p as d,u as l,f as _}from"./slidev/context-DN_z6xTi.js";import"./modules/shiki-DHDjwTm4.js";const f="/sa2024/02-components/assets/02-cbse-CLGE2MWI.png",u=e("h1",null,"CBSE",-1),g=e("div",{style:{"font-size":"25px","line-height":"150%"}},[t(" Component-based software engineering (CBSE), i.e. components-based development (CBD), is ... "),e("span",{style:{color:"green","font-weight":"bold"}},"a reuse-based approach to defining, implementing and composing loosely coupled independent components into systems"),t(". ")],-1),h=e("img",{src:f,class:"m-20 h-50"},null,-1),x={__name:"6",setup(C){return d(n),l(),(b,B)=>(a(),r(c,i(p(o(_)(o(n),5))),{right:s(v=>[h]),default:s(()=>[u,g]),_:1},16))}},I=m(x,[["__file","/@slidev/slides/6.md"]]);export{I as default}; diff --git a/02-components/assets/7-MoCmkKCh.js b/02-components/assets/7-MoCmkKCh.js new file mode 100644 index 0000000..3db7b2b --- /dev/null +++ b/02-components/assets/7-MoCmkKCh.js @@ -0,0 +1 @@ +import{o as a,c as r,k as t,q as n,s as l,A as e,e as s,a6 as i}from"./modules/vue-B2FnwHXb.js";import{I as c}from"./slidev/two-cols-CTaAQFQ5.js";import{_ as p,ac as o}from"./index-Cx-7sCC6.js";import{p as m,u as _,f as u}from"./slidev/context-DN_z6xTi.js";import"./modules/shiki-DHDjwTm4.js";const d="/sa2024/02-components/assets/02-composition-DDivBQr6.png",f=s("h1",null,"Goals of CBD",-1),h=s("ul",null,[s("li",null,"Assemble a system out of existing (third-party) components"),s("li",null,[i("Update a system by adding / replacing components, which are "),s("ul",null,[s("li",null,"units of deployment"),s("li",null,"are handled as they are (blackboxes)")])])],-1),b=s("p",null,[s("br"),s("br"),s("br"),s("br"),s("img",{src:d,class:"m-10 h-60"})],-1),x={__name:"7",setup(g){return m(o),_(),(y,B)=>(a(),r(c,n(l(e(u)(e(o),6))),{right:t(k=>[b]),default:t(()=>[f,h]),_:1},16))}},A=p(x,[["__file","/@slidev/slides/7.md"]]);export{A as default}; diff --git a/02-components/assets/8-J0RSCQfc.js b/02-components/assets/8-J0RSCQfc.js new file mode 100644 index 0000000..67d790d --- /dev/null +++ b/02-components/assets/8-J0RSCQfc.js @@ -0,0 +1 @@ +import{o as e,c as a,k as r,q as n,s as c,A as s,e as o}from"./modules/vue-B2FnwHXb.js";import{I as m}from"./slidev/default-Bs1EBt5I.js";import{_,ad as t}from"./index-Cx-7sCC6.js";import{p,u as i,f as l}from"./slidev/context-DN_z6xTi.js";import"./modules/shiki-DHDjwTm4.js";const d="/sa2024/02-components/assets/02-ccm-DFZiPs6Z.png",f=o("h1",null,"CCM Component",-1),u=o("img",{src:d,class:"m-10 h-100"},null,-1),h={__name:"8",setup(x){return p(t),i(),(C,P)=>(e(),a(m,n(c(s(l)(s(t),7))),{default:r(()=>[f,u]),_:1},16))}},I=_(h,[["__file","/@slidev/slides/8.md"]]);export{I as default}; diff --git a/02-components/assets/9-BQ13gC74.js b/02-components/assets/9-BQ13gC74.js new file mode 100644 index 0000000..50ecc04 --- /dev/null +++ b/02-components/assets/9-BQ13gC74.js @@ -0,0 +1 @@ +import{o as e,c as r,k as a,q as n,s as p,A as s,e as o}from"./modules/vue-B2FnwHXb.js";import{I as i}from"./slidev/default-Bs1EBt5I.js";import{_ as l,ae as t}from"./index-Cx-7sCC6.js";import{p as m,u as _,f as c}from"./slidev/context-DN_z6xTi.js";import"./modules/shiki-DHDjwTm4.js";const f="/sa2024/02-components/assets/02-spring-framework-RvVgoMZn.png",d=o("h1",null,"Spring",-1),u=o("br",null,null,-1),h=o("p",null,'The Spring framework is a modular framework that offers a large set of "tools" to support the developer in writing modern component-based applications.',-1),g=o("p",null,[o("a",{href:"https://spring.io/projects/spring-framework",target:"_blank",rel:"noopener"},"https://spring.io/projects/spring-framework")],-1),k=o("img",{src:f,class:"m-10 h-50"},null,-1),w={__name:"9",setup(v){return m(t),_(),(x,b)=>(e(),r(i,n(p(s(c)(s(t),8))),{default:a(()=>[d,u,h,g,k]),_:1},16))}},I=l(w,[["__file","/@slidev/slides/9.md"]]);export{I as default}; diff --git a/02-components/assets/ClicksSlider-qq1Ub2AL.css b/02-components/assets/ClicksSlider-qq1Ub2AL.css new file mode 100644 index 0000000..ded5c92 --- /dev/null +++ b/02-components/assets/ClicksSlider-qq1Ub2AL.css @@ -0,0 +1 @@ +.range[data-v-e916140b]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}.range[data-v-e916140b]::-webkit-slider-thumb{-webkit-appearance:none;height:100%;width:var(--thumb-width, .5rem)}.range[data-v-e916140b]::-moz-range-thumb{height:100%;width:var(--thumb-width, .5rem)} diff --git a/02-components/assets/ContextMenu-DSnskk1a.css b/02-components/assets/ContextMenu-DSnskk1a.css new file mode 100644 index 0000000..b193adb --- /dev/null +++ b/02-components/assets/ContextMenu-DSnskk1a.css @@ -0,0 +1 @@ +.select-list[data-v-9e4a80e3]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-9e4a80e3]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-9e4a80e3]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-9e4a80e3]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-9e4a80e3]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}.autocomplete-list[data-v-a9c46306]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-a9c46306]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-a9c46306]{cursor:pointer}#slideshow[data-v-63954aac]{height:100%} diff --git a/02-components/assets/DrawingControls-BO6lw4N5.css b/02-components/assets/DrawingControls-BO6lw4N5.css deleted file mode 100644 index beec79d..0000000 --- a/02-components/assets/DrawingControls-BO6lw4N5.css +++ /dev/null @@ -1 +0,0 @@ -.resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper__popper{z-index:10000;top:0;left:0;outline:none}.v-popper__popper.v-popper__popper--hidden{visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s;pointer-events:none}.v-popper__popper.v-popper__popper--shown{visibility:visible;opacity:1;transition:opacity .15s}.v-popper__popper.v-popper__popper--skip-transition,.v-popper__popper.v-popper__popper--skip-transition>.v-popper__wrapper{transition:none!important}.v-popper__backdrop{position:absolute;top:0;left:0;width:100%;height:100%;display:none}.v-popper__inner{position:relative;box-sizing:border-box;overflow-y:auto}.v-popper__inner>div{position:relative;z-index:1;max-width:inherit;max-height:inherit}.v-popper__arrow-container{position:absolute;width:10px;height:10px}.v-popper__popper--arrow-overflow .v-popper__arrow-container,.v-popper__popper--no-positioning .v-popper__arrow-container{display:none}.v-popper__arrow-inner,.v-popper__arrow-outer{border-style:solid;position:absolute;top:0;left:0;width:0;height:0}.v-popper__arrow-inner{visibility:hidden;border-width:7px}.v-popper__arrow-outer{border-width:6px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{left:-2px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{left:-1px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer{border-bottom-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:0}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{border-top-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{top:-4px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{top:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{top:-1px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{border-left-width:0;border-left-color:transparent!important;border-top-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{left:-4px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{left:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer{border-right-width:0;border-top-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner{left:-2px}.v-popper--theme-tooltip .v-popper__inner{background:#000c;color:#fff;border-radius:6px;padding:7px 12px 6px}.v-popper--theme-tooltip .v-popper__arrow-outer{border-color:#000c}.v-popper--theme-dropdown .v-popper__inner{background:#fff;color:#000;border-radius:6px;border:1px solid #ddd;box-shadow:0 6px 30px #0000001a}.v-popper--theme-dropdown .v-popper__arrow-inner{visibility:visible;border-color:#fff}.v-popper--theme-dropdown .v-popper__arrow-outer{border-color:#ddd}.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/02-components/assets/DrawingControls-C5T1oZL5.css b/02-components/assets/DrawingControls-C5T1oZL5.css new file mode 100644 index 0000000..bf95bff --- /dev/null +++ b/02-components/assets/DrawingControls-C5T1oZL5.css @@ -0,0 +1 @@ +.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/02-components/assets/DrawingPreview-DJ7dOR_1.css b/02-components/assets/DrawingPreview-DJ7dOR_1.css new file mode 100644 index 0000000..d8ce4e2 --- /dev/null +++ b/02-components/assets/DrawingPreview-DJ7dOR_1.css @@ -0,0 +1 @@ +#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.disable-view-transition[data-v-1e2c950d] *{view-transition-name:none!important}.slidev-page[data-v-1e2c950d]{position:absolute;width:100%;height:100%} diff --git a/02-components/assets/SlidesShow-Do3DTZt5.css b/02-components/assets/SlidesShow-Do3DTZt5.css deleted file mode 100644 index 4ca12c5..0000000 --- a/02-components/assets/SlidesShow-Do3DTZt5.css +++ /dev/null @@ -1 +0,0 @@ -#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete-list[data-v-9ed224f5]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-9ed224f5]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-9ed224f5]{cursor:pointer}.select-list[data-v-38e64e7e]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-38e64e7e]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-38e64e7e]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-38e64e7e]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-38e64e7e]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}#slideshow[data-v-2fe83b23]{height:100%}#slideshow>div[data-v-2fe83b23]{position:absolute;height:100%;width:100%} diff --git a/02-components/assets/index-CGvwwMem.css b/02-components/assets/index-CGvwwMem.css new file mode 100644 index 0000000..68ec142 --- /dev/null +++ b/02-components/assets/index-CGvwwMem.css @@ -0,0 +1 @@ +*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border-main=""],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main,[bg-main=""]{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main,.dark [bg-main=""]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.hover\:bg-active:hover,[hover\:bg-active=""]:hover{background-color:#9ca3af1a}.dark .text-main{--un-text-opacity:1;color:rgb(221 221 221 / var(--un-text-opacity))}.text-main{--un-text-opacity:1;color:rgb(24 24 24 / var(--un-text-opacity))}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .slidev-code-dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:13px}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.i-svg-spinners-90-ring-with-bg{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z' opacity='.25'/%3E%3Cpath fill='currentColor' d='M10.14,1.16a11,11,0,0,0-9,8.92A1.59,1.59,0,0,0,2.46,12,1.52,1.52,0,0,0,4.11,10.7a8,8,0,0,1,6.66-6.61A1.42,1.42,0,0,0,12,2.69h0A1.57,1.57,0,0,0,10.14,1.16Z'%3E%3CanimateTransform attributeName='transform' dur='0.75s' repeatCount='indefinite' type='rotate' values='0 12 12;360 12 12'/%3E%3C/path%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1em;height:1em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none,[pointer-events-none=""]{pointer-events:none}.absolute,[absolute=""]{position:absolute}.fixed,[fixed=""]{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}[start~="2"]{inset-inline-start:.5rem}[start~="3"]{inset-inline-start:.75rem}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-110\%,[left-110\%=""]{left:110%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5,[right-5=""]{right:1.25rem}.top-0{top:0}.top-1\/2,.top-50\%,[top-50\%=""]{top:50%}.-top-15px{top:-15px}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-100{z-index:100}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-cols-\[35px_1fr\]{grid-template-columns:35px 1fr}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-rows-\[auto_max-content\]{grid-template-rows:auto max-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-0{margin:0}.m-1{margin:.25rem}.m-10{margin:2.5rem}.m-20{margin:5rem}.m-5{margin:1.25rem}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.my1{margin-top:.25rem;margin-bottom:.25rem}.my4{margin-top:1rem;margin-bottom:1rem}.my5{margin-top:1.25rem;margin-bottom:1.25rem}.mb-4{margin-bottom:1rem}.mb2{margin-bottom:.5rem}.ml--4{margin-left:-1rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr--3,[mr--3=""]{margin-right:-.75rem}.mr--8{margin-right:-2rem}.mr-1,.mr1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-0\.5{margin-top:.125rem}.mt-1,.mt1{margin-top:.25rem}.mt-2,[mt-2=""]{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.aspect-ratio-initial{aspect-ratio:initial}.h-\[40px\],.h-40px{height:40px}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-100{height:25rem}.h-22px{height:22px}.h-2px{height:2px}.h-3px{height:3px}.h-40{height:10rem}.h-5,.h5,[h5=""]{height:1.25rem}.h-50{height:12.5rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-8,[h-8=""]{height:2rem}.h-80{height:20rem}.h-9,[h-9=""]{height:2.25rem}.h-full,[h-full=""]{height:100%}.h-max{height:max-content}.h-screen{height:100vh}.h1{height:.25rem}.max-h-full{max-height:100%}.max-w-150{max-width:37.5rem}.max-w-250,[max-w-250=""]{max-width:62.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-h-50,[min-h-50=""]{min-height:12.5rem}.min-w-16{min-width:4rem}.min-w-40{min-width:10rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-\[40px\]{width:40px}.w-0{width:0}.w-13{width:3.25rem}.w-1px{width:1px}.w-200{width:50rem}.w-22px{width:22px}.w-250,[w-250=""]{width:62.5rem}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-7{width:1.75rem}.w-8,[w-8=""]{width:2rem}.w-9,[w-9=""]{width:2.25rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.w-screen{width:100vw}.w1{width:.25rem}.flex,[flex=""],[flex~="~"]{display:flex}.flex-1,[flex-1=""]{flex:1 1 0%}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-y--50\%,[translate-y--50\%=""]{--un-translate-y:-50%;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in 1s linear 1}.animate-duration-100{animation-duration:.1s}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.important\:\[\&_\*\]\:select-none *{-webkit-user-select:none!important;user-select:none!important}.select-none,[select-none=""]{-webkit-user-select:none;user-select:none}[select-none~="default:"]:default{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-after-page{break-after:page}.items-end{align-items:flex-end}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.justify-items-start{justify-items:start}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4,[gap-4=""]{gap:1rem}.gap-5{gap:1.25rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""],[overflow-hidden=""]{overflow:hidden}.of-scroll{overflow:scroll}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap,.ws-nowrap,[ws-nowrap=""]{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border=""],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border-t=""],[border~=t]{border-top-width:1px}.b-dark{--un-border-opacity:1;border-color:rgb(34 34 34 / var(--un-border-opacity))}.border-gray,.dark .dark\:b-gray-400{--un-border-opacity:1;border-color:rgb(156 163 175 / var(--un-border-opacity))}.border-gray-300\/50{border-color:#d1d5db80}.dark .dark\:border-gray-500{--un-border-opacity:1;border-color:rgb(107 114 128 / var(--un-border-opacity))}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded],[rounded=""]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full,[rounded-full=""]{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-lb{border-bottom-left-radius:.25rem}.rounded-tl{border-top-left-radius:.25rem}.b-dashed{border-style:dashed}.\!border-none{border-style:none!important}[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray,[hover\:op100~="bg-gray:5"]{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.dark .dark\:bg-gray-800{--un-bg-opacity:1;background-color:rgb(31 41 55 / var(--un-bg-opacity))}.bg-gray\:10{background-color:#9ca3af1a}.bg-gray\:5{background-color:#9ca3af0d}.bg-gray\/20{background-color:#9ca3af33}.bg-teal-500{--un-bg-opacity:1;background-color:rgb(20 184 166 / var(--un-bg-opacity))}.bg-transparent,[bg-transparent~=","],[bg-transparent~="{"],[bg-transparent~="&&"],[bg-transparent~="text.value"]{background-color:transparent}[bg-transparent~="!valid.value"]{background-color:transparent!important}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.hover\:bg-gray\/20:hover{background-color:#9ca3af33}[bg-transparent~="placeholder:"]::placeholder{background-color:transparent}.bg-opacity-30{--un-bg-opacity:.3}.\!bg-opacity-75,.bg-opacity-75\!{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.dark .dark\:stroke-black{--un-stroke-opacity:1;stroke:rgb(0 0 0 / var(--un-stroke-opacity))}.stroke-white{--un-stroke-opacity:1;stroke:rgb(255 255 255 / var(--un-stroke-opacity))}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2,.p2,[p2=""]{padding:.5rem}.\!p-4{padding:1rem!important}.p3{padding:.75rem}.p4{padding:1rem}.px,.px-4,.px4,[p~=x-4],[px=""]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2,[px2=""]{padding-left:.5rem;padding-right:.5rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px1{padding-left:.25rem;padding-right:.25rem}.px3{padding-left:.75rem;padding-right:.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3,.py3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py0\.5{padding-top:.125rem;padding-bottom:.125rem}.py1\.5{padding-top:.375rem;padding-bottom:.375rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-0{padding-left:0}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.pt5{padding-top:1.25rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3em{font-size:3em}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg,[text-lg=""]{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}[text-sm~="default:"]:default{font-size:.875rem;line-height:1.25rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green,[color~=green]{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.dark .dark\:text-red-500{--un-text-opacity:1;color:rgb(239 68 68 / var(--un-text-opacity))}.text-red-700{--un-text-opacity:1;color:rgb(185 28 28 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}[color~="#564"]{--un-text-opacity:1;color:rgb(85 102 68 / var(--un-text-opacity))}.important-text-op-50,.text-opacity-50\!{--un-text-opacity:.5 !important}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.font-mono,[font-mono=""]{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.tab{-moz-tab-size:4;-o-tab-size:4;tab-size:4}[tab~="1032"]{-moz-tab-size:1032;-o-tab-size:1032;tab-size:1032}[tab~="2"]{-moz-tab-size:2;-o-tab-size:2;tab-size:2}[tab~="default:"]:default{-moz-tab-size:4;-o-tab-size:4;tab-size:4}.\!opacity-0,.important\:op0{opacity:0!important}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""],.group:hover .group-hover\:op100{opacity:1}.op15{opacity:.15}.op20,.group:hover .group-hover\:opacity-20{opacity:.2}.op25,.opacity-25,[op25=""]{opacity:.25}.op30{opacity:.3}.op35{opacity:.35}.op40,.opacity-40{opacity:.4}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80,.group:hover .group-hover\:op80{opacity:.8}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.hover\:op100:hover,[hover~=op100]:hover{opacity:1}.hover\:\!opacity-100:hover{opacity:1!important}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-xl,[shadow-xl=""]{--un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none,[outline-none=""]{outline:2px solid transparent;outline-offset:2px}.backdrop-blur,.backdrop-blur-8,[backdrop-blur-8=""]{--un-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition,[transition=""]{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300,[duration-300=""]{transition-duration:.3s}.duration-400,[duration-400=""]{transition-duration:.4s}.duration-500{transition-duration:.5s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.view-transition-name{view-transition-name:name}@media (max-width: 767.9px){.lt-md\:hidden{display:none}.lt-md\:flex-col{flex-direction:column}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}}.shiki-magic-move-container{position:relative;white-space:pre}.shiki-magic-move-line-number{opacity:.3;-webkit-user-select:none;user-select:none}.shiki-magic-move-item{display:inline-block;transition:color var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-move,.shiki-magic-move-enter-active,.shiki-magic-move-leave-active{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-container-resize,.shiki-magic-move-container-restyle{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease");transition-delay:calc(var(--smm-duration, .5s) * var(--smm-delay-container, 1))}.shiki-magic-move-move{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-move, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-enter-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-enter, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-leave-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-leave, 1)) + var(--smm-stagger, 0))}.shiki-magic-move-enter-from,.shiki-magic-move-leave-to{opacity:0}br.shiki-magic-move-leave-active{display:none} diff --git a/02-components/assets/index-CXEBwOhm.css b/02-components/assets/index-CXEBwOhm.css deleted file mode 100644 index cfbec9e..0000000 --- a/02-components/assets/index-CXEBwOhm.css +++ /dev/null @@ -1 +0,0 @@ -.slidev-layout.end[data-v-e7ce0abf]{display:grid;height:100%;-webkit-user-select:none;user-select:none;place-content:center;--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity));text-align:center;font-size:1.25rem;line-height:1.75rem;--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity));--un-text-opacity:.85;letter-spacing:.1em}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media print{.print-container{width:100%}}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 640px){@media print{.print-container{max-width:640px}}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 768px){@media print{.print-container{max-width:768px}}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1024px){@media print{.print-container{max-width:1024px}}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1280px){@media print{.print-container{max-width:1280px}}}@media (min-width: 1536px){.container{max-width:1536px}}@media (min-width: 1536px){@media print{.print-container{max-width:1536px}}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .line.dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}div[widgetid=messageoverlay]{transform:translateY(calc(100% * (var(--slidev-slide-scale) - 1)))}.slidev-monaco-container{position:relative;margin:var(--slidev-code-margin);padding:var(--slidev-code-padding);line-height:var(--slidev-code-line-height);border-radius:var(--slidev-code-radius);background:var(--slidev-code-background)}.slidev-monaco-container .monaco-editor{--monaco-monospace-font: var(--slidev-code-font-family);--vscode-editor-background: var(--slidev-code-background);--vscode-editorGutter-background: var(--slidev-code-background)}.slidev-monaco-container .monaco-editor a,.slidev-monaco-container .monaco-editor a:hover{border-bottom:none}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:calc(13px * var(--slidev-slide-scale, 1))}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute,[absolute=""]{position:absolute}.fixed{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}[start~="2"]{inset-inline-start:.5rem}[start~="3"]{inset-inline-start:.75rem}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5{right:1.25rem}.top-0{top:0}.top-1\/2{top:50%}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-0{margin:0}.m-1{margin:.25rem}.m-10{margin:2.5rem}.m-20{margin:5rem}.m-4{margin:1rem}.m-5{margin:1.25rem}.m-auto{margin:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.mb-10{margin-bottom:2.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.aspect-ratio-initial{aspect-ratio:initial}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-100{height:25rem}.h-22px{height:22px}.h-3px{height:3px}.h-40{height:10rem}.h-40px{height:40px}.h-5,.h5,[h5=""]{height:1.25rem}.h-50{height:12.5rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-8{height:2rem}.h-80{height:20rem}.h-full,[h-full=""]{height:100%}.h1{height:.25rem}.h2{height:.5rem}.max-w-150{max-width:37.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-w-16{min-width:4rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-1px{width:1px}.w-22px{width:22px}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.flex,[flex=""],[flex~="~"]{display:flex}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-0{--un-translate-x:0;--un-translate-y:0;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-inside-avoid-page{break-inside:avoid-page}.break-after-page{break-after:page}.place-content-center{place-content:center}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4{gap:1rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""]{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border~=t]{border-top-width:1px}.border-gray-300\/50{border-color:#d1d5db80}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.\!border-none{border-style:none!important}.bg-black,[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray\/20{background-color:#9ca3af33}.bg-transparent{background-color:transparent}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.\!bg-opacity-75{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2{padding:.5rem}.\!p-4{padding:1rem!important}.px,.px-4,.px4,[p~=x-4]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2{padding-left:.5rem;padding-right:.5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-4{padding-top:1rem;padding-bottom:1rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green,[color~=green]{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}[color~="#564"]{--un-text-opacity:1;color:rgb(85 102 68 / var(--un-text-opacity))}.text-opacity-85{--un-text-opacity:.85}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""]{opacity:1}.op20,.group:hover .group-hover\:opacity-20{opacity:.2}.op30{opacity:.3}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80{opacity:.8}.\!opacity-0{opacity:0!important}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.opacity-25{opacity:.25}.opacity-40{opacity:.4}[hover~=op100]:hover{opacity:1}.hover\:\!opacity-100:hover{opacity:1!important}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@media (max-width: 767.9px){.lt-md\:hidden{display:none}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}} diff --git a/02-components/assets/index-Cx-7sCC6.js b/02-components/assets/index-Cx-7sCC6.js new file mode 100644 index 0000000..5291f89 --- /dev/null +++ b/02-components/assets/index-Cx-7sCC6.js @@ -0,0 +1,51 @@ +const __vite__fileDeps=["assets/slidev/1-BzF-SsEB.js","assets/modules/vue-B2FnwHXb.js","assets/slidev/context-DN_z6xTi.js","assets/modules/shiki-DHDjwTm4.js","assets/modules/shiki-BSchMNmt.css","assets/slidev/2-7zi0LsJz.js","assets/slidev/default-Bs1EBt5I.js","assets/3-D_pcmViu.js","assets/slidev/two-cols-CTaAQFQ5.js","assets/4-CCv7RTMX.js","assets/5-BlgFocKq.js","assets/6-DAEZa0sA.js","assets/7-MoCmkKCh.js","assets/8-J0RSCQfc.js","assets/9-BQ13gC74.js","assets/10-Cp9YEeLJ.js","assets/11-DABYCeg4.js","assets/12-CgnLgc9Y.js","assets/slidev/13-Bj6eT8G2.js","assets/slidev/CodeBlockWrapper-CyepWtKb.js","assets/modules/unplugin-icons-DUsU9osv.js","assets/slidev/14-C3KURM_e.js","assets/slidev/15-rGjXZoSq.js","assets/slidev/16-B8R0ovAH.js","assets/slidev/17-CK5IeeRj.js","assets/slidev/18-BLF3fe92.js","assets/slidev/19-CbvOkMK9.js","assets/slidev/20-BY2AebPu.js","assets/slidev/21-DK2r8oBX.js","assets/slidev/22-BJ2z28Em.js","assets/23-Ctcl-K0N.js","assets/slidev/24-BhAzvmaL.js","assets/slidev/25-TfhY4IRB.js","assets/slidev/26-BYNtpQoF.js","assets/slidev/entry-C12NcDcg.js","assets/slidev/overview-H_0rU4tQ.js","assets/slidev/DrawingPreview-DPn60XMv.js","assets/DrawingPreview-DJ7dOR_1.css","assets/slidev/IconButton-D82qVTUs.js","assets/slidev/NoteDisplay-D1Ge9tMu.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/ClicksSlider-CgL-b-wU.js","assets/ClicksSlider-qq1Ub2AL.css","assets/slidev/notes-BKYbjRr-.js","assets/slidev/presenter-D-ruxLSR.js","assets/slidev/ContextMenu-ZG8_3BxV.js","assets/ContextMenu-DSnskk1a.css","assets/slidev/DrawingControls-Cyiejh7G.js","assets/DrawingControls-C5T1oZL5.css","assets/presenter-D5oC5Gjj.css","assets/slidev/play-CJxKEOxt.js","assets/play-CoA43pdi.css"],__vite__mapDeps=i=>i.map(i=>__vite__fileDeps[i]); +import{t as $,y as p,n as $t,z as Js,A as wn,B as as,C as Ge,D as Q,E as Gs,G as Qs,H as Ys,I as ls,J as b,K as Zs,L as Xs,o as cs,b as eo,M as bn,N as xt,O as to,P as no,Q as te,R as us,S as Ft,T as fs,U as so,d as oo,r as io,c as ro,V as ao,W as lo,X as co,Y as uo,Z as fo,_ as ho,$ as po,a0 as go,a1 as mo,a2 as yo,a3 as vo,a4 as _o,a5 as wo,u as bo}from"./modules/vue-B2FnwHXb.js";import{T as ko}from"./modules/shiki-DHDjwTm4.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))s(o);new MutationObserver(o=>{for(const i of o)if(i.type==="childList")for(const r of i.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&s(r)}).observe(document,{childList:!0,subtree:!0});function t(o){const i={};return o.integrity&&(i.integrity=o.integrity),o.referrerPolicy&&(i.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?i.credentials="include":o.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function s(o){if(o.ep)return;o.ep=!0;const i=t(o);fetch(o.href,i)}})();function ct(n,e,t){return Math.min(t,Math.max(e,n))}function So(...n){return Oo(n).reduce((e,t)=>e+t,0)}function Mo(n){return n=n??[],Array.isArray(n)?n:[n]}function Oo(n){return Mo(n).flat(1)}function Za(...n){let e,t,s;n.length===1?(e=0,s=1,[t]=n):[e,t,s=1]=n;const o=[];let i=e;for(;ie(t,s)).filter(Eo))}const H={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:!0,monacoTypesSource:"local",monacoTypesAdditionalPackages:[],monacoRunAdditionalDeps:[],download:!1,export:{},info:!1,highlighter:"shiki",twoslash:!0,lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},Xa="build",hs=$(H.aspectRatio??16/9),$o=$(H.canvasWidth??980),el=p(()=>Math.ceil($o.value/hs.value)),Po=p(()=>To(H.themeConfig||{},(n,e)=>[`--slidev-theme-${n}`,e]));function on(n,e={},t){for(const s in n){const o=n[s],i=t?`${t}:${s}`:s;typeof o=="object"&&o!==null?on(o,e,i):typeof o=="function"&&(e[i]=o)}return e}const Co={run:n=>n()},Lo=()=>Co,ds=typeof console.createTask<"u"?console.createTask:Lo;function Ao(n,e){const t=e.shift(),s=ds(t);return n.reduce((o,i)=>o.then(()=>s.run(()=>i(...e))),Promise.resolve())}function Io(n,e){const t=e.shift(),s=ds(t);return Promise.all(n.map(o=>s.run(()=>o(...e))))}function Kt(n,e){for(const t of[...n])t(e)}class Do{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,t,s={}){if(!e||typeof t!="function")return()=>{};const o=e;let i;for(;this._deprecatedHooks[e];)i=this._deprecatedHooks[e],e=i.to;if(i&&!s.allowDeprecated){let r=i.message;r||(r=`${o} hook has been deprecated`+(i.to?`, please use ${i.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(r)||(console.warn(r),this._deprecatedMessages.add(r))}if(!t.name)try{Object.defineProperty(t,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(t),()=>{t&&(this.removeHook(e,t),t=void 0)}}hookOnce(e,t){let s,o=(...i)=>(typeof s=="function"&&s(),s=void 0,o=void 0,t(...i));return s=this.hook(e,o),s}removeHook(e,t){if(this._hooks[e]){const s=this._hooks[e].indexOf(t);s!==-1&&this._hooks[e].splice(s,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,t){this._deprecatedHooks[e]=typeof t=="string"?{to:t}:t;const s=this._hooks[e]||[];delete this._hooks[e];for(const o of s)this.hook(e,o)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const t in e)this.deprecateHook(t,e[t])}addHooks(e){const t=on(e),s=Object.keys(t).map(o=>this.hook(o,t[o]));return()=>{for(const o of s.splice(0,s.length))o()}}removeHooks(e){const t=on(e);for(const s in t)this.removeHook(s,t[s])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...t){return t.unshift(e),this.callHookWith(Ao,e,...t)}callHookParallel(e,...t){return t.unshift(e),this.callHookWith(Io,e,...t)}callHookWith(e,t,...s){const o=this._before||this._after?{name:t,args:s,context:{}}:void 0;this._before&&Kt(this._before,o);const i=e(t in this._hooks?[...this._hooks[t]]:[],s);return i instanceof Promise?i.finally(()=>{this._after&&o&&Kt(this._after,o)}):(this._after&&o&&Kt(this._after,o),i)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const t=this._before.indexOf(e);t!==-1&&this._before.splice(t,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const t=this._after.indexOf(e);t!==-1&&this._after.splice(t,1)}}}}function jo(){return new Do}function Ho(n){return Array.isArray(n)?n:[n]}const Ro=["title","titleTemplate","script","style","noscript"],wt=["base","meta","link","style","script","noscript"],No=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],xo=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],ps=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],Fo=typeof window<"u";function kn(n){let e=9;for(let t=0;t>>9)+65536).toString(16).substring(1,8).toLowerCase()}function Rn(n){return n._h||kn(n._d?n._d:`${n.tag}:${n.textContent||n.innerHTML||""}:${Object.entries(n.props).map(([e,t])=>`${e}:${String(t)}`).join(",")}`)}function gs(n,e){const{props:t,tag:s}=n;if(xo.includes(s))return s;if(s==="link"&&t.rel==="canonical")return"canonical";if(t.charset)return"charset";const o=["id"];s==="meta"&&o.push("name","property","http-equiv");for(const i of o)if(typeof t[i]<"u"){const r=String(t[i]);return e&&!e(r)?!1:`${s}:${i}:${r}`}return!1}function Nn(n,e){return n==null?e||null:typeof n=="function"?n(e):n}async function Vo(n,e,t){const s={tag:n,props:await ms(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(n)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(n))};return ps.forEach(o=>{const i=typeof s.props[o]<"u"?s.props[o]:t[o];typeof i<"u"&&((!["innerHTML","textContent","children"].includes(o)||Ro.includes(s.tag))&&(s[o==="children"?"innerHTML":o]=i),delete s.props[o])}),s.props.body&&(s.tagPosition="bodyClose",delete s.props.body),s.tag==="script"&&typeof s.innerHTML=="object"&&(s.innerHTML=JSON.stringify(s.innerHTML),s.props.type=s.props.type||"application/json"),Array.isArray(s.props.content)?s.props.content.map(o=>({...s,props:{...s.props,content:o}})):s}function Bo(n,e){var s;const t=n==="class"?" ":";";return typeof e=="object"&&!Array.isArray(e)&&(e=Object.entries(e).filter(([,o])=>o).map(([o,i])=>n==="style"?`${o}:${i}`:o)),(s=Array.isArray(e)?e.join(t):e)==null?void 0:s.split(t).filter(o=>o.trim()).filter(Boolean).join(t)}async function ms(n,e){for(const t of Object.keys(n)){if(["class","style"].includes(t)){n[t]=Bo(t,n[t]);continue}if(n[t]instanceof Promise&&(n[t]=await n[t]),!e&&!ps.includes(t)){const s=String(n[t]),o=t.startsWith("data-");s==="true"||s===""?n[t]=o?"true":!0:n[t]||(o&&s==="false"?n[t]="false":delete n[t])}}return n}const Wo=10;async function Uo(n){const e=[];return Object.entries(n.resolvedInput).filter(([t,s])=>typeof s<"u"&&No.includes(t)).forEach(([t,s])=>{const o=Ho(s);e.push(...o.map(i=>Vo(t,i,n)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((t,s)=>(t._e=n._i,n.mode&&(t._m=n.mode),t._p=(n._i<l&&l[c]||void 0,e):a=e[r],typeof a<"u"?(a||"").replace(/"/g,'\\"'):!1}let o=n;try{o=decodeURI(n)}catch{}return(o.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(r=>{const a=s(r.slice(1));typeof a=="string"&&(n=n.replace(new RegExp(`\\${r}(\\W|$)`,"g"),(l,c)=>`${a}${c}`).trim())}),n.includes(ae)&&(n.endsWith(ae)&&(n=n.slice(0,-ae.length).trim()),n.startsWith(ae)&&(n=n.slice(ae.length).trim()),n=n.replace(new RegExp(`\\${ae}\\s*\\${ae}`,"g"),ae),n=bt(n,{separator:t},t)),n}async function qo(n,e={}){var u;const t=e.document||n.resolvedOptions.document;if(!t||!n.dirty)return;const s={shouldRender:!0,tags:[]};if(await n.hooks.callHook("dom:beforeRender",s),!s.shouldRender)return;const o=(await n.resolveTags()).map(f=>({tag:f,id:wt.includes(f.tag)?Rn(f):f.tag,shouldRender:!0}));let i=n._dom;if(!i){i={elMap:{htmlAttrs:t.documentElement,bodyAttrs:t.body}};for(const f of["body","head"]){const h=(u=t[f])==null?void 0:u.children,d=[];for(const g of[...h].filter(m=>wt.includes(m.tagName.toLowerCase()))){const m={tag:g.tagName.toLowerCase(),props:await ms(g.getAttributeNames().reduce((_,w)=>({..._,[w]:g.getAttribute(w)}),{})),innerHTML:g.innerHTML};let y=1,v=gs(m);for(;v&&d.find(_=>_._d===v);)v=`${v}:${y++}`;m._d=v||void 0,d.push(m),i.elMap[g.getAttribute("data-hid")||Rn(m)]=g}}}i.pendingSideEffects={...i.sideEffects||{}},i.sideEffects={};function r(f,h,d){const g=`${f}:${h}`;i.sideEffects[g]=d,delete i.pendingSideEffects[g]}function a({id:f,$el:h,tag:d}){const g=d.tag.endsWith("Attrs");i.elMap[f]=h,g||(["textContent","innerHTML"].forEach(m=>{d[m]&&d[m]!==h[m]&&(h[m]=d[m])}),r(f,"el",()=>{var m;(m=i.elMap[f])==null||m.remove(),delete i.elMap[f]}));for(const[m,y]of Object.entries(d._eventHandlers||{}))h.getAttribute(`data-${m}`)!==""&&((d.tag==="bodyAttrs"?t.defaultView:h).addEventListener(m.replace("on",""),y.bind(h)),h.setAttribute(`data-${m}`,""));Object.entries(d.props).forEach(([m,y])=>{const v=`attr:${m}`;if(m==="class")for(const _ of(y||"").split(" ").filter(Boolean))g&&r(f,`${v}:${_}`,()=>h.classList.remove(_)),!h.classList.contains(_)&&h.classList.add(_);else if(m==="style")for(const _ of(y||"").split(";").filter(Boolean)){const[w,...k]=_.split(":").map(O=>O.trim());r(f,`${v}:${_}:${w}`,()=>{h.style.removeProperty(w)}),h.style.setProperty(w,k.join(":"))}else h.getAttribute(m)!==y&&h.setAttribute(m,y===!0?"":String(y)),g&&r(f,v,()=>h.removeAttribute(m))})}const l=[],c={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const f of o){const{tag:h,shouldRender:d,id:g}=f;if(d){if(h.tag==="title"){t.title=h.textContent;continue}f.$el=f.$el||i.elMap[g],f.$el?a(f):wt.includes(h.tag)&&l.push(f)}}for(const f of l){const h=f.tag.tagPosition||"head";f.$el=t.createElement(f.tag.tag),a(f),c[h]=c[h]||t.createDocumentFragment(),c[h].appendChild(f.$el)}for(const f of o)await n.hooks.callHook("dom:renderTag",f,t,r);c.head&&t.head.appendChild(c.head),c.bodyOpen&&t.body.insertBefore(c.bodyOpen,t.body.firstChild),c.bodyClose&&t.body.appendChild(c.bodyClose),Object.values(i.pendingSideEffects).forEach(f=>f()),n._dom=i,n.dirty=!1,await n.hooks.callHook("dom:rendered",{renders:o})}async function Ko(n,e={}){const t=e.delayFn||(s=>setTimeout(s,10));return n._domUpdatePromise=n._domUpdatePromise||new Promise(s=>t(async()=>{await qo(n,e),delete n._domUpdatePromise,s()}))}function Jo(n){return e=>{var s,o;const t=((o=(s=e.resolvedOptions.document)==null?void 0:s.head.querySelector('script[id="unhead:payload"]'))==null?void 0:o.innerHTML)||!1;return t&&e.push(JSON.parse(t)),{mode:"client",hooks:{"entries:updated":function(i){Ko(i,n)}}}}}const Go=["templateParams","htmlAttrs","bodyAttrs"],Qo={hooks:{"tag:normalise":function({tag:n}){["hid","vmid","key"].forEach(s=>{n.props[s]&&(n.key=n.props[s],delete n.props[s])});const t=gs(n)||(n.key?`${n.tag}:${n.key}`:!1);t&&(n._d=t)},"tags:resolve":function(n){const e={};n.tags.forEach(s=>{const o=(s.key?`${s.tag}:${s.key}`:s._d)||s._p,i=e[o];if(i){let a=s==null?void 0:s.tagDuplicateStrategy;if(!a&&Go.includes(s.tag)&&(a="merge"),a==="merge"){const l=i.props;["class","style"].forEach(c=>{l[c]&&(s.props[c]?(c==="style"&&!l[c].endsWith(";")&&(l[c]+=";"),s.props[c]=`${l[c]} ${s.props[c]}`):s.props[c]=l[c])}),e[o].props={...l,...s.props};return}else if(s._e===i._e){i._duped=i._duped||[],s._d=`${i._d}:${i._duped.length+1}`,i._duped.push(s);return}else if(Pt(s)>Pt(i))return}const r=Object.keys(s.props).length+(s.innerHTML?1:0)+(s.textContent?1:0);if(wt.includes(s.tag)&&r===0){delete e[o];return}e[o]=s});const t=[];Object.values(e).forEach(s=>{const o=s._duped;delete s._duped,t.push(s),o&&t.push(...o)}),n.tags=t,n.tags=n.tags.filter(s=>!(s.tag==="meta"&&(s.props.name||s.props.property)&&!s.props.content))}}},Yo={mode:"server",hooks:{"tags:resolve":function(n){const e={};n.tags.filter(t=>["titleTemplate","templateParams","title"].includes(t.tag)&&t._m==="server").forEach(t=>{e[t.tag]=t.tag.startsWith("title")?t.textContent:t.props}),Object.keys(e).length&&n.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},Zo=["script","link","bodyAttrs"],Xo=n=>({hooks:{"tags:resolve":function(e){for(const t of e.tags.filter(s=>Zo.includes(s.tag)))Object.entries(t.props).forEach(([s,o])=>{s.startsWith("on")&&typeof o=="function"&&(n.ssr&&Vn.includes(s)?t.props[s]=`this.dataset.${s}fired = true`:delete t.props[s],t._eventHandlers=t._eventHandlers||{},t._eventHandlers[s]=o)}),n.ssr&&t._eventHandlers&&(t.props.src||t.props.href)&&(t.key=t.key||kn(t.props.src||t.props.href))},"dom:renderTag":function({$el:e,tag:t}){var s,o;for(const i of Object.keys((e==null?void 0:e.dataset)||{}).filter(r=>Vn.some(a=>`${a}fired`===r))){const r=i.replace("fired","");(o=(s=t._eventHandlers)==null?void 0:s[r])==null||o.call(e,new Event(r.replace("on","")))}}}}),ei=["link","style","script","noscript"],ti={hooks:{"tag:normalise":({tag:n})=>{n.key&&ei.includes(n.tag)&&(n.props["data-hid"]=n._h=kn(n.key))}}},ni={hooks:{"tags:resolve":n=>{const e=t=>{var s;return(s=n.tags.find(o=>o._d===t))==null?void 0:s._p};for(const{prefix:t,offset:s}of zo)for(const o of n.tags.filter(i=>typeof i.tagPriority=="string"&&i.tagPriority.startsWith(t))){const i=e(o.tagPriority.replace(t,""));typeof i<"u"&&(o._p=i+s)}n.tags.sort((t,s)=>t._p-s._p).sort((t,s)=>Pt(t)-Pt(s))}}},si={meta:"content",link:"href",htmlAttrs:"lang"},oi=n=>({hooks:{"tags:resolve":e=>{var a;const{tags:t}=e,s=(a=t.find(l=>l.tag==="title"))==null?void 0:a.textContent,o=t.findIndex(l=>l.tag==="templateParams"),i=o!==-1?t[o].props:{},r=i.separator||"|";delete i.separator,i.pageTitle=bt(i.pageTitle||s||"",i,r);for(const l of t.filter(c=>c.processTemplateParams!==!1)){const c=si[l.tag];c&&typeof l.props[c]=="string"?l.props[c]=bt(l.props[c],i,r):(l.processTemplateParams===!0||["titleTemplate","title"].includes(l.tag))&&["innerHTML","textContent"].forEach(u=>{typeof l[u]=="string"&&(l[u]=bt(l[u],i,r))})}n._templateParams=i,n._separator=r,e.tags=t.filter(l=>l.tag!=="templateParams")}}}),ii={hooks:{"tags:resolve":n=>{const{tags:e}=n;let t=e.findIndex(o=>o.tag==="titleTemplate");const s=e.findIndex(o=>o.tag==="title");if(s!==-1&&t!==-1){const o=Nn(e[t].textContent,e[s].textContent);o!==null?e[s].textContent=o||e[s].textContent:delete e[s]}else if(t!==-1){const o=Nn(e[t].textContent);o!==null&&(e[t].textContent=o,e[t].tag="title",t=-1)}t!==-1&&delete e[t],n.tags=e.filter(Boolean)}}},ri={hooks:{"tags:afterResolve":function(n){for(const e of n.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{a.dirty=!0,e.callHook("entries:updated",a)};let o=0,i=[];const r=[],a={plugins:r,dirty:!1,resolvedOptions:n,hooks:e,headEntries(){return i},use(l){const c=typeof l=="function"?l(a):l;(!c.key||!r.some(u=>u.key===c.key))&&(r.push(c),Bn(c.mode,t)&&e.addHooks(c.hooks||{}))},push(l,c){c==null||delete c.head;const u={_i:o++,input:l,...c};return Bn(u.mode,t)&&(i.push(u),s()),{dispose(){i=i.filter(f=>f._i!==u._i),e.callHook("entries:updated",a),s()},patch(f){i=i.map(h=>(h._i===u._i&&(h.input=u.input=f),h)),s()}}},async resolveTags(){const l={tags:[],entries:[...i]};await e.callHook("entries:resolve",l);for(const c of l.entries){const u=c.resolvedInput||c.input;if(c.resolvedInput=await(c.transform?c.transform(u):u),c.resolvedInput)for(const f of await Uo(c)){const h={tag:f,entry:c,resolvedOptions:a.resolvedOptions};await e.callHook("tag:normalise",h),l.tags.push(h.tag)}}return await e.callHook("tags:beforeResolve",l),await e.callHook("tags:resolve",l),await e.callHook("tags:afterResolve",l),l.tags},ssr:t};return[Qo,Yo,Xo,ti,ni,oi,ii,ri,...(n==null?void 0:n.plugins)||[]].forEach(l=>a.use(l)),a.hooks.callHook("init",a),a}function ci(){return ys}const ui=Js.startsWith("3");function fi(n){return typeof n=="function"?n():wn(n)}function Ct(n,e=""){if(n instanceof Promise)return n;const t=fi(n);return!n||!t?t:Array.isArray(t)?t.map(s=>Ct(s,e)):typeof t=="object"?Object.fromEntries(Object.entries(t).map(([s,o])=>s==="titleTemplate"||s.startsWith("on")?[s,wn(o)]:[s,Ct(o,s)])):t}const hi={hooks:{"entries:resolve":function(n){for(const e of n.entries)e.resolvedInput=Ct(e.input)}}},vs="usehead";function di(n){return{install(t){ui&&(t.config.globalProperties.$unhead=n,t.config.globalProperties.$head=n,t.provide(vs,n))}}.install}function pi(n={}){n.domDelayFn=n.domDelayFn||(t=>$t(()=>setTimeout(()=>t(),0)));const e=ai(n);return e.use(hi),e.install=di(e),e}const Wn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Un="__unhead_injection_handler__";function gi(){if(Un in Wn)return Wn[Un]();const n=as(vs);return n||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),n||ci()}function mi(n,e={}){const t=e.head||gi();if(t)return t.ssr?t.push(n,e):yi(t,n,e)}function yi(n,e,t={}){const s=$(!1),o=$({});Ge(()=>{o.value=s.value?{}:Ct(e)});const i=n.push(o.value,t);return Q(o,a=>{i.patch(a)}),ls()&&(Gs(()=>{i.dispose()}),Qs(()=>{s.value=!0}),Ys(()=>{s.value=!1})),i}function _s(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function Y(n,e,t){Object.defineProperty(n,e,{value:t,writable:!0,enumerable:!1})}const Fe=b({page:0,clicks:0});let vi=[],_i=[];Y(Fe,"$syncUp",!0);Y(Fe,"$syncDown",!0);Y(Fe,"$paused",!1);Y(Fe,"$onSet",n=>vi.push(n));Y(Fe,"$onPatch",n=>_i.push(n));_s();Y(Fe,"$patch",async()=>!1);function ws(n,e,t=!1){const s=[];let o=!1,i=!1,r,a;const l=b(e);function c(d){s.push(d)}function u(d,g){l[d]!==g&&(clearTimeout(r),o=!0,l[d]=g,r=setTimeout(()=>o=!1,0))}function f(d){o||(clearTimeout(a),i=!0,Object.entries(d).forEach(([g,m])=>{l[g]=m}),a=setTimeout(()=>i=!1,0))}function h(d){let g;t?t&&window.addEventListener("storage",y=>{y&&y.key===d&&y.newValue&&f(JSON.parse(y.newValue))}):(g=new BroadcastChannel(d),g.addEventListener("message",y=>f(y.data)));function m(){!t&&g&&!i?g.postMessage(Zs(l)):t&&!i&&window.localStorage.setItem(d,JSON.stringify(l)),o||s.forEach(y=>y(l))}if(Q(l,m,{deep:!0,flush:"sync"}),t){const y=window.localStorage.getItem(d);y&&f(JSON.parse(y))}}return{init:h,onPatch:c,patch:u,state:l}}const{init:wi,onPatch:bi,patch:et,state:tl}=ws(Fe,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),Ve=b({});let ki=[],Si=[];Y(Ve,"$syncUp",!0);Y(Ve,"$syncDown",!0);Y(Ve,"$paused",!1);Y(Ve,"$onSet",n=>ki.push(n));Y(Ve,"$onPatch",n=>Si.push(n));_s();Y(Ve,"$patch",async()=>!1);const{init:Mi,onPatch:nl,patch:sl,state:ol}=ws(Ve,{},!1),Vt="$$slidev-clicks-context",Sn="$$slidev-page",bs="$$slidev-slide-element",Oi="$$slidev-slide-scale",Ei="$$slidev-context",il="$$slidev-route",Mn="$$slidev-render-context",rl="$$slidev-active",Ti="$$slidev-fontmatter",$i="$$slidev-slide-zoom",kt="slidev-vclick-target",tt="slidev-vclick-hidden",nt="slidev-vclick-fade",Jt="slidev-vclick-hidden-explicitly",Gt="slidev-vclick-current",Qt="slidev-vclick-prior",rn=999999,Pi=["localhost","127.0.0.1"],Ci=["clicks","clicksStart","disabled","hide","hideInToc","layout","level","preload","routeAlias","src","title","transition","zoom","dragPos"],al=[...Ci,"theme","titleTemplate","info","author","keywords","presenter","download","exportFilename","export","highlighter","lineNumbers","monaco","monacoTypesSource","monacoTypesAdditionalPackages","monacoRunAdditionalDeps","remoteAssets","selectable","record","colorSchema","routerMode","aspectRatio","canvasWidth","themeConfig","favicon","plantUmlServer","fonts","defaults","drawings","htmlAttrs","mdc","contextMenu"],ks=$(!1),On=Symbol.for("yaml.alias"),Li=Symbol.for("yaml.document"),xe=Symbol.for("yaml.map"),Ss=Symbol.for("yaml.pair"),En=Symbol.for("yaml.scalar"),dt=Symbol.for("yaml.seq"),ie=Symbol.for("yaml.node.type"),Ye=n=>!!n&&typeof n=="object"&&n[ie]===On,Bt=n=>!!n&&typeof n=="object"&&n[ie]===Li,Ms=n=>!!n&&typeof n=="object"&&n[ie]===xe,B=n=>!!n&&typeof n=="object"&&n[ie]===Ss,F=n=>!!n&&typeof n=="object"&&n[ie]===En,Tn=n=>!!n&&typeof n=="object"&&n[ie]===dt;function J(n){if(n&&typeof n=="object")switch(n[ie]){case xe:case dt:return!0}return!1}function q(n){if(n&&typeof n=="object")switch(n[ie]){case On:case xe:case En:case dt:return!0}return!1}const Ai=n=>(F(n)||J(n))&&!!n.anchor,He=Symbol("break visit"),Ii=Symbol("skip children"),rt=Symbol("remove node");function ut(n,e){const t=Di(e);Bt(n)?ze(null,n.contents,t,Object.freeze([n]))===rt&&(n.contents=null):ze(null,n,t,Object.freeze([]))}ut.BREAK=He;ut.SKIP=Ii;ut.REMOVE=rt;function ze(n,e,t,s){const o=ji(n,e,t,s);if(q(o)||B(o))return Hi(n,s,o),ze(n,o,t,s);if(typeof o!="symbol"){if(J(e)){s=Object.freeze(s.concat(e));for(let i=0;iee(s,String(o),t));if(n&&typeof n.toJSON=="function"){if(!t||!Ai(n))return n.toJSON(e,t);const s={aliasCount:0,count:1,res:void 0};t.anchors.set(n,s),t.onCreate=i=>{s.res=i,delete t.onCreate};const o=n.toJSON(e,t);return t.onCreate&&t.onCreate(o),o}return typeof n=="bigint"&&!(t!=null&&t.keep)?Number(n):n}class $n{constructor(e){Object.defineProperty(this,ie,{value:e})}clone(){const e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:t,maxAliasCount:s,onAnchor:o,reviver:i}={}){if(!Bt(e))throw new TypeError("A document argument is required");const r={anchors:new Map,doc:e,keep:!0,mapAsMap:t===!0,mapKeyWarned:!1,maxAliasCount:typeof s=="number"?s:100},a=ee(this,"",r);if(typeof o=="function")for(const{count:l,res:c}of r.anchors.values())o(c,l);return typeof i=="function"?it(i,{"":a},"",a):a}}class Ri extends $n{constructor(e){super(On),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e){let t;return ut(e,{Node:(s,o)=>{if(o===this)return ut.BREAK;o.anchor===this.source&&(t=o)}}),t}toJSON(e,t){if(!t)return{source:this.source};const{anchors:s,doc:o,maxAliasCount:i}=t,r=this.resolve(o);if(!r){const l=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(l)}let a=s.get(r);if(a||(ee(r,null,t),a=s.get(r)),!a||a.res===void 0){const l="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(l)}if(i>=0&&(a.count+=1,a.aliasCount===0&&(a.aliasCount=St(o,r,s)),a.count*a.aliasCount>i)){const l="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(l)}return a.res}toString(e,t,s){const o=`*${this.source}`;if(e){if(Os(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){const i=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(i)}if(e.implicitKey)return`${o} `}return o}}function St(n,e,t){if(Ye(e)){const s=e.resolve(n),o=t&&s&&t.get(s);return o?o.count*o.aliasCount:0}else if(J(e)){let s=0;for(const o of e.items){const i=St(n,o,t);i>s&&(s=i)}return s}else if(B(e)){const s=St(n,e.key,t),o=St(n,e.value,t);return Math.max(s,o)}return 1}const Es=n=>!n||typeof n!="function"&&typeof n!="object";class N extends $n{constructor(e){super(En),this.value=e}toJSON(e,t){return t!=null&&t.keep?this.value:ee(this.value,e,t)}toString(){return String(this.value)}}N.BLOCK_FOLDED="BLOCK_FOLDED";N.BLOCK_LITERAL="BLOCK_LITERAL";N.PLAIN="PLAIN";N.QUOTE_DOUBLE="QUOTE_DOUBLE";N.QUOTE_SINGLE="QUOTE_SINGLE";const Ni="tag:yaml.org,2002:";function xi(n,e,t){if(e){const s=t.filter(i=>i.tag===e),o=s.find(i=>!i.format)??s[0];if(!o)throw new Error(`Tag ${e} not found`);return o}return t.find(s=>{var o;return((o=s.identify)==null?void 0:o.call(s,n))&&!s.format})}function Lt(n,e,t){var f,h,d;if(Bt(n)&&(n=n.contents),q(n))return n;if(B(n)){const g=(h=(f=t.schema[xe]).createNode)==null?void 0:h.call(f,t.schema,null,t);return g.items.push(n),g}(n instanceof String||n instanceof Number||n instanceof Boolean||typeof BigInt<"u"&&n instanceof BigInt)&&(n=n.valueOf());const{aliasDuplicateObjects:s,onAnchor:o,onTagObj:i,schema:r,sourceObjects:a}=t;let l;if(s&&n&&typeof n=="object"){if(l=a.get(n),l)return l.anchor||(l.anchor=o(n)),new Ri(l.anchor);l={anchor:null,node:null},a.set(n,l)}e!=null&&e.startsWith("!!")&&(e=Ni+e.slice(2));let c=xi(n,e,r.tags);if(!c){if(n&&typeof n.toJSON=="function"&&(n=n.toJSON()),!n||typeof n!="object"){const g=new N(n);return l&&(l.node=g),g}c=n instanceof Map?r[xe]:Symbol.iterator in Object(n)?r[dt]:r[xe]}i&&(i(c),delete t.onTagObj);const u=c!=null&&c.createNode?c.createNode(t.schema,n,t):typeof((d=c==null?void 0:c.nodeClass)==null?void 0:d.from)=="function"?c.nodeClass.from(t.schema,n,t):new N(n);return e?u.tag=e:c.default||(u.tag=c.tag),l&&(l.node=u),u}function zn(n,e,t){let s=t;for(let o=e.length-1;o>=0;--o){const i=e[o];if(typeof i=="number"&&Number.isInteger(i)&&i>=0){const r=[];r[i]=s,s=r}else s=new Map([[i,s]])}return Lt(s,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:n,sourceObjects:new Map})}const Fi=n=>n==null||typeof n=="object"&&!!n[Symbol.iterator]().next().done;class Pn extends $n{constructor(e,t){super(e),Object.defineProperty(this,"schema",{value:t,configurable:!0,enumerable:!1,writable:!0})}clone(e){const t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(t.schema=e),t.items=t.items.map(s=>q(s)||B(s)?s.clone(e):s),this.range&&(t.range=this.range.slice()),t}addIn(e,t){if(Fi(e))this.add(t);else{const[s,...o]=e,i=this.get(s,!0);if(J(i))i.addIn(o,t);else if(i===void 0&&this.schema)this.set(s,zn(this.schema,o,t));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${o}`)}}deleteIn(e){const[t,...s]=e;if(s.length===0)return this.delete(t);const o=this.get(t,!0);if(J(o))return o.deleteIn(s);throw new Error(`Expected YAML collection at ${t}. Remaining path: ${s}`)}getIn(e,t){const[s,...o]=e,i=this.get(s,!0);return o.length===0?!t&&F(i)?i.value:i:J(i)?i.getIn(o,t):void 0}hasAllNullValues(e){return this.items.every(t=>{if(!B(t))return!1;const s=t.value;return s==null||e&&F(s)&&s.value==null&&!s.commentBefore&&!s.comment&&!s.tag})}hasIn(e){const[t,...s]=e;if(s.length===0)return this.has(t);const o=this.get(t,!0);return J(o)?o.hasIn(s):!1}setIn(e,t){const[s,...o]=e;if(o.length===0)this.set(s,t);else{const i=this.get(s,!0);if(J(i))i.setIn(o,t);else if(i===void 0&&this.schema)this.set(s,zn(this.schema,o,t));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${o}`)}}}Pn.maxFlowStringSingleLineLength=60;const Vi=n=>n.replace(/^(?!$)(?: $)?/gm,"#");function ft(n,e){return/^\n+$/.test(n)?n.substring(1):e?n.replace(/^(?! *$)/gm,e):n}const qe=(n,e,t)=>n.endsWith(` +`)?ft(t,e):t.includes(` +`)?` +`+ft(t,e):(n.endsWith(" ")?"":" ")+t,Ts="flow",an="block",Mt="quoted";function Wt(n,e,t="flow",{indentAtStart:s,lineWidth:o=80,minContentWidth:i=20,onFold:r,onOverflow:a}={}){if(!o||o<0)return n;const l=Math.max(1+i,1+o-e.length);if(n.length<=l)return n;const c=[],u={};let f=o-e.length;typeof s=="number"&&(s>o-Math.max(2,i)?c.push(0):f=o-s);let h,d,g=!1,m=-1,y=-1,v=-1;t===an&&(m=qn(n,m,e.length),m!==-1&&(f=m+l));for(let w;w=n[m+=1];){if(t===Mt&&w==="\\"){switch(y=m,n[m+1]){case"x":m+=3;break;case"u":m+=5;break;case"U":m+=9;break;default:m+=1}v=m}if(w===` +`)t===an&&(m=qn(n,m,e.length)),f=m+e.length+l,h=void 0;else{if(w===" "&&d&&d!==" "&&d!==` +`&&d!==" "){const k=n[m+1];k&&k!==" "&&k!==` +`&&k!==" "&&(h=m)}if(m>=f)if(h)c.push(h),f=h+l,h=void 0;else if(t===Mt){for(;d===" "||d===" ";)d=w,w=n[m+=1],g=!0;const k=m>v+1?m-2:y-1;if(u[k])return n;c.push(k),u[k]=!0,f=k+l,h=void 0}else g=!0}d=w}if(g&&a&&a(),c.length===0)return n;r&&r();let _=n.slice(0,c[0]);for(let w=0;w({indentAtStart:e?n.indent.length:n.indentAtStart,lineWidth:n.options.lineWidth,minContentWidth:n.options.minContentWidth}),zt=n=>/^(%|---|\.\.\.)/m.test(n);function Bi(n,e,t){if(!e||e<0)return!1;const s=e-t,o=n.length;if(o<=s)return!1;for(let i=0,r=0;is)return!0;if(r=i+1,o-r<=s)return!1}return!0}function at(n,e){const t=JSON.stringify(n);if(e.options.doubleQuotedAsJSON)return t;const{implicitKey:s}=e,o=e.options.doubleQuotedMinMultiLineLength,i=e.indent||(zt(n)?" ":"");let r="",a=0;for(let l=0,c=t[l];c;c=t[++l])if(c===" "&&t[l+1]==="\\"&&t[l+2]==="n"&&(r+=t.slice(a,l)+"\\ ",l+=1,a=l,c="\\"),c==="\\")switch(t[l+1]){case"u":{r+=t.slice(a,l);const u=t.substr(l+2,4);switch(u){case"0000":r+="\\0";break;case"0007":r+="\\a";break;case"000b":r+="\\v";break;case"001b":r+="\\e";break;case"0085":r+="\\N";break;case"00a0":r+="\\_";break;case"2028":r+="\\L";break;case"2029":r+="\\P";break;default:u.substr(0,2)==="00"?r+="\\x"+u.substr(2):r+=t.substr(l,6)}l+=5,a=l+1}break;case"n":if(s||t[l+2]==='"'||t.length +`;let f,h;for(h=t.length;h>0;--h){const M=t[h-1];if(M!==` +`&&M!==" "&&M!==" ")break}let d=t.substring(h);const g=d.indexOf(` +`);g===-1?f="-":t===d||g!==d.length-1?(f="+",i&&i()):f="",d&&(t=t.slice(0,-d.length),d[d.length-1]===` +`&&(d=d.slice(0,-1)),d=d.replace(cn,`$&${c}`));let m=!1,y,v=-1;for(y=0;y")+(m?c?"2":"1":"")+f;if(n&&(k+=" "+a(n.replace(/ ?[\r\n]+/g," ")),o&&o()),u)return t=t.replace(/\n+/g,`$&${c}`),`${k} +${c}${_}${t}${d}`;t=t.replace(/\n+/g,` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${c}`);const O=Wt(`${_}${t}${d}`,c,an,Ut(s,!0));return`${k} +${c}${O}`}function Wi(n,e,t,s){const{type:o,value:i}=n,{actualString:r,implicitKey:a,indent:l,indentStep:c,inFlow:u}=e;if(a&&i.includes(` +`)||u&&/[[\]{},]/.test(i))return Ke(i,e);if(!i||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(i))return a||u||!i.includes(` +`)?Ke(i,e):Ot(n,e,t,s);if(!a&&!u&&o!==N.PLAIN&&i.includes(` +`))return Ot(n,e,t,s);if(zt(i)){if(l==="")return e.forceBlockIndent=!0,Ot(n,e,t,s);if(a&&l===c)return Ke(i,e)}const f=i.replace(/\n+/g,`$& +${l}`);if(r){const h=m=>{var y;return m.default&&m.tag!=="tag:yaml.org,2002:str"&&((y=m.test)==null?void 0:y.test(f))},{compat:d,tags:g}=e.doc.schema;if(g.some(h)||d!=null&&d.some(h))return Ke(i,e)}return a?f:Wt(f,l,Ts,Ut(e,!1))}function Ui(n,e,t,s){const{implicitKey:o,inFlow:i}=e,r=typeof n.value=="string"?n:Object.assign({},n,{value:String(n.value)});let{type:a}=n;a!==N.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(r.value)&&(a=N.QUOTE_DOUBLE);const l=u=>{switch(u){case N.BLOCK_FOLDED:case N.BLOCK_LITERAL:return o||i?Ke(r.value,e):Ot(r,e,t,s);case N.QUOTE_DOUBLE:return at(r.value,e);case N.QUOTE_SINGLE:return ln(r.value,e);case N.PLAIN:return Wi(r,e,t,s);default:return null}};let c=l(a);if(c===null){const{defaultKeyType:u,defaultStringType:f}=e.options,h=o&&u||f;if(c=l(h),c===null)throw new Error(`Unsupported default string type ${h}`)}return c}function zi(n,e){const t=Object.assign({blockQuote:!0,commentString:Vi,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},n.schema.toStringOptions,e);let s;switch(t.collectionStyle){case"block":s=!1;break;case"flow":s=!0;break;default:s=null}return{anchors:new Set,doc:n,flowCollectionPadding:t.flowCollectionPadding?" ":"",indent:"",indentStep:typeof t.indent=="number"?" ".repeat(t.indent):" ",inFlow:s,options:t}}function qi(n,e){var o;if(e.tag){const i=n.filter(r=>r.tag===e.tag);if(i.length>0)return i.find(r=>r.format===e.format)??i[0]}let t,s;if(F(e)){s=e.value;const i=n.filter(r=>{var a;return(a=r.identify)==null?void 0:a.call(r,s)});t=i.find(r=>r.format===e.format)??i.find(r=>!r.format)}else s=e,t=n.find(i=>i.nodeClass&&s instanceof i.nodeClass);if(!t){const i=((o=s==null?void 0:s.constructor)==null?void 0:o.name)??typeof s;throw new Error(`Tag not resolved for ${i} value`)}return t}function Ki(n,e,{anchors:t,doc:s}){if(!s.directives)return"";const o=[],i=(F(n)||J(n))&&n.anchor;i&&Os(i)&&(t.add(i),o.push(`&${i}`));const r=n.tag?n.tag:e.default?null:e.tag;return r&&o.push(s.directives.tagString(r)),o.join(" ")}function At(n,e,t,s){var l;if(B(n))return n.toString(e,t,s);if(Ye(n)){if(e.doc.directives)return n.toString(e);if((l=e.resolvedAliases)!=null&&l.has(n))throw new TypeError("Cannot stringify circular structure without alias nodes");e.resolvedAliases?e.resolvedAliases.add(n):e.resolvedAliases=new Set([n]),n=n.resolve(e.doc)}let o;const i=q(n)?n:e.doc.createNode(n,{onTagObj:c=>o=c});o||(o=qi(e.doc.schema.tags,i));const r=Ki(i,o,e);r.length>0&&(e.indentAtStart=(e.indentAtStart??0)+r.length+1);const a=typeof o.stringify=="function"?o.stringify(i,e,t,s):F(i)?Ui(i,e,t,s):i.toString(e,t,s);return r?F(i)||a[0]==="{"||a[0]==="["?`${r} ${a}`:`${r} +${e.indent}${a}`:a}function Ji({key:n,value:e},t,s,o){const{allNullValues:i,doc:r,indent:a,indentStep:l,options:{commentString:c,indentSeq:u,simpleKeys:f}}=t;let h=q(n)&&n.comment||null;if(f){if(h)throw new Error("With simple keys, key nodes cannot have comments");if(J(n)){const P="With simple keys, collection cannot be used as a key value";throw new Error(P)}}let d=!f&&(!n||h&&e==null&&!t.inFlow||J(n)||(F(n)?n.type===N.BLOCK_FOLDED||n.type===N.BLOCK_LITERAL:typeof n=="object"));t=Object.assign({},t,{allNullValues:!1,implicitKey:!d&&(f||!i),indent:a+l});let g=!1,m=!1,y=At(n,t,()=>g=!0,()=>m=!0);if(!d&&!t.inFlow&&y.length>1024){if(f)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");d=!0}if(t.inFlow){if(i||e==null)return g&&s&&s(),y===""?"?":d?`? ${y}`:y}else if(i&&!f||e==null&&d)return y=`? ${y}`,h&&!g?y+=qe(y,t.indent,c(h)):m&&o&&o(),y;g&&(h=null),d?(h&&(y+=qe(y,t.indent,c(h))),y=`? ${y} +${a}:`):(y=`${y}:`,h&&(y+=qe(y,t.indent,c(h))));let v,_,w;q(e)?(v=!!e.spaceBefore,_=e.commentBefore,w=e.comment):(v=!1,_=null,w=null,e&&typeof e=="object"&&(e=r.createNode(e))),t.implicitKey=!1,!d&&!h&&F(e)&&(t.indentAtStart=y.length+1),m=!1,!u&&l.length>=2&&!t.inFlow&&!d&&Tn(e)&&!e.flow&&!e.tag&&!e.anchor&&(t.indent=t.indent.substring(2));let k=!1;const O=At(e,t,()=>k=!0,()=>m=!0);let M=" ";if(h||v||_){if(M=v?` +`:"",_){const P=c(_);M+=` +${ft(P,t.indent)}`}O===""&&!t.inFlow?M===` +`&&(M=` + +`):M+=` +${t.indent}`}else if(!d&&J(e)){const P=O[0],L=O.indexOf(` +`),D=L!==-1,V=t.inFlow??e.flow??e.items.length===0;if(D||!V){let ne=!1;if(D&&(P==="&"||P==="!")){let T=O.indexOf(" ");P==="&"&&T!==-1&&Tn===Kn||F(n)&&n.value===Kn&&(!n.type||n.type===N.PLAIN);function Yt(n,e,t){const s=n&&Ye(t)?t.resolve(n.doc):t;if(!Ms(s))throw new Error("Merge sources must be maps or map aliases");const o=s.toJSON(null,n,Map);for(const[i,r]of o)e instanceof Map?e.has(i)||e.set(i,r):e instanceof Set?e.add(i):Object.prototype.hasOwnProperty.call(e,i)||Object.defineProperty(e,i,{value:r,writable:!0,enumerable:!0,configurable:!0});return e}function Yi(n,e,t){if(e===null)return"";if(typeof e!="object")return String(e);if(q(n)&&(t!=null&&t.doc)){const s=zi(t.doc,{});s.anchors=new Set;for(const i of t.anchors.keys())s.anchors.add(i.anchor);s.inFlow=!0,s.inStringifyKey=!0;const o=n.toString(s);if(!t.mapKeyWarned){let i=JSON.stringify(o);i.length>40&&(i=i.substring(0,36)+'..."'),Gi(t.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${i}. Set mapAsMap: true to use object keys.`),t.mapKeyWarned=!0}return o}return JSON.stringify(e)}function Cn(n,e,t){const s=Lt(n,void 0,t),o=Lt(e,void 0,t);return new re(s,o)}class re{constructor(e,t=null){Object.defineProperty(this,ie,{value:Ss}),this.key=e,this.value=t}clone(e){let{key:t,value:s}=this;return q(t)&&(t=t.clone(e)),q(s)&&(s=s.clone(e)),new re(t,s)}toJSON(e,t){const s=t!=null&&t.mapAsMap?new Map:{};return $s(t,s,this)}toString(e,t,s){return e!=null&&e.doc?Ji(this,e,t,s):JSON.stringify(this)}}function Ps(n,e,t){return(e.inFlow??n.flow?Xi:Zi)(n,e,t)}function Zi({comment:n,items:e},t,{blockItemPrefix:s,flowChars:o,itemIndent:i,onChompKeep:r,onComment:a}){const{indent:l,options:{commentString:c}}=t,u=Object.assign({},t,{indent:i,type:null});let f=!1;const h=[];for(let g=0;gy=null,()=>f=!0);y&&(v+=qe(v,i,c(y))),f&&y&&(f=!1),h.push(s+v)}let d;if(h.length===0)d=o.start+o.end;else{d=h[0];for(let g=1;gy=null);gu||v.includes(` +`))&&(c=!0),f.push(v),u=f.length}const{start:h,end:d}=t;if(f.length===0)return h+d;if(!c){const g=f.reduce((m,y)=>m+y.length+2,2);c=e.options.lineWidth>0&&g>e.options.lineWidth}if(c){let g=h;for(const m of f)g+=m?` +${i}${o}${m}`:` +`;return`${g} +${o}${d}`}else return`${h}${r}${f.join(" ")}${r}${d}`}function It({indent:n,options:{commentString:e}},t,s,o){if(s&&o&&(s=s.replace(/^\n+/,"")),s){const i=ft(e(s),n);t.push(i.trimStart())}}function Ne(n,e){const t=F(e)?e.value:e;for(const s of n)if(B(s)&&(s.key===e||s.key===t||F(s.key)&&s.key.value===t))return s}class We extends Pn{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(xe,e),this.items=[]}static from(e,t,s){const{keepUndefined:o,replacer:i}=s,r=new this(e),a=(l,c)=>{if(typeof i=="function")c=i.call(t,l,c);else if(Array.isArray(i)&&!i.includes(l))return;(c!==void 0||o)&&r.items.push(Cn(l,c,s))};if(t instanceof Map)for(const[l,c]of t)a(l,c);else if(t&&typeof t=="object")for(const l of Object.keys(t))a(l,t[l]);return typeof e.sortMapEntries=="function"&&r.items.sort(e.sortMapEntries),r}add(e,t){var r;let s;B(e)?s=e:!e||typeof e!="object"||!("key"in e)?s=new re(e,e==null?void 0:e.value):s=new re(e.key,e.value);const o=Ne(this.items,s.key),i=(r=this.schema)==null?void 0:r.sortMapEntries;if(o){if(!t)throw new Error(`Key ${s.key} already set`);F(o.value)&&Es(s.value)?o.value.value=s.value:o.value=s.value}else if(i){const a=this.items.findIndex(l=>i(s,l)<0);a===-1?this.items.push(s):this.items.splice(a,0,s)}else this.items.push(s)}delete(e){const t=Ne(this.items,e);return t?this.items.splice(this.items.indexOf(t),1).length>0:!1}get(e,t){const s=Ne(this.items,e),o=s==null?void 0:s.value;return(!t&&F(o)?o.value:o)??void 0}has(e){return!!Ne(this.items,e)}set(e,t){this.add(new re(e,t),!0)}toJSON(e,t,s){const o=s?new s:t!=null&&t.mapAsMap?new Map:{};t!=null&&t.onCreate&&t.onCreate(o);for(const i of this.items)$s(t,o,i);return o}toString(e,t,s){if(!e)return JSON.stringify(this);for(const o of this.items)if(!B(o))throw new Error(`Map items must all be pairs; found ${JSON.stringify(o)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),Ps(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:s,onComment:t})}}class Cs extends Pn{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(dt,e),this.items=[]}add(e){this.items.push(e)}delete(e){const t=gt(e);return typeof t!="number"?!1:this.items.splice(t,1).length>0}get(e,t){const s=gt(e);if(typeof s!="number")return;const o=this.items[s];return!t&&F(o)?o.value:o}has(e){const t=gt(e);return typeof t=="number"&&t=0?e:null}function er(n,e,t){const{replacer:s}=t,o=new Cs(n);o.tag="tag:yaml.org,2002:pairs";let i=0;if(e&&Symbol.iterator in Object(e))for(let r of e){typeof s=="function"&&(r=s.call(e,String(i++),r));let a,l;if(Array.isArray(r))if(r.length===2)a=r[0],l=r[1];else throw new TypeError(`Expected [key, value] tuple: ${r}`);else if(r&&r instanceof Object){const c=Object.keys(r);if(c.length===1)a=c[0],l=r[a];else throw new TypeError(`Expected tuple with one key, not ${c.length} keys`)}else a=r;o.items.push(Cn(a,l,t))}return o}class Ln extends Cs{constructor(){super(),this.add=We.prototype.add.bind(this),this.delete=We.prototype.delete.bind(this),this.get=We.prototype.get.bind(this),this.has=We.prototype.has.bind(this),this.set=We.prototype.set.bind(this),this.tag=Ln.tag}toJSON(e,t){if(!t)return super.toJSON(e);const s=new Map;t!=null&&t.onCreate&&t.onCreate(s);for(const o of this.items){let i,r;if(B(o)?(i=ee(o.key,"",t),r=ee(o.value,i,t)):i=ee(o,"",t),s.has(i))throw new Error("Ordered maps must not include duplicate keys");s.set(i,r)}return s}static from(e,t,s){const o=er(e,t,s),i=new this;return i.items=o.items,i}}Ln.tag="tag:yaml.org,2002:omap";class An extends We{constructor(e){super(e),this.tag=An.tag}add(e){let t;B(e)?t=e:e&&typeof e=="object"&&"key"in e&&"value"in e&&e.value===null?t=new re(e.key,null):t=new re(e,null),Ne(this.items,t.key)||this.items.push(t)}get(e,t){const s=Ne(this.items,e);return!t&&B(s)?F(s.key)?s.key.value:s.key:s}set(e,t){if(typeof t!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof t}`);const s=Ne(this.items,e);s&&!t?this.items.splice(this.items.indexOf(s),1):!s&&t&&this.items.push(new re(e))}toJSON(e,t){return super.toJSON(e,t,Set)}toString(e,t,s){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),t,s);throw new Error("Set items must all have null values")}static from(e,t,s){const{replacer:o}=s,i=new this(e);if(t&&Symbol.iterator in Object(t))for(let r of t)typeof o=="function"&&(r=o.call(t,r,r)),i.items.push(Cn(r,null,s));return i}}An.tag="tag:yaml.org,2002:set";function tr(n){return Array.from(new Set(n))}function Jn(...n){let e,t,s;n.length===1?(e=0,s=1,[t]=n):[e,t,s=1]=n;const o=[];let i=e;for(;is<=n).sort((s,o)=>s-o)}function ll(){const n=$(Date.now()),e=Xs({interval:1e3}),t=p(()=>{const o=(e.value-n.value)/1e3,i=Math.floor(o%60).toString().padStart(2,"0");return`${Math.floor(o/60).toString().padStart(2,"0")}:${i}`});function s(){n.value=e.value}return{timer:t,resetTimer:s}}function In(n=5){const e=[],t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",s=t.length;for(let o=0;o0){const i=document.getElementsByTagName("link"),r=document.querySelector("meta[property=csp-nonce]"),a=(r==null?void 0:r.nonce)||(r==null?void 0:r.getAttribute("nonce"));o=Promise.all(t.map(l=>{if(l=or(l),l in Gn)return;Gn[l]=!0;const c=l.endsWith(".css"),u=c?'[rel="stylesheet"]':"";if(!!s)for(let d=i.length-1;d>=0;d--){const g=i[d];if(g.href===l&&(!c||g.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${u}`))return;const h=document.createElement("link");if(h.rel=c?"stylesheet":sr,c||(h.as="script",h.crossOrigin=""),h.href=l,a&&h.setAttribute("nonce",a),document.head.appendChild(h),c)return new Promise((d,g)=>{h.addEventListener("load",d),h.addEventListener("error",()=>g(new Error(`Unable to preload CSS for ${l}`)))})}))}return o.then(()=>e()).catch(i=>{const r=new Event("vite:preloadError",{cancelable:!0});if(r.payload=i,window.dispatchEvent(r),!r.defaultPrevented)throw i})},Ls=(n,e)=>{const t=n.__vccOpts||n;for(const[s,o]of e)t[s]=o;return t},ir={},rr={class:"px-4 py-10 text-center text-red-700 dark:text-red-500 font-bold font-mono"};function ar(n,e){return cs(),eo("div",rr," An error occurred on this slide. Check the terminal for more information. ")}const lr=Ls(ir,[["render",ar],["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/error.vue"]]),C=Object.freeze(Object.defineProperty({__proto__:null,default:lr},Symbol.toStringTag,{value:"Module"})),ue=b({theme:"default",layout:"cover"}),cr=b({layout:p(()=>ue.layout),transition:p(()=>ue.transition),class:p(()=>ue.class),clicks:p(()=>ue.clicks),name:p(()=>ue.name),preload:p(()=>ue.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:ue,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),fe=b({}),ur=b({layout:p(()=>fe.layout),transition:p(()=>fe.transition),class:p(()=>fe.class),clicks:p(()=>fe.clicks),name:p(()=>fe.name),preload:p(()=>fe.preload),slide:{index:1,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:fe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:10,id:1,no:2},__clicksContext:null,__preloaded:!1}),he=b({layout:"two-cols"}),fr=b({layout:p(()=>he.layout),transition:p(()=>he.transition),class:p(()=>he.class),clicks:p(()=>he.clicks),name:p(()=>he.name),preload:p(()=>he.preload),slide:{index:2,content:"",note:"",title:"Components-based",level:1,noteHTML:"",raw:"",frontmatter:he,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:24,id:2,no:3},__clicksContext:null,__preloaded:!1}),de=b({layout:"two-cols"}),hr=b({layout:p(()=>de.layout),transition:p(()=>de.transition),class:p(()=>de.class),clicks:p(()=>de.clicks),name:p(()=>de.name),preload:p(()=>de.preload),slide:{index:3,content:"",note:"",title:"Software Component",level:1,noteHTML:"",raw:"",frontmatter:de,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:46,id:3,no:4},__clicksContext:null,__preloaded:!1}),pe=b({layout:"two-cols"}),dr=b({layout:p(()=>pe.layout),transition:p(()=>pe.transition),class:p(()=>pe.class),clicks:p(()=>pe.clicks),name:p(()=>pe.name),preload:p(()=>pe.preload),slide:{index:4,content:"",note:"",title:"类比:DIY",level:1,noteHTML:"",raw:"",frontmatter:pe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:68,id:4,no:5},__clicksContext:null,__preloaded:!1}),ge=b({layout:"two-cols"}),pr=b({layout:p(()=>ge.layout),transition:p(()=>ge.transition),class:p(()=>ge.class),clicks:p(()=>ge.clicks),name:p(()=>ge.name),preload:p(()=>ge.preload),slide:{index:5,content:"",note:"",title:"CBSE",level:1,noteHTML:"",raw:"",frontmatter:ge,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:86,id:5,no:6},__clicksContext:null,__preloaded:!1}),me=b({layout:"two-cols"}),gr=b({layout:p(()=>me.layout),transition:p(()=>me.transition),class:p(()=>me.class),clicks:p(()=>me.clicks),name:p(()=>me.name),preload:p(()=>me.preload),slide:{index:6,content:"",note:"",title:"Goals of CBD",level:1,noteHTML:"",raw:"",frontmatter:me,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:101,id:6,no:7},__clicksContext:null,__preloaded:!1}),ye=b({}),mr=b({layout:p(()=>ye.layout),transition:p(()=>ye.transition),class:p(()=>ye.class),clicks:p(()=>ye.clicks),name:p(()=>ye.name),preload:p(()=>ye.preload),slide:{index:7,content:"",note:"",title:"CCM Component",level:1,noteHTML:"",raw:"",frontmatter:ye,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:116,id:7,no:8},__clicksContext:null,__preloaded:!1}),ve=b({}),yr=b({layout:p(()=>ve.layout),transition:p(()=>ve.transition),class:p(()=>ve.class),clicks:p(()=>ve.clicks),name:p(()=>ve.name),preload:p(()=>ve.preload),slide:{index:8,content:"",note:"",title:"Spring",level:1,noteHTML:"",raw:"",frontmatter:ve,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:123,id:8,no:9},__clicksContext:null,__preloaded:!1}),_e=b({}),vr=b({layout:p(()=>_e.layout),transition:p(()=>_e.transition),class:p(()=>_e.class),clicks:p(()=>_e.clicks),name:p(()=>_e.name),preload:p(()=>_e.preload),slide:{index:9,content:"",note:"",title:"CBD a web app with Spring",level:1,noteHTML:"",raw:"",frontmatter:_e,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:137,id:9,no:10},__clicksContext:null,__preloaded:!1}),we=b({}),_r=b({layout:p(()=>we.layout),transition:p(()=>we.transition),class:p(()=>we.class),clicks:p(()=>we.clicks),name:p(()=>we.name),preload:p(()=>we.preload),slide:{index:10,content:"",note:"",title:"Compositing/Assembling/Wiring",level:1,noteHTML:"",raw:"",frontmatter:we,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:152,id:10,no:11},__clicksContext:null,__preloaded:!1}),be=b({}),wr=b({layout:p(()=>be.layout),transition:p(()=>be.transition),class:p(()=>be.class),clicks:p(()=>be.clicks),name:p(()=>be.name),preload:p(()=>be.preload),slide:{index:11,content:"",note:"",title:"控制反转 IoC",level:1,noteHTML:"",raw:"",frontmatter:be,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:159,id:11,no:12},__clicksContext:null,__preloaded:!1}),ke=b({layout:"two-cols"}),br=b({layout:p(()=>ke.layout),transition:p(()=>ke.transition),class:p(()=>ke.class),clicks:p(()=>ke.clicks),name:p(()=>ke.name),preload:p(()=>ke.preload),slide:{index:12,content:"",note:"",title:"Solution Design",level:1,noteHTML:"",raw:"",frontmatter:ke,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:174,id:12,no:13},__clicksContext:null,__preloaded:!1}),Se=b({layout:"two-cols"}),kr=b({layout:p(()=>Se.layout),transition:p(()=>Se.transition),class:p(()=>Se.class),clicks:p(()=>Se.clicks),name:p(()=>Se.name),preload:p(()=>Se.preload),slide:{index:13,content:"",note:"",title:"Bad Design (WHY?)",level:1,noteHTML:"",raw:"",frontmatter:Se,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:209,id:13,no:14},__clicksContext:null,__preloaded:!1}),Me=b({}),Sr=b({layout:p(()=>Me.layout),transition:p(()=>Me.transition),class:p(()=>Me.class),clicks:p(()=>Me.clicks),name:p(()=>Me.name),preload:p(()=>Me.preload),slide:{index:14,content:"",note:"",title:"Goal: loosely coupled components",level:1,noteHTML:"",raw:"",frontmatter:Me,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:241,id:14,no:15},__clicksContext:null,__preloaded:!1}),Oe=b({}),Mr=b({layout:p(()=>Oe.layout),transition:p(()=>Oe.transition),class:p(()=>Oe.class),clicks:p(()=>Oe.clicks),name:p(()=>Oe.name),preload:p(()=>Oe.preload),slide:{index:15,content:"",note:"",title:"Concept of “Inversion of Control”",level:1,noteHTML:"",raw:"",frontmatter:Oe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:253,id:15,no:16},__clicksContext:null,__preloaded:!1}),Ee=b({}),Or=b({layout:p(()=>Ee.layout),transition:p(()=>Ee.transition),class:p(()=>Ee.class),clicks:p(()=>Ee.clicks),name:p(()=>Ee.name),preload:p(()=>Ee.preload),slide:{index:16,content:"",note:"",title:"Inversion of Control",level:1,noteHTML:"",raw:"",frontmatter:Ee,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:263,id:16,no:17},__clicksContext:null,__preloaded:!1}),Te=b({}),Er=b({layout:p(()=>Te.layout),transition:p(()=>Te.transition),class:p(()=>Te.class),clicks:p(()=>Te.clicks),name:p(()=>Te.name),preload:p(()=>Te.preload),slide:{index:17,content:"",note:"",title:"Dependency Injection",level:1,noteHTML:"",raw:"",frontmatter:Te,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:272,id:17,no:18},__clicksContext:null,__preloaded:!1}),$e=b({}),Tr=b({layout:p(()=>$e.layout),transition:p(()=>$e.transition),class:p(()=>$e.class),clicks:p(()=>$e.clicks),name:p(()=>$e.name),preload:p(()=>$e.preload),slide:{index:18,content:"",note:"",title:"Forms of Dependency Injection",level:1,noteHTML:"",raw:"",frontmatter:$e,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:281,id:18,no:19},__clicksContext:null,__preloaded:!1}),Pe=b({}),$r=b({layout:p(()=>Pe.layout),transition:p(()=>Pe.transition),class:p(()=>Pe.class),clicks:p(()=>Pe.clicks),name:p(()=>Pe.name),preload:p(()=>Pe.preload),slide:{index:19,content:"",note:"",title:"Component Containers",level:1,noteHTML:"",raw:"",frontmatter:Pe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:293,id:19,no:20},__clicksContext:null,__preloaded:!1}),Ce=b({}),Pr=b({layout:p(()=>Ce.layout),transition:p(()=>Ce.transition),class:p(()=>Ce.class),clicks:p(()=>Ce.clicks),name:p(()=>Ce.name),preload:p(()=>Ce.preload),slide:{index:20,content:"",note:"",title:"Example: Setter Injection with Spring",level:1,noteHTML:"",raw:"",frontmatter:Ce,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:306,id:20,no:21},__clicksContext:null,__preloaded:!1}),Le=b({}),Cr=b({layout:p(()=>Le.layout),transition:p(()=>Le.transition),class:p(()=>Le.class),clicks:p(()=>Le.clicks),name:p(()=>Le.name),preload:p(()=>Le.preload),slide:{index:21,content:"",note:"",title:"Example: Setter Injection with Spring",level:1,noteHTML:"",raw:"",frontmatter:Le,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:335,id:21,no:22},__clicksContext:null,__preloaded:!1}),Ae=b({layout:"two-cols"}),Lr=b({layout:p(()=>Ae.layout),transition:p(()=>Ae.transition),class:p(()=>Ae.class),clicks:p(()=>Ae.clicks),name:p(()=>Ae.name),preload:p(()=>Ae.preload),slide:{index:22,content:"",note:"",title:"Example: Setter Injection with Spring",level:1,noteHTML:"",raw:"",frontmatter:Ae,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:362,id:22,no:23},__clicksContext:null,__preloaded:!1}),Ie=b({layout:"two-cols"}),Ar=b({layout:p(()=>Ie.layout),transition:p(()=>Ie.transition),class:p(()=>Ie.class),clicks:p(()=>Ie.clicks),name:p(()=>Ie.name),preload:p(()=>Ie.preload),slide:{index:23,content:"",note:"",title:"3 Types of Configuration Metadata",level:1,noteHTML:"",raw:"",frontmatter:Ie,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:397,id:23,no:24},__clicksContext:null,__preloaded:!1}),De=b({}),Ir=b({layout:p(()=>De.layout),transition:p(()=>De.transition),class:p(()=>De.class),clicks:p(()=>De.clicks),name:p(()=>De.name),preload:p(()=>De.preload),slide:{index:24,content:"",note:"",title:"相关阅读",level:1,noteHTML:"",raw:"",frontmatter:De,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:416,id:24,no:25},__clicksContext:null,__preloaded:!1}),je=b({}),Dr=b({layout:p(()=>je.layout),transition:p(()=>je.transition),class:p(()=>je.class),clicks:p(()=>je.clicks),name:p(()=>je.name),preload:p(()=>je.preload),slide:{index:25,content:"",note:"",title:"小结",level:1,noteHTML:"",raw:"",frontmatter:je,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:429,id:25,no:26},__clicksContext:null,__preloaded:!1}),jr=[{no:1,meta:cr,component:async()=>{try{return await E(()=>import("./slidev/1-BzF-SsEB.js"),__vite__mapDeps([0,1,2,3,4]))}catch(n){return console.error("Failed to load slide 1:",n),C}}},{no:2,meta:ur,component:async()=>{try{return await E(()=>import("./slidev/2-7zi0LsJz.js"),__vite__mapDeps([5,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 2:",n),C}}},{no:3,meta:fr,component:async()=>{try{return await E(()=>import("./3-D_pcmViu.js"),__vite__mapDeps([7,1,8,2,3,4]))}catch(n){return console.error("Failed to load slide 3:",n),C}}},{no:4,meta:hr,component:async()=>{try{return await E(()=>import("./4-CCv7RTMX.js"),__vite__mapDeps([9,1,8,2,3,4]))}catch(n){return console.error("Failed to load slide 4:",n),C}}},{no:5,meta:dr,component:async()=>{try{return await E(()=>import("./5-BlgFocKq.js"),__vite__mapDeps([10,1,8,2,3,4]))}catch(n){return console.error("Failed to load slide 5:",n),C}}},{no:6,meta:pr,component:async()=>{try{return await E(()=>import("./6-DAEZa0sA.js"),__vite__mapDeps([11,1,8,2,3,4]))}catch(n){return console.error("Failed to load slide 6:",n),C}}},{no:7,meta:gr,component:async()=>{try{return await E(()=>import("./7-MoCmkKCh.js"),__vite__mapDeps([12,1,8,2,3,4]))}catch(n){return console.error("Failed to load slide 7:",n),C}}},{no:8,meta:mr,component:async()=>{try{return await E(()=>import("./8-J0RSCQfc.js"),__vite__mapDeps([13,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 8:",n),C}}},{no:9,meta:yr,component:async()=>{try{return await E(()=>import("./9-BQ13gC74.js"),__vite__mapDeps([14,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 9:",n),C}}},{no:10,meta:vr,component:async()=>{try{return await E(()=>import("./10-Cp9YEeLJ.js"),__vite__mapDeps([15,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 10:",n),C}}},{no:11,meta:_r,component:async()=>{try{return await E(()=>import("./11-DABYCeg4.js"),__vite__mapDeps([16,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 11:",n),C}}},{no:12,meta:wr,component:async()=>{try{return await E(()=>import("./12-CgnLgc9Y.js"),__vite__mapDeps([17,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 12:",n),C}}},{no:13,meta:br,component:async()=>{try{return await E(()=>import("./slidev/13-Bj6eT8G2.js"),__vite__mapDeps([18,19,20,1,2,8,3,4]))}catch(n){return console.error("Failed to load slide 13:",n),C}}},{no:14,meta:kr,component:async()=>{try{return await E(()=>import("./slidev/14-C3KURM_e.js"),__vite__mapDeps([21,19,20,1,2,8,3,4]))}catch(n){return console.error("Failed to load slide 14:",n),C}}},{no:15,meta:Sr,component:async()=>{try{return await E(()=>import("./slidev/15-rGjXZoSq.js"),__vite__mapDeps([22,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 15:",n),C}}},{no:16,meta:Mr,component:async()=>{try{return await E(()=>import("./slidev/16-B8R0ovAH.js"),__vite__mapDeps([23,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 16:",n),C}}},{no:17,meta:Or,component:async()=>{try{return await E(()=>import("./slidev/17-CK5IeeRj.js"),__vite__mapDeps([24,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 17:",n),C}}},{no:18,meta:Er,component:async()=>{try{return await E(()=>import("./slidev/18-BLF3fe92.js"),__vite__mapDeps([25,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 18:",n),C}}},{no:19,meta:Tr,component:async()=>{try{return await E(()=>import("./slidev/19-CbvOkMK9.js"),__vite__mapDeps([26,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 19:",n),C}}},{no:20,meta:$r,component:async()=>{try{return await E(()=>import("./slidev/20-BY2AebPu.js"),__vite__mapDeps([27,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 20:",n),C}}},{no:21,meta:Pr,component:async()=>{try{return await E(()=>import("./slidev/21-DK2r8oBX.js"),__vite__mapDeps([28,19,20,1,2,6,3,4]))}catch(n){return console.error("Failed to load slide 21:",n),C}}},{no:22,meta:Cr,component:async()=>{try{return await E(()=>import("./slidev/22-BJ2z28Em.js"),__vite__mapDeps([29,1,19,20,2,6,3,4]))}catch(n){return console.error("Failed to load slide 22:",n),C}}},{no:23,meta:Lr,component:async()=>{try{return await E(()=>import("./23-Ctcl-K0N.js"),__vite__mapDeps([30,19,20,1,2,8,3,4]))}catch(n){return console.error("Failed to load slide 23:",n),C}}},{no:24,meta:Ar,component:async()=>{try{return await E(()=>import("./slidev/24-BhAzvmaL.js"),__vite__mapDeps([31,1,8,2,3,4]))}catch(n){return console.error("Failed to load slide 24:",n),C}}},{no:25,meta:Ir,component:async()=>{try{return await E(()=>import("./slidev/25-TfhY4IRB.js"),__vite__mapDeps([32,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 25:",n),C}}},{no:26,meta:Dr,component:async()=>{try{return await E(()=>import("./slidev/26-BYNtpQoF.js"),__vite__mapDeps([33,1,6,2,3,4]))}catch(n){return console.error("Failed to load slide 26:",n),C}}}],oe=bn(jr);function ht(n){return oe.value.find(e=>{var t;return e.no===+n||((t=e.meta.slide)==null?void 0:t.frontmatter.routeAlias)===n})}function Je(n,e){var s;(typeof n=="number"||typeof n=="string")&&(n=ht(n));const t=((s=n.meta.slide)==null?void 0:s.frontmatter.routeAlias)??n.no;return e?`/presenter/${t}`:`/${t}`}function Hr(n,e,{mode:t="replace"}={}){const s=xt();return p({get(){const o=s.currentRoute.value.query[n];return o==null?e??null:Array.isArray(o)?o.filter(Boolean):o},set(o){$t(()=>{(s.currentRoute.value.query[n]??(e==null?void 0:e.toString()))!==o.toString()&&s[wn(t)]({query:{...s.currentRoute.value.query,[n]:`${o}`===e?void 0:o}})})}})}const un=$(0);function Rr(n){return n===!1||n==="false"?null:n==null||n===!0||n==="true"?"+1":Array.isArray(n)?[+n[0],+n[1]]:typeof n=="string"&&"+-".includes(n[0])?n:+n}function As(n,e=0,t){const s={get current(){return ct(+n.value,e,s.total)},set current(o){n.value=ct(+o,e,s.total)},clicksStart:e,relativeOffsets:new Map,maxMap:to(new Map),onMounted(){},calculateSince(o,i=1){let r,a,l;if(typeof o=="string"){const c=s.currentOffset,u=+o;r=c+u,a=c+u+i-1,l=u+i-1}else r=o,a=o+i-1,l=0;return{start:r,end:+Number.POSITIVE_INFINITY,max:a,delta:l,isCurrent:p(()=>s.current===r),isActive:p(()=>s.current>=r)}},calculateRange([o,i]){let r,a,l;return typeof o=="string"?(r=s.currentOffset+ +o,l=+o):(r=o,l=0),typeof i=="string"?(a=r+ +i,l+=+i):a=i,{start:r,end:a,max:a,delta:l,isCurrent:p(()=>s.current===r),isActive:p(()=>r<=s.current&&s.currentH.colorSchema!=="auto"),Is=p({get(){return Yn.value?H.colorSchema==="dark":Zt.value==="auto"?Qn.value:Zt.value==="dark"},set(n){Yn.value||(Zt.value=n===Qn.value?"auto":n?"dark":"light")}}),ul=us(Is);Ft&&Q(Is,n=>{const e=document.querySelector("html");e.classList.toggle("dark",n),e.classList.toggle("light",!n)},{immediate:!0});const xr={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function Fr(n,e=!1){if(!n||(typeof n=="string"&&(n={name:n}),!n.name))return;let t=n.name.includes("|")?n.name:xr[n.name]||n.name;if(t.includes("|")){const[s,o]=t.split("|").map(i=>i.trim());t=e?o:s}if(t)return{...n,name:t}}function Vr(n,e,t){var o,i;let s=n>0?(o=t==null?void 0:t.meta)==null?void 0:o.transition:(i=e==null?void 0:e.meta)==null?void 0:i.transition;return s||(s=H.transition),Fr(s,n<0)}function Ds(n,e,t=1){var o,i,r,a,l,c,u,f,h;const s=(i=(o=e.meta)==null?void 0:o.slide)==null?void 0:i.level;s&&s>t&&n.length>0?Ds(n[n.length-1].children,e,t+1):n.push({no:e.no,children:[],level:t,path:Je(((a=(r=e.meta.slide)==null?void 0:r.frontmatter)==null?void 0:a.routeAlias)??e.no,!1),hideInToc:!!((u=(c=(l=e.meta)==null?void 0:l.slide)==null?void 0:c.frontmatter)!=null&&u.hideInToc),title:(h=(f=e.meta)==null?void 0:f.slide)==null?void 0:h.title})}function js(n,e,t=!1,s,o){return n.map(i=>{const r={...i,active:i.no===(o==null?void 0:o.value),hasActiveParent:t};return r.children.length>0&&(r.children=js(r.children,e,r.active||r.hasActiveParent,r,o)),s&&(r.active||r.activeParent)&&(s.activeParent=!0),r})}function Hs(n,e=1){return n.filter(t=>!t.hideInToc).map(t=>({...t,children:Hs(t.children,e+1)}))}function Br(n,e,t){const s=p(()=>n.value.filter(i=>{var r,a;return(a=(r=i.meta)==null?void 0:r.slide)==null?void 0:a.title}).reduce((i,r)=>(Ds(i,r),i),[])),o=p(()=>js(s.value,t.value,void 0,void 0,e));return p(()=>Hs(o.value))}function Wr(n,e,t=$(0),s,o,i){const r=p(()=>oe.value.length),a=$(0),l=$(0),c=p(()=>Je(n.value,s.value)),u=p(()=>n.value.no),f=p(()=>{var x;return((x=n.value.meta)==null?void 0:x.layout)||(u.value===1?"cover":"default")}),h=p(()=>e.value.current),d=p(()=>e.value.clicksStart),g=p(()=>e.value.total),m=p(()=>oe.value[Math.min(oe.value.length,u.value+1)-1]),y=p(()=>oe.value[Math.max(1,u.value-1)-1]),v=p(()=>u.valueu.value>1||h.value>0),w=p(()=>Vr(a.value,n.value,y.value));Q(n,(x,j)=>{a.value=x.no-j.no});async function k(x){return!1}const O=Br(oe,u,n);async function M(){l.value=1,g.value<=t.value?await L():t.value+=1}async function P(){l.value=-1,t.value<=d.value?await D():t.value-=1}async function L(){l.value=1,u.value{const n=xt(),e=p(()=>n.currentRoute.value),t=p(()=>(n.currentRoute.value.query,new URLSearchParams(location.search))),s=p(()=>t.value.has("print")),o=p(()=>t.value.get("print")==="clicks"),i=p(()=>t.value.has("embedded")),r=p(()=>e.value.name==="play"),a=p(()=>e.value.name==="presenter"),l=p(()=>e.value.name==="notes"),c=p(()=>!a.value&&(!H.remote||t.value.get("password")===H.remote)),u=so(r,a),f=p(()=>{var v;return u.value?((v=ht(e.value.params.no))==null?void 0:v.no)??1:1}),h=p(()=>oe.value[f.value-1]),d=Hr("clicks","0"),g=p(()=>y(h.value)),m=p({get(){let v=+(d.value||0);return Number.isNaN(v)&&(v=0),v},set(v){d.value=v.toString()}});function y(v){var k,O;if((k=v==null?void 0:v.meta)!=null&&k.__clicksContext)return v.meta.__clicksContext;const _=v.no,w=As(p({get(){return f.value===_?Math.max(+(d.value??0),w.clicksStart):f.value>_?rn:w.clicksStart},set(M){f.value===_&&(d.value=ct(M,w.clicksStart,w.total).toString())}}),((O=v==null?void 0:v.meta.slide)==null?void 0:O.frontmatter.clicksStart)??0,v==null?void 0:v.meta.clicks);return w.onMounted=()=>{f.value===_&&(d.value=ct(+d.value,w.clicksStart,w.total).toString())},v!=null&&v.meta&&(v.meta.__clicksContext=w),w}return{router:n,currentRoute:e,isPrintMode:s,isPrintWithClicks:o,isEmbedded:i,isPlaying:r,isPresenter:a,isNotesViewer:l,isPresenterAvailable:c,hasPrimarySlide:u,currentSlideNo:f,currentSlideRoute:h,clicksContext:g,queryClicksRaw:d,queryClicks:m,getPrimaryClicks:y}}),fn=fs(()=>{const n=Ur(),e=xt(),t=Wr(n.currentSlideRoute,n.clicksContext,n.queryClicks,n.isPresenter,n.isPrintMode,e);return Q([t.total,n.currentRoute],async()=>{n.hasPrimarySlide.value&&!ht(n.currentRoute.value.params.no)&&await t.goLast()},{flush:"pre",immediate:!0}),{...t,...n}}),zr=[];function qr(){const n=ls().appContext.app,e=b({nav:fn(),configs:H,themeConfigs:p(()=>H.themeConfig)});n.provide(Mn,$("none")),n.provide(Ei,e),n.provide(Sn,p(()=>e.nav.currentSlideNo)),n.provide(Vt,bn(Nr()));for(const f of zr)f();const t=H.titleTemplate.replace("%s",H.title||"Slidev"),{clicksContext:s,currentSlideNo:o,hasPrimarySlide:i,isNotesViewer:r,isPresenter:a}=fn();mi({title:t,htmlAttrs:H.htmlAttrs}),wi(`${t} - shared`),Mi(`${t} - drawings`);const l=`${location.origin}_${In()}`;function c(){r.value||!a.value&&!Pi.includes(location.host.split(":")[0])||(a.value?(et("page",+o.value),et("clicks",s.value.current)):(et("viewerPage",+o.value),et("viewerClicks",s.value.current)),et("lastUpdate",{id:l,type:a.value?"presenter":"viewer",time:new Date().getTime()}))}const u=xt();u.afterEach(c),Q(s,c),bi(f=>{var h;i.value&&((h=f.lastUpdate)==null?void 0:h.type)==="presenter"&&(+f.page!=+o.value||+s.value.current!=+f.clicks)&&(ks.value=!1,u.replace({path:Je(f.page,a.value),query:{...u.currentRoute.value.query,clicks:f.clicks||0}}))})}const Kr=oo({__name:"App",setup(n){return qr(),Ge(()=>{for(const[e,t]of Object.entries(Po.value))document.body.style.setProperty(e,t.toString())}),(e,t)=>{const s=io("RouterView");return cs(),ro(s)}}}),Jr=Ls(Kr,[["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function fl(n,e=""){var o,i;const t=["slidev-page",e],s=(i=(o=n==null?void 0:n.meta)==null?void 0:o.slide)==null?void 0:i.no;return s!=null&&t.push(`slidev-page-${s}`),t.filter(Boolean).join(" ")}async function hl(){const{saveAs:n}=await E(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),[]);n(typeof H.download=="string"?H.download:H.exportFilename?`${H.exportFilename}.pdf`:"/sa2024/02-components/slidev-exported.pdf",`${H.title}.pdf`)}function Qe(n,e,t){var s;return((s=n.instance)==null?void 0:s.$).provides[e]??t}function Gr(){return{install(n){n.directive("click",{name:"v-click",mounted(e,t){const s=Et(e,t,t.value);s!=null&&(e.classList.toggle(kt,!0),e.dataset.slidevClicksStart=String(s.start),Number.isFinite(s.end)&&(e.dataset.slidevClicksEnd=String(s.end)),e.watchStopHandle=Ge(()=>{const o=s.isActive.value,i=s.isCurrent.value,r=o&&!i;s.flagHide?(e.classList.toggle(s.flagFade?nt:tt,o),e.classList.toggle(Jt,o)):e.classList.toggle(s.flagFade?nt:tt,!o),e.classList.toggle(Gt,i),e.classList.toggle(Qt,r)}))},unmounted:Xt}),n.directive("after",{name:"v-after",mounted(e,t){const s=Et(e,t,"+0");s!=null&&(e.classList.toggle(kt,!0),e.watchStopHandle=Ge(()=>{const o=s.isActive.value,i=s.isCurrent.value,r=o&&!i;s.flagHide?(e.classList.toggle(s.flagFade?nt:tt,o),e.classList.toggle(Jt,o)):e.classList.toggle(s.flagFade?nt:tt,!o),e.classList.toggle(Gt,i),e.classList.toggle(Qt,r)}))},unmounted:Xt}),n.directive("click-hide",{name:"v-click-hide",mounted(e,t){const s=Et(e,t,t.value,!0);s!=null&&(e.classList.toggle(kt,!0),e.watchStopHandle=Ge(()=>{const o=s.isActive.value,i=s.isCurrent.value,r=o&&!i;e.classList.toggle(s.flagFade?nt:tt,o),e.classList.toggle(Jt,o),e.classList.toggle(Gt,i),e.classList.toggle(Qt,r)}))},unmounted:Xt})}}}const Rs=new Map;function Et(n,e,t,s=!1){var h;const o=(h=Qe(e,Vt))==null?void 0:h.value;if(!n||!o)return null;const i=s||e.modifiers.hide!==!1&&e.modifiers.hide!=null,r=e.modifiers.fade!==!1&&e.modifiers.fade!=null,a=Rr(t),l=o.calculate(a);if(!l)return null;o.register(n,l);const c=p(()=>i?!l.isActive.value:l.isActive.value),u=p(()=>c.value?"shown":Number.isFinite(l.end)?o.currents.push(...o)),hn(s,e,t)}function Zr(n,e){return n[0]===e[0]&&n[1]===e[1]}function Xr(n,e,t,s=1){const o=t,i=Math.max(e,.1),r=n[0]&&n[0][0]&&typeof n[0][0]=="number"?[n]:n,a=[0,0];if(o)for(const c of r)hn(c,a,o);const l=ea(r,i,s);if(o){for(const c of r)hn(c,a,-o);Yr(l,a,-o)}return l}function ea(n,e,t){const s=[];for(const c of n){const u=[...c];Zr(u[0],u[u.length-1])||u.push([u[0][0],u[0][1]]),u.length>2&&s.push(u)}const o=[];e=Math.max(e,.1);const i=[];for(const c of s)for(let u=0;uc.yminu.ymin?1:c.xu.x?1:c.ymax===u.ymax?0:(c.ymax-u.ymax)/Math.abs(c.ymax-u.ymax)),!i.length)return o;let r=[],a=i[0].ymin,l=0;for(;r.length||i.length;){if(i.length){let c=-1;for(let f=0;fa);f++)c=f;i.splice(0,c+1).forEach(f=>{r.push({s:a,edge:f})})}if(r=r.filter(c=>!(c.edge.ymax<=a)),r.sort((c,u)=>c.edge.x===u.edge.x?0:(c.edge.x-u.edge.x)/Math.abs(c.edge.x-u.edge.x)),(t!==1||l%e===0)&&r.length>1)for(let c=0;c=r.length)break;const f=r[c].edge,h=r[u].edge;o.push([[Math.round(f.x),a],[Math.round(h.x),a]])}a+=t,r.forEach(c=>{c.edge.x=c.edge.x+t*c.edge.islope}),l++}return o}function pt(n,e){var t;const s=e.hachureAngle+90;let o=e.hachureGap;o<0&&(o=e.strokeWidth*4),o=Math.round(Math.max(o,.1));let i=1;return e.roughness>=1&&(((t=e.randomizer)===null||t===void 0?void 0:t.next())||Math.random())>.7&&(i=o),Xr(n,o,s,i||1)}class Dn{constructor(e){this.helper=e}fillPolygons(e,t){return this._fillPolygons(e,t)}_fillPolygons(e,t){const s=pt(e,t);return{type:"fillSketch",ops:this.renderLines(s,t)}}renderLines(e,t){const s=[];for(const o of e)s.push(...this.helper.doubleLineOps(o[0][0],o[0][1],o[1][0],o[1][1],t));return s}}function qt(n){const e=n[0],t=n[1];return Math.sqrt(Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2))}class ta extends Dn{fillPolygons(e,t){let s=t.hachureGap;s<0&&(s=t.strokeWidth*4),s=Math.max(s,.1);const o=Object.assign({},t,{hachureGap:s}),i=pt(e,o),r=Math.PI/180*t.hachureAngle,a=[],l=s*.5*Math.cos(r),c=s*.5*Math.sin(r);for(const[f,h]of i)qt([f,h])&&a.push([[f[0]-l,f[1]+c],[...h]],[[f[0]+l,f[1]-c],[...h]]);return{type:"fillSketch",ops:this.renderLines(a,t)}}}class na extends Dn{fillPolygons(e,t){const s=this._fillPolygons(e,t),o=Object.assign({},t,{hachureAngle:t.hachureAngle+90}),i=this._fillPolygons(e,o);return s.ops=s.ops.concat(i.ops),s}}class sa{constructor(e){this.helper=e}fillPolygons(e,t){t=Object.assign({},t,{hachureAngle:0});const s=pt(e,t);return this.dotsOnLines(s,t)}dotsOnLines(e,t){const s=[];let o=t.hachureGap;o<0&&(o=t.strokeWidth*4),o=Math.max(o,.1);let i=t.fillWeight;i<0&&(i=t.strokeWidth/2);const r=o/4;for(const a of e){const l=qt(a),c=l/o,u=Math.ceil(c)-1,f=l-u*o,h=(a[0][0]+a[1][0])/2-o/4,d=Math.min(a[0][1],a[1][1]);for(let g=0;g{const a=qt(r),l=Math.floor(a/(s+o)),c=(a+o-l*(s+o))/2;let u=r[0],f=r[1];u[0]>f[0]&&(u=r[1],f=r[0]);const h=Math.atan((f[1]-u[1])/(f[0]-u[0]));for(let d=0;d{const r=qt(i),a=Math.round(r/(2*t));let l=i[0],c=i[1];l[0]>c[0]&&(l=i[1],c=i[0]);const u=Math.atan((c[1]-l[1])/(c[0]-l[0]));for(let f=0;fu%2?c+t:c+e);i.push({key:"C",data:l}),e=l[4],t=l[5];break}case"Q":i.push({key:"Q",data:[...a]}),e=a[2],t=a[3];break;case"q":{const l=a.map((c,u)=>u%2?c+t:c+e);i.push({key:"Q",data:l}),e=l[2],t=l[3];break}case"A":i.push({key:"A",data:[...a]}),e=a[5],t=a[6];break;case"a":e+=a[5],t+=a[6],i.push({key:"A",data:[a[0],a[1],a[2],a[3],a[4],e,t]});break;case"H":i.push({key:"H",data:[...a]}),e=a[0];break;case"h":e+=a[0],i.push({key:"H",data:[e]});break;case"V":i.push({key:"V",data:[...a]}),t=a[0];break;case"v":t+=a[0],i.push({key:"V",data:[t]});break;case"S":i.push({key:"S",data:[...a]}),e=a[2],t=a[3];break;case"s":{const l=a.map((c,u)=>u%2?c+t:c+e);i.push({key:"S",data:l}),e=l[2],t=l[3];break}case"T":i.push({key:"T",data:[...a]}),e=a[0],t=a[1];break;case"t":e+=a[0],t+=a[1],i.push({key:"T",data:[e,t]});break;case"Z":case"z":i.push({key:"Z",data:[]}),e=s,t=o;break}return i}function Vs(n){const e=[];let t="",s=0,o=0,i=0,r=0,a=0,l=0;for(const{key:c,data:u}of n){switch(c){case"M":e.push({key:"M",data:[...u]}),[s,o]=u,[i,r]=u;break;case"C":e.push({key:"C",data:[...u]}),s=u[4],o=u[5],a=u[2],l=u[3];break;case"L":e.push({key:"L",data:[...u]}),[s,o]=u;break;case"H":s=u[0],e.push({key:"L",data:[s,o]});break;case"V":o=u[0],e.push({key:"L",data:[s,o]});break;case"S":{let f=0,h=0;t==="C"||t==="S"?(f=s+(s-a),h=o+(o-l)):(f=s,h=o),e.push({key:"C",data:[f,h,...u]}),a=u[0],l=u[1],s=u[2],o=u[3];break}case"T":{const[f,h]=u;let d=0,g=0;t==="Q"||t==="T"?(d=s+(s-a),g=o+(o-l)):(d=s,g=o);const m=s+2*(d-s)/3,y=o+2*(g-o)/3,v=f+2*(d-f)/3,_=h+2*(g-h)/3;e.push({key:"C",data:[m,y,v,_,f,h]}),a=d,l=g,s=f,o=h;break}case"Q":{const[f,h,d,g]=u,m=s+2*(f-s)/3,y=o+2*(h-o)/3,v=d+2*(f-d)/3,_=g+2*(h-g)/3;e.push({key:"C",data:[m,y,v,_,d,g]}),a=f,l=h,s=d,o=g;break}case"A":{const f=Math.abs(u[0]),h=Math.abs(u[1]),d=u[2],g=u[3],m=u[4],y=u[5],v=u[6];f===0||h===0?(e.push({key:"C",data:[s,o,y,v,y,v]}),s=y,o=v):(s!==y||o!==v)&&(Bs(s,o,y,v,f,h,d,g,m).forEach(function(w){e.push({key:"C",data:w})}),s=y,o=v);break}case"Z":e.push({key:"Z",data:[]}),s=i,o=r;break}t=c}return e}function ca(n){return Math.PI*n/180}function st(n,e,t){const s=n*Math.cos(t)-e*Math.sin(t),o=n*Math.sin(t)+e*Math.cos(t);return[s,o]}function Bs(n,e,t,s,o,i,r,a,l,c){const u=ca(r);let f=[],h=0,d=0,g=0,m=0;if(c)[h,d,g,m]=c;else{[n,e]=st(n,e,-u),[t,s]=st(t,s,-u);const T=(n-t)/2,A=(e-s)/2;let R=T*T/(o*o)+A*A/(i*i);R>1&&(R=Math.sqrt(R),o=R*o,i=R*i);const x=a===l?-1:1,j=o*o,se=i*i,W=j*se-j*A*A-se*T*T,Z=j*A*A+se*T*T,I=x*Math.sqrt(Math.abs(W/Z));g=I*o*A/i+(n+t)/2,m=I*-i*T/o+(e+s)/2,h=Math.asin(parseFloat(((e-m)/i).toFixed(9))),d=Math.asin(parseFloat(((s-m)/i).toFixed(9))),nd&&(h=h-Math.PI*2),!l&&d>h&&(d=d-Math.PI*2)}let y=d-h;if(Math.abs(y)>Math.PI*120/180){const T=d,A=t,R=s;l&&d>h?d=h+Math.PI*120/180*1:d=h+Math.PI*120/180*-1,t=g+o*Math.cos(d),s=m+i*Math.sin(d),f=Bs(t,s,A,R,o,i,r,0,l,[d,T,g,m])}y=d-h;const v=Math.cos(h),_=Math.sin(h),w=Math.cos(d),k=Math.sin(d),O=Math.tan(y/4),M=4/3*o*O,P=4/3*i*O,L=[n,e],D=[n+M*_,e-P*v],V=[t+M*k,s-P*w],ne=[t,s];if(D[0]=2*L[0]-D[0],D[1]=2*L[1]-D[1],c)return[D,V,ne].concat(f);{f=[D,V,ne].concat(f);const T=[];for(let A=0;A2){const o=[];for(let i=0;iMath.PI*2&&(d=0,g=Math.PI*2);const m=Math.PI*2/l.curveStepCount,y=Math.min(m/2,(g-d)/2),v=ss(y,c,u,f,h,d,g,1,l);if(!l.disableMultiStroke){const _=ss(y,c,u,f,h,d,g,1.5,l);v.push(..._)}return r&&(a?v.push(...le(c,u,c+f*Math.cos(d),u+h*Math.sin(d),l),...le(c,u,c+f*Math.cos(g),u+h*Math.sin(g),l)):v.push({op:"lineTo",data:[c,u]},{op:"lineTo",data:[c+f*Math.cos(d),u+h*Math.sin(d)]})),{type:"path",ops:v}}function es(n,e){const t=Vs(Fs(jn(n))),s=[];let o=[0,0],i=[0,0];for(const{key:r,data:a}of t)switch(r){case"M":{i=[a[0],a[1]],o=[a[0],a[1]];break}case"L":s.push(...le(i[0],i[1],a[0],a[1],e)),i=[a[0],a[1]];break;case"C":{const[l,c,u,f,h,d]=a;s.push(...ma(l,c,u,f,h,d,i,e)),i=[h,d];break}case"Z":s.push(...le(i[0],i[1],o[0],o[1],e)),i=[o[0],o[1]];break}return{type:"path",ops:s}}function tn(n,e){const t=[];for(const s of n)if(s.length){const o=e.maxRandomnessOffset||0,i=s.length;if(i>2){t.push({op:"move",data:[s[0][0]+S(o,e),s[0][1]+S(o,e)]});for(let r=1;rMath.PI*2&&(f=0,h=Math.PI*2);const d=(h-f)/r.curveStepCount,g=[];for(let m=f;m<=h;m=m+d)g.push([a+c*Math.cos(m),l+u*Math.sin(m)]);return g.push([a+c*Math.cos(h),l+u*Math.sin(h)]),g.push([a,l]),Ue([g],r)}function da(n,e){return S(n,e)}function pa(n,e,t){return Dt(n,e,t)}function ga(n,e,t,s,o){return le(n,e,t,s,o,!0)}function ts(n){const e=Object.assign({},n);return e.randomizer=void 0,n.seed&&(e.seed=n.seed+1),e}function zs(n){return n.randomizer||(n.randomizer=new Qr(n.seed||0)),n.randomizer.next()}function Dt(n,e,t,s=1){return t.roughness*s*(zs(t)*(e-n)+n)}function S(n,e,t=1){return Dt(-n,n,e,t)}function le(n,e,t,s,o,i=!1){const r=i?o.disableMultiStrokeFill:o.disableMultiStroke,a=mn(n,e,t,s,o,!0,!1);if(r)return a;const l=mn(n,e,t,s,o,!0,!0);return a.concat(l)}function mn(n,e,t,s,o,i,r){const a=Math.pow(n-t,2)+Math.pow(e-s,2),l=Math.sqrt(a);let c=1;l<200?c=1:l>500?c=.4:c=-.0016668*l+1.233334;let u=o.maxRandomnessOffset||0;u*u*100>a&&(u=l/10);const f=u/2,h=.2+zs(o)*.2;let d=o.bowing*o.maxRandomnessOffset*(s-e)/200,g=o.bowing*o.maxRandomnessOffset*(n-t)/200;d=S(d,o,c),g=S(g,o,c);const m=[],y=()=>S(f,o,c),v=()=>S(u,o,c),_=o.preserveVertices;return i&&(r?m.push({op:"move",data:[n+(_?0:y()),e+(_?0:y())]}):m.push({op:"move",data:[n+(_?0:S(u,o,c)),e+(_?0:S(u,o,c))]})),r?m.push({op:"bcurveTo",data:[d+n+(t-n)*h+y(),g+e+(s-e)*h+y(),d+n+2*(t-n)*h+y(),g+e+2*(s-e)*h+y(),t+(_?0:y()),s+(_?0:y())]}):m.push({op:"bcurveTo",data:[d+n+(t-n)*h+v(),g+e+(s-e)*h+v(),d+n+2*(t-n)*h+v(),g+e+2*(s-e)*h+v(),t+(_?0:v()),s+(_?0:v())]}),m}function yt(n,e,t){if(!n.length)return[];const s=[];s.push([n[0][0]+S(e,t),n[0][1]+S(e,t)]),s.push([n[0][0]+S(e,t),n[0][1]+S(e,t)]);for(let o=1;o3){const i=[],r=1-t.curveTightness;o.push({op:"move",data:[n[1][0],n[1][1]]});for(let a=1;a+21&&o.push(i):o.push(i),o.push(n[e+3])}else{const r=n[e+0],a=n[e+1],l=n[e+2],c=n[e+3],u=Re(r,a,.5),f=Re(a,l,.5),h=Re(l,c,.5),d=Re(u,f,.5),g=Re(f,h,.5),m=Re(d,g,.5);yn([r,u,d,m],0,t,o),yn([m,g,h,c],0,t,o)}return o}function wa(n,e){return Ht(n,0,n.length,e)}function Ht(n,e,t,s,o){const i=o||[],r=n[e],a=n[t-1];let l=0,c=1;for(let u=e+1;ul&&(l=f,c=u)}return Math.sqrt(l)>s?(Ht(n,e,c+1,s,i),Ht(n,c,t,s,i)):(i.length||i.push(r),i.push(a)),i}function vn(n,e=.15,t){const s=[],o=(n.length-1)/3;for(let i=0;i0?Ht(s,0,s.length,t):s}function ba(n,e,t){const s=jn(n),o=Vs(Fs(s)),i=[];let r=[],a=[0,0],l=[];const c=()=>{l.length>=4&&r.push(...vn(l,e)),l=[]},u=()=>{c(),r.length&&(i.push(r),r=[])};for(const{key:h,data:d}of o)switch(h){case"M":u(),a=[d[0],d[1]],r.push(a);break;case"L":c(),r.push([d[0],d[1]]);break;case"C":if(!l.length){const g=r.length?r[r.length-1]:a;l.push([g[0],g[1]])}l.push([d[0],d[1]]),l.push([d[2],d[3]]),l.push([d[4],d[5]]);break;case"Z":c(),r.push([a[0],a[1]]);break}if(u(),!t)return i;const f=[];for(const h of i){const d=wa(h,t);d.length&&f.push(d)}return f}const K="none";class ka{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Ns()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,t,s){return{shape:e,sets:t||[],options:s||this.defaultOptions}}line(e,t,s,o,i){const r=this._o(i);return this._d("line",[G(e,t,s,o,r)],r)}rectangle(e,t,s,o,i){const r=this._o(i),a=[],l=Ws(e,t,s,o,r);if(r.fill){const c=[[e,t],[e+s,t],[e+s,t+o],[e,t+o]];r.fillStyle==="solid"?a.push(tn([c],r)):a.push(Ue([c],r))}return r.stroke!==K&&a.push(l),this._d("rectangle",a,r)}ellipse(e,t,s,o,i){const r=this._o(i),a=[],l=Us(s,o,r),c=gn(e,t,r,l);if(r.fill)if(r.fillStyle==="solid"){const u=gn(e,t,r,l).opset;u.type="fillPath",a.push(u)}else a.push(Ue([c.estimatedPoints],r));return r.stroke!==K&&a.push(c.opset),this._d("ellipse",a,r)}circle(e,t,s,o){const i=this.ellipse(e,t,s,s,o);return i.shape="circle",i}linearPath(e,t){const s=this._o(t);return this._d("linearPath",[lt(e,!1,s)],s)}arc(e,t,s,o,i,r,a=!1,l){const c=this._o(l),u=[],f=Xn(e,t,s,o,i,r,a,!0,c);if(a&&c.fill)if(c.fillStyle==="solid"){const h=Object.assign({},c);h.disableMultiStroke=!0;const d=Xn(e,t,s,o,i,r,!0,!1,h);d.type="fillPath",u.push(d)}else u.push(ha(e,t,s,o,i,r,c));return c.stroke!==K&&u.push(f),this._d("arc",u,c)}curve(e,t){const s=this._o(t),o=[],i=Zn(e,s);if(s.fill&&s.fill!==K)if(s.fillStyle==="solid"){const r=Zn(e,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));o.push({type:"fillPath",ops:this._mergedShape(r.ops)})}else{const r=[],a=e;if(a.length){const c=typeof a[0][0]=="number"?[a]:a;for(const u of c)u.length<3?r.push(...u):u.length===3?r.push(...vn(os([u[0],u[0],u[1],u[2]]),10,(1+s.roughness)/2)):r.push(...vn(os(u),10,(1+s.roughness)/2))}r.length&&o.push(Ue([r],s))}return s.stroke!==K&&o.push(i),this._d("curve",o,s)}polygon(e,t){const s=this._o(t),o=[],i=lt(e,!0,s);return s.fill&&(s.fillStyle==="solid"?o.push(tn([e],s)):o.push(Ue([e],s))),s.stroke!==K&&o.push(i),this._d("polygon",o,s)}path(e,t){const s=this._o(t),o=[];if(!e)return this._d("path",o,s);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const i=s.fill&&s.fill!=="transparent"&&s.fill!==K,r=s.stroke!==K,a=!!(s.simplification&&s.simplification<1),l=a?4-4*(s.simplification||1):(1+s.roughness)/2,c=ba(e,1,l),u=es(e,s);if(i)if(s.fillStyle==="solid")if(c.length===1){const f=es(e,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));o.push({type:"fillPath",ops:this._mergedShape(f.ops)})}else o.push(tn(c,s));else o.push(Ue(c,s));return r&&(a?c.forEach(f=>{o.push(lt(f,!1,s))}):o.push(u)),this._d("path",o,s)}opsToPath(e,t){let s="";for(const o of e.ops){const i=typeof t=="number"&&t>=0?o.data.map(r=>+r.toFixed(t)):o.data;switch(o.op){case"move":s+=`M${i[0]} ${i[1]} `;break;case"bcurveTo":s+=`C${i[0]} ${i[1]}, ${i[2]} ${i[3]}, ${i[4]} ${i[5]} `;break;case"lineTo":s+=`L${i[0]} ${i[1]} `;break}}return s.trim()}toPaths(e){const t=e.sets||[],s=e.options||this.defaultOptions,o=[];for(const i of t){let r=null;switch(i.type){case"path":r={d:this.opsToPath(i),stroke:s.stroke,strokeWidth:s.strokeWidth,fill:K};break;case"fillPath":r={d:this.opsToPath(i),stroke:K,strokeWidth:0,fill:s.fill||K};break;case"fillSketch":r=this.fillSketch(i,s);break}r&&o.push(r)}return o}fillSketch(e,t){let s=t.fillWeight;return s<0&&(s=t.strokeWidth/2),{d:this.opsToPath(e),stroke:t.fill||K,strokeWidth:s,fill:K}}_mergedShape(e){return e.filter((t,s)=>s===0?!0:t.op!=="move")}}const qs="http://www.w3.org/2000/svg",Sa=800;let nn=null;function Ma(){return nn||(nn=new ka().defaultOptions),nn}function sn(n,e,t){return{...Ma(),maxRandomnessOffset:2,roughness:n==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:n!=="double",disableMultiStrokeFill:!1,seed:e,...t}}function Oa(n){const e=n.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const t=e;if(t.length)switch(t.length){case 4:return[...t];case 1:return[t[0],t[0],t[0],t[0]];case 2:return[...t,...t];case 3:return[...t,t[1]];default:return[t[0],t[1],t[2],t[3]]}}}return[5,5,5,5]}function Ea(n,e,t,s,o,i){const r=[];let a=t.strokeWidth||2;const l=Oa(t),c=t.animate===void 0?!0:!!t.animate,u=t.iterations||2,f=t.rtl?1:0,h=sn("single",i,t);switch(t.type){case"underline":{const d=e.y+e.h+l[2];for(let g=f;g_.setAttribute(w,k);for(const _ of d){const w=document.createElementNS(qs,"path");if(v(w,"d",_),v(w,"fill","none"),v(w,"stroke",t.color||"currentColor"),v(w,"stroke-width",`${a}`),t.opacity!==void 0&&v(w,"style",`opacity:${t.opacity}`),c){const k=w.getTotalLength();g.push(k),y+=k}n.appendChild(w),m.push(w)}if(c){let _=0;for(let w=0;wsetTimeout(e,n))}function Ta(n){const e=[];for(const t of n){let s="";for(const o of t.ops){const i=o.data;switch(o.op){case"move":s.trim()&&e.push(s.trim()),s=`M${i[0]} ${i[1]} `;break;case"bcurveTo":s+=`C${i[0]} ${i[1]}, ${i[2]} ${i[3]}, ${i[4]} ${i[5]} `;break;case"lineTo":s+=`L${i[0]} ${i[1]} `;break}}s.trim()&&e.push(s.trim())}return e}function $a(){if(!window.__rno_kf_s){const n=window.__rno_kf_s=document.createElement("style");n.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(n)}}var Pa=Object.defineProperty,Ca=(n,e,t)=>e in n?Pa(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,X=(n,e,t)=>(Ca(n,typeof e!="symbol"?e+"":e,t),t);class La{constructor(e,t){X(this,"_state","unattached"),X(this,"_config"),X(this,"_resizing",!1),X(this,"_ro"),X(this,"_seed",Ns()),X(this,"_e"),X(this,"_svg"),X(this,"_lastSizes",[]),X(this,"_animationDelay",0),X(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),X(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(t)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,t){this._config[e]!==t&&(this._config[e]=t,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){$a();const e=this._svg=document.createElementNS(qs,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const t=e.style;t.position="absolute",t.top="0",t.left="0",t.overflow="visible",t.pointerEvents="none",t.width="100px",t.height="100px";const s=this._config.type==="highlight";if(this._e.insertAdjacentElement(s?"beforebegin":"afterend",e),this._state="not-showing",s){const o=window.getComputedStyle(this._e).position;(!o||o==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const t of e)t.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let t=0;tMath.round(o)===Math.round(i);return s(e.x,t.x)&&s(e.y,t.y)&&s(e.w,t.w)&&s(e.h,t.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,t){let s=this._config;t&&(s=JSON.parse(JSON.stringify(this._config)),s.animate=!1);const o=this.rects();let i=0;o.forEach(c=>i+=c.w);const r=s.animationDuration||Sa;let a=0;const l=[];for(let c=0;cObject.assign(n,{type:"box"}),circle:n=>Object.assign(n,{type:"circle"}),underline:n=>Object.assign(n,{type:"underline"}),highlight:n=>Object.assign(n,{type:"highlight"}),"strike-through":n=>Object.assign(n,{type:"strike-through"}),"crossed-off":n=>Object.assign(n,{type:"crossed-off"}),bracket:n=>Object.assign(n,{type:"bracket"}),strike:n=>Object.assign(n,{type:"strike-through"}),cross:n=>Object.assign(n,{type:"crossed-off"}),crossed:n=>Object.assign(n,{type:"crossed-off"}),linethrough:n=>Object.assign(n,{type:"strike-through"}),"line-through":n=>Object.assign(n,{type:"strike-through"}),black:n=>z(n,"text-black"),blue:n=>z(n,"text-blue"),cyan:n=>z(n,"text-cyan"),gray:n=>z(n,"text-gray"),green:n=>z(n,"text-green"),indigo:n=>z(n,"text-indigo"),lime:n=>z(n,"text-lime"),orange:n=>z(n,"text-orange"),pink:n=>z(n,"text-pink"),purple:n=>z(n,"text-purple"),red:n=>z(n,"text-red"),teal:n=>z(n,"text-teal"),white:n=>z(n,"text-white"),yellow:n=>z(n,"text-yellow")},Ia=[[/^delay-?(\d+)?$/,(n,e,t)=>{const s=(n[1]?Number.parseInt(n[1]):t)||300;return e.delay=s,e}],[/^(?:op|opacity)-?(\d+)?$/,(n,e,t)=>{const s=(n[1]?Number.parseInt(n[1]):t)||100;return e.opacity=s/100,e}]];function Da(){return{install(n){n.directive("mark",{name:"v-mark",mounted:(e,t)=>{const s=p(()=>{const r=typeof t.value=="object"&&!Array.isArray(t.value)?{...t.value}:{at:t.value};let a={at:r.at};const l=Object.entries(t.modifiers).filter(([u,f])=>{if(rs[u])return a=rs[u](a,f),!1;for(const[h,d]of Ia){const g=u.match(h);if(g)return a=d(g,a,f),!1}return!0});l.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",l);const c={...a,...r};return c.type||(c.type="underline"),c}),o=Aa(e,s.value),i=Et(e,t,s.value.at);if(!i){o.show();return}e.watchStopHandle=Ge(()=>{let r;s.value.class&&(o.class=s.value.class),s.value.color&&(o.color=s.value.color);const a=s.value.at;a===!0?r=!0:a===!1?r=!1:r=i.isActive.value,r!=null&&(r?o.show():o.hide())})},unmounted:e=>{var t;(t=e.watchStopHandle)==null||t.call(e)}})}}}const dl=$(!1),pl=$(!1),gl=$(!1),ja=$(!1),ml=$(!0),yl=ao({xs:460,...ho}),Rt=lo(),vl=co(),_l=p(()=>Rt.height.value-Rt.width.value/hs.value>120),wl=uo(Ft?document.body:null),_n=fo(),bl=p(()=>{var n,e;return["INPUT","TEXTAREA"].includes(((n=_n.value)==null?void 0:n.tagName)||"")||((e=_n.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),kl=p(()=>{var n;return["BUTTON","A"].includes(((n=_n.value)==null?void 0:n.tagName)||"")});te("slidev-camera","default",{listenToStorageChanges:!1});te("slidev-mic","default",{listenToStorageChanges:!1});const Ha=te("slidev-scale",0),Sl=te("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),Ra=te("slidev-show-editor",!1,{listenToStorageChanges:!1}),Na=te("slidev-editor-vertical",!1,{listenToStorageChanges:!1}),xa=te("slidev-editor-width",Ft?window.innerWidth*.4:318,{listenToStorageChanges:!1}),Fa=te("slidev-editor-height",Ft?window.innerHeight*.4:300,{listenToStorageChanges:!1}),vt=bn(null),Nt=te("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),_t=te("slidev-presenter-layout",1,{listenToStorageChanges:!1});function Ml(){_t.value=_t.value+1,_t.value>2&&(_t.value=1)}function Ol(){Nt.value=Math.min(2,Nt.value+.1)}function El(){Nt.value=Math.max(.5,Nt.value-.1)}const Tl=us(ja);function Va(n=as(bs,$())){const e=po(n),t=Q([Ra,Na,xa,Fa,Ha,Rt.width,Rt.height],()=>{setTimeout(e.update,300)},{flush:"post",immediate:!0});return{...e,stop:t}}function Ba(n){return()=>{}}function Wa(n,e,t){var Z;function s(I){return n?Qe(n,I):yo(I)}const o=s(Mn),i=s(Ti)??{},r=s(Sn),a=p(()=>Ba(r.value)),l=s(Oi)??$(1),c=s($i)??$(1),{left:u,top:f,stop:h}=Va(s(bs)??$()),d=["slide","presenter"].includes(o.value);let g=n?"directive":"prop",m=In(),y;if(Array.isArray(e)?y=e:typeof e=="string"&&e.includes(",")?y=e.split(",").map(Number):e!=null&&(g="frontmatter",m=`${e}`,e=(Z=i==null?void 0:i.dragPos)==null?void 0:Z[m],y=e==null?void 0:e.split(",").map(Number)),g!=="frontmatter"&&!t)throw new Error("[Slidev] Can not identify the source position of the v-drag element, please provide an explicit `id` prop.");const v=[h],_=e!=null&&!Number.isFinite(y==null?void 0:y[3]);y??(y=[Number.NaN,Number.NaN,0]);const w=$(y[2]),k=$(y[0]+y[2]/2),O=$(y[4]??0),M=p(()=>O.value*Math.PI/180),P=p(()=>Math.sin(M.value)),L=p(()=>Math.cos(M.value)),D=$(),V=$({left:0,top:0,width:0,height:0}),ne=$(0);function T(){const I=D.value.getBoundingClientRect();V.value={left:I.left/c.value,top:I.top/c.value,width:I.width/c.value,height:I.height/c.value},ne.value=(V.value.width+V.value.height)/l.value/(Math.abs(P.value)+Math.abs(L.value))-w.value}v.push(Q(w,T,{flush:"post"}));const A=$(y[3]??0),R=p({get:()=>(_?ne.value:A.value)||0,set:I=>!_&&(A.value=I)}),x=$(y[1]),j=p({get:()=>x.value+R.value/2,set:I=>x.value=I-R.value/2}),se=p(()=>Number.isFinite(k.value)?{position:"absolute",zIndex:100,left:`${k.value-w.value/2}px`,top:`${j.value-R.value/2}px`,width:`${w.value}px`,height:_?void 0:`${R.value}px`,transformOrigin:"center center",transform:`rotate(${O.value}deg)`}:{position:"absolute",zIndex:100});v.push(Q([k,j,w,R,O],([I,ce,Ze,Xe,Hn])=>{let Be=[I-Ze/2,ce-Xe/2,Ze].map(Math.round).join();_?Be+=g==="directive"?",NaN":",_":Be+=`,${Math.round(Xe)}`,Math.round(Hn)!==0&&(Be+=`,${Math.round(Hn)}`),g==="directive"&&(Be=`[${Be}]`),a.value(m,Be,g,t)}));const W={id:m,dataSource:g,markdownSource:t,zoom:c,autoHeight:_,x0:k,y0:j,width:w,height:R,rotate:O,container:D,containerStyle:se,watchStopHandles:v,dragging:p(()=>vt.value===W),mounted(){d&&(T(),e||setTimeout(()=>{T(),k.value=(V.value.left+V.value.width/2-u.value)/l.value,j.value=(V.value.top-f.value)/l.value,w.value=V.value.width/l.value,R.value=V.value.height/l.value},100))},unmounted(){d&&W.stopDragging()},startDragging(){T(),vt.value=W},stopDragging(){vt.value===W&&(vt.value=null)}};return v.push(go(D,I=>{const ce=document.querySelector("#drag-control-container");ce&&I.target&&ce.contains(I.target)||W.stopDragging()}),Q(mo(),I=>{I||W.stopDragging()})),W}function Ua(){return{install(n){n.directive("drag",{name:"v-drag",created(e,t,s){var i;const o=Wa(t,t.value,(i=s.props)==null?void 0:i.markdownSource);s.props&&(s.props={...s.props},delete s.props.markdownSource),o.container.value=e,e.draggingState=o,e.dataset.dragId=o.id,o.watchStopHandles.push(Q(o.containerStyle,r=>{for(const[a,l]of Object.entries(r))l&&(e.style[a]=l)},{immediate:!0})),e.addEventListener("dblclick",o.startDragging)},mounted(e){e.draggingState.mounted()},unmounted(e){const t=e.draggingState;t.unmounted(),e.removeEventListener("dblclick",t.startDragging),t.watchStopHandles.forEach(s=>s())}})}}}function za(){return{install(n){const e=vo();n.directive("motion",{name:"v-motion",mounted(t,s,o,i){var w,k,O;const r=Qe(s,Vt),a=Qe(s,Sn),l=Qe(s,Mn),{currentPage:c,clicks:u,isPrintMode:f}=fn(),h=o.props={...o.props},d={...h.initial,...(w=h.variants)==null?void 0:w["slidev-initial"]},g={...h.enter,...(k=h.variants)==null?void 0:k["slidev-enter"]},m={...h.leave,...(O=h.variants)==null?void 0:O["slidev-leave"]};delete h.initial,delete h.enter,delete h.leave;const y=`${In()}-`,v=[];for(const M of Object.keys(h))if(M.startsWith("click-")){const P=M.slice(6),L=P.includes("-")?P.split("-").map(Number):+P,D=y+P;v.push({id:D,at:L,variant:{...h[M]},info:r==null?void 0:r.value.calculate(L)}),delete h[M]}v.sort((M,P)=>(Array.isArray(M.at)?M.at[0]:M.at)-(Array.isArray(P.at)?P.at[0]:P.at)),e.created(t,s,o,i),e.mounted(t,s,o,i);const _=t.motionInstance;_.clickIds=v.map(M=>M.id),_.set(d),_.watchStopHandle=Q([a,c,u].filter(Boolean),()=>{var P;const M=((P=Rs.get(t))==null?void 0:P.visibilityState.value)??"shown";if(!(r!=null&&r.value)||!["slide","presenter"].includes((l==null?void 0:l.value)??"")){const L={...d,...g};for(const{variant:D}of v)Object.assign(L,D);_.set(L)}else if(f.value||(a==null?void 0:a.value)===c.value)if(M==="shown"){const L={...d,...g};for(const{variant:D,info:V}of v)(!V||V.isActive.value)&&Object.assign(L,D);f.value?_.set(L):_.apply(L)}else _.apply(M==="before"?d:m);else _.apply(((a==null?void 0:a.value)??-1)>c.value?d:m)},{immediate:!0})},unmounted(t){t.motionInstance.watchStopHandle()}})}}}const qa=[];function Ka(){const n=[];{let e=function(t){if(!H.remote||H.remote===t.query.password)return!0;if(H.remote&&t.query.password===void 0){const s=prompt("Enter password");if(H.remote===s)return!0}return t.params.no?{path:`/${t.params.no}`}:{path:""}};n.push({name:"entry",path:"/entry",component:()=>E(()=>import("./slidev/entry-C12NcDcg.js"),__vite__mapDeps([34,20,1,3,4]))},{name:"overview",path:"/overview",component:()=>E(()=>import("./slidev/overview-H_0rU4tQ.js"),__vite__mapDeps([35,20,1,36,37,38,39,40,41,42,3,4]))},{name:"notes",path:"/notes",component:()=>E(()=>import("./slidev/notes-BKYbjRr-.js"),__vite__mapDeps([43,20,1,39,40,38,3,4])),beforeEnter:e},{name:"presenter",path:"/presenter/:no",component:()=>E(()=>import("./slidev/presenter-D-ruxLSR.js"),__vite__mapDeps([44,20,1,45,36,37,38,2,3,4,46,39,40,47,48,41,42,49])),beforeEnter:e},{path:"/presenter",redirect:{path:"/presenter/1"}})}return n.push({name:"play",path:"/:no",component:()=>E(()=>import("./slidev/play-CJxKEOxt.js"),__vite__mapDeps([50,1,45,36,37,20,38,2,3,4,46,51]))},{path:"",redirect:{path:"/1"}}),qa.reduce((e,t)=>t(e),n)}const Ja=[];async function Ga(n){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e);const t=_o({history:wo("/sa2024/02-components/"),routes:Ka()});n.use(t),n.use(pi()),n.use(Gr()),n.use(Da()),n.use(Ua()),n.use(za()),n.use(ko,{container:"#twoslash-container"});const s={app:n,router:t};$t(()=>{t.afterEach(async()=>{await $t(),un.value+=1})});for(const o of Ja)await o(s)}const Ks=bo(Jr);Ga(Ks);Ks.mount("#app");export{Mn as $,E as A,Rt as B,rn as C,Ha as D,Na as E,oe as F,vt as G,Tl as H,gl as I,vl as J,hl as K,ml as L,kl as M,bl as N,Xa as O,yl as P,_n as Q,Ml as R,ht as S,Oi as T,Va as U,ks as V,hs as W,bs as X,il as Y,Sn as Z,Ls as _,fn as a,rl as a0,Vt as a1,$i as a2,ol as a3,sl as a4,nl as a5,ue as a6,fe as a7,he as a8,de as a9,al as aA,Ci as aB,je as aC,pe as aa,ge as ab,me as ac,ye as ad,ve as ae,_e as af,we as ag,be as ah,ke as ai,Se as aj,Me as ak,Oe as al,Ee as am,Te as an,$e as ao,Pe as ap,Ce as aq,In as ar,Le as as,Ae as at,tt as au,cl as av,Ie as aw,De as ax,Ei as ay,Ti as az,Nr as b,H as c,Is as d,fl as e,wl as f,Je as g,ll as h,Yn as i,Sl as j,ja as k,Nt as l,Ol as m,El as n,ct as o,_t as p,dl as q,Za as r,tl as s,ul as t,mi as u,pl as v,$o as w,el as x,_l as y,Ra as z}; diff --git a/02-components/assets/index-DbHQVuJx.js b/02-components/assets/index-DbHQVuJx.js deleted file mode 100644 index 40934b0..0000000 --- a/02-components/assets/index-DbHQVuJx.js +++ /dev/null @@ -1,74 +0,0 @@ -import{n as Me,y as Pn,z as w,A as Bn,t as R,B as Kt,C as de,D as Tn,E as Ln,G as In,H as On,I as p,J as b,K as Fn,L as Nn,M as jn,N as Hn,O as Xt,P as ei,Q as Rn,R as Un,d as Pe,b as he,e as a,f as Ce,h as Fi,o as D,c as E,k as M,q as I,s as O,S as m,i as je,T as qn,U as Wn,V as zn,g as Vn,l as ee,m as Be,W as Yn,X as si,Y as Os,Z as Gn,_ as Kn,$ as Zn,a0 as Xn,a1 as Jn,a2 as Qn,a3 as ta,a4 as et,a5 as Ni,a6 as ea,a7 as es,a8 as sa,a9 as ia,aa as na,r as aa,ab as ra,ac as oa,u as la}from"./modules/vue-DfJOUuqf.js";import{_ as ca,a as ha}from"./modules/unplugin-icons-BSwXhPmF.js";import{T as ua}from"./modules/shiki-ywDJVitK.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const n of document.querySelectorAll('link[rel="modulepreload"]'))i(n);new MutationObserver(n=>{for(const r of n)if(r.type==="childList")for(const o of r.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&i(o)}).observe(document,{childList:!0,subtree:!0});function s(n){const r={};return n.integrity&&(r.integrity=n.integrity),n.referrerPolicy&&(r.referrerPolicy=n.referrerPolicy),n.crossOrigin==="use-credentials"?r.credentials="include":n.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function i(n){if(n.ep)return;n.ep=!0;const r=s(n);fetch(n.href,r)}})();function _s(t,e={},s){for(const i in t){const n=t[i],r=s?`${s}:${i}`:i;typeof n=="object"&&n!==null?_s(n,e,r):typeof n=="function"&&(e[r]=n)}return e}const da={run:t=>t()},pa=()=>da,ji=typeof console.createTask<"u"?console.createTask:pa;function fa(t,e){const s=e.shift(),i=ji(s);return t.reduce((n,r)=>n.then(()=>i.run(()=>r(...e))),Promise.resolve())}function ga(t,e){const s=e.shift(),i=ji(s);return Promise.all(t.map(n=>i.run(()=>n(...e))))}function ls(t,e){for(const s of[...t])s(e)}class ka{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,s,i={}){if(!e||typeof s!="function")return()=>{};const n=e;let r;for(;this._deprecatedHooks[e];)r=this._deprecatedHooks[e],e=r.to;if(r&&!i.allowDeprecated){let o=r.message;o||(o=`${n} hook has been deprecated`+(r.to?`, please use ${r.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(o)||(console.warn(o),this._deprecatedMessages.add(o))}if(!s.name)try{Object.defineProperty(s,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(s),()=>{s&&(this.removeHook(e,s),s=void 0)}}hookOnce(e,s){let i,n=(...r)=>(typeof i=="function"&&i(),i=void 0,n=void 0,s(...r));return i=this.hook(e,n),i}removeHook(e,s){if(this._hooks[e]){const i=this._hooks[e].indexOf(s);i!==-1&&this._hooks[e].splice(i,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,s){this._deprecatedHooks[e]=typeof s=="string"?{to:s}:s;const i=this._hooks[e]||[];delete this._hooks[e];for(const n of i)this.hook(e,n)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const s in e)this.deprecateHook(s,e[s])}addHooks(e){const s=_s(e),i=Object.keys(s).map(n=>this.hook(n,s[n]));return()=>{for(const n of i.splice(0,i.length))n()}}removeHooks(e){const s=_s(e);for(const i in s)this.removeHook(i,s[i])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...s){return s.unshift(e),this.callHookWith(fa,e,...s)}callHookParallel(e,...s){return s.unshift(e),this.callHookWith(ga,e,...s)}callHookWith(e,s,...i){const n=this._before||this._after?{name:s,args:i,context:{}}:void 0;this._before&&ls(this._before,n);const r=e(s in this._hooks?[...this._hooks[s]]:[],i);return r instanceof Promise?r.finally(()=>{this._after&&n&&ls(this._after,n)}):(this._after&&n&&ls(this._after,n),r)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const s=this._before.indexOf(e);s!==-1&&this._before.splice(s,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const s=this._after.indexOf(e);s!==-1&&this._after.splice(s,1)}}}}function ma(){return new ka}function ya(t){return Array.isArray(t)?t:[t]}const _a=["title","titleTemplate","script","style","noscript"],He=["base","meta","link","style","script","noscript"],va=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],wa=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],Hi=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],ba=typeof window<"u";function Fs(t){let e=9;for(let s=0;s>>9)+65536).toString(16).substring(1,8).toLowerCase()}function ii(t){return t._h||Fs(t._d?t._d:`${t.tag}:${t.textContent||t.innerHTML||""}:${Object.entries(t.props).map(([e,s])=>`${e}:${String(s)}`).join(",")}`)}function Ri(t,e){const{props:s,tag:i}=t;if(wa.includes(i))return i;if(i==="link"&&s.rel==="canonical")return"canonical";if(s.charset)return"charset";const n=["id"];i==="meta"&&n.push("name","property","http-equiv");for(const r of n)if(typeof s[r]<"u"){const o=String(s[r]);return e&&!e(o)?!1:`${i}:${r}:${o}`}return!1}function ni(t,e){return t==null?e||null:typeof t=="function"?t(e):t}async function xa(t,e,s){const i={tag:t,props:await Ui(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(t)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(t))};return Hi.forEach(n=>{const r=typeof i.props[n]<"u"?i.props[n]:s[n];typeof r<"u"&&((!["innerHTML","textContent","children"].includes(n)||_a.includes(i.tag))&&(i[n==="children"?"innerHTML":n]=r),delete i.props[n])}),i.props.body&&(i.tagPosition="bodyClose",delete i.props.body),i.tag==="script"&&typeof i.innerHTML=="object"&&(i.innerHTML=JSON.stringify(i.innerHTML),i.props.type=i.props.type||"application/json"),Array.isArray(i.props.content)?i.props.content.map(n=>({...i,props:{...i.props,content:n}})):i}function Aa(t){return typeof t=="object"&&!Array.isArray(t)&&(t=Object.keys(t).filter(e=>t[e])),(Array.isArray(t)?t.join(" "):t).split(" ").filter(e=>e.trim()).filter(Boolean).join(" ")}async function Ui(t,e){for(const s of Object.keys(t)){if(s==="class"){t[s]=Aa(t[s]);continue}if(t[s]instanceof Promise&&(t[s]=await t[s]),!e&&!Hi.includes(s)){const i=String(t[s]),n=s.startsWith("data-");i==="true"||i===""?t[s]=n?"true":!0:t[s]||(n&&i==="false"?t[s]="false":delete t[s])}}return t}const Ma=10;async function Ca(t){const e=[];return Object.entries(t.resolvedInput).filter(([s,i])=>typeof i<"u"&&va.includes(s)).forEach(([s,i])=>{const n=ya(i);e.push(...n.map(r=>xa(s,r,t)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((s,i)=>(s._e=t._i,t.mode&&(s._m=t.mode),s._p=(t._i<c&&c[h]||void 0,e):l=e[o],typeof l<"u"?(l||"").replace(/"/g,'\\"'):!1}let n=t;try{n=decodeURI(t)}catch{}return(n.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(o=>{const l=i(o.slice(1));typeof l=="string"&&(t=t.replace(new RegExp(`\\${o}(\\W|$)`,"g"),(c,h)=>`${l}${h}`).trim())}),t.includes(Yt)&&(t.endsWith(Yt)&&(t=t.slice(0,-Yt.length).trim()),t.startsWith(Yt)&&(t=t.slice(Yt.length).trim()),t=t.replace(new RegExp(`\\${Yt}\\s*\\${Yt}`,"g"),Yt),t=Re(t,{separator:s},s)),t}async function Da(t){const e={tag:t.tagName.toLowerCase(),props:await Ui(t.getAttributeNames().reduce((s,i)=>({...s,[i]:t.getAttribute(i)}),{})),innerHTML:t.innerHTML};return e._d=Ri(e),e}async function $a(t,e={}){var u;const s=e.document||t.resolvedOptions.document;if(!s)return;const i={shouldRender:t.dirty,tags:[]};if(await t.hooks.callHook("dom:beforeRender",i),!i.shouldRender)return;const n=(await t.resolveTags()).map(d=>({tag:d,id:He.includes(d.tag)?ii(d):d.tag,shouldRender:!0}));let r=t._dom;if(!r){r={elMap:{htmlAttrs:s.documentElement,bodyAttrs:s.body}};for(const d of["body","head"]){const g=(u=s==null?void 0:s[d])==null?void 0:u.children;for(const f of[...g].filter(k=>He.includes(k.tagName.toLowerCase())))r.elMap[f.getAttribute("data-hid")||ii(await Da(f))]=f}}r.pendingSideEffects={...r.sideEffects||{}},r.sideEffects={};function o(d,g,f){const k=`${d}:${g}`;r.sideEffects[k]=f,delete r.pendingSideEffects[k]}function l({id:d,$el:g,tag:f}){const k=f.tag.endsWith("Attrs");r.elMap[d]=g,k||(["textContent","innerHTML"].forEach(y=>{f[y]&&f[y]!==g[y]&&(g[y]=f[y])}),o(d,"el",()=>{r.elMap[d].remove(),delete r.elMap[d]})),Object.entries(f.props).forEach(([y,_])=>{const v=`attr:${y}`;if(y==="class")for(const A of(_||"").split(" ").filter(Boolean))k&&o(d,`${v}:${A}`,()=>g.classList.remove(A)),!g.classList.contains(A)&&g.classList.add(A);else g.getAttribute(y)!==_&&g.setAttribute(y,_===!0?"":String(_)),k&&o(d,v,()=>g.removeAttribute(y))})}const c=[],h={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const d of n){const{tag:g,shouldRender:f,id:k}=d;if(f){if(g.tag==="title"){s.title=g.textContent;continue}d.$el=d.$el||r.elMap[k],d.$el?l(d):He.includes(g.tag)&&c.push(d)}}for(const d of c){const g=d.tag.tagPosition||"head";d.$el=s.createElement(d.tag.tag),l(d),h[g]=h[g]||s.createDocumentFragment(),h[g].appendChild(d.$el)}for(const d of n)await t.hooks.callHook("dom:renderTag",d,s,o);h.head&&s.head.appendChild(h.head),h.bodyOpen&&s.body.insertBefore(h.bodyOpen,s.body.firstChild),h.bodyClose&&s.body.appendChild(h.bodyClose),Object.values(r.pendingSideEffects).forEach(d=>d()),t._dom=r,t.dirty=!1,await t.hooks.callHook("dom:rendered",{renders:n})}async function Ea(t,e={}){const s=e.delayFn||(i=>setTimeout(i,10));return t._domUpdatePromise=t._domUpdatePromise||new Promise(i=>s(async()=>{await $a(t,e),delete t._domUpdatePromise,i()}))}function Pa(t){return e=>{var i,n;const s=((n=(i=e.resolvedOptions.document)==null?void 0:i.head.querySelector('script[id="unhead:payload"]'))==null?void 0:n.innerHTML)||!1;return s&&e.push(JSON.parse(s)),{mode:"client",hooks:{"entries:updated":function(r){Ea(r,t)}}}}}const Ba=["templateParams","htmlAttrs","bodyAttrs"],Ta={hooks:{"tag:normalise":function({tag:t}){["hid","vmid","key"].forEach(i=>{t.props[i]&&(t.key=t.props[i],delete t.props[i])});const s=Ri(t)||(t.key?`${t.tag}:${t.key}`:!1);s&&(t._d=s)},"tags:resolve":function(t){const e={};t.tags.forEach(i=>{const n=(i.key?`${i.tag}:${i.key}`:i._d)||i._p,r=e[n];if(r){let l=i==null?void 0:i.tagDuplicateStrategy;if(!l&&Ba.includes(i.tag)&&(l="merge"),l==="merge"){const c=r.props;["class","style"].forEach(h=>{c[h]&&(i.props[h]?(h==="style"&&!c[h].endsWith(";")&&(c[h]+=";"),i.props[h]=`${c[h]} ${i.props[h]}`):i.props[h]=c[h])}),e[n].props={...c,...i.props};return}else if(i._e===r._e){r._duped=r._duped||[],i._d=`${r._d}:${r._duped.length+1}`,r._duped.push(i);return}else if(ze(i)>ze(r))return}const o=Object.keys(i.props).length+(i.innerHTML?1:0)+(i.textContent?1:0);if(He.includes(i.tag)&&o===0){delete e[n];return}e[n]=i});const s=[];Object.values(e).forEach(i=>{const n=i._duped;delete i._duped,s.push(i),n&&s.push(...n)}),t.tags=s,t.tags=t.tags.filter(i=>!(i.tag==="meta"&&(i.props.name||i.props.property)&&!i.props.content))}}},La={mode:"server",hooks:{"tags:resolve":function(t){const e={};t.tags.filter(s=>["titleTemplate","templateParams","title"].includes(s.tag)&&s._m==="server").forEach(s=>{e[s.tag]=s.tag.startsWith("title")?s.textContent:s.props}),Object.keys(e).length&&t.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},Ia=["script","link","bodyAttrs"];function Oa(t){const e={},s={};return Object.entries(t.props).forEach(([i,n])=>{i.startsWith("on")&&typeof n=="function"?(qi.includes(i)&&(e[i]=`this.dataset.${i} = true`),s[i]=n):e[i]=n}),{props:e,eventHandlers:s}}const Fa=t=>({hooks:{"tags:resolve":function(e){for(const s of e.tags)if(Ia.includes(s.tag)){const{props:i,eventHandlers:n}=Oa(s);s.props=i,Object.keys(n).length&&((s.props.src||s.props.href)&&(s.key=s.key||Fs(s.props.src||s.props.href)),s._eventHandlers=n)}},"dom:renderTag":function(e,s,i){if(!e.tag._eventHandlers)return;const n=e.tag.tag==="bodyAttrs"?s.defaultView:e.$el;Object.entries(e.tag._eventHandlers).forEach(([r,o])=>{const l=`${e.tag._d||e.tag._p}:${r}`,c=r.slice(2).toLowerCase(),h=`data-h-${c}`;if(i(e.id,l,()=>{}),e.$el.hasAttribute(h))return;e.$el.setAttribute(h,"");let u;const d=g=>{o(g),u==null||u.disconnect()};r in e.$el.dataset?d(new Event(r.replace("on",""))):qi.includes(r)&&typeof MutationObserver<"u"?(u=new MutationObserver(g=>{g.some(k=>k.attributeName===`data-${r}`)&&(d(new Event(r.replace("on",""))),u==null||u.disconnect())}),u.observe(e.$el,{attributes:!0})):n.addEventListener(c,d),i(e.id,l,()=>{u==null||u.disconnect(),n.removeEventListener(c,d),e.$el.removeAttribute(h)})})}}}),Na=["link","style","script","noscript"],ja={hooks:{"tag:normalise":({tag:t})=>{t.key&&Na.includes(t.tag)&&(t.props["data-hid"]=t._h=Fs(t.key))}}},Ha={hooks:{"tags:resolve":t=>{const e=s=>{var i;return(i=t.tags.find(n=>n._d===s))==null?void 0:i._p};for(const{prefix:s,offset:i}of Sa)for(const n of t.tags.filter(r=>typeof r.tagPriority=="string"&&r.tagPriority.startsWith(s))){const r=e(n.tagPriority.replace(s,""));typeof r<"u"&&(n._p=r+i)}t.tags.sort((s,i)=>s._p-i._p).sort((s,i)=>ze(s)-ze(i))}}},Ra={meta:"content",link:"href",htmlAttrs:"lang"},Ua=t=>({hooks:{"tags:resolve":e=>{var l;const{tags:s}=e,i=(l=s.find(c=>c.tag==="title"))==null?void 0:l.textContent,n=s.findIndex(c=>c.tag==="templateParams"),r=n!==-1?s[n].props:{},o=r.separator||"|";delete r.separator,r.pageTitle=Re(r.pageTitle||i||"",r,o);for(const c of s.filter(h=>h.processTemplateParams!==!1)){const h=Ra[c.tag];h&&typeof c.props[h]=="string"?c.props[h]=Re(c.props[h],r,o):(c.processTemplateParams===!0||["titleTemplate","title"].includes(c.tag))&&["innerHTML","textContent"].forEach(u=>{typeof c[u]=="string"&&(c[u]=Re(c[u],r,o))})}t._templateParams=r,t._separator=o,e.tags=s.filter(c=>c.tag!=="templateParams")}}}),qa={hooks:{"tags:resolve":t=>{const{tags:e}=t;let s=e.findIndex(n=>n.tag==="titleTemplate");const i=e.findIndex(n=>n.tag==="title");if(i!==-1&&s!==-1){const n=ni(e[s].textContent,e[i].textContent);n!==null?e[i].textContent=n||e[i].textContent:delete e[i]}else if(s!==-1){const n=ni(e[s].textContent);n!==null&&(e[s].textContent=n,e[s].tag="title",s=-1)}s!==-1&&delete e[s],t.tags=e.filter(Boolean)}}},Wa={hooks:{"tags:afterResolve":function(t){for(const e of t.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{l.dirty=!0,e.callHook("entries:updated",l)};let n=0,r=[];const o=[],l={plugins:o,dirty:!1,resolvedOptions:t,hooks:e,headEntries(){return r},use(c){const h=typeof c=="function"?c(l):c;(!h.key||!o.some(u=>u.key===h.key))&&(o.push(h),oi(h.mode,s)&&e.addHooks(h.hooks||{}))},push(c,h){h==null||delete h.head;const u={_i:n++,input:c,...h};return oi(u.mode,s)&&(r.push(u),i()),{dispose(){r=r.filter(d=>d._i!==u._i),e.callHook("entries:updated",l),i()},patch(d){r=r.map(g=>(g._i===u._i&&(g.input=u.input=d),g)),i()}}},async resolveTags(){const c={tags:[],entries:[...r]};await e.callHook("entries:resolve",c);for(const h of c.entries){const u=h.resolvedInput||h.input;if(h.resolvedInput=await(h.transform?h.transform(u):u),h.resolvedInput)for(const d of await Ca(h)){const g={tag:d,entry:h,resolvedOptions:l.resolvedOptions};await e.callHook("tag:normalise",g),c.tags.push(g.tag)}}return await e.callHook("tags:beforeResolve",c),await e.callHook("tags:resolve",c),await e.callHook("tags:afterResolve",c),c.tags},ssr:s};return[Ta,La,Fa,ja,Ha,Ua,qa,Wa,...(t==null?void 0:t.plugins)||[]].forEach(c=>l.use(c)),l.hooks.callHook("init",l),l}function Ya(){return Wi}const Ga=Pn.startsWith("3");function Ka(t){return typeof t=="function"?t():w(t)}function Ve(t,e=""){if(t instanceof Promise)return t;const s=Ka(t);return!t||!s?s:Array.isArray(s)?s.map(i=>Ve(i,e)):typeof s=="object"?Object.fromEntries(Object.entries(s).map(([i,n])=>i==="titleTemplate"||i.startsWith("on")?[i,w(n)]:[i,Ve(n,i)])):s}const Za={hooks:{"entries:resolve":function(t){for(const e of t.entries)e.resolvedInput=Ve(e.input)}}},zi="usehead";function Xa(t){return{install(s){Ga&&(s.config.globalProperties.$unhead=t,s.config.globalProperties.$head=t,s.provide(zi,t))}}.install}function Ja(t={}){t.domDelayFn=t.domDelayFn||(s=>Me(()=>setTimeout(()=>s(),0)));const e=za(t);return e.use(Za),e.install=Xa(e),e}const li=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},ci="__unhead_injection_handler__";function Qa(){if(ci in li)return li[ci]();const t=Bn(zi);return t||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),t||Ya()}function tr(t,e={}){const s=e.head||Qa();if(s)return s.ssr?s.push(t,e):er(s,t,e)}function er(t,e,s={}){const i=R(!1),n=R({});Kt(()=>{n.value=i.value?{}:Ve(e)});const r=t.push(n.value,s);return de(n,l=>{r.patch(l)}),On()&&(Tn(()=>{r.dispose()}),Ln(()=>{i.value=!0}),In(()=>{i.value=!1})),r}function sr(...t){return nr(t).reduce((e,s)=>e+s,0)}function ir(t){return t=t??[],Array.isArray(t)?t:[t]}function nr(t){return ir(t).flat(1)}function ar(t){return t!=null}function rr(t,e){return Object.fromEntries(Object.entries(t).map(([s,i])=>e(s,i)).filter(ar))}const L={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:"dev",monacoTypesSource:"local",monacoTypesAdditionalPackages:[],download:!1,export:{},info:!1,highlighter:"shiki",lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},Vi=L.aspectRatio??16/9,or=L.canvasWidth??980,Fp=Math.ceil(or/Vi),lr=p(()=>rr(L.themeConfig||{},(t,e)=>[`--slidev-theme-${t}`,e]));function Yi(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function ot(t,e,s){Object.defineProperty(t,e,{value:s,writable:!0,enumerable:!1})}const ie=b({page:0,clicks:0});let cr=[],hr=[];ot(ie,"$syncUp",!0);ot(ie,"$syncDown",!0);ot(ie,"$paused",!1);ot(ie,"$onSet",t=>cr.push(t));ot(ie,"$onPatch",t=>hr.push(t));Yi();ot(ie,"$patch",async()=>!1);function Gi(t,e,s=!1){const i=[];let n=!1,r=!1,o,l;const c=b(e);function h(f){i.push(f)}function u(f,k){c[f]!==k&&(clearTimeout(o),n=!0,c[f]=k,o=setTimeout(()=>n=!1,0))}function d(f){n||(clearTimeout(l),r=!0,Object.entries(f).forEach(([k,y])=>{c[k]=y}),l=setTimeout(()=>r=!1,0))}function g(f){let k;s?s&&window.addEventListener("storage",_=>{_&&_.key===f&&_.newValue&&d(JSON.parse(_.newValue))}):(k=new BroadcastChannel(f),k.addEventListener("message",_=>d(_.data)));function y(){!s&&k&&!r?k.postMessage(Fn(c)):s&&!r&&window.localStorage.setItem(f,JSON.stringify(c)),n||i.forEach(_=>_(c))}if(de(c,y,{deep:!0,flush:"sync"}),s){const _=window.localStorage.getItem(f);_&&d(JSON.parse(_))}}return{init:g,onPatch:h,patch:u,state:c}}const{init:ur,onPatch:dr,patch:ge,state:Np}=Gi(ie,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),ne=b({});let pr=[],fr=[];ot(ne,"$syncUp",!0);ot(ne,"$syncDown",!0);ot(ne,"$paused",!1);ot(ne,"$onSet",t=>pr.push(t));ot(ne,"$onPatch",t=>fr.push(t));Yi();ot(ne,"$patch",async()=>!1);const{init:gr,onPatch:kr,patch:Ki,state:Zi}=Gi(ne,{},!1),mr="modulepreload",yr=function(t){return"/sa2024/02-components/"+t},hi={},Se=function(e,s,i){let n=Promise.resolve();if(s&&s.length>0){const r=document.getElementsByTagName("link");n=Promise.all(s.map(o=>{if(o=yr(o),o in hi)return;hi[o]=!0;const l=o.endsWith(".css"),c=l?'[rel="stylesheet"]':"";if(!!i)for(let d=r.length-1;d>=0;d--){const g=r[d];if(g.href===o&&(!l||g.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${o}"]${c}`))return;const u=document.createElement("link");if(u.rel=l?"stylesheet":mr,l||(u.as="script",u.crossOrigin=""),u.href=o,document.head.appendChild(u),l)return new Promise((d,g)=>{u.addEventListener("load",d),u.addEventListener("error",()=>g(new Error(`Unable to preload CSS for ${o}`)))})}))}return n.then(()=>e()).catch(r=>{const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=r,window.dispatchEvent(o),!o.defaultPrevented)throw r})},$=(t,e)=>{const s=t.__vccOpts||t;for(const[i,n]of e)s[i]=n;return s};function jp(){const t=R(Date.now()),e=Nn({interval:1e3}),s=p(()=>{const n=(e.value-t.value)/1e3,r=Math.floor(n%60).toString().padStart(2,"0");return`${Math.floor(n/60).toString().padStart(2,"0")}:${r}`});function i(){t.value=e.value}return{timer:s,resetTimer:i}}function Ns(t=5){const e=[],s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",i=s.length;for(let n=0;nn.max||0))}}}function Ar(t){var n,r;if((n=t==null?void 0:t.meta)!=null&&n.__clicksContext)return t.meta.__clicksContext;const e=+((t==null?void 0:t.path)??vs),s=p({get(){var l;const o=+(((l=qt.value)==null?void 0:l.path)??Number.NaN);return!o||Number.isNaN(o)?0:o===e?ue.value:o>e?vs:0},set(o){var c;+(((c=qt.value)==null?void 0:c.path)??Number.NaN)===e&&(ue.value=o)}}),i=sn(s,(r=t==null?void 0:t.meta)==null?void 0:r.clicks);return t!=null&&t.meta&&(t.meta.__clicksContext=i),i}function Mr(t,e=0){var s;return sn(R(e),(s=t==null?void 0:t.meta)==null?void 0:s.clicks)}const Cr=Hn(Mr());function P(){const t=Xt(Ji),e=ei(t,"nav"),s=Xt(js,Cr).value,i=ei(s,"current"),n=Xt(Xi),r=Xt(Qi),o=Xt(tn,{}),l=Xt(wr,void 0),c=Xt(vr,R(1));return{$slidev:t,$nav:e,$clicksContext:s,$clicks:i,$page:n,$route:l,$renderContext:r,$frontmatter:o,$scale:c}}function F(t){var n,r;Rn(tn,t);const{$slidev:e,$page:s}=P(),i=e.nav.rawRoutes.find(o=>o.path===String(s.value));if((r=(n=i==null?void 0:i.meta)==null?void 0:n.slide)!=null&&r.frontmatter){for(const o of Object.keys(i.meta.slide.frontmatter))o in t||delete i.meta.slide.frontmatter[o];Object.assign(i.meta.slide.frontmatter,t)}}function N(t,e){return{...Un(t,e===0?xr:en),frontmatter:t}}function ui(t){return t.startsWith("/")?"/sa2024/02-components/"+t.slice(1):t}function Sr(t,e=!1){const s=t&&["#","rgb","hsl"].some(n=>t.indexOf(n)===0),i={background:s?t:void 0,color:t&&!s?"white":void 0,backgroundImage:s?void 0:t?e?`linear-gradient(#0005, #0008), url(${ui(t)})`:`url("${ui(t)}")`:void 0,backgroundRepeat:"no-repeat",backgroundPosition:"center",backgroundSize:"cover"};return i.background||delete i.background,i}const Dr={class:"my-auto w-full"},$r=Pe({__name:"cover",props:{background:{default:""}},setup(t){P();const e=t,s=p(()=>Sr(e.background,!0));return(i,n)=>(D(),he("div",{class:"slidev-layout cover",style:Fi(s.value)},[a("div",Dr,[Ce(i.$slots,"default")])],4))}}),Er=$($r,[["__file","/opt/homebrew/lib/node_modules/@slidev/theme-default/layouts/cover.vue"]]),mt=b({theme:"default",layout:"cover"}),Pr=b({layout:p(()=>mt.layout),transition:p(()=>mt.transition),class:p(()=>mt.class),clicks:p(()=>mt.clicks),name:p(()=>mt.name),preload:p(()=>mt.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:mt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),Br=a("h1",null,"Software Architecture",-1),Tr=a("h2",null,"Components and Spring IoC Container",-1),Lr={__name:"1",setup(t){return F(mt),P(),(e,s)=>(D(),E(Er,I(O(w(N)(w(mt),0))),{default:M(()=>[Br,Tr]),_:1},16))}},Ir=$(Lr,[["__file","/@slidev/slides/1.md"]]),Or={},Fr={class:"slidev-layout default"};function Nr(t,e){return D(),he("div",Fr,[Ce(t.$slots,"default")])}const J=$(Or,[["render",Nr],["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/default.vue"]]),yt=b({}),jr=b({layout:p(()=>yt.layout),transition:p(()=>yt.transition),class:p(()=>yt.class),clicks:p(()=>yt.clicks),name:p(()=>yt.name),preload:p(()=>yt.preload),slide:{index:1,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:yt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:10,id:1,no:2},__clicksContext:null,__preloaded:!1}),Hr=a("h1",null,"Software Architecture",-1),Rr=a("br",null,null,-1),Ur=a("blockquote",null,[a("div",{style:{"font-size":"25px","line-height":"150%"}},[m("Architecture is a subjective thing, a "),a("span",{style:{color:"red","font-weight":"bold"}},"shared understanding of a system’s design"),m(" by the expert developers on a project. Commonly this shared understanding is in the form of the "),a("span",{style:{color:"blue","font-weight":"bold"}},"major components of the system"),m(" and "),a("span",{style:{color:"green","font-weight":"bold"}},"how they interact"),m(". It’s also about decisions, in that it’s the decisions that developers wish they could get right early on because they’re perceived as hard to change. ")])],-1),qr=a("br",null,null,-1),Wr=a("div",{style:{"text-align":"right"}},"-- Martin Fowler, 2003",-1),zr={__name:"2",setup(t){return F(yt),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(yt),1))),{default:M(()=>[Hr,Rr,Ur,qr,Wr]),_:1},16))}},Vr=$(zr,[["__file","/@slidev/slides/2.md"]]),Yr="/sa2024/02-components/assets/02-component-based-Ci6WRO_e.jpg",Gr=Pe({__name:"two-cols",props:{class:{type:String},layoutClass:{type:String}},setup(t){const e=t;return(s,i)=>(D(),he("div",{class:je(["slidev-layout two-columns w-full h-full grid grid-cols-2",e.layoutClass])},[a("div",{class:je(["col-left",e.class])},[Ce(s.$slots,"default")],2),a("div",{class:je(["col-right",e.class])},[Ce(s.$slots,"right")],2)],2))}}),Wt=$(Gr,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/two-cols.vue"]]),_t=b({layout:"two-cols"}),Kr=b({layout:p(()=>_t.layout),transition:p(()=>_t.transition),class:p(()=>_t.class),clicks:p(()=>_t.clicks),name:p(()=>_t.name),preload:p(()=>_t.preload),slide:{index:2,content:"",note:"",title:"Components-based",level:1,noteHTML:"",raw:"",frontmatter:_t,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:24,id:2,no:3},__clicksContext:null,__preloaded:!1}),Zr=a("h1",null,"Components-based",-1),Xr=a("br",null,null,-1),Jr=a("p",null,[m("软件工程强调软件开发过程应该采用工程化开发方法和工业化生产技术,"),a("strong",null,"从传统工业借鉴方法和技术"),m("是一种有效手段")],-1),Qr=a("ul",null,[a("li",null,[m("基于标准化构件的生产技术 "),a("ul",null,[a("li",null,"汽车生产:汽车零件"),a("li",null,"建筑工程:建筑材料")])]),a("li",null,[m("第三方提供 vs. 自身积累 "),a("ul",null,[a("li",null,"汽车轮胎 、变速箱总成")])])],-1),to=a("img",{src:Yr,class:"m-20 h-60"},null,-1),eo={__name:"3",setup(t){return F(_t),P(),(e,s)=>(D(),E(Wt,I(O(w(N)(w(_t),2))),{right:M(i=>[to]),default:M(()=>[Zr,Xr,Jr,Qr]),_:1},16))}},so=$(eo,[["__file","/@slidev/slides/3.md"]]),io="/sa2024/02-components/assets/02-componentsoftware-Dun4RDYd.png",vt=b({layout:"two-cols"}),no=b({layout:p(()=>vt.layout),transition:p(()=>vt.transition),class:p(()=>vt.class),clicks:p(()=>vt.clicks),name:p(()=>vt.name),preload:p(()=>vt.preload),slide:{index:3,content:"",note:"",title:"Software Component",level:1,noteHTML:"",raw:"",frontmatter:vt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:46,id:3,no:4},__clicksContext:null,__preloaded:!1}),ao=a("h1",null,"Software Component",-1),ro=a("br",null,null,-1),oo=a("blockquote",null,[a("div",{style:{"font-size":"20px","line-height":"150%"}},[m("A software component is "),a("span",{style:{color:"red","font-weight":"bold"}},"a unit of composition"),m(" with "),a("span",{style:{color:"green","font-weight":"bold"}},"contractually specified interfaces"),m(" and "),a("span",{style:{color:"blue","font-weight":"bold"}},"explicit context dependencies"),m(" only. A software component can be "),a("span",{style:{color:"purple","font-weight":"bold"}},"deployed independently"),m(" and is subject to composition by third parties. ")])],-1),lo=a("br",null,null,-1),co=a("div",{style:{"text-align":"right"}},"-- Clemens Szyperski",-1),ho=a("img",{src:io,class:"m-20 h-80"},null,-1),uo={__name:"4",setup(t){return F(vt),P(),(e,s)=>(D(),E(Wt,I(O(w(N)(w(vt),3))),{right:M(i=>[ho]),default:M(()=>[ao,ro,oo,lo,co]),_:1},16))}},po=$(uo,[["__file","/@slidev/slides/4.md"]]),fo="/sa2024/02-components/assets/02-pc-BTqobrfu.jpg",wt=b({layout:"two-cols"}),go=b({layout:p(()=>wt.layout),transition:p(()=>wt.transition),class:p(()=>wt.class),clicks:p(()=>wt.clicks),name:p(()=>wt.name),preload:p(()=>wt.preload),slide:{index:4,content:"",note:"",title:"类比:DIY",level:1,noteHTML:"",raw:"",frontmatter:wt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:68,id:4,no:5},__clicksContext:null,__preloaded:!1}),ko=a("h1",null,"类比:DIY",-1),mo=a("img",{src:fo,class:"m-5 h-100"},null,-1),yo=a("p",null,[a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br")],-1),_o=a("ul",null,[a("li",null,"A unit of composition"),a("li",null,"Contractually specified interfaces"),a("li",null,"Explicit context dependencies"),a("li",null,"Composition by third parties")],-1),vo={__name:"5",setup(t){return F(wt),P(),(e,s)=>(D(),E(Wt,I(O(w(N)(w(wt),4))),{right:M(i=>[yo,_o]),default:M(()=>[ko,mo]),_:1},16))}},wo=$(vo,[["__file","/@slidev/slides/5.md"]]),bo="/sa2024/02-components/assets/02-cbse-CLGE2MWI.png",bt=b({layout:"two-cols"}),xo=b({layout:p(()=>bt.layout),transition:p(()=>bt.transition),class:p(()=>bt.class),clicks:p(()=>bt.clicks),name:p(()=>bt.name),preload:p(()=>bt.preload),slide:{index:5,content:"",note:"",title:"CBSE",level:1,noteHTML:"",raw:"",frontmatter:bt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:86,id:5,no:6},__clicksContext:null,__preloaded:!1}),Ao=a("h1",null,"CBSE",-1),Mo=a("div",{style:{"font-size":"25px","line-height":"150%"}},[m(" Component-based software engineering (CBSE), i.e. components-based development (CBD), is ... "),a("span",{style:{color:"green","font-weight":"bold"}},"a reuse-based approach to defining, implementing and composing loosely coupled independent components into systems"),m(". ")],-1),Co=a("img",{src:bo,class:"m-20 h-50"},null,-1),So={__name:"6",setup(t){return F(bt),P(),(e,s)=>(D(),E(Wt,I(O(w(N)(w(bt),5))),{right:M(i=>[Co]),default:M(()=>[Ao,Mo]),_:1},16))}},Do=$(So,[["__file","/@slidev/slides/6.md"]]),$o="/sa2024/02-components/assets/02-composition-DDivBQr6.png",xt=b({layout:"two-cols"}),Eo=b({layout:p(()=>xt.layout),transition:p(()=>xt.transition),class:p(()=>xt.class),clicks:p(()=>xt.clicks),name:p(()=>xt.name),preload:p(()=>xt.preload),slide:{index:6,content:"",note:"",title:"Goals of CBD",level:1,noteHTML:"",raw:"",frontmatter:xt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:101,id:6,no:7},__clicksContext:null,__preloaded:!1}),Po=a("h1",null,"Goals of CBD",-1),Bo=a("ul",null,[a("li",null,"Assemble a system out of existing (third-party) components"),a("li",null,[m("Update a system by adding / replacing components, which are "),a("ul",null,[a("li",null,"units of deployment"),a("li",null,"are handled as they are (blackboxes)")])])],-1),To=a("p",null,[a("br"),a("br"),a("br"),a("br"),a("img",{src:$o,class:"m-10 h-60"})],-1),Lo={__name:"7",setup(t){return F(xt),P(),(e,s)=>(D(),E(Wt,I(O(w(N)(w(xt),6))),{right:M(i=>[To]),default:M(()=>[Po,Bo]),_:1},16))}},Io=$(Lo,[["__file","/@slidev/slides/7.md"]]),Oo="/sa2024/02-components/assets/02-ccm-DFZiPs6Z.png",At=b({}),Fo=b({layout:p(()=>At.layout),transition:p(()=>At.transition),class:p(()=>At.class),clicks:p(()=>At.clicks),name:p(()=>At.name),preload:p(()=>At.preload),slide:{index:7,content:"",note:"",title:"CCM Component",level:1,noteHTML:"",raw:"",frontmatter:At,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:116,id:7,no:8},__clicksContext:null,__preloaded:!1}),No=a("h1",null,"CCM Component",-1),jo=a("img",{src:Oo,class:"m-10 h-100"},null,-1),Ho={__name:"8",setup(t){return F(At),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(At),7))),{default:M(()=>[No,jo]),_:1},16))}},Ro=$(Ho,[["__file","/@slidev/slides/8.md"]]),Uo="/sa2024/02-components/assets/02-spring-framework-RvVgoMZn.png",Mt=b({}),qo=b({layout:p(()=>Mt.layout),transition:p(()=>Mt.transition),class:p(()=>Mt.class),clicks:p(()=>Mt.clicks),name:p(()=>Mt.name),preload:p(()=>Mt.preload),slide:{index:8,content:"",note:"",title:"Spring",level:1,noteHTML:"",raw:"",frontmatter:Mt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:123,id:8,no:9},__clicksContext:null,__preloaded:!1}),Wo=a("h1",null,"Spring",-1),zo=a("br",null,null,-1),Vo=a("p",null,'The Spring framework is a modular framework that offers a large set of "tools" to support the developer in writing modern component-based applications.',-1),Yo=a("p",null,[a("a",{href:"https://spring.io/projects/spring-framework",target:"_blank",rel:"noopener"},"https://spring.io/projects/spring-framework")],-1),Go=a("img",{src:Uo,class:"m-10 h-50"},null,-1),Ko={__name:"9",setup(t){return F(Mt),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(Mt),8))),{default:M(()=>[Wo,zo,Vo,Yo,Go]),_:1},16))}},Zo=$(Ko,[["__file","/@slidev/slides/9.md"]]),Xo="/sa2024/02-components/assets/02-bootstrap-CI_hrqDh.png",Ct=b({}),Jo=b({layout:p(()=>Ct.layout),transition:p(()=>Ct.transition),class:p(()=>Ct.class),clicks:p(()=>Ct.clicks),name:p(()=>Ct.name),preload:p(()=>Ct.preload),slide:{index:9,content:"",note:"",title:"CBD a web app with Spring",level:1,noteHTML:"",raw:"",frontmatter:Ct,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:137,id:9,no:10},__clicksContext:null,__preloaded:!1}),Qo=a("h1",null,"CBD a web app with Spring",-1),tl=a("img",{src:Xo,class:"m-10 h-80"},null,-1),el=a("div",{style:{"text-align":"right"}},"sa-spring/spring-bootstrap",-1),sl=a("p",null,[a("a",{href:"https://www.bilibili.com/video/BV1A7411F7Jh?p=3",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV1A7411F7Jh?p=3"),m(" (5:30)")],-1),il={__name:"10",setup(t){return F(Ct),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(Ct),9))),{default:M(()=>[Qo,tl,el,sl]),_:1},16))}},nl=$(il,[["__file","/@slidev/slides/10.md"]]),al="/sa2024/02-components/assets/02-bootstrap-components-jRQva9uT.png",St=b({}),rl=b({layout:p(()=>St.layout),transition:p(()=>St.transition),class:p(()=>St.class),clicks:p(()=>St.clicks),name:p(()=>St.name),preload:p(()=>St.preload),slide:{index:10,content:"",note:"",title:"Compositing/Assembling/Wiring",level:1,noteHTML:"",raw:"",frontmatter:St,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:152,id:10,no:11},__clicksContext:null,__preloaded:!1}),ol=a("h1",null,"Compositing/Assembling/Wiring",-1),ll=a("img",{src:al,class:"m-20 h-80"},null,-1),cl={__name:"11",setup(t){return F(St),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(St),10))),{default:M(()=>[ol,ll]),_:1},16))}},hl=$(cl,[["__file","/@slidev/slides/11.md"]]),ul="/sa2024/02-components/assets/02-moviefinder-BJnjULb8.png",Dt=b({}),dl=b({layout:p(()=>Dt.layout),transition:p(()=>Dt.transition),class:p(()=>Dt.class),clicks:p(()=>Dt.clicks),name:p(()=>Dt.name),preload:p(()=>Dt.preload),slide:{index:11,content:"",note:"",title:"控制反转 IoC",level:1,noteHTML:"",raw:"",frontmatter:Dt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:159,id:11,no:12},__clicksContext:null,__preloaded:!1}),pl=a("h1",null,"控制反转 IoC",-1),fl=a("br",null,null,-1),gl=a("p",null,"提供服务的组件是被“注入”的而不是被“直接写入”到请求者的代码中",-1),kl=a("br",null,null,-1),ml=a("img",{src:ul,class:"m-0 h-50"},null,-1),yl=a("br",null,null,-1),_l=a("div",{style:{"text-align":"right"}},"https://martinfowler.com/articles/injection.html",-1),vl={__name:"12",setup(t){return F(Dt),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(Dt),11))),{default:M(()=>[pl,fl,gl,kl,ml,yl,_l]),_:1},16))}},wl=$(vl,[["__file","/@slidev/slides/12.md"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function nn(t){return typeof t>"u"||t===null}function bl(t){return typeof t=="object"&&t!==null}function xl(t){return Array.isArray(t)?t:nn(t)?[]:[t]}function Al(t,e){var s,i,n,r;if(e)for(r=Object.keys(e),s=0,i=r.length;s=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),nc=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function ac(t){return!(t===null||!nc.test(t)||t[t.length-1]==="_")}function rc(t){var e,s;return e=t.replace(/_/g,"").toLowerCase(),s=e[0]==="-"?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?s===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:s*parseFloat(e,10)}var oc=/^[-+]?[0-9]+e/;function lc(t,e){var s;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Hs.isNegativeZero(t))return"-0.0";return s=t.toString(10),oc.test(s)?s.replace("e",".e"):s}function cc(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||Hs.isNegativeZero(t))}var hc=new X("tag:yaml.org,2002:float",{kind:"scalar",resolve:ac,construct:rc,predicate:cc,represent:lc,defaultStyle:"lowercase"}),uc=Ul.extend({implicit:[Vl,Zl,ic,hc]}),dc=uc,rn=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),on=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function pc(t){return t===null?!1:rn.exec(t)!==null||on.exec(t)!==null}function fc(t){var e,s,i,n,r,o,l,c=0,h=null,u,d,g;if(e=rn.exec(t),e===null&&(e=on.exec(t)),e===null)throw new Error("Date resolve error");if(s=+e[1],i=+e[2]-1,n=+e[3],!e[4])return new Date(Date.UTC(s,i,n));if(r=+e[4],o=+e[5],l=+e[6],e[7]){for(c=e[7].slice(0,3);c.length<3;)c+="0";c=+c}return e[9]&&(u=+e[10],d=+(e[11]||0),h=(u*60+d)*6e4,e[9]==="-"&&(h=-h)),g=new Date(Date.UTC(s,i,n,r,o,l,c)),h&&g.setTime(g.getTime()-h),g}function gc(t){return t.toISOString()}var kc=new X("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:pc,construct:fc,instanceOf:Date,represent:gc});function mc(t){return t==="<<"||t===null}var yc=new X("tag:yaml.org,2002:merge",{kind:"scalar",resolve:mc}),Rs=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function _c(t){if(t===null)return!1;var e,s,i=0,n=t.length,r=Rs;for(s=0;s64)){if(e<0)return!1;i+=6}return i%8===0}function vc(t){var e,s,i=t.replace(/[\r\n=]/g,""),n=i.length,r=Rs,o=0,l=[];for(e=0;e>16&255),l.push(o>>8&255),l.push(o&255)),o=o<<6|r.indexOf(i.charAt(e));return s=n%4*6,s===0?(l.push(o>>16&255),l.push(o>>8&255),l.push(o&255)):s===18?(l.push(o>>10&255),l.push(o>>2&255)):s===12&&l.push(o>>4&255),new Uint8Array(l)}function wc(t){var e="",s=0,i,n,r=t.length,o=Rs;for(i=0;i>18&63],e+=o[s>>12&63],e+=o[s>>6&63],e+=o[s&63]),s=(s<<8)+t[i];return n=r%3,n===0?(e+=o[s>>18&63],e+=o[s>>12&63],e+=o[s>>6&63],e+=o[s&63]):n===2?(e+=o[s>>10&63],e+=o[s>>4&63],e+=o[s<<2&63],e+=o[64]):n===1&&(e+=o[s>>2&63],e+=o[s<<4&63],e+=o[64],e+=o[64]),e}function bc(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}var xc=new X("tag:yaml.org,2002:binary",{kind:"scalar",resolve:_c,construct:vc,predicate:bc,represent:wc}),Ac=Object.prototype.hasOwnProperty,Mc=Object.prototype.toString;function Cc(t){if(t===null)return!0;var e=[],s,i,n,r,o,l=t;for(s=0,i=l.length;si<=t).sort((i,n)=>i-n)}const Rc=["title"],Uc=Pe({__name:"CodeBlockWrapper",props:{ranges:{type:Array,default:()=>[]},finally:{type:[String,Number],default:"last"},startLine:{type:Number,default:1},lines:{type:Boolean,default:L.lineNumbers},at:{type:[String,Number],default:"+1"},maxHeight:{type:String,default:void 0}},setup(t){const e=t,{$clicksContext:s}=P(),i=R(),n=Ns();qn(()=>{s.unregister(n)}),Kt(()=>{var c;(c=i.value)==null||c.classList.toggle("slidev-code-line-numbers",e.lines)}),Wn(()=>{var f;if(!s||s.disabled||!((f=e.ranges)!=null&&f.length))return;const{start:c,end:h,delta:u}=s.resolve(e.at,e.ranges.length-1);s.register(n,{max:h,delta:u});const d=p(()=>s.disabled?e.ranges.length-1:Math.max(0,s.current-c+1)),g=p(()=>e.finally==="last"?e.ranges.at(-1):e.finally.toString());Kt(()=>{if(!i.value)return;let k=e.ranges[d.value]??g.value;const y=k==="hide";i.value.classList.toggle(le,y),y&&(k=e.ranges[d.value+1]??g.value);const v=i.value.querySelector(".shiki-dark")?Array.from(i.value.querySelectorAll(".shiki")):[i.value],A=e.startLine;for(const C of v){const U=Array.from(C.querySelectorAll("code > .line")),H=Hc(U.length+A-1,k);if(U.forEach((q,lt)=>{const Y=H.includes(lt+A);q.classList.toggle(xe,!0),q.classList.toggle("highlighted",Y),q.classList.toggle("dishonored",!Y)}),e.maxHeight){const q=Array.from(C.querySelectorAll(".line.highlighted"));q.reduce((Y,st)=>st.offsetHeight+Y,0)>i.value.offsetHeight?q[0].scrollIntoView({behavior:"smooth",block:"start"}):q.length>0&&q[Math.round((q.length-1)/2)].scrollIntoView({behavior:"smooth",block:"center"})}}})});const{copied:r,copy:o}=zn();function l(){var h,u;const c=(u=(h=i.value)==null?void 0:h.querySelector(".slidev-code"))==null?void 0:u.textContent;c&&o(c)}return(c,h)=>{const u=ca,d=ha;return D(),he("div",{ref_key:"el",ref:i,class:je(["slidev-code-wrapper relative group",{"slidev-code-line-numbers":e.lines}]),style:Fi({"max-height":e.maxHeight,"overflow-y":e.maxHeight?"scroll":void 0,"--start":e.startLine})},[Ce(c.$slots,"default"),w(L).codeCopy?(D(),he("button",{key:0,class:"slidev-code-copy absolute top-0 right-0 transition opacity-0 group-hover:opacity-20 hover:!opacity-100",title:w(r)?"Copied":"Copy",onClick:h[0]||(h[0]=g=>l())},[w(r)?(D(),E(u,{key:0,class:"p-2 w-8 h-8"})):(D(),E(d,{key:1,class:"p-2 w-8 h-8"}))],8,Rc)):Vn("v-if",!0)],6)}}}),Te=$(Uc,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/builtin/CodeBlockWrapper.vue"]]),$t=b({layout:"two-cols"}),qc=b({layout:p(()=>$t.layout),transition:p(()=>$t.transition),class:p(()=>$t.class),clicks:p(()=>$t.clicks),name:p(()=>$t.name),preload:p(()=>$t.preload),slide:{index:12,content:"",note:"",title:"Solution Design",level:1,noteHTML:"",raw:"",frontmatter:$t,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:174,id:12,no:13},__clicksContext:null,__preloaded:!1}),Wc=a("h1",null,"Solution Design",-1),zc=a("img",{src:"https://www.plantuml.com/plantuml/png/SoWkIImgAStDuUAAziqloqproImkIIsALT1BoI_FqxDJy0IBkcNcfQGMALWfb1Qd0XKYX3np2t9Y5NHpKjDAT57KSZcavgM0pGK0",class:"m-0 h-50"},null,-1),Vc=a("br",null,null,-1),Yc=a("ul",null,[a("li",null,[a("code",null,"MovieFinder"),m(" is an interface")])],-1),Gc=a("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[a("code",{class:"language-java"},[a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"public"),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," interface"),a("span",{style:{"--shiki-dark":"#5DA994","--shiki-light":"#2E8F82"}}," MovieFinder"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"{")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," List "),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"findAll"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"();")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"}")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"public"),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," class"),a("span",{style:{"--shiki-dark":"#5DA994","--shiki-light":"#2E8F82"}}," MovieLister"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"{")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," private"),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," MovieFinder"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," finder"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},";")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," public"),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," Movie"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"[]"),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," moviesDirectedBy"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"String "),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"arg"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"){")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," List"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," allMovies"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," finder"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"findAll"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"();")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}}," for"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ("),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Iterator"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," it"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," allMovies"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"iterator"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"();"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," it"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"hasNext"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"();){")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," Movie"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," movie"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ("),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Movie"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," it"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"next"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"();")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}}," if"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ("),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"!"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"movie"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"getDirector"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"()."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"equals"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"arg"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"))"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," it"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"remove"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"();")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," }")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}}," return"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ("),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"Movie"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"[])"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," allMovies"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"toArray"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"new"),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," Movie"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"["),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"allMovies"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"size"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"()]);")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," }")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"}")])])],-1),Kc=a("p",null,[a("code",null,"MovieLister"),m(" still needs a "),a("code",null,"MovieFinderImplementation")],-1),Zc={__name:"13",setup(t){return F($t),P(),(e,s)=>{const i=Te;return D(),E(Wt,I(O(w(N)(w($t),12))),{right:M(n=>[ee(i,Be({},{ranges:[]}),{default:M(()=>[Gc]),_:1},16),Kc]),default:M(()=>[Wc,zc,Vc,Yc]),_:1},16)}}},Xc=$(Zc,[["__file","/@slidev/slides/13.md"]]),Et=b({layout:"two-cols"}),Jc=b({layout:p(()=>Et.layout),transition:p(()=>Et.transition),class:p(()=>Et.class),clicks:p(()=>Et.clicks),name:p(()=>Et.name),preload:p(()=>Et.preload),slide:{index:13,content:"",note:"",title:"Bad Design (WHY?)",level:1,noteHTML:"",raw:"",frontmatter:Et,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:209,id:13,no:14},__clicksContext:null,__preloaded:!1}),Qc=a("h1",null,"Bad Design (WHY?)",-1),th=a("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[a("code",{class:"language-java"},[a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"public"),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," interface"),a("span",{style:{"--shiki-dark":"#5DA994","--shiki-light":"#2E8F82"}}," MovieFinder"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"{")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," List "),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"findAll"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"();")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"}")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"public"),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," class"),a("span",{style:{"--shiki-dark":"#5DA994","--shiki-light":"#2E8F82"}}," MovieLister"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"{")]),m(` -`),a("span",{class:"line"}),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," private"),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," MovieFinder"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," finder"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}}," new"),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," MySpecialMovieFinderImp"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"();")]),m(` -`),a("span",{class:"line"}),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," public"),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," Movie"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"[]"),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," moviesDirectedBy"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"String "),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"arg"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"){")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," List"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," allMovies"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," finder"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"findAll"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"();")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}}," for"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ("),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Iterator"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," it"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," allMovies"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"iterator"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"();"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," it"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"hasNext"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"();){")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," Movie"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," movie"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ("),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Movie"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," it"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"next"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"();")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}}," if"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ("),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"!"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"movie"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"getDirector"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"()."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"equals"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"arg"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"))"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," it"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"remove"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"();")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," }")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}}," return"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ("),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"Movie"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"[])"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," allMovies"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"toArray"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"new"),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," Movie"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"["),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"allMovies"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"size"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"()]);")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," }")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"}")])])],-1),eh=a("img",{src:"https://www.plantuml.com/plantuml/png/SoWkIImgAStDuU9ApaaiBbRmpI_BJFN9B2v9BUBAp0EIQOd9gH1Hjyoy5A0e5v8I1LrTEmLaMGKhXTBYL5GrUdfso4eySmjoWCgIYr8JIrABkT1bT6liKArpICrB0JiG0000",class:"m-20 h-50"},null,-1),sh={__name:"14",setup(t){return F(Et),P(),(e,s)=>{const i=Te;return D(),E(Wt,I(O(w(N)(w(Et),13))),{right:M(n=>[eh]),default:M(()=>[Qc,ee(i,Be({},{ranges:["all","6"]}),{default:M(()=>[th]),_:1},16)]),_:1},16)}}},ih=$(sh,[["__file","/@slidev/slides/14.md"]]),Pt=b({}),nh=b({layout:p(()=>Pt.layout),transition:p(()=>Pt.transition),class:p(()=>Pt.class),clicks:p(()=>Pt.clicks),name:p(()=>Pt.name),preload:p(()=>Pt.preload),slide:{index:14,content:"",note:"",title:"Goal: loosely coupled components",level:1,noteHTML:"",raw:"",frontmatter:Pt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:241,id:14,no:15},__clicksContext:null,__preloaded:!1}),ah=a("h1",null,"Goal: loosely coupled components",-1),rh=a("ul",null,[a("li",null,[a("code",null,"MovieLister"),m(" should work with "),a("strong",null,"any"),m(),a("code",null,"MovieFinderImplementation"),a("ul",null,[a("li",null,[a("code",null,"MovieLister"),m(" does not need to know the particular type of finder implementation it is using")])])]),a("li",null,[m("The good solution: eliminate all lines of code such as: "),a("ul",null,[a("li",null,[a("code",null,"MovieFinder f = new MyParticularMovieFinderImpl();")]),a("li",null,"A component should NEVER create (instantiate) its dependencies")])]),a("li",null,[m("The solution is called "),a("strong",null,"“Inversion of Control”"),a("ul",null,[a("li",null,"A component does not create (instantiate) its dependencies but has someone else creating them for it")])])],-1),oh={__name:"15",setup(t){return F(Pt),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(Pt),14))),{default:M(()=>[ah,rh]),_:1},16))}},lh=$(oh,[["__file","/@slidev/slides/15.md"]]),Bt=b({}),ch=b({layout:p(()=>Bt.layout),transition:p(()=>Bt.transition),class:p(()=>Bt.class),clicks:p(()=>Bt.clicks),name:p(()=>Bt.name),preload:p(()=>Bt.preload),slide:{index:15,content:"",note:"",title:"Concept of “Inversion of Control”",level:1,noteHTML:"",raw:"",frontmatter:Bt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:253,id:15,no:16},__clicksContext:null,__preloaded:!1}),hh=a("h1",null,"Concept of “Inversion of Control”",-1),uh=a("br",null,null,-1),dh=a("p",null,"In the context of components: the application independently defines a set of components and their dependencies and the component framework (called container) uses this information to",-1),ph=a("ul",null,[a("li",null,"Wire the components together at run-time"),a("li",null,"Call its code at specific times in the life cycle")],-1),fh={__name:"16",setup(t){return F(Bt),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(Bt),15))),{default:M(()=>[hh,uh,dh,ph]),_:1},16))}},gh=$(fh,[["__file","/@slidev/slides/16.md"]]),Tt=b({}),kh=b({layout:p(()=>Tt.layout),transition:p(()=>Tt.transition),class:p(()=>Tt.class),clicks:p(()=>Tt.clicks),name:p(()=>Tt.name),preload:p(()=>Tt.preload),slide:{index:16,content:"",note:"",title:"Inversion of Control",level:1,noteHTML:"",raw:"",frontmatter:Tt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:263,id:16,no:17},__clicksContext:null,__preloaded:!1}),mh=a("h1",null,"Inversion of Control",-1),yh=a("br",null,null,-1),_h=a("p",null,"Inversion of Control can be achieved through several patterns:",-1),vh=a("ul",null,[a("li",null,"Dependency Injection"),a("li",null,[m("Service Locator ("),a("a",{href:"https://martinfowler.com/articles/injection.html#UsingAServiceLocator%EF%BC%89",target:"_blank",rel:"noopener"},"https://martinfowler.com/articles/injection.html#UsingAServiceLocator)")])],-1),wh={__name:"17",setup(t){return F(Tt),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(Tt),16))),{default:M(()=>[mh,yh,_h,vh]),_:1},16))}},bh=$(wh,[["__file","/@slidev/slides/17.md"]]),Lt=b({}),xh=b({layout:p(()=>Lt.layout),transition:p(()=>Lt.transition),class:p(()=>Lt.class),clicks:p(()=>Lt.clicks),name:p(()=>Lt.name),preload:p(()=>Lt.preload),slide:{index:17,content:"",note:"",title:"Dependency Injection",level:1,noteHTML:"",raw:"",frontmatter:Lt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:272,id:17,no:18},__clicksContext:null,__preloaded:!1}),Ah=a("h1",null,"Dependency Injection",-1),Mh=a("img",{src:"https://www.plantuml.com/plantuml/png/TOz12i8m44NtSugvG7e05wLk144F4TDV24oYPAQkFBp1YiH0DrdylFy-CwdvOciIeY1UbQ_tPyGbgg5GpFLTVC2MdcAUKLfkIyxf8T_qg8fqaqfH8s8dMCoDtBRumAk2w5VXOHXxROL2WJSezJ_kzKVtedP-VuE99kJvS_yR",class:"m-20 h-40"},null,-1),Ch=a("div",{style:{"text-align":"center"}},"An Assembler instantiates concrete implementations and “injects” them into the component that needs them.",-1),Sh={__name:"18",setup(t){return F(Lt),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(Lt),17))),{default:M(()=>[Ah,Mh,Ch]),_:1},16))}},Dh=$(Sh,[["__file","/@slidev/slides/18.md"]]),It=b({}),$h=b({layout:p(()=>It.layout),transition:p(()=>It.transition),class:p(()=>It.class),clicks:p(()=>It.clicks),name:p(()=>It.name),preload:p(()=>It.preload),slide:{index:18,content:"",note:"",title:"Forms of Dependency Injection",level:1,noteHTML:"",raw:"",frontmatter:It,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:281,id:18,no:19},__clicksContext:null,__preloaded:!1}),Eh=a("h1",null,"Forms of Dependency Injection",-1),Ph=a("ul",null,[a("li",null,[m("Constructor Injection "),a("ul",null,[a("li",null,[a("code",null,"MovieLister"),m(" has a constructor that will get the "),a("code",null,"MovieFinderImplementation")])])]),a("li",null,[m("Setter Injection "),a("ul",null,[a("li",null,[a("code",null,"MovieLister"),m(" has a setter method that will get the "),a("code",null,"MovieFinderImplementation")])])]),a("li",null,[m("Interface Injection "),a("ul",null,[a("li",null,[m("An interface "),a("code",null,"InjectFinder"),m(", with method "),a("code",null,"injectFinder"),m(", defined by the provider of the "),a("code",null,"MovieFinder"),m(" interface")]),a("li",null,[a("code",null,"MovieLister"),m(" (and any class that wants to use a "),a("code",null,"MovieFinder"),m(") needs to implement this interface")])])])],-1),Bh={__name:"19",setup(t){return F(It),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(It),18))),{default:M(()=>[Eh,Ph]),_:1},16))}},Th=$(Bh,[["__file","/@slidev/slides/19.md"]]),Ot=b({}),Lh=b({layout:p(()=>Ot.layout),transition:p(()=>Ot.transition),class:p(()=>Ot.class),clicks:p(()=>Ot.clicks),name:p(()=>Ot.name),preload:p(()=>Ot.preload),slide:{index:19,content:"",note:"",title:"Component Containers",level:1,noteHTML:"",raw:"",frontmatter:Ot,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:293,id:19,no:20},__clicksContext:null,__preloaded:!1}),Ih=a("h1",null,"Component Containers",-1),Oh=a("br",null,null,-1),Fh=a("p",null,"What has the DI pattern to do with component frameworks ?",-1),Nh=a("ul",null,[a("li",null,[m("The "),a("code",null,"Assembler"),m(" component of the DI pattern is called a "),a("strong",null,"Component Container"),m(" and is part of the component framework")]),a("li",null,[m("The assembler (Container) is generic (for any application), thus it: "),a("ul",null,[a("li",null,"Requires that components follow a certain convention (constructor, setter, injector interfaces)"),a("li",null,"Requires to be told (by code or configuration files) which implementation to associate with which interface")])])],-1),jh={__name:"20",setup(t){return F(Ot),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(Ot),19))),{default:M(()=>[Ih,Oh,Fh,Nh]),_:1},16))}},Hh=$(jh,[["__file","/@slidev/slides/20.md"]]),Ft=b({}),Rh=b({layout:p(()=>Ft.layout),transition:p(()=>Ft.transition),class:p(()=>Ft.class),clicks:p(()=>Ft.clicks),name:p(()=>Ft.name),preload:p(()=>Ft.preload),slide:{index:20,content:"",note:"",title:"Example: Setter Injection with Spring",level:1,noteHTML:"",raw:"",frontmatter:Ft,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:306,id:20,no:21},__clicksContext:null,__preloaded:!1}),Uh=a("h1",null,"Example: Setter Injection with Spring",-1),qh=a("br",null,null,-1),Wh=a("ol",null,[a("li",null,"Defining setters")],-1),zh=a("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[a("code",{class:"language-java"},[a("span",{class:"line"}),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"public"),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," class"),a("span",{style:{"--shiki-dark":"#5DA994","--shiki-light":"#2E8F82"}}," MovieLister"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"{")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," MovieFinder"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," finder"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},";")]),m(` -`),a("span",{class:"line"}),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," public"),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," void"),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," setFinder"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"MovieFinder "),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"finder"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"){")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#C99076","--shiki-light":"#A65E2B"}}," this"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"finder"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," finder"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},";")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," }")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ...")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"}")]),m(` -`),a("span",{class:"line"}),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"public"),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," class"),a("span",{style:{"--shiki-dark":"#5DA994","--shiki-light":"#2E8F82"}}," ColonMovieFinder"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"{")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," String"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," filename"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},";")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," public"),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," void"),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," setFilename"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"String "),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"filename"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"){")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#C99076","--shiki-light":"#A65E2B"}}," this"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"filename"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," filename"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},";")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," }")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ...")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"}")])])],-1),Vh={__name:"21",setup(t){return F(Ft),P(),(e,s)=>{const i=Te;return D(),E(J,I(O(w(N)(w(Ft),20))),{default:M(()=>[Uh,qh,Wh,ee(i,Be({},{ranges:[]}),{default:M(()=>[zh]),_:1},16)]),_:1},16)}}},Yh=$(Vh,[["__file","/@slidev/slides/21.md"]]),Gh=["width","height"],Kh=["id"],Zh=["fill"],Xh=["x1","y1","x2","y2","stroke","stroke-width","marker-end"],Jh=Pe({__name:"Arrow",props:{x1:{type:[Number,String],required:!0},y1:{type:[Number,String],required:!0},x2:{type:[Number,String],required:!0},y2:{type:[Number,String],required:!0},width:{type:[Number,String],required:!1},color:{type:String,required:!1}},setup(t){const e=Ns();return(s,i)=>(D(),he("svg",{class:"absolute left-0 top-0 pointer-events-none",width:Math.max(+s.x1,+s.x2)+50,height:Math.max(+s.y1,+s.y2)+50},[a("defs",null,[a("marker",{id:w(e),markerUnits:"strokeWidth",markerWidth:10,markerHeight:7,refX:"9",refY:"3.5",orient:"auto"},[a("polygon",{points:"0 0, 10 3.5, 0 7",fill:s.color||"currentColor"},null,8,Zh)],8,Kh)]),a("line",{x1:+s.x1,y1:+s.y1,x2:+s.x2,y2:+s.y2,stroke:s.color||"currentColor","stroke-width":s.width||2,"marker-end":`url(#${w(e)})`},null,8,Xh)],8,Gh))}}),Qh=$(Jh,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/builtin/Arrow.vue"]]),Nt=b({}),tu=b({layout:p(()=>Nt.layout),transition:p(()=>Nt.transition),class:p(()=>Nt.class),clicks:p(()=>Nt.clicks),name:p(()=>Nt.name),preload:p(()=>Nt.preload),slide:{index:21,content:"",note:"",title:"Example: Setter Injection with Spring",level:1,noteHTML:"",raw:"",frontmatter:Nt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:335,id:21,no:22},__clicksContext:null,__preloaded:!1}),eu=a("h1",null,"Example: Setter Injection with Spring",-1),su=a("br",null,null,-1),iu=a("ol",{start:"2"},[a("li",null,"Describing the configuration(spring.xml)")],-1),nu=a("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[a("code",{class:"language-xml"},[a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"beans"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"bean"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," id"),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"="),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"MovieLister"),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"="),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"spring.MovieLister"),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"property"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," name"),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"="),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"finder"),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"ref"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," local"),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"="),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"MovieFinder"),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," />")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"bean"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," id"),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"="),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"MovieFinder"),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"="),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"spring.ColonMovieFinder"),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"property"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," name"),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"="),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"filename"),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"value"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"movies1.txt"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")])])],-1),au=a("p",null,[a("code",null,"bean"),m("与"),a("code",null,"component"),m("都是Spring管理的软件构件,我们在demo中看到的"),a("code",null,"controller"),m("是一种特殊的"),a("code",null,"component"),m("。")],-1),ru={__name:"22",setup(t){return F(Nt),P(),(e,s)=>{const i=Te,n=Qh,r=Yn("click");return D(),E(J,I(O(w(N)(w(Nt),21))),{default:M(()=>[eu,su,iu,ee(i,Be({},{ranges:["all","2,7"]}),{default:M(()=>[nu]),_:1},16),si(ee(n,{x1:"250",y1:"290",x2:"120",y2:"200",color:"#564",width:"3",arrowSize:"1"},null,512),[[r,1]]),si(ee(n,{x1:"250",y1:"370",x2:"120",y2:"280",color:"#564",width:"3",arrowSize:"1"},null,512),[[r,1]]),au]),_:1},16)}}},ou=$(ru,[["__file","/@slidev/slides/22.md"]]),lu="/sa2024/02-components/assets/02-wiring-CQw0Pt1P.png",jt=b({layout:"two-cols"}),cu=b({layout:p(()=>jt.layout),transition:p(()=>jt.transition),class:p(()=>jt.class),clicks:p(()=>jt.clicks),name:p(()=>jt.name),preload:p(()=>jt.preload),slide:{index:22,content:"",note:"",title:"Example: Setter Injection with Spring",level:1,noteHTML:"",raw:"",frontmatter:jt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:362,id:22,no:23},__clicksContext:null,__preloaded:!1}),hu=a("h1",null,"Example: Setter Injection with Spring",-1),uu=a("br",null,null,-1),du=a("ol",{start:"3"},[a("li",null,"Start the container")],-1),pu=a("br",null,null,-1),fu=a("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[a("code",{class:"language-java"},[a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"public"),a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," void"),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," testWithSpring"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"()"),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," throws Exception"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"{")]),m(` -`),a("span",{class:"line"}),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ApplicationContext"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," ctx"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),a("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}}," new"),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," FileSystemXmlApplicationContext"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"spring.xml"),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");")]),m(` -`),a("span",{class:"line"}),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," MovieLister"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," lister"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ("),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"MovieLister"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," ctx"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"getBean"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"MovieLister"),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," Movie"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"[]"),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," movies"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),a("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," lister"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"moviesDirectedBy"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"Sergio Leone"),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");")]),m(` -`),a("span",{class:"line"}),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," assertEquals"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"Once Upon a Time in the West"),a("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),a("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," movies"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"["),a("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}},"0"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"]."),a("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"getTitle"),a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"());")]),m(` -`),a("span",{class:"line"},[a("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"}")])])],-1),gu=a("br",null,null,-1),ku=a("div",{style:{"text-align":"right"}},"sa-spring/spring-bean",-1),mu=a("img",{src:lu,class:"m-20 h-50"},null,-1),yu=a("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1A7411F7Jh?p=5",-1),_u={__name:"23",setup(t){return F(jt),P(),(e,s)=>{const i=Te;return D(),E(Wt,I(O(w(N)(w(jt),22))),{right:M(n=>[mu,yu]),default:M(()=>[hu,uu,du,pu,ee(i,Be({},{ranges:[]}),{default:M(()=>[fu]),_:1},16),gu,ku]),_:1},16)}}},vu=$(_u,[["__file","/@slidev/slides/23.md"]]),Ht=b({layout:"two-cols"}),wu=b({layout:p(()=>Ht.layout),transition:p(()=>Ht.transition),class:p(()=>Ht.class),clicks:p(()=>Ht.clicks),name:p(()=>Ht.name),preload:p(()=>Ht.preload),slide:{index:23,content:"",note:"",title:"3 Types of Configuration Metadata",level:1,noteHTML:"",raw:"",frontmatter:Ht,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:397,id:23,no:24},__clicksContext:null,__preloaded:!1}),bu=a("h1",null,"3 Types of Configuration Metadata",-1),xu=a("ul",null,[a("li",null,"XML-based configuration"),a("li",null,"Annotation-based configuration"),a("li",null,"Java-based configuration")],-1),Au=a("img",{src:"https://www.plantuml.com/plantuml/png/XP0n3eCm34NtdC8NW0DqG23s3bMNZbOm42bDKEoe33ry3Q9IALAR8NBYbv__NRDWadptndfaXXPvlD3WM2WP5tJlqH9SSMxHs-nHOdgZZTvkzVcsrDkXcIRlB8gBeOqgCOinAmo5frwUrPVSybXxoGtZiMa-7K7HnKSeAjX3S8BCPCpnOoZpL5QxL0hRH2Z4F_ZLxNzGS-z1NJM5JkVv0W00",class:"m-10 h-60"},null,-1),Mu=a("div",{style:{"text-align":"right"}},"sa-spring/cashregister",-1),Cu={__name:"24",setup(t){return F(Ht),P(),(e,s)=>(D(),E(Wt,I(O(w(N)(w(Ht),23))),{right:M(i=>[Au,Mu]),default:M(()=>[bu,xu]),_:1},16))}},Su=$(Cu,[["__file","/@slidev/slides/24.md"]]),Rt=b({}),Du=b({layout:p(()=>Rt.layout),transition:p(()=>Rt.transition),class:p(()=>Rt.class),clicks:p(()=>Rt.clicks),name:p(()=>Rt.name),preload:p(()=>Rt.preload),slide:{index:24,content:"",note:"",title:"相关阅读",level:1,noteHTML:"",raw:"",frontmatter:Rt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:416,id:24,no:25},__clicksContext:null,__preloaded:!1}),$u=a("h1",null,"相关阅读",-1),Eu=a("br",null,null,-1),Pu=a("p",null,"Spring Core Technologies/ The IoC Container",-1),Bu=a("ul",null,[a("li",null,[a("a",{href:"https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/core.html",target:"_blank",rel:"noopener"},"https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/core.html")])],-1),Tu=a("p",null,"Spring 教程",-1),Lu=a("ul",null,[a("li",null,[a("a",{href:"https://wiki.jikexueyuan.com/project/spring/overview.html",target:"_blank",rel:"noopener"},"https://wiki.jikexueyuan.com/project/spring/overview.html")])],-1),Iu={__name:"25",setup(t){return F(Rt),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(Rt),24))),{default:M(()=>[$u,Eu,Pu,Bu,Tu,Lu]),_:1},16))}},Ou=$(Iu,[["__file","/@slidev/slides/25.md"]]),Ut=b({}),Fu=b({layout:p(()=>Ut.layout),transition:p(()=>Ut.transition),class:p(()=>Ut.class),clicks:p(()=>Ut.clicks),name:p(()=>Ut.name),preload:p(()=>Ut.preload),slide:{index:25,content:"",note:"",title:"小结",level:1,noteHTML:"",raw:"",frontmatter:Ut,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/02-components.md",start:429,id:25,no:26},__clicksContext:null,__preloaded:!1}),Nu=a("h1",null,"小结",-1),ju=a("ul",null,[a("li",null,"软件构件与构件化开发"),a("li",null,"Spring构件化开发演示"),a("li",null,"构件框架核心:反转控制/依赖注入"),a("li",null,"Spring bean/component")],-1),Hu={__name:"26",setup(t){return F(Ut),P(),(e,s)=>(D(),E(J,I(O(w(N)(w(Ut),25))),{default:M(()=>[Nu,ju]),_:1},16))}},Ru=$(Hu,[["__file","/@slidev/slides/26.md"]]),G=[{path:"1",name:"page-1",component:Ir,meta:Pr},{path:"2",name:"page-2",component:Vr,meta:jr},{path:"3",name:"page-3",component:so,meta:Kr},{path:"4",name:"page-4",component:po,meta:no},{path:"5",name:"page-5",component:wo,meta:go},{path:"6",name:"page-6",component:Do,meta:xo},{path:"7",name:"page-7",component:Io,meta:Eo},{path:"8",name:"page-8",component:Ro,meta:Fo},{path:"9",name:"page-9",component:Zo,meta:qo},{path:"10",name:"page-10",component:nl,meta:Jo},{path:"11",name:"page-11",component:hl,meta:rl},{path:"12",name:"page-12",component:wl,meta:dl},{path:"13",name:"page-13",component:Xc,meta:qc},{path:"14",name:"page-14",component:ih,meta:Jc},{path:"15",name:"page-15",component:lh,meta:nh},{path:"16",name:"page-16",component:gh,meta:ch},{path:"17",name:"page-17",component:bh,meta:kh},{path:"18",name:"page-18",component:Dh,meta:xh},{path:"19",name:"page-19",component:Th,meta:$h},{path:"20",name:"page-20",component:Hh,meta:Lh},{path:"21",name:"page-21",component:Yh,meta:Rh},{path:"22",name:"page-22",component:ou,meta:tu},{path:"23",name:"page-23",component:vu,meta:cu},{path:"24",name:"page-24",component:Su,meta:wu},{path:"25",name:"page-25",component:Ou,meta:Du},{path:"26",name:"page-26",component:Ru,meta:Fu}].map(Os),Uu=[].map(Os),Ue=[{name:"play",path:"/",component:()=>Se(()=>import("./slidev/play-BKT3702K.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])),children:[...G,...Uu]},{name:"print",path:"/print",component:()=>Se(()=>import("./slidev/print-CvNNiwvg.js"),__vite__mapDeps([11,1,4,9,3,6,7,12]))},{path:"",redirect:{path:"/1"}},{path:"/:pathMatch(.*)",redirect:{path:"/1"}}];{let t=function(e){if(!L.remote||L.remote===e.query.password)return!0;if(L.remote&&e.query.password===void 0){const s=prompt("Enter password");if(L.remote===s)return!0}return e.params.no?{path:`/${e.params.no}`}:{path:""}};Ue.push({path:"/presenter/print",component:()=>Se(()=>import("./slidev/print-CcBujRer.js"),__vite__mapDeps([13,1,14,15,3,6,7]))}),Ue.push({name:"presenter",path:"/presenter/:no",component:()=>Se(()=>import("./slidev/presenter-DXLsOkt_.js"),__vite__mapDeps([16,3,1,2,4,5,6,7,8,14,15,17,18,19])),beforeEnter:t}),Ue.push({path:"/presenter",redirect:{path:"/presenter/1"}})}const nt=Gn({history:Kn("/sa2024/02-components/"),routes:Ue}),ln=R(!1);function qu(t,e,{mode:s="replace"}={}){return p({get(){const i=nt.currentRoute.value.query[t];return i==null?e??null:Array.isArray(i)?i.filter(Boolean):i},set(i){Me(()=>{nt[w(s)]({query:{...nt.currentRoute.value.query,[t]:i}})})}})}var Wu=Object.defineProperty,gi=Object.getOwnPropertySymbols,zu=Object.prototype.hasOwnProperty,Vu=Object.prototype.propertyIsEnumerable,ki=(t,e,s)=>e in t?Wu(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,bs=(t,e)=>{for(var s in e||(e={}))zu.call(e,s)&&ki(t,s,e[s]);if(gi)for(var s of gi(e))Vu.call(e,s)&&ki(t,s,e[s]);return t},Yu=()=>({emit(t,...e){for(let s=0,i=this.events[t]||[],n=i.length;s{var i;this.events[t]=(i=this.events[t])==null?void 0:i.filter(n=>e!==n)}}});function mi(t,e,s,i=n=>n){return t*i(.5-e*(.5-s))}function Gu(t){return[-t[0],-t[1]]}function dt(t,e){return[t[0]+e[0],t[1]+e[1]]}function rt(t,e){return[t[0]-e[0],t[1]-e[1]]}function ut(t,e){return[t[0]*e,t[1]*e]}function Ku(t,e){return[t[0]/e,t[1]/e]}function me(t){return[t[1],-t[0]]}function yi(t,e){return t[0]*e[0]+t[1]*e[1]}function Zu(t,e){return t[0]===e[0]&&t[1]===e[1]}function Xu(t){return Math.hypot(t[0],t[1])}function Ju(t){return t[0]*t[0]+t[1]*t[1]}function _i(t,e){return Ju(rt(t,e))}function cn(t){return Ku(t,Xu(t))}function Qu(t,e){return Math.hypot(t[1]-e[1],t[0]-e[0])}function ye(t,e,s){let i=Math.sin(s),n=Math.cos(s),r=t[0]-e[0],o=t[1]-e[1],l=r*n-o*i,c=r*i+o*n;return[l+e[0],c+e[1]]}function xs(t,e,s){return dt(t,ut(rt(e,t),s))}function vi(t,e,s){return dt(t,ut(e,s))}var{min:oe,PI:td}=Math,wi=.275,_e=td+1e-4;function ed(t,e={}){let{size:s=16,smoothing:i=.5,thinning:n=.5,simulatePressure:r=!0,easing:o=S=>S,start:l={},end:c={},last:h=!1}=e,{cap:u=!0,easing:d=S=>S*(2-S)}=l,{cap:g=!0,easing:f=S=>--S*S*S+1}=c;if(t.length===0||s<=0)return[];let k=t[t.length-1].runningLength,y=l.taper===!1?0:l.taper===!0?Math.max(s,k):l.taper,_=c.taper===!1?0:c.taper===!0?Math.max(s,k):c.taper,v=Math.pow(s*i,2),A=[],C=[],U=t.slice(0,10).reduce((S,z)=>{let T=z.pressure;if(r){let j=oe(1,z.distance/s),as=oe(1,1-j);T=oe(1,S+(as-S)*(j*wi))}return(S+T)/2},t[0].pressure),H=mi(s,n,t[t.length-1].pressure,o),q,lt=t[0].vector,Y=t[0].point,st=Y,pt=Y,ft=st,Z=!1;for(let S=0;Sv)&&(A.push(pt),Y=pt),ft=dt(T,ti),(S<=1||_i(st,ft)>v)&&(C.push(ft),st=ft),U=z,lt=j}let B=t[0].point.slice(0,2),W=t.length>1?t[t.length-1].point.slice(0,2):dt(t[0].point,[1,1]),zt=[],ct=[];if(t.length===1){if(!(y||_)||h){let S=vi(B,cn(me(rt(B,W))),-(q||H)),z=[];for(let T=1/13,j=T;j<=1;j+=T)z.push(ye(S,B,_e*2*j));return z}}else{if(!(y||_&&t.length===1))if(u)for(let z=1/13,T=z;T<=1;T+=z){let j=ye(C[0],B,_e*T);zt.push(j)}else{let z=rt(A[0],C[0]),T=ut(z,.5),j=ut(z,.51);zt.push(rt(B,T),rt(B,j),dt(B,j),dt(B,T))}let S=me(Gu(t[t.length-1].vector));if(_||y&&t.length===1)ct.push(W);else if(g){let z=vi(W,S,H);for(let T=1/29,j=T;j<1;j+=T)ct.push(ye(z,W,_e*3*j))}else ct.push(dt(W,ut(S,H)),dt(W,ut(S,H*.99)),rt(W,ut(S,H*.99)),rt(W,ut(S,H)))}return A.concat(ct,C.reverse(),zt)}function sd(t,e={}){var s;let{streamline:i=.5,size:n=16,last:r=!1}=e;if(t.length===0)return[];let o=.15+(1-i)*.85,l=Array.isArray(t[0])?t:t.map(({x:f,y:k,pressure:y=.5})=>[f,k,y]);if(l.length===2){let f=l[1];l=l.slice(0,-1);for(let k=1;k<5;k++)l.push(xs(l[0],f,k/4))}l.length===1&&(l=[...l,[...dt(l[0],[1,1]),...l[0].slice(2)]]);let c=[{point:[l[0][0],l[0][1]],pressure:l[0][2]>=0?l[0][2]:.25,vector:[1,1],distance:0,runningLength:0}],h=!1,u=0,d=c[0],g=l.length-1;for(let f=1;f=0?l[f][2]:.5,vector:cn(rt(d.point,k)),distance:y,runningLength:u},c.push(d)}return c[0].vector=((s=c[1])==null?void 0:s.vector)||[0,0],c}function id(t,e={}){return ed(sd(t,e),e)}function Ye(t,e){return t-e}function nd(t){return t<0?-1:1}function Ge(t){return[Math.abs(t),nd(t)]}function hn(){const t=()=>((1+Math.random())*65536|0).toString(16).substring(1);return`${t()+t()}-${t()}-${t()}-${t()}-${t()}${t()}${t()}`}var ad=2,kt=ad,pe=class{constructor(t){this.drauu=t,this.event=void 0,this.point=void 0,this.start=void 0,this.el=null}onSelected(t){}onUnselected(){}onStart(t){}onMove(t){return!1}onEnd(t){}get brush(){return this.drauu.brush}get shiftPressed(){return this.drauu.shiftPressed}get altPressed(){return this.drauu.altPressed}get svgElement(){return this.drauu.el}getMousePosition(t){var e,s,i;const n=this.drauu.el,r=(e=this.drauu.options.coordinateScale)!=null?e:1,o=(s=this.drauu.options.offset)!=null?s:{x:0,y:0};if(this.drauu.options.coordinateTransform===!1){const l=this.drauu.el.getBoundingClientRect();return{x:(t.pageX-l.left+o.x)*r,y:(t.pageY-l.top+o.y)*r,pressure:t.pressure}}else{const l=this.drauu.svgPoint;l.x=t.clientX+o.x,l.y=t.clientY+o.y;const c=l.matrixTransform((i=n.getScreenCTM())==null?void 0:i.inverse());return{x:c.x*r,y:c.y*r,pressure:t.pressure}}}createElement(t,e){var s;const i=document.createElementNS("http://www.w3.org/2000/svg",t),n=e?bs(bs({},this.brush),e):this.brush;return i.setAttribute("fill",(s=n.fill)!=null?s:"transparent"),i.setAttribute("stroke",n.color),i.setAttribute("stroke-width",n.size.toString()),i.setAttribute("stroke-linecap","round"),n.dasharray&&i.setAttribute("stroke-dasharray",n.dasharray),i}attr(t,e){this.el.setAttribute(t,typeof e=="string"?e:e.toFixed(kt))}_setEvent(t){this.event=t,this.point=this.getMousePosition(t)}_eventDown(t){return this._setEvent(t),this.start=this.point,this.onStart(this.point)}_eventMove(t){return this._setEvent(t),this.onMove(this.point)}_eventUp(t){return this._setEvent(t),this.onEnd(this.point)}},rd=class un extends pe{constructor(){super(...arguments),this.points=[]}onStart(e){return this.el=document.createElementNS("http://www.w3.org/2000/svg","path"),this.points=[e],this.attr("fill",this.brush.color),this.attr("d",this.getSvgData(this.points)),this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&this.points.push(e),this.attr("d",this.getSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!!e}getSvgData(e){return un.getSvgData(e,this.brush)}static getSvgData(e,s){const i=id(e,bs({size:s.size,thinning:.9,simulatePressure:!1,start:{taper:5},end:{taper:5}},s.stylusOptions));if(!i.length)return"";const n=i.reduce((r,[o,l],c,h)=>{const[u,d]=h[(c+1)%h.length];return r.push(o,l,(o+u)/2,(l+d)/2),r},["M",...i[0],"Q"]);return n.push("Z"),n.map(r=>typeof r=="number"?r.toFixed(2):r).join(" ")}},od=class extends pe{onStart(t){return this.el=this.createElement("ellipse"),this.attr("cx",t.x),this.attr("cy",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=Ge(t.x-this.start.x),[i,n]=Ge(t.y-this.start.y);if(this.shiftPressed){const r=Math.min(e,i);e=r,i=r}if(this.altPressed)this.attr("cx",this.start.x),this.attr("cy",this.start.y),this.attr("rx",e),this.attr("ry",i);else{const[r,o]=[this.start.x,this.start.x+e*s].sort(Ye),[l,c]=[this.start.y,this.start.y+i*n].sort(Ye);this.attr("cx",(r+o)/2),this.attr("cy",(l+c)/2),this.attr("rx",(o-r)/2),this.attr("ry",(c-l)/2)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function dn(t,e){const s=document.createElementNS("http://www.w3.org/2000/svg","defs"),i=document.createElementNS("http://www.w3.org/2000/svg","marker"),n=document.createElementNS("http://www.w3.org/2000/svg","path");return n.setAttribute("fill",e),i.setAttribute("id",t),i.setAttribute("viewBox","0 -5 10 10"),i.setAttribute("refX","5"),i.setAttribute("refY","0"),i.setAttribute("markerWidth","4"),i.setAttribute("markerHeight","4"),i.setAttribute("orient","auto"),n.setAttribute("d","M0,-5L10,0L0,5"),i.appendChild(n),s.appendChild(i),s}var ld=class extends pe{onStart(t){if(this.el=this.createElement("line",{fill:"transparent"}),this.attr("x1",t.x),this.attr("y1",t.y),this.attr("x2",t.x),this.attr("y2",t.y),this.brush.arrowEnd){const e=hn(),s=document.createElementNS("http://www.w3.org/2000/svg","g");return s.append(dn(e,this.brush.color)),s.append(this.el),this.attr("marker-end",`url(#${e})`),s}return this.el}onMove(t){if(!this.el)return!1;let{x:e,y:s}=t;if(this.shiftPressed){const i=t.x-this.start.x,n=t.y-this.start.y;if(n!==0){let r=i/n;r=Math.round(r),Math.abs(r)<=1?(e=this.start.x+n*r,s=this.start.y+n):(e=this.start.x+i,s=this.start.y)}}return this.altPressed?(this.attr("x1",this.start.x*2-e),this.attr("y1",this.start.y*2-s),this.attr("x2",e),this.attr("y2",s)):(this.attr("x1",this.start.x),this.attr("y1",this.start.y),this.attr("x2",e),this.attr("y2",s)),!0}onEnd(){const t=this.el;return this.el=null,!(!t||t.getTotalLength()<5)}},cd=class extends pe{onStart(t){return this.el=this.createElement("rect"),this.brush.cornerRadius&&(this.attr("rx",this.brush.cornerRadius),this.attr("ry",this.brush.cornerRadius)),this.attr("x",t.x),this.attr("y",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=Ge(t.x-this.start.x),[i,n]=Ge(t.y-this.start.y);if(this.shiftPressed){const r=Math.min(e,i);e=r,i=r}if(this.altPressed)this.attr("x",this.start.x-e),this.attr("y",this.start.y-i),this.attr("width",e*2),this.attr("height",i*2);else{const[r,o]=[this.start.x,this.start.x+e*s].sort(Ye),[l,c]=[this.start.y,this.start.y+i*n].sort(Ye);this.attr("x",r),this.attr("y",l),this.attr("width",o-r),this.attr("height",c-l)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function hd(t,e){const s=t.x-e.x,i=t.y-e.y;return s*s+i*i}function ud(t,e,s){let i=e.x,n=e.y,r=s.x-i,o=s.y-n;if(r!==0||o!==0){const l=((t.x-i)*r+(t.y-n)*o)/(r*r+o*o);l>1?(i=s.x,n=s.y):l>0&&(i+=r*l,n+=o*l)}return r=t.x-i,o=t.y-n,r*r+o*o}function dd(t,e){let s=t[0];const i=[s];let n;for(let r=1,o=t.length;re&&(i.push(n),s=n);return s!==n&&n&&i.push(n),i}function As(t,e,s,i,n){let r=i,o=0;for(let l=e+1;lr&&(o=l,r=c)}r>i&&(o-e>1&&As(t,e,o,i,n),n.push(t[o]),s-o>1&&As(t,o,s,i,n))}function pd(t,e){const s=t.length-1,i=[t[0]];return As(t,0,s,e,i),i.push(t[s]),i}function bi(t,e,s=!1){if(t.length<=2)return t;const i=e!==void 0?e*e:1;return t=s?t:dd(t,i),t=pd(t,i),t}var fd=class Jt extends pe{constructor(){super(...arguments),this.points=[],this.count=0}onStart(e){if(this.el=this.createElement("path",{fill:"transparent"}),this.points=[e],this.brush.arrowEnd){this.arrowId=hn();const s=dn(this.arrowId,this.brush.color);this.el.appendChild(s)}return this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&(this.points.push(e),this.count+=1),this.count>5&&(this.points=bi(this.points,1,!0),this.count=0),this.attr("d",Jt.toSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!(!e||(e.setAttribute("d",Jt.toSvgData(bi(this.points,1,!0))),!e.getTotalLength()))}static line(e,s){const i=s.x-e.x,n=s.y-e.y;return{length:Math.sqrt(i**2+n**2),angle:Math.atan2(n,i)}}static controlPoint(e,s,i,n){const r=s||e,o=i||e,l=.2,c=Jt.line(r,o),h=c.angle+(n?Math.PI:0),u=c.length*l,d=e.x+Math.cos(h)*u,g=e.y+Math.sin(h)*u;return{x:d,y:g}}static bezierCommand(e,s,i){const n=Jt.controlPoint(i[s-1],i[s-2],e),r=Jt.controlPoint(e,i[s-1],i[s+1],!0);return`C ${n.x.toFixed(kt)},${n.y.toFixed(kt)} ${r.x.toFixed(kt)},${r.y.toFixed(kt)} ${e.x.toFixed(kt)},${e.y.toFixed(kt)}`}static toSvgData(e){return e.reduce((s,i,n,r)=>n===0?`M ${i.x.toFixed(kt)},${i.y.toFixed(kt)}`:`${s} ${Jt.bezierCommand(i,n,r)}`,"")}},gd=class extends pe{constructor(){super(...arguments),this.pathSubFactor=20,this.pathFragments=[],this._erased=[]}onSelected(t){const e=(s,i)=>{if(s&&s.length)for(let n=0;nt.forEach(e=>this.drauu._restoreNode(e)),redo:()=>t.forEach(e=>this.drauu._removeNode(e))}}checkAndEraseElement(){if(this.pathFragments.length)for(let t=0;t!this._erased.includes(t.element))),this._erased.length>0}lineLineIntersect(t,e){const s=t.x1,i=t.x2,n=e.x1,r=e.x2,o=t.y1,l=t.y2,c=e.y1,h=e.y2,u=(s-i)*(c-h)-(o-l)*(n-r),d=(s*l-o*i)*(n-r)-(s-i)*(n*h-c*r),g=(s*l-o*i)*(c-h)-(o-l)*(n*h-c*r),f=(k,y,_)=>k>=y&&k<=_?!0:k>=_&&k<=y;if(u===0)return!1;{const k={x:d/u,y:g/u};return f(k.x,s,i)&&f(k.y,o,l)&&f(k.x,n,r)&&f(k.y,c,h)}}};function kd(t){return{draw:new fd(t),stylus:new rd(t),line:new ld(t),rectangle:new cd(t),ellipse:new od(t),eraseLine:new gd(t)}}var md=class{constructor(t={}){this.options=t,this.el=null,this.svgPoint=null,this.eventEl=null,this.shiftPressed=!1,this.altPressed=!1,this.drawing=!1,this._emitter=Yu(),this._originalPointerId=null,this._models=kd(this),this._opStack=[],this._opIndex=0,this._disposables=[],this._elements=[],this.options.brush||(this.options.brush={color:"black",size:3,mode:"stylus"}),t.el&&this.mount(t.el,t.eventTarget,t.window)}get model(){return this._models[this.mode]}get mounted(){return!!this.el}get mode(){return this.options.brush.mode||"stylus"}set mode(t){this._models[this.mode].onUnselected(),this.options.brush.mode=t,this.model.onSelected(this.el)}get brush(){return this.options.brush}set brush(t){this.options.brush=t}resolveSelector(t){return typeof t=="string"?document.querySelector(t):t||null}mount(t,e,s=window){if(this.el)throw new Error("[drauu] already mounted, unmount previous target first");if(this.el=this.resolveSelector(t),!this.el)throw new Error("[drauu] target element not found");if(this.el.tagName.toLocaleLowerCase()!=="svg")throw new Error("[drauu] can only mount to a SVG element");if(!this.el.createSVGPoint)throw new Error("[drauu] SVG element must be create by document.createElementNS('http://www.w3.org/2000/svg', 'svg')");this.svgPoint=this.el.createSVGPoint();const i=this.resolveSelector(e)||this.el,n=this.eventStart.bind(this),r=this.eventMove.bind(this),o=this.eventEnd.bind(this),l=this.eventKeyboard.bind(this);i.addEventListener("pointerdown",n,{passive:!1}),s.addEventListener("pointermove",r,{passive:!1}),s.addEventListener("pointerup",o,{passive:!1}),s.addEventListener("pointercancel",o,{passive:!1}),s.addEventListener("keydown",l,!1),s.addEventListener("keyup",l,!1),this._disposables.push(()=>{i.removeEventListener("pointerdown",n),s.removeEventListener("pointermove",r),s.removeEventListener("pointerup",o),s.removeEventListener("pointercancel",o),s.removeEventListener("keydown",l,!1),s.removeEventListener("keyup",l,!1)}),this._emitter.emit("mounted")}unmount(){this._disposables.forEach(t=>t()),this._disposables.length=0,this._elements.length=0,this.el=null,this._emitter.emit("unmounted")}on(t,e){return this._emitter.on(t,e)}undo(){return!this.canUndo()||this.drawing?!1:(this._opStack[--this._opIndex].undo(),this._emitter.emit("changed"),!0)}redo(){return!this.canRedo()||this.drawing?!1:(this._opStack[this._opIndex++].redo(),this._emitter.emit("changed"),!0)}canRedo(){return this._opIndex0}eventMove(t){!this.acceptsInput(t)||!this.drawing||this.model._eventMove(t)&&(t.stopPropagation(),t.preventDefault(),this._emitter.emit("changed"))}eventStart(t){this.acceptsInput(t)&&(t.stopPropagation(),t.preventDefault(),this._currentNode&&this.cancel(),this.drawing=!0,this._originalPointerId=t.pointerId,this._emitter.emit("start"),this._currentNode=this.model._eventDown(t),this._currentNode&&this.mode!=="eraseLine"&&this.el.appendChild(this._currentNode),this._emitter.emit("changed"))}eventEnd(t){if(!this.acceptsInput(t)||!this.drawing)return;const e=this.model._eventUp(t);if(!e)this.cancel();else if(e===!0){const s=this._currentNode;this._appendNode(s),this.commit({undo:()=>this._removeNode(s),redo:()=>this._restoreNode(s)})}else this.commit(e);this.drawing=!1,this._emitter.emit("end"),this._emitter.emit("changed"),this._originalPointerId=null}acceptsInput(t){return(!this.options.acceptsInputTypes||this.options.acceptsInputTypes.includes(t.pointerType))&&!(this._originalPointerId&&this._originalPointerId!==t.pointerId)}eventKeyboard(t){this.shiftPressed===t.shiftKey&&this.altPressed===t.altKey||(this.shiftPressed=t.shiftKey,this.altPressed=t.altKey,this.model.point&&this.model.onMove(this.model.point)&&this._emitter.emit("changed"))}commit(t){this._opStack.length=this._opIndex,this._opStack.push(t),this._opIndex++;const e=this._currentNode;this._currentNode=void 0,this._emitter.emit("committed",e)}clear(){this._opStack.length=0,this._opIndex=0,this.cancel(),this.el.innerHTML="",this._emitter.emit("changed")}cancel(){this._currentNode&&(this.el.removeChild(this._currentNode),this._currentNode=void 0,this._emitter.emit("canceled"))}dump(){return this.el.innerHTML}load(t){this.clear(),this.el.innerHTML=t}_appendNode(t){const e=this._elements.at(-1);e?e.after(t):this.el.append(t);const s=this._elements.push(t)-1;t.dataset.drauu_index=s.toString()}_removeNode(t){t.remove(),this._elements[+t.dataset.drauu_index]=null}_restoreNode(t){const e=+t.dataset.drauu_index;this._elements[e]=t;for(let s=e-1;s>=0;s--){const i=this._elements[s];if(i){i.after(t);return}}this.el.prepend(t)}};function yd(t){return new md(t)}const Rp=R(!1),Up=R(!1),qp=R(!1),_d=R(!1),Wp=R(!0),zp=Zn({xs:460,...ea}),xi=Xn(),Vp=Jn(),Yp=p(()=>xi.height.value-xi.width.value/Vi>120),Gp=Qn(es?document.body:null),Ms=ta(),vd=p(()=>{var t,e;return["INPUT","TEXTAREA"].includes(((t=Ms.value)==null?void 0:t.tagName)||"")||((e=Ms.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),Kp=p(()=>{var t;return["BUTTON","A"].includes(((t=Ms.value)==null?void 0:t.tagName)||"")});et("slidev-camera","default",{listenToStorageChanges:!1});et("slidev-mic","default",{listenToStorageChanges:!1});const Zp=et("slidev-scale",0),Xp=et("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),Jp=et("slidev-show-editor",!1,{listenToStorageChanges:!1}),Qp=et("slidev-editor-vertical",!1,{listenToStorageChanges:!1});et("slidev-editor-width",es?window.innerWidth*.4:318,{listenToStorageChanges:!1});et("slidev-editor-height",es?window.innerHeight*.4:300,{listenToStorageChanges:!1});const Ke=et("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),Oe=et("slidev-presenter-layout",1,{listenToStorageChanges:!1});function tf(){Oe.value=Oe.value+1,Oe.value>2&&(Oe.value=1)}function ef(){Ke.value=Math.min(2,Ke.value+.1)}function sf(){Ke.value=Math.max(.5,Ke.value-.1)}const nf=Ni(_d),Cs=["#ff595e","#ffca3a","#8ac926","#1982c4","#6a4c93","#ffffff","#000000"],Ss=et("slidev-drawing-enabled",!1),af=et("slidev-drawing-pinned",!1),wd=R(!1),bd=R(!1),xd=R(!1),Ze=R(!1),Xe=sa(et("slidev-drawing-brush",{color:Cs[0],size:4,mode:"stylus"})),Ai=R("stylus"),pn=p(()=>L.drawings.syncAll||se.value);let $e=!1;const ve=p({get(){return Ai.value},set(t){Ai.value=t,t==="arrow"?(K.mode="line",Xe.arrowEnd=!0):(K.mode=t,Xe.arrowEnd=!1)}}),Ad=b({brush:Xe,acceptsInputTypes:p(()=>Ss.value&&(!L.drawings.presenterOnly||se.value)?void 0:["pen"]),coordinateTransform:!1}),K=Os(yd(Ad));function Md(){K.clear(),pn.value&&Ki(V.value,"")}function Us(){var t;bd.value=K.canRedo(),wd.value=K.canUndo(),xd.value=!!((t=K.el)!=null&&t.children.length)}function Cd(t){$e=!0;const e=Zi[t||V.value];e!=null?K.load(e):K.clear(),Us(),$e=!1}K.on("changed",()=>{if(Us(),!$e){const t=K.dump(),e=V.value;(Zi[e]||"")!==t&&pn.value&&Ki(e,K.dump())}});kr(t=>{$e=!0,t[V.value]!=null&&K.load(t[V.value]||""),$e=!1,Us()});Me(()=>{de(V,()=>{K.mounted&&Cd()},{immediate:!0})});K.on("start",()=>Ze.value=!0);K.on("end",()=>Ze.value=!1);window.addEventListener("keydown",t=>{if(!Ss.value||vd.value)return;const e=!t.ctrlKey&&!t.altKey&&!t.shiftKey&&!t.metaKey;let s=!0;t.code==="KeyZ"&&(t.ctrlKey||t.metaKey)?t.shiftKey?K.redo():K.undo():t.code==="Escape"?Ss.value=!1:t.code==="KeyL"&&e?ve.value="line":t.code==="KeyA"&&e?ve.value="arrow":t.code==="KeyS"&&e?ve.value="stylus":t.code==="KeyR"&&e?ve.value="rectangle":t.code==="KeyE"&&e?ve.value="ellipse":t.code==="KeyC"&&e?Md():t.code.startsWith("Digit")&&e&&+t.code[5]<=Cs.length?Xe.color=Cs[+t.code[5]-1]:s=!1,s&&(t.preventDefault(),t.stopPropagation())},!1);const Ds=R(0);Me(()=>{nt.afterEach(async()=>{await Me(),Ds.value+=1})});const fn=R(0),ss=R(0),gt=p(()=>nt.currentRoute.value),Sd=p(()=>gt.value.query.print!==void 0),Dd=p(()=>gt.value.query.print==="clicks"),rf=p(()=>gt.value.query.embedded!==void 0),se=p(()=>gt.value.path.startsWith("/presenter")),$d=p(()=>gt.value.path.startsWith("/notes")),Ed=p(()=>gt.value.query.password),of=p(()=>!se.value&&(!L.remote||Ed.value===L.remote)),Mi=qu("clicks","0"),ue=p({get(){if(Gt.value.disabled)return vs;let t=+(Mi.value||0);return Number.isNaN(t)&&(t=0),t},set(t){Mi.value=t.toString()}}),lf=p(()=>G.length),Pd=p(()=>gt.value.path),V=p(()=>Number.parseInt(Pd.value.split(/\//g).slice(-1)[0])||1);p(()=>is(V.value));const qt=p(()=>G.find(t=>t.path===`${V.value}`)),cf=p(()=>{var t,e,s;return(s=(e=(t=qt.value)==null?void 0:t.meta)==null?void 0:e.slide)==null?void 0:s.id});p(()=>{var t,e;return((e=(t=qt.value)==null?void 0:t.meta)==null?void 0:e.layout)||(V.value===1?"cover":"default")});const hf=p(()=>G.find(t=>t.path===`${Math.min(G.length,V.value+1)}`)),Bd=p(()=>G.find(t=>t.path===`${Math.max(1,V.value-1)}`)),Gt=p(()=>Ar(qt.value)),qs=p(()=>Gt.value.current),Ee=p(()=>Gt.value.total),uf=p(()=>V.valueV.value>1||qs.value>0),Td=p(()=>G.filter(t=>{var e,s;return(s=(e=t.meta)==null?void 0:e.slide)==null?void 0:s.title}).reduce((t,e)=>(Ys(t,e),t),[])),Ld=p(()=>Gs(Td.value,qt.value));p(()=>Ks(Ld.value));const pf=p(()=>jd(fn.value,qt.value,Bd.value));de(qt,(t,e)=>{fn.value=Number(t==null?void 0:t.path)-Number(e==null?void 0:e.path)});async function gn(){ss.value=1,Ee.value<=ue.value?await Ws():ue.value+=1}async function kn(){ss.value=-1,ue.value<=0?await zs():ue.value-=1}function is(t){return se.value?`/presenter/${t}`:`/${t}`}async function Ws(){ss.value=1,V.value.3||r>75?s.value==="left"?gn():kn():(o/window.innerHeight>.4||o>200)&&(s.value==="down"?zs():Ws())}})}async function Id(){const{saveAs:t}=await Se(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),__vite__mapDeps([]));t(typeof L.download=="string"?L.download:L.exportFilename?`${L.exportFilename}.pdf`:"/sa2024/02-components/slidev-exported.pdf",`${L.title}.pdf`)}async function Od(t){var e,s;if(t==null){const i=(s=(e=qt.value)==null?void 0:e.meta)==null?void 0:s.slide;if(!i)return!1;t=`${i.filepath}:${i.start}`}return await fetch(`/__open-in-editor?file=${encodeURIComponent(t)}`),!0}function Ys(t,e,s=1){var n,r,o,l,c,h,u;const i=(r=(n=e.meta)==null?void 0:n.slide)==null?void 0:r.level;i&&i>s&&t.length>0?Ys(t[t.length-1].children,e,s+1):t.push({children:[],level:s,path:e.path,hideInToc:!!((c=(l=(o=e.meta)==null?void 0:o.slide)==null?void 0:l.frontmatter)!=null&&c.hideInToc),title:(u=(h=e.meta)==null?void 0:h.slide)==null?void 0:u.title})}function Gs(t,e,s=!1,i){return t.map(n=>{const r={...n,active:n.path===(e==null?void 0:e.path),hasActiveParent:s};return r.children.length>0&&(r.children=Gs(r.children,e,r.active||r.hasActiveParent,r)),i&&(r.active||r.activeParent)&&(i.activeParent=!0),r})}function Ks(t,e=1){return t.filter(s=>!s.hideInToc).map(s=>({...s,children:Ks(s.children,e+1)}))}const Fd={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function Nd(t,e=!1){if(!t||(typeof t=="string"&&(t={name:t}),!t.name))return;let s=t.name.includes("|")?t.name:Fd[t.name]||t.name;if(s.includes("|")){const[i,n]=s.split("|").map(r=>r.trim());s=e?n:i}if(s)return{...t,name:s}}function jd(t,e,s){var n,r;let i=t>0?(n=s==null?void 0:s.meta)==null?void 0:n.transition:(r=e==null?void 0:e.meta)==null?void 0:r.transition;return i||(i=L.transition),Nd(i,t<0)}function Hd(){const t=L.titleTemplate.replace("%s",L.title||"Slidev");tr({title:t,htmlAttrs:L.htmlAttrs}),ur(`${t} - shared`),gr(`${t} - drawings`);const e=`${location.origin}_${Ns()}`;function s(){$d.value||!se.value&&!br.includes(location.host.split(":")[0])||(se.value?(ge("page",+V.value),ge("clicks",Gt.value.current)):(ge("viewerPage",+V.value),ge("viewerClicks",Gt.value.current)),ge("lastUpdate",{id:e,type:se.value?"presenter":"viewer",time:new Date().getTime()}))}nt.afterEach(s),de(Gt,s),dr(i=>{var r;nt.currentRoute.value.path.match(/^\/(\d+|presenter)\/?/)&&((r=i.lastUpdate)==null?void 0:r.type)==="presenter"&&(+i.page!=+V.value||+Gt.value.current!=+i.clicks)&&(ln.value=!1,nt.replace({path:is(i.page),query:{...nt.currentRoute.value.query,clicks:i.clicks||0}}))})}const Rd=Pe({__name:"App",setup(t){return Hd(),Kt(()=>{for(const[e,s]of Object.entries(lr.value))document.body.style.setProperty(e,s.toString())}),(e,s)=>{const i=aa("RouterView");return D(),E(i)}}}),Ud=$(Rd,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function qd(t){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e),t.app.use(ra),t.app.use(ua)}function mn(t,e,s){var i;return((i=t.instance)==null?void 0:i.$).provides[e]??s}function Wd(){return{install(t){t.directive("click",{name:"v-click",mounted(e,s){const i=qe(e,s,s.value);if(i==null)return;e.classList.toggle(xe,!0);const n=Array.isArray(i.clicks)?i.clicks:[i.clicks,void 0];e.dataset.slidevClicksStart=String(n[0]),n[1]!=null&&(e.dataset.slidevClicksEnd=String(n[1])),Kt(()=>{const r=i.isActive.value,o=i.isCurrent.value,l=r&&!o;i.flagHide?(e.classList.toggle(i.flagFade?ke:le,r),e.classList.toggle(cs,r)):e.classList.toggle(i.flagFade?ke:le,!r),e.classList.toggle(hs,o),e.classList.toggle(us,l)})},unmounted:ps}),t.directive("after",{name:"v-after",mounted(e,s){const i=qe(e,s,s.value,!0);i!=null&&(e.classList.toggle(xe,!0),Kt(()=>{const n=i.isActive.value,r=i.isCurrent.value,o=n&&!r;i.flagHide?(e.classList.toggle(i.flagFade?ke:le,n),e.classList.toggle(cs,n)):e.classList.toggle(i.flagFade?ke:le,!n),e.classList.toggle(hs,r),e.classList.toggle(us,o)}))},unmounted:ps}),t.directive("click-hide",{name:"v-click-hide",mounted(e,s){const i=qe(e,s,s.value,!1,!0);i!=null&&(e.classList.toggle(xe,!0),Kt(()=>{const n=i.isActive.value,r=i.isCurrent.value,o=n&&!r;e.classList.toggle(i.flagFade?ke:le,n),e.classList.toggle(cs,n),e.classList.toggle(hs,r),e.classList.toggle(us,o)}))},unmounted:ps})}}}function ds(t,e){return Array.isArray(t)?t[0]<=e&&eds(c,r.current)),isCurrent:p(()=>zd(c,r.current)),isShown:p(()=>n?!ds(c,r.current):ds(c,r.current)),flagFade:o,flagHide:n};return r.register(t,u),u}function ps(t,e){var i;t.classList.toggle(xe,!1);const s=(i=mn(e,js))==null?void 0:i.value;s==null||s.unregister(t)}function yn(){return Math.floor(Math.random()*2**31)}class Vd{constructor(e){this.seed=e}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}}function $s(t,e,s){if(t&&t.length){const[i,n]=e,r=Math.PI/180*s,o=Math.cos(r),l=Math.sin(r);for(const c of t){const[h,u]=c;c[0]=(h-i)*o-(u-n)*l+i,c[1]=(h-i)*l+(u-n)*o+n}}}function Yd(t,e,s){const i=[];t.forEach(n=>i.push(...n)),$s(i,e,s)}function Gd(t,e){return t[0]===e[0]&&t[1]===e[1]}function Kd(t,e,s,i=1){const n=s,r=Math.max(e,.1),o=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,l=[0,0];if(n)for(const h of o)$s(h,l,n);const c=Zd(o,r,i);if(n){for(const h of o)$s(h,l,-n);Yd(c,l,-n)}return c}function Zd(t,e,s){const i=[];for(const h of t){const u=[...h];Gd(u[0],u[u.length-1])||u.push([u[0][0],u[0][1]]),u.length>2&&i.push(u)}const n=[];e=Math.max(e,.1);const r=[];for(const h of i)for(let u=0;uh.yminu.ymin?1:h.xu.x?1:h.ymax===u.ymax?0:(h.ymax-u.ymax)/Math.abs(h.ymax-u.ymax)),!r.length)return n;let o=[],l=r[0].ymin,c=0;for(;o.length||r.length;){if(r.length){let h=-1;for(let d=0;dl);d++)h=d;r.splice(0,h+1).forEach(d=>{o.push({s:l,edge:d})})}if(o=o.filter(h=>!(h.edge.ymax<=l)),o.sort((h,u)=>h.edge.x===u.edge.x?0:(h.edge.x-u.edge.x)/Math.abs(h.edge.x-u.edge.x)),(s!==1||c%e===0)&&o.length>1)for(let h=0;h=o.length)break;const d=o[h].edge,g=o[u].edge;n.push([[Math.round(d.x),l],[Math.round(g.x),l]])}l+=s,o.forEach(h=>{h.edge.x=h.edge.x+s*h.edge.islope}),c++}return n}function Le(t,e){var s;const i=e.hachureAngle+90;let n=e.hachureGap;n<0&&(n=e.strokeWidth*4),n=Math.round(Math.max(n,.1));let r=1;return e.roughness>=1&&(((s=e.randomizer)===null||s===void 0?void 0:s.next())||Math.random())>.7&&(r=n),Kd(t,n,i,r||1)}class Zs{constructor(e){this.helper=e}fillPolygons(e,s){return this._fillPolygons(e,s)}_fillPolygons(e,s){const i=Le(e,s);return{type:"fillSketch",ops:this.renderLines(i,s)}}renderLines(e,s){const i=[];for(const n of e)i.push(...this.helper.doubleLineOps(n[0][0],n[0][1],n[1][0],n[1][1],s));return i}}function ns(t){const e=t[0],s=t[1];return Math.sqrt(Math.pow(e[0]-s[0],2)+Math.pow(e[1]-s[1],2))}class Xd extends Zs{fillPolygons(e,s){let i=s.hachureGap;i<0&&(i=s.strokeWidth*4),i=Math.max(i,.1);const n=Object.assign({},s,{hachureGap:i}),r=Le(e,n),o=Math.PI/180*s.hachureAngle,l=[],c=i*.5*Math.cos(o),h=i*.5*Math.sin(o);for(const[d,g]of r)ns([d,g])&&l.push([[d[0]-c,d[1]+h],[...g]],[[d[0]+c,d[1]-h],[...g]]);return{type:"fillSketch",ops:this.renderLines(l,s)}}}class Jd extends Zs{fillPolygons(e,s){const i=this._fillPolygons(e,s),n=Object.assign({},s,{hachureAngle:s.hachureAngle+90}),r=this._fillPolygons(e,n);return i.ops=i.ops.concat(r.ops),i}}class Qd{constructor(e){this.helper=e}fillPolygons(e,s){s=Object.assign({},s,{hachureAngle:0});const i=Le(e,s);return this.dotsOnLines(i,s)}dotsOnLines(e,s){const i=[];let n=s.hachureGap;n<0&&(n=s.strokeWidth*4),n=Math.max(n,.1);let r=s.fillWeight;r<0&&(r=s.strokeWidth/2);const o=n/4;for(const l of e){const c=ns(l),h=c/n,u=Math.ceil(h)-1,d=c-u*n,g=(l[0][0]+l[1][0])/2-n/4,f=Math.min(l[0][1],l[1][1]);for(let k=0;k{const l=ns(o),c=Math.floor(l/(i+n)),h=(l+n-c*(i+n))/2;let u=o[0],d=o[1];u[0]>d[0]&&(u=o[1],d=o[0]);const g=Math.atan((d[1]-u[1])/(d[0]-u[0]));for(let f=0;f{const o=ns(r),l=Math.round(o/(2*s));let c=r[0],h=r[1];c[0]>h[0]&&(c=r[1],h=r[0]);const u=Math.atan((h[1]-c[1])/(h[0]-c[0]));for(let d=0;du%2?h+s:h+e);r.push({key:"C",data:c}),e=c[4],s=c[5];break}case"Q":r.push({key:"Q",data:[...l]}),e=l[2],s=l[3];break;case"q":{const c=l.map((h,u)=>u%2?h+s:h+e);r.push({key:"Q",data:c}),e=c[2],s=c[3];break}case"A":r.push({key:"A",data:[...l]}),e=l[5],s=l[6];break;case"a":e+=l[5],s+=l[6],r.push({key:"A",data:[l[0],l[1],l[2],l[3],l[4],e,s]});break;case"H":r.push({key:"H",data:[...l]}),e=l[0];break;case"h":e+=l[0],r.push({key:"H",data:[e]});break;case"V":r.push({key:"V",data:[...l]}),s=l[0];break;case"v":s+=l[0],r.push({key:"V",data:[s]});break;case"S":r.push({key:"S",data:[...l]}),e=l[2],s=l[3];break;case"s":{const c=l.map((h,u)=>u%2?h+s:h+e);r.push({key:"S",data:c}),e=c[2],s=c[3];break}case"T":r.push({key:"T",data:[...l]}),e=l[0],s=l[1];break;case"t":e+=l[0],s+=l[1],r.push({key:"T",data:[e,s]});break;case"Z":case"z":r.push({key:"Z",data:[]}),e=i,s=n;break}return r}function wn(t){const e=[];let s="",i=0,n=0,r=0,o=0,l=0,c=0;for(const{key:h,data:u}of t){switch(h){case"M":e.push({key:"M",data:[...u]}),[i,n]=u,[r,o]=u;break;case"C":e.push({key:"C",data:[...u]}),i=u[4],n=u[5],l=u[2],c=u[3];break;case"L":e.push({key:"L",data:[...u]}),[i,n]=u;break;case"H":i=u[0],e.push({key:"L",data:[i,n]});break;case"V":n=u[0],e.push({key:"L",data:[i,n]});break;case"S":{let d=0,g=0;s==="C"||s==="S"?(d=i+(i-l),g=n+(n-c)):(d=i,g=n),e.push({key:"C",data:[d,g,...u]}),l=u[0],c=u[1],i=u[2],n=u[3];break}case"T":{const[d,g]=u;let f=0,k=0;s==="Q"||s==="T"?(f=i+(i-l),k=n+(n-c)):(f=i,k=n);const y=i+2*(f-i)/3,_=n+2*(k-n)/3,v=d+2*(f-d)/3,A=g+2*(k-g)/3;e.push({key:"C",data:[y,_,v,A,d,g]}),l=f,c=k,i=d,n=g;break}case"Q":{const[d,g,f,k]=u,y=i+2*(d-i)/3,_=n+2*(g-n)/3,v=f+2*(d-f)/3,A=k+2*(g-k)/3;e.push({key:"C",data:[y,_,v,A,f,k]}),l=d,c=g,i=f,n=k;break}case"A":{const d=Math.abs(u[0]),g=Math.abs(u[1]),f=u[2],k=u[3],y=u[4],_=u[5],v=u[6];d===0||g===0?(e.push({key:"C",data:[i,n,_,v,_,v]}),i=_,n=v):(i!==_||n!==v)&&(bn(i,n,_,v,d,g,f,k,y).forEach(function(C){e.push({key:"C",data:C})}),i=_,n=v);break}case"Z":e.push({key:"Z",data:[]}),i=r,n=o;break}s=h}return e}function ap(t){return Math.PI*t/180}function we(t,e,s){const i=t*Math.cos(s)-e*Math.sin(s),n=t*Math.sin(s)+e*Math.cos(s);return[i,n]}function bn(t,e,s,i,n,r,o,l,c,h){const u=ap(o);let d=[],g=0,f=0,k=0,y=0;if(h)[g,f,k,y]=h;else{[t,e]=we(t,e,-u),[s,i]=we(s,i,-u);const Z=(t-s)/2,B=(e-i)/2;let W=Z*Z/(n*n)+B*B/(r*r);W>1&&(W=Math.sqrt(W),n=W*n,r=W*r);const zt=l===c?-1:1,ct=n*n,S=r*r,z=ct*S-ct*B*B-S*Z*Z,T=ct*B*B+S*Z*Z,j=zt*Math.sqrt(Math.abs(z/T));k=j*n*B/r+(t+s)/2,y=j*-r*Z/n+(e+i)/2,g=Math.asin(parseFloat(((e-y)/r).toFixed(9))),f=Math.asin(parseFloat(((i-y)/r).toFixed(9))),tf&&(g=g-Math.PI*2),!c&&f>g&&(f=f-Math.PI*2)}let _=f-g;if(Math.abs(_)>Math.PI*120/180){const Z=f,B=s,W=i;c&&f>g?f=g+Math.PI*120/180*1:f=g+Math.PI*120/180*-1,s=k+n*Math.cos(f),i=y+r*Math.sin(f),d=bn(s,i,B,W,n,r,o,0,c,[f,Z,k,y])}_=f-g;const v=Math.cos(g),A=Math.sin(g),C=Math.cos(f),U=Math.sin(f),H=Math.tan(_/4),q=4/3*n*H,lt=4/3*r*H,Y=[t,e],st=[t+q*A,e-lt*v],pt=[s+q*U,i-lt*C],ft=[s,i];if(st[0]=2*Y[0]-st[0],st[1]=2*Y[1]-st[1],h)return[st,pt,ft].concat(d);{d=[st,pt,ft].concat(d);const Z=[];for(let B=0;B2){const n=[];for(let r=0;rMath.PI*2&&(f=0,k=Math.PI*2);const y=Math.PI*2/c.curveStepCount,_=Math.min(y/2,(k-f)/2),v=Pi(_,h,u,d,g,f,k,1,c);if(!c.disableMultiStroke){const A=Pi(_,h,u,d,g,f,k,1.5,c);v.push(...A)}return o&&(l?v.push(...Zt(h,u,h+d*Math.cos(f),u+g*Math.sin(f),c),...Zt(h,u,h+d*Math.cos(k),u+g*Math.sin(k),c)):v.push({op:"lineTo",data:[h,u]},{op:"lineTo",data:[h+d*Math.cos(f),u+g*Math.sin(f)]})),{type:"path",ops:v}}function Di(t,e){const s=wn(vn(Xs(t))),i=[];let n=[0,0],r=[0,0];for(const{key:o,data:l}of s)switch(o){case"M":{r=[l[0],l[1]],n=[l[0],l[1]];break}case"L":i.push(...Zt(r[0],r[1],l[0],l[1],e)),r=[l[0],l[1]];break;case"C":{const[c,h,u,d,g,f]=l;i.push(...dp(c,h,u,d,g,f,r,e)),r=[g,f];break}case"Z":i.push(...Zt(r[0],r[1],n[0],n[1],e)),r=[n[0],n[1]];break}return{type:"path",ops:i}}function gs(t,e){const s=[];for(const i of t)if(i.length){const n=e.maxRandomnessOffset||0,r=i.length;if(r>2){s.push({op:"move",data:[i[0][0]+x(n,e),i[0][1]+x(n,e)]});for(let o=1;oMath.PI*2&&(d=0,g=Math.PI*2);const f=(g-d)/o.curveStepCount,k=[];for(let y=d;y<=g;y=y+f)k.push([l+h*Math.cos(y),c+u*Math.sin(y)]);return k.push([l+h*Math.cos(g),c+u*Math.sin(g)]),k.push([l,c]),ce([k],o)}function cp(t,e){return x(t,e)}function hp(t,e,s){return Je(t,e,s)}function up(t,e,s,i,n){return Zt(t,e,s,i,n,!0)}function $i(t){const e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function Mn(t){return t.randomizer||(t.randomizer=new Vd(t.seed||0)),t.randomizer.next()}function Je(t,e,s,i=1){return s.roughness*i*(Mn(s)*(e-t)+t)}function x(t,e,s=1){return Je(-t,t,e,s)}function Zt(t,e,s,i,n,r=!1){const o=r?n.disableMultiStrokeFill:n.disableMultiStroke,l=Ts(t,e,s,i,n,!0,!1);if(o)return l;const c=Ts(t,e,s,i,n,!0,!0);return l.concat(c)}function Ts(t,e,s,i,n,r,o){const l=Math.pow(t-s,2)+Math.pow(e-i,2),c=Math.sqrt(l);let h=1;c<200?h=1:c>500?h=.4:h=-.0016668*c+1.233334;let u=n.maxRandomnessOffset||0;u*u*100>l&&(u=c/10);const d=u/2,g=.2+Mn(n)*.2;let f=n.bowing*n.maxRandomnessOffset*(i-e)/200,k=n.bowing*n.maxRandomnessOffset*(t-s)/200;f=x(f,n,h),k=x(k,n,h);const y=[],_=()=>x(d,n,h),v=()=>x(u,n,h),A=n.preserveVertices;return r&&(o?y.push({op:"move",data:[t+(A?0:_()),e+(A?0:_())]}):y.push({op:"move",data:[t+(A?0:x(u,n,h)),e+(A?0:x(u,n,h))]})),o?y.push({op:"bcurveTo",data:[f+t+(s-t)*g+_(),k+e+(i-e)*g+_(),f+t+2*(s-t)*g+_(),k+e+2*(i-e)*g+_(),s+(A?0:_()),i+(A?0:_())]}):y.push({op:"bcurveTo",data:[f+t+(s-t)*g+v(),k+e+(i-e)*g+v(),f+t+2*(s-t)*g+v(),k+e+2*(i-e)*g+v(),s+(A?0:v()),i+(A?0:v())]}),y}function Ne(t,e,s){if(!t.length)return[];const i=[];i.push([t[0][0]+x(e,s),t[0][1]+x(e,s)]),i.push([t[0][0]+x(e,s),t[0][1]+x(e,s)]);for(let n=1;n3){const r=[],o=1-s.curveTightness;n.push({op:"move",data:[t[1][0],t[1][1]]});for(let l=1;l+21&&n.push(r):n.push(r),n.push(t[e+3])}else{const o=t[e+0],l=t[e+1],c=t[e+2],h=t[e+3],u=Qt(o,l,.5),d=Qt(l,c,.5),g=Qt(c,h,.5),f=Qt(u,d,.5),k=Qt(d,g,.5),y=Qt(f,k,.5);Ls([o,u,f,y],0,s,n),Ls([y,k,g,h],0,s,n)}return n}function kp(t,e){return ts(t,0,t.length,e)}function ts(t,e,s,i,n){const r=n||[],o=t[e],l=t[s-1];let c=0,h=1;for(let u=e+1;uc&&(c=d,h=u)}return Math.sqrt(c)>i?(ts(t,e,h+1,i,r),ts(t,h,s,i,r)):(r.length||r.push(o),r.push(l)),r}function Is(t,e=.15,s){const i=[],n=(t.length-1)/3;for(let r=0;r0?ts(i,0,i.length,s):i}function mp(t,e,s){const i=Xs(t),n=wn(vn(i)),r=[];let o=[],l=[0,0],c=[];const h=()=>{c.length>=4&&o.push(...Is(c,e)),c=[]},u=()=>{h(),o.length&&(r.push(o),o=[])};for(const{key:g,data:f}of n)switch(g){case"M":u(),l=[f[0],f[1]],o.push(l);break;case"L":h(),o.push([f[0],f[1]]);break;case"C":if(!c.length){const k=o.length?o[o.length-1]:l;c.push([k[0],k[1]])}c.push([f[0],f[1]]),c.push([f[2],f[3]]),c.push([f[4],f[5]]);break;case"Z":h(),o.push([l[0],l[1]]);break}if(u(),!s)return r;const d=[];for(const g of r){const f=kp(g,s);f.length&&d.push(f)}return d}const it="none";class yp{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return yn()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,s,i){return{shape:e,sets:s||[],options:i||this.defaultOptions}}line(e,s,i,n,r){const o=this._o(r);return this._d("line",[at(e,s,i,n,o)],o)}rectangle(e,s,i,n,r){const o=this._o(r),l=[],c=xn(e,s,i,n,o);if(o.fill){const h=[[e,s],[e+i,s],[e+i,s+n],[e,s+n]];o.fillStyle==="solid"?l.push(gs([h],o)):l.push(ce([h],o))}return o.stroke!==it&&l.push(c),this._d("rectangle",l,o)}ellipse(e,s,i,n,r){const o=this._o(r),l=[],c=An(i,n,o),h=Bs(e,s,o,c);if(o.fill)if(o.fillStyle==="solid"){const u=Bs(e,s,o,c).opset;u.type="fillPath",l.push(u)}else l.push(ce([h.estimatedPoints],o));return o.stroke!==it&&l.push(h.opset),this._d("ellipse",l,o)}circle(e,s,i,n){const r=this.ellipse(e,s,i,i,n);return r.shape="circle",r}linearPath(e,s){const i=this._o(s);return this._d("linearPath",[Ae(e,!1,i)],i)}arc(e,s,i,n,r,o,l=!1,c){const h=this._o(c),u=[],d=Si(e,s,i,n,r,o,l,!0,h);if(l&&h.fill)if(h.fillStyle==="solid"){const g=Object.assign({},h);g.disableMultiStroke=!0;const f=Si(e,s,i,n,r,o,!0,!1,g);f.type="fillPath",u.push(f)}else u.push(lp(e,s,i,n,r,o,h));return h.stroke!==it&&u.push(d),this._d("arc",u,h)}curve(e,s){const i=this._o(s),n=[],r=Ci(e,i);if(i.fill&&i.fill!==it)if(i.fillStyle==="solid"){const o=Ci(e,Object.assign(Object.assign({},i),{disableMultiStroke:!0,roughness:i.roughness?i.roughness+i.fillShapeRoughnessGain:0}));n.push({type:"fillPath",ops:this._mergedShape(o.ops)})}else{const o=[],l=e;if(l.length){const h=typeof l[0][0]=="number"?[l]:l;for(const u of h)u.length<3?o.push(...u):u.length===3?o.push(...Is(Bi([u[0],u[0],u[1],u[2]]),10,(1+i.roughness)/2)):o.push(...Is(Bi(u),10,(1+i.roughness)/2))}o.length&&n.push(ce([o],i))}return i.stroke!==it&&n.push(r),this._d("curve",n,i)}polygon(e,s){const i=this._o(s),n=[],r=Ae(e,!0,i);return i.fill&&(i.fillStyle==="solid"?n.push(gs([e],i)):n.push(ce([e],i))),i.stroke!==it&&n.push(r),this._d("polygon",n,i)}path(e,s){const i=this._o(s),n=[];if(!e)return this._d("path",n,i);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const r=i.fill&&i.fill!=="transparent"&&i.fill!==it,o=i.stroke!==it,l=!!(i.simplification&&i.simplification<1),c=l?4-4*(i.simplification||1):(1+i.roughness)/2,h=mp(e,1,c),u=Di(e,i);if(r)if(i.fillStyle==="solid")if(h.length===1){const d=Di(e,Object.assign(Object.assign({},i),{disableMultiStroke:!0,roughness:i.roughness?i.roughness+i.fillShapeRoughnessGain:0}));n.push({type:"fillPath",ops:this._mergedShape(d.ops)})}else n.push(gs(h,i));else n.push(ce(h,i));return o&&(l?h.forEach(d=>{n.push(Ae(d,!1,i))}):n.push(u)),this._d("path",n,i)}opsToPath(e,s){let i="";for(const n of e.ops){const r=typeof s=="number"&&s>=0?n.data.map(o=>+o.toFixed(s)):n.data;switch(n.op){case"move":i+=`M${r[0]} ${r[1]} `;break;case"bcurveTo":i+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":i+=`L${r[0]} ${r[1]} `;break}}return i.trim()}toPaths(e){const s=e.sets||[],i=e.options||this.defaultOptions,n=[];for(const r of s){let o=null;switch(r.type){case"path":o={d:this.opsToPath(r),stroke:i.stroke,strokeWidth:i.strokeWidth,fill:it};break;case"fillPath":o={d:this.opsToPath(r),stroke:it,strokeWidth:0,fill:i.fill||it};break;case"fillSketch":o=this.fillSketch(r,i);break}o&&n.push(o)}return n}fillSketch(e,s){let i=s.fillWeight;return i<0&&(i=s.strokeWidth/2),{d:this.opsToPath(e),stroke:s.fill||it,strokeWidth:i,fill:it}}_mergedShape(e){return e.filter((s,i)=>i===0?!0:s.op!=="move")}}const Cn="http://www.w3.org/2000/svg",_p=800;let ks=null;function vp(){return ks||(ks=new yp().defaultOptions),ks}function ms(t,e,s){return{...vp(),maxRandomnessOffset:2,roughness:t==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:t!=="double",disableMultiStrokeFill:!1,seed:e,...s}}function wp(t){const e=t.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const s=e;if(s.length)switch(s.length){case 4:return[...s];case 1:return[s[0],s[0],s[0],s[0]];case 2:return[...s,...s];case 3:return[...s,s[1]];default:return[s[0],s[1],s[2],s[3]]}}}return[5,5,5,5]}function bp(t,e,s,i,n,r){const o=[];let l=s.strokeWidth||2;const c=wp(s),h=s.animate===void 0?!0:!!s.animate,u=s.iterations||2,d=s.rtl?1:0,g=ms("single",r,s);switch(s.type){case"underline":{const f=e.y+e.h+c[2];for(let k=d;kA.setAttribute(C,U);for(const A of f){const C=document.createElementNS(Cn,"path");if(v(C,"d",A),v(C,"fill","none"),v(C,"stroke",s.color||"currentColor"),v(C,"stroke-width",`${l}`),s.opacity!==void 0&&v(C,"style",`opacity:${s.opacity}`),h){const U=C.getTotalLength();k.push(U),_+=U}t.appendChild(C),y.push(C)}if(h){let A=0;for(let C=0;CsetTimeout(e,t))}function xp(t){const e=[];for(const s of t){let i="";for(const n of s.ops){const r=n.data;switch(n.op){case"move":i.trim()&&e.push(i.trim()),i=`M${r[0]} ${r[1]} `;break;case"bcurveTo":i+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":i+=`L${r[0]} ${r[1]} `;break}}i.trim()&&e.push(i.trim())}return e}function Ap(){if(!window.__rno_kf_s){const t=window.__rno_kf_s=document.createElement("style");t.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(t)}}var Mp=Object.defineProperty,Cp=(t,e,s)=>e in t?Mp(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,ht=(t,e,s)=>(Cp(t,typeof e!="symbol"?e+"":e,s),s);class Sp{constructor(e,s){ht(this,"_state","unattached"),ht(this,"_config"),ht(this,"_resizing",!1),ht(this,"_ro"),ht(this,"_seed",yn()),ht(this,"_e"),ht(this,"_svg"),ht(this,"_lastSizes",[]),ht(this,"_animationDelay",0),ht(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),ht(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(s)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,s){this._config[e]!==s&&(this._config[e]=s,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){Ap();const e=this._svg=document.createElementNS(Cn,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const s=e.style;s.position="absolute",s.top="0",s.left="0",s.overflow="visible",s.pointerEvents="none",s.width="100px",s.height="100px";const i=this._config.type==="highlight";if(this._e.insertAdjacentElement(i?"beforebegin":"afterend",e),this._state="not-showing",i){const n=window.getComputedStyle(this._e).position;(!n||n==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const s of e)s.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let s=0;sMath.round(n)===Math.round(r);return i(e.x,s.x)&&i(e.y,s.y)&&i(e.w,s.w)&&i(e.h,s.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,s){let i=this._config;s&&(i=JSON.parse(JSON.stringify(this._config)),i.animate=!1);const n=this.rects();let r=0;n.forEach(h=>r+=h.w);const o=i.animationDuration||_p;let l=0;const c=[];for(let h=0;hObject.assign(t,{type:"box"}),circle:t=>Object.assign(t,{type:"circle"}),underline:t=>Object.assign(t,{type:"underline"}),highlight:t=>Object.assign(t,{type:"highlight"}),"strike-through":t=>Object.assign(t,{type:"strike-through"}),"crossed-off":t=>Object.assign(t,{type:"crossed-off"}),bracket:t=>Object.assign(t,{type:"bracket"}),strike:t=>Object.assign(t,{type:"strike-through"}),cross:t=>Object.assign(t,{type:"crossed-off"}),crossed:t=>Object.assign(t,{type:"crossed-off"}),linethrough:t=>Object.assign(t,{type:"strike-through"}),"line-through":t=>Object.assign(t,{type:"strike-through"}),black:t=>tt(t,"text-black"),blue:t=>tt(t,"text-blue"),cyan:t=>tt(t,"text-cyan"),gray:t=>tt(t,"text-gray"),green:t=>tt(t,"text-green"),indigo:t=>tt(t,"text-indigo"),lime:t=>tt(t,"text-lime"),orange:t=>tt(t,"text-orange"),pink:t=>tt(t,"text-pink"),purple:t=>tt(t,"text-purple"),red:t=>tt(t,"text-red"),teal:t=>tt(t,"text-teal"),white:t=>tt(t,"text-white"),yellow:t=>tt(t,"text-yellow")},$p=[[/^delay-?(\d+)?$/,(t,e,s)=>{const i=(t[1]?Number.parseInt(t[1]):s)||300;return e.delay=i,e}],[/^(?:op|opacity)-?(\d+)?$/,(t,e,s)=>{const i=(t[1]?Number.parseInt(t[1]):s)||100;return e.opacity=i/100,e}]];function Ep(){return{install(t){t.directive("mark",{name:"v-mark",mounted:(e,s)=>{const i=p(()=>{const o=typeof s.value=="object"&&!Array.isArray(s.value)?{...s.value}:{at:s.value};let l={at:o.at};const c=Object.entries(s.modifiers).filter(([u,d])=>{if(Li[u])return l=Li[u](l,d),!1;for(const[g,f]of $p){const k=u.match(g);if(k)return l=f(k,l,d),!1}return!0});c.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",c);const h={...l,...o};return h.type||(h.type="underline"),h}),n=Dp(e,i.value),r=qe(e,s,i.value.at);if(!r){console.error("[Slidev] Invalid value for v-mark:",i.value.at);return}Kt(()=>{let o;i.value.class&&(n.class=i.value.class),i.value.color&&(n.color=i.value.color);const l=i.value.at;if(l===!0)o=!0;else if(l===!1)o=!1;else if(r)o=r.isActive.value;else{console.error("[Slidev] Invalid value for v-mark:",l);return}o!=null&&(o?n.show():n.hide())})}})}}}const Ii=oa(),ys=et("slidev-color-schema","auto"),Oi=p(()=>L.colorSchema!=="auto"),Sn=p({get(){return Oi.value?L.colorSchema==="dark":ys.value==="auto"?Ii.value:ys.value==="dark"},set(t){Oi.value||(ys.value=t===Ii.value?"auto":t?"dark":"light")}}),gf=Ni(Sn);es&&de(Sn,t=>{const e=document.querySelector("html");e.classList.toggle("dark",t),e.classList.toggle("light",!t)},{immediate:!0});function Pp(t){const e=p(()=>t.value.path),s=p(()=>G.length),i=p(()=>Number.parseInt(e.value.split(/\//g).slice(-1)[0])||1),n=p(()=>is(i.value)),r=p(()=>G.find(g=>g.path===`${i.value}`)??G.at(-1)??G[0]),o=p(()=>{var g,f,k;return(k=(f=(g=r.value)==null?void 0:g.meta)==null?void 0:f.slide)==null?void 0:k.id}),l=p(()=>{var g,f;return((f=(g=r.value)==null?void 0:g.meta)==null?void 0:f.layout)||(i.value===1?"cover":"default")}),c=p(()=>G.find(g=>g.path===`${Math.min(G.length,i.value+1)}`)),h=p(()=>G.filter(g=>{var f,k;return(k=(f=g.meta)==null?void 0:f.slide)==null?void 0:k.title}).reduce((g,f)=>(Ys(g,f),g),[])),u=p(()=>Gs(h.value,r.value)),d=p(()=>Ks(u.value));return{rawRoutes:G,route:t,path:e,total:s,clicksContext:Gt,clicks:qs,clicksTotal:Ee,currentPage:i,currentPath:n,currentRoute:r,currentSlideId:o,currentLayout:l,nextRoute:c,rawTree:h,treeWithActiveStatuses:u,tree:d,go:Vs,downloadPDF:Id,next:gn,nextSlide:Ws,openInEditor:Od,prev:kn,prevSlide:zs}}function Bp(t){return{nav:Pp(t),configs:L,themeConfigs:p(()=>L.themeConfig)}}function Tp(){return{install(t){const e=b(Bp(gt));t.provide(Qi,R("none")),t.provide(Ji,e),t.provide(Xi,p(()=>e.nav.currentPage))}}}const ae=la(Ud);ae.use(nt);ae.use(Ja());ae.use(Wd());ae.use(Ep());ae.use(Tp());qd({app:ae,router:nt});ae.mount("#app");export{Wp as $,tr as A,lf as B,vs as C,jp as D,Gt as E,qt as F,uf as G,hf as H,ue as I,Np as J,Xp as K,Oe as L,Ar as M,cf as N,Ke as O,ef as P,sf as Q,V as R,Ws as S,zs as T,Ss as U,gf as V,nf as W,qp as X,Vs as Y,Vp as Z,$ as _,Rp as a,Kp as a0,vd as a1,Gp as a2,ss as a3,zp as a4,Ms as a5,Ed as a6,df as a7,Oi as a8,Sn as a9,se as aa,Xe as ab,of as ac,tf as ad,Id as ae,ln as af,pf as ag,wr as ah,Xi as ai,Qi as aj,Hp as ak,js as al,ve as am,Cs as an,wd as ao,bd as ap,xd as aq,Md as ar,af as as,K as at,P as au,Cd as av,Zi as aw,Up as b,L as c,Jp as d,Se as e,Sd as f,Ze as g,rf as h,Yp as i,Zp as j,Qp as k,Fp as l,or as m,gn as n,Ji as o,kn as p,Pp as q,Mr as r,_d as s,Vi as t,ff as u,gt as v,xi as w,Hc as x,G as y,vr as z}; -function __vite__mapDeps(indexes) { - if (!__vite__mapDeps.viteFileDeps) { - __vite__mapDeps.viteFileDeps = ["assets/slidev/play-BKT3702K.js","assets/modules/vue-DfJOUuqf.js","assets/slidev/SlidesShow-cEt4ArMT.js","assets/modules/unplugin-icons-BSwXhPmF.js","assets/slidev/bottom-BvFLsK-o.js","assets/slidev/DrawingPreview-CWxctYH7.js","assets/modules/shiki-ywDJVitK.js","assets/modules/shiki-BSchMNmt.css","assets/SlidesShow-Do3DTZt5.css","assets/slidev/PrintStyle-BWcGTmoG.js","assets/play-CoA43pdi.css","assets/slidev/print-CvNNiwvg.js","assets/print-Nssgrd1X.css","assets/slidev/print-CcBujRer.js","assets/slidev/NoteDisplay-CgxieYML.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/presenter-DXLsOkt_.js","assets/slidev/DrawingControls-CqvcVetF.js","assets/DrawingControls-BO6lw4N5.css","assets/presenter-BRsvFpoV.css"] - } - return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) -} diff --git a/04-mvc/assets/modules/shiki-CNrqLFow.js b/02-components/assets/modules/shiki-DHDjwTm4.js similarity index 99% rename from 04-mvc/assets/modules/shiki-CNrqLFow.js rename to 02-components/assets/modules/shiki-DHDjwTm4.js index dc5b489..871369c 100644 --- a/04-mvc/assets/modules/shiki-CNrqLFow.js +++ b/02-components/assets/modules/shiki-DHDjwTm4.js @@ -1 +1 @@ -import{d as xe,n as Vt,p as Wt,a as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-CoY6Ph6S.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),Vt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Wt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};jt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T}; +import{d as xe,p as Vt,a as Wt,n as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-B2FnwHXb.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),jt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Vt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};Wt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T,Nt as t}; diff --git a/02-components/assets/modules/unplugin-icons-BSwXhPmF.js b/02-components/assets/modules/unplugin-icons-BSwXhPmF.js deleted file mode 100644 index e209cc0..0000000 --- a/02-components/assets/modules/unplugin-icons-BSwXhPmF.js +++ /dev/null @@ -1 +0,0 @@ -import{o as e,b as o,e as n}from"./vue-DfJOUuqf.js";const c={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},_=n("path",{fill:"currentColor",d:"M200 32h-36.26a47.92 47.92 0 0 0-71.48 0H56a16 16 0 0 0-16 16v168a16 16 0 0 0 16 16h144a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16m-72 0a32 32 0 0 1 32 32H96a32 32 0 0 1 32-32m72 184H56V48h26.75A47.93 47.93 0 0 0 80 64v8a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-8a47.93 47.93 0 0 0-2.75-16H200Z"},null,-1),i=[_];function l(t,s){return e(),o("svg",c,[...i])}const nn={name:"ph-clipboard",render:l},h={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M173.66 98.34a8 8 0 0 1 0 11.32l-56 56a8 8 0 0 1-11.32 0l-24-24a8 8 0 0 1 11.32-11.32L112 148.69l50.34-50.35a8 8 0 0 1 11.32 0M232 128A104 104 0 1 1 128 24a104.11 104.11 0 0 1 104 104m-16 0a88 88 0 1 0-88 88a88.1 88.1 0 0 0 88-88"},null,-1),a=[r];function d(t,s){return e(),o("svg",h,[...a])}const en={name:"ph-check-circle",render:d},u={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},m=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),v=[m];function $(t,s){return e(),o("svg",u,[...v])}const on={name:"carbon-list-boxes",render:$},p={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),L=[g];function f(t,s){return e(),o("svg",p,[...L])}const tn={name:"carbon-close",render:f},w={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},x=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),M=[x];function z(t,s){return e(),o("svg",w,[...M])}const sn={name:"carbon-settings-adjust",render:z},H={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),b=n("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),B=[C,b];function V(t,s){return e(),o("svg",H,[...B])}const cn={name:"carbon-information",render:V},Z={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),k=[A];function j(t,s){return e(),o("svg",Z,[...k])}const _n={name:"carbon-download",render:j},y={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),E=[q];function S(t,s){return e(),o("svg",y,[...E])}const ln={name:"carbon-template",render:S},D={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},F=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),G=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),I=[F,G];function J(t,s){return e(),o("svg",D,[...I])}const hn={name:"carbon-user-speaker",render:J},N={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),O=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),P=[K,O];function Q(t,s){return e(),o("svg",N,[...P])}const rn={name:"carbon-presentation-file",render:Q},R={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},T=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),U=[T];function W(t,s){return e(),o("svg",R,[...U])}const an={name:"carbon-pen",render:W},X={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},Y=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0L140 164a8 8 0 0 0-13 2.46l-19.46 44.77a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85L166.45 127a8 8 0 0 0-2.45 13l49.67 49.67a8 8 0 0 1-.01 11.33",opacity:".2"}),n("path",{d:"m169.64 134.33l44.77-19.46a16 16 0 0 0-1.41-29.8L52.92 32.8A16 16 0 0 0 32.8 52.92L85.07 213a15.83 15.83 0 0 0 14.41 11h.78a15.83 15.83 0 0 0 14.61-9.59l19.46-44.77L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63Zm-69.48 73.76l.06-.05Zm95.15-.09l-49.67-49.67a16 16 0 0 0-26 4.94l-19.42 44.65L48 48l159.87 52.21l-44.64 19.41a16 16 0 0 0-4.94 26L208 195.31Z"})],-1),n1=[Y];function e1(t,s){return e(),o("svg",X,[...n1])}const dn={name:"ph-cursor-duotone",render:e1},o1={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},t1=n("path",{fill:"currentColor",d:"M219.31 192a16 16 0 0 1 0 22.63l-4.68 4.68a16 16 0 0 1-22.63 0l-55.25-55.24l-21.88 50.34a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-50.34 21.88Z"},null,-1),s1=[t1];function c1(t,s){return e(),o("svg",o1,[...s1])}const un={name:"ph-cursor-fill",render:c1},_1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},i1=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),l1=[i1];function h1(t,s){return e(),o("svg",_1,[...l1])}const mn={name:"carbon-sun",render:h1},r1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},a1=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),d1=[a1];function u1(t,s){return e(),o("svg",r1,[...d1])}const vn={name:"carbon-moon",render:u1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),$1=[v1];function p1(t,s){return e(),o("svg",m1,[...$1])}const $n={name:"carbon-apps",render:p1},g1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},L1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),f1=[L1];function w1(t,s){return e(),o("svg",g1,[...f1])}const pn={name:"carbon-arrow-right",render:w1},x1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),z1=[M1];function H1(t,s){return e(),o("svg",x1,[...z1])}const gn={name:"carbon-arrow-left",render:H1},C1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),B1=[b1];function V1(t,s){return e(),o("svg",C1,[...B1])}const Ln={name:"carbon-maximize",render:V1},Z1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),k1=[A1];function j1(t,s){return e(),o("svg",Z1,[...k1])}const fn={name:"carbon-minimize",render:j1},y1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q1=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),E1=[q1];function S1(t,s){return e(),o("svg",y1,[...E1])}const wn={name:"carbon-checkmark",render:S1},D1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},F1=n("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),G1=[F1];function I1(t,s){return e(),o("svg",D1,[...G1])}const xn={name:"carbon-renew",render:I1},J1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},N1=n("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),K1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),O1=[N1,K1];function P1(t,s){return e(),o("svg",J1,[...O1])}const Mn={name:"carbon-time",render:P1},Q1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},R1=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),T1=n("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),U1=[R1,T1];function W1(t,s){return e(),o("svg",Q1,[...U1])}const zn={name:"carbon-zoom-out",render:W1},X1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Y1=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),n2=n("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),e2=[Y1,n2];function o2(t,s){return e(),o("svg",X1,[...e2])}const Hn={name:"carbon-zoom-in",render:o2},t2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},s2=n("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),c2=n("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),_2=[s2,c2];function i2(t,s){return e(),o("svg",t2,[..._2])}const Cn={name:"carbon-close-outline",render:i2},l2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},h2=n("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),r2=[h2];function a2(t,s){return e(),o("svg",l2,[...r2])}const bn={name:"carbon-error",render:a2},d2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},u2=n("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),m2=[u2];function v2(t,s){return e(),o("svg",d2,[...m2])}const Bn={name:"carbon-pin",render:v2},$2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},p2=n("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),g2=[p2];function L2(t,s){return e(),o("svg",$2,[...g2])}const Vn={name:"carbon-pin-filled",render:L2},f2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},w2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),x2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),M2=[w2,x2];function z2(t,s){return e(),o("svg",f2,[...M2])}const Zn={name:"carbon-trash-can",render:z2},H2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C2=n("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),b2=[C2];function B2(t,s){return e(),o("svg",H2,[...b2])}const An={name:"carbon-redo",render:B2},V2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Z2=n("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),A2=[Z2];function k2(t,s){return e(),o("svg",V2,[...A2])}const kn={name:"carbon-undo",render:k2},j2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y2=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),q2=[y2];function E2(t,s){return e(),o("svg",j2,[...q2])}const jn={name:"carbon-erase",render:E2},S2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},D2=n("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),F2=[D2];function G2(t,s){return e(),o("svg",S2,[...F2])}const yn={name:"carbon-checkbox",render:G2},I2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},J2=n("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),N2=[J2];function K2(t,s){return e(),o("svg",I2,[...N2])}const qn={name:"carbon-radio-button",render:K2},O2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},P2=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),Q2=[P2];function R2(t,s){return e(),o("svg",O2,[...Q2])}const En={name:"carbon-arrow-up-right",render:R2},T2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},U2=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),W2=[U2];function X2(t,s){return e(),o("svg",T2,[...W2])}const Sn={name:"carbon-cursor1",render:X2};export{qn as A,yn as B,jn as C,kn as D,An as E,Zn as F,Vn as G,Bn as H,bn as I,Cn as J,en as _,nn as a,Sn as b,Hn as c,zn as d,Mn as e,xn as f,tn as g,on as h,wn as i,fn as j,Ln as k,gn as l,pn as m,vn as n,mn as o,un as p,dn as q,an as r,sn as s,$n as t,rn as u,hn as v,ln as w,_n as x,cn as y,En as z}; diff --git a/02-components/assets/modules/unplugin-icons-DUsU9osv.js b/02-components/assets/modules/unplugin-icons-DUsU9osv.js new file mode 100644 index 0000000..21d6531 --- /dev/null +++ b/02-components/assets/modules/unplugin-icons-DUsU9osv.js @@ -0,0 +1 @@ +import{o as e,b as o,e as n}from"./vue-B2FnwHXb.js";const s={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},l=n("path",{fill:"currentColor",d:"M200 32h-36.26a47.92 47.92 0 0 0-71.48 0H56a16 16 0 0 0-16 16v168a16 16 0 0 0 16 16h144a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16m-72 0a32 32 0 0 1 32 32H96a32 32 0 0 1 32-32m72 184H56V48h26.75A47.93 47.93 0 0 0 80 64v8a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-8a47.93 47.93 0 0 0-2.75-16H200Z"},null,-1),_=[l];function i(t,c){return e(),o("svg",s,[..._])}const Bn={name:"ph-clipboard",render:i},h={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M173.66 98.34a8 8 0 0 1 0 11.32l-56 56a8 8 0 0 1-11.32 0l-24-24a8 8 0 0 1 11.32-11.32L112 148.69l50.34-50.35a8 8 0 0 1 11.32 0M232 128A104 104 0 1 1 128 24a104.11 104.11 0 0 1 104 104m-16 0a88 88 0 1 0-88 88a88.1 88.1 0 0 0 88-88"},null,-1),a=[r];function d(t,c){return e(),o("svg",h,[...a])}const Vn={name:"ph-check-circle",render:d},u={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),m=[v];function $(t,c){return e(),o("svg",u,[...m])}const bn={name:"carbon-list-boxes",render:$},p={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g=n("path",{fill:"currentColor",d:"M26 2H8a2 2 0 0 0-2 2v4H4v2h2v5H4v2h2v5H4v2h2v4a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2m0 26H8v-4h2v-2H8v-5h2v-2H8v-5h2V8H8V4h18Z"},null,-1),f=n("path",{fill:"currentColor",d:"M14 8h8v2h-8zm0 7h8v2h-8zm0 7h8v2h-8z"},null,-1),L=[g,f];function w(t,c){return e(),o("svg",p,[...L])}const Zn={name:"carbon-catalog",render:w},x={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),z=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),H=[M,z];function C(t,c){return e(),o("svg",x,[...H])}const An={name:"carbon-user-speaker",render:C},B={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},V=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),b=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),Z=[V,b];function A(t,c){return e(),o("svg",B,[...Z])}const kn={name:"carbon-presentation-file",render:A},k={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),j=[y];function D(t,c){return e(),o("svg",k,[...j])}const yn={name:"carbon-pen",render:D},E={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q=n("path",{fill:"currentColor",d:"m20.17 19l-2.59 2.59L19 23l4-4l-4-4l-1.42 1.41zm-8.34 0l2.59-2.59L13 15l-4 4l4 4l1.42-1.41z"},null,-1),F=n("circle",{cx:"9",cy:"8",r:"1",fill:"currentColor"},null,-1),I=n("circle",{cx:"6",cy:"8",r:"1",fill:"currentColor"},null,-1),N=n("path",{fill:"currentColor",d:"M28 4H4c-1.103 0-2 .898-2 2v20c0 1.103.897 2 2 2h24c1.103 0 2-.897 2-2V6c0-1.102-.897-2-2-2m0 2v4H4V6zM4 26V12h24v14z"},null,-1),S=[q,F,I,N];function G(t,c){return e(),o("svg",E,[...S])}const jn={name:"carbon-cics-program",render:G},J={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),O=[K];function U(t,c){return e(),o("svg",J,[...O])}const Dn={name:"carbon-sun",render:U},P={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Q=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),R=[Q];function T(t,c){return e(),o("svg",P,[...R])}const En={name:"carbon-moon",render:T},W={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},X=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),Y=[X];function n1(t,c){return e(),o("svg",W,[...Y])}const qn={name:"carbon-cursor1",render:n1},e1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},o1=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),t1=n("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),c1=[o1,t1];function s1(t,c){return e(),o("svg",e1,[...c1])}const Fn={name:"carbon-zoom-out",render:s1},l1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},_1=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),i1=n("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),h1=[_1,i1];function r1(t,c){return e(),o("svg",l1,[...h1])}const In={name:"carbon-zoom-in",render:r1},a1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},d1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),u1=[d1];function v1(t,c){return e(),o("svg",a1,[...u1])}const Nn={name:"carbon-maximize",render:v1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},$1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),p1=[$1];function g1(t,c){return e(),o("svg",m1,[...p1])}const Sn={name:"carbon-minimize",render:g1},f1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},L1=n("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),w1=[L1];function x1(t,c){return e(),o("svg",f1,[...w1])}const Gn={name:"carbon-renew",render:x1},M1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},z1=n("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),H1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),C1=[z1,H1];function B1(t,c){return e(),o("svg",M1,[...C1])}const Jn={name:"carbon-time",render:B1},V1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),Z1=[b1];function A1(t,c){return e(),o("svg",V1,[...Z1])}const Kn={name:"carbon-arrow-left",render:A1},k1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),j1=[y1];function D1(t,c){return e(),o("svg",k1,[...j1])}const On={name:"carbon-arrow-right",render:D1},E1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q1=n("path",{fill:"currentColor",d:"M16 4L6 14l1.41 1.41L15 7.83V28h2V7.83l7.59 7.58L26 14z"},null,-1),F1=[q1];function I1(t,c){return e(),o("svg",E1,[...F1])}const Un={name:"carbon-arrow-up",render:I1},N1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},S1=n("path",{fill:"currentColor",d:"M24.59 16.59L17 24.17V4h-2v20.17l-7.59-7.58L6 18l10 10l10-10z"},null,-1),G1=[S1];function J1(t,c){return e(),o("svg",N1,[...G1])}const Pn={name:"carbon-arrow-down",render:J1},K1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},O1=n("path",{d:"M29.537 13.76l-3.297-3.297a1.586 1.586 0 0 0-2.24 0L10 24.467V30h5.533l14.004-14a1.586 1.586 0 0 0 0-2.24zM14.704 28H12v-2.704l9.44-9.441l2.705 2.704zM25.56 17.145l-2.704-2.704l2.267-2.267l2.704 2.704z",fill:"currentColor"},null,-1),U1=n("path",{d:"M11 17h2v-7h3V8H8v2h3v7z",fill:"currentColor"},null,-1),P1=n("path",{d:"M8 20H4V4h16v4h2V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4z",fill:"currentColor"},null,-1),Q1=[O1,U1,P1];function R1(t,c){return e(),o("svg",K1,[...Q1])}const Qn={name:"carbon-text-annotation-toggle",render:R1},T1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},W1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),X1=[W1];function Y1(t,c){return e(),o("svg",T1,[...X1])}const Rn={name:"carbon-apps",render:Y1},n2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},e2=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),o2=[e2];function t2(t,c){return e(),o("svg",n2,[...o2])}const Tn={name:"carbon-settings-adjust",render:t2},c2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},s2=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),l2=n("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),_2=[s2,l2];function i2(t,c){return e(),o("svg",c2,[..._2])}const Wn={name:"carbon-information",render:i2},h2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},r2=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),a2=[r2];function d2(t,c){return e(),o("svg",h2,[...a2])}const Xn={name:"carbon-download",render:d2},u2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v2=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),m2=[v2];function $2(t,c){return e(),o("svg",u2,[...m2])}const Yn={name:"carbon-template",render:$2},p2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},g2=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0l-51.31-51.31a8 8 0 0 0-13 2.46l-17.82 46.41a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85l-46.41 17.82a8 8 0 0 0-2.46 13l51.31 51.31a8 8 0 0 1 0 11.34",opacity:".2"}),n("path",{d:"M168 132.69L214.08 115l.33-.13a16 16 0 0 0-1.41-29.8L52.92 32.8A15.95 15.95 0 0 0 32.8 52.92L85.07 213a15.82 15.82 0 0 0 14.41 11h.78a15.84 15.84 0 0 0 14.61-9.59l.13-.33L132.69 168L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63ZM195.31 208L144 156.69a16 16 0 0 0-26 4.93c0 .11-.09.22-.13.32l-17.65 46L48 48l159.85 52.2l-45.95 17.64l-.32.13a16 16 0 0 0-4.93 26L208 195.31Z"})],-1),f2=[g2];function L2(t,c){return e(),o("svg",p2,[...f2])}const ne={name:"ph-cursor-duotone",render:L2},w2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},x2=n("path",{fill:"currentColor",d:"m220.49 207.8l-12.69 12.69a12 12 0 0 1-17 0l-56.57-56.57L115 214.08l-.13.33a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-.33.13l-50.16 19.27l56.57 56.56a12 12 0 0 1 0 16.97"},null,-1),M2=[x2];function z2(t,c){return e(),o("svg",w2,[...M2])}const ee={name:"ph-cursor-fill",render:z2},H2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C2=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),B2=[C2];function V2(t,c){return e(),o("svg",H2,[...B2])}const oe={name:"carbon-checkmark",render:V2},b2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Z2=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),A2=[Z2];function k2(t,c){return e(),o("svg",b2,[...A2])}const te={name:"carbon-close",render:k2},y2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},j2=n("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),D2=n("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),E2=[j2,D2];function q2(t,c){return e(),o("svg",y2,[...E2])}const ce={name:"carbon-close-outline",render:q2},F2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},I2=n("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),N2=[I2];function S2(t,c){return e(),o("svg",F2,[...N2])}const se={name:"carbon-error",render:S2},G2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},J2=n("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),K2=[J2];function O2(t,c){return e(),o("svg",G2,[...K2])}const le={name:"carbon-pin",render:O2},U2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},P2=n("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),Q2=[P2];function R2(t,c){return e(),o("svg",U2,[...Q2])}const _e={name:"carbon-pin-filled",render:R2},T2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},W2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),X2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),Y2=[W2,X2];function nn(t,c){return e(),o("svg",T2,[...Y2])}const ie={name:"carbon-trash-can",render:nn},en={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},on=n("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),tn=[on];function cn(t,c){return e(),o("svg",en,[...tn])}const he={name:"carbon-redo",render:cn},sn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},ln=n("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),_n=[ln];function hn(t,c){return e(),o("svg",sn,[..._n])}const re={name:"carbon-undo",render:hn},rn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},an=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),dn=[an];function un(t,c){return e(),o("svg",rn,[...dn])}const ae={name:"carbon-erase",render:un},vn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},mn=n("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),$n=[mn];function pn(t,c){return e(),o("svg",vn,[...$n])}const de={name:"carbon-checkbox",render:pn},gn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},fn=n("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),Ln=[fn];function wn(t,c){return e(),o("svg",gn,[...Ln])}const ue={name:"carbon-radio-button",render:wn},xn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Mn=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),zn=[Mn];function Hn(t,c){return e(),o("svg",xn,[...zn])}const ve={name:"carbon-arrow-up-right",render:Hn};export{te as A,Vn as B,Bn as C,ve as D,ue as E,de as F,ae as G,re as H,Un as I,he as J,ie as K,_e as L,le as M,se as N,ce as O,kn as _,An as a,Zn as b,bn as c,En as d,Dn as e,jn as f,yn as g,In as h,Fn as i,Sn as j,Nn as k,Jn as l,Gn as m,qn as n,Kn as o,On as p,Pn as q,Qn as r,Rn as s,oe as t,ee as u,ne as v,Tn as w,Yn as x,Xn as y,Wn as z}; diff --git a/02-components/assets/modules/vue-B2FnwHXb.js b/02-components/assets/modules/vue-B2FnwHXb.js new file mode 100644 index 0000000..6353ce2 --- /dev/null +++ b/02-components/assets/modules/vue-B2FnwHXb.js @@ -0,0 +1,91 @@ +/** +* @vue/shared v3.4.25 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function Ke(e,t){const n=new Set(e.split(","));return t?s=>n.has(s.toLowerCase()):s=>n.has(s)}const ge=Object.freeze({}),ys=Object.freeze([]),Pe=()=>{},ci=()=>!1,rn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),bi=e=>e.startsWith("onUpdate:"),le=Object.assign,Bl=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},hm=Object.prototype.hasOwnProperty,pe=(e,t)=>hm.call(e,t),H=Array.isArray,Xn=e=>Ls(e)==="[object Map]",cs=e=>Ls(e)==="[object Set]",uc=e=>Ls(e)==="[object Date]",mm=e=>Ls(e)==="[object RegExp]",Z=e=>typeof e=="function",ne=e=>typeof e=="string",At=e=>typeof e=="symbol",me=e=>e!==null&&typeof e=="object",Gi=e=>(me(e)||Z(e))&&Z(e.then)&&Z(e.catch),af=Object.prototype.toString,Ls=e=>af.call(e),Hl=e=>Ls(e).slice(8,-1),cf=e=>Ls(e)==="[object Object]",Ul=e=>ne(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,An=Ke(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),uf=Ke("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),Yi=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},gm=/-(\w)/g,Ie=Yi(e=>e.replace(gm,(t,n)=>n?n.toUpperCase():"")),ym=/\B([A-Z])/g,Qe=Yi(e=>e.replace(ym,"-$1").toLowerCase()),Wt=Yi(e=>e.charAt(0).toUpperCase()+e.slice(1)),Vt=Yi(e=>e?`on${Wt(e)}`:""),$t=(e,t)=>!Object.is(e,t),En=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},_i=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Si=e=>{const t=ne(e)?Number(e):NaN;return isNaN(t)?e:t};let fc;const Kl=()=>fc||(fc=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}),Ht={1:"TEXT",2:"CLASS",4:"STYLE",8:"PROPS",16:"FULL_PROPS",32:"NEED_HYDRATION",64:"STABLE_FRAGMENT",128:"KEYED_FRAGMENT",256:"UNKEYED_FRAGMENT",512:"NEED_PATCH",1024:"DYNAMIC_SLOTS",2048:"DEV_ROOT_FRAGMENT",[-1]:"HOISTED",[-2]:"BAIL"},vm={1:"STABLE",2:"DYNAMIC",3:"FORWARDED"},bm="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error",_m=Ke(bm),dc=2;function Sm(e,t=0,n=e.length){let s=e.split(/(\r?\n)/);const r=s.filter((l,a)=>a%2===1);s=s.filter((l,a)=>a%2===0);let i=0;const o=[];for(let l=0;l=t){for(let a=l-dc;a<=l+dc||n>i;a++){if(a<0||a>=s.length)continue;const u=a+1;o.push(`${u}${" ".repeat(Math.max(3-String(u).length,0))}| ${s[a]}`);const f=s[a].length,c=r[a]&&r[a].length||0;if(a===l){const d=t-(i-(f+c)),p=Math.max(1,n>i?f-d:n-t);o.push(" | "+" ".repeat(d)+"^".repeat(p))}else if(a>l){if(n>i){const d=Math.max(Math.min(n-i,f),1);o.push(" | "+"^".repeat(d))}i+=f+c}}break}return o.join(` +`)}function Ds(e){if(H(e)){const t={};for(let n=0;n{if(n){const s=n.split(Em);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Tm(e){let t="";if(!e||ne(e))return t;for(const n in e){const s=e[n],r=n.startsWith("--")?n:Qe(n);(ne(s)||typeof s=="number")&&(t+=`${r}:${s};`)}return t}function Vs(e){let t="";if(ne(e))t=e;else if(H(e))for(let n=0;nkn(n,t))}const Lm=e=>ne(e)?e:e==null?"":H(e)||me(e)&&(e.toString===af||!Z(e.toString))?JSON.stringify(e,yf,2):String(e),yf=(e,t)=>t&&t.__v_isRef?yf(e,t.value):Xn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[wo(s,i)+" =>"]=r,n),{})}:cs(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>wo(n))}:At(t)?wo(t):me(t)&&!H(t)&&!cf(t)?String(t):t,wo=(e,t="")=>{var n;return At(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.4.25 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function qt(e,...t){console.warn(`[Vue warn] ${e}`,...t)}let ht;class ql{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=ht,!t&&ht&&(this.index=(ht.scopes||(ht.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=ht;try{return ht=this,t()}finally{ht=n}}else qt("cannot run an inactive effect scope.")}on(){ht=this}off(){ht=this.parent}stop(t){if(this._active){let n,s;for(n=0,s=this.effects.length;n=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),an()}return this._dirtyLevel>=4}set dirty(t){this._dirtyLevel=t?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=On,n=Qn;try{return On=!0,Qn=this,this._runnings++,hc(this),this.fn()}finally{mc(this),this._runnings--,Qn=n,On=t}}stop(){var t;this.active&&(hc(this),mc(this),(t=this.onStop)==null||t.call(this),this.active=!1)}}function Dm(e){return e.value}function hc(e){e._trackId++,e._depsLength=0}function mc(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{n.dirty&&n.run()});t&&(le(n,t),t.scope&&bf(n,t.scope)),(!t||!t.lazy)&&n.run();const s=n.run.bind(n);return s.effect=n,s}function jm(e){e.effect.stop()}let On=!0,qo=0;const wf=[];function ln(){wf.push(On),On=!1}function an(){const e=wf.pop();On=e===void 0?!0:e}function Gl(){qo++}function Yl(){for(qo--;!qo&&zo.length;)zo.shift()()}function Ef(e,t,n){var s;if(t.get(e)!==e._trackId){t.set(e,e._trackId);const r=e.deps[e._depsLength];r!==t?(r&&Sf(r,e),e.deps[e._depsLength++]=t):e._depsLength++,(s=e.onTrack)==null||s.call(e,le({effect:e},n))}}const zo=[];function Cf(e,t,n){var s;Gl();for(const r of e.keys()){let i;r._dirtyLevel{const n=new Map;return n.cleanup=e,n.computed=t,n},wi=new WeakMap,Zn=Symbol("iterate"),Go=Symbol("Map key iterate");function tt(e,t,n){if(On&&Qn){let s=wi.get(e);s||wi.set(e,s=new Map);let r=s.get(n);r||s.set(n,r=Tf(()=>s.delete(n))),Ef(Qn,r,{target:e,type:t,key:n})}}function Ut(e,t,n,s,r,i){const o=wi.get(e);if(!o)return;let l=[];if(t==="clear")l=[...o.values()];else if(n==="length"&&H(e)){const a=Number(s);o.forEach((u,f)=>{(f==="length"||!At(f)&&f>=a)&&l.push(u)})}else switch(n!==void 0&&l.push(o.get(n)),t){case"add":H(e)?Ul(n)&&l.push(o.get("length")):(l.push(o.get(Zn)),Xn(e)&&l.push(o.get(Go)));break;case"delete":H(e)||(l.push(o.get(Zn)),Xn(e)&&l.push(o.get(Go)));break;case"set":Xn(e)&&l.push(o.get(Zn));break}Gl();for(const a of l)a&&Cf(a,4,{target:e,type:t,key:n,newValue:s,oldValue:r,oldTarget:i});Yl()}function Bm(e,t){var n;return(n=wi.get(e))==null?void 0:n.get(t)}const Hm=Ke("__proto__,__v_isRef,__isVue"),xf=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(At)),gc=Um();function Um(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const s=re(this);for(let i=0,o=this.length;i{e[t]=function(...n){ln(),Gl();const s=re(this)[t].apply(this,n);return Yl(),an(),s}}),e}function Km(e){At(e)||(e=String(e));const t=re(this);return tt(t,"has",e),t.hasOwnProperty(e)}class Af{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?Mf:kf:i?Pf:Nf).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=H(t);if(!r){if(o&&pe(gc,n))return Reflect.get(gc,n,s);if(n==="hasOwnProperty")return Km}const l=Reflect.get(t,n,s);return(At(n)?xf.has(n):Hm(n))||(r||tt(t,"get",n),i)?l:Te(l)?o&&Ul(n)?l:l.value:me(l)?r?wt(l):pt(l):l}}class Of extends Af{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];if(!this._isShallow){const a=Mn(i);if(!Rn(s)&&!Mn(s)&&(i=re(i),s=re(s)),!H(t)&&Te(i)&&!Te(s))return a?!1:(i.value=s,!0)}const o=H(t)&&Ul(n)?Number(n)e,Xi=e=>Reflect.getPrototypeOf(e);function Wr(e,t,n=!1,s=!1){e=e.__v_raw;const r=re(e),i=re(t);n||($t(t,i)&&tt(r,"get",t),tt(r,"get",i));const{has:o}=Xi(r),l=s?Jl:n?Ql:dr;if(o.call(r,t))return l(e.get(t));if(o.call(r,i))return l(e.get(i));e!==r&&e.get(t)}function qr(e,t=!1){const n=this.__v_raw,s=re(n),r=re(e);return t||($t(e,r)&&tt(s,"has",e),tt(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function zr(e,t=!1){return e=e.__v_raw,!t&&tt(re(e),"iterate",Zn),Reflect.get(e,"size",e)}function yc(e){e=re(e);const t=re(this);return Xi(t).has.call(t,e)||(t.add(e),Ut(t,"add",e,e)),this}function vc(e,t){t=re(t);const n=re(this),{has:s,get:r}=Xi(n);let i=s.call(n,e);i?If(n,s,e):(e=re(e),i=s.call(n,e));const o=r.call(n,e);return n.set(e,t),i?$t(t,o)&&Ut(n,"set",e,t,o):Ut(n,"add",e,t),this}function bc(e){const t=re(this),{has:n,get:s}=Xi(t);let r=n.call(t,e);r?If(t,n,e):(e=re(e),r=n.call(t,e));const i=s?s.call(t,e):void 0,o=t.delete(e);return r&&Ut(t,"delete",e,void 0,i),o}function _c(){const e=re(this),t=e.size!==0,n=Xn(e)?new Map(e):new Set(e),s=e.clear();return t&&Ut(e,"clear",void 0,void 0,n),s}function Gr(e,t){return function(s,r){const i=this,o=i.__v_raw,l=re(o),a=t?Jl:e?Ql:dr;return!e&&tt(l,"iterate",Zn),o.forEach((u,f)=>s.call(r,a(u),a(f),i))}}function Yr(e,t,n){return function(...s){const r=this.__v_raw,i=re(r),o=Xn(i),l=e==="entries"||e===Symbol.iterator&&o,a=e==="keys"&&o,u=r[e](...s),f=n?Jl:t?Ql:dr;return!t&&tt(i,"iterate",a?Go:Zn),{next(){const{value:c,done:d}=u.next();return d?{value:c,done:d}:{value:l?[f(c[0]),f(c[1])]:f(c),done:d}},[Symbol.iterator](){return this}}}}function dn(e){return function(...t){{const n=t[0]?`on key "${t[0]}" `:"";qt(`${Wt(e)} operation ${n}failed: target is readonly.`,re(this))}return e==="delete"?!1:e==="clear"?void 0:this}}function Ym(){const e={get(i){return Wr(this,i)},get size(){return zr(this)},has:qr,add:yc,set:vc,delete:bc,clear:_c,forEach:Gr(!1,!1)},t={get(i){return Wr(this,i,!1,!0)},get size(){return zr(this)},has:qr,add:yc,set:vc,delete:bc,clear:_c,forEach:Gr(!1,!0)},n={get(i){return Wr(this,i,!0)},get size(){return zr(this,!0)},has(i){return qr.call(this,i,!0)},add:dn("add"),set:dn("set"),delete:dn("delete"),clear:dn("clear"),forEach:Gr(!0,!1)},s={get(i){return Wr(this,i,!0,!0)},get size(){return zr(this,!0)},has(i){return qr.call(this,i,!0)},add:dn("add"),set:dn("set"),delete:dn("delete"),clear:dn("clear"),forEach:Gr(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=Yr(i,!1,!1),n[i]=Yr(i,!0,!1),t[i]=Yr(i,!1,!0),s[i]=Yr(i,!0,!0)}),[e,n,t,s]}const[Jm,Xm,Qm,Zm]=Ym();function Qi(e,t){const n=t?e?Zm:Qm:e?Xm:Jm;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(pe(n,r)&&r in s?n:s,r,i)}const eg={get:Qi(!1,!1)},tg={get:Qi(!1,!0)},ng={get:Qi(!0,!1)},sg={get:Qi(!0,!0)};function If(e,t,n){const s=re(n);if(s!==n&&t.call(e,s)){const r=Hl(e);qt(`Reactive ${r} contains both the raw and reactive versions of the same object${r==="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 Nf=new WeakMap,Pf=new WeakMap,kf=new WeakMap,Mf=new WeakMap;function rg(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function ig(e){return e.__v_skip||!Object.isExtensible(e)?0:rg(Hl(e))}function pt(e){return Mn(e)?e:Zi(e,!1,Wm,eg,Nf)}function Xl(e){return Zi(e,!1,zm,tg,Pf)}function wt(e){return Zi(e,!0,qm,ng,kf)}function Bt(e){return Zi(e,!0,Gm,sg,Mf)}function Zi(e,t,n,s,r){if(!me(e))return qt(`value cannot be made reactive: ${String(e)}`),e;if(e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=ig(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function es(e){return Mn(e)?es(e.__v_raw):!!(e&&e.__v_isReactive)}function Mn(e){return!!(e&&e.__v_isReadonly)}function Rn(e){return!!(e&&e.__v_isShallow)}function fr(e){return e?!!e.__v_raw:!1}function re(e){const t=e&&e.__v_raw;return t?re(t):e}function $f(e){return Object.isExtensible(e)&&ff(e,"__v_skip",!0),e}const dr=e=>me(e)?pt(e):e,Ql=e=>me(e)?wt(e):e,og="Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free";class Ff{constructor(t,n,s,r){this.getter=t,this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new xs(()=>t(this._value),()=>vs(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=s}get value(){const t=re(this);return(!t._cacheable||t.effect.dirty)&&$t(t._value,t._value=t.effect.run())&&vs(t,4),Zl(t),t.effect._dirtyLevel>=2&&(this._warnRecursive&&qt(og,` + +getter: `,this.getter),vs(t,2)),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function lg(e,t,n=!1){let s,r;const i=Z(e);i?(s=e,r=()=>{qt("Write operation failed: computed value is readonly")}):(s=e.get,r=e.set);const o=new Ff(s,r,i||!r,n);return t&&!n&&(o.effect.onTrack=t.onTrack,o.effect.onTrigger=t.onTrigger),o}function Zl(e){var t;On&&Qn&&(e=re(e),Ef(Qn,(t=e.dep)!=null?t:e.dep=Tf(()=>e.dep=void 0,e instanceof Ff?e:void 0),{target:e,type:"get",key:"value"}))}function vs(e,t=4,n){e=re(e);const s=e.dep;s&&Cf(s,t,{target:e,type:"set",key:"value",newValue:n})}function Te(e){return!!(e&&e.__v_isRef===!0)}function Y(e){return Lf(e,!1)}function ea(e){return Lf(e,!0)}function Lf(e,t){return Te(e)?e:new ag(e,t)}class ag{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:re(t),this._value=n?t:dr(t)}get value(){return Zl(this),this._value}set value(t){const n=this.__v_isShallow||Rn(t)||Mn(t);t=n?t:re(t),$t(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:dr(t),vs(this,4,t))}}function cg(e){vs(e,4,e.value)}function Ge(e){return Te(e)?e.value:e}function ug(e){return Z(e)?e():Ge(e)}const fg={get:(e,t,n)=>Ge(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return Te(r)&&!Te(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function ta(e){return es(e)?e:new Proxy(e,fg)}class dg{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:s}=t(()=>Zl(this),()=>vs(this));this._get=n,this._set=s}get value(){return this._get()}set value(t){this._set(t)}}function eo(e){return new dg(e)}function Df(e){fr(e)||qt("toRefs() expects a reactive object but received a plain one.");const t=H(e)?new Array(e.length):{};for(const n in e)t[n]=jf(e,n);return t}class pg{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,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 Bm(re(this._object),this._key)}}class hg{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Vf(e,t,n){return Te(e)?e:Z(e)?new hg(e):me(e)&&arguments.length>1?jf(e,t,n):Y(e)}function jf(e,t,n){const s=e[t];return Te(s)?s:new pg(e,t,n)}const mg={GET:"get",HAS:"has",ITERATE:"iterate"},gg={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"};/** +* @vue/runtime-core v3.4.25 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/const ts=[];function Qs(e){ts.push(e)}function Zs(){ts.pop()}function M(e,...t){ln();const n=ts.length?ts[ts.length-1].component:null,s=n&&n.appContext.config.warnHandler,r=yg();if(s)Kt(s,n,11,[e+t.map(i=>{var o,l;return(l=(o=i.toString)==null?void 0:o.call(i))!=null?l:JSON.stringify(i)}).join(""),n&&n.proxy,r.map(({vnode:i})=>`at <${fo(n,i.type)}>`).join(` +`),r]);else{const i=[`[Vue warn]: ${e}`,...t];r.length&&i.push(` +`,...vg(r)),console.warn(...i)}an()}function yg(){let e=ts[ts.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 s=e.component&&e.component.parent;e=s&&s.vnode}return t}function vg(e){const t=[];return e.forEach((n,s)=>{t.push(...s===0?[]:[` +`],...bg(n))}),t}function bg({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",s=e.component?e.component.parent==null:!1,r=` at <${fo(e.component,e.type,s)}`,i=">"+n;return e.props?[r,..._g(e.props),i]:[r+i]}function _g(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(s=>{t.push(...Bf(s,e[s]))}),n.length>3&&t.push(" ..."),t}function Bf(e,t,n){return ne(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:Te(t)?(t=Bf(e,re(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):Z(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=re(t),n?t:[`${e}=`,t])}function na(e,t){e!==void 0&&(typeof e!="number"?M(`${t} is not a valid number - got ${JSON.stringify(e)}.`):isNaN(e)&&M(`${t} is NaN - the duration expression might be incorrect.`))}const Sg={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",WATCH_GETTER:2,2:"WATCH_GETTER",WATCH_CALLBACK:3,3:"WATCH_CALLBACK",WATCH_CLEANUP:4,4:"WATCH_CLEANUP",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER"},to={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 Kt(e,t,n,s){try{return s?e(...s):e()}catch(r){Vn(r,t,n)}}function gt(e,t,n,s){if(Z(e)){const r=Kt(e,t,n,s);return r&&Gi(r)&&r.catch(i=>{Vn(i,t,n)}),r}if(H(e)){const r=[];for(let i=0;i>>1,r=Ze[s],i=mr(r);ijt&&Ze.splice(t,1)}function hr(e){H(e)?bs.push(...e):(!Zt||!Zt.includes(e,e.allowRecurse?yn+1:yn))&&bs.push(e),Uf()}function Sc(e,t,n=pr?jt+1:0){for(t=t||new Map;nmr(n)-mr(s));if(bs.length=0,Zt){Zt.push(...t);return}for(Zt=t,e=e||new Map,yn=0;yne.id==null?1/0:e.id,xg=(e,t)=>{const n=mr(e)-mr(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Kf(e){Yo=!1,pr=!0,e=e||new Map,Ze.sort(xg);const t=n=>ra(e,n);try{for(jt=0;jtEg){const s=t.ownerInstance,r=s&&br(s.type);return Vn(`Maximum recursive updates exceeded${r?` in component <${r}>`:""}. 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 In=!1;const gs=new Set;Kl().__VUE_HMR_RUNTIME__={createRecord:Eo(Wf),rerender:Eo(Rg),reload:Eo(Ig)};const rs=new Map;function Ag(e){const t=e.type.__hmrId;let n=rs.get(t);n||(Wf(t,e.type),n=rs.get(t)),n.instances.add(e)}function Og(e){rs.get(e.type.__hmrId).instances.delete(e)}function Wf(e,t){return rs.has(e)?!1:(rs.set(e,{initialDef:er(t),instances:new Set}),!0)}function er(e){return qd(e)?e.__vccOpts:e}function Rg(e,t){const n=rs.get(e);n&&(n.initialDef.render=t,[...n.instances].forEach(s=>{t&&(s.render=t,er(s.type).render=t),s.renderCache=[],In=!0,s.effect.dirty=!0,s.update(),In=!1}))}function Ig(e,t){const n=rs.get(e);if(!n)return;t=er(t),wc(n.initialDef,t);const s=[...n.instances];for(const r of s){const i=er(r.type);gs.has(i)||(i!==n.initialDef&&wc(i,t),gs.add(i)),r.appContext.propsCache.delete(r.type),r.appContext.emitsCache.delete(r.type),r.appContext.optionsCache.delete(r.type),r.ceReload?(gs.add(i),r.ceReload(t.styles),gs.delete(i)):r.parent?(r.parent.effect.dirty=!0,Ir(r.parent.update)):r.appContext.reload?r.appContext.reload():typeof window<"u"?window.location.reload():console.warn("[HMR] Root or manually mounted instance modified. Full reload required.")}hr(()=>{for(const r of s)gs.delete(er(r.type))})}function wc(e,t){le(e,t);for(const n in e)n!=="__file"&&!(n in t)&&delete e[n]}function Eo(e){return(t,n)=>{try{return e(t,n)}catch(s){console.error(s),console.warn("[HMR] Something went wrong during Vue component hot-reload. Full reload required.")}}}let Nt,Ys=[],Jo=!1;function Nr(e,...t){Nt?Nt.emit(e,...t):Jo||Ys.push({event:e,args:t})}function ia(e,t){var n,s;Nt=e,Nt?(Nt.enabled=!0,Ys.forEach(({event:r,args:i})=>Nt.emit(r,...i)),Ys=[]):typeof window<"u"&&window.HTMLElement&&!((s=(n=window.navigator)==null?void 0:n.userAgent)!=null&&s.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(i=>{ia(i,t)}),setTimeout(()=>{Nt||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Jo=!0,Ys=[])},3e3)):(Jo=!0,Ys=[])}function Ng(e,t){Nr("app:init",e,t,{Fragment:De,Text:$n,Comment:$e,Static:Nn})}function Pg(e){Nr("app:unmount",e)}const Xo=oa("component:added"),qf=oa("component:updated"),kg=oa("component:removed"),Mg=e=>{Nt&&typeof Nt.cleanupBuffer=="function"&&!Nt.cleanupBuffer(e)&&kg(e)};/*! #__NO_SIDE_EFFECTS__ */function oa(e){return t=>{Nr(e,t.appContext.app,t.uid,t.parent?t.parent.uid:void 0,t)}}const $g=zf("perf:start"),Fg=zf("perf:end");function zf(e){return(t,n,s)=>{Nr(e,t.appContext.app,t.uid,t,n,s)}}function Lg(e,t,n){Nr("component:emit",e.appContext.app,e,t,n)}function Dg(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||ge;{const{emitsOptions:f,propsOptions:[c]}=e;if(f)if(!(t in f))(!c||!(Vt(t)in c))&&M(`Component emitted event "${t}" but it is neither declared in the emits option nor as an "${Vt(t)}" prop.`);else{const d=f[t];Z(d)&&(d(...n)||M(`Invalid event arguments: event validation failed for event "${t}".`))}}let r=n;const i=t.startsWith("update:"),o=i&&t.slice(7);if(o&&o in s){const f=`${o==="modelValue"?"model":o}Modifiers`,{number:c,trim:d}=s[f]||ge;d&&(r=n.map(p=>ne(p)?p.trim():p)),c&&(r=n.map(_i))}Lg(e,t,r);{const f=t.toLowerCase();f!==t&&s[Vt(f)]&&M(`Event "${f}" is emitted in component ${fo(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 "${Qe(t)}" instead of "${t}".`)}let l,a=s[l=Vt(t)]||s[l=Vt(Ie(t))];!a&&i&&(a=s[l=Vt(Qe(t))]),a&>(a,e,6,r);const u=s[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,gt(u,e,6,r)}}function Gf(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!Z(e)){const a=u=>{const f=Gf(u,t,!0);f&&(l=!0,le(o,f))};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!i&&!l?(me(e)&&s.set(e,null),null):(H(i)?i.forEach(a=>o[a]=null):le(o,i),me(e)&&s.set(e,o),o)}function no(e,t){return!e||!rn(t)?!1:(t=t.slice(2).replace(/Once$/,""),pe(e,t[0].toLowerCase()+t.slice(1))||pe(e,Qe(t))||pe(e,t))}let Re=null,so=null;function gr(e){const t=Re;return Re=e,so=e&&e.type.__scopeId||null,t}function Vg(e){so=e}function jg(){so=null}const Bg=e=>la;function la(e,t=Re,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&ol(-1);const i=gr(t);let o;try{o=e(...r)}finally{gr(i),s._d&&ol(1)}return qf(t),o};return s._n=!0,s._c=!0,s._d=!0,s}let Qo=!1;function Ci(){Qo=!0}function ui(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:a,render:u,renderCache:f,props:c,data:d,setupState:p,ctx:m,inheritAttrs:w}=e,E=gr(e);let v,y;Qo=!1;try{if(n.shapeFlag&4){const S=r||s,O=p.__isScriptSetup?new Proxy(S,{get(C,x,T){return M(`Property '${String(x)}' was accessed via 'this'. Avoid using 'this' in templates.`),Reflect.get(C,x,T)}}):S;v=ut(u.call(O,S,f,Bt(c),p,d,m)),y=l}else{const S=t;l===c&&Ci(),v=ut(S.length>1?S(Bt(c),{get attrs(){return Ci(),l},slots:o,emit:a}):S(Bt(c),null)),y=t.props?l:Hg(l)}}catch(S){nr.length=0,Vn(S,e,1),v=xe($e)}let g=v,b;if(v.patchFlag>0&&v.patchFlag&2048&&([g,b]=Yf(v)),y&&w!==!1){const S=Object.keys(y),{shapeFlag:O}=g;if(S.length){if(O&7)i&&S.some(bi)&&(y=Ug(y,i)),g=Ot(g,y);else if(!Qo&&g.type!==$e){const C=Object.keys(l),x=[],T=[];for(let A=0,k=C.length;A renders non-element root node that cannot be animated."),g.transition=n.transition),b?b(g):v=g,gr(E),v}const Yf=e=>{const t=e.children,n=e.dynamicChildren,s=ro(t,!1);if(s){if(s.patchFlag>0&&s.patchFlag&2048)return Yf(s)}else return[e,void 0];const r=t.indexOf(s),i=n?n.indexOf(s):-1,o=l=>{t[r]=l,n&&(i>-1?n[i]=l:l.patchFlag>0&&(e.dynamicChildren=[...n,l]))};return[ut(s),o]};function ro(e,t=!0){let n;for(let s=0;s0&&n.patchFlag&2048)return ro(n.children)}}else return}return n}const Hg=e=>{let t;for(const n in e)(n==="class"||n==="style"||rn(n))&&((t||(t={}))[n]=e[n]);return t},Ug=(e,t)=>{const n={};for(const s in e)(!bi(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n},Ec=e=>e.shapeFlag&7||e.type===$e;function Kg(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:a}=t,u=i.emitsOptions;if((r||l)&&In||t.dirs||t.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return s?Cc(s,o,u):!!o;if(a&8){const f=t.dynamicProps;for(let c=0;ce.__isSuspense;let Zo=0;const Yg={name:"Suspense",__isSuspense:!0,process(e,t,n,s,r,i,o,l,a,u){if(e==null)Xg(t,n,s,r,i,o,l,a,u);else{if(i&&i.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}Qg(e,t,n,s,r,o,l,a,u)}},hydrate:Zg,create:fa,normalize:ey},Jg=Yg;function yr(e,t){const n=e.props&&e.props[t];Z(n)&&n()}function Xg(e,t,n,s,r,i,o,l,a){const{p:u,o:{createElement:f}}=a,c=f("div"),d=e.suspense=fa(e,r,s,t,c,n,i,o,l,a);u(null,d.pendingBranch=e.ssContent,c,null,s,d,i,o),d.deps>0?(yr(e,"onPending"),yr(e,"onFallback"),u(null,e.ssFallback,t,n,s,null,i,o),_s(d,e.ssFallback)):d.resolve(!1,!0)}function Qg(e,t,n,s,r,i,o,l,{p:a,um:u,o:{createElement:f}}){const c=t.suspense=e.suspense;c.vnode=t,t.el=e.el;const d=t.ssContent,p=t.ssFallback,{activeBranch:m,pendingBranch:w,isInFallback:E,isHydrating:v}=c;if(w)c.pendingBranch=d,Pt(d,w)?(a(w,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():E&&(v||(a(m,p,n,s,r,null,i,o,l),_s(c,p)))):(c.pendingId=Zo++,v?(c.isHydrating=!1,c.activeBranch=w):u(w,r,c),c.deps=0,c.effects.length=0,c.hiddenContainer=f("div"),E?(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():(a(m,p,n,s,r,null,i,o,l),_s(c,p))):m&&Pt(d,m)?(a(m,d,n,s,r,c,i,o,l),c.resolve(!0)):(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0&&c.resolve()));else if(m&&Pt(d,m))a(m,d,n,s,r,c,i,o,l),_s(c,d);else if(yr(t,"onPending"),c.pendingBranch=d,d.shapeFlag&512?c.pendingId=d.component.suspenseId:c.pendingId=Zo++,a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0)c.resolve();else{const{timeout:y,pendingId:g}=c;y>0?setTimeout(()=>{c.pendingId===g&&c.fallback(p)},y):y===0&&c.fallback(p)}}let xc=!1;function fa(e,t,n,s,r,i,o,l,a,u,f=!1){xc||(xc=!0,console[console.info?"info":"log"](" is an experimental feature and its API will likely change."));const{p:c,m:d,um:p,n:m,o:{parentNode:w,remove:E}}=u;let v;const y=ty(e);y&&t!=null&&t.pendingBranch&&(v=t.pendingId,t.deps++);const g=e.props?Si(e.props.timeout):void 0;na(g,"Suspense timeout");const b=i,S={vnode:e,parent:t,parentComponent:n,namespace:o,container:s,hiddenContainer:r,deps:0,pendingId:Zo++,timeout:typeof g=="number"?g:-1,activeBranch:null,pendingBranch:null,isInFallback:!f,isHydrating:f,isUnmounted:!1,effects:[],resolve(O=!1,C=!1){{if(!O&&!S.pendingBranch)throw new Error("suspense.resolve() is called without a pending branch.");if(S.isUnmounted)throw new Error("suspense.resolve() is called on an already unmounted suspense boundary.")}const{vnode:x,activeBranch:T,pendingBranch:A,pendingId:k,effects:R,parentComponent:V,container:J}=S;let Q=!1;S.isHydrating?S.isHydrating=!1:O||(Q=T&&A.transition&&A.transition.mode==="out-in",Q&&(T.transition.afterLeave=()=>{k===S.pendingId&&(d(A,J,i===b?m(T):i,0),hr(R))}),T&&(w(T.el)!==S.hiddenContainer&&(i=m(T)),p(T,V,S,!0)),Q||d(A,J,i,0)),_s(S,A),S.pendingBranch=null,S.isInFallback=!1;let z=S.parent,G=!1;for(;z;){if(z.pendingBranch){z.effects.push(...R),G=!0;break}z=z.parent}!G&&!Q&&hr(R),S.effects=[],y&&t&&t.pendingBranch&&v===t.pendingId&&(t.deps--,t.deps===0&&!C&&t.resolve()),yr(x,"onResolve")},fallback(O){if(!S.pendingBranch)return;const{vnode:C,activeBranch:x,parentComponent:T,container:A,namespace:k}=S;yr(C,"onFallback");const R=m(x),V=()=>{S.isInFallback&&(c(null,O,A,R,T,null,k,l,a),_s(S,O))},J=O.transition&&O.transition.mode==="out-in";J&&(x.transition.afterLeave=V),S.isInFallback=!0,p(x,T,null,!0),J||V()},move(O,C,x){S.activeBranch&&d(S.activeBranch,O,C,x),S.container=O},next(){return S.activeBranch&&m(S.activeBranch)},registerDep(O,C){const x=!!S.pendingBranch;x&&S.deps++;const T=O.vnode.el;O.asyncDep.catch(A=>{Vn(A,O,0)}).then(A=>{if(O.isUnmounted||S.isUnmounted||S.pendingId!==O.suspenseId)return;O.asyncResolved=!0;const{vnode:k}=O;Qs(k),fl(O,A,!1),T&&(k.el=T);const R=!T&&O.subTree.el;C(O,k,w(T||O.subTree.el),T?null:m(O.subTree),S,o,a),R&&E(R),aa(O,k.el),Zs(),x&&--S.deps===0&&S.resolve()})},unmount(O,C){S.isUnmounted=!0,S.activeBranch&&p(S.activeBranch,n,O,C),S.pendingBranch&&p(S.pendingBranch,n,O,C)}};return S}function Zg(e,t,n,s,r,i,o,l,a){const u=t.suspense=fa(t,s,n,e.parentNode,document.createElement("div"),null,r,i,o,l,!0),f=a(e,u.pendingBranch=t.ssContent,n,u,i,o);return u.deps===0&&u.resolve(!1,!0),f}function ey(e){const{shapeFlag:t,children:n}=e,s=t&32;e.ssContent=Ac(s?n.default:n),e.ssFallback=s?Ac(n.fallback):xe($e)}function Ac(e){let t;if(Z(e)){const n=os&&e._c;n&&(e._d=!1,co()),e=e(),n&&(e._d=!0,t=ft,Md())}if(H(e)){const n=ro(e);!n&&e.filter(s=>s!==ca).length>0&&M(" slots expect a single root node."),e=n}return e=ut(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function Xf(e,t){t&&t.pendingBranch?H(e)?t.effects.push(...e):t.effects.push(e):hr(e)}function _s(e,t){e.activeBranch=t;const{vnode:n,parentComponent:s}=e;let r=t.el;for(;!r&&t.component;)t=t.component.subTree,r=t.el;n.el=r,s&&s.subTree===n&&(s.vnode.el=r,aa(s,r))}function ty(e){var t;return((t=e.props)==null?void 0:t.suspensible)!=null&&e.props.suspensible!==!1}const Qf=Symbol.for("v-scx"),Zf=()=>{{const e=Tt(Qf);return e||M("Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build."),e}};function da(e,t){return Pr(e,null,t)}function ed(e,t){return Pr(e,null,le({},t,{flush:"post"}))}function td(e,t){return Pr(e,null,le({},t,{flush:"sync"}))}const Jr={};function _e(e,t,n){return Z(t)||M("`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."),Pr(e,t,n)}function Pr(e,t,{immediate:n,deep:s,flush:r,once:i,onTrack:o,onTrigger:l}=ge){if(t&&i){const C=t;t=(...x)=>{C(...x),O()}}s!==void 0&&typeof s=="number"&&M('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&&M('watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.'),s!==void 0&&M('watch() "deep" option is only respected when using the watch(source, callback, options?) signature.'),i!==void 0&&M('watch() "once" option is only respected when using the watch(source, callback, options?) signature.'));const a=C=>{M("Invalid watch source: ",C,"A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.")},u=ke,f=C=>s===!0?C:zn(C,s===!1?1:void 0);let c,d=!1,p=!1;if(Te(e)?(c=()=>e.value,d=Rn(e)):es(e)?(c=()=>f(e),d=!0):H(e)?(p=!0,d=e.some(C=>es(C)||Rn(C)),c=()=>e.map(C=>{if(Te(C))return C.value;if(es(C))return f(C);if(Z(C))return Kt(C,u,2);a(C)})):Z(e)?t?c=()=>Kt(e,u,2):c=()=>(m&&m(),gt(e,u,3,[w])):(c=Pe,a(e)),t&&s){const C=c;c=()=>zn(C())}let m,w=C=>{m=b.onStop=()=>{Kt(C,u,4),m=b.onStop=void 0}},E;if($r)if(w=Pe,t?n&>(t,u,3,[c(),p?[]:void 0,w]):c(),r==="sync"){const C=Zf();E=C.__watcherHandles||(C.__watcherHandles=[])}else return Pe;let v=p?new Array(e.length).fill(Jr):Jr;const y=()=>{if(!(!b.active||!b.dirty))if(t){const C=b.run();(s||d||(p?C.some((x,T)=>$t(x,v[T])):$t(C,v)))&&(m&&m(),gt(t,u,3,[C,v===Jr?void 0:p&&v[0]===Jr?[]:v,w]),v=C)}else b.run()};y.allowRecurse=!!t;let g;r==="sync"?g=y:r==="post"?g=()=>ze(y,u&&u.suspense):(y.pre=!0,u&&(y.id=u.uid),g=()=>Ir(y));const b=new xs(c,Pe,g),S=zl(),O=()=>{b.stop(),S&&Bl(S.effects,b)};return b.onTrack=o,b.onTrigger=l,t?n?y():v=b.run():r==="post"?ze(b.run.bind(b),u&&u.suspense):b.run(),E&&E.push(O),O}function ny(e,t,n){const s=this.proxy,r=ne(e)?e.includes(".")?nd(s,e):()=>s[e]:e.bind(s,s);let i;Z(t)?i=t:(i=t.handler,n=t);const o=ls(this),l=Pr(r,i.bind(s),n);return o(),l}function nd(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r0){if(n>=t)return e;n++}if(s=s||new Set,s.has(e))return e;if(s.add(e),Te(e))zn(e.value,t,n,s);else if(H(e))for(let r=0;r{zn(r,t,n,s)});else if(cf(e))for(const r in e)zn(e[r],t,n,s);return e}function sd(e){uf(e)&&M("Do not use built-in directive ids as custom directive id: "+e)}function sy(e,t){if(Re===null)return M("withDirectives can only be used inside render functions."),e;const n=uo(Re)||Re.proxy,s=e.dirs||(e.dirs=[]);for(let r=0;r{e.isMounted=!0}),ao(()=>{e.isUnmounting=!0}),e}const _t=[Function,Array],ha={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:_t,onEnter:_t,onAfterEnter:_t,onEnterCancelled:_t,onBeforeLeave:_t,onLeave:_t,onAfterLeave:_t,onLeaveCancelled:_t,onBeforeAppear:_t,onAppear:_t,onAfterAppear:_t,onAppearCancelled:_t},ry={name:"BaseTransition",props:ha,setup(e,{slots:t}){const n=Ye(),s=pa();return()=>{const r=t.default&&io(t.default(),!0);if(!r||!r.length)return;let i=r[0];if(r.length>1){let d=!1;for(const p of r)if(p.type!==$e){if(d){M(" can only be used on a single element or component. Use for lists.");break}i=p,d=!0}}const o=re(e),{mode:l}=o;if(l&&l!=="in-out"&&l!=="out-in"&&l!=="default"&&M(`invalid mode: ${l}`),s.isLeaving)return Co(i);const a=Oc(i);if(!a)return Co(i);const u=As(a,o,s,n);is(a,u);const f=n.subTree,c=f&&Oc(f);if(c&&c.type!==$e&&!Pt(a,c)){const d=As(c,o,s,n);if(is(c,d),l==="out-in")return s.isLeaving=!0,d.afterLeave=()=>{s.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},Co(i);l==="in-out"&&a.type!==$e&&(d.delayLeave=(p,m,w)=>{const E=id(s,c);E[String(c.key)]=c,p[vn]=()=>{m(),p[vn]=void 0,delete u.delayedLeave},u.delayedLeave=w})}return i}}},rd=ry;function id(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function As(e,t,n,s){const{appear:r,mode:i,persisted:o=!1,onBeforeEnter:l,onEnter:a,onAfterEnter:u,onEnterCancelled:f,onBeforeLeave:c,onLeave:d,onAfterLeave:p,onLeaveCancelled:m,onBeforeAppear:w,onAppear:E,onAfterAppear:v,onAppearCancelled:y}=t,g=String(e.key),b=id(n,e),S=(x,T)=>{x&>(x,s,9,T)},O=(x,T)=>{const A=T[1];S(x,T),H(x)?x.every(k=>k.length<=1)&&A():x.length<=1&&A()},C={mode:i,persisted:o,beforeEnter(x){let T=l;if(!n.isMounted)if(r)T=w||l;else return;x[vn]&&x[vn](!0);const A=b[g];A&&Pt(e,A)&&A.el[vn]&&A.el[vn](),S(T,[x])},enter(x){let T=a,A=u,k=f;if(!n.isMounted)if(r)T=E||a,A=v||u,k=y||f;else return;let R=!1;const V=x[Xr]=J=>{R||(R=!0,J?S(k,[x]):S(A,[x]),C.delayedLeave&&C.delayedLeave(),x[Xr]=void 0)};T?O(T,[x,V]):V()},leave(x,T){const A=String(e.key);if(x[Xr]&&x[Xr](!0),n.isUnmounting)return T();S(c,[x]);let k=!1;const R=x[vn]=V=>{k||(k=!0,T(),V?S(m,[x]):S(p,[x]),x[vn]=void 0,b[A]===e&&delete b[A])};b[A]=e,d?O(d,[x,R]):R()},clone(x){return As(x,t,n,s)}};return C}function Co(e){if(js(e))return e=Ot(e),e.children=null,e}function Oc(e){if(!js(e))return e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&Z(n.default))return n.default()}}function is(e,t){e.shapeFlag&6&&e.component?is(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 io(e,t=!1,n){let s=[],r=0;for(let i=0;i1)for(let i=0;i!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function iy(e){Z(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:r=200,timeout:i,suspensible:o=!0,onError:l}=e;let a=null,u,f=0;const c=()=>(f++,a=null,d()),d=()=>{let p;return a||(p=a=t().catch(m=>{if(m=m instanceof Error?m:new Error(String(m)),l)return new Promise((w,E)=>{l(m,()=>w(c()),()=>E(m),f+1)});throw m}).then(m=>{if(p!==a&&a)return a;if(m||M("Async component loader resolved to undefined. If you are using retry(), make sure to return its return value."),m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),m&&!me(m)&&!Z(m))throw new Error(`Invalid async component load result: ${m}`);return u=m,m}))};return kr({name:"AsyncComponentWrapper",__asyncLoader:d,get __asyncResolved(){return u},setup(){const p=ke;if(u)return()=>To(u,p);const m=y=>{a=null,Vn(y,p,13,!s)};if(o&&p.suspense||$r)return d().then(y=>()=>To(y,p)).catch(y=>(m(y),()=>s?xe(s,{error:y}):null));const w=Y(!1),E=Y(),v=Y(!!r);return r&&setTimeout(()=>{v.value=!1},r),i!=null&&setTimeout(()=>{if(!w.value&&!E.value){const y=new Error(`Async component timed out after ${i}ms.`);m(y),E.value=y}},i),d().then(()=>{w.value=!0,p.parent&&js(p.parent.vnode)&&(p.parent.effect.dirty=!0,Ir(p.parent.update))}).catch(y=>{m(y),E.value=y}),()=>{if(w.value&&u)return To(u,p);if(E.value&&s)return xe(s,{error:E.value});if(n&&!v.value)return xe(n)}}})}function To(e,t){const{ref:n,props:s,children:r,ce:i}=t.vnode,o=xe(e,s,r);return o.ref=n,o.ce=i,delete t.vnode.ce,o}const js=e=>e.type.__isKeepAlive,oy={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Ye(),s=n.ctx;if(!s.renderer)return()=>{const y=t.default&&t.default();return y&&y.length===1?y[0]:y};const r=new Map,i=new Set;let o=null;n.__v_cache=r;const l=n.suspense,{renderer:{p:a,m:u,um:f,o:{createElement:c}}}=s,d=c("div");s.activate=(y,g,b,S,O)=>{const C=y.component;u(y,g,b,0,l),a(C.vnode,y,g,b,C,l,S,y.slotScopeIds,O),ze(()=>{C.isDeactivated=!1,C.a&&En(C.a);const x=y.props&&y.props.onVnodeMounted;x&&at(x,C.parent,y)},l),Xo(C)},s.deactivate=y=>{const g=y.component;u(y,d,null,1,l),ze(()=>{g.da&&En(g.da);const b=y.props&&y.props.onVnodeUnmounted;b&&at(b,g.parent,y),g.isDeactivated=!0},l),Xo(g)};function p(y){xo(y),f(y,n,l,!0)}function m(y){r.forEach((g,b)=>{const S=br(g.type);S&&(!y||!y(S))&&w(b)})}function w(y){const g=r.get(y);!o||!Pt(g,o)?p(g):o&&xo(o),r.delete(y),i.delete(y)}_e(()=>[e.include,e.exclude],([y,g])=>{y&&m(b=>Js(y,b)),g&&m(b=>!Js(g,b))},{flush:"post",deep:!0});let E=null;const v=()=>{E!=null&&r.set(E,Ao(n.subTree))};return us(v),lo(v),ao(()=>{r.forEach(y=>{const{subTree:g,suspense:b}=n,S=Ao(g);if(y.type===S.type&&y.key===S.key){xo(S);const O=S.component.da;O&&ze(O,b);return}p(y)})}),()=>{if(E=null,!t.default)return o=null;const y=t.default(),g=y[0];if(y.length>1)return M("KeepAlive should contain exactly one component child."),o=null,y;if(!on(g)||!(g.shapeFlag&4)&&!(g.shapeFlag&128))return o=null,g;let b=Ao(g);const S=b.type,O=br(ns(b)?b.type.__asyncResolved||{}:S),{include:C,exclude:x,max:T}=e;if(C&&(!O||!Js(C,O))||x&&O&&Js(x,O))return o=b,g;const A=b.key==null?S:b.key,k=r.get(A);return b.el&&(b=Ot(b),g.shapeFlag&128&&(g.ssContent=b)),E=A,k?(b.el=k.el,b.component=k.component,b.transition&&is(b,b.transition),b.shapeFlag|=512,i.delete(A),i.add(A)):(i.add(A),T&&i.size>parseInt(T,10)&&w(i.values().next().value)),b.shapeFlag|=256,o=b,Jf(g.type)?g:b}}},ly=oy;function Js(e,t){return H(e)?e.some(n=>Js(n,t)):ne(e)?e.split(",").includes(t):mm(e)?e.test(t):!1}function od(e,t){ad(e,"a",t)}function ld(e,t){ad(e,"da",t)}function ad(e,t,n=ke){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(oo(t,s,n),n){let r=n.parent;for(;r&&r.parent;)js(r.parent.vnode)&&ay(s,t,n,r),r=r.parent}}function ay(e,t,n,s){const r=oo(t,e,s,!0);Mr(()=>{Bl(s[t],r)},n)}function xo(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Ao(e){return e.shapeFlag&128?e.ssContent:e}function oo(e,t,n=ke,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;ln();const l=ls(n),a=gt(t,n,e,o);return l(),an(),a});return s?r.unshift(i):r.push(i),i}else{const r=Vt(to[e].replace(/ hook$/,""));M(`${r} 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 cn=e=>(t,n=ke)=>(!$r||e==="sp")&&oo(e,(...s)=>t(...s),n),cd=cn("bm"),us=cn("m"),ud=cn("bu"),lo=cn("u"),ao=cn("bum"),Mr=cn("um"),fd=cn("sp"),dd=cn("rtg"),pd=cn("rtc");function hd(e,t=ke){oo("ec",e,t)}function cy(e,t,n,s){let r;const i=n&&n[s];if(H(e)||ne(e)){r=new Array(e.length);for(let o=0,l=e.length;ot(o,l,void 0,i&&i[l]));else{const o=Object.keys(e);r=new Array(o.length);for(let l=0,a=o.length;l{const i=s.fn(...r);return i&&(i.key=s.key),i}:s.fn)}return e}function fy(e,t,n={},s,r){if(Re.isCE||Re.parent&&ns(Re.parent)&&Re.parent.isCE)return t!=="default"&&(n.name=t),xe("slot",n,s&&s());let i=e[t];i&&i.length>1&&(M("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."),i=()=>[]),i&&i._c&&(i._d=!1),co();const o=i&&md(i(n)),l=va(De,{key:n.key||o&&o.key||`_${t}`},o||(s?s():[]),o&&e._===1?64:-2);return!r&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),i&&i._c&&(i._d=!0),l}function md(e){return e.some(t=>on(t)?!(t.type===$e||t.type===De&&!md(t.children)):!0)?e:null}function dy(e,t){const n={};if(!me(e))return M("v-on with no argument expects an object value."),n;for(const s in e)n[t&&/[A-Z]/.test(s)?`on:${s}`:Vt(s)]=e[s];return n}const el=e=>e?Bd(e)?uo(e)||e.proxy:el(e.parent):null,ss=le(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>Bt(e.props),$attrs:e=>Bt(e.attrs),$slots:e=>Bt(e.slots),$refs:e=>Bt(e.refs),$parent:e=>el(e.parent),$root:e=>el(e.root),$emit:e=>e.emit,$options:e=>ga(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Ir(e.update)}),$nextTick:e=>e.n||(e.n=jn.bind(e.proxy)),$watch:e=>ny.bind(e)}),ma=e=>e==="_"||e==="$",Oo=(e,t)=>e!==ge&&!e.__isScriptSetup&&pe(e,t),tr={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:a}=e;if(t==="__isVue")return!0;let u;if(t[0]!=="$"){const p=o[t];if(p!==void 0)switch(p){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(Oo(s,t))return o[t]=1,s[t];if(r!==ge&&pe(r,t))return o[t]=2,r[t];if((u=e.propsOptions[0])&&pe(u,t))return o[t]=3,i[t];if(n!==ge&&pe(n,t))return o[t]=4,n[t];tl&&(o[t]=0)}}const f=ss[t];let c,d;if(f)return t==="$attrs"?(tt(e.attrs,"get",""),Ci()):t==="$slots"&&tt(e,"get",t),f(e);if((c=l.__cssModules)&&(c=c[t]))return c;if(n!==ge&&pe(n,t))return o[t]=4,n[t];if(d=a.config.globalProperties,pe(d,t))return d[t];Re&&(!ne(t)||t.indexOf("__v")!==0)&&(r!==ge&&ma(t[0])&&pe(r,t)?M(`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===Re&&M(`Property ${JSON.stringify(t)} was accessed during render but is not defined on instance.`))},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return Oo(r,t)?(r[t]=n,!0):r.__isScriptSetup&&pe(r,t)?(M(`Cannot mutate - - - + + + - +
+
diff --git a/03-layered/404.html b/03-layered/404.html index 0a24fbf..184bdb6 100644 --- a/03-layered/404.html +++ b/03-layered/404.html @@ -7,14 +7,15 @@ - - - + + + - +
+
diff --git a/03-layered/assets/10-CLajUH68.js b/03-layered/assets/10-CLajUH68.js new file mode 100644 index 0000000..85cb459 --- /dev/null +++ b/03-layered/assets/10-CLajUH68.js @@ -0,0 +1 @@ +import{o as r,c as a,k as t,a6 as l,q as n,s as _,A as o,e as s}from"./modules/vue-BeRk5K_R.js";import{I as i}from"./slidev/two-cols-DDhFBQ8P.js";import{_ as c,af as e}from"./index-BUF10GjR.js";import{p as u,u as p,f as d}from"./slidev/context-X7FPJONu.js";import"./modules/shiki-DYdhqpMF.js";const m="/sa2024/03-layered/assets/03-abstraction-DGNEynSK.png",f=s("h1",null,"共性提取",-1),h=s("br",null,null,-1),b=s("br",null,null,-1),x=s("ul",null,[s("li",null,"可靠传输"),s("li",null,"无失败传输"),s("li",null,"无错误投递")],-1),g=s("p",null,[s("br"),s("br"),s("br"),s("br")],-1),P=s("img",{src:m,class:"h-60"},null,-1),k={__name:"10",setup(v){return u(e),p(),(y,B)=>(r(),a(i,n(_(o(d)(o(e),9))),{right:t(N=>[g,P]),default:t(()=>[f,h,l(" “公共功能”需求:对网络假设的相同 "),b,x]),_:1},16))}},j=c(k,[["__file","/@slidev/slides/10.md"]]);export{j as default}; diff --git a/03-layered/assets/11-BQdj_s4J.js b/03-layered/assets/11-BQdj_s4J.js new file mode 100644 index 0000000..a03a90c --- /dev/null +++ b/03-layered/assets/11-BQdj_s4J.js @@ -0,0 +1 @@ +import{o as r,c as a,k as t,q as n,s as _,A as e,e as s}from"./modules/vue-BeRk5K_R.js";import{I as i}from"./slidev/two-cols-DDhFBQ8P.js";import{_ as c,ag as o}from"./index-BUF10GjR.js";import{p,u as l,f as m}from"./slidev/context-X7FPJONu.js";import"./modules/shiki-DYdhqpMF.js";const d="/sa2024/03-layered/assets/03-internet-CuxL9Uvj.png",u="/sa2024/03-layered/assets/03-ip-BdNkbTbv.png",f=s("h1",null,"互联网协议栈设计",-1),h=s("img",{src:d,class:"m-10 h-60"},null,-1),g=s("p",null,[s("br"),s("br")],-1),x=s("img",{src:u,class:"h-80"},null,-1),v={__name:"11",setup(b){return p(o),l(),(k,B)=>(r(),a(i,n(_(e(m)(e(o),10))),{right:t(P=>[g,x]),default:t(()=>[f,h]),_:1},16))}},N=c(v,[["__file","/@slidev/slides/11.md"]]);export{N as default}; diff --git a/03-layered/assets/12-B0mW1y2c.js b/03-layered/assets/12-B0mW1y2c.js new file mode 100644 index 0000000..386d193 --- /dev/null +++ b/03-layered/assets/12-B0mW1y2c.js @@ -0,0 +1 @@ +import{o as r,c as a,k as t,q as n,s as i,A as e,e as s,a6 as l}from"./modules/vue-BeRk5K_R.js";import{I as u}from"./slidev/two-cols-DDhFBQ8P.js";import{_,ah as o}from"./index-BUF10GjR.js";import{p as c,u as p,f as m}from"./slidev/context-X7FPJONu.js";import"./modules/shiki-DYdhqpMF.js";const d="/sa2024/03-layered/assets/03-soc-C7ry2rBq.png",f=s("h1",null,"核心思想",-1),h=s("ul",null,[s("li",null,[l("实现了对复杂问题的分步求解 "),s("ul",null,[s("li",null,"自顶向下看:不断的假设过程"),s("li",null,"自底向上看:不断的抽象过程")])]),s("li",null,[l("各层语义良好 "),s("ul",null,[s("li",null,"具有明确的使用场景"),s("li",null,"提供良好的复用条件")])])],-1),x=s("p",null,[s("br"),s("br"),s("img",{src:d,class:"h-80"})],-1),g={__name:"12",setup(B){return c(o),p(),(P,k)=>(r(),a(u,n(i(e(m)(e(o),11))),{right:t(v=>[x]),default:t(()=>[f,h]),_:1},16))}},N=_(g,[["__file","/@slidev/slides/12.md"]]);export{N as default}; diff --git a/03-layered/assets/13-gXbSBqxj.js b/03-layered/assets/13-gXbSBqxj.js new file mode 100644 index 0000000..b35ceb5 --- /dev/null +++ b/03-layered/assets/13-gXbSBqxj.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as p,s as i,A as s,e}from"./modules/vue-BeRk5K_R.js";import{I as n}from"./slidev/default-BG4F52B6.js";import{_,ai as t}from"./index-BUF10GjR.js";import{p as c,u as m,f as l}from"./slidev/context-X7FPJONu.js";import"./modules/shiki-DYdhqpMF.js";const d="/sa2024/03-layered/assets/03-desktop-CpQyJ1qL.png",f=e("h1",null,"再例如:Desktop Application",-1),u=e("img",{src:d,class:"h-90"},null,-1),h={__name:"13",setup(k){return c(t),m(),(x,g)=>(o(),a(n,p(i(s(l)(s(t),12))),{default:r(()=>[f,u]),_:1},16))}},q=_(h,[["__file","/@slidev/slides/13.md"]]);export{q as default}; diff --git a/03-layered/assets/14-CqNy6x4p.js b/03-layered/assets/14-CqNy6x4p.js new file mode 100644 index 0000000..d092723 --- /dev/null +++ b/03-layered/assets/14-CqNy6x4p.js @@ -0,0 +1 @@ +import{o as r,c as o,k as s,q as i,s as n,A as t,e}from"./modules/vue-BeRk5K_R.js";import{I as l}from"./slidev/two-cols-DDhFBQ8P.js";import{_ as c,aj as a}from"./index-BUF10GjR.js";import{p as _,u as p,f as h}from"./slidev/context-X7FPJONu.js";import"./modules/shiki-DYdhqpMF.js";const u="/sa2024/03-layered/assets/03-3L-BNLn19kn.png",d=e("h1",null,"Three layered",-1),m=e("ul",null,[e("li",null,"Data Access Layer is basically the server which stores all the application’s data."),e("li",null,"Business Logic Layer is mainly working as the bridge between Data Access Layer and Presentation Layer."),e("li",null,"Presentation Layer is the layer in which the users interact with an application.")],-1),f=e("p",null,[e("br"),e("br")],-1),y=e("img",{src:u,class:"h-90"},null,-1),L={__name:"14",setup(g){return _(a),p(),(w,P)=>(r(),o(l,i(n(t(h)(t(a),13))),{right:s(b=>[f,y]),default:s(()=>[d,m]),_:1},16))}},j=c(L,[["__file","/@slidev/slides/14.md"]]);export{j as default}; diff --git a/03-layered/assets/2-Ce9wY0TA.js b/03-layered/assets/2-Ce9wY0TA.js new file mode 100644 index 0000000..7664cb2 --- /dev/null +++ b/03-layered/assets/2-Ce9wY0TA.js @@ -0,0 +1 @@ +import{o as l,c as r,k as t,q as a,s as n,A as o,e as s}from"./modules/vue-BeRk5K_R.js";import{I as _}from"./slidev/two-cols-DDhFBQ8P.js";import{_ as i,a7 as e}from"./index-BUF10GjR.js";import{p as c,u,f as m}from"./slidev/context-X7FPJONu.js";import"./modules/shiki-DYdhqpMF.js";const p="/sa2024/03-layered/assets/03-evol-01-CuubCwRV.png",d="/sa2024/03-layered/assets/03-evol-hardware-DhElECRJ.png",h=s("h1",null,"软件设计发展",-1),f=s("br",null,null,-1),g=s("ul",null,[s("li",null,"初始状态:硬件"),s("li",null,"如何提高算法适应性?"),s("li",null,"分离出了程序(汇编)")],-1),v=s("br",null,null,-1),x=s("img",{src:p,class:"m-0 h-20"},null,-1),C=s("img",{src:d,class:"m-20 h-60"},null,-1),P={__name:"2",setup(b){return c(e),u(),(k,w)=>(l(),r(_,a(n(o(m)(o(e),1))),{right:t(y=>[C]),default:t(()=>[h,f,g,v,x]),_:1},16))}},j=i(P,[["__file","/@slidev/slides/2.md"]]);export{j as default}; diff --git a/03-layered/assets/3-BpOkxyUj.js b/03-layered/assets/3-BpOkxyUj.js new file mode 100644 index 0000000..10801cb --- /dev/null +++ b/03-layered/assets/3-BpOkxyUj.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as l,s as n,A as t,e as s,a6 as _}from"./modules/vue-BeRk5K_R.js";import{I as i}from"./slidev/default-BG4F52B6.js";import{_ as c,a8 as e}from"./index-BUF10GjR.js";import{p as u,u as m,f as p}from"./slidev/context-X7FPJONu.js";import"./modules/shiki-DYdhqpMF.js";const d="/sa2024/03-layered/assets/03-evol-02-CDWl5oNo.png",f=s("h1",null,"发展-操作系统软件",-1),h=s("br",null,null,-1),x=s("ul",null,[s("li",null,"初始状态:硬件 + 程序"),s("li",null,"程序的共性(稳定)成分: 计算资源管理"),s("li",null,"产生:操作系统"),s("li",null,[_("分离出了:应用程序 "),s("br")])],-1),v=s("img",{src:d,class:"m-20 h-30"},null,-1),g={__name:"3",setup(k){return u(e),m(),(B,C)=>(o(),a(i,l(n(t(p)(t(e),2))),{default:r(()=>[f,h,x,v]),_:1},16))}},T=c(g,[["__file","/@slidev/slides/3.md"]]);export{T as default}; diff --git a/03-layered/assets/4-D7UNWwza.js b/03-layered/assets/4-D7UNWwza.js new file mode 100644 index 0000000..6059754 --- /dev/null +++ b/03-layered/assets/4-D7UNWwza.js @@ -0,0 +1 @@ +import{o,c as r,k as l,q as a,s as n,A as t,e as s}from"./modules/vue-BeRk5K_R.js";import{I as _}from"./slidev/default-BG4F52B6.js";import{_ as i,a9 as e}from"./index-BUF10GjR.js";import{p as c,u,f as m}from"./slidev/context-X7FPJONu.js";import"./modules/shiki-DYdhqpMF.js";const p="/sa2024/03-layered/assets/03-evol-03-DU0ucUBr.png",d=s("h1",null,"发展-数据库软件",-1),f=s("br",null,null,-1),h=s("ul",null,[s("li",null,"初始状态:硬件 + 操作系统 + 应用程序"),s("li",null,"程序的共性(稳定)成分:数据管理"),s("li",null,"产生了:数据库管理系统"),s("li",null,"分离出了:应用软件")],-1),x=s("img",{src:p,class:"m-10 h-40"},null,-1),v={__name:"4",setup(B){return c(e),u(),(g,k)=>(o(),r(_,a(n(t(m)(t(e),3))),{default:l(()=>[d,f,h,x]),_:1},16))}},b=i(v,[["__file","/@slidev/slides/4.md"]]);export{b as default}; diff --git a/03-layered/assets/5-CwDVTQBX.js b/03-layered/assets/5-CwDVTQBX.js new file mode 100644 index 0000000..7d657c7 --- /dev/null +++ b/03-layered/assets/5-CwDVTQBX.js @@ -0,0 +1 @@ +import{o as r,c as l,k as t,q as a,s as n,A as o,e as s}from"./modules/vue-BeRk5K_R.js";import{I as i}from"./slidev/two-cols-DDhFBQ8P.js";import{_,aa as e}from"./index-BUF10GjR.js";import{p as c,u,f as m}from"./slidev/context-X7FPJONu.js";import"./modules/shiki-DYdhqpMF.js";const p="/sa2024/03-layered/assets/03-evol-04-DzxBr1Rt.png",d=s("h1",null,"发展-中间件软件",-1),f=s("br",null,null,-1),h=s("ul",null,[s("li",null,"初始状态:硬件 + 操作系统 + 数据库管理系统 +应用软件"),s("li",null,"程序的共性(稳定)成分:资源管理和服务"),s("li",null,"产生了:中间件(应用服务器)"),s("li",null,"分离出了:业务逻辑")],-1),x=s("img",{src:p,class:"m-10 h-80"},null,-1),g={__name:"5",setup(v){return c(e),u(),(B,P)=>(r(),l(i,a(n(o(m)(o(e),4))),{right:t(k=>[x]),default:t(()=>[d,f,h]),_:1},16))}},b=_(g,[["__file","/@slidev/slides/5.md"]]);export{b as default}; diff --git a/03-layered/assets/6-8Rfx_mzJ.js b/03-layered/assets/6-8Rfx_mzJ.js new file mode 100644 index 0000000..6758403 --- /dev/null +++ b/03-layered/assets/6-8Rfx_mzJ.js @@ -0,0 +1 @@ +import{o,c as r,k as a,q as n,s as _,A as t,e as s}from"./modules/vue-BeRk5K_R.js";import{I as l}from"./slidev/default-BG4F52B6.js";import{_ as c,ab as e}from"./index-BUF10GjR.js";import{p as i,u as m,f as p}from"./slidev/context-X7FPJONu.js";import"./modules/shiki-DYdhqpMF.js";const u="/sa2024/03-layered/assets/03-evol-05-BA-YuExY.png",d=s("h1",null,"发展历程",-1),f=s("br",null,null,-1),h=s("img",{src:u,class:"m-10 h-60"},null,-1),x=s("p",null,"为控制软件复杂度提取软件的共性成份而沉淀下来的一层软件,屏蔽系统低层的复杂度,在高层保持复杂度的相对稳定",-1),v={__name:"6",setup(B){return i(e),m(),(g,k)=>(o(),r(l,n(_(t(p)(t(e),5))),{default:a(()=>[d,f,h,x]),_:1},16))}},I=c(v,[["__file","/@slidev/slides/6.md"]]);export{I as default}; diff --git a/03-layered/assets/7-DTErAE6N.js b/03-layered/assets/7-DTErAE6N.js new file mode 100644 index 0000000..5fceb1e --- /dev/null +++ b/03-layered/assets/7-DTErAE6N.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as _,s as c,A as s,e as t}from"./modules/vue-BeRk5K_R.js";import{I as n}from"./slidev/default-BG4F52B6.js";import{_ as m,ac as e}from"./index-BUF10GjR.js";import{p as i,u as p,f as l}from"./slidev/context-X7FPJONu.js";import"./modules/shiki-DYdhqpMF.js";const d="/sa2024/03-layered/assets/03-layers-C7eYj5g0.png",f=t("h1",null,"分层结构",-1),u=t("img",{src:d,class:"m-20 h-60"},null,-1),h={__name:"7",setup(x){return i(e),p(),(g,k)=>(o(),a(n,_(c(s(l)(s(e),6))),{default:r(()=>[f,u]),_:1},16))}},j=m(h,[["__file","/@slidev/slides/7.md"]]);export{j as default}; diff --git a/03-layered/assets/8-B4oJgYsx.js b/03-layered/assets/8-B4oJgYsx.js new file mode 100644 index 0000000..7cb94f7 --- /dev/null +++ b/03-layered/assets/8-B4oJgYsx.js @@ -0,0 +1 @@ +import{o as r,c as a,k as t,q as n,s as _,A as o,e as s}from"./modules/vue-BeRk5K_R.js";import{I as i}from"./slidev/two-cols-DDhFBQ8P.js";import{_ as c,ad as e}from"./index-BUF10GjR.js";import{p as l,u as m,f as p}from"./slidev/context-X7FPJONu.js";import"./modules/shiki-DYdhqpMF.js";const d="/sa2024/03-layered/assets/03-linux-C9VCsbbM.png",u="/sa2024/03-layered/assets/03-osi-DOLuLuNm.png",f=s("h1",null,"典型分层设计",-1),h=s("img",{src:d,class:"m-20 h-60"},null,-1),b=s("p",null,[s("br"),s("br"),s("br"),s("br")],-1),g=s("img",{src:u,class:"h-60"},null,-1),x={__name:"8",setup(C){return l(e),m(),(P,k)=>(r(),a(i,n(_(o(p)(o(e),7))),{right:t(v=>[b,g]),default:t(()=>[f,h]),_:1},16))}},V=c(x,[["__file","/@slidev/slides/8.md"]]);export{V as default}; diff --git a/03-layered/assets/9-Dyxg0qcS.js b/03-layered/assets/9-Dyxg0qcS.js new file mode 100644 index 0000000..9448bc6 --- /dev/null +++ b/03-layered/assets/9-Dyxg0qcS.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as n,s as _,A as t,e as s}from"./modules/vue-BeRk5K_R.js";import{I as c}from"./slidev/default-BG4F52B6.js";import{_ as m,ae as e}from"./index-BUF10GjR.js";import{p,u as i,f as l}from"./slidev/context-X7FPJONu.js";import"./modules/shiki-DYdhqpMF.js";const d="/sa2024/03-layered/assets/03-apps-DUcdymS3.png",u=s("h1",null,"网络协议层",-1),f=s("br",null,null,-1),h=s("img",{src:d,class:"m-10 h-80"},null,-1),x={__name:"9",setup(g){return p(e),i(),(k,v)=>(o(),a(c,n(_(t(l)(t(e),8))),{default:r(()=>[u,f,h]),_:1},16))}},S=m(x,[["__file","/@slidev/slides/9.md"]]);export{S as default}; diff --git a/03-layered/assets/ClicksSlider-qq1Ub2AL.css b/03-layered/assets/ClicksSlider-qq1Ub2AL.css new file mode 100644 index 0000000..ded5c92 --- /dev/null +++ b/03-layered/assets/ClicksSlider-qq1Ub2AL.css @@ -0,0 +1 @@ +.range[data-v-e916140b]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}.range[data-v-e916140b]::-webkit-slider-thumb{-webkit-appearance:none;height:100%;width:var(--thumb-width, .5rem)}.range[data-v-e916140b]::-moz-range-thumb{height:100%;width:var(--thumb-width, .5rem)} diff --git a/03-layered/assets/ContextMenu-DSnskk1a.css b/03-layered/assets/ContextMenu-DSnskk1a.css new file mode 100644 index 0000000..b193adb --- /dev/null +++ b/03-layered/assets/ContextMenu-DSnskk1a.css @@ -0,0 +1 @@ +.select-list[data-v-9e4a80e3]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-9e4a80e3]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-9e4a80e3]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-9e4a80e3]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-9e4a80e3]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}.autocomplete-list[data-v-a9c46306]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-a9c46306]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-a9c46306]{cursor:pointer}#slideshow[data-v-63954aac]{height:100%} diff --git a/03-layered/assets/DrawingControls-BO6lw4N5.css b/03-layered/assets/DrawingControls-BO6lw4N5.css deleted file mode 100644 index beec79d..0000000 --- a/03-layered/assets/DrawingControls-BO6lw4N5.css +++ /dev/null @@ -1 +0,0 @@ -.resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper__popper{z-index:10000;top:0;left:0;outline:none}.v-popper__popper.v-popper__popper--hidden{visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s;pointer-events:none}.v-popper__popper.v-popper__popper--shown{visibility:visible;opacity:1;transition:opacity .15s}.v-popper__popper.v-popper__popper--skip-transition,.v-popper__popper.v-popper__popper--skip-transition>.v-popper__wrapper{transition:none!important}.v-popper__backdrop{position:absolute;top:0;left:0;width:100%;height:100%;display:none}.v-popper__inner{position:relative;box-sizing:border-box;overflow-y:auto}.v-popper__inner>div{position:relative;z-index:1;max-width:inherit;max-height:inherit}.v-popper__arrow-container{position:absolute;width:10px;height:10px}.v-popper__popper--arrow-overflow .v-popper__arrow-container,.v-popper__popper--no-positioning .v-popper__arrow-container{display:none}.v-popper__arrow-inner,.v-popper__arrow-outer{border-style:solid;position:absolute;top:0;left:0;width:0;height:0}.v-popper__arrow-inner{visibility:hidden;border-width:7px}.v-popper__arrow-outer{border-width:6px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{left:-2px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{left:-1px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer{border-bottom-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:0}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{border-top-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{top:-4px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{top:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{top:-1px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{border-left-width:0;border-left-color:transparent!important;border-top-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{left:-4px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{left:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer{border-right-width:0;border-top-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner{left:-2px}.v-popper--theme-tooltip .v-popper__inner{background:#000c;color:#fff;border-radius:6px;padding:7px 12px 6px}.v-popper--theme-tooltip .v-popper__arrow-outer{border-color:#000c}.v-popper--theme-dropdown .v-popper__inner{background:#fff;color:#000;border-radius:6px;border:1px solid #ddd;box-shadow:0 6px 30px #0000001a}.v-popper--theme-dropdown .v-popper__arrow-inner{visibility:visible;border-color:#fff}.v-popper--theme-dropdown .v-popper__arrow-outer{border-color:#ddd}.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/03-layered/assets/DrawingControls-C5T1oZL5.css b/03-layered/assets/DrawingControls-C5T1oZL5.css new file mode 100644 index 0000000..bf95bff --- /dev/null +++ b/03-layered/assets/DrawingControls-C5T1oZL5.css @@ -0,0 +1 @@ +.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/03-layered/assets/DrawingPreview-DJ7dOR_1.css b/03-layered/assets/DrawingPreview-DJ7dOR_1.css new file mode 100644 index 0000000..d8ce4e2 --- /dev/null +++ b/03-layered/assets/DrawingPreview-DJ7dOR_1.css @@ -0,0 +1 @@ +#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.disable-view-transition[data-v-1e2c950d] *{view-transition-name:none!important}.slidev-page[data-v-1e2c950d]{position:absolute;width:100%;height:100%} diff --git a/03-layered/assets/SlidesShow-Do3DTZt5.css b/03-layered/assets/SlidesShow-Do3DTZt5.css deleted file mode 100644 index 4ca12c5..0000000 --- a/03-layered/assets/SlidesShow-Do3DTZt5.css +++ /dev/null @@ -1 +0,0 @@ -#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete-list[data-v-9ed224f5]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-9ed224f5]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-9ed224f5]{cursor:pointer}.select-list[data-v-38e64e7e]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-38e64e7e]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-38e64e7e]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-38e64e7e]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-38e64e7e]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}#slideshow[data-v-2fe83b23]{height:100%}#slideshow>div[data-v-2fe83b23]{position:absolute;height:100%;width:100%} diff --git a/03-layered/assets/index-5Lv0SiCY.css b/03-layered/assets/index-5Lv0SiCY.css deleted file mode 100644 index 477e10e..0000000 --- a/03-layered/assets/index-5Lv0SiCY.css +++ /dev/null @@ -1 +0,0 @@ -.slidev-layout.end[data-v-e7ce0abf]{display:grid;height:100%;-webkit-user-select:none;user-select:none;place-content:center;--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity));text-align:center;font-size:1.25rem;line-height:1.75rem;--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity));--un-text-opacity:.85;letter-spacing:.1em}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media print{.print-container{width:100%}}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 640px){@media print{.print-container{max-width:640px}}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 768px){@media print{.print-container{max-width:768px}}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1024px){@media print{.print-container{max-width:1024px}}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1280px){@media print{.print-container{max-width:1280px}}}@media (min-width: 1536px){.container{max-width:1536px}}@media (min-width: 1536px){@media print{.print-container{max-width:1536px}}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .line.dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}div[widgetid=messageoverlay]{transform:translateY(calc(100% * (var(--slidev-slide-scale) - 1)))}.slidev-monaco-container{position:relative;margin:var(--slidev-code-margin);padding:var(--slidev-code-padding);line-height:var(--slidev-code-line-height);border-radius:var(--slidev-code-radius);background:var(--slidev-code-background)}.slidev-monaco-container .monaco-editor{--monaco-monospace-font: var(--slidev-code-font-family);--vscode-editor-background: var(--slidev-code-background);--vscode-editorGutter-background: var(--slidev-code-background)}.slidev-monaco-container .monaco-editor a,.slidev-monaco-container .monaco-editor a:hover{border-bottom:none}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:calc(13px * var(--slidev-slide-scale, 1))}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute,[absolute=""]{position:absolute}.fixed{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5{right:1.25rem}.top-0{top:0}.top-1\/2{top:50%}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-0{margin:0}.m-1{margin:.25rem}.m-10{margin:2.5rem}.m-20{margin:5rem}.m-4{margin:1rem}.m-auto{margin:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.mb-10{margin-bottom:2.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.aspect-ratio-initial{aspect-ratio:initial}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-20{height:5rem}.h-22px{height:22px}.h-30{height:7.5rem}.h-3px{height:3px}.h-40{height:10rem}.h-40px{height:40px}.h-5,.h5,[h5=""]{height:1.25rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-80{height:20rem}.h-90{height:22.5rem}.h-full,[h-full=""]{height:100%}.h1{height:.25rem}.h2{height:.5rem}.max-w-150{max-width:37.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-w-16{min-width:4rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-1px{width:1px}.w-22px{width:22px}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.flex,[flex=""],[flex~="~"]{display:flex}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-0{--un-translate-x:0;--un-translate-y:0;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-inside-avoid-page{break-inside:avoid-page}.break-after-page{break-after:page}.place-content-center{place-content:center}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4{gap:1rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""]{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border~=t]{border-top-width:1px}.border-gray-300\/50{border-color:#d1d5db80}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.\!border-none{border-style:none!important}.bg-black,[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray\/20{background-color:#9ca3af33}.bg-transparent{background-color:transparent}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.\!bg-opacity-75{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2{padding:.5rem}.\!p-4{padding:1rem!important}.px,.px-4,.px4,[p~=x-4]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2{padding-left:.5rem;padding-right:.5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-4{padding-top:1rem;padding-bottom:1rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}.text-opacity-85{--un-text-opacity:.85}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""]{opacity:1}.op20{opacity:.2}.op30{opacity:.3}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80{opacity:.8}.\!opacity-0{opacity:0!important}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.opacity-25{opacity:.25}.opacity-40{opacity:.4}[hover~=op100]:hover,.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@media (max-width: 767.9px){.lt-md\:hidden{display:none}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}} diff --git a/03-layered/assets/index-BA18Dx6b.css b/03-layered/assets/index-BA18Dx6b.css new file mode 100644 index 0000000..c4bdcd2 --- /dev/null +++ b/03-layered/assets/index-BA18Dx6b.css @@ -0,0 +1 @@ +*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border-main=""],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main,[bg-main=""]{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main,.dark [bg-main=""]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.hover\:bg-active:hover,[hover\:bg-active=""]:hover{background-color:#9ca3af1a}.dark .text-main{--un-text-opacity:1;color:rgb(221 221 221 / var(--un-text-opacity))}.text-main{--un-text-opacity:1;color:rgb(24 24 24 / var(--un-text-opacity))}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .slidev-code-dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:13px}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.i-svg-spinners-90-ring-with-bg{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z' opacity='.25'/%3E%3Cpath fill='currentColor' d='M10.14,1.16a11,11,0,0,0-9,8.92A1.59,1.59,0,0,0,2.46,12,1.52,1.52,0,0,0,4.11,10.7a8,8,0,0,1,6.66-6.61A1.42,1.42,0,0,0,12,2.69h0A1.57,1.57,0,0,0,10.14,1.16Z'%3E%3CanimateTransform attributeName='transform' dur='0.75s' repeatCount='indefinite' type='rotate' values='0 12 12;360 12 12'/%3E%3C/path%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1em;height:1em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none,[pointer-events-none=""]{pointer-events:none}.absolute,[absolute=""]{position:absolute}.fixed,[fixed=""]{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-110\%,[left-110\%=""]{left:110%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5,[right-5=""]{right:1.25rem}.top-0{top:0}.top-1\/2,.top-50\%,[top-50\%=""]{top:50%}.-top-15px{top:-15px}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-100{z-index:100}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-cols-\[35px_1fr\]{grid-template-columns:35px 1fr}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-rows-\[auto_max-content\]{grid-template-rows:auto max-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-0{margin:0}.m-1{margin:.25rem}.m-10{margin:2.5rem}.m-20{margin:5rem}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.my1{margin-top:.25rem;margin-bottom:.25rem}.my4{margin-top:1rem;margin-bottom:1rem}.my5{margin-top:1.25rem;margin-bottom:1.25rem}.mb-4{margin-bottom:1rem}.mb2{margin-bottom:.5rem}.ml--4{margin-left:-1rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr--3,[mr--3=""]{margin-right:-.75rem}.mr--8{margin-right:-2rem}.mr-1,.mr1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-0\.5{margin-top:.125rem}.mt-1,.mt1{margin-top:.25rem}.mt-2,[mt-2=""]{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.aspect-ratio-initial{aspect-ratio:initial}.h-\[40px\],.h-40px{height:40px}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-20{height:5rem}.h-22px{height:22px}.h-2px{height:2px}.h-30{height:7.5rem}.h-3px{height:3px}.h-40{height:10rem}.h-5,.h5,[h5=""]{height:1.25rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-8,[h-8=""]{height:2rem}.h-80{height:20rem}.h-9,[h-9=""]{height:2.25rem}.h-90{height:22.5rem}.h-full,[h-full=""]{height:100%}.h-max{height:max-content}.h-screen{height:100vh}.h1{height:.25rem}.max-h-full{max-height:100%}.max-w-150{max-width:37.5rem}.max-w-250,[max-w-250=""]{max-width:62.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-h-50,[min-h-50=""]{min-height:12.5rem}.min-w-16{min-width:4rem}.min-w-40{min-width:10rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-\[40px\]{width:40px}.w-0{width:0}.w-13{width:3.25rem}.w-1px{width:1px}.w-200{width:50rem}.w-22px{width:22px}.w-250,[w-250=""]{width:62.5rem}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-7{width:1.75rem}.w-8,[w-8=""]{width:2rem}.w-9,[w-9=""]{width:2.25rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.w-screen{width:100vw}.w1{width:.25rem}.flex,[flex=""],[flex~="~"]{display:flex}.flex-1,[flex-1=""]{flex:1 1 0%}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-y--50\%,[translate-y--50\%=""]{--un-translate-y:-50%;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in 1s linear 1}.animate-duration-100{animation-duration:.1s}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.important\:\[\&_\*\]\:select-none *{-webkit-user-select:none!important;user-select:none!important}.select-none,[select-none=""]{-webkit-user-select:none;user-select:none}[select-none~="default:"]:default{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-after-page{break-after:page}.items-end{align-items:flex-end}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.justify-items-start{justify-items:start}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4,[gap-4=""]{gap:1rem}.gap-5{gap:1.25rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""],[overflow-hidden=""]{overflow:hidden}.of-scroll{overflow:scroll}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap,.ws-nowrap,[ws-nowrap=""]{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border=""],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border-t=""],[border~=t]{border-top-width:1px}.b-dark{--un-border-opacity:1;border-color:rgb(34 34 34 / var(--un-border-opacity))}.border-gray,.dark .dark\:b-gray-400{--un-border-opacity:1;border-color:rgb(156 163 175 / var(--un-border-opacity))}.border-gray-300\/50{border-color:#d1d5db80}.dark .dark\:border-gray-500{--un-border-opacity:1;border-color:rgb(107 114 128 / var(--un-border-opacity))}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded],[rounded=""]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full,[rounded-full=""]{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-lb{border-bottom-left-radius:.25rem}.rounded-tl{border-top-left-radius:.25rem}.b-dashed{border-style:dashed}.\!border-none{border-style:none!important}[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray,[hover\:op100~="bg-gray:5"]{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.dark .dark\:bg-gray-800{--un-bg-opacity:1;background-color:rgb(31 41 55 / var(--un-bg-opacity))}.bg-gray\:10{background-color:#9ca3af1a}.bg-gray\:5{background-color:#9ca3af0d}.bg-gray\/20{background-color:#9ca3af33}.bg-teal-500{--un-bg-opacity:1;background-color:rgb(20 184 166 / var(--un-bg-opacity))}.bg-transparent,[bg-transparent~=","],[bg-transparent~="{"],[bg-transparent~="&&"],[bg-transparent~="text.value"]{background-color:transparent}[bg-transparent~="!valid.value"]{background-color:transparent!important}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.hover\:bg-gray\/20:hover{background-color:#9ca3af33}[bg-transparent~="placeholder:"]::placeholder{background-color:transparent}.bg-opacity-30{--un-bg-opacity:.3}.\!bg-opacity-75,.bg-opacity-75\!{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.dark .dark\:stroke-black{--un-stroke-opacity:1;stroke:rgb(0 0 0 / var(--un-stroke-opacity))}.stroke-white{--un-stroke-opacity:1;stroke:rgb(255 255 255 / var(--un-stroke-opacity))}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2,.p2,[p2=""]{padding:.5rem}.\!p-4{padding:1rem!important}.p3{padding:.75rem}.p4{padding:1rem}.px,.px-4,.px4,[p~=x-4],[px=""]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2,[px2=""]{padding-left:.5rem;padding-right:.5rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px1{padding-left:.25rem;padding-right:.25rem}.px3{padding-left:.75rem;padding-right:.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3,.py3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py0\.5{padding-top:.125rem;padding-bottom:.125rem}.py1\.5{padding-top:.375rem;padding-bottom:.375rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-0{padding-left:0}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.pt5{padding-top:1.25rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3em{font-size:3em}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg,[text-lg=""]{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}[text-sm~="default:"]:default{font-size:.875rem;line-height:1.25rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.dark .dark\:text-red-500{--un-text-opacity:1;color:rgb(239 68 68 / var(--un-text-opacity))}.text-red-700{--un-text-opacity:1;color:rgb(185 28 28 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}.important-text-op-50,.text-opacity-50\!{--un-text-opacity:.5 !important}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.font-mono,[font-mono=""]{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.tab{-moz-tab-size:4;-o-tab-size:4;tab-size:4}[tab~="1032"]{-moz-tab-size:1032;-o-tab-size:1032;tab-size:1032}[tab~="2"]{-moz-tab-size:2;-o-tab-size:2;tab-size:2}[tab~="default:"]:default{-moz-tab-size:4;-o-tab-size:4;tab-size:4}.\!opacity-0,.important\:op0{opacity:0!important}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""],.group:hover .group-hover\:op100{opacity:1}.op15{opacity:.15}.op20{opacity:.2}.op25,.opacity-25,[op25=""]{opacity:.25}.op30{opacity:.3}.op35{opacity:.35}.op40,.opacity-40{opacity:.4}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80,.group:hover .group-hover\:op80{opacity:.8}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.hover\:op100:hover,[hover~=op100]:hover,.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-xl,[shadow-xl=""]{--un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none,[outline-none=""]{outline:2px solid transparent;outline-offset:2px}.backdrop-blur,.backdrop-blur-8,[backdrop-blur-8=""]{--un-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition,[transition=""]{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300,[duration-300=""]{transition-duration:.3s}.duration-400,[duration-400=""]{transition-duration:.4s}.duration-500{transition-duration:.5s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.view-transition-name{view-transition-name:name}@media (max-width: 767.9px){.lt-md\:hidden{display:none}.lt-md\:flex-col{flex-direction:column}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}}.shiki-magic-move-container{position:relative;white-space:pre}.shiki-magic-move-line-number{opacity:.3;-webkit-user-select:none;user-select:none}.shiki-magic-move-item{display:inline-block;transition:color var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-move,.shiki-magic-move-enter-active,.shiki-magic-move-leave-active{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-container-resize,.shiki-magic-move-container-restyle{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease");transition-delay:calc(var(--smm-duration, .5s) * var(--smm-delay-container, 1))}.shiki-magic-move-move{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-move, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-enter-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-enter, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-leave-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-leave, 1)) + var(--smm-stagger, 0))}.shiki-magic-move-enter-from,.shiki-magic-move-leave-to{opacity:0}br.shiki-magic-move-leave-active{display:none} diff --git a/03-layered/assets/index-BUF10GjR.js b/03-layered/assets/index-BUF10GjR.js new file mode 100644 index 0000000..5a3d373 --- /dev/null +++ b/03-layered/assets/index-BUF10GjR.js @@ -0,0 +1,51 @@ +const __vite__fileDeps=["assets/slidev/1-CvOPQ7-j.js","assets/modules/vue-BeRk5K_R.js","assets/slidev/context-X7FPJONu.js","assets/modules/shiki-DYdhqpMF.js","assets/modules/shiki-BSchMNmt.css","assets/2-Ce9wY0TA.js","assets/slidev/two-cols-DDhFBQ8P.js","assets/3-BpOkxyUj.js","assets/slidev/default-BG4F52B6.js","assets/4-D7UNWwza.js","assets/5-CwDVTQBX.js","assets/6-8Rfx_mzJ.js","assets/7-DTErAE6N.js","assets/8-B4oJgYsx.js","assets/9-Dyxg0qcS.js","assets/10-CLajUH68.js","assets/11-BQdj_s4J.js","assets/12-B0mW1y2c.js","assets/13-gXbSBqxj.js","assets/14-CqNy6x4p.js","assets/slidev/15-8o6Ikrds.js","assets/slidev/16-Cewi5NAo.js","assets/slidev/entry-DIQrd7vr.js","assets/modules/unplugin-icons-DSU1Mbun.js","assets/slidev/overview-DuaZ2SfB.js","assets/slidev/DrawingPreview-Cx7dpRoh.js","assets/DrawingPreview-DJ7dOR_1.css","assets/slidev/IconButton-Qle7cQKb.js","assets/slidev/NoteDisplay-DOwZRdpe.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/ClicksSlider-DwqD9ELc.js","assets/ClicksSlider-qq1Ub2AL.css","assets/slidev/notes-C51CsU9x.js","assets/slidev/presenter-C2CefDvp.js","assets/slidev/ContextMenu-BdDUgwkt.js","assets/ContextMenu-DSnskk1a.css","assets/slidev/DrawingControls-CwP0pggi.js","assets/DrawingControls-C5T1oZL5.css","assets/presenter-D5oC5Gjj.css","assets/slidev/play-BVAn-WHB.js","assets/play-CoA43pdi.css"],__vite__mapDeps=i=>i.map(i=>__vite__fileDeps[i]); +import{t as T,y,n as vt,z as Hn,A as cs,B as Gs,C as Fe,D as Q,E as Rn,G as Fn,H as xn,I as Qs,J as O,K as Vn,L as Bn,o as Zs,b as Wn,M as us,N as $t,O as zn,P as Un,Q as te,R as Ys,S as At,T as Xs,U as qn,d as Kn,r as Jn,c as Gn,V as Qn,W as Zn,X as Yn,Y as Xn,Z as eo,_ as to,$ as so,a0 as no,a1 as oo,a2 as io,a3 as ro,a4 as ao,a5 as lo,u as co}from"./modules/vue-BeRk5K_R.js";import{T as uo}from"./modules/shiki-DYdhqpMF.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))n(o);new MutationObserver(o=>{for(const i of o)if(i.type==="childList")for(const r of i.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&n(r)}).observe(document,{childList:!0,subtree:!0});function t(o){const i={};return o.integrity&&(i.integrity=o.integrity),o.referrerPolicy&&(i.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?i.credentials="include":o.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function n(o){if(o.ep)return;o.ep=!0;const i=t(o);fetch(o.href,i)}})();function Xe(s,e,t){return Math.min(t,Math.max(e,s))}function fo(...s){return po(s).reduce((e,t)=>e+t,0)}function ho(s){return s=s??[],Array.isArray(s)?s:[s]}function po(s){return ho(s).flat(1)}function $a(...s){let e,t,n;s.length===1?(e=0,n=1,[t]=s):[e,t,n=1]=s;const o=[];let i=e;for(;ie(t,n)).filter(go))}const D={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:!0,monacoTypesSource:"local",monacoTypesAdditionalPackages:[],monacoRunAdditionalDeps:[],download:!1,export:{},info:!1,highlighter:"shiki",twoslash:!0,lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},Aa="build",en=T(D.aspectRatio??16/9),yo=T(D.canvasWidth??980),La=y(()=>Math.ceil(yo.value/en.value)),vo=y(()=>mo(D.themeConfig||{},(s,e)=>[`--slidev-theme-${s}`,e]));function Jt(s,e={},t){for(const n in s){const o=s[n],i=t?`${t}:${n}`:n;typeof o=="object"&&o!==null?Jt(o,e,i):typeof o=="function"&&(e[i]=o)}return e}const _o={run:s=>s()},bo=()=>_o,tn=typeof console.createTask<"u"?console.createTask:bo;function wo(s,e){const t=e.shift(),n=tn(t);return s.reduce((o,i)=>o.then(()=>n.run(()=>i(...e))),Promise.resolve())}function ko(s,e){const t=e.shift(),n=tn(t);return Promise.all(s.map(o=>n.run(()=>o(...e))))}function Ht(s,e){for(const t of[...s])t(e)}class So{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,t,n={}){if(!e||typeof t!="function")return()=>{};const o=e;let i;for(;this._deprecatedHooks[e];)i=this._deprecatedHooks[e],e=i.to;if(i&&!n.allowDeprecated){let r=i.message;r||(r=`${o} hook has been deprecated`+(i.to?`, please use ${i.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(r)||(console.warn(r),this._deprecatedMessages.add(r))}if(!t.name)try{Object.defineProperty(t,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(t),()=>{t&&(this.removeHook(e,t),t=void 0)}}hookOnce(e,t){let n,o=(...i)=>(typeof n=="function"&&n(),n=void 0,o=void 0,t(...i));return n=this.hook(e,o),n}removeHook(e,t){if(this._hooks[e]){const n=this._hooks[e].indexOf(t);n!==-1&&this._hooks[e].splice(n,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,t){this._deprecatedHooks[e]=typeof t=="string"?{to:t}:t;const n=this._hooks[e]||[];delete this._hooks[e];for(const o of n)this.hook(e,o)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const t in e)this.deprecateHook(t,e[t])}addHooks(e){const t=Jt(e),n=Object.keys(t).map(o=>this.hook(o,t[o]));return()=>{for(const o of n.splice(0,n.length))o()}}removeHooks(e){const t=Jt(e);for(const n in t)this.removeHook(n,t[n])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...t){return t.unshift(e),this.callHookWith(wo,e,...t)}callHookParallel(e,...t){return t.unshift(e),this.callHookWith(ko,e,...t)}callHookWith(e,t,...n){const o=this._before||this._after?{name:t,args:n,context:{}}:void 0;this._before&&Ht(this._before,o);const i=e(t in this._hooks?[...this._hooks[t]]:[],n);return i instanceof Promise?i.finally(()=>{this._after&&o&&Ht(this._after,o)}):(this._after&&o&&Ht(this._after,o),i)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const t=this._before.indexOf(e);t!==-1&&this._before.splice(t,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const t=this._after.indexOf(e);t!==-1&&this._after.splice(t,1)}}}}function Mo(){return new So}function Oo(s){return Array.isArray(s)?s:[s]}const Po=["title","titleTemplate","script","style","noscript"],ut=["base","meta","link","style","script","noscript"],To=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],Eo=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],sn=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],$o=typeof window<"u";function fs(s){let e=9;for(let t=0;t>>9)+65536).toString(16).substring(1,8).toLowerCase()}function Ps(s){return s._h||fs(s._d?s._d:`${s.tag}:${s.textContent||s.innerHTML||""}:${Object.entries(s.props).map(([e,t])=>`${e}:${String(t)}`).join(",")}`)}function nn(s,e){const{props:t,tag:n}=s;if(Eo.includes(n))return n;if(n==="link"&&t.rel==="canonical")return"canonical";if(t.charset)return"charset";const o=["id"];n==="meta"&&o.push("name","property","http-equiv");for(const i of o)if(typeof t[i]<"u"){const r=String(t[i]);return e&&!e(r)?!1:`${n}:${i}:${r}`}return!1}function Ts(s,e){return s==null?e||null:typeof s=="function"?s(e):s}async function Ao(s,e,t){const n={tag:s,props:await on(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(s)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(s))};return sn.forEach(o=>{const i=typeof n.props[o]<"u"?n.props[o]:t[o];typeof i<"u"&&((!["innerHTML","textContent","children"].includes(o)||Po.includes(n.tag))&&(n[o==="children"?"innerHTML":o]=i),delete n.props[o])}),n.props.body&&(n.tagPosition="bodyClose",delete n.props.body),n.tag==="script"&&typeof n.innerHTML=="object"&&(n.innerHTML=JSON.stringify(n.innerHTML),n.props.type=n.props.type||"application/json"),Array.isArray(n.props.content)?n.props.content.map(o=>({...n,props:{...n.props,content:o}})):n}function Lo(s,e){var n;const t=s==="class"?" ":";";return typeof e=="object"&&!Array.isArray(e)&&(e=Object.entries(e).filter(([,o])=>o).map(([o,i])=>s==="style"?`${o}:${i}`:o)),(n=Array.isArray(e)?e.join(t):e)==null?void 0:n.split(t).filter(o=>o.trim()).filter(Boolean).join(t)}async function on(s,e){for(const t of Object.keys(s)){if(["class","style"].includes(t)){s[t]=Lo(t,s[t]);continue}if(s[t]instanceof Promise&&(s[t]=await s[t]),!e&&!sn.includes(t)){const n=String(s[t]),o=t.startsWith("data-");n==="true"||n===""?s[t]=o?"true":!0:s[t]||(o&&n==="false"?s[t]="false":delete s[t])}}return s}const Co=10;async function Io(s){const e=[];return Object.entries(s.resolvedInput).filter(([t,n])=>typeof n<"u"&&To.includes(t)).forEach(([t,n])=>{const o=Oo(n);e.push(...o.map(i=>Ao(t,i,s)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((t,n)=>(t._e=s._i,s.mode&&(t._m=s.mode),t._p=(s._i<l&&l[c]||void 0,e):a=e[r],typeof a<"u"?(a||"").replace(/"/g,'\\"'):!1}let o=s;try{o=decodeURI(s)}catch{}return(o.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(r=>{const a=n(r.slice(1));typeof a=="string"&&(s=s.replace(new RegExp(`\\${r}(\\W|$)`,"g"),(l,c)=>`${a}${c}`).trim())}),s.includes(ae)&&(s.endsWith(ae)&&(s=s.slice(0,-ae.length).trim()),s.startsWith(ae)&&(s=s.slice(ae.length).trim()),s=s.replace(new RegExp(`\\${ae}\\s*\\${ae}`,"g"),ae),s=ft(s,{separator:t},t)),s}async function Do(s,e={}){var u;const t=e.document||s.resolvedOptions.document;if(!t||!s.dirty)return;const n={shouldRender:!0,tags:[]};if(await s.hooks.callHook("dom:beforeRender",n),!n.shouldRender)return;const o=(await s.resolveTags()).map(f=>({tag:f,id:ut.includes(f.tag)?Ps(f):f.tag,shouldRender:!0}));let i=s._dom;if(!i){i={elMap:{htmlAttrs:t.documentElement,bodyAttrs:t.body}};for(const f of["body","head"]){const h=(u=t[f])==null?void 0:u.children,d=[];for(const p of[...h].filter(g=>ut.includes(g.tagName.toLowerCase()))){const g={tag:p.tagName.toLowerCase(),props:await on(p.getAttributeNames().reduce((_,b)=>({..._,[b]:p.getAttribute(b)}),{})),innerHTML:p.innerHTML};let m=1,v=nn(g);for(;v&&d.find(_=>_._d===v);)v=`${v}:${m++}`;g._d=v||void 0,d.push(g),i.elMap[p.getAttribute("data-hid")||Ps(g)]=p}}}i.pendingSideEffects={...i.sideEffects||{}},i.sideEffects={};function r(f,h,d){const p=`${f}:${h}`;i.sideEffects[p]=d,delete i.pendingSideEffects[p]}function a({id:f,$el:h,tag:d}){const p=d.tag.endsWith("Attrs");i.elMap[f]=h,p||(["textContent","innerHTML"].forEach(g=>{d[g]&&d[g]!==h[g]&&(h[g]=d[g])}),r(f,"el",()=>{var g;(g=i.elMap[f])==null||g.remove(),delete i.elMap[f]}));for(const[g,m]of Object.entries(d._eventHandlers||{}))h.getAttribute(`data-${g}`)!==""&&((d.tag==="bodyAttrs"?t.defaultView:h).addEventListener(g.replace("on",""),m.bind(h)),h.setAttribute(`data-${g}`,""));Object.entries(d.props).forEach(([g,m])=>{const v=`attr:${g}`;if(g==="class")for(const _ of(m||"").split(" ").filter(Boolean))p&&r(f,`${v}:${_}`,()=>h.classList.remove(_)),!h.classList.contains(_)&&h.classList.add(_);else if(g==="style")for(const _ of(m||"").split(";").filter(Boolean)){const[b,...w]=_.split(":").map(M=>M.trim());r(f,`${v}:${_}:${b}`,()=>{h.style.removeProperty(b)}),h.style.setProperty(b,w.join(":"))}else h.getAttribute(g)!==m&&h.setAttribute(g,m===!0?"":String(m)),p&&r(f,v,()=>h.removeAttribute(g))})}const l=[],c={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const f of o){const{tag:h,shouldRender:d,id:p}=f;if(d){if(h.tag==="title"){t.title=h.textContent;continue}f.$el=f.$el||i.elMap[p],f.$el?a(f):ut.includes(h.tag)&&l.push(f)}}for(const f of l){const h=f.tag.tagPosition||"head";f.$el=t.createElement(f.tag.tag),a(f),c[h]=c[h]||t.createDocumentFragment(),c[h].appendChild(f.$el)}for(const f of o)await s.hooks.callHook("dom:renderTag",f,t,r);c.head&&t.head.appendChild(c.head),c.bodyOpen&&t.body.insertBefore(c.bodyOpen,t.body.firstChild),c.bodyClose&&t.body.appendChild(c.bodyClose),Object.values(i.pendingSideEffects).forEach(f=>f()),s._dom=i,s.dirty=!1,await s.hooks.callHook("dom:rendered",{renders:o})}async function No(s,e={}){const t=e.delayFn||(n=>setTimeout(n,10));return s._domUpdatePromise=s._domUpdatePromise||new Promise(n=>t(async()=>{await Do(s,e),delete s._domUpdatePromise,n()}))}function Ho(s){return e=>{var n,o;const t=((o=(n=e.resolvedOptions.document)==null?void 0:n.head.querySelector('script[id="unhead:payload"]'))==null?void 0:o.innerHTML)||!1;return t&&e.push(JSON.parse(t)),{mode:"client",hooks:{"entries:updated":function(i){No(i,s)}}}}}const Ro=["templateParams","htmlAttrs","bodyAttrs"],Fo={hooks:{"tag:normalise":function({tag:s}){["hid","vmid","key"].forEach(n=>{s.props[n]&&(s.key=s.props[n],delete s.props[n])});const t=nn(s)||(s.key?`${s.tag}:${s.key}`:!1);t&&(s._d=t)},"tags:resolve":function(s){const e={};s.tags.forEach(n=>{const o=(n.key?`${n.tag}:${n.key}`:n._d)||n._p,i=e[o];if(i){let a=n==null?void 0:n.tagDuplicateStrategy;if(!a&&Ro.includes(n.tag)&&(a="merge"),a==="merge"){const l=i.props;["class","style"].forEach(c=>{l[c]&&(n.props[c]?(c==="style"&&!l[c].endsWith(";")&&(l[c]+=";"),n.props[c]=`${l[c]} ${n.props[c]}`):n.props[c]=l[c])}),e[o].props={...l,...n.props};return}else if(n._e===i._e){i._duped=i._duped||[],n._d=`${i._d}:${i._duped.length+1}`,i._duped.push(n);return}else if(_t(n)>_t(i))return}const r=Object.keys(n.props).length+(n.innerHTML?1:0)+(n.textContent?1:0);if(ut.includes(n.tag)&&r===0){delete e[o];return}e[o]=n});const t=[];Object.values(e).forEach(n=>{const o=n._duped;delete n._duped,t.push(n),o&&t.push(...o)}),s.tags=t,s.tags=s.tags.filter(n=>!(n.tag==="meta"&&(n.props.name||n.props.property)&&!n.props.content))}}},xo={mode:"server",hooks:{"tags:resolve":function(s){const e={};s.tags.filter(t=>["titleTemplate","templateParams","title"].includes(t.tag)&&t._m==="server").forEach(t=>{e[t.tag]=t.tag.startsWith("title")?t.textContent:t.props}),Object.keys(e).length&&s.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},Vo=["script","link","bodyAttrs"],Bo=s=>({hooks:{"tags:resolve":function(e){for(const t of e.tags.filter(n=>Vo.includes(n.tag)))Object.entries(t.props).forEach(([n,o])=>{n.startsWith("on")&&typeof o=="function"&&(s.ssr&&As.includes(n)?t.props[n]=`this.dataset.${n}fired = true`:delete t.props[n],t._eventHandlers=t._eventHandlers||{},t._eventHandlers[n]=o)}),s.ssr&&t._eventHandlers&&(t.props.src||t.props.href)&&(t.key=t.key||fs(t.props.src||t.props.href))},"dom:renderTag":function({$el:e,tag:t}){var n,o;for(const i of Object.keys((e==null?void 0:e.dataset)||{}).filter(r=>As.some(a=>`${a}fired`===r))){const r=i.replace("fired","");(o=(n=t._eventHandlers)==null?void 0:n[r])==null||o.call(e,new Event(r.replace("on","")))}}}}),Wo=["link","style","script","noscript"],zo={hooks:{"tag:normalise":({tag:s})=>{s.key&&Wo.includes(s.tag)&&(s.props["data-hid"]=s._h=fs(s.key))}}},Uo={hooks:{"tags:resolve":s=>{const e=t=>{var n;return(n=s.tags.find(o=>o._d===t))==null?void 0:n._p};for(const{prefix:t,offset:n}of jo)for(const o of s.tags.filter(i=>typeof i.tagPriority=="string"&&i.tagPriority.startsWith(t))){const i=e(o.tagPriority.replace(t,""));typeof i<"u"&&(o._p=i+n)}s.tags.sort((t,n)=>t._p-n._p).sort((t,n)=>_t(t)-_t(n))}}},qo={meta:"content",link:"href",htmlAttrs:"lang"},Ko=s=>({hooks:{"tags:resolve":e=>{var a;const{tags:t}=e,n=(a=t.find(l=>l.tag==="title"))==null?void 0:a.textContent,o=t.findIndex(l=>l.tag==="templateParams"),i=o!==-1?t[o].props:{},r=i.separator||"|";delete i.separator,i.pageTitle=ft(i.pageTitle||n||"",i,r);for(const l of t.filter(c=>c.processTemplateParams!==!1)){const c=qo[l.tag];c&&typeof l.props[c]=="string"?l.props[c]=ft(l.props[c],i,r):(l.processTemplateParams===!0||["titleTemplate","title"].includes(l.tag))&&["innerHTML","textContent"].forEach(u=>{typeof l[u]=="string"&&(l[u]=ft(l[u],i,r))})}s._templateParams=i,s._separator=r,e.tags=t.filter(l=>l.tag!=="templateParams")}}}),Jo={hooks:{"tags:resolve":s=>{const{tags:e}=s;let t=e.findIndex(o=>o.tag==="titleTemplate");const n=e.findIndex(o=>o.tag==="title");if(n!==-1&&t!==-1){const o=Ts(e[t].textContent,e[n].textContent);o!==null?e[n].textContent=o||e[n].textContent:delete e[n]}else if(t!==-1){const o=Ts(e[t].textContent);o!==null&&(e[t].textContent=o,e[t].tag="title",t=-1)}t!==-1&&delete e[t],s.tags=e.filter(Boolean)}}},Go={hooks:{"tags:afterResolve":function(s){for(const e of s.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{a.dirty=!0,e.callHook("entries:updated",a)};let o=0,i=[];const r=[],a={plugins:r,dirty:!1,resolvedOptions:s,hooks:e,headEntries(){return i},use(l){const c=typeof l=="function"?l(a):l;(!c.key||!r.some(u=>u.key===c.key))&&(r.push(c),Ls(c.mode,t)&&e.addHooks(c.hooks||{}))},push(l,c){c==null||delete c.head;const u={_i:o++,input:l,...c};return Ls(u.mode,t)&&(i.push(u),n()),{dispose(){i=i.filter(f=>f._i!==u._i),e.callHook("entries:updated",a),n()},patch(f){i=i.map(h=>(h._i===u._i&&(h.input=u.input=f),h)),n()}}},async resolveTags(){const l={tags:[],entries:[...i]};await e.callHook("entries:resolve",l);for(const c of l.entries){const u=c.resolvedInput||c.input;if(c.resolvedInput=await(c.transform?c.transform(u):u),c.resolvedInput)for(const f of await Io(c)){const h={tag:f,entry:c,resolvedOptions:a.resolvedOptions};await e.callHook("tag:normalise",h),l.tags.push(h.tag)}}return await e.callHook("tags:beforeResolve",l),await e.callHook("tags:resolve",l),await e.callHook("tags:afterResolve",l),l.tags},ssr:t};return[Fo,xo,Bo,zo,Uo,Ko,Jo,Go,...(s==null?void 0:s.plugins)||[]].forEach(l=>a.use(l)),a.hooks.callHook("init",a),a}function Yo(){return rn}const Xo=Hn.startsWith("3");function ei(s){return typeof s=="function"?s():cs(s)}function bt(s,e=""){if(s instanceof Promise)return s;const t=ei(s);return!s||!t?t:Array.isArray(t)?t.map(n=>bt(n,e)):typeof t=="object"?Object.fromEntries(Object.entries(t).map(([n,o])=>n==="titleTemplate"||n.startsWith("on")?[n,cs(o)]:[n,bt(o,n)])):t}const ti={hooks:{"entries:resolve":function(s){for(const e of s.entries)e.resolvedInput=bt(e.input)}}},an="usehead";function si(s){return{install(t){Xo&&(t.config.globalProperties.$unhead=s,t.config.globalProperties.$head=s,t.provide(an,s))}}.install}function ni(s={}){s.domDelayFn=s.domDelayFn||(t=>vt(()=>setTimeout(()=>t(),0)));const e=Qo(s);return e.use(ti),e.install=si(e),e}const Cs=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Is="__unhead_injection_handler__";function oi(){if(Is in Cs)return Cs[Is]();const s=Gs(an);return s||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),s||Yo()}function ii(s,e={}){const t=e.head||oi();if(t)return t.ssr?t.push(s,e):ri(t,s,e)}function ri(s,e,t={}){const n=T(!1),o=T({});Fe(()=>{o.value=n.value?{}:bt(e)});const i=s.push(o.value,t);return Q(o,a=>{i.patch(a)}),Qs()&&(Rn(()=>{i.dispose()}),Fn(()=>{n.value=!0}),xn(()=>{n.value=!1})),i}function ln(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function Z(s,e,t){Object.defineProperty(s,e,{value:t,writable:!0,enumerable:!1})}const Ae=O({page:0,clicks:0});let ai=[],li=[];Z(Ae,"$syncUp",!0);Z(Ae,"$syncDown",!0);Z(Ae,"$paused",!1);Z(Ae,"$onSet",s=>ai.push(s));Z(Ae,"$onPatch",s=>li.push(s));ln();Z(Ae,"$patch",async()=>!1);function cn(s,e,t=!1){const n=[];let o=!1,i=!1,r,a;const l=O(e);function c(d){n.push(d)}function u(d,p){l[d]!==p&&(clearTimeout(r),o=!0,l[d]=p,r=setTimeout(()=>o=!1,0))}function f(d){o||(clearTimeout(a),i=!0,Object.entries(d).forEach(([p,g])=>{l[p]=g}),a=setTimeout(()=>i=!1,0))}function h(d){let p;t?t&&window.addEventListener("storage",m=>{m&&m.key===d&&m.newValue&&f(JSON.parse(m.newValue))}):(p=new BroadcastChannel(d),p.addEventListener("message",m=>f(m.data)));function g(){!t&&p&&!i?p.postMessage(Vn(l)):t&&!i&&window.localStorage.setItem(d,JSON.stringify(l)),o||n.forEach(m=>m(l))}if(Q(l,g,{deep:!0,flush:"sync"}),t){const m=window.localStorage.getItem(d);m&&f(JSON.parse(m))}}return{init:h,onPatch:c,patch:u,state:l}}const{init:ci,onPatch:ui,patch:ze,state:Ca}=cn(Ae,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),Le=O({});let fi=[],hi=[];Z(Le,"$syncUp",!0);Z(Le,"$syncDown",!0);Z(Le,"$paused",!1);Z(Le,"$onSet",s=>fi.push(s));Z(Le,"$onPatch",s=>hi.push(s));ln();Z(Le,"$patch",async()=>!1);const{init:di,onPatch:Ia,patch:ja,state:Da}=cn(Le,{},!1),Lt="$$slidev-clicks-context",hs="$$slidev-page",un="$$slidev-slide-element",pi="$$slidev-slide-scale",gi="$$slidev-context",Na="$$slidev-route",ds="$$slidev-render-context",Ha="$$slidev-active",mi="$$slidev-fontmatter",yi="$$slidev-slide-zoom",ht="slidev-vclick-target",Ue="slidev-vclick-hidden",qe="slidev-vclick-fade",Rt="slidev-vclick-hidden-explicitly",Ft="slidev-vclick-current",xt="slidev-vclick-prior",Gt=999999,vi=["localhost","127.0.0.1"],_i=["clicks","clicksStart","disabled","hide","hideInToc","layout","level","preload","routeAlias","src","title","transition","zoom","dragPos"],Ra=[..._i,"theme","titleTemplate","info","author","keywords","presenter","download","exportFilename","export","highlighter","lineNumbers","monaco","monacoTypesSource","monacoTypesAdditionalPackages","monacoRunAdditionalDeps","remoteAssets","selectable","record","colorSchema","routerMode","aspectRatio","canvasWidth","themeConfig","favicon","plantUmlServer","fonts","defaults","drawings","htmlAttrs","mdc","contextMenu"],fn=T(!1),ps=Symbol.for("yaml.alias"),bi=Symbol.for("yaml.document"),$e=Symbol.for("yaml.map"),hn=Symbol.for("yaml.pair"),gs=Symbol.for("yaml.scalar"),nt=Symbol.for("yaml.seq"),ie=Symbol.for("yaml.node.type"),Ve=s=>!!s&&typeof s=="object"&&s[ie]===ps,Ct=s=>!!s&&typeof s=="object"&&s[ie]===bi,dn=s=>!!s&&typeof s=="object"&&s[ie]===$e,V=s=>!!s&&typeof s=="object"&&s[ie]===hn,F=s=>!!s&&typeof s=="object"&&s[ie]===gs,ms=s=>!!s&&typeof s=="object"&&s[ie]===nt;function J(s){if(s&&typeof s=="object")switch(s[ie]){case $e:case nt:return!0}return!1}function q(s){if(s&&typeof s=="object")switch(s[ie]){case ps:case $e:case gs:case nt:return!0}return!1}const wi=s=>(F(s)||J(s))&&!!s.anchor,Pe=Symbol("break visit"),ki=Symbol("skip children"),Qe=Symbol("remove node");function et(s,e){const t=Si(e);Ct(s)?De(null,s.contents,t,Object.freeze([s]))===Qe&&(s.contents=null):De(null,s,t,Object.freeze([]))}et.BREAK=Pe;et.SKIP=ki;et.REMOVE=Qe;function De(s,e,t,n){const o=Mi(s,e,t,n);if(q(o)||V(o))return Oi(s,n,o),De(s,o,t,n);if(typeof o!="symbol"){if(J(e)){n=Object.freeze(n.concat(e));for(let i=0;iee(n,String(o),t));if(s&&typeof s.toJSON=="function"){if(!t||!wi(s))return s.toJSON(e,t);const n={aliasCount:0,count:1,res:void 0};t.anchors.set(s,n),t.onCreate=i=>{n.res=i,delete t.onCreate};const o=s.toJSON(e,t);return t.onCreate&&t.onCreate(o),o}return typeof s=="bigint"&&!(t!=null&&t.keep)?Number(s):s}class ys{constructor(e){Object.defineProperty(this,ie,{value:e})}clone(){const e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:t,maxAliasCount:n,onAnchor:o,reviver:i}={}){if(!Ct(e))throw new TypeError("A document argument is required");const r={anchors:new Map,doc:e,keep:!0,mapAsMap:t===!0,mapKeyWarned:!1,maxAliasCount:typeof n=="number"?n:100},a=ee(this,"",r);if(typeof o=="function")for(const{count:l,res:c}of r.anchors.values())o(c,l);return typeof i=="function"?Ge(i,{"":a},"",a):a}}class Pi extends ys{constructor(e){super(ps),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e){let t;return et(e,{Node:(n,o)=>{if(o===this)return et.BREAK;o.anchor===this.source&&(t=o)}}),t}toJSON(e,t){if(!t)return{source:this.source};const{anchors:n,doc:o,maxAliasCount:i}=t,r=this.resolve(o);if(!r){const l=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(l)}let a=n.get(r);if(a||(ee(r,null,t),a=n.get(r)),!a||a.res===void 0){const l="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(l)}if(i>=0&&(a.count+=1,a.aliasCount===0&&(a.aliasCount=dt(o,r,n)),a.count*a.aliasCount>i)){const l="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(l)}return a.res}toString(e,t,n){const o=`*${this.source}`;if(e){if(pn(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){const i=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(i)}if(e.implicitKey)return`${o} `}return o}}function dt(s,e,t){if(Ve(e)){const n=e.resolve(s),o=t&&n&&t.get(n);return o?o.count*o.aliasCount:0}else if(J(e)){let n=0;for(const o of e.items){const i=dt(s,o,t);i>n&&(n=i)}return n}else if(V(e)){const n=dt(s,e.key,t),o=dt(s,e.value,t);return Math.max(n,o)}return 1}const gn=s=>!s||typeof s!="function"&&typeof s!="object";class H extends ys{constructor(e){super(gs),this.value=e}toJSON(e,t){return t!=null&&t.keep?this.value:ee(this.value,e,t)}toString(){return String(this.value)}}H.BLOCK_FOLDED="BLOCK_FOLDED";H.BLOCK_LITERAL="BLOCK_LITERAL";H.PLAIN="PLAIN";H.QUOTE_DOUBLE="QUOTE_DOUBLE";H.QUOTE_SINGLE="QUOTE_SINGLE";const Ti="tag:yaml.org,2002:";function Ei(s,e,t){if(e){const n=t.filter(i=>i.tag===e),o=n.find(i=>!i.format)??n[0];if(!o)throw new Error(`Tag ${e} not found`);return o}return t.find(n=>{var o;return((o=n.identify)==null?void 0:o.call(n,s))&&!n.format})}function wt(s,e,t){var f,h,d;if(Ct(s)&&(s=s.contents),q(s))return s;if(V(s)){const p=(h=(f=t.schema[$e]).createNode)==null?void 0:h.call(f,t.schema,null,t);return p.items.push(s),p}(s instanceof String||s instanceof Number||s instanceof Boolean||typeof BigInt<"u"&&s instanceof BigInt)&&(s=s.valueOf());const{aliasDuplicateObjects:n,onAnchor:o,onTagObj:i,schema:r,sourceObjects:a}=t;let l;if(n&&s&&typeof s=="object"){if(l=a.get(s),l)return l.anchor||(l.anchor=o(s)),new Pi(l.anchor);l={anchor:null,node:null},a.set(s,l)}e!=null&&e.startsWith("!!")&&(e=Ti+e.slice(2));let c=Ei(s,e,r.tags);if(!c){if(s&&typeof s.toJSON=="function"&&(s=s.toJSON()),!s||typeof s!="object"){const p=new H(s);return l&&(l.node=p),p}c=s instanceof Map?r[$e]:Symbol.iterator in Object(s)?r[nt]:r[$e]}i&&(i(c),delete t.onTagObj);const u=c!=null&&c.createNode?c.createNode(t.schema,s,t):typeof((d=c==null?void 0:c.nodeClass)==null?void 0:d.from)=="function"?c.nodeClass.from(t.schema,s,t):new H(s);return e?u.tag=e:c.default||(u.tag=c.tag),l&&(l.node=u),u}function js(s,e,t){let n=t;for(let o=e.length-1;o>=0;--o){const i=e[o];if(typeof i=="number"&&Number.isInteger(i)&&i>=0){const r=[];r[i]=n,n=r}else n=new Map([[i,n]])}return wt(n,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:s,sourceObjects:new Map})}const $i=s=>s==null||typeof s=="object"&&!!s[Symbol.iterator]().next().done;class vs extends ys{constructor(e,t){super(e),Object.defineProperty(this,"schema",{value:t,configurable:!0,enumerable:!1,writable:!0})}clone(e){const t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(t.schema=e),t.items=t.items.map(n=>q(n)||V(n)?n.clone(e):n),this.range&&(t.range=this.range.slice()),t}addIn(e,t){if($i(e))this.add(t);else{const[n,...o]=e,i=this.get(n,!0);if(J(i))i.addIn(o,t);else if(i===void 0&&this.schema)this.set(n,js(this.schema,o,t));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${o}`)}}deleteIn(e){const[t,...n]=e;if(n.length===0)return this.delete(t);const o=this.get(t,!0);if(J(o))return o.deleteIn(n);throw new Error(`Expected YAML collection at ${t}. Remaining path: ${n}`)}getIn(e,t){const[n,...o]=e,i=this.get(n,!0);return o.length===0?!t&&F(i)?i.value:i:J(i)?i.getIn(o,t):void 0}hasAllNullValues(e){return this.items.every(t=>{if(!V(t))return!1;const n=t.value;return n==null||e&&F(n)&&n.value==null&&!n.commentBefore&&!n.comment&&!n.tag})}hasIn(e){const[t,...n]=e;if(n.length===0)return this.has(t);const o=this.get(t,!0);return J(o)?o.hasIn(n):!1}setIn(e,t){const[n,...o]=e;if(o.length===0)this.set(n,t);else{const i=this.get(n,!0);if(J(i))i.setIn(o,t);else if(i===void 0&&this.schema)this.set(n,js(this.schema,o,t));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${o}`)}}}vs.maxFlowStringSingleLineLength=60;const Ai=s=>s.replace(/^(?!$)(?: $)?/gm,"#");function tt(s,e){return/^\n+$/.test(s)?s.substring(1):e?s.replace(/^(?! *$)/gm,e):s}const Ne=(s,e,t)=>s.endsWith(` +`)?tt(t,e):t.includes(` +`)?` +`+tt(t,e):(s.endsWith(" ")?"":" ")+t,mn="flow",Qt="block",pt="quoted";function It(s,e,t="flow",{indentAtStart:n,lineWidth:o=80,minContentWidth:i=20,onFold:r,onOverflow:a}={}){if(!o||o<0)return s;const l=Math.max(1+i,1+o-e.length);if(s.length<=l)return s;const c=[],u={};let f=o-e.length;typeof n=="number"&&(n>o-Math.max(2,i)?c.push(0):f=o-n);let h,d,p=!1,g=-1,m=-1,v=-1;t===Qt&&(g=Ds(s,g,e.length),g!==-1&&(f=g+l));for(let b;b=s[g+=1];){if(t===pt&&b==="\\"){switch(m=g,s[g+1]){case"x":g+=3;break;case"u":g+=5;break;case"U":g+=9;break;default:g+=1}v=g}if(b===` +`)t===Qt&&(g=Ds(s,g,e.length)),f=g+e.length+l,h=void 0;else{if(b===" "&&d&&d!==" "&&d!==` +`&&d!==" "){const w=s[g+1];w&&w!==" "&&w!==` +`&&w!==" "&&(h=g)}if(g>=f)if(h)c.push(h),f=h+l,h=void 0;else if(t===pt){for(;d===" "||d===" ";)d=b,b=s[g+=1],p=!0;const w=g>v+1?g-2:m-1;if(u[w])return s;c.push(w),u[w]=!0,f=w+l,h=void 0}else p=!0}d=b}if(p&&a&&a(),c.length===0)return s;r&&r();let _=s.slice(0,c[0]);for(let b=0;b({indentAtStart:e?s.indent.length:s.indentAtStart,lineWidth:s.options.lineWidth,minContentWidth:s.options.minContentWidth}),Dt=s=>/^(%|---|\.\.\.)/m.test(s);function Li(s,e,t){if(!e||e<0)return!1;const n=e-t,o=s.length;if(o<=n)return!1;for(let i=0,r=0;in)return!0;if(r=i+1,o-r<=n)return!1}return!0}function Ze(s,e){const t=JSON.stringify(s);if(e.options.doubleQuotedAsJSON)return t;const{implicitKey:n}=e,o=e.options.doubleQuotedMinMultiLineLength,i=e.indent||(Dt(s)?" ":"");let r="",a=0;for(let l=0,c=t[l];c;c=t[++l])if(c===" "&&t[l+1]==="\\"&&t[l+2]==="n"&&(r+=t.slice(a,l)+"\\ ",l+=1,a=l,c="\\"),c==="\\")switch(t[l+1]){case"u":{r+=t.slice(a,l);const u=t.substr(l+2,4);switch(u){case"0000":r+="\\0";break;case"0007":r+="\\a";break;case"000b":r+="\\v";break;case"001b":r+="\\e";break;case"0085":r+="\\N";break;case"00a0":r+="\\_";break;case"2028":r+="\\L";break;case"2029":r+="\\P";break;default:u.substr(0,2)==="00"?r+="\\x"+u.substr(2):r+=t.substr(l,6)}l+=5,a=l+1}break;case"n":if(n||t[l+2]==='"'||t.length +`;let f,h;for(h=t.length;h>0;--h){const S=t[h-1];if(S!==` +`&&S!==" "&&S!==" ")break}let d=t.substring(h);const p=d.indexOf(` +`);p===-1?f="-":t===d||p!==d.length-1?(f="+",i&&i()):f="",d&&(t=t.slice(0,-d.length),d[d.length-1]===` +`&&(d=d.slice(0,-1)),d=d.replace(Yt,`$&${c}`));let g=!1,m,v=-1;for(m=0;m")+(g?c?"2":"1":"")+f;if(s&&(w+=" "+a(s.replace(/ ?[\r\n]+/g," ")),o&&o()),u)return t=t.replace(/\n+/g,`$&${c}`),`${w} +${c}${_}${t}${d}`;t=t.replace(/\n+/g,` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${c}`);const M=It(`${_}${t}${d}`,c,Qt,jt(n,!0));return`${w} +${c}${M}`}function Ci(s,e,t,n){const{type:o,value:i}=s,{actualString:r,implicitKey:a,indent:l,indentStep:c,inFlow:u}=e;if(a&&i.includes(` +`)||u&&/[[\]{},]/.test(i))return He(i,e);if(!i||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(i))return a||u||!i.includes(` +`)?He(i,e):gt(s,e,t,n);if(!a&&!u&&o!==H.PLAIN&&i.includes(` +`))return gt(s,e,t,n);if(Dt(i)){if(l==="")return e.forceBlockIndent=!0,gt(s,e,t,n);if(a&&l===c)return He(i,e)}const f=i.replace(/\n+/g,`$& +${l}`);if(r){const h=g=>{var m;return g.default&&g.tag!=="tag:yaml.org,2002:str"&&((m=g.test)==null?void 0:m.test(f))},{compat:d,tags:p}=e.doc.schema;if(p.some(h)||d!=null&&d.some(h))return He(i,e)}return a?f:It(f,l,mn,jt(e,!1))}function Ii(s,e,t,n){const{implicitKey:o,inFlow:i}=e,r=typeof s.value=="string"?s:Object.assign({},s,{value:String(s.value)});let{type:a}=s;a!==H.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(r.value)&&(a=H.QUOTE_DOUBLE);const l=u=>{switch(u){case H.BLOCK_FOLDED:case H.BLOCK_LITERAL:return o||i?He(r.value,e):gt(r,e,t,n);case H.QUOTE_DOUBLE:return Ze(r.value,e);case H.QUOTE_SINGLE:return Zt(r.value,e);case H.PLAIN:return Ci(r,e,t,n);default:return null}};let c=l(a);if(c===null){const{defaultKeyType:u,defaultStringType:f}=e.options,h=o&&u||f;if(c=l(h),c===null)throw new Error(`Unsupported default string type ${h}`)}return c}function ji(s,e){const t=Object.assign({blockQuote:!0,commentString:Ai,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},s.schema.toStringOptions,e);let n;switch(t.collectionStyle){case"block":n=!1;break;case"flow":n=!0;break;default:n=null}return{anchors:new Set,doc:s,flowCollectionPadding:t.flowCollectionPadding?" ":"",indent:"",indentStep:typeof t.indent=="number"?" ".repeat(t.indent):" ",inFlow:n,options:t}}function Di(s,e){var o;if(e.tag){const i=s.filter(r=>r.tag===e.tag);if(i.length>0)return i.find(r=>r.format===e.format)??i[0]}let t,n;if(F(e)){n=e.value;const i=s.filter(r=>{var a;return(a=r.identify)==null?void 0:a.call(r,n)});t=i.find(r=>r.format===e.format)??i.find(r=>!r.format)}else n=e,t=s.find(i=>i.nodeClass&&n instanceof i.nodeClass);if(!t){const i=((o=n==null?void 0:n.constructor)==null?void 0:o.name)??typeof n;throw new Error(`Tag not resolved for ${i} value`)}return t}function Ni(s,e,{anchors:t,doc:n}){if(!n.directives)return"";const o=[],i=(F(s)||J(s))&&s.anchor;i&&pn(i)&&(t.add(i),o.push(`&${i}`));const r=s.tag?s.tag:e.default?null:e.tag;return r&&o.push(n.directives.tagString(r)),o.join(" ")}function kt(s,e,t,n){var l;if(V(s))return s.toString(e,t,n);if(Ve(s)){if(e.doc.directives)return s.toString(e);if((l=e.resolvedAliases)!=null&&l.has(s))throw new TypeError("Cannot stringify circular structure without alias nodes");e.resolvedAliases?e.resolvedAliases.add(s):e.resolvedAliases=new Set([s]),s=s.resolve(e.doc)}let o;const i=q(s)?s:e.doc.createNode(s,{onTagObj:c=>o=c});o||(o=Di(e.doc.schema.tags,i));const r=Ni(i,o,e);r.length>0&&(e.indentAtStart=(e.indentAtStart??0)+r.length+1);const a=typeof o.stringify=="function"?o.stringify(i,e,t,n):F(i)?Ii(i,e,t,n):i.toString(e,t,n);return r?F(i)||a[0]==="{"||a[0]==="["?`${r} ${a}`:`${r} +${e.indent}${a}`:a}function Hi({key:s,value:e},t,n,o){const{allNullValues:i,doc:r,indent:a,indentStep:l,options:{commentString:c,indentSeq:u,simpleKeys:f}}=t;let h=q(s)&&s.comment||null;if(f){if(h)throw new Error("With simple keys, key nodes cannot have comments");if(J(s)){const E="With simple keys, collection cannot be used as a key value";throw new Error(E)}}let d=!f&&(!s||h&&e==null&&!t.inFlow||J(s)||(F(s)?s.type===H.BLOCK_FOLDED||s.type===H.BLOCK_LITERAL:typeof s=="object"));t=Object.assign({},t,{allNullValues:!1,implicitKey:!d&&(f||!i),indent:a+l});let p=!1,g=!1,m=kt(s,t,()=>p=!0,()=>g=!0);if(!d&&!t.inFlow&&m.length>1024){if(f)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");d=!0}if(t.inFlow){if(i||e==null)return p&&n&&n(),m===""?"?":d?`? ${m}`:m}else if(i&&!f||e==null&&d)return m=`? ${m}`,h&&!p?m+=Ne(m,t.indent,c(h)):g&&o&&o(),m;p&&(h=null),d?(h&&(m+=Ne(m,t.indent,c(h))),m=`? ${m} +${a}:`):(m=`${m}:`,h&&(m+=Ne(m,t.indent,c(h))));let v,_,b;q(e)?(v=!!e.spaceBefore,_=e.commentBefore,b=e.comment):(v=!1,_=null,b=null,e&&typeof e=="object"&&(e=r.createNode(e))),t.implicitKey=!1,!d&&!h&&F(e)&&(t.indentAtStart=m.length+1),g=!1,!u&&l.length>=2&&!t.inFlow&&!d&&ms(e)&&!e.flow&&!e.tag&&!e.anchor&&(t.indent=t.indent.substring(2));let w=!1;const M=kt(e,t,()=>w=!0,()=>g=!0);let S=" ";if(h||v||_){if(S=v?` +`:"",_){const E=c(_);S+=` +${tt(E,t.indent)}`}M===""&&!t.inFlow?S===` +`&&(S=` + +`):S+=` +${t.indent}`}else if(!d&&J(e)){const E=M[0],$=M.indexOf(` +`),C=$!==-1,x=t.inFlow??e.flow??e.items.length===0;if(C||!x){let se=!1;if(C&&(E==="&"||E==="!")){let P=M.indexOf(" ");E==="&"&&P!==-1&&P<$&&M[P+1]==="!"&&(P=M.indexOf(" ",P+1)),(P===-1||$s===Ns||F(s)&&s.value===Ns&&(!s.type||s.type===H.PLAIN);function Vt(s,e,t){const n=s&&Ve(t)?t.resolve(s.doc):t;if(!dn(n))throw new Error("Merge sources must be maps or map aliases");const o=n.toJSON(null,s,Map);for(const[i,r]of o)e instanceof Map?e.has(i)||e.set(i,r):e instanceof Set?e.add(i):Object.prototype.hasOwnProperty.call(e,i)||Object.defineProperty(e,i,{value:r,writable:!0,enumerable:!0,configurable:!0});return e}function xi(s,e,t){if(e===null)return"";if(typeof e!="object")return String(e);if(q(s)&&(t!=null&&t.doc)){const n=ji(t.doc,{});n.anchors=new Set;for(const i of t.anchors.keys())n.anchors.add(i.anchor);n.inFlow=!0,n.inStringifyKey=!0;const o=s.toString(n);if(!t.mapKeyWarned){let i=JSON.stringify(o);i.length>40&&(i=i.substring(0,36)+'..."'),Ri(t.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${i}. Set mapAsMap: true to use object keys.`),t.mapKeyWarned=!0}return o}return JSON.stringify(e)}function _s(s,e,t){const n=wt(s,void 0,t),o=wt(e,void 0,t);return new re(n,o)}class re{constructor(e,t=null){Object.defineProperty(this,ie,{value:hn}),this.key=e,this.value=t}clone(e){let{key:t,value:n}=this;return q(t)&&(t=t.clone(e)),q(n)&&(n=n.clone(e)),new re(t,n)}toJSON(e,t){const n=t!=null&&t.mapAsMap?new Map:{};return yn(t,n,this)}toString(e,t,n){return e!=null&&e.doc?Hi(this,e,t,n):JSON.stringify(this)}}function vn(s,e,t){return(e.inFlow??s.flow?Bi:Vi)(s,e,t)}function Vi({comment:s,items:e},t,{blockItemPrefix:n,flowChars:o,itemIndent:i,onChompKeep:r,onComment:a}){const{indent:l,options:{commentString:c}}=t,u=Object.assign({},t,{indent:i,type:null});let f=!1;const h=[];for(let p=0;pm=null,()=>f=!0);m&&(v+=Ne(v,i,c(m))),f&&m&&(f=!1),h.push(n+v)}let d;if(h.length===0)d=o.start+o.end;else{d=h[0];for(let p=1;pm=null);pu||v.includes(` +`))&&(c=!0),f.push(v),u=f.length}const{start:h,end:d}=t;if(f.length===0)return h+d;if(!c){const p=f.reduce((g,m)=>g+m.length+2,2);c=e.options.lineWidth>0&&p>e.options.lineWidth}if(c){let p=h;for(const g of f)p+=g?` +${i}${o}${g}`:` +`;return`${p} +${o}${d}`}else return`${h}${r}${f.join(" ")}${r}${d}`}function St({indent:s,options:{commentString:e}},t,n,o){if(n&&o&&(n=n.replace(/^\n+/,"")),n){const i=tt(e(n),s);t.push(i.trimStart())}}function Ee(s,e){const t=F(e)?e.value:e;for(const n of s)if(V(n)&&(n.key===e||n.key===t||F(n.key)&&n.key.value===t))return n}class Ie extends vs{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super($e,e),this.items=[]}static from(e,t,n){const{keepUndefined:o,replacer:i}=n,r=new this(e),a=(l,c)=>{if(typeof i=="function")c=i.call(t,l,c);else if(Array.isArray(i)&&!i.includes(l))return;(c!==void 0||o)&&r.items.push(_s(l,c,n))};if(t instanceof Map)for(const[l,c]of t)a(l,c);else if(t&&typeof t=="object")for(const l of Object.keys(t))a(l,t[l]);return typeof e.sortMapEntries=="function"&&r.items.sort(e.sortMapEntries),r}add(e,t){var r;let n;V(e)?n=e:!e||typeof e!="object"||!("key"in e)?n=new re(e,e==null?void 0:e.value):n=new re(e.key,e.value);const o=Ee(this.items,n.key),i=(r=this.schema)==null?void 0:r.sortMapEntries;if(o){if(!t)throw new Error(`Key ${n.key} already set`);F(o.value)&&gn(n.value)?o.value.value=n.value:o.value=n.value}else if(i){const a=this.items.findIndex(l=>i(n,l)<0);a===-1?this.items.push(n):this.items.splice(a,0,n)}else this.items.push(n)}delete(e){const t=Ee(this.items,e);return t?this.items.splice(this.items.indexOf(t),1).length>0:!1}get(e,t){const n=Ee(this.items,e),o=n==null?void 0:n.value;return(!t&&F(o)?o.value:o)??void 0}has(e){return!!Ee(this.items,e)}set(e,t){this.add(new re(e,t),!0)}toJSON(e,t,n){const o=n?new n:t!=null&&t.mapAsMap?new Map:{};t!=null&&t.onCreate&&t.onCreate(o);for(const i of this.items)yn(t,o,i);return o}toString(e,t,n){if(!e)return JSON.stringify(this);for(const o of this.items)if(!V(o))throw new Error(`Map items must all be pairs; found ${JSON.stringify(o)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),vn(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:n,onComment:t})}}class _n extends vs{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(nt,e),this.items=[]}add(e){this.items.push(e)}delete(e){const t=it(e);return typeof t!="number"?!1:this.items.splice(t,1).length>0}get(e,t){const n=it(e);if(typeof n!="number")return;const o=this.items[n];return!t&&F(o)?o.value:o}has(e){const t=it(e);return typeof t=="number"&&t=0?e:null}function Wi(s,e,t){const{replacer:n}=t,o=new _n(s);o.tag="tag:yaml.org,2002:pairs";let i=0;if(e&&Symbol.iterator in Object(e))for(let r of e){typeof n=="function"&&(r=n.call(e,String(i++),r));let a,l;if(Array.isArray(r))if(r.length===2)a=r[0],l=r[1];else throw new TypeError(`Expected [key, value] tuple: ${r}`);else if(r&&r instanceof Object){const c=Object.keys(r);if(c.length===1)a=c[0],l=r[a];else throw new TypeError(`Expected tuple with one key, not ${c.length} keys`)}else a=r;o.items.push(_s(a,l,t))}return o}class bs extends _n{constructor(){super(),this.add=Ie.prototype.add.bind(this),this.delete=Ie.prototype.delete.bind(this),this.get=Ie.prototype.get.bind(this),this.has=Ie.prototype.has.bind(this),this.set=Ie.prototype.set.bind(this),this.tag=bs.tag}toJSON(e,t){if(!t)return super.toJSON(e);const n=new Map;t!=null&&t.onCreate&&t.onCreate(n);for(const o of this.items){let i,r;if(V(o)?(i=ee(o.key,"",t),r=ee(o.value,i,t)):i=ee(o,"",t),n.has(i))throw new Error("Ordered maps must not include duplicate keys");n.set(i,r)}return n}static from(e,t,n){const o=Wi(e,t,n),i=new this;return i.items=o.items,i}}bs.tag="tag:yaml.org,2002:omap";class ws extends Ie{constructor(e){super(e),this.tag=ws.tag}add(e){let t;V(e)?t=e:e&&typeof e=="object"&&"key"in e&&"value"in e&&e.value===null?t=new re(e.key,null):t=new re(e,null),Ee(this.items,t.key)||this.items.push(t)}get(e,t){const n=Ee(this.items,e);return!t&&V(n)?F(n.key)?n.key.value:n.key:n}set(e,t){if(typeof t!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof t}`);const n=Ee(this.items,e);n&&!t?this.items.splice(this.items.indexOf(n),1):!n&&t&&this.items.push(new re(e))}toJSON(e,t){return super.toJSON(e,t,Set)}toString(e,t,n){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),t,n);throw new Error("Set items must all have null values")}static from(e,t,n){const{replacer:o}=n,i=new this(e);if(t&&Symbol.iterator in Object(t))for(let r of t)typeof o=="function"&&(r=o.call(t,r,r)),i.items.push(_s(r,null,n));return i}}ws.tag="tag:yaml.org,2002:set";function Fa(){const s=T(Date.now()),e=Bn({interval:1e3}),t=y(()=>{const o=(e.value-s.value)/1e3,i=Math.floor(o%60).toString().padStart(2,"0");return`${Math.floor(o/60).toString().padStart(2,"0")}:${i}`});function n(){s.value=e.value}return{timer:t,resetTimer:n}}function ks(s=5){const e=[],t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",n=t.length;for(let o=0;o0){const i=document.getElementsByTagName("link"),r=document.querySelector("meta[property=csp-nonce]"),a=(r==null?void 0:r.nonce)||(r==null?void 0:r.getAttribute("nonce"));o=Promise.all(t.map(l=>{if(l=Ui(l),l in Hs)return;Hs[l]=!0;const c=l.endsWith(".css"),u=c?'[rel="stylesheet"]':"";if(!!n)for(let d=i.length-1;d>=0;d--){const p=i[d];if(p.href===l&&(!c||p.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${u}`))return;const h=document.createElement("link");if(h.rel=c?"stylesheet":zi,c||(h.as="script",h.crossOrigin=""),h.href=l,a&&h.setAttribute("nonce",a),document.head.appendChild(h),c)return new Promise((d,p)=>{h.addEventListener("load",d),h.addEventListener("error",()=>p(new Error(`Unable to preload CSS for ${l}`)))})}))}return o.then(()=>e()).catch(i=>{const r=new Event("vite:preloadError",{cancelable:!0});if(r.payload=i,window.dispatchEvent(r),!r.defaultPrevented)throw i})},bn=(s,e)=>{const t=s.__vccOpts||s;for(const[n,o]of e)t[n]=o;return t},qi={},Ki={class:"px-4 py-10 text-center text-red-700 dark:text-red-500 font-bold font-mono"};function Ji(s,e){return Zs(),Wn("div",Ki," An error occurred on this slide. Check the terminal for more information. ")}const Gi=bn(qi,[["render",Ji],["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/error.vue"]]),B=Object.freeze(Object.defineProperty({__proto__:null,default:Gi},Symbol.toStringTag,{value:"Module"})),ue=O({theme:"default",layout:"cover"}),Qi=O({layout:y(()=>ue.layout),transition:y(()=>ue.transition),class:y(()=>ue.class),clicks:y(()=>ue.clicks),name:y(()=>ue.name),preload:y(()=>ue.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:ue,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),fe=O({layout:"two-cols"}),Zi=O({layout:y(()=>fe.layout),transition:y(()=>fe.transition),class:y(()=>fe.class),clicks:y(()=>fe.clicks),name:y(()=>fe.name),preload:y(()=>fe.preload),slide:{index:1,content:"",note:"",title:"软件设计发展",level:1,noteHTML:"",raw:"",frontmatter:fe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:10,id:1,no:2},__clicksContext:null,__preloaded:!1}),he=O({}),Yi=O({layout:y(()=>he.layout),transition:y(()=>he.transition),class:y(()=>he.class),clicks:y(()=>he.clicks),name:y(()=>he.name),preload:y(()=>he.preload),slide:{index:2,content:"",note:"",title:"发展-操作系统软件",level:1,noteHTML:"",raw:"",frontmatter:he,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:33,id:2,no:3},__clicksContext:null,__preloaded:!1}),de=O({}),Xi=O({layout:y(()=>de.layout),transition:y(()=>de.transition),class:y(()=>de.class),clicks:y(()=>de.clicks),name:y(()=>de.name),preload:y(()=>de.preload),slide:{index:3,content:"",note:"",title:"发展-数据库软件",level:1,noteHTML:"",raw:"",frontmatter:de,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:50,id:3,no:4},__clicksContext:null,__preloaded:!1}),pe=O({layout:"two-cols"}),er=O({layout:y(()=>pe.layout),transition:y(()=>pe.transition),class:y(()=>pe.class),clicks:y(()=>pe.clicks),name:y(()=>pe.name),preload:y(()=>pe.preload),slide:{index:4,content:"",note:"",title:"发展-中间件软件",level:1,noteHTML:"",raw:"",frontmatter:pe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:62,id:4,no:5},__clicksContext:null,__preloaded:!1}),ge=O({}),tr=O({layout:y(()=>ge.layout),transition:y(()=>ge.transition),class:y(()=>ge.class),clicks:y(()=>ge.clicks),name:y(()=>ge.name),preload:y(()=>ge.preload),slide:{index:5,content:"",note:"",title:"发展历程",level:1,noteHTML:"",raw:"",frontmatter:ge,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:80,id:5,no:6},__clicksContext:null,__preloaded:!1}),me=O({}),sr=O({layout:y(()=>me.layout),transition:y(()=>me.transition),class:y(()=>me.class),clicks:y(()=>me.clicks),name:y(()=>me.name),preload:y(()=>me.preload),slide:{index:6,content:"",note:"",title:"分层结构",level:1,noteHTML:"",raw:"",frontmatter:me,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:91,id:6,no:7},__clicksContext:null,__preloaded:!1}),ye=O({layout:"two-cols"}),nr=O({layout:y(()=>ye.layout),transition:y(()=>ye.transition),class:y(()=>ye.class),clicks:y(()=>ye.clicks),name:y(()=>ye.name),preload:y(()=>ye.preload),slide:{index:7,content:"",note:"",title:"典型分层设计",level:1,noteHTML:"",raw:"",frontmatter:ye,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:97,id:7,no:8},__clicksContext:null,__preloaded:!1}),ve=O({}),or=O({layout:y(()=>ve.layout),transition:y(()=>ve.transition),class:y(()=>ve.class),clicks:y(()=>ve.clicks),name:y(()=>ve.name),preload:y(()=>ve.preload),slide:{index:8,content:"",note:"",title:"网络协议层",level:1,noteHTML:"",raw:"",frontmatter:ve,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:114,id:8,no:9},__clicksContext:null,__preloaded:!1}),_e=O({layout:"two-cols"}),ir=O({layout:y(()=>_e.layout),transition:y(()=>_e.transition),class:y(()=>_e.class),clicks:y(()=>_e.clicks),name:y(()=>_e.name),preload:y(()=>_e.preload),slide:{index:9,content:"",note:"",title:"共性提取",level:1,noteHTML:"",raw:"",frontmatter:_e,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:122,id:9,no:10},__clicksContext:null,__preloaded:!1}),be=O({layout:"two-cols"}),rr=O({layout:y(()=>be.layout),transition:y(()=>be.transition),class:y(()=>be.class),clicks:y(()=>be.clicks),name:y(()=>be.name),preload:y(()=>be.preload),slide:{index:10,content:"",note:"",title:"互联网协议栈设计",level:1,noteHTML:"",raw:"",frontmatter:be,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:142,id:10,no:11},__clicksContext:null,__preloaded:!1}),we=O({layout:"two-cols"}),ar=O({layout:y(()=>we.layout),transition:y(()=>we.transition),class:y(()=>we.class),clicks:y(()=>we.clicks),name:y(()=>we.name),preload:y(()=>we.preload),slide:{index:11,content:"",note:"",title:"核心思想",level:1,noteHTML:"",raw:"",frontmatter:we,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:158,id:11,no:12},__clicksContext:null,__preloaded:!1}),ke=O({}),lr=O({layout:y(()=>ke.layout),transition:y(()=>ke.transition),class:y(()=>ke.class),clicks:y(()=>ke.clicks),name:y(()=>ke.name),preload:y(()=>ke.preload),slide:{index:12,content:"",note:"",title:"再例如:Desktop Application",level:1,noteHTML:"",raw:"",frontmatter:ke,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:177,id:12,no:13},__clicksContext:null,__preloaded:!1}),Se=O({layout:"two-cols"}),cr=O({layout:y(()=>Se.layout),transition:y(()=>Se.transition),class:y(()=>Se.class),clicks:y(()=>Se.clicks),name:y(()=>Se.name),preload:y(()=>Se.preload),slide:{index:13,content:"",note:"",title:"Three layered",level:1,noteHTML:"",raw:"",frontmatter:Se,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:184,id:13,no:14},__clicksContext:null,__preloaded:!1}),Me=O({}),ur=O({layout:y(()=>Me.layout),transition:y(()=>Me.transition),class:y(()=>Me.class),clicks:y(()=>Me.clicks),name:y(()=>Me.name),preload:y(()=>Me.preload),slide:{index:14,content:"",note:"",title:"Some Bad Examples",level:1,noteHTML:"",raw:"",frontmatter:Me,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:202,id:14,no:15},__clicksContext:null,__preloaded:!1}),Oe=O({}),fr=O({layout:y(()=>Oe.layout),transition:y(()=>Oe.transition),class:y(()=>Oe.class),clicks:y(()=>Oe.clicks),name:y(()=>Oe.name),preload:y(()=>Oe.preload),slide:{index:15,content:"",note:"",title:"阅读材料",level:1,noteHTML:"",raw:"",frontmatter:Oe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:215,id:15,no:16},__clicksContext:null,__preloaded:!1}),hr=[{no:1,meta:Qi,component:async()=>{try{return await j(()=>import("./slidev/1-CvOPQ7-j.js"),__vite__mapDeps([0,1,2,3,4]))}catch(s){return console.error("Failed to load slide 1:",s),B}}},{no:2,meta:Zi,component:async()=>{try{return await j(()=>import("./2-Ce9wY0TA.js"),__vite__mapDeps([5,1,6,2,3,4]))}catch(s){return console.error("Failed to load slide 2:",s),B}}},{no:3,meta:Yi,component:async()=>{try{return await j(()=>import("./3-BpOkxyUj.js"),__vite__mapDeps([7,1,8,2,3,4]))}catch(s){return console.error("Failed to load slide 3:",s),B}}},{no:4,meta:Xi,component:async()=>{try{return await j(()=>import("./4-D7UNWwza.js"),__vite__mapDeps([9,1,8,2,3,4]))}catch(s){return console.error("Failed to load slide 4:",s),B}}},{no:5,meta:er,component:async()=>{try{return await j(()=>import("./5-CwDVTQBX.js"),__vite__mapDeps([10,1,6,2,3,4]))}catch(s){return console.error("Failed to load slide 5:",s),B}}},{no:6,meta:tr,component:async()=>{try{return await j(()=>import("./6-8Rfx_mzJ.js"),__vite__mapDeps([11,1,8,2,3,4]))}catch(s){return console.error("Failed to load slide 6:",s),B}}},{no:7,meta:sr,component:async()=>{try{return await j(()=>import("./7-DTErAE6N.js"),__vite__mapDeps([12,1,8,2,3,4]))}catch(s){return console.error("Failed to load slide 7:",s),B}}},{no:8,meta:nr,component:async()=>{try{return await j(()=>import("./8-B4oJgYsx.js"),__vite__mapDeps([13,1,6,2,3,4]))}catch(s){return console.error("Failed to load slide 8:",s),B}}},{no:9,meta:or,component:async()=>{try{return await j(()=>import("./9-Dyxg0qcS.js"),__vite__mapDeps([14,1,8,2,3,4]))}catch(s){return console.error("Failed to load slide 9:",s),B}}},{no:10,meta:ir,component:async()=>{try{return await j(()=>import("./10-CLajUH68.js"),__vite__mapDeps([15,1,6,2,3,4]))}catch(s){return console.error("Failed to load slide 10:",s),B}}},{no:11,meta:rr,component:async()=>{try{return await j(()=>import("./11-BQdj_s4J.js"),__vite__mapDeps([16,1,6,2,3,4]))}catch(s){return console.error("Failed to load slide 11:",s),B}}},{no:12,meta:ar,component:async()=>{try{return await j(()=>import("./12-B0mW1y2c.js"),__vite__mapDeps([17,1,6,2,3,4]))}catch(s){return console.error("Failed to load slide 12:",s),B}}},{no:13,meta:lr,component:async()=>{try{return await j(()=>import("./13-gXbSBqxj.js"),__vite__mapDeps([18,1,8,2,3,4]))}catch(s){return console.error("Failed to load slide 13:",s),B}}},{no:14,meta:cr,component:async()=>{try{return await j(()=>import("./14-CqNy6x4p.js"),__vite__mapDeps([19,1,6,2,3,4]))}catch(s){return console.error("Failed to load slide 14:",s),B}}},{no:15,meta:ur,component:async()=>{try{return await j(()=>import("./slidev/15-8o6Ikrds.js"),__vite__mapDeps([20,1,8,2,3,4]))}catch(s){return console.error("Failed to load slide 15:",s),B}}},{no:16,meta:fr,component:async()=>{try{return await j(()=>import("./slidev/16-Cewi5NAo.js"),__vite__mapDeps([21,1,8,2,3,4]))}catch(s){return console.error("Failed to load slide 16:",s),B}}}],oe=us(hr);function st(s){return oe.value.find(e=>{var t;return e.no===+s||((t=e.meta.slide)==null?void 0:t.frontmatter.routeAlias)===s})}function Re(s,e){var n;(typeof s=="number"||typeof s=="string")&&(s=st(s));const t=((n=s.meta.slide)==null?void 0:n.frontmatter.routeAlias)??s.no;return e?`/presenter/${t}`:`/${t}`}function dr(s,e,{mode:t="replace"}={}){const n=$t();return y({get(){const o=n.currentRoute.value.query[s];return o==null?e??null:Array.isArray(o)?o.filter(Boolean):o},set(o){vt(()=>{(n.currentRoute.value.query[s]??(e==null?void 0:e.toString()))!==o.toString()&&n[cs(t)]({query:{...n.currentRoute.value.query,[s]:`${o}`===e?void 0:o}})})}})}const Xt=T(0);function pr(s){return s===!1||s==="false"?null:s==null||s===!0||s==="true"?"+1":Array.isArray(s)?[+s[0],+s[1]]:typeof s=="string"&&"+-".includes(s[0])?s:+s}function wn(s,e=0,t){const n={get current(){return Xe(+s.value,e,n.total)},set current(o){s.value=Xe(+o,e,n.total)},clicksStart:e,relativeOffsets:new Map,maxMap:zn(new Map),onMounted(){},calculateSince(o,i=1){let r,a,l;if(typeof o=="string"){const c=n.currentOffset,u=+o;r=c+u,a=c+u+i-1,l=u+i-1}else r=o,a=o+i-1,l=0;return{start:r,end:+Number.POSITIVE_INFINITY,max:a,delta:l,isCurrent:y(()=>n.current===r),isActive:y(()=>n.current>=r)}},calculateRange([o,i]){let r,a,l;return typeof o=="string"?(r=n.currentOffset+ +o,l=+o):(r=o,l=0),typeof i=="string"?(a=r+ +i,l+=+i):a=i,{start:r,end:a,max:a,delta:l,isCurrent:y(()=>n.current===r),isActive:y(()=>r<=n.current&&n.currentD.colorSchema!=="auto"),kn=y({get(){return Fs.value?D.colorSchema==="dark":Bt.value==="auto"?Rs.value:Bt.value==="dark"},set(s){Fs.value||(Bt.value=s===Rs.value?"auto":s?"dark":"light")}}),xa=Ys(kn);At&&Q(kn,s=>{const e=document.querySelector("html");e.classList.toggle("dark",s),e.classList.toggle("light",!s)},{immediate:!0});const mr={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function yr(s,e=!1){if(!s||(typeof s=="string"&&(s={name:s}),!s.name))return;let t=s.name.includes("|")?s.name:mr[s.name]||s.name;if(t.includes("|")){const[n,o]=t.split("|").map(i=>i.trim());t=e?o:n}if(t)return{...s,name:t}}function vr(s,e,t){var o,i;let n=s>0?(o=t==null?void 0:t.meta)==null?void 0:o.transition:(i=e==null?void 0:e.meta)==null?void 0:i.transition;return n||(n=D.transition),yr(n,s<0)}function Sn(s,e,t=1){var o,i,r,a,l,c,u,f,h;const n=(i=(o=e.meta)==null?void 0:o.slide)==null?void 0:i.level;n&&n>t&&s.length>0?Sn(s[s.length-1].children,e,t+1):s.push({no:e.no,children:[],level:t,path:Re(((a=(r=e.meta.slide)==null?void 0:r.frontmatter)==null?void 0:a.routeAlias)??e.no,!1),hideInToc:!!((u=(c=(l=e.meta)==null?void 0:l.slide)==null?void 0:c.frontmatter)!=null&&u.hideInToc),title:(h=(f=e.meta)==null?void 0:f.slide)==null?void 0:h.title})}function Mn(s,e,t=!1,n,o){return s.map(i=>{const r={...i,active:i.no===(o==null?void 0:o.value),hasActiveParent:t};return r.children.length>0&&(r.children=Mn(r.children,e,r.active||r.hasActiveParent,r,o)),n&&(r.active||r.activeParent)&&(n.activeParent=!0),r})}function On(s,e=1){return s.filter(t=>!t.hideInToc).map(t=>({...t,children:On(t.children,e+1)}))}function _r(s,e,t){const n=y(()=>s.value.filter(i=>{var r,a;return(a=(r=i.meta)==null?void 0:r.slide)==null?void 0:a.title}).reduce((i,r)=>(Sn(i,r),i),[])),o=y(()=>Mn(n.value,t.value,void 0,void 0,e));return y(()=>On(o.value))}function br(s,e,t=T(0),n,o,i){const r=y(()=>oe.value.length),a=T(0),l=T(0),c=y(()=>Re(s.value,n.value)),u=y(()=>s.value.no),f=y(()=>{var R;return((R=s.value.meta)==null?void 0:R.layout)||(u.value===1?"cover":"default")}),h=y(()=>e.value.current),d=y(()=>e.value.clicksStart),p=y(()=>e.value.total),g=y(()=>oe.value[Math.min(oe.value.length,u.value+1)-1]),m=y(()=>oe.value[Math.max(1,u.value-1)-1]),v=y(()=>u.valueu.value>1||h.value>0),b=y(()=>vr(a.value,s.value,m.value));Q(s,(R,I)=>{a.value=R.no-I.no});async function w(R){return!1}const M=_r(oe,u,s);async function S(){l.value=1,p.value<=t.value?await $():t.value+=1}async function E(){l.value=-1,t.value<=d.value?await C():t.value-=1}async function $(){l.value=1,u.value{const s=$t(),e=y(()=>s.currentRoute.value),t=y(()=>(s.currentRoute.value.query,new URLSearchParams(location.search))),n=y(()=>t.value.has("print")),o=y(()=>t.value.get("print")==="clicks"),i=y(()=>t.value.has("embedded")),r=y(()=>e.value.name==="play"),a=y(()=>e.value.name==="presenter"),l=y(()=>e.value.name==="notes"),c=y(()=>!a.value&&(!D.remote||t.value.get("password")===D.remote)),u=qn(r,a),f=y(()=>{var v;return u.value?((v=st(e.value.params.no))==null?void 0:v.no)??1:1}),h=y(()=>oe.value[f.value-1]),d=dr("clicks","0"),p=y(()=>m(h.value)),g=y({get(){let v=+(d.value||0);return Number.isNaN(v)&&(v=0),v},set(v){d.value=v.toString()}});function m(v){var w,M;if((w=v==null?void 0:v.meta)!=null&&w.__clicksContext)return v.meta.__clicksContext;const _=v.no,b=wn(y({get(){return f.value===_?Math.max(+(d.value??0),b.clicksStart):f.value>_?Gt:b.clicksStart},set(S){f.value===_&&(d.value=Xe(S,b.clicksStart,b.total).toString())}}),((M=v==null?void 0:v.meta.slide)==null?void 0:M.frontmatter.clicksStart)??0,v==null?void 0:v.meta.clicks);return b.onMounted=()=>{f.value===_&&(d.value=Xe(+d.value,b.clicksStart,b.total).toString())},v!=null&&v.meta&&(v.meta.__clicksContext=b),b}return{router:s,currentRoute:e,isPrintMode:n,isPrintWithClicks:o,isEmbedded:i,isPlaying:r,isPresenter:a,isNotesViewer:l,isPresenterAvailable:c,hasPrimarySlide:u,currentSlideNo:f,currentSlideRoute:h,clicksContext:p,queryClicksRaw:d,queryClicks:g,getPrimaryClicks:m}}),es=Xs(()=>{const s=wr(),e=$t(),t=br(s.currentSlideRoute,s.clicksContext,s.queryClicks,s.isPresenter,s.isPrintMode,e);return Q([t.total,s.currentRoute],async()=>{s.hasPrimarySlide.value&&!st(s.currentRoute.value.params.no)&&await t.goLast()},{flush:"pre",immediate:!0}),{...t,...s}}),kr=[];function Sr(){const s=Qs().appContext.app,e=O({nav:es(),configs:D,themeConfigs:y(()=>D.themeConfig)});s.provide(ds,T("none")),s.provide(gi,e),s.provide(hs,y(()=>e.nav.currentSlideNo)),s.provide(Lt,us(gr()));for(const f of kr)f();const t=D.titleTemplate.replace("%s",D.title||"Slidev"),{clicksContext:n,currentSlideNo:o,hasPrimarySlide:i,isNotesViewer:r,isPresenter:a}=es();ii({title:t,htmlAttrs:D.htmlAttrs}),ci(`${t} - shared`),di(`${t} - drawings`);const l=`${location.origin}_${ks()}`;function c(){r.value||!a.value&&!vi.includes(location.host.split(":")[0])||(a.value?(ze("page",+o.value),ze("clicks",n.value.current)):(ze("viewerPage",+o.value),ze("viewerClicks",n.value.current)),ze("lastUpdate",{id:l,type:a.value?"presenter":"viewer",time:new Date().getTime()}))}const u=$t();u.afterEach(c),Q(n,c),ui(f=>{var h;i.value&&((h=f.lastUpdate)==null?void 0:h.type)==="presenter"&&(+f.page!=+o.value||+n.value.current!=+f.clicks)&&(fn.value=!1,u.replace({path:Re(f.page,a.value),query:{...u.currentRoute.value.query,clicks:f.clicks||0}}))})}const Mr=Kn({__name:"App",setup(s){return Sr(),Fe(()=>{for(const[e,t]of Object.entries(vo.value))document.body.style.setProperty(e,t.toString())}),(e,t)=>{const n=Jn("RouterView");return Zs(),Gn(n)}}}),Or=bn(Mr,[["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function Va(s,e=""){var o,i;const t=["slidev-page",e],n=(i=(o=s==null?void 0:s.meta)==null?void 0:o.slide)==null?void 0:i.no;return n!=null&&t.push(`slidev-page-${n}`),t.filter(Boolean).join(" ")}async function Ba(){const{saveAs:s}=await j(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),[]);s(typeof D.download=="string"?D.download:D.exportFilename?`${D.exportFilename}.pdf`:"/sa2024/03-layered/slidev-exported.pdf",`${D.title}.pdf`)}function xe(s,e,t){var n;return((n=s.instance)==null?void 0:n.$).provides[e]??t}function Pr(){return{install(s){s.directive("click",{name:"v-click",mounted(e,t){const n=mt(e,t,t.value);n!=null&&(e.classList.toggle(ht,!0),e.dataset.slidevClicksStart=String(n.start),Number.isFinite(n.end)&&(e.dataset.slidevClicksEnd=String(n.end)),e.watchStopHandle=Fe(()=>{const o=n.isActive.value,i=n.isCurrent.value,r=o&&!i;n.flagHide?(e.classList.toggle(n.flagFade?qe:Ue,o),e.classList.toggle(Rt,o)):e.classList.toggle(n.flagFade?qe:Ue,!o),e.classList.toggle(Ft,i),e.classList.toggle(xt,r)}))},unmounted:Wt}),s.directive("after",{name:"v-after",mounted(e,t){const n=mt(e,t,"+0");n!=null&&(e.classList.toggle(ht,!0),e.watchStopHandle=Fe(()=>{const o=n.isActive.value,i=n.isCurrent.value,r=o&&!i;n.flagHide?(e.classList.toggle(n.flagFade?qe:Ue,o),e.classList.toggle(Rt,o)):e.classList.toggle(n.flagFade?qe:Ue,!o),e.classList.toggle(Ft,i),e.classList.toggle(xt,r)}))},unmounted:Wt}),s.directive("click-hide",{name:"v-click-hide",mounted(e,t){const n=mt(e,t,t.value,!0);n!=null&&(e.classList.toggle(ht,!0),e.watchStopHandle=Fe(()=>{const o=n.isActive.value,i=n.isCurrent.value,r=o&&!i;e.classList.toggle(n.flagFade?qe:Ue,o),e.classList.toggle(Rt,o),e.classList.toggle(Ft,i),e.classList.toggle(xt,r)}))},unmounted:Wt})}}}const Pn=new Map;function mt(s,e,t,n=!1){var h;const o=(h=xe(e,Lt))==null?void 0:h.value;if(!s||!o)return null;const i=n||e.modifiers.hide!==!1&&e.modifiers.hide!=null,r=e.modifiers.fade!==!1&&e.modifiers.fade!=null,a=pr(t),l=o.calculate(a);if(!l)return null;o.register(s,l);const c=y(()=>i?!l.isActive.value:l.isActive.value),u=y(()=>c.value?"shown":Number.isFinite(l.end)?o.currentn.push(...o)),ts(n,e,t)}function $r(s,e){return s[0]===e[0]&&s[1]===e[1]}function Ar(s,e,t,n=1){const o=t,i=Math.max(e,.1),r=s[0]&&s[0][0]&&typeof s[0][0]=="number"?[s]:s,a=[0,0];if(o)for(const c of r)ts(c,a,o);const l=Lr(r,i,n);if(o){for(const c of r)ts(c,a,-o);Er(l,a,-o)}return l}function Lr(s,e,t){const n=[];for(const c of s){const u=[...c];$r(u[0],u[u.length-1])||u.push([u[0][0],u[0][1]]),u.length>2&&n.push(u)}const o=[];e=Math.max(e,.1);const i=[];for(const c of n)for(let u=0;uc.yminu.ymin?1:c.xu.x?1:c.ymax===u.ymax?0:(c.ymax-u.ymax)/Math.abs(c.ymax-u.ymax)),!i.length)return o;let r=[],a=i[0].ymin,l=0;for(;r.length||i.length;){if(i.length){let c=-1;for(let f=0;fa);f++)c=f;i.splice(0,c+1).forEach(f=>{r.push({s:a,edge:f})})}if(r=r.filter(c=>!(c.edge.ymax<=a)),r.sort((c,u)=>c.edge.x===u.edge.x?0:(c.edge.x-u.edge.x)/Math.abs(c.edge.x-u.edge.x)),(t!==1||l%e===0)&&r.length>1)for(let c=0;c=r.length)break;const f=r[c].edge,h=r[u].edge;o.push([[Math.round(f.x),a],[Math.round(h.x),a]])}a+=t,r.forEach(c=>{c.edge.x=c.edge.x+t*c.edge.islope}),l++}return o}function ot(s,e){var t;const n=e.hachureAngle+90;let o=e.hachureGap;o<0&&(o=e.strokeWidth*4),o=Math.round(Math.max(o,.1));let i=1;return e.roughness>=1&&(((t=e.randomizer)===null||t===void 0?void 0:t.next())||Math.random())>.7&&(i=o),Ar(s,o,n,i||1)}class Ss{constructor(e){this.helper=e}fillPolygons(e,t){return this._fillPolygons(e,t)}_fillPolygons(e,t){const n=ot(e,t);return{type:"fillSketch",ops:this.renderLines(n,t)}}renderLines(e,t){const n=[];for(const o of e)n.push(...this.helper.doubleLineOps(o[0][0],o[0][1],o[1][0],o[1][1],t));return n}}function Nt(s){const e=s[0],t=s[1];return Math.sqrt(Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2))}class Cr extends Ss{fillPolygons(e,t){let n=t.hachureGap;n<0&&(n=t.strokeWidth*4),n=Math.max(n,.1);const o=Object.assign({},t,{hachureGap:n}),i=ot(e,o),r=Math.PI/180*t.hachureAngle,a=[],l=n*.5*Math.cos(r),c=n*.5*Math.sin(r);for(const[f,h]of i)Nt([f,h])&&a.push([[f[0]-l,f[1]+c],[...h]],[[f[0]+l,f[1]-c],[...h]]);return{type:"fillSketch",ops:this.renderLines(a,t)}}}class Ir extends Ss{fillPolygons(e,t){const n=this._fillPolygons(e,t),o=Object.assign({},t,{hachureAngle:t.hachureAngle+90}),i=this._fillPolygons(e,o);return n.ops=n.ops.concat(i.ops),n}}class jr{constructor(e){this.helper=e}fillPolygons(e,t){t=Object.assign({},t,{hachureAngle:0});const n=ot(e,t);return this.dotsOnLines(n,t)}dotsOnLines(e,t){const n=[];let o=t.hachureGap;o<0&&(o=t.strokeWidth*4),o=Math.max(o,.1);let i=t.fillWeight;i<0&&(i=t.strokeWidth/2);const r=o/4;for(const a of e){const l=Nt(a),c=l/o,u=Math.ceil(c)-1,f=l-u*o,h=(a[0][0]+a[1][0])/2-o/4,d=Math.min(a[0][1],a[1][1]);for(let p=0;p{const a=Nt(r),l=Math.floor(a/(n+o)),c=(a+o-l*(n+o))/2;let u=r[0],f=r[1];u[0]>f[0]&&(u=r[1],f=r[0]);const h=Math.atan((f[1]-u[1])/(f[0]-u[0]));for(let d=0;d{const r=Nt(i),a=Math.round(r/(2*t));let l=i[0],c=i[1];l[0]>c[0]&&(l=i[1],c=i[0]);const u=Math.atan((c[1]-l[1])/(c[0]-l[0]));for(let f=0;fu%2?c+t:c+e);i.push({key:"C",data:l}),e=l[4],t=l[5];break}case"Q":i.push({key:"Q",data:[...a]}),e=a[2],t=a[3];break;case"q":{const l=a.map((c,u)=>u%2?c+t:c+e);i.push({key:"Q",data:l}),e=l[2],t=l[3];break}case"A":i.push({key:"A",data:[...a]}),e=a[5],t=a[6];break;case"a":e+=a[5],t+=a[6],i.push({key:"A",data:[a[0],a[1],a[2],a[3],a[4],e,t]});break;case"H":i.push({key:"H",data:[...a]}),e=a[0];break;case"h":e+=a[0],i.push({key:"H",data:[e]});break;case"V":i.push({key:"V",data:[...a]}),t=a[0];break;case"v":t+=a[0],i.push({key:"V",data:[t]});break;case"S":i.push({key:"S",data:[...a]}),e=a[2],t=a[3];break;case"s":{const l=a.map((c,u)=>u%2?c+t:c+e);i.push({key:"S",data:l}),e=l[2],t=l[3];break}case"T":i.push({key:"T",data:[...a]}),e=a[0],t=a[1];break;case"t":e+=a[0],t+=a[1],i.push({key:"T",data:[e,t]});break;case"Z":case"z":i.push({key:"Z",data:[]}),e=n,t=o;break}return i}function An(s){const e=[];let t="",n=0,o=0,i=0,r=0,a=0,l=0;for(const{key:c,data:u}of s){switch(c){case"M":e.push({key:"M",data:[...u]}),[n,o]=u,[i,r]=u;break;case"C":e.push({key:"C",data:[...u]}),n=u[4],o=u[5],a=u[2],l=u[3];break;case"L":e.push({key:"L",data:[...u]}),[n,o]=u;break;case"H":n=u[0],e.push({key:"L",data:[n,o]});break;case"V":o=u[0],e.push({key:"L",data:[n,o]});break;case"S":{let f=0,h=0;t==="C"||t==="S"?(f=n+(n-a),h=o+(o-l)):(f=n,h=o),e.push({key:"C",data:[f,h,...u]}),a=u[0],l=u[1],n=u[2],o=u[3];break}case"T":{const[f,h]=u;let d=0,p=0;t==="Q"||t==="T"?(d=n+(n-a),p=o+(o-l)):(d=n,p=o);const g=n+2*(d-n)/3,m=o+2*(p-o)/3,v=f+2*(d-f)/3,_=h+2*(p-h)/3;e.push({key:"C",data:[g,m,v,_,f,h]}),a=d,l=p,n=f,o=h;break}case"Q":{const[f,h,d,p]=u,g=n+2*(f-n)/3,m=o+2*(h-o)/3,v=d+2*(f-d)/3,_=p+2*(h-p)/3;e.push({key:"C",data:[g,m,v,_,d,p]}),a=f,l=h,n=d,o=p;break}case"A":{const f=Math.abs(u[0]),h=Math.abs(u[1]),d=u[2],p=u[3],g=u[4],m=u[5],v=u[6];f===0||h===0?(e.push({key:"C",data:[n,o,m,v,m,v]}),n=m,o=v):(n!==m||o!==v)&&(Ln(n,o,m,v,f,h,d,p,g).forEach(function(b){e.push({key:"C",data:b})}),n=m,o=v);break}case"Z":e.push({key:"Z",data:[]}),n=i,o=r;break}t=c}return e}function xr(s){return Math.PI*s/180}function Ke(s,e,t){const n=s*Math.cos(t)-e*Math.sin(t),o=s*Math.sin(t)+e*Math.cos(t);return[n,o]}function Ln(s,e,t,n,o,i,r,a,l,c){const u=xr(r);let f=[],h=0,d=0,p=0,g=0;if(c)[h,d,p,g]=c;else{[s,e]=Ke(s,e,-u),[t,n]=Ke(t,n,-u);const P=(s-t)/2,A=(e-n)/2;let N=P*P/(o*o)+A*A/(i*i);N>1&&(N=Math.sqrt(N),o=N*o,i=N*i);const R=a===l?-1:1,I=o*o,ne=i*i,W=I*ne-I*A*A-ne*P*P,Y=I*A*A+ne*P*P,L=R*Math.sqrt(Math.abs(W/Y));p=L*o*A/i+(s+t)/2,g=L*-i*P/o+(e+n)/2,h=Math.asin(parseFloat(((e-g)/i).toFixed(9))),d=Math.asin(parseFloat(((n-g)/i).toFixed(9))),sd&&(h=h-Math.PI*2),!l&&d>h&&(d=d-Math.PI*2)}let m=d-h;if(Math.abs(m)>Math.PI*120/180){const P=d,A=t,N=n;l&&d>h?d=h+Math.PI*120/180*1:d=h+Math.PI*120/180*-1,t=p+o*Math.cos(d),n=g+i*Math.sin(d),f=Ln(t,n,A,N,o,i,r,0,l,[d,P,p,g])}m=d-h;const v=Math.cos(h),_=Math.sin(h),b=Math.cos(d),w=Math.sin(d),M=Math.tan(m/4),S=4/3*o*M,E=4/3*i*M,$=[s,e],C=[s+S*_,e-E*v],x=[t+S*w,n-E*b],se=[t,n];if(C[0]=2*$[0]-C[0],C[1]=2*$[1]-C[1],c)return[C,x,se].concat(f);{f=[C,x,se].concat(f);const P=[];for(let A=0;A2){const o=[];for(let i=0;iMath.PI*2&&(d=0,p=Math.PI*2);const g=Math.PI*2/l.curveStepCount,m=Math.min(g/2,(p-d)/2),v=Us(m,c,u,f,h,d,p,1,l);if(!l.disableMultiStroke){const _=Us(m,c,u,f,h,d,p,1.5,l);v.push(..._)}return r&&(a?v.push(...le(c,u,c+f*Math.cos(d),u+h*Math.sin(d),l),...le(c,u,c+f*Math.cos(p),u+h*Math.sin(p),l)):v.push({op:"lineTo",data:[c,u]},{op:"lineTo",data:[c+f*Math.cos(d),u+h*Math.sin(d)]})),{type:"path",ops:v}}function Bs(s,e){const t=An($n(Ms(s))),n=[];let o=[0,0],i=[0,0];for(const{key:r,data:a}of t)switch(r){case"M":{i=[a[0],a[1]],o=[a[0],a[1]];break}case"L":n.push(...le(i[0],i[1],a[0],a[1],e)),i=[a[0],a[1]];break;case"C":{const[l,c,u,f,h,d]=a;n.push(...Kr(l,c,u,f,h,d,i,e)),i=[h,d];break}case"Z":n.push(...le(i[0],i[1],o[0],o[1],e)),i=[o[0],o[1]];break}return{type:"path",ops:n}}function Ut(s,e){const t=[];for(const n of s)if(n.length){const o=e.maxRandomnessOffset||0,i=n.length;if(i>2){t.push({op:"move",data:[n[0][0]+k(o,e),n[0][1]+k(o,e)]});for(let r=1;rMath.PI*2&&(f=0,h=Math.PI*2);const d=(h-f)/r.curveStepCount,p=[];for(let g=f;g<=h;g=g+d)p.push([a+c*Math.cos(g),l+u*Math.sin(g)]);return p.push([a+c*Math.cos(h),l+u*Math.sin(h)]),p.push([a,l]),je([p],r)}function zr(s,e){return k(s,e)}function Ur(s,e,t){return Mt(s,e,t)}function qr(s,e,t,n,o){return le(s,e,t,n,o,!0)}function Ws(s){const e=Object.assign({},s);return e.randomizer=void 0,s.seed&&(e.seed=s.seed+1),e}function jn(s){return s.randomizer||(s.randomizer=new Tr(s.seed||0)),s.randomizer.next()}function Mt(s,e,t,n=1){return t.roughness*n*(jn(t)*(e-s)+s)}function k(s,e,t=1){return Mt(-s,s,e,t)}function le(s,e,t,n,o,i=!1){const r=i?o.disableMultiStrokeFill:o.disableMultiStroke,a=is(s,e,t,n,o,!0,!1);if(r)return a;const l=is(s,e,t,n,o,!0,!0);return a.concat(l)}function is(s,e,t,n,o,i,r){const a=Math.pow(s-t,2)+Math.pow(e-n,2),l=Math.sqrt(a);let c=1;l<200?c=1:l>500?c=.4:c=-.0016668*l+1.233334;let u=o.maxRandomnessOffset||0;u*u*100>a&&(u=l/10);const f=u/2,h=.2+jn(o)*.2;let d=o.bowing*o.maxRandomnessOffset*(n-e)/200,p=o.bowing*o.maxRandomnessOffset*(s-t)/200;d=k(d,o,c),p=k(p,o,c);const g=[],m=()=>k(f,o,c),v=()=>k(u,o,c),_=o.preserveVertices;return i&&(r?g.push({op:"move",data:[s+(_?0:m()),e+(_?0:m())]}):g.push({op:"move",data:[s+(_?0:k(u,o,c)),e+(_?0:k(u,o,c))]})),r?g.push({op:"bcurveTo",data:[d+s+(t-s)*h+m(),p+e+(n-e)*h+m(),d+s+2*(t-s)*h+m(),p+e+2*(n-e)*h+m(),t+(_?0:m()),n+(_?0:m())]}):g.push({op:"bcurveTo",data:[d+s+(t-s)*h+v(),p+e+(n-e)*h+v(),d+s+2*(t-s)*h+v(),p+e+2*(n-e)*h+v(),t+(_?0:v()),n+(_?0:v())]}),g}function at(s,e,t){if(!s.length)return[];const n=[];n.push([s[0][0]+k(e,t),s[0][1]+k(e,t)]),n.push([s[0][0]+k(e,t),s[0][1]+k(e,t)]);for(let o=1;o3){const i=[],r=1-t.curveTightness;o.push({op:"move",data:[s[1][0],s[1][1]]});for(let a=1;a+21&&o.push(i):o.push(i),o.push(s[e+3])}else{const r=s[e+0],a=s[e+1],l=s[e+2],c=s[e+3],u=Te(r,a,.5),f=Te(a,l,.5),h=Te(l,c,.5),d=Te(u,f,.5),p=Te(f,h,.5),g=Te(d,p,.5);rs([r,u,d,g],0,t,o),rs([g,p,h,c],0,t,o)}return o}function Zr(s,e){return Pt(s,0,s.length,e)}function Pt(s,e,t,n,o){const i=o||[],r=s[e],a=s[t-1];let l=0,c=1;for(let u=e+1;ul&&(l=f,c=u)}return Math.sqrt(l)>n?(Pt(s,e,c+1,n,i),Pt(s,c,t,n,i)):(i.length||i.push(r),i.push(a)),i}function as(s,e=.15,t){const n=[],o=(s.length-1)/3;for(let i=0;i0?Pt(n,0,n.length,t):n}function Yr(s,e,t){const n=Ms(s),o=An($n(n)),i=[];let r=[],a=[0,0],l=[];const c=()=>{l.length>=4&&r.push(...as(l,e)),l=[]},u=()=>{c(),r.length&&(i.push(r),r=[])};for(const{key:h,data:d}of o)switch(h){case"M":u(),a=[d[0],d[1]],r.push(a);break;case"L":c(),r.push([d[0],d[1]]);break;case"C":if(!l.length){const p=r.length?r[r.length-1]:a;l.push([p[0],p[1]])}l.push([d[0],d[1]]),l.push([d[2],d[3]]),l.push([d[4],d[5]]);break;case"Z":c(),r.push([a[0],a[1]]);break}if(u(),!t)return i;const f=[];for(const h of i){const d=Zr(h,t);d.length&&f.push(d)}return f}const K="none";class Xr{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Tn()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,t,n){return{shape:e,sets:t||[],options:n||this.defaultOptions}}line(e,t,n,o,i){const r=this._o(i);return this._d("line",[G(e,t,n,o,r)],r)}rectangle(e,t,n,o,i){const r=this._o(i),a=[],l=Cn(e,t,n,o,r);if(r.fill){const c=[[e,t],[e+n,t],[e+n,t+o],[e,t+o]];r.fillStyle==="solid"?a.push(Ut([c],r)):a.push(je([c],r))}return r.stroke!==K&&a.push(l),this._d("rectangle",a,r)}ellipse(e,t,n,o,i){const r=this._o(i),a=[],l=In(n,o,r),c=os(e,t,r,l);if(r.fill)if(r.fillStyle==="solid"){const u=os(e,t,r,l).opset;u.type="fillPath",a.push(u)}else a.push(je([c.estimatedPoints],r));return r.stroke!==K&&a.push(c.opset),this._d("ellipse",a,r)}circle(e,t,n,o){const i=this.ellipse(e,t,n,n,o);return i.shape="circle",i}linearPath(e,t){const n=this._o(t);return this._d("linearPath",[Ye(e,!1,n)],n)}arc(e,t,n,o,i,r,a=!1,l){const c=this._o(l),u=[],f=Vs(e,t,n,o,i,r,a,!0,c);if(a&&c.fill)if(c.fillStyle==="solid"){const h=Object.assign({},c);h.disableMultiStroke=!0;const d=Vs(e,t,n,o,i,r,!0,!1,h);d.type="fillPath",u.push(d)}else u.push(Wr(e,t,n,o,i,r,c));return c.stroke!==K&&u.push(f),this._d("arc",u,c)}curve(e,t){const n=this._o(t),o=[],i=xs(e,n);if(n.fill&&n.fill!==K)if(n.fillStyle==="solid"){const r=xs(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));o.push({type:"fillPath",ops:this._mergedShape(r.ops)})}else{const r=[],a=e;if(a.length){const c=typeof a[0][0]=="number"?[a]:a;for(const u of c)u.length<3?r.push(...u):u.length===3?r.push(...as(qs([u[0],u[0],u[1],u[2]]),10,(1+n.roughness)/2)):r.push(...as(qs(u),10,(1+n.roughness)/2))}r.length&&o.push(je([r],n))}return n.stroke!==K&&o.push(i),this._d("curve",o,n)}polygon(e,t){const n=this._o(t),o=[],i=Ye(e,!0,n);return n.fill&&(n.fillStyle==="solid"?o.push(Ut([e],n)):o.push(je([e],n))),n.stroke!==K&&o.push(i),this._d("polygon",o,n)}path(e,t){const n=this._o(t),o=[];if(!e)return this._d("path",o,n);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const i=n.fill&&n.fill!=="transparent"&&n.fill!==K,r=n.stroke!==K,a=!!(n.simplification&&n.simplification<1),l=a?4-4*(n.simplification||1):(1+n.roughness)/2,c=Yr(e,1,l),u=Bs(e,n);if(i)if(n.fillStyle==="solid")if(c.length===1){const f=Bs(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));o.push({type:"fillPath",ops:this._mergedShape(f.ops)})}else o.push(Ut(c,n));else o.push(je(c,n));return r&&(a?c.forEach(f=>{o.push(Ye(f,!1,n))}):o.push(u)),this._d("path",o,n)}opsToPath(e,t){let n="";for(const o of e.ops){const i=typeof t=="number"&&t>=0?o.data.map(r=>+r.toFixed(t)):o.data;switch(o.op){case"move":n+=`M${i[0]} ${i[1]} `;break;case"bcurveTo":n+=`C${i[0]} ${i[1]}, ${i[2]} ${i[3]}, ${i[4]} ${i[5]} `;break;case"lineTo":n+=`L${i[0]} ${i[1]} `;break}}return n.trim()}toPaths(e){const t=e.sets||[],n=e.options||this.defaultOptions,o=[];for(const i of t){let r=null;switch(i.type){case"path":r={d:this.opsToPath(i),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:K};break;case"fillPath":r={d:this.opsToPath(i),stroke:K,strokeWidth:0,fill:n.fill||K};break;case"fillSketch":r=this.fillSketch(i,n);break}r&&o.push(r)}return o}fillSketch(e,t){let n=t.fillWeight;return n<0&&(n=t.strokeWidth/2),{d:this.opsToPath(e),stroke:t.fill||K,strokeWidth:n,fill:K}}_mergedShape(e){return e.filter((t,n)=>n===0?!0:t.op!=="move")}}const Dn="http://www.w3.org/2000/svg",ea=800;let qt=null;function ta(){return qt||(qt=new Xr().defaultOptions),qt}function Kt(s,e,t){return{...ta(),maxRandomnessOffset:2,roughness:s==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:s!=="double",disableMultiStrokeFill:!1,seed:e,...t}}function sa(s){const e=s.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const t=e;if(t.length)switch(t.length){case 4:return[...t];case 1:return[t[0],t[0],t[0],t[0]];case 2:return[...t,...t];case 3:return[...t,t[1]];default:return[t[0],t[1],t[2],t[3]]}}}return[5,5,5,5]}function na(s,e,t,n,o,i){const r=[];let a=t.strokeWidth||2;const l=sa(t),c=t.animate===void 0?!0:!!t.animate,u=t.iterations||2,f=t.rtl?1:0,h=Kt("single",i,t);switch(t.type){case"underline":{const d=e.y+e.h+l[2];for(let p=f;p_.setAttribute(b,w);for(const _ of d){const b=document.createElementNS(Dn,"path");if(v(b,"d",_),v(b,"fill","none"),v(b,"stroke",t.color||"currentColor"),v(b,"stroke-width",`${a}`),t.opacity!==void 0&&v(b,"style",`opacity:${t.opacity}`),c){const w=b.getTotalLength();p.push(w),m+=w}s.appendChild(b),g.push(b)}if(c){let _=0;for(let b=0;bsetTimeout(e,s))}function oa(s){const e=[];for(const t of s){let n="";for(const o of t.ops){const i=o.data;switch(o.op){case"move":n.trim()&&e.push(n.trim()),n=`M${i[0]} ${i[1]} `;break;case"bcurveTo":n+=`C${i[0]} ${i[1]}, ${i[2]} ${i[3]}, ${i[4]} ${i[5]} `;break;case"lineTo":n+=`L${i[0]} ${i[1]} `;break}}n.trim()&&e.push(n.trim())}return e}function ia(){if(!window.__rno_kf_s){const s=window.__rno_kf_s=document.createElement("style");s.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(s)}}var ra=Object.defineProperty,aa=(s,e,t)=>e in s?ra(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t,X=(s,e,t)=>(aa(s,typeof e!="symbol"?e+"":e,t),t);class la{constructor(e,t){X(this,"_state","unattached"),X(this,"_config"),X(this,"_resizing",!1),X(this,"_ro"),X(this,"_seed",Tn()),X(this,"_e"),X(this,"_svg"),X(this,"_lastSizes",[]),X(this,"_animationDelay",0),X(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),X(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(t)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,t){this._config[e]!==t&&(this._config[e]=t,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){ia();const e=this._svg=document.createElementNS(Dn,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const t=e.style;t.position="absolute",t.top="0",t.left="0",t.overflow="visible",t.pointerEvents="none",t.width="100px",t.height="100px";const n=this._config.type==="highlight";if(this._e.insertAdjacentElement(n?"beforebegin":"afterend",e),this._state="not-showing",n){const o=window.getComputedStyle(this._e).position;(!o||o==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const t of e)t.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let t=0;tMath.round(o)===Math.round(i);return n(e.x,t.x)&&n(e.y,t.y)&&n(e.w,t.w)&&n(e.h,t.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,t){let n=this._config;t&&(n=JSON.parse(JSON.stringify(this._config)),n.animate=!1);const o=this.rects();let i=0;o.forEach(c=>i+=c.w);const r=n.animationDuration||ea;let a=0;const l=[];for(let c=0;cObject.assign(s,{type:"box"}),circle:s=>Object.assign(s,{type:"circle"}),underline:s=>Object.assign(s,{type:"underline"}),highlight:s=>Object.assign(s,{type:"highlight"}),"strike-through":s=>Object.assign(s,{type:"strike-through"}),"crossed-off":s=>Object.assign(s,{type:"crossed-off"}),bracket:s=>Object.assign(s,{type:"bracket"}),strike:s=>Object.assign(s,{type:"strike-through"}),cross:s=>Object.assign(s,{type:"crossed-off"}),crossed:s=>Object.assign(s,{type:"crossed-off"}),linethrough:s=>Object.assign(s,{type:"strike-through"}),"line-through":s=>Object.assign(s,{type:"strike-through"}),black:s=>U(s,"text-black"),blue:s=>U(s,"text-blue"),cyan:s=>U(s,"text-cyan"),gray:s=>U(s,"text-gray"),green:s=>U(s,"text-green"),indigo:s=>U(s,"text-indigo"),lime:s=>U(s,"text-lime"),orange:s=>U(s,"text-orange"),pink:s=>U(s,"text-pink"),purple:s=>U(s,"text-purple"),red:s=>U(s,"text-red"),teal:s=>U(s,"text-teal"),white:s=>U(s,"text-white"),yellow:s=>U(s,"text-yellow")},ua=[[/^delay-?(\d+)?$/,(s,e,t)=>{const n=(s[1]?Number.parseInt(s[1]):t)||300;return e.delay=n,e}],[/^(?:op|opacity)-?(\d+)?$/,(s,e,t)=>{const n=(s[1]?Number.parseInt(s[1]):t)||100;return e.opacity=n/100,e}]];function fa(){return{install(s){s.directive("mark",{name:"v-mark",mounted:(e,t)=>{const n=y(()=>{const r=typeof t.value=="object"&&!Array.isArray(t.value)?{...t.value}:{at:t.value};let a={at:r.at};const l=Object.entries(t.modifiers).filter(([u,f])=>{if(Js[u])return a=Js[u](a,f),!1;for(const[h,d]of ua){const p=u.match(h);if(p)return a=d(p,a,f),!1}return!0});l.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",l);const c={...a,...r};return c.type||(c.type="underline"),c}),o=ca(e,n.value),i=mt(e,t,n.value.at);if(!i){o.show();return}e.watchStopHandle=Fe(()=>{let r;n.value.class&&(o.class=n.value.class),n.value.color&&(o.color=n.value.color);const a=n.value.at;a===!0?r=!0:a===!1?r=!1:r=i.isActive.value,r!=null&&(r?o.show():o.hide())})},unmounted:e=>{var t;(t=e.watchStopHandle)==null||t.call(e)}})}}}const Wa=T(!1),za=T(!1),Ua=T(!1),ha=T(!1),qa=T(!0),Ka=Qn({xs:460,...to}),Tt=Zn(),Ja=Yn(),Ga=y(()=>Tt.height.value-Tt.width.value/en.value>120),Qa=Xn(At?document.body:null),ls=eo(),Za=y(()=>{var s,e;return["INPUT","TEXTAREA"].includes(((s=ls.value)==null?void 0:s.tagName)||"")||((e=ls.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),Ya=y(()=>{var s;return["BUTTON","A"].includes(((s=ls.value)==null?void 0:s.tagName)||"")});te("slidev-camera","default",{listenToStorageChanges:!1});te("slidev-mic","default",{listenToStorageChanges:!1});const da=te("slidev-scale",0),Xa=te("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),pa=te("slidev-show-editor",!1,{listenToStorageChanges:!1}),ga=te("slidev-editor-vertical",!1,{listenToStorageChanges:!1}),ma=te("slidev-editor-width",At?window.innerWidth*.4:318,{listenToStorageChanges:!1}),ya=te("slidev-editor-height",At?window.innerHeight*.4:300,{listenToStorageChanges:!1}),lt=us(null),Et=te("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),ct=te("slidev-presenter-layout",1,{listenToStorageChanges:!1});function el(){ct.value=ct.value+1,ct.value>2&&(ct.value=1)}function tl(){Et.value=Math.min(2,Et.value+.1)}function sl(){Et.value=Math.max(.5,Et.value-.1)}const nl=Ys(ha);function va(s=Gs(un,T())){const e=so(s),t=Q([pa,ga,ma,ya,da,Tt.width,Tt.height],()=>{setTimeout(e.update,300)},{flush:"post",immediate:!0});return{...e,stop:t}}function _a(s){return()=>{}}function ba(s,e,t){var Y;function n(L){return s?xe(s,L):io(L)}const o=n(ds),i=n(mi)??{},r=n(hs),a=y(()=>_a(r.value)),l=n(pi)??T(1),c=n(yi)??T(1),{left:u,top:f,stop:h}=va(n(un)??T()),d=["slide","presenter"].includes(o.value);let p=s?"directive":"prop",g=ks(),m;if(Array.isArray(e)?m=e:typeof e=="string"&&e.includes(",")?m=e.split(",").map(Number):e!=null&&(p="frontmatter",g=`${e}`,e=(Y=i==null?void 0:i.dragPos)==null?void 0:Y[g],m=e==null?void 0:e.split(",").map(Number)),p!=="frontmatter"&&!t)throw new Error("[Slidev] Can not identify the source position of the v-drag element, please provide an explicit `id` prop.");const v=[h],_=e!=null&&!Number.isFinite(m==null?void 0:m[3]);m??(m=[Number.NaN,Number.NaN,0]);const b=T(m[2]),w=T(m[0]+m[2]/2),M=T(m[4]??0),S=y(()=>M.value*Math.PI/180),E=y(()=>Math.sin(S.value)),$=y(()=>Math.cos(S.value)),C=T(),x=T({left:0,top:0,width:0,height:0}),se=T(0);function P(){const L=C.value.getBoundingClientRect();x.value={left:L.left/c.value,top:L.top/c.value,width:L.width/c.value,height:L.height/c.value},se.value=(x.value.width+x.value.height)/l.value/(Math.abs(E.value)+Math.abs($.value))-b.value}v.push(Q(b,P,{flush:"post"}));const A=T(m[3]??0),N=y({get:()=>(_?se.value:A.value)||0,set:L=>!_&&(A.value=L)}),R=T(m[1]),I=y({get:()=>R.value+N.value/2,set:L=>R.value=L-N.value/2}),ne=y(()=>Number.isFinite(w.value)?{position:"absolute",zIndex:100,left:`${w.value-b.value/2}px`,top:`${I.value-N.value/2}px`,width:`${b.value}px`,height:_?void 0:`${N.value}px`,transformOrigin:"center center",transform:`rotate(${M.value}deg)`}:{position:"absolute",zIndex:100});v.push(Q([w,I,b,N,M],([L,ce,Be,We,Os])=>{let Ce=[L-Be/2,ce-We/2,Be].map(Math.round).join();_?Ce+=p==="directive"?",NaN":",_":Ce+=`,${Math.round(We)}`,Math.round(Os)!==0&&(Ce+=`,${Math.round(Os)}`),p==="directive"&&(Ce=`[${Ce}]`),a.value(g,Ce,p,t)}));const W={id:g,dataSource:p,markdownSource:t,zoom:c,autoHeight:_,x0:w,y0:I,width:b,height:N,rotate:M,container:C,containerStyle:ne,watchStopHandles:v,dragging:y(()=>lt.value===W),mounted(){d&&(P(),e||setTimeout(()=>{P(),w.value=(x.value.left+x.value.width/2-u.value)/l.value,I.value=(x.value.top-f.value)/l.value,b.value=x.value.width/l.value,N.value=x.value.height/l.value},100))},unmounted(){d&&W.stopDragging()},startDragging(){P(),lt.value=W},stopDragging(){lt.value===W&&(lt.value=null)}};return v.push(no(C,L=>{const ce=document.querySelector("#drag-control-container");ce&&L.target&&ce.contains(L.target)||W.stopDragging()}),Q(oo(),L=>{L||W.stopDragging()})),W}function wa(){return{install(s){s.directive("drag",{name:"v-drag",created(e,t,n){var i;const o=ba(t,t.value,(i=n.props)==null?void 0:i.markdownSource);n.props&&(n.props={...n.props},delete n.props.markdownSource),o.container.value=e,e.draggingState=o,e.dataset.dragId=o.id,o.watchStopHandles.push(Q(o.containerStyle,r=>{for(const[a,l]of Object.entries(r))l&&(e.style[a]=l)},{immediate:!0})),e.addEventListener("dblclick",o.startDragging)},mounted(e){e.draggingState.mounted()},unmounted(e){const t=e.draggingState;t.unmounted(),e.removeEventListener("dblclick",t.startDragging),t.watchStopHandles.forEach(n=>n())}})}}}function ka(){return{install(s){const e=ro();s.directive("motion",{name:"v-motion",mounted(t,n,o,i){var b,w,M;const r=xe(n,Lt),a=xe(n,hs),l=xe(n,ds),{currentPage:c,clicks:u,isPrintMode:f}=es(),h=o.props={...o.props},d={...h.initial,...(b=h.variants)==null?void 0:b["slidev-initial"]},p={...h.enter,...(w=h.variants)==null?void 0:w["slidev-enter"]},g={...h.leave,...(M=h.variants)==null?void 0:M["slidev-leave"]};delete h.initial,delete h.enter,delete h.leave;const m=`${ks()}-`,v=[];for(const S of Object.keys(h))if(S.startsWith("click-")){const E=S.slice(6),$=E.includes("-")?E.split("-").map(Number):+E,C=m+E;v.push({id:C,at:$,variant:{...h[S]},info:r==null?void 0:r.value.calculate($)}),delete h[S]}v.sort((S,E)=>(Array.isArray(S.at)?S.at[0]:S.at)-(Array.isArray(E.at)?E.at[0]:E.at)),e.created(t,n,o,i),e.mounted(t,n,o,i);const _=t.motionInstance;_.clickIds=v.map(S=>S.id),_.set(d),_.watchStopHandle=Q([a,c,u].filter(Boolean),()=>{var E;const S=((E=Pn.get(t))==null?void 0:E.visibilityState.value)??"shown";if(!(r!=null&&r.value)||!["slide","presenter"].includes((l==null?void 0:l.value)??"")){const $={...d,...p};for(const{variant:C}of v)Object.assign($,C);_.set($)}else if(f.value||(a==null?void 0:a.value)===c.value)if(S==="shown"){const $={...d,...p};for(const{variant:C,info:x}of v)(!x||x.isActive.value)&&Object.assign($,C);f.value?_.set($):_.apply($)}else _.apply(S==="before"?d:g);else _.apply(((a==null?void 0:a.value)??-1)>c.value?d:g)},{immediate:!0})},unmounted(t){t.motionInstance.watchStopHandle()}})}}}const Sa=[];function Ma(){const s=[];{let e=function(t){if(!D.remote||D.remote===t.query.password)return!0;if(D.remote&&t.query.password===void 0){const n=prompt("Enter password");if(D.remote===n)return!0}return t.params.no?{path:`/${t.params.no}`}:{path:""}};s.push({name:"entry",path:"/entry",component:()=>j(()=>import("./slidev/entry-DIQrd7vr.js"),__vite__mapDeps([22,23,1,3,4]))},{name:"overview",path:"/overview",component:()=>j(()=>import("./slidev/overview-DuaZ2SfB.js"),__vite__mapDeps([24,23,1,25,26,27,28,29,30,31,3,4]))},{name:"notes",path:"/notes",component:()=>j(()=>import("./slidev/notes-C51CsU9x.js"),__vite__mapDeps([32,23,1,28,29,27,3,4])),beforeEnter:e},{name:"presenter",path:"/presenter/:no",component:()=>j(()=>import("./slidev/presenter-C2CefDvp.js"),__vite__mapDeps([33,23,1,34,25,26,27,2,3,4,35,28,29,36,37,30,31,38])),beforeEnter:e},{path:"/presenter",redirect:{path:"/presenter/1"}})}return s.push({name:"play",path:"/:no",component:()=>j(()=>import("./slidev/play-BVAn-WHB.js"),__vite__mapDeps([39,1,34,25,26,23,27,2,3,4,35,40]))},{path:"",redirect:{path:"/1"}}),Sa.reduce((e,t)=>t(e),s)}const Oa=[];async function Pa(s){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e);const t=ao({history:lo("/sa2024/03-layered/"),routes:Ma()});s.use(t),s.use(ni()),s.use(Pr()),s.use(fa()),s.use(wa()),s.use(ka()),s.use(uo,{container:"#twoslash-container"});const n={app:s,router:t};vt(()=>{t.afterEach(async()=>{await vt(),Xt.value+=1})});for(const o of Oa)await o(n)}const Nn=co(Or);Pa(Nn);Nn.mount("#app");export{ds as $,j as A,Tt as B,Gt as C,da as D,ga as E,oe as F,lt as G,nl as H,Ua as I,Ja as J,Ba as K,qa as L,Ya as M,Za as N,Aa as O,Ka as P,ls as Q,el as R,st as S,pi as T,va as U,fn as V,en as W,un as X,Na as Y,hs as Z,bn as _,es as a,Ha as a0,Lt as a1,yi as a2,Da as a3,ja as a4,Ia as a5,ue as a6,fe as a7,he as a8,de as a9,pe as aa,ge as ab,me as ac,ye as ad,ve as ae,_e as af,be as ag,we as ah,ke as ai,Se as aj,Me as ak,Oe as al,gi as am,mi as an,Ra as ao,_i as ap,gr as b,D as c,kn as d,Va as e,Qa as f,Re as g,Fa as h,Fs as i,Xa as j,ha as k,Et as l,tl as m,sl as n,Xe as o,ct as p,Wa as q,$a as r,Ca as s,xa as t,ii as u,za as v,yo as w,La as x,Ga as y,pa as z}; diff --git a/03-layered/assets/index-Dcdd7r15.js b/03-layered/assets/index-Dcdd7r15.js deleted file mode 100644 index a402e71..0000000 --- a/03-layered/assets/index-Dcdd7r15.js +++ /dev/null @@ -1,7 +0,0 @@ -import{n as le,y as ei,z as S,A as si,t as A,B as Kt,C as Zt,D as ni,E as ii,G as oi,H as ri,I as g,J as x,K as ai,L as li,M as ci,N as ui,O as Rt,P as Is,Q as hi,R as di,d as ms,b as _s,e as m,f as xe,h as fi,o as O,c as U,k as L,q,s as V,i as Ue,S as Me,T as vs,U as pi,V as gi,W as mi,X as _i,Y as vi,Z as yi,_ as bi,$ as J,a0 as fn,a1 as wi,a2 as He,a3 as ki,a4 as xi,a5 as Mi,r as Si,a6 as $i,a7 as Pi,u as Ci}from"./modules/vue-CnJIpJLC.js";import{T as Ti}from"./modules/shiki-BgDwwTVx.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const o of i)if(o.type==="childList")for(const a of o.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&n(a)}).observe(document,{childList:!0,subtree:!0});function s(i){const o={};return i.integrity&&(o.integrity=i.integrity),i.referrerPolicy&&(o.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?o.credentials="include":i.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function n(i){if(i.ep)return;i.ep=!0;const o=s(i);fetch(i.href,o)}})();function ts(t,e={},s){for(const n in t){const i=t[n],o=s?`${s}:${n}`:n;typeof i=="object"&&i!==null?ts(i,e,o):typeof i=="function"&&(e[o]=i)}return e}const Li={run:t=>t()},Ei=()=>Li,pn=typeof console.createTask<"u"?console.createTask:Ei;function Ai(t,e){const s=e.shift(),n=pn(s);return t.reduce((i,o)=>i.then(()=>n.run(()=>o(...e))),Promise.resolve())}function Oi(t,e){const s=e.shift(),n=pn(s);return Promise.all(t.map(i=>n.run(()=>i(...e))))}function We(t,e){for(const s of[...t])s(e)}class Ii{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,s,n={}){if(!e||typeof s!="function")return()=>{};const i=e;let o;for(;this._deprecatedHooks[e];)o=this._deprecatedHooks[e],e=o.to;if(o&&!n.allowDeprecated){let a=o.message;a||(a=`${i} hook has been deprecated`+(o.to?`, please use ${o.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(a)||(console.warn(a),this._deprecatedMessages.add(a))}if(!s.name)try{Object.defineProperty(s,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(s),()=>{s&&(this.removeHook(e,s),s=void 0)}}hookOnce(e,s){let n,i=(...o)=>(typeof n=="function"&&n(),n=void 0,i=void 0,s(...o));return n=this.hook(e,i),n}removeHook(e,s){if(this._hooks[e]){const n=this._hooks[e].indexOf(s);n!==-1&&this._hooks[e].splice(n,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,s){this._deprecatedHooks[e]=typeof s=="string"?{to:s}:s;const n=this._hooks[e]||[];delete this._hooks[e];for(const i of n)this.hook(e,i)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const s in e)this.deprecateHook(s,e[s])}addHooks(e){const s=ts(e),n=Object.keys(s).map(i=>this.hook(i,s[i]));return()=>{for(const i of n.splice(0,n.length))i()}}removeHooks(e){const s=ts(e);for(const n in s)this.removeHook(n,s[n])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...s){return s.unshift(e),this.callHookWith(Ai,e,...s)}callHookParallel(e,...s){return s.unshift(e),this.callHookWith(Oi,e,...s)}callHookWith(e,s,...n){const i=this._before||this._after?{name:s,args:n,context:{}}:void 0;this._before&&We(this._before,i);const o=e(s in this._hooks?[...this._hooks[s]]:[],n);return o instanceof Promise?o.finally(()=>{this._after&&i&&We(this._after,i)}):(this._after&&i&&We(this._after,i),o)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const s=this._before.indexOf(e);s!==-1&&this._before.splice(s,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const s=this._after.indexOf(e);s!==-1&&this._after.splice(s,1)}}}}function Hi(){return new Ii}function Di(t){return Array.isArray(t)?t:[t]}const Ri=["title","titleTemplate","script","style","noscript"],_e=["base","meta","link","style","script","noscript"],Ni=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],ji=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],gn=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],Fi=typeof window<"u";function ys(t){let e=9;for(let s=0;s>>9)+65536).toString(16).substring(1,8).toLowerCase()}function Hs(t){return t._h||ys(t._d?t._d:`${t.tag}:${t.textContent||t.innerHTML||""}:${Object.entries(t.props).map(([e,s])=>`${e}:${String(s)}`).join(",")}`)}function mn(t,e){const{props:s,tag:n}=t;if(ji.includes(n))return n;if(n==="link"&&s.rel==="canonical")return"canonical";if(s.charset)return"charset";const i=["id"];n==="meta"&&i.push("name","property","http-equiv");for(const o of i)if(typeof s[o]<"u"){const a=String(s[o]);return e&&!e(a)?!1:`${n}:${o}:${a}`}return!1}function Ds(t,e){return t==null?e||null:typeof t=="function"?t(e):t}async function zi(t,e,s){const n={tag:t,props:await _n(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(t)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(t))};return gn.forEach(i=>{const o=typeof n.props[i]<"u"?n.props[i]:s[i];typeof o<"u"&&((!["innerHTML","textContent","children"].includes(i)||Ri.includes(n.tag))&&(n[i==="children"?"innerHTML":i]=o),delete n.props[i])}),n.props.body&&(n.tagPosition="bodyClose",delete n.props.body),n.tag==="script"&&typeof n.innerHTML=="object"&&(n.innerHTML=JSON.stringify(n.innerHTML),n.props.type=n.props.type||"application/json"),Array.isArray(n.props.content)?n.props.content.map(i=>({...n,props:{...n.props,content:i}})):n}function Ui(t){return typeof t=="object"&&!Array.isArray(t)&&(t=Object.keys(t).filter(e=>t[e])),(Array.isArray(t)?t.join(" "):t).split(" ").filter(e=>e.trim()).filter(Boolean).join(" ")}async function _n(t,e){for(const s of Object.keys(t)){if(s==="class"){t[s]=Ui(t[s]);continue}if(t[s]instanceof Promise&&(t[s]=await t[s]),!e&&!gn.includes(s)){const n=String(t[s]),i=s.startsWith("data-");n==="true"||n===""?t[s]=i?"true":!0:t[s]||(i&&n==="false"?t[s]="false":delete t[s])}}return t}const Wi=10;async function qi(t){const e=[];return Object.entries(t.resolvedInput).filter(([s,n])=>typeof n<"u"&&Ni.includes(s)).forEach(([s,n])=>{const i=Di(n);e.push(...i.map(o=>zi(s,o,t)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((s,n)=>(s._e=t._i,t.mode&&(s._m=t.mode),s._p=(t._i<l&&l[c]||void 0,e):r=e[a],typeof r<"u"?(r||"").replace(/"/g,'\\"'):!1}let i=t;try{i=decodeURI(t)}catch{}return(i.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(a=>{const r=n(a.slice(1));typeof r=="string"&&(t=t.replace(new RegExp(`\\${a}(\\W|$)`,"g"),(l,c)=>`${r}${c}`).trim())}),t.includes(Ot)&&(t.endsWith(Ot)&&(t=t.slice(0,-Ot.length).trim()),t.startsWith(Ot)&&(t=t.slice(Ot.length).trim()),t=t.replace(new RegExp(`\\${Ot}\\s*\\${Ot}`,"g"),Ot),t=ve(t,{separator:s},s)),t}async function Bi(t){const e={tag:t.tagName.toLowerCase(),props:await _n(t.getAttributeNames().reduce((s,n)=>({...s,[n]:t.getAttribute(n)}),{})),innerHTML:t.innerHTML};return e._d=mn(e),e}async function Ki(t,e={}){var u;const s=e.document||t.resolvedOptions.document;if(!s)return;const n={shouldRender:t.dirty,tags:[]};if(await t.hooks.callHook("dom:beforeRender",n),!n.shouldRender)return;const i=(await t.resolveTags()).map(h=>({tag:h,id:_e.includes(h.tag)?Hs(h):h.tag,shouldRender:!0}));let o=t._dom;if(!o){o={elMap:{htmlAttrs:s.documentElement,bodyAttrs:s.body}};for(const h of["body","head"]){const f=(u=s==null?void 0:s[h])==null?void 0:u.children;for(const d of[...f].filter(p=>_e.includes(p.tagName.toLowerCase())))o.elMap[d.getAttribute("data-hid")||Hs(await Bi(d))]=d}}o.pendingSideEffects={...o.sideEffects||{}},o.sideEffects={};function a(h,f,d){const p=`${h}:${f}`;o.sideEffects[p]=d,delete o.pendingSideEffects[p]}function r({id:h,$el:f,tag:d}){const p=d.tag.endsWith("Attrs");o.elMap[h]=f,p||(["textContent","innerHTML"].forEach(_=>{d[_]&&d[_]!==f[_]&&(f[_]=d[_])}),a(h,"el",()=>{o.elMap[h].remove(),delete o.elMap[h]})),Object.entries(d.props).forEach(([_,v])=>{const y=`attr:${_}`;if(_==="class")for(const w of(v||"").split(" ").filter(Boolean))p&&a(h,`${y}:${w}`,()=>f.classList.remove(w)),!f.classList.contains(w)&&f.classList.add(w);else f.getAttribute(_)!==v&&f.setAttribute(_,v===!0?"":String(v)),p&&a(h,y,()=>f.removeAttribute(_))})}const l=[],c={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const h of i){const{tag:f,shouldRender:d,id:p}=h;if(d){if(f.tag==="title"){s.title=f.textContent;continue}h.$el=h.$el||o.elMap[p],h.$el?r(h):_e.includes(f.tag)&&l.push(h)}}for(const h of l){const f=h.tag.tagPosition||"head";h.$el=s.createElement(h.tag.tag),r(h),c[f]=c[f]||s.createDocumentFragment(),c[f].appendChild(h.$el)}for(const h of i)await t.hooks.callHook("dom:renderTag",h,s,a);c.head&&s.head.appendChild(c.head),c.bodyOpen&&s.body.insertBefore(c.bodyOpen,s.body.firstChild),c.bodyClose&&s.body.appendChild(c.bodyClose),Object.values(o.pendingSideEffects).forEach(h=>h()),t._dom=o,t.dirty=!1,await t.hooks.callHook("dom:rendered",{renders:i})}async function Gi(t,e={}){const s=e.delayFn||(n=>setTimeout(n,10));return t._domUpdatePromise=t._domUpdatePromise||new Promise(n=>s(async()=>{await Ki(t,e),delete t._domUpdatePromise,n()}))}function Zi(t){return e=>{var n,i;const s=((i=(n=e.resolvedOptions.document)==null?void 0:n.head.querySelector('script[id="unhead:payload"]'))==null?void 0:i.innerHTML)||!1;return s&&e.push(JSON.parse(s)),{mode:"client",hooks:{"entries:updated":function(o){Gi(o,t)}}}}}const Ji=["templateParams","htmlAttrs","bodyAttrs"],Xi={hooks:{"tag:normalise":function({tag:t}){["hid","vmid","key"].forEach(n=>{t.props[n]&&(t.key=t.props[n],delete t.props[n])});const s=mn(t)||(t.key?`${t.tag}:${t.key}`:!1);s&&(t._d=s)},"tags:resolve":function(t){const e={};t.tags.forEach(n=>{const i=(n.key?`${n.tag}:${n.key}`:n._d)||n._p,o=e[i];if(o){let r=n==null?void 0:n.tagDuplicateStrategy;if(!r&&Ji.includes(n.tag)&&(r="merge"),r==="merge"){const l=o.props;["class","style"].forEach(c=>{l[c]&&(n.props[c]?(c==="style"&&!l[c].endsWith(";")&&(l[c]+=";"),n.props[c]=`${l[c]} ${n.props[c]}`):n.props[c]=l[c])}),e[i].props={...l,...n.props};return}else if(n._e===o._e){o._duped=o._duped||[],n._d=`${o._d}:${o._duped.length+1}`,o._duped.push(n);return}else if(Se(n)>Se(o))return}const a=Object.keys(n.props).length+(n.innerHTML?1:0)+(n.textContent?1:0);if(_e.includes(n.tag)&&a===0){delete e[i];return}e[i]=n});const s=[];Object.values(e).forEach(n=>{const i=n._duped;delete n._duped,s.push(n),i&&s.push(...i)}),t.tags=s,t.tags=t.tags.filter(n=>!(n.tag==="meta"&&(n.props.name||n.props.property)&&!n.props.content))}}},Yi={mode:"server",hooks:{"tags:resolve":function(t){const e={};t.tags.filter(s=>["titleTemplate","templateParams","title"].includes(s.tag)&&s._m==="server").forEach(s=>{e[s.tag]=s.tag.startsWith("title")?s.textContent:s.props}),Object.keys(e).length&&t.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},Qi=["script","link","bodyAttrs"];function to(t){const e={},s={};return Object.entries(t.props).forEach(([n,i])=>{n.startsWith("on")&&typeof i=="function"?(vn.includes(n)&&(e[n]=`this.dataset.${n} = true`),s[n]=i):e[n]=i}),{props:e,eventHandlers:s}}const eo=t=>({hooks:{"tags:resolve":function(e){for(const s of e.tags)if(Qi.includes(s.tag)){const{props:n,eventHandlers:i}=to(s);s.props=n,Object.keys(i).length&&((s.props.src||s.props.href)&&(s.key=s.key||ys(s.props.src||s.props.href)),s._eventHandlers=i)}},"dom:renderTag":function(e,s,n){if(!e.tag._eventHandlers)return;const i=e.tag.tag==="bodyAttrs"?s.defaultView:e.$el;Object.entries(e.tag._eventHandlers).forEach(([o,a])=>{const r=`${e.tag._d||e.tag._p}:${o}`,l=o.slice(2).toLowerCase(),c=`data-h-${l}`;if(n(e.id,r,()=>{}),e.$el.hasAttribute(c))return;e.$el.setAttribute(c,"");let u;const h=f=>{a(f),u==null||u.disconnect()};o in e.$el.dataset?h(new Event(o.replace("on",""))):vn.includes(o)&&typeof MutationObserver<"u"?(u=new MutationObserver(f=>{f.some(p=>p.attributeName===`data-${o}`)&&(h(new Event(o.replace("on",""))),u==null||u.disconnect())}),u.observe(e.$el,{attributes:!0})):i.addEventListener(l,h),n(e.id,r,()=>{u==null||u.disconnect(),i.removeEventListener(l,h),e.$el.removeAttribute(c)})})}}}),so=["link","style","script","noscript"],no={hooks:{"tag:normalise":({tag:t})=>{t.key&&so.includes(t.tag)&&(t.props["data-hid"]=t._h=ys(t.key))}}},io={hooks:{"tags:resolve":t=>{const e=s=>{var n;return(n=t.tags.find(i=>i._d===s))==null?void 0:n._p};for(const{prefix:s,offset:n}of Vi)for(const i of t.tags.filter(o=>typeof o.tagPriority=="string"&&o.tagPriority.startsWith(s))){const o=e(i.tagPriority.replace(s,""));typeof o<"u"&&(i._p=o+n)}t.tags.sort((s,n)=>s._p-n._p).sort((s,n)=>Se(s)-Se(n))}}},oo={meta:"content",link:"href",htmlAttrs:"lang"},ro=t=>({hooks:{"tags:resolve":e=>{var r;const{tags:s}=e,n=(r=s.find(l=>l.tag==="title"))==null?void 0:r.textContent,i=s.findIndex(l=>l.tag==="templateParams"),o=i!==-1?s[i].props:{},a=o.separator||"|";delete o.separator,o.pageTitle=ve(o.pageTitle||n||"",o,a);for(const l of s.filter(c=>c.processTemplateParams!==!1)){const c=oo[l.tag];c&&typeof l.props[c]=="string"?l.props[c]=ve(l.props[c],o,a):(l.processTemplateParams===!0||["titleTemplate","title"].includes(l.tag))&&["innerHTML","textContent"].forEach(u=>{typeof l[u]=="string"&&(l[u]=ve(l[u],o,a))})}t._templateParams=o,t._separator=a,e.tags=s.filter(l=>l.tag!=="templateParams")}}}),ao={hooks:{"tags:resolve":t=>{const{tags:e}=t;let s=e.findIndex(i=>i.tag==="titleTemplate");const n=e.findIndex(i=>i.tag==="title");if(n!==-1&&s!==-1){const i=Ds(e[s].textContent,e[n].textContent);i!==null?e[n].textContent=i||e[n].textContent:delete e[n]}else if(s!==-1){const i=Ds(e[s].textContent);i!==null&&(e[s].textContent=i,e[s].tag="title",s=-1)}s!==-1&&delete e[s],t.tags=e.filter(Boolean)}}},lo={hooks:{"tags:afterResolve":function(t){for(const e of t.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{r.dirty=!0,e.callHook("entries:updated",r)};let i=0,o=[];const a=[],r={plugins:a,dirty:!1,resolvedOptions:t,hooks:e,headEntries(){return o},use(l){const c=typeof l=="function"?l(r):l;(!c.key||!a.some(u=>u.key===c.key))&&(a.push(c),js(c.mode,s)&&e.addHooks(c.hooks||{}))},push(l,c){c==null||delete c.head;const u={_i:i++,input:l,...c};return js(u.mode,s)&&(o.push(u),n()),{dispose(){o=o.filter(h=>h._i!==u._i),e.callHook("entries:updated",r),n()},patch(h){o=o.map(f=>(f._i===u._i&&(f.input=u.input=h),f)),n()}}},async resolveTags(){const l={tags:[],entries:[...o]};await e.callHook("entries:resolve",l);for(const c of l.entries){const u=c.resolvedInput||c.input;if(c.resolvedInput=await(c.transform?c.transform(u):u),c.resolvedInput)for(const h of await qi(c)){const f={tag:h,entry:c,resolvedOptions:r.resolvedOptions};await e.callHook("tag:normalise",f),l.tags.push(f.tag)}}return await e.callHook("tags:beforeResolve",l),await e.callHook("tags:resolve",l),await e.callHook("tags:afterResolve",l),l.tags},ssr:s};return[Xi,Yi,eo,no,io,ro,ao,lo,...(t==null?void 0:t.plugins)||[]].forEach(l=>r.use(l)),r.hooks.callHook("init",r),r}function ho(){return yn}const fo=ei.startsWith("3");function po(t){return typeof t=="function"?t():S(t)}function $e(t,e=""){if(t instanceof Promise)return t;const s=po(t);return!t||!s?s:Array.isArray(s)?s.map(n=>$e(n,e)):typeof s=="object"?Object.fromEntries(Object.entries(s).map(([n,i])=>n==="titleTemplate"||n.startsWith("on")?[n,S(i)]:[n,$e(i,n)])):s}const go={hooks:{"entries:resolve":function(t){for(const e of t.entries)e.resolvedInput=$e(e.input)}}},bn="usehead";function mo(t){return{install(s){fo&&(s.config.globalProperties.$unhead=t,s.config.globalProperties.$head=t,s.provide(bn,t))}}.install}function _o(t={}){t.domDelayFn=t.domDelayFn||(s=>le(()=>setTimeout(()=>s(),0)));const e=co(t);return e.use(go),e.install=mo(e),e}const Fs=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},zs="__unhead_injection_handler__";function vo(){if(zs in Fs)return Fs[zs]();const t=si(bn);return t||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),t||ho()}function yo(t,e={}){const s=e.head||vo();if(s)return s.ssr?s.push(t,e):bo(s,t,e)}function bo(t,e,s={}){const n=A(!1),i=A({});Kt(()=>{i.value=n.value?{}:$e(e)});const o=t.push(i.value,s);return Zt(i,r=>{o.patch(r)}),ri()&&(ni(()=>{o.dispose()}),ii(()=>{n.value=!0}),oi(()=>{n.value=!1})),o}function wo(...t){return xo(t).reduce((e,s)=>e+s,0)}function ko(t){return t=t??[],Array.isArray(t)?t:[t]}function xo(t){return ko(t).flat(1)}function Mo(t){return t!=null}function So(t,e){return Object.fromEntries(Object.entries(t).map(([s,n])=>e(s,n)).filter(Mo))}const T={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:"dev",monacoTypesSource:"local",monacoTypesAdditionalPackages:[],download:!1,export:{},info:!1,highlighter:"shiki",lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},wn=T.aspectRatio??16/9,$o=T.canvasWidth??980,hu=Math.ceil($o/wn),Po=g(()=>So(T.themeConfig||{},(t,e)=>[`--slidev-theme-${t}`,e]));function kn(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function st(t,e,s){Object.defineProperty(t,e,{value:s,writable:!0,enumerable:!1})}const zt=x({page:0,clicks:0});let Co=[],To=[];st(zt,"$syncUp",!0);st(zt,"$syncDown",!0);st(zt,"$paused",!1);st(zt,"$onSet",t=>Co.push(t));st(zt,"$onPatch",t=>To.push(t));kn();st(zt,"$patch",async()=>!1);function xn(t,e,s=!1){const n=[];let i=!1,o=!1,a,r;const l=x(e);function c(d){n.push(d)}function u(d,p){l[d]!==p&&(clearTimeout(a),i=!0,l[d]=p,a=setTimeout(()=>i=!1,0))}function h(d){i||(clearTimeout(r),o=!0,Object.entries(d).forEach(([p,_])=>{l[p]=_}),r=setTimeout(()=>o=!1,0))}function f(d){let p;s?s&&window.addEventListener("storage",v=>{v&&v.key===d&&v.newValue&&h(JSON.parse(v.newValue))}):(p=new BroadcastChannel(d),p.addEventListener("message",v=>h(v.data)));function _(){!s&&p&&!o?p.postMessage(ai(l)):s&&!o&&window.localStorage.setItem(d,JSON.stringify(l)),i||n.forEach(v=>v(l))}if(Zt(l,_,{deep:!0,flush:"sync"}),s){const v=window.localStorage.getItem(d);v&&h(JSON.parse(v))}}return{init:f,onPatch:c,patch:u,state:l}}const{init:Lo,onPatch:Eo,patch:Yt,state:du}=xn(zt,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),Ut=x({});let Ao=[],Oo=[];st(Ut,"$syncUp",!0);st(Ut,"$syncDown",!0);st(Ut,"$paused",!1);st(Ut,"$onSet",t=>Ao.push(t));st(Ut,"$onPatch",t=>Oo.push(t));kn();st(Ut,"$patch",async()=>!1);const{init:Io,onPatch:Ho,patch:Mn,state:Sn}=xn(Ut,{},!1),Do="modulepreload",Ro=function(t){return"/sa2024/03-layered/"+t},Us={},ce=function(e,s,n){let i=Promise.resolve();if(s&&s.length>0){const o=document.getElementsByTagName("link");i=Promise.all(s.map(a=>{if(a=Ro(a),a in Us)return;Us[a]=!0;const r=a.endsWith(".css"),l=r?'[rel="stylesheet"]':"";if(!!n)for(let h=o.length-1;h>=0;h--){const f=o[h];if(f.href===a&&(!r||f.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${a}"]${l}`))return;const u=document.createElement("link");if(u.rel=r?"stylesheet":Do,r||(u.as="script",u.crossOrigin=""),u.href=a,document.head.appendChild(u),r)return new Promise((h,f)=>{u.addEventListener("load",h),u.addEventListener("error",()=>f(new Error(`Unable to preload CSS for ${a}`)))})}))}return i.then(()=>e()).catch(o=>{const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=o,window.dispatchEvent(a),!a.defaultPrevented)throw o})},I=(t,e)=>{const s=t.__vccOpts||t;for(const[n,i]of e)s[n]=i;return s};function fu(){const t=A(Date.now()),e=li({interval:1e3}),s=g(()=>{const i=(e.value-t.value)/1e3,o=Math.floor(i%60).toString().padStart(2,"0");return`${Math.floor(i/60).toString().padStart(2,"0")}:${o}`});function n(){t.value=e.value}return{timer:s,resetTimer:n}}function No(t=5){const e=[],s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n=s.length;for(let i=0;ii.max||0))}}}function qo(t){var i,o;if((i=t==null?void 0:t.meta)!=null&&i.__clicksContext)return t.meta.__clicksContext;const e=+((t==null?void 0:t.path)??es),s=g({get(){var r;const a=+(((r=Tt.value)==null?void 0:r.path)??Number.NaN);return!a||Number.isNaN(a)?0:a===e?Gt.value:a>e?es:0},set(a){var l;+(((l=Tt.value)==null?void 0:l.path)??Number.NaN)===e&&(Gt.value=a)}}),n=En(s,(o=t==null?void 0:t.meta)==null?void 0:o.clicks);return t!=null&&t.meta&&(t.meta.__clicksContext=n),n}function Vo(t,e=0){var s;return En(A(e),(s=t==null?void 0:t.meta)==null?void 0:s.clicks)}const Bo=ui(Vo());function j(){const t=Rt(Pn),e=Is(t,"nav"),s=Rt(bs,Bo).value,n=Is(s,"current"),i=Rt($n),o=Rt(Cn),a=Rt(Tn,{}),r=Rt(zo,void 0),l=Rt(Fo,A(1));return{$slidev:t,$nav:e,$clicksContext:s,$clicks:n,$page:i,$route:r,$renderContext:o,$frontmatter:a,$scale:l}}function B(t){var i,o;hi(Tn,t);const{$slidev:e,$page:s}=j(),n=e.nav.rawRoutes.find(a=>a.path===String(s.value));if((o=(i=n==null?void 0:n.meta)==null?void 0:i.slide)!=null&&o.frontmatter){for(const a of Object.keys(n.meta.slide.frontmatter))a in t||delete n.meta.slide.frontmatter[a];Object.assign(n.meta.slide.frontmatter,t)}}function K(t,e){return{...di(t,e===0?Wo:Ln),frontmatter:t}}function Ws(t){return t.startsWith("/")?"/sa2024/03-layered/"+t.slice(1):t}function Ko(t,e=!1){const s=t&&["#","rgb","hsl"].some(i=>t.indexOf(i)===0),n={background:s?t:void 0,color:t&&!s?"white":void 0,backgroundImage:s?void 0:t?e?`linear-gradient(#0005, #0008), url(${Ws(t)})`:`url("${Ws(t)}")`:void 0,backgroundRepeat:"no-repeat",backgroundPosition:"center",backgroundSize:"cover"};return n.background||delete n.background,n}const Go={class:"my-auto w-full"},Zo=ms({__name:"cover",props:{background:{default:""}},setup(t){j();const e=t,s=g(()=>Ko(e.background,!0));return(n,i)=>(O(),_s("div",{class:"slidev-layout cover",style:fi(s.value)},[m("div",Go,[xe(n.$slots,"default")])],4))}}),Jo=I(Zo,[["__file","/opt/homebrew/lib/node_modules/@slidev/theme-default/layouts/cover.vue"]]),ft=x({theme:"default",layout:"cover"}),Xo=x({layout:g(()=>ft.layout),transition:g(()=>ft.transition),class:g(()=>ft.class),clicks:g(()=>ft.clicks),name:g(()=>ft.name),preload:g(()=>ft.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:ft,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),Yo=m("h1",null,"Software Architecture",-1),Qo=m("h2",null,"Layered Systems",-1),tr={__name:"1",setup(t){return B(ft),j(),(e,s)=>(O(),U(Jo,q(V(S(K)(S(ft),0))),{default:L(()=>[Yo,Qo]),_:1},16))}},er=I(tr,[["__file","/@slidev/slides/1.md"]]),sr="/sa2024/03-layered/assets/03-evol-01-CuubCwRV.png",nr="/sa2024/03-layered/assets/03-evol-hardware-DhElECRJ.png",ir=ms({__name:"two-cols",props:{class:{type:String},layoutClass:{type:String}},setup(t){const e=t;return(s,n)=>(O(),_s("div",{class:Ue(["slidev-layout two-columns w-full h-full grid grid-cols-2",e.layoutClass])},[m("div",{class:Ue(["col-left",e.class])},[xe(s.$slots,"default")],2),m("div",{class:Ue(["col-right",e.class])},[xe(s.$slots,"right")],2)],2))}}),Wt=I(ir,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/two-cols.vue"]]),pt=x({layout:"two-cols"}),or=x({layout:g(()=>pt.layout),transition:g(()=>pt.transition),class:g(()=>pt.class),clicks:g(()=>pt.clicks),name:g(()=>pt.name),preload:g(()=>pt.preload),slide:{index:1,content:"",note:"",title:"软件设计发展",level:1,noteHTML:"",raw:"",frontmatter:pt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:10,id:1,no:2},__clicksContext:null,__preloaded:!1}),rr=m("h1",null,"软件设计发展",-1),ar=m("br",null,null,-1),lr=m("ul",null,[m("li",null,"初始状态:硬件"),m("li",null,"如何提高算法适应性?"),m("li",null,"分离出了程序(汇编)")],-1),cr=m("br",null,null,-1),ur=m("img",{src:sr,class:"m-0 h-20"},null,-1),hr=m("img",{src:nr,class:"m-20 h-60"},null,-1),dr={__name:"2",setup(t){return B(pt),j(),(e,s)=>(O(),U(Wt,q(V(S(K)(S(pt),1))),{right:L(n=>[hr]),default:L(()=>[rr,ar,lr,cr,ur]),_:1},16))}},fr=I(dr,[["__file","/@slidev/slides/2.md"]]),pr="/sa2024/03-layered/assets/03-evol-02-CDWl5oNo.png",gr={},mr={class:"slidev-layout default"};function _r(t,e){return O(),_s("div",mr,[xe(t.$slots,"default")])}const Dt=I(gr,[["render",_r],["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/default.vue"]]),gt=x({}),vr=x({layout:g(()=>gt.layout),transition:g(()=>gt.transition),class:g(()=>gt.class),clicks:g(()=>gt.clicks),name:g(()=>gt.name),preload:g(()=>gt.preload),slide:{index:2,content:"",note:"",title:"发展-操作系统软件",level:1,noteHTML:"",raw:"",frontmatter:gt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:33,id:2,no:3},__clicksContext:null,__preloaded:!1}),yr=m("h1",null,"发展-操作系统软件",-1),br=m("br",null,null,-1),wr=m("ul",null,[m("li",null,"初始状态:硬件 + 程序"),m("li",null,"程序的共性(稳定)成分: 计算资源管理"),m("li",null,"产生:操作系统"),m("li",null,[Me("分离出了:应用程序 "),m("br")])],-1),kr=m("img",{src:pr,class:"m-20 h-30"},null,-1),xr={__name:"3",setup(t){return B(gt),j(),(e,s)=>(O(),U(Dt,q(V(S(K)(S(gt),2))),{default:L(()=>[yr,br,wr,kr]),_:1},16))}},Mr=I(xr,[["__file","/@slidev/slides/3.md"]]),Sr="/sa2024/03-layered/assets/03-evol-03-DU0ucUBr.png",mt=x({}),$r=x({layout:g(()=>mt.layout),transition:g(()=>mt.transition),class:g(()=>mt.class),clicks:g(()=>mt.clicks),name:g(()=>mt.name),preload:g(()=>mt.preload),slide:{index:3,content:"",note:"",title:"发展-数据库软件",level:1,noteHTML:"",raw:"",frontmatter:mt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:50,id:3,no:4},__clicksContext:null,__preloaded:!1}),Pr=m("h1",null,"发展-数据库软件",-1),Cr=m("br",null,null,-1),Tr=m("ul",null,[m("li",null,"初始状态:硬件 + 操作系统 + 应用程序"),m("li",null,"程序的共性(稳定)成分:数据管理"),m("li",null,"产生了:数据库管理系统"),m("li",null,"分离出了:应用软件")],-1),Lr=m("img",{src:Sr,class:"m-10 h-40"},null,-1),Er={__name:"4",setup(t){return B(mt),j(),(e,s)=>(O(),U(Dt,q(V(S(K)(S(mt),3))),{default:L(()=>[Pr,Cr,Tr,Lr]),_:1},16))}},Ar=I(Er,[["__file","/@slidev/slides/4.md"]]),Or="/sa2024/03-layered/assets/03-evol-04-DzxBr1Rt.png",_t=x({layout:"two-cols"}),Ir=x({layout:g(()=>_t.layout),transition:g(()=>_t.transition),class:g(()=>_t.class),clicks:g(()=>_t.clicks),name:g(()=>_t.name),preload:g(()=>_t.preload),slide:{index:4,content:"",note:"",title:"发展-中间件软件",level:1,noteHTML:"",raw:"",frontmatter:_t,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:62,id:4,no:5},__clicksContext:null,__preloaded:!1}),Hr=m("h1",null,"发展-中间件软件",-1),Dr=m("br",null,null,-1),Rr=m("ul",null,[m("li",null,"初始状态:硬件 + 操作系统 + 数据库管理系统 +应用软件"),m("li",null,"程序的共性(稳定)成分:资源管理和服务"),m("li",null,"产生了:中间件(应用服务器)"),m("li",null,"分离出了:业务逻辑")],-1),Nr=m("img",{src:Or,class:"m-10 h-80"},null,-1),jr={__name:"5",setup(t){return B(_t),j(),(e,s)=>(O(),U(Wt,q(V(S(K)(S(_t),4))),{right:L(n=>[Nr]),default:L(()=>[Hr,Dr,Rr]),_:1},16))}},Fr=I(jr,[["__file","/@slidev/slides/5.md"]]),zr="/sa2024/03-layered/assets/03-evol-05-BA-YuExY.png",vt=x({}),Ur=x({layout:g(()=>vt.layout),transition:g(()=>vt.transition),class:g(()=>vt.class),clicks:g(()=>vt.clicks),name:g(()=>vt.name),preload:g(()=>vt.preload),slide:{index:5,content:"",note:"",title:"发展历程",level:1,noteHTML:"",raw:"",frontmatter:vt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:80,id:5,no:6},__clicksContext:null,__preloaded:!1}),Wr=m("h1",null,"发展历程",-1),qr=m("br",null,null,-1),Vr=m("img",{src:zr,class:"m-10 h-60"},null,-1),Br=m("p",null,"为控制软件复杂度提取软件的共性成份而沉淀下来的一层软件,屏蔽系统低层的复杂度,在高层保持复杂度的相对稳定",-1),Kr={__name:"6",setup(t){return B(vt),j(),(e,s)=>(O(),U(Dt,q(V(S(K)(S(vt),5))),{default:L(()=>[Wr,qr,Vr,Br]),_:1},16))}},Gr=I(Kr,[["__file","/@slidev/slides/6.md"]]),Zr="/sa2024/03-layered/assets/03-layers-C7eYj5g0.png",yt=x({}),Jr=x({layout:g(()=>yt.layout),transition:g(()=>yt.transition),class:g(()=>yt.class),clicks:g(()=>yt.clicks),name:g(()=>yt.name),preload:g(()=>yt.preload),slide:{index:6,content:"",note:"",title:"分层结构",level:1,noteHTML:"",raw:"",frontmatter:yt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:91,id:6,no:7},__clicksContext:null,__preloaded:!1}),Xr=m("h1",null,"分层结构",-1),Yr=m("img",{src:Zr,class:"m-20 h-60"},null,-1),Qr={__name:"7",setup(t){return B(yt),j(),(e,s)=>(O(),U(Dt,q(V(S(K)(S(yt),6))),{default:L(()=>[Xr,Yr]),_:1},16))}},ta=I(Qr,[["__file","/@slidev/slides/7.md"]]),ea="/sa2024/03-layered/assets/03-linux-C9VCsbbM.png",sa="/sa2024/03-layered/assets/03-osi-DOLuLuNm.png",bt=x({layout:"two-cols"}),na=x({layout:g(()=>bt.layout),transition:g(()=>bt.transition),class:g(()=>bt.class),clicks:g(()=>bt.clicks),name:g(()=>bt.name),preload:g(()=>bt.preload),slide:{index:7,content:"",note:"",title:"典型分层设计",level:1,noteHTML:"",raw:"",frontmatter:bt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:97,id:7,no:8},__clicksContext:null,__preloaded:!1}),ia=m("h1",null,"典型分层设计",-1),oa=m("img",{src:ea,class:"m-20 h-60"},null,-1),ra=m("p",null,[m("br"),m("br"),m("br"),m("br")],-1),aa=m("img",{src:sa,class:"h-60"},null,-1),la={__name:"8",setup(t){return B(bt),j(),(e,s)=>(O(),U(Wt,q(V(S(K)(S(bt),7))),{right:L(n=>[ra,aa]),default:L(()=>[ia,oa]),_:1},16))}},ca=I(la,[["__file","/@slidev/slides/8.md"]]),ua="/sa2024/03-layered/assets/03-apps-DUcdymS3.png",wt=x({}),ha=x({layout:g(()=>wt.layout),transition:g(()=>wt.transition),class:g(()=>wt.class),clicks:g(()=>wt.clicks),name:g(()=>wt.name),preload:g(()=>wt.preload),slide:{index:8,content:"",note:"",title:"网络协议层",level:1,noteHTML:"",raw:"",frontmatter:wt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:114,id:8,no:9},__clicksContext:null,__preloaded:!1}),da=m("h1",null,"网络协议层",-1),fa=m("br",null,null,-1),pa=m("img",{src:ua,class:"m-10 h-80"},null,-1),ga={__name:"9",setup(t){return B(wt),j(),(e,s)=>(O(),U(Dt,q(V(S(K)(S(wt),8))),{default:L(()=>[da,fa,pa]),_:1},16))}},ma=I(ga,[["__file","/@slidev/slides/9.md"]]),_a="/sa2024/03-layered/assets/03-abstraction-DGNEynSK.png",kt=x({layout:"two-cols"}),va=x({layout:g(()=>kt.layout),transition:g(()=>kt.transition),class:g(()=>kt.class),clicks:g(()=>kt.clicks),name:g(()=>kt.name),preload:g(()=>kt.preload),slide:{index:9,content:"",note:"",title:"共性提取",level:1,noteHTML:"",raw:"",frontmatter:kt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:122,id:9,no:10},__clicksContext:null,__preloaded:!1}),ya=m("h1",null,"共性提取",-1),ba=m("br",null,null,-1),wa=m("br",null,null,-1),ka=m("ul",null,[m("li",null,"可靠传输"),m("li",null,"无失败传输"),m("li",null,"无错误投递")],-1),xa=m("p",null,[m("br"),m("br"),m("br"),m("br")],-1),Ma=m("img",{src:_a,class:"h-60"},null,-1),Sa={__name:"10",setup(t){return B(kt),j(),(e,s)=>(O(),U(Wt,q(V(S(K)(S(kt),9))),{right:L(n=>[xa,Ma]),default:L(()=>[ya,ba,Me(" “公共功能”需求:对网络假设的相同 "),wa,ka]),_:1},16))}},$a=I(Sa,[["__file","/@slidev/slides/10.md"]]),Pa="/sa2024/03-layered/assets/03-internet-CuxL9Uvj.png",Ca="/sa2024/03-layered/assets/03-ip-BdNkbTbv.png",xt=x({layout:"two-cols"}),Ta=x({layout:g(()=>xt.layout),transition:g(()=>xt.transition),class:g(()=>xt.class),clicks:g(()=>xt.clicks),name:g(()=>xt.name),preload:g(()=>xt.preload),slide:{index:10,content:"",note:"",title:"互联网协议栈设计",level:1,noteHTML:"",raw:"",frontmatter:xt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:142,id:10,no:11},__clicksContext:null,__preloaded:!1}),La=m("h1",null,"互联网协议栈设计",-1),Ea=m("img",{src:Pa,class:"m-10 h-60"},null,-1),Aa=m("p",null,[m("br"),m("br")],-1),Oa=m("img",{src:Ca,class:"h-80"},null,-1),Ia={__name:"11",setup(t){return B(xt),j(),(e,s)=>(O(),U(Wt,q(V(S(K)(S(xt),10))),{right:L(n=>[Aa,Oa]),default:L(()=>[La,Ea]),_:1},16))}},Ha=I(Ia,[["__file","/@slidev/slides/11.md"]]),Da="/sa2024/03-layered/assets/03-soc-C7ry2rBq.png",Mt=x({layout:"two-cols"}),Ra=x({layout:g(()=>Mt.layout),transition:g(()=>Mt.transition),class:g(()=>Mt.class),clicks:g(()=>Mt.clicks),name:g(()=>Mt.name),preload:g(()=>Mt.preload),slide:{index:11,content:"",note:"",title:"核心思想",level:1,noteHTML:"",raw:"",frontmatter:Mt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:158,id:11,no:12},__clicksContext:null,__preloaded:!1}),Na=m("h1",null,"核心思想",-1),ja=m("ul",null,[m("li",null,[Me("实现了对复杂问题的分步求解 "),m("ul",null,[m("li",null,"自顶向下看:不断的假设过程"),m("li",null,"自底向上看:不断的抽象过程")])]),m("li",null,[Me("各层语义良好 "),m("ul",null,[m("li",null,"具有明确的使用场景"),m("li",null,"提供良好的复用条件")])])],-1),Fa=m("p",null,[m("br"),m("br"),m("img",{src:Da,class:"h-80"})],-1),za={__name:"12",setup(t){return B(Mt),j(),(e,s)=>(O(),U(Wt,q(V(S(K)(S(Mt),11))),{right:L(n=>[Fa]),default:L(()=>[Na,ja]),_:1},16))}},Ua=I(za,[["__file","/@slidev/slides/12.md"]]),Wa="/sa2024/03-layered/assets/03-desktop-CpQyJ1qL.png",St=x({}),qa=x({layout:g(()=>St.layout),transition:g(()=>St.transition),class:g(()=>St.class),clicks:g(()=>St.clicks),name:g(()=>St.name),preload:g(()=>St.preload),slide:{index:12,content:"",note:"",title:"再例如:Desktop Application",level:1,noteHTML:"",raw:"",frontmatter:St,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:177,id:12,no:13},__clicksContext:null,__preloaded:!1}),Va=m("h1",null,"再例如:Desktop Application",-1),Ba=m("img",{src:Wa,class:"h-90"},null,-1),Ka={__name:"13",setup(t){return B(St),j(),(e,s)=>(O(),U(Dt,q(V(S(K)(S(St),12))),{default:L(()=>[Va,Ba]),_:1},16))}},Ga=I(Ka,[["__file","/@slidev/slides/13.md"]]),Za="/sa2024/03-layered/assets/03-3L-BNLn19kn.png",$t=x({layout:"two-cols"}),Ja=x({layout:g(()=>$t.layout),transition:g(()=>$t.transition),class:g(()=>$t.class),clicks:g(()=>$t.clicks),name:g(()=>$t.name),preload:g(()=>$t.preload),slide:{index:13,content:"",note:"",title:"Three layered",level:1,noteHTML:"",raw:"",frontmatter:$t,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:184,id:13,no:14},__clicksContext:null,__preloaded:!1}),Xa=m("h1",null,"Three layered",-1),Ya=m("ul",null,[m("li",null,"Data Access Layer is basically the server which stores all the application’s data."),m("li",null,"Business Logic Layer is mainly working as the bridge between Data Access Layer and Presentation Layer."),m("li",null,"Presentation Layer is the layer in which the users interact with an application.")],-1),Qa=m("p",null,[m("br"),m("br")],-1),tl=m("img",{src:Za,class:"h-90"},null,-1),el={__name:"14",setup(t){return B($t),j(),(e,s)=>(O(),U(Wt,q(V(S(K)(S($t),13))),{right:L(n=>[Qa,tl]),default:L(()=>[Xa,Ya]),_:1},16))}},sl=I(el,[["__file","/@slidev/slides/14.md"]]),Pt=x({}),nl=x({layout:g(()=>Pt.layout),transition:g(()=>Pt.transition),class:g(()=>Pt.class),clicks:g(()=>Pt.clicks),name:g(()=>Pt.name),preload:g(()=>Pt.preload),slide:{index:14,content:"",note:"",title:"Some Bad Examples",level:1,noteHTML:"",raw:"",frontmatter:Pt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:202,id:14,no:15},__clicksContext:null,__preloaded:!1}),il=m("h1",null,"Some Bad Examples",-1),ol=m("br",null,null,-1),rl=m("ul",null,[m("li",null,[m("p",null,"ssoad/BankingSystem")]),m("li",null,[m("p",null,"xxx/library-management-system")])],-1),al=m("p",null,"…",-1),ll={__name:"15",setup(t){return B(Pt),j(),(e,s)=>(O(),U(Dt,q(V(S(K)(S(Pt),14))),{default:L(()=>[il,ol,rl,al]),_:1},16))}},cl=I(ll,[["__file","/@slidev/slides/15.md"]]),Ct=x({}),ul=x({layout:g(()=>Ct.layout),transition:g(()=>Ct.transition),class:g(()=>Ct.class),clicks:g(()=>Ct.clicks),name:g(()=>Ct.name),preload:g(()=>Ct.preload),slide:{index:15,content:"",note:"",title:"阅读材料",level:1,noteHTML:"",raw:"",frontmatter:Ct,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/03-layered.md",start:215,id:15,no:16},__clicksContext:null,__preloaded:!1}),hl=m("h1",null,"阅读材料",-1),dl=m("br",null,null,-1),fl=m("p",null,"《Three Layer Architecture in C# .NET》",-1),pl=m("ul",null,[m("li",null,[m("a",{href:"https://www.codeproject.com/Articles/36847/Three-Layer-Architecture-in-C-NET-2",target:"_blank",rel:"noopener"},"https://www.codeproject.com/Articles/36847/Three-Layer-Architecture-in-C-NET-2")])],-1),gl={__name:"16",setup(t){return B(Ct),j(),(e,s)=>(O(),U(Dt,q(V(S(K)(S(Ct),15))),{default:L(()=>[hl,dl,fl,pl]),_:1},16))}},ml=I(gl,[["__file","/@slidev/slides/16.md"]]),F=[{path:"1",name:"page-1",component:er,meta:Xo},{path:"2",name:"page-2",component:fr,meta:or},{path:"3",name:"page-3",component:Mr,meta:vr},{path:"4",name:"page-4",component:Ar,meta:$r},{path:"5",name:"page-5",component:Fr,meta:Ir},{path:"6",name:"page-6",component:Gr,meta:Ur},{path:"7",name:"page-7",component:ta,meta:Jr},{path:"8",name:"page-8",component:ca,meta:na},{path:"9",name:"page-9",component:ma,meta:ha},{path:"10",name:"page-10",component:$a,meta:va},{path:"11",name:"page-11",component:Ha,meta:Ta},{path:"12",name:"page-12",component:Ua,meta:Ra},{path:"13",name:"page-13",component:Ga,meta:qa},{path:"14",name:"page-14",component:sl,meta:Ja},{path:"15",name:"page-15",component:cl,meta:nl},{path:"16",name:"page-16",component:ml,meta:ul}].map(vs),_l=[].map(vs),be=[{name:"play",path:"/",component:()=>ce(()=>import("./slidev/play-B6STyeSD.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])),children:[...F,..._l]},{name:"print",path:"/print",component:()=>ce(()=>import("./slidev/print-FDYn9SRk.js"),__vite__mapDeps([11,1,4,9,6,7,12]))},{path:"",redirect:{path:"/1"}},{path:"/:pathMatch(.*)",redirect:{path:"/1"}}];{let t=function(e){if(!T.remote||T.remote===e.query.password)return!0;if(T.remote&&e.query.password===void 0){const s=prompt("Enter password");if(T.remote===s)return!0}return e.params.no?{path:`/${e.params.no}`}:{path:""}};be.push({path:"/presenter/print",component:()=>ce(()=>import("./slidev/print-D_KPX9ua.js"),__vite__mapDeps([13,1,14,15,6,7]))}),be.push({name:"presenter",path:"/presenter/:no",component:()=>ce(()=>import("./slidev/presenter-Dw2XUbpl.js"),__vite__mapDeps([16,3,1,2,4,5,6,7,8,14,15,17,18,19])),beforeEnter:t}),be.push({path:"/presenter",redirect:{path:"/presenter/1"}})}const Y=pi({history:gi("/sa2024/03-layered/"),routes:be}),An=A(!1);function vl(t,e,{mode:s="replace"}={}){return g({get(){const n=Y.currentRoute.value.query[t];return n==null?e??null:Array.isArray(n)?n.filter(Boolean):n},set(n){le(()=>{Y[S(s)]({query:{...Y.currentRoute.value.query,[t]:n}})})}})}var yl=Object.defineProperty,qs=Object.getOwnPropertySymbols,bl=Object.prototype.hasOwnProperty,wl=Object.prototype.propertyIsEnumerable,Vs=(t,e,s)=>e in t?yl(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,ss=(t,e)=>{for(var s in e||(e={}))bl.call(e,s)&&Vs(t,s,e[s]);if(qs)for(var s of qs(e))wl.call(e,s)&&Vs(t,s,e[s]);return t},kl=()=>({emit(t,...e){for(let s=0,n=this.events[t]||[],i=n.length;s{var n;this.events[t]=(n=this.events[t])==null?void 0:n.filter(i=>e!==i)}}});function Bs(t,e,s,n=i=>i){return t*n(.5-e*(.5-s))}function xl(t){return[-t[0],-t[1]]}function at(t,e){return[t[0]+e[0],t[1]+e[1]]}function et(t,e){return[t[0]-e[0],t[1]-e[1]]}function rt(t,e){return[t[0]*e,t[1]*e]}function Ml(t,e){return[t[0]/e,t[1]/e]}function ee(t){return[t[1],-t[0]]}function Ks(t,e){return t[0]*e[0]+t[1]*e[1]}function Sl(t,e){return t[0]===e[0]&&t[1]===e[1]}function $l(t){return Math.hypot(t[0],t[1])}function Pl(t){return t[0]*t[0]+t[1]*t[1]}function Gs(t,e){return Pl(et(t,e))}function On(t){return Ml(t,$l(t))}function Cl(t,e){return Math.hypot(t[1]-e[1],t[0]-e[0])}function se(t,e,s){let n=Math.sin(s),i=Math.cos(s),o=t[0]-e[0],a=t[1]-e[1],r=o*i-a*n,l=o*n+a*i;return[r+e[0],l+e[1]]}function ns(t,e,s){return at(t,rt(et(e,t),s))}function Zs(t,e,s){return at(t,rt(e,s))}var{min:Vt,PI:Tl}=Math,Js=.275,ne=Tl+1e-4;function Ll(t,e={}){let{size:s=16,smoothing:n=.5,thinning:i=.5,simulatePressure:o=!0,easing:a=k=>k,start:r={},end:l={},last:c=!1}=e,{cap:u=!0,easing:h=k=>k*(2-k)}=r,{cap:f=!0,easing:d=k=>--k*k*k+1}=l;if(t.length===0||s<=0)return[];let p=t[t.length-1].runningLength,_=r.taper===!1?0:r.taper===!0?Math.max(s,p):r.taper,v=l.taper===!1?0:l.taper===!0?Math.max(s,p):l.taper,y=Math.pow(s*n,2),w=[],M=[],N=t.slice(0,10).reduce((k,D)=>{let P=D.pressure;if(o){let C=Vt(1,D.distance/s),je=Vt(1,1-C);P=Vt(1,k+(je-k)*(C*Js))}return(k+P)/2},t[0].pressure),E=Bs(s,i,t[t.length-1].pressure,a),ht,Lt=t[0].vector,Q=t[0].point,nt=Q,lt=Q,ct=nt,W=!1;for(let k=0;ky)&&(w.push(lt),Q=lt),ct=at(P,Os),(k<=1||Gs(nt,ct)>y)&&(M.push(ct),nt=ct),N=D,Lt=C}let $=t[0].point.slice(0,2),H=t.length>1?t[t.length-1].point.slice(0,2):at(t[0].point,[1,1]),Et=[],it=[];if(t.length===1){if(!(_||v)||c){let k=Zs($,On(ee(et($,H))),-(ht||E)),D=[];for(let P=1/13,C=P;C<=1;C+=P)D.push(se(k,$,ne*2*C));return D}}else{if(!(_||v&&t.length===1))if(u)for(let D=1/13,P=D;P<=1;P+=D){let C=se(M[0],$,ne*P);Et.push(C)}else{let D=et(w[0],M[0]),P=rt(D,.5),C=rt(D,.51);Et.push(et($,P),et($,C),at($,C),at($,P))}let k=ee(xl(t[t.length-1].vector));if(v||_&&t.length===1)it.push(H);else if(f){let D=Zs(H,k,E);for(let P=1/29,C=P;C<1;C+=P)it.push(se(D,H,ne*3*C))}else it.push(at(H,rt(k,E)),at(H,rt(k,E*.99)),et(H,rt(k,E*.99)),et(H,rt(k,E)))}return w.concat(it,M.reverse(),Et)}function El(t,e={}){var s;let{streamline:n=.5,size:i=16,last:o=!1}=e;if(t.length===0)return[];let a=.15+(1-n)*.85,r=Array.isArray(t[0])?t:t.map(({x:d,y:p,pressure:_=.5})=>[d,p,_]);if(r.length===2){let d=r[1];r=r.slice(0,-1);for(let p=1;p<5;p++)r.push(ns(r[0],d,p/4))}r.length===1&&(r=[...r,[...at(r[0],[1,1]),...r[0].slice(2)]]);let l=[{point:[r[0][0],r[0][1]],pressure:r[0][2]>=0?r[0][2]:.25,vector:[1,1],distance:0,runningLength:0}],c=!1,u=0,h=l[0],f=r.length-1;for(let d=1;d=0?r[d][2]:.5,vector:On(et(h.point,p)),distance:_,runningLength:u},l.push(h)}return l[0].vector=((s=l[1])==null?void 0:s.vector)||[0,0],l}function Al(t,e={}){return Ll(El(t,e),e)}function Pe(t,e){return t-e}function Ol(t){return t<0?-1:1}function Ce(t){return[Math.abs(t),Ol(t)]}function In(){const t=()=>((1+Math.random())*65536|0).toString(16).substring(1);return`${t()+t()}-${t()}-${t()}-${t()}-${t()}${t()}${t()}`}var Il=2,dt=Il,Jt=class{constructor(t){this.drauu=t,this.event=void 0,this.point=void 0,this.start=void 0,this.el=null}onSelected(t){}onUnselected(){}onStart(t){}onMove(t){return!1}onEnd(t){}get brush(){return this.drauu.brush}get shiftPressed(){return this.drauu.shiftPressed}get altPressed(){return this.drauu.altPressed}get svgElement(){return this.drauu.el}getMousePosition(t){var e,s,n;const i=this.drauu.el,o=(e=this.drauu.options.coordinateScale)!=null?e:1,a=(s=this.drauu.options.offset)!=null?s:{x:0,y:0};if(this.drauu.options.coordinateTransform===!1){const r=this.drauu.el.getBoundingClientRect();return{x:(t.pageX-r.left+a.x)*o,y:(t.pageY-r.top+a.y)*o,pressure:t.pressure}}else{const r=this.drauu.svgPoint;r.x=t.clientX+a.x,r.y=t.clientY+a.y;const l=r.matrixTransform((n=i.getScreenCTM())==null?void 0:n.inverse());return{x:l.x*o,y:l.y*o,pressure:t.pressure}}}createElement(t,e){var s;const n=document.createElementNS("http://www.w3.org/2000/svg",t),i=e?ss(ss({},this.brush),e):this.brush;return n.setAttribute("fill",(s=i.fill)!=null?s:"transparent"),n.setAttribute("stroke",i.color),n.setAttribute("stroke-width",i.size.toString()),n.setAttribute("stroke-linecap","round"),i.dasharray&&n.setAttribute("stroke-dasharray",i.dasharray),n}attr(t,e){this.el.setAttribute(t,typeof e=="string"?e:e.toFixed(dt))}_setEvent(t){this.event=t,this.point=this.getMousePosition(t)}_eventDown(t){return this._setEvent(t),this.start=this.point,this.onStart(this.point)}_eventMove(t){return this._setEvent(t),this.onMove(this.point)}_eventUp(t){return this._setEvent(t),this.onEnd(this.point)}},Hl=class Hn extends Jt{constructor(){super(...arguments),this.points=[]}onStart(e){return this.el=document.createElementNS("http://www.w3.org/2000/svg","path"),this.points=[e],this.attr("fill",this.brush.color),this.attr("d",this.getSvgData(this.points)),this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&this.points.push(e),this.attr("d",this.getSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!!e}getSvgData(e){return Hn.getSvgData(e,this.brush)}static getSvgData(e,s){const n=Al(e,ss({size:s.size,thinning:.9,simulatePressure:!1,start:{taper:5},end:{taper:5}},s.stylusOptions));if(!n.length)return"";const i=n.reduce((o,[a,r],l,c)=>{const[u,h]=c[(l+1)%c.length];return o.push(a,r,(a+u)/2,(r+h)/2),o},["M",...n[0],"Q"]);return i.push("Z"),i.map(o=>typeof o=="number"?o.toFixed(2):o).join(" ")}},Dl=class extends Jt{onStart(t){return this.el=this.createElement("ellipse"),this.attr("cx",t.x),this.attr("cy",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=Ce(t.x-this.start.x),[n,i]=Ce(t.y-this.start.y);if(this.shiftPressed){const o=Math.min(e,n);e=o,n=o}if(this.altPressed)this.attr("cx",this.start.x),this.attr("cy",this.start.y),this.attr("rx",e),this.attr("ry",n);else{const[o,a]=[this.start.x,this.start.x+e*s].sort(Pe),[r,l]=[this.start.y,this.start.y+n*i].sort(Pe);this.attr("cx",(o+a)/2),this.attr("cy",(r+l)/2),this.attr("rx",(a-o)/2),this.attr("ry",(l-r)/2)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function Dn(t,e){const s=document.createElementNS("http://www.w3.org/2000/svg","defs"),n=document.createElementNS("http://www.w3.org/2000/svg","marker"),i=document.createElementNS("http://www.w3.org/2000/svg","path");return i.setAttribute("fill",e),n.setAttribute("id",t),n.setAttribute("viewBox","0 -5 10 10"),n.setAttribute("refX","5"),n.setAttribute("refY","0"),n.setAttribute("markerWidth","4"),n.setAttribute("markerHeight","4"),n.setAttribute("orient","auto"),i.setAttribute("d","M0,-5L10,0L0,5"),n.appendChild(i),s.appendChild(n),s}var Rl=class extends Jt{onStart(t){if(this.el=this.createElement("line",{fill:"transparent"}),this.attr("x1",t.x),this.attr("y1",t.y),this.attr("x2",t.x),this.attr("y2",t.y),this.brush.arrowEnd){const e=In(),s=document.createElementNS("http://www.w3.org/2000/svg","g");return s.append(Dn(e,this.brush.color)),s.append(this.el),this.attr("marker-end",`url(#${e})`),s}return this.el}onMove(t){if(!this.el)return!1;let{x:e,y:s}=t;if(this.shiftPressed){const n=t.x-this.start.x,i=t.y-this.start.y;if(i!==0){let o=n/i;o=Math.round(o),Math.abs(o)<=1?(e=this.start.x+i*o,s=this.start.y+i):(e=this.start.x+n,s=this.start.y)}}return this.altPressed?(this.attr("x1",this.start.x*2-e),this.attr("y1",this.start.y*2-s),this.attr("x2",e),this.attr("y2",s)):(this.attr("x1",this.start.x),this.attr("y1",this.start.y),this.attr("x2",e),this.attr("y2",s)),!0}onEnd(){const t=this.el;return this.el=null,!(!t||t.getTotalLength()<5)}},Nl=class extends Jt{onStart(t){return this.el=this.createElement("rect"),this.brush.cornerRadius&&(this.attr("rx",this.brush.cornerRadius),this.attr("ry",this.brush.cornerRadius)),this.attr("x",t.x),this.attr("y",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=Ce(t.x-this.start.x),[n,i]=Ce(t.y-this.start.y);if(this.shiftPressed){const o=Math.min(e,n);e=o,n=o}if(this.altPressed)this.attr("x",this.start.x-e),this.attr("y",this.start.y-n),this.attr("width",e*2),this.attr("height",n*2);else{const[o,a]=[this.start.x,this.start.x+e*s].sort(Pe),[r,l]=[this.start.y,this.start.y+n*i].sort(Pe);this.attr("x",o),this.attr("y",r),this.attr("width",a-o),this.attr("height",l-r)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function jl(t,e){const s=t.x-e.x,n=t.y-e.y;return s*s+n*n}function Fl(t,e,s){let n=e.x,i=e.y,o=s.x-n,a=s.y-i;if(o!==0||a!==0){const r=((t.x-n)*o+(t.y-i)*a)/(o*o+a*a);r>1?(n=s.x,i=s.y):r>0&&(n+=o*r,i+=a*r)}return o=t.x-n,a=t.y-i,o*o+a*a}function zl(t,e){let s=t[0];const n=[s];let i;for(let o=1,a=t.length;oe&&(n.push(i),s=i);return s!==i&&i&&n.push(i),n}function is(t,e,s,n,i){let o=n,a=0;for(let r=e+1;ro&&(a=r,o=l)}o>n&&(a-e>1&&is(t,e,a,n,i),i.push(t[a]),s-a>1&&is(t,a,s,n,i))}function Ul(t,e){const s=t.length-1,n=[t[0]];return is(t,0,s,e,n),n.push(t[s]),n}function Xs(t,e,s=!1){if(t.length<=2)return t;const n=e!==void 0?e*e:1;return t=s?t:zl(t,n),t=Ul(t,n),t}var Wl=class Nt extends Jt{constructor(){super(...arguments),this.points=[],this.count=0}onStart(e){if(this.el=this.createElement("path",{fill:"transparent"}),this.points=[e],this.brush.arrowEnd){this.arrowId=In();const s=Dn(this.arrowId,this.brush.color);this.el.appendChild(s)}return this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&(this.points.push(e),this.count+=1),this.count>5&&(this.points=Xs(this.points,1,!0),this.count=0),this.attr("d",Nt.toSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!(!e||(e.setAttribute("d",Nt.toSvgData(Xs(this.points,1,!0))),!e.getTotalLength()))}static line(e,s){const n=s.x-e.x,i=s.y-e.y;return{length:Math.sqrt(n**2+i**2),angle:Math.atan2(i,n)}}static controlPoint(e,s,n,i){const o=s||e,a=n||e,r=.2,l=Nt.line(o,a),c=l.angle+(i?Math.PI:0),u=l.length*r,h=e.x+Math.cos(c)*u,f=e.y+Math.sin(c)*u;return{x:h,y:f}}static bezierCommand(e,s,n){const i=Nt.controlPoint(n[s-1],n[s-2],e),o=Nt.controlPoint(e,n[s-1],n[s+1],!0);return`C ${i.x.toFixed(dt)},${i.y.toFixed(dt)} ${o.x.toFixed(dt)},${o.y.toFixed(dt)} ${e.x.toFixed(dt)},${e.y.toFixed(dt)}`}static toSvgData(e){return e.reduce((s,n,i,o)=>i===0?`M ${n.x.toFixed(dt)},${n.y.toFixed(dt)}`:`${s} ${Nt.bezierCommand(n,i,o)}`,"")}},ql=class extends Jt{constructor(){super(...arguments),this.pathSubFactor=20,this.pathFragments=[],this._erased=[]}onSelected(t){const e=(s,n)=>{if(s&&s.length)for(let i=0;it.forEach(e=>this.drauu._restoreNode(e)),redo:()=>t.forEach(e=>this.drauu._removeNode(e))}}checkAndEraseElement(){if(this.pathFragments.length)for(let t=0;t!this._erased.includes(t.element))),this._erased.length>0}lineLineIntersect(t,e){const s=t.x1,n=t.x2,i=e.x1,o=e.x2,a=t.y1,r=t.y2,l=e.y1,c=e.y2,u=(s-n)*(l-c)-(a-r)*(i-o),h=(s*r-a*n)*(i-o)-(s-n)*(i*c-l*o),f=(s*r-a*n)*(l-c)-(a-r)*(i*c-l*o),d=(p,_,v)=>p>=_&&p<=v?!0:p>=v&&p<=_;if(u===0)return!1;{const p={x:h/u,y:f/u};return d(p.x,s,n)&&d(p.y,a,r)&&d(p.x,i,o)&&d(p.y,l,c)}}};function Vl(t){return{draw:new Wl(t),stylus:new Hl(t),line:new Rl(t),rectangle:new Nl(t),ellipse:new Dl(t),eraseLine:new ql(t)}}var Bl=class{constructor(t={}){this.options=t,this.el=null,this.svgPoint=null,this.eventEl=null,this.shiftPressed=!1,this.altPressed=!1,this.drawing=!1,this._emitter=kl(),this._originalPointerId=null,this._models=Vl(this),this._opStack=[],this._opIndex=0,this._disposables=[],this._elements=[],this.options.brush||(this.options.brush={color:"black",size:3,mode:"stylus"}),t.el&&this.mount(t.el,t.eventTarget,t.window)}get model(){return this._models[this.mode]}get mounted(){return!!this.el}get mode(){return this.options.brush.mode||"stylus"}set mode(t){this._models[this.mode].onUnselected(),this.options.brush.mode=t,this.model.onSelected(this.el)}get brush(){return this.options.brush}set brush(t){this.options.brush=t}resolveSelector(t){return typeof t=="string"?document.querySelector(t):t||null}mount(t,e,s=window){if(this.el)throw new Error("[drauu] already mounted, unmount previous target first");if(this.el=this.resolveSelector(t),!this.el)throw new Error("[drauu] target element not found");if(this.el.tagName.toLocaleLowerCase()!=="svg")throw new Error("[drauu] can only mount to a SVG element");if(!this.el.createSVGPoint)throw new Error("[drauu] SVG element must be create by document.createElementNS('http://www.w3.org/2000/svg', 'svg')");this.svgPoint=this.el.createSVGPoint();const n=this.resolveSelector(e)||this.el,i=this.eventStart.bind(this),o=this.eventMove.bind(this),a=this.eventEnd.bind(this),r=this.eventKeyboard.bind(this);n.addEventListener("pointerdown",i,{passive:!1}),s.addEventListener("pointermove",o,{passive:!1}),s.addEventListener("pointerup",a,{passive:!1}),s.addEventListener("pointercancel",a,{passive:!1}),s.addEventListener("keydown",r,!1),s.addEventListener("keyup",r,!1),this._disposables.push(()=>{n.removeEventListener("pointerdown",i),s.removeEventListener("pointermove",o),s.removeEventListener("pointerup",a),s.removeEventListener("pointercancel",a),s.removeEventListener("keydown",r,!1),s.removeEventListener("keyup",r,!1)}),this._emitter.emit("mounted")}unmount(){this._disposables.forEach(t=>t()),this._disposables.length=0,this._elements.length=0,this.el=null,this._emitter.emit("unmounted")}on(t,e){return this._emitter.on(t,e)}undo(){return!this.canUndo()||this.drawing?!1:(this._opStack[--this._opIndex].undo(),this._emitter.emit("changed"),!0)}redo(){return!this.canRedo()||this.drawing?!1:(this._opStack[this._opIndex++].redo(),this._emitter.emit("changed"),!0)}canRedo(){return this._opIndex0}eventMove(t){!this.acceptsInput(t)||!this.drawing||this.model._eventMove(t)&&(t.stopPropagation(),t.preventDefault(),this._emitter.emit("changed"))}eventStart(t){this.acceptsInput(t)&&(t.stopPropagation(),t.preventDefault(),this._currentNode&&this.cancel(),this.drawing=!0,this._originalPointerId=t.pointerId,this._emitter.emit("start"),this._currentNode=this.model._eventDown(t),this._currentNode&&this.mode!=="eraseLine"&&this.el.appendChild(this._currentNode),this._emitter.emit("changed"))}eventEnd(t){if(!this.acceptsInput(t)||!this.drawing)return;const e=this.model._eventUp(t);if(!e)this.cancel();else if(e===!0){const s=this._currentNode;this._appendNode(s),this.commit({undo:()=>this._removeNode(s),redo:()=>this._restoreNode(s)})}else this.commit(e);this.drawing=!1,this._emitter.emit("end"),this._emitter.emit("changed"),this._originalPointerId=null}acceptsInput(t){return(!this.options.acceptsInputTypes||this.options.acceptsInputTypes.includes(t.pointerType))&&!(this._originalPointerId&&this._originalPointerId!==t.pointerId)}eventKeyboard(t){this.shiftPressed===t.shiftKey&&this.altPressed===t.altKey||(this.shiftPressed=t.shiftKey,this.altPressed=t.altKey,this.model.point&&this.model.onMove(this.model.point)&&this._emitter.emit("changed"))}commit(t){this._opStack.length=this._opIndex,this._opStack.push(t),this._opIndex++;const e=this._currentNode;this._currentNode=void 0,this._emitter.emit("committed",e)}clear(){this._opStack.length=0,this._opIndex=0,this.cancel(),this.el.innerHTML="",this._emitter.emit("changed")}cancel(){this._currentNode&&(this.el.removeChild(this._currentNode),this._currentNode=void 0,this._emitter.emit("canceled"))}dump(){return this.el.innerHTML}load(t){this.clear(),this.el.innerHTML=t}_appendNode(t){const e=this._elements.at(-1);e?e.after(t):this.el.append(t);const s=this._elements.push(t)-1;t.dataset.drauu_index=s.toString()}_removeNode(t){t.remove(),this._elements[+t.dataset.drauu_index]=null}_restoreNode(t){const e=+t.dataset.drauu_index;this._elements[e]=t;for(let s=e-1;s>=0;s--){const n=this._elements[s];if(n){n.after(t);return}}this.el.prepend(t)}};function Kl(t){return new Bl(t)}const gu=A(!1),mu=A(!1),_u=A(!1),Gl=A(!1),vu=A(!0),yu=mi({xs:460,...wi}),Ys=_i(),bu=vi(),wu=g(()=>Ys.height.value-Ys.width.value/wn>120),ku=yi(He?document.body:null),os=bi(),Zl=g(()=>{var t,e;return["INPUT","TEXTAREA"].includes(((t=os.value)==null?void 0:t.tagName)||"")||((e=os.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),xu=g(()=>{var t;return["BUTTON","A"].includes(((t=os.value)==null?void 0:t.tagName)||"")});J("slidev-camera","default",{listenToStorageChanges:!1});J("slidev-mic","default",{listenToStorageChanges:!1});const Mu=J("slidev-scale",0),Su=J("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),$u=J("slidev-show-editor",!1,{listenToStorageChanges:!1}),Pu=J("slidev-editor-vertical",!1,{listenToStorageChanges:!1});J("slidev-editor-width",He?window.innerWidth*.4:318,{listenToStorageChanges:!1});J("slidev-editor-height",He?window.innerHeight*.4:300,{listenToStorageChanges:!1});const Te=J("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),pe=J("slidev-presenter-layout",1,{listenToStorageChanges:!1});function Cu(){pe.value=pe.value+1,pe.value>2&&(pe.value=1)}function Tu(){Te.value=Math.min(2,Te.value+.1)}function Lu(){Te.value=Math.max(.5,Te.value-.1)}const Eu=fn(Gl),rs=["#ff595e","#ffca3a","#8ac926","#1982c4","#6a4c93","#ffffff","#000000"],as=J("slidev-drawing-enabled",!1),Au=J("slidev-drawing-pinned",!1),Jl=A(!1),Xl=A(!1),Yl=A(!1),Le=A(!1),Ee=ki(J("slidev-drawing-brush",{color:rs[0],size:4,mode:"stylus"})),Qs=A("stylus"),Rn=g(()=>T.drawings.syncAll||Ft.value);let ue=!1;const ie=g({get(){return Qs.value},set(t){Qs.value=t,t==="arrow"?(z.mode="line",Ee.arrowEnd=!0):(z.mode=t,Ee.arrowEnd=!1)}}),Ql=x({brush:Ee,acceptsInputTypes:g(()=>as.value&&(!T.drawings.presenterOnly||Ft.value)?void 0:["pen"]),coordinateTransform:!1}),z=vs(Kl(Ql));function tc(){z.clear(),Rn.value&&Mn(R.value,"")}function ws(){var t;Xl.value=z.canRedo(),Jl.value=z.canUndo(),Yl.value=!!((t=z.el)!=null&&t.children.length)}function ec(t){ue=!0;const e=Sn[t||R.value];e!=null?z.load(e):z.clear(),ws(),ue=!1}z.on("changed",()=>{if(ws(),!ue){const t=z.dump(),e=R.value;(Sn[e]||"")!==t&&Rn.value&&Mn(e,z.dump())}});Ho(t=>{ue=!0,t[R.value]!=null&&z.load(t[R.value]||""),ue=!1,ws()});le(()=>{Zt(R,()=>{z.mounted&&ec()},{immediate:!0})});z.on("start",()=>Le.value=!0);z.on("end",()=>Le.value=!1);window.addEventListener("keydown",t=>{if(!as.value||Zl.value)return;const e=!t.ctrlKey&&!t.altKey&&!t.shiftKey&&!t.metaKey;let s=!0;t.code==="KeyZ"&&(t.ctrlKey||t.metaKey)?t.shiftKey?z.redo():z.undo():t.code==="Escape"?as.value=!1:t.code==="KeyL"&&e?ie.value="line":t.code==="KeyA"&&e?ie.value="arrow":t.code==="KeyS"&&e?ie.value="stylus":t.code==="KeyR"&&e?ie.value="rectangle":t.code==="KeyE"&&e?ie.value="ellipse":t.code==="KeyC"&&e?tc():t.code.startsWith("Digit")&&e&&+t.code[5]<=rs.length?Ee.color=rs[+t.code[5]-1]:s=!1,s&&(t.preventDefault(),t.stopPropagation())},!1);const ls=A(0);le(()=>{Y.afterEach(async()=>{await le(),ls.value+=1})});const Nn=A(0),De=A(0),ut=g(()=>Y.currentRoute.value),sc=g(()=>ut.value.query.print!==void 0),nc=g(()=>ut.value.query.print==="clicks"),Ou=g(()=>ut.value.query.embedded!==void 0),Ft=g(()=>ut.value.path.startsWith("/presenter")),ic=g(()=>ut.value.path.startsWith("/notes")),oc=g(()=>ut.value.query.password),Iu=g(()=>!Ft.value&&(!T.remote||oc.value===T.remote)),tn=vl("clicks","0"),Gt=g({get(){if(It.value.disabled)return es;let t=+(tn.value||0);return Number.isNaN(t)&&(t=0),t},set(t){tn.value=t.toString()}}),Hu=g(()=>F.length),rc=g(()=>ut.value.path),R=g(()=>Number.parseInt(rc.value.split(/\//g).slice(-1)[0])||1);g(()=>Re(R.value));const Tt=g(()=>F.find(t=>t.path===`${R.value}`)),Du=g(()=>{var t,e,s;return(s=(e=(t=Tt.value)==null?void 0:t.meta)==null?void 0:e.slide)==null?void 0:s.id});g(()=>{var t,e;return((e=(t=Tt.value)==null?void 0:t.meta)==null?void 0:e.layout)||(R.value===1?"cover":"default")});const Ru=g(()=>F.find(t=>t.path===`${Math.min(F.length,R.value+1)}`)),ac=g(()=>F.find(t=>t.path===`${Math.max(1,R.value-1)}`)),It=g(()=>qo(Tt.value)),ks=g(()=>It.value.current),he=g(()=>It.value.total),Nu=g(()=>R.valueR.value>1||ks.value>0),lc=g(()=>F.filter(t=>{var e,s;return(s=(e=t.meta)==null?void 0:e.slide)==null?void 0:s.title}).reduce((t,e)=>($s(t,e),t),[])),cc=g(()=>Ps(lc.value,Tt.value));g(()=>Cs(cc.value));const Fu=g(()=>pc(Nn.value,Tt.value,ac.value));Zt(Tt,(t,e)=>{Nn.value=Number(t==null?void 0:t.path)-Number(e==null?void 0:e.path)});async function jn(){De.value=1,he.value<=Gt.value?await xs():Gt.value+=1}async function Fn(){De.value=-1,Gt.value<=0?await Ms():Gt.value-=1}function Re(t){return Ft.value?`/presenter/${t}`:`/${t}`}async function xs(){De.value=1,R.value.3||o>75?s.value==="left"?jn():Fn():(a/window.innerHeight>.4||a>200)&&(s.value==="down"?Ms():xs())}})}async function uc(){const{saveAs:t}=await ce(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),__vite__mapDeps([]));t(typeof T.download=="string"?T.download:T.exportFilename?`${T.exportFilename}.pdf`:"/sa2024/03-layered/slidev-exported.pdf",`${T.title}.pdf`)}async function hc(t){var e,s;if(t==null){const n=(s=(e=Tt.value)==null?void 0:e.meta)==null?void 0:s.slide;if(!n)return!1;t=`${n.filepath}:${n.start}`}return await fetch(`/__open-in-editor?file=${encodeURIComponent(t)}`),!0}function $s(t,e,s=1){var i,o,a,r,l,c,u;const n=(o=(i=e.meta)==null?void 0:i.slide)==null?void 0:o.level;n&&n>s&&t.length>0?$s(t[t.length-1].children,e,s+1):t.push({children:[],level:s,path:e.path,hideInToc:!!((l=(r=(a=e.meta)==null?void 0:a.slide)==null?void 0:r.frontmatter)!=null&&l.hideInToc),title:(u=(c=e.meta)==null?void 0:c.slide)==null?void 0:u.title})}function Ps(t,e,s=!1,n){return t.map(i=>{const o={...i,active:i.path===(e==null?void 0:e.path),hasActiveParent:s};return o.children.length>0&&(o.children=Ps(o.children,e,o.active||o.hasActiveParent,o)),n&&(o.active||o.activeParent)&&(n.activeParent=!0),o})}function Cs(t,e=1){return t.filter(s=>!s.hideInToc).map(s=>({...s,children:Cs(s.children,e+1)}))}const dc={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function fc(t,e=!1){if(!t||(typeof t=="string"&&(t={name:t}),!t.name))return;let s=t.name.includes("|")?t.name:dc[t.name]||t.name;if(s.includes("|")){const[n,i]=s.split("|").map(o=>o.trim());s=e?i:n}if(s)return{...t,name:s}}function pc(t,e,s){var i,o;let n=t>0?(i=s==null?void 0:s.meta)==null?void 0:i.transition:(o=e==null?void 0:e.meta)==null?void 0:o.transition;return n||(n=T.transition),fc(n,t<0)}function gc(){const t=T.titleTemplate.replace("%s",T.title||"Slidev");yo({title:t,htmlAttrs:T.htmlAttrs}),Lo(`${t} - shared`),Io(`${t} - drawings`);const e=`${location.origin}_${No()}`;function s(){ic.value||!Ft.value&&!Uo.includes(location.host.split(":")[0])||(Ft.value?(Yt("page",+R.value),Yt("clicks",It.value.current)):(Yt("viewerPage",+R.value),Yt("viewerClicks",It.value.current)),Yt("lastUpdate",{id:e,type:Ft.value?"presenter":"viewer",time:new Date().getTime()}))}Y.afterEach(s),Zt(It,s),Eo(n=>{var o;Y.currentRoute.value.path.match(/^\/(\d+|presenter)\/?/)&&((o=n.lastUpdate)==null?void 0:o.type)==="presenter"&&(+n.page!=+R.value||+It.value.current!=+n.clicks)&&(An.value=!1,Y.replace({path:Re(n.page),query:{...Y.currentRoute.value.query,clicks:n.clicks||0}}))})}const mc=ms({__name:"App",setup(t){return gc(),Kt(()=>{for(const[e,s]of Object.entries(Po.value))document.body.style.setProperty(e,s.toString())}),(e,s)=>{const n=Si("RouterView");return O(),U(n)}}}),_c=I(mc,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function vc(t){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e),t.app.use($i),t.app.use(Ti)}function zn(t,e,s){var n;return((n=t.instance)==null?void 0:n.$).provides[e]??s}function yc(){return{install(t){t.directive("click",{name:"v-click",mounted(e,s){const n=we(e,s,s.value);if(n==null)return;e.classList.toggle(ye,!0);const i=Array.isArray(n.clicks)?n.clicks:[n.clicks,void 0];e.dataset.slidevClicksStart=String(i[0]),i[1]!=null&&(e.dataset.slidevClicksEnd=String(i[1])),Kt(()=>{const o=n.isActive.value,a=n.isCurrent.value,r=o&&!a;n.flagHide?(e.classList.toggle(n.flagFade?te:Qt,o),e.classList.toggle(qe,o)):e.classList.toggle(n.flagFade?te:Qt,!o),e.classList.toggle(Ve,a),e.classList.toggle(Be,r)})},unmounted:Ge}),t.directive("after",{name:"v-after",mounted(e,s){const n=we(e,s,s.value,!0);n!=null&&(e.classList.toggle(ye,!0),Kt(()=>{const i=n.isActive.value,o=n.isCurrent.value,a=i&&!o;n.flagHide?(e.classList.toggle(n.flagFade?te:Qt,i),e.classList.toggle(qe,i)):e.classList.toggle(n.flagFade?te:Qt,!i),e.classList.toggle(Ve,o),e.classList.toggle(Be,a)}))},unmounted:Ge}),t.directive("click-hide",{name:"v-click-hide",mounted(e,s){const n=we(e,s,s.value,!1,!0);n!=null&&(e.classList.toggle(ye,!0),Kt(()=>{const i=n.isActive.value,o=n.isCurrent.value,a=i&&!o;e.classList.toggle(n.flagFade?te:Qt,i),e.classList.toggle(qe,i),e.classList.toggle(Ve,o),e.classList.toggle(Be,a)}))},unmounted:Ge})}}}function Ke(t,e){return Array.isArray(t)?t[0]<=e&&eKe(l,o.current)),isCurrent:g(()=>bc(l,o.current)),isShown:g(()=>i?!Ke(l,o.current):Ke(l,o.current)),flagFade:a,flagHide:i};return o.register(t,u),u}function Ge(t,e){var n;t.classList.toggle(ye,!1);const s=(n=zn(e,bs))==null?void 0:n.value;s==null||s.unregister(t)}function Un(){return Math.floor(Math.random()*2**31)}class wc{constructor(e){this.seed=e}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}}function cs(t,e,s){if(t&&t.length){const[n,i]=e,o=Math.PI/180*s,a=Math.cos(o),r=Math.sin(o);for(const l of t){const[c,u]=l;l[0]=(c-n)*a-(u-i)*r+n,l[1]=(c-n)*r+(u-i)*a+i}}}function kc(t,e,s){const n=[];t.forEach(i=>n.push(...i)),cs(n,e,s)}function xc(t,e){return t[0]===e[0]&&t[1]===e[1]}function Mc(t,e,s,n=1){const i=s,o=Math.max(e,.1),a=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,r=[0,0];if(i)for(const c of a)cs(c,r,i);const l=Sc(a,o,n);if(i){for(const c of a)cs(c,r,-i);kc(l,r,-i)}return l}function Sc(t,e,s){const n=[];for(const c of t){const u=[...c];xc(u[0],u[u.length-1])||u.push([u[0][0],u[0][1]]),u.length>2&&n.push(u)}const i=[];e=Math.max(e,.1);const o=[];for(const c of n)for(let u=0;uc.yminu.ymin?1:c.xu.x?1:c.ymax===u.ymax?0:(c.ymax-u.ymax)/Math.abs(c.ymax-u.ymax)),!o.length)return i;let a=[],r=o[0].ymin,l=0;for(;a.length||o.length;){if(o.length){let c=-1;for(let h=0;hr);h++)c=h;o.splice(0,c+1).forEach(h=>{a.push({s:r,edge:h})})}if(a=a.filter(c=>!(c.edge.ymax<=r)),a.sort((c,u)=>c.edge.x===u.edge.x?0:(c.edge.x-u.edge.x)/Math.abs(c.edge.x-u.edge.x)),(s!==1||l%e===0)&&a.length>1)for(let c=0;c=a.length)break;const h=a[c].edge,f=a[u].edge;i.push([[Math.round(h.x),r],[Math.round(f.x),r]])}r+=s,a.forEach(c=>{c.edge.x=c.edge.x+s*c.edge.islope}),l++}return i}function de(t,e){var s;const n=e.hachureAngle+90;let i=e.hachureGap;i<0&&(i=e.strokeWidth*4),i=Math.round(Math.max(i,.1));let o=1;return e.roughness>=1&&(((s=e.randomizer)===null||s===void 0?void 0:s.next())||Math.random())>.7&&(o=i),Mc(t,i,n,o||1)}class Ts{constructor(e){this.helper=e}fillPolygons(e,s){return this._fillPolygons(e,s)}_fillPolygons(e,s){const n=de(e,s);return{type:"fillSketch",ops:this.renderLines(n,s)}}renderLines(e,s){const n=[];for(const i of e)n.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],s));return n}}function Ne(t){const e=t[0],s=t[1];return Math.sqrt(Math.pow(e[0]-s[0],2)+Math.pow(e[1]-s[1],2))}class $c extends Ts{fillPolygons(e,s){let n=s.hachureGap;n<0&&(n=s.strokeWidth*4),n=Math.max(n,.1);const i=Object.assign({},s,{hachureGap:n}),o=de(e,i),a=Math.PI/180*s.hachureAngle,r=[],l=n*.5*Math.cos(a),c=n*.5*Math.sin(a);for(const[h,f]of o)Ne([h,f])&&r.push([[h[0]-l,h[1]+c],[...f]],[[h[0]+l,h[1]-c],[...f]]);return{type:"fillSketch",ops:this.renderLines(r,s)}}}class Pc extends Ts{fillPolygons(e,s){const n=this._fillPolygons(e,s),i=Object.assign({},s,{hachureAngle:s.hachureAngle+90}),o=this._fillPolygons(e,i);return n.ops=n.ops.concat(o.ops),n}}class Cc{constructor(e){this.helper=e}fillPolygons(e,s){s=Object.assign({},s,{hachureAngle:0});const n=de(e,s);return this.dotsOnLines(n,s)}dotsOnLines(e,s){const n=[];let i=s.hachureGap;i<0&&(i=s.strokeWidth*4),i=Math.max(i,.1);let o=s.fillWeight;o<0&&(o=s.strokeWidth/2);const a=i/4;for(const r of e){const l=Ne(r),c=l/i,u=Math.ceil(c)-1,h=l-u*i,f=(r[0][0]+r[1][0])/2-i/4,d=Math.min(r[0][1],r[1][1]);for(let p=0;p{const r=Ne(a),l=Math.floor(r/(n+i)),c=(r+i-l*(n+i))/2;let u=a[0],h=a[1];u[0]>h[0]&&(u=a[1],h=a[0]);const f=Math.atan((h[1]-u[1])/(h[0]-u[0]));for(let d=0;d{const a=Ne(o),r=Math.round(a/(2*s));let l=o[0],c=o[1];l[0]>c[0]&&(l=o[1],c=o[0]);const u=Math.atan((c[1]-l[1])/(c[0]-l[0]));for(let h=0;hu%2?c+s:c+e);o.push({key:"C",data:l}),e=l[4],s=l[5];break}case"Q":o.push({key:"Q",data:[...r]}),e=r[2],s=r[3];break;case"q":{const l=r.map((c,u)=>u%2?c+s:c+e);o.push({key:"Q",data:l}),e=l[2],s=l[3];break}case"A":o.push({key:"A",data:[...r]}),e=r[5],s=r[6];break;case"a":e+=r[5],s+=r[6],o.push({key:"A",data:[r[0],r[1],r[2],r[3],r[4],e,s]});break;case"H":o.push({key:"H",data:[...r]}),e=r[0];break;case"h":e+=r[0],o.push({key:"H",data:[e]});break;case"V":o.push({key:"V",data:[...r]}),s=r[0];break;case"v":s+=r[0],o.push({key:"V",data:[s]});break;case"S":o.push({key:"S",data:[...r]}),e=r[2],s=r[3];break;case"s":{const l=r.map((c,u)=>u%2?c+s:c+e);o.push({key:"S",data:l}),e=l[2],s=l[3];break}case"T":o.push({key:"T",data:[...r]}),e=r[0],s=r[1];break;case"t":e+=r[0],s+=r[1],o.push({key:"T",data:[e,s]});break;case"Z":case"z":o.push({key:"Z",data:[]}),e=n,s=i;break}return o}function Vn(t){const e=[];let s="",n=0,i=0,o=0,a=0,r=0,l=0;for(const{key:c,data:u}of t){switch(c){case"M":e.push({key:"M",data:[...u]}),[n,i]=u,[o,a]=u;break;case"C":e.push({key:"C",data:[...u]}),n=u[4],i=u[5],r=u[2],l=u[3];break;case"L":e.push({key:"L",data:[...u]}),[n,i]=u;break;case"H":n=u[0],e.push({key:"L",data:[n,i]});break;case"V":i=u[0],e.push({key:"L",data:[n,i]});break;case"S":{let h=0,f=0;s==="C"||s==="S"?(h=n+(n-r),f=i+(i-l)):(h=n,f=i),e.push({key:"C",data:[h,f,...u]}),r=u[0],l=u[1],n=u[2],i=u[3];break}case"T":{const[h,f]=u;let d=0,p=0;s==="Q"||s==="T"?(d=n+(n-r),p=i+(i-l)):(d=n,p=i);const _=n+2*(d-n)/3,v=i+2*(p-i)/3,y=h+2*(d-h)/3,w=f+2*(p-f)/3;e.push({key:"C",data:[_,v,y,w,h,f]}),r=d,l=p,n=h,i=f;break}case"Q":{const[h,f,d,p]=u,_=n+2*(h-n)/3,v=i+2*(f-i)/3,y=d+2*(h-d)/3,w=p+2*(f-p)/3;e.push({key:"C",data:[_,v,y,w,d,p]}),r=h,l=f,n=d,i=p;break}case"A":{const h=Math.abs(u[0]),f=Math.abs(u[1]),d=u[2],p=u[3],_=u[4],v=u[5],y=u[6];h===0||f===0?(e.push({key:"C",data:[n,i,v,y,v,y]}),n=v,i=y):(n!==v||i!==y)&&(Bn(n,i,v,y,h,f,d,p,_).forEach(function(M){e.push({key:"C",data:M})}),n=v,i=y);break}case"Z":e.push({key:"Z",data:[]}),n=o,i=a;break}s=c}return e}function Ic(t){return Math.PI*t/180}function oe(t,e,s){const n=t*Math.cos(s)-e*Math.sin(s),i=t*Math.sin(s)+e*Math.cos(s);return[n,i]}function Bn(t,e,s,n,i,o,a,r,l,c){const u=Ic(a);let h=[],f=0,d=0,p=0,_=0;if(c)[f,d,p,_]=c;else{[t,e]=oe(t,e,-u),[s,n]=oe(s,n,-u);const W=(t-s)/2,$=(e-n)/2;let H=W*W/(i*i)+$*$/(o*o);H>1&&(H=Math.sqrt(H),i=H*i,o=H*o);const Et=r===l?-1:1,it=i*i,k=o*o,D=it*k-it*$*$-k*W*W,P=it*$*$+k*W*W,C=Et*Math.sqrt(Math.abs(D/P));p=C*i*$/o+(t+s)/2,_=C*-o*W/i+(e+n)/2,f=Math.asin(parseFloat(((e-_)/o).toFixed(9))),d=Math.asin(parseFloat(((n-_)/o).toFixed(9))),td&&(f=f-Math.PI*2),!l&&d>f&&(d=d-Math.PI*2)}let v=d-f;if(Math.abs(v)>Math.PI*120/180){const W=d,$=s,H=n;l&&d>f?d=f+Math.PI*120/180*1:d=f+Math.PI*120/180*-1,s=p+i*Math.cos(d),n=_+o*Math.sin(d),h=Bn(s,n,$,H,i,o,a,0,l,[d,W,p,_])}v=d-f;const y=Math.cos(f),w=Math.sin(f),M=Math.cos(d),N=Math.sin(d),E=Math.tan(v/4),ht=4/3*i*E,Lt=4/3*o*E,Q=[t,e],nt=[t+ht*w,e-Lt*y],lt=[s+ht*N,n-Lt*M],ct=[s,n];if(nt[0]=2*Q[0]-nt[0],nt[1]=2*Q[1]-nt[1],c)return[nt,lt,ct].concat(h);{h=[nt,lt,ct].concat(h);const W=[];for(let $=0;$2){const i=[];for(let o=0;oMath.PI*2&&(d=0,p=Math.PI*2);const _=Math.PI*2/l.curveStepCount,v=Math.min(_/2,(p-d)/2),y=an(v,c,u,h,f,d,p,1,l);if(!l.disableMultiStroke){const w=an(v,c,u,h,f,d,p,1.5,l);y.push(...w)}return a&&(r?y.push(...Ht(c,u,c+h*Math.cos(d),u+f*Math.sin(d),l),...Ht(c,u,c+h*Math.cos(p),u+f*Math.sin(p),l)):y.push({op:"lineTo",data:[c,u]},{op:"lineTo",data:[c+h*Math.cos(d),u+f*Math.sin(d)]})),{type:"path",ops:y}}function nn(t,e){const s=Vn(qn(Ls(t))),n=[];let i=[0,0],o=[0,0];for(const{key:a,data:r}of s)switch(a){case"M":{o=[r[0],r[1]],i=[r[0],r[1]];break}case"L":n.push(...Ht(o[0],o[1],r[0],r[1],e)),o=[r[0],r[1]];break;case"C":{const[l,c,u,h,f,d]=r;n.push(...zc(l,c,u,h,f,d,o,e)),o=[f,d];break}case"Z":n.push(...Ht(o[0],o[1],i[0],i[1],e)),o=[i[0],i[1]];break}return{type:"path",ops:n}}function Je(t,e){const s=[];for(const n of t)if(n.length){const i=e.maxRandomnessOffset||0,o=n.length;if(o>2){s.push({op:"move",data:[n[0][0]+b(i,e),n[0][1]+b(i,e)]});for(let a=1;aMath.PI*2&&(h=0,f=Math.PI*2);const d=(f-h)/a.curveStepCount,p=[];for(let _=h;_<=f;_=_+d)p.push([r+c*Math.cos(_),l+u*Math.sin(_)]);return p.push([r+c*Math.cos(f),l+u*Math.sin(f)]),p.push([r,l]),Bt([p],a)}function Nc(t,e){return b(t,e)}function jc(t,e,s){return Ae(t,e,s)}function Fc(t,e,s,n,i){return Ht(t,e,s,n,i,!0)}function on(t){const e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function Zn(t){return t.randomizer||(t.randomizer=new wc(t.seed||0)),t.randomizer.next()}function Ae(t,e,s,n=1){return s.roughness*n*(Zn(s)*(e-t)+t)}function b(t,e,s=1){return Ae(-t,t,e,s)}function Ht(t,e,s,n,i,o=!1){const a=o?i.disableMultiStrokeFill:i.disableMultiStroke,r=fs(t,e,s,n,i,!0,!1);if(a)return r;const l=fs(t,e,s,n,i,!0,!0);return r.concat(l)}function fs(t,e,s,n,i,o,a){const r=Math.pow(t-s,2)+Math.pow(e-n,2),l=Math.sqrt(r);let c=1;l<200?c=1:l>500?c=.4:c=-.0016668*l+1.233334;let u=i.maxRandomnessOffset||0;u*u*100>r&&(u=l/10);const h=u/2,f=.2+Zn(i)*.2;let d=i.bowing*i.maxRandomnessOffset*(n-e)/200,p=i.bowing*i.maxRandomnessOffset*(t-s)/200;d=b(d,i,c),p=b(p,i,c);const _=[],v=()=>b(h,i,c),y=()=>b(u,i,c),w=i.preserveVertices;return o&&(a?_.push({op:"move",data:[t+(w?0:v()),e+(w?0:v())]}):_.push({op:"move",data:[t+(w?0:b(u,i,c)),e+(w?0:b(u,i,c))]})),a?_.push({op:"bcurveTo",data:[d+t+(s-t)*f+v(),p+e+(n-e)*f+v(),d+t+2*(s-t)*f+v(),p+e+2*(n-e)*f+v(),s+(w?0:v()),n+(w?0:v())]}):_.push({op:"bcurveTo",data:[d+t+(s-t)*f+y(),p+e+(n-e)*f+y(),d+t+2*(s-t)*f+y(),p+e+2*(n-e)*f+y(),s+(w?0:y()),n+(w?0:y())]}),_}function me(t,e,s){if(!t.length)return[];const n=[];n.push([t[0][0]+b(e,s),t[0][1]+b(e,s)]),n.push([t[0][0]+b(e,s),t[0][1]+b(e,s)]);for(let i=1;i3){const o=[],a=1-s.curveTightness;i.push({op:"move",data:[t[1][0],t[1][1]]});for(let r=1;r+21&&i.push(o):i.push(o),i.push(t[e+3])}else{const a=t[e+0],r=t[e+1],l=t[e+2],c=t[e+3],u=jt(a,r,.5),h=jt(r,l,.5),f=jt(l,c,.5),d=jt(u,h,.5),p=jt(h,f,.5),_=jt(d,p,.5);ps([a,u,d,_],0,s,i),ps([_,p,f,c],0,s,i)}return i}function Vc(t,e){return Ie(t,0,t.length,e)}function Ie(t,e,s,n,i){const o=i||[],a=t[e],r=t[s-1];let l=0,c=1;for(let u=e+1;ul&&(l=h,c=u)}return Math.sqrt(l)>n?(Ie(t,e,c+1,n,o),Ie(t,c,s,n,o)):(o.length||o.push(a),o.push(r)),o}function gs(t,e=.15,s){const n=[],i=(t.length-1)/3;for(let o=0;o0?Ie(n,0,n.length,s):n}function Bc(t,e,s){const n=Ls(t),i=Vn(qn(n)),o=[];let a=[],r=[0,0],l=[];const c=()=>{l.length>=4&&a.push(...gs(l,e)),l=[]},u=()=>{c(),a.length&&(o.push(a),a=[])};for(const{key:f,data:d}of i)switch(f){case"M":u(),r=[d[0],d[1]],a.push(r);break;case"L":c(),a.push([d[0],d[1]]);break;case"C":if(!l.length){const p=a.length?a[a.length-1]:r;l.push([p[0],p[1]])}l.push([d[0],d[1]]),l.push([d[2],d[3]]),l.push([d[4],d[5]]);break;case"Z":c(),a.push([r[0],r[1]]);break}if(u(),!s)return o;const h=[];for(const f of o){const d=Vc(f,s);d.length&&h.push(d)}return h}const X="none";class Kc{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Un()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,s,n){return{shape:e,sets:s||[],options:n||this.defaultOptions}}line(e,s,n,i,o){const a=this._o(o);return this._d("line",[tt(e,s,n,i,a)],a)}rectangle(e,s,n,i,o){const a=this._o(o),r=[],l=Kn(e,s,n,i,a);if(a.fill){const c=[[e,s],[e+n,s],[e+n,s+i],[e,s+i]];a.fillStyle==="solid"?r.push(Je([c],a)):r.push(Bt([c],a))}return a.stroke!==X&&r.push(l),this._d("rectangle",r,a)}ellipse(e,s,n,i,o){const a=this._o(o),r=[],l=Gn(n,i,a),c=ds(e,s,a,l);if(a.fill)if(a.fillStyle==="solid"){const u=ds(e,s,a,l).opset;u.type="fillPath",r.push(u)}else r.push(Bt([c.estimatedPoints],a));return a.stroke!==X&&r.push(c.opset),this._d("ellipse",r,a)}circle(e,s,n,i){const o=this.ellipse(e,s,n,n,i);return o.shape="circle",o}linearPath(e,s){const n=this._o(s);return this._d("linearPath",[ae(e,!1,n)],n)}arc(e,s,n,i,o,a,r=!1,l){const c=this._o(l),u=[],h=sn(e,s,n,i,o,a,r,!0,c);if(r&&c.fill)if(c.fillStyle==="solid"){const f=Object.assign({},c);f.disableMultiStroke=!0;const d=sn(e,s,n,i,o,a,!0,!1,f);d.type="fillPath",u.push(d)}else u.push(Rc(e,s,n,i,o,a,c));return c.stroke!==X&&u.push(h),this._d("arc",u,c)}curve(e,s){const n=this._o(s),i=[],o=en(e,n);if(n.fill&&n.fill!==X)if(n.fillStyle==="solid"){const a=en(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(a.ops)})}else{const a=[],r=e;if(r.length){const c=typeof r[0][0]=="number"?[r]:r;for(const u of c)u.length<3?a.push(...u):u.length===3?a.push(...gs(ln([u[0],u[0],u[1],u[2]]),10,(1+n.roughness)/2)):a.push(...gs(ln(u),10,(1+n.roughness)/2))}a.length&&i.push(Bt([a],n))}return n.stroke!==X&&i.push(o),this._d("curve",i,n)}polygon(e,s){const n=this._o(s),i=[],o=ae(e,!0,n);return n.fill&&(n.fillStyle==="solid"?i.push(Je([e],n)):i.push(Bt([e],n))),n.stroke!==X&&i.push(o),this._d("polygon",i,n)}path(e,s){const n=this._o(s),i=[];if(!e)return this._d("path",i,n);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const o=n.fill&&n.fill!=="transparent"&&n.fill!==X,a=n.stroke!==X,r=!!(n.simplification&&n.simplification<1),l=r?4-4*(n.simplification||1):(1+n.roughness)/2,c=Bc(e,1,l),u=nn(e,n);if(o)if(n.fillStyle==="solid")if(c.length===1){const h=nn(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(h.ops)})}else i.push(Je(c,n));else i.push(Bt(c,n));return a&&(r?c.forEach(h=>{i.push(ae(h,!1,n))}):i.push(u)),this._d("path",i,n)}opsToPath(e,s){let n="";for(const i of e.ops){const o=typeof s=="number"&&s>=0?i.data.map(a=>+a.toFixed(s)):i.data;switch(i.op){case"move":n+=`M${o[0]} ${o[1]} `;break;case"bcurveTo":n+=`C${o[0]} ${o[1]}, ${o[2]} ${o[3]}, ${o[4]} ${o[5]} `;break;case"lineTo":n+=`L${o[0]} ${o[1]} `;break}}return n.trim()}toPaths(e){const s=e.sets||[],n=e.options||this.defaultOptions,i=[];for(const o of s){let a=null;switch(o.type){case"path":a={d:this.opsToPath(o),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:X};break;case"fillPath":a={d:this.opsToPath(o),stroke:X,strokeWidth:0,fill:n.fill||X};break;case"fillSketch":a=this.fillSketch(o,n);break}a&&i.push(a)}return i}fillSketch(e,s){let n=s.fillWeight;return n<0&&(n=s.strokeWidth/2),{d:this.opsToPath(e),stroke:s.fill||X,strokeWidth:n,fill:X}}_mergedShape(e){return e.filter((s,n)=>n===0?!0:s.op!=="move")}}const Jn="http://www.w3.org/2000/svg",Gc=800;let Xe=null;function Zc(){return Xe||(Xe=new Kc().defaultOptions),Xe}function Ye(t,e,s){return{...Zc(),maxRandomnessOffset:2,roughness:t==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:t!=="double",disableMultiStrokeFill:!1,seed:e,...s}}function Jc(t){const e=t.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const s=e;if(s.length)switch(s.length){case 4:return[...s];case 1:return[s[0],s[0],s[0],s[0]];case 2:return[...s,...s];case 3:return[...s,s[1]];default:return[s[0],s[1],s[2],s[3]]}}}return[5,5,5,5]}function Xc(t,e,s,n,i,o){const a=[];let r=s.strokeWidth||2;const l=Jc(s),c=s.animate===void 0?!0:!!s.animate,u=s.iterations||2,h=s.rtl?1:0,f=Ye("single",o,s);switch(s.type){case"underline":{const d=e.y+e.h+l[2];for(let p=h;pw.setAttribute(M,N);for(const w of d){const M=document.createElementNS(Jn,"path");if(y(M,"d",w),y(M,"fill","none"),y(M,"stroke",s.color||"currentColor"),y(M,"stroke-width",`${r}`),s.opacity!==void 0&&y(M,"style",`opacity:${s.opacity}`),c){const N=M.getTotalLength();p.push(N),v+=N}t.appendChild(M),_.push(M)}if(c){let w=0;for(let M=0;M<_.length;M++){const N=_[M],E=p[M],ht=v?i*(E/v):0,Lt=n+w,Q=N.style;Q.strokeDashoffset=`${E}`,Q.strokeDasharray=`${E}`,Q.animation=`rough-notation-dash ${ht}ms ease-out ${Lt}ms forwards`,w+=ht}return cn(i+n)}}return cn(0)}function cn(t){return new Promise(e=>setTimeout(e,t))}function Yc(t){const e=[];for(const s of t){let n="";for(const i of s.ops){const o=i.data;switch(i.op){case"move":n.trim()&&e.push(n.trim()),n=`M${o[0]} ${o[1]} `;break;case"bcurveTo":n+=`C${o[0]} ${o[1]}, ${o[2]} ${o[3]}, ${o[4]} ${o[5]} `;break;case"lineTo":n+=`L${o[0]} ${o[1]} `;break}}n.trim()&&e.push(n.trim())}return e}function Qc(){if(!window.__rno_kf_s){const t=window.__rno_kf_s=document.createElement("style");t.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(t)}}var tu=Object.defineProperty,eu=(t,e,s)=>e in t?tu(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,ot=(t,e,s)=>(eu(t,typeof e!="symbol"?e+"":e,s),s);class su{constructor(e,s){ot(this,"_state","unattached"),ot(this,"_config"),ot(this,"_resizing",!1),ot(this,"_ro"),ot(this,"_seed",Un()),ot(this,"_e"),ot(this,"_svg"),ot(this,"_lastSizes",[]),ot(this,"_animationDelay",0),ot(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),ot(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(s)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,s){this._config[e]!==s&&(this._config[e]=s,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){Qc();const e=this._svg=document.createElementNS(Jn,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const s=e.style;s.position="absolute",s.top="0",s.left="0",s.overflow="visible",s.pointerEvents="none",s.width="100px",s.height="100px";const n=this._config.type==="highlight";if(this._e.insertAdjacentElement(n?"beforebegin":"afterend",e),this._state="not-showing",n){const i=window.getComputedStyle(this._e).position;(!i||i==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const s of e)s.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let s=0;sMath.round(i)===Math.round(o);return n(e.x,s.x)&&n(e.y,s.y)&&n(e.w,s.w)&&n(e.h,s.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,s){let n=this._config;s&&(n=JSON.parse(JSON.stringify(this._config)),n.animate=!1);const i=this.rects();let o=0;i.forEach(c=>o+=c.w);const a=n.animationDuration||Gc;let r=0;const l=[];for(let c=0;cObject.assign(t,{type:"box"}),circle:t=>Object.assign(t,{type:"circle"}),underline:t=>Object.assign(t,{type:"underline"}),highlight:t=>Object.assign(t,{type:"highlight"}),"strike-through":t=>Object.assign(t,{type:"strike-through"}),"crossed-off":t=>Object.assign(t,{type:"crossed-off"}),bracket:t=>Object.assign(t,{type:"bracket"}),strike:t=>Object.assign(t,{type:"strike-through"}),cross:t=>Object.assign(t,{type:"crossed-off"}),crossed:t=>Object.assign(t,{type:"crossed-off"}),linethrough:t=>Object.assign(t,{type:"strike-through"}),"line-through":t=>Object.assign(t,{type:"strike-through"}),black:t=>Z(t,"text-black"),blue:t=>Z(t,"text-blue"),cyan:t=>Z(t,"text-cyan"),gray:t=>Z(t,"text-gray"),green:t=>Z(t,"text-green"),indigo:t=>Z(t,"text-indigo"),lime:t=>Z(t,"text-lime"),orange:t=>Z(t,"text-orange"),pink:t=>Z(t,"text-pink"),purple:t=>Z(t,"text-purple"),red:t=>Z(t,"text-red"),teal:t=>Z(t,"text-teal"),white:t=>Z(t,"text-white"),yellow:t=>Z(t,"text-yellow")},iu=[[/^delay-?(\d+)?$/,(t,e,s)=>{const n=(t[1]?Number.parseInt(t[1]):s)||300;return e.delay=n,e}],[/^(?:op|opacity)-?(\d+)?$/,(t,e,s)=>{const n=(t[1]?Number.parseInt(t[1]):s)||100;return e.opacity=n/100,e}]];function ou(){return{install(t){t.directive("mark",{name:"v-mark",mounted:(e,s)=>{const n=g(()=>{const a=typeof s.value=="object"&&!Array.isArray(s.value)?{...s.value}:{at:s.value};let r={at:a.at};const l=Object.entries(s.modifiers).filter(([u,h])=>{if(un[u])return r=un[u](r,h),!1;for(const[f,d]of iu){const p=u.match(f);if(p)return r=d(p,r,h),!1}return!0});l.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",l);const c={...r,...a};return c.type||(c.type="underline"),c}),i=nu(e,n.value),o=we(e,s,n.value.at);if(!o){console.error("[Slidev] Invalid value for v-mark:",n.value.at);return}Kt(()=>{let a;n.value.class&&(i.class=n.value.class),n.value.color&&(i.color=n.value.color);const r=n.value.at;if(r===!0)a=!0;else if(r===!1)a=!1;else if(o)a=o.isActive.value;else{console.error("[Slidev] Invalid value for v-mark:",r);return}a!=null&&(a?i.show():i.hide())})}})}}}const hn=Pi(),Qe=J("slidev-color-schema","auto"),dn=g(()=>T.colorSchema!=="auto"),Xn=g({get(){return dn.value?T.colorSchema==="dark":Qe.value==="auto"?hn.value:Qe.value==="dark"},set(t){dn.value||(Qe.value=t===hn.value?"auto":t?"dark":"light")}}),Uu=fn(Xn);He&&Zt(Xn,t=>{const e=document.querySelector("html");e.classList.toggle("dark",t),e.classList.toggle("light",!t)},{immediate:!0});function ru(t){const e=g(()=>t.value.path),s=g(()=>F.length),n=g(()=>Number.parseInt(e.value.split(/\//g).slice(-1)[0])||1),i=g(()=>Re(n.value)),o=g(()=>F.find(f=>f.path===`${n.value}`)??F.at(-1)??F[0]),a=g(()=>{var f,d,p;return(p=(d=(f=o.value)==null?void 0:f.meta)==null?void 0:d.slide)==null?void 0:p.id}),r=g(()=>{var f,d;return((d=(f=o.value)==null?void 0:f.meta)==null?void 0:d.layout)||(n.value===1?"cover":"default")}),l=g(()=>F.find(f=>f.path===`${Math.min(F.length,n.value+1)}`)),c=g(()=>F.filter(f=>{var d,p;return(p=(d=f.meta)==null?void 0:d.slide)==null?void 0:p.title}).reduce((f,d)=>($s(f,d),f),[])),u=g(()=>Ps(c.value,o.value)),h=g(()=>Cs(u.value));return{rawRoutes:F,route:t,path:e,total:s,clicksContext:It,clicks:ks,clicksTotal:he,currentPage:n,currentPath:i,currentRoute:o,currentSlideId:a,currentLayout:r,nextRoute:l,rawTree:c,treeWithActiveStatuses:u,tree:h,go:Ss,downloadPDF:uc,next:jn,nextSlide:xs,openInEditor:hc,prev:Fn,prevSlide:Ms}}function au(t){return{nav:ru(t),configs:T,themeConfigs:g(()=>T.themeConfig)}}function lu(){return{install(t){const e=x(au(ut));t.provide(Cn,A("none")),t.provide(Pn,e),t.provide($n,g(()=>e.nav.currentPage))}}}const qt=Ci(_c);qt.use(Y);qt.use(_o());qt.use(yc());qt.use(ou());qt.use(lu());vc({app:qt,router:Y});qt.mount("#app");export{xu as $,Hu as A,fu as B,es as C,It as D,Tt as E,Nu as F,Ru as G,Gt as H,du as I,Su as J,pe as K,qo as L,Du as M,Te as N,Tu as O,Lu as P,R as Q,xs as R,Ms as S,as as T,Uu as U,Eu as V,_u as W,Ss as X,bu as Y,vu as Z,I as _,gu as a,Zl as a0,ku as a1,De as a2,yu as a3,os as a4,oc as a5,ju as a6,dn as a7,Xn as a8,Ft as a9,Ee as aa,Iu as ab,Cu as ac,uc as ad,An as ae,Fu as af,zo as ag,$n as ah,Cn as ai,pu as aj,bs as ak,ie as al,rs as am,Jl as an,Xl as ao,Yl as ap,tc as aq,Au as ar,z as as,j as at,ec as au,Sn as av,mu as b,T as c,$u as d,ce as e,sc as f,Le as g,Ou as h,wu as i,Mu as j,Pu as k,hu as l,$o as m,jn as n,Pn as o,Fn as p,ru as q,Vo as r,Gl as s,wn as t,zu as u,ut as v,Ys as w,F as x,Fo as y,yo as z}; -function __vite__mapDeps(indexes) { - if (!__vite__mapDeps.viteFileDeps) { - __vite__mapDeps.viteFileDeps = ["assets/slidev/play-B6STyeSD.js","assets/modules/vue-CnJIpJLC.js","assets/slidev/SlidesShow-DSp0k0X9.js","assets/modules/unplugin-icons-Bc68jzww.js","assets/slidev/bottom-DbVZ6J_D.js","assets/slidev/DrawingPreview-BoMh3sm4.js","assets/modules/shiki-BgDwwTVx.js","assets/modules/shiki-BSchMNmt.css","assets/SlidesShow-Do3DTZt5.css","assets/slidev/PrintStyle-BI6uuHPb.js","assets/play-CoA43pdi.css","assets/slidev/print-FDYn9SRk.js","assets/print-Nssgrd1X.css","assets/slidev/print-D_KPX9ua.js","assets/slidev/NoteDisplay-Ck0eJHJf.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/presenter-Dw2XUbpl.js","assets/slidev/DrawingControls-DVtr6Eob.js","assets/DrawingControls-BO6lw4N5.css","assets/presenter-BRsvFpoV.css"] - } - return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) -} diff --git a/03-layered/assets/modules/shiki-BgDwwTVx.js b/03-layered/assets/modules/shiki-DYdhqpMF.js similarity index 99% rename from 03-layered/assets/modules/shiki-BgDwwTVx.js rename to 03-layered/assets/modules/shiki-DYdhqpMF.js index 869d7f4..aa1586d 100644 --- a/03-layered/assets/modules/shiki-BgDwwTVx.js +++ b/03-layered/assets/modules/shiki-DYdhqpMF.js @@ -1 +1 @@ -import{d as xe,n as Vt,p as Wt,a as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-CnJIpJLC.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),Vt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Wt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};jt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T}; +import{d as xe,p as Vt,a as Wt,n as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-BeRk5K_R.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),jt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Vt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};Wt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T,Nt as t}; diff --git a/03-layered/assets/modules/unplugin-icons-Bc68jzww.js b/03-layered/assets/modules/unplugin-icons-Bc68jzww.js deleted file mode 100644 index eea4df7..0000000 --- a/03-layered/assets/modules/unplugin-icons-Bc68jzww.js +++ /dev/null @@ -1 +0,0 @@ -import{o as e,b as o,e as n}from"./vue-CnJIpJLC.js";const c={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},_=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),i=[_];function l(t,s){return e(),o("svg",c,[...i])}const P2={name:"carbon-list-boxes",render:l},h={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),a=[r];function d(t,s){return e(),o("svg",h,[...a])}const Q2={name:"carbon-close",render:d},u={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},m=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),v=[m];function $(t,s){return e(),o("svg",u,[...v])}const R2={name:"carbon-settings-adjust",render:$},p={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),L=n("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),f=[g,L];function w(t,s){return e(),o("svg",p,[...f])}const T2={name:"carbon-information",render:w},x={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),z=[M];function C(t,s){return e(),o("svg",x,[...z])}const U2={name:"carbon-download",render:C},H={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),B=[b];function V(t,s){return e(),o("svg",H,[...B])}const W2={name:"carbon-template",render:V},Z={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),k=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),j=[A,k];function y(t,s){return e(),o("svg",Z,[...j])}const X2={name:"carbon-user-speaker",render:y},q={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},E=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),S=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),D=[E,S];function F(t,s){return e(),o("svg",q,[...D])}const Y2={name:"carbon-presentation-file",render:F},G={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},N=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),I=[N];function J(t,s){return e(),o("svg",G,[...I])}const nn={name:"carbon-pen",render:J},K={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},O=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0L140 164a8 8 0 0 0-13 2.46l-19.46 44.77a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85L166.45 127a8 8 0 0 0-2.45 13l49.67 49.67a8 8 0 0 1-.01 11.33",opacity:".2"}),n("path",{d:"m169.64 134.33l44.77-19.46a16 16 0 0 0-1.41-29.8L52.92 32.8A16 16 0 0 0 32.8 52.92L85.07 213a15.83 15.83 0 0 0 14.41 11h.78a15.83 15.83 0 0 0 14.61-9.59l19.46-44.77L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63Zm-69.48 73.76l.06-.05Zm95.15-.09l-49.67-49.67a16 16 0 0 0-26 4.94l-19.42 44.65L48 48l159.87 52.21l-44.64 19.41a16 16 0 0 0-4.94 26L208 195.31Z"})],-1),P=[O];function Q(t,s){return e(),o("svg",K,[...P])}const en={name:"ph-cursor-duotone",render:Q},R={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},T=n("path",{fill:"currentColor",d:"M219.31 192a16 16 0 0 1 0 22.63l-4.68 4.68a16 16 0 0 1-22.63 0l-55.25-55.24l-21.88 50.34a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-50.34 21.88Z"},null,-1),U=[T];function W(t,s){return e(),o("svg",R,[...U])}const on={name:"ph-cursor-fill",render:W},X={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Y=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),n1=[Y];function e1(t,s){return e(),o("svg",X,[...n1])}const tn={name:"carbon-sun",render:e1},o1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},t1=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),s1=[t1];function c1(t,s){return e(),o("svg",o1,[...s1])}const sn={name:"carbon-moon",render:c1},_1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},i1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),l1=[i1];function h1(t,s){return e(),o("svg",_1,[...l1])}const cn={name:"carbon-apps",render:h1},r1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},a1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),d1=[a1];function u1(t,s){return e(),o("svg",r1,[...d1])}const _n={name:"carbon-arrow-right",render:u1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),$1=[v1];function p1(t,s){return e(),o("svg",m1,[...$1])}const ln={name:"carbon-arrow-left",render:p1},g1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},L1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),f1=[L1];function w1(t,s){return e(),o("svg",g1,[...f1])}const hn={name:"carbon-maximize",render:w1},x1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),z1=[M1];function C1(t,s){return e(),o("svg",x1,[...z1])}const rn={name:"carbon-minimize",render:C1},H1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b1=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),B1=[b1];function V1(t,s){return e(),o("svg",H1,[...B1])}const an={name:"carbon-checkmark",render:V1},Z1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A1=n("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),k1=[A1];function j1(t,s){return e(),o("svg",Z1,[...k1])}const dn={name:"carbon-renew",render:j1},y1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q1=n("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),E1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),S1=[q1,E1];function D1(t,s){return e(),o("svg",y1,[...S1])}const un={name:"carbon-time",render:D1},F1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},G1=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),N1=n("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),I1=[G1,N1];function J1(t,s){return e(),o("svg",F1,[...I1])}const mn={name:"carbon-zoom-out",render:J1},K1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},O1=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),P1=n("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),Q1=[O1,P1];function R1(t,s){return e(),o("svg",K1,[...Q1])}const vn={name:"carbon-zoom-in",render:R1},T1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},U1=n("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),W1=n("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),X1=[U1,W1];function Y1(t,s){return e(),o("svg",T1,[...X1])}const $n={name:"carbon-close-outline",render:Y1},n2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},e2=n("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),o2=[e2];function t2(t,s){return e(),o("svg",n2,[...o2])}const pn={name:"carbon-error",render:t2},s2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},c2=n("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),_2=[c2];function i2(t,s){return e(),o("svg",s2,[..._2])}const gn={name:"carbon-pin",render:i2},l2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},h2=n("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),r2=[h2];function a2(t,s){return e(),o("svg",l2,[...r2])}const Ln={name:"carbon-pin-filled",render:a2},d2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},u2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),m2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),v2=[u2,m2];function $2(t,s){return e(),o("svg",d2,[...v2])}const fn={name:"carbon-trash-can",render:$2},p2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g2=n("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),L2=[g2];function f2(t,s){return e(),o("svg",p2,[...L2])}const wn={name:"carbon-redo",render:f2},w2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},x2=n("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),M2=[x2];function z2(t,s){return e(),o("svg",w2,[...M2])}const xn={name:"carbon-undo",render:z2},C2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},H2=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),b2=[H2];function B2(t,s){return e(),o("svg",C2,[...b2])}const Mn={name:"carbon-erase",render:B2},V2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Z2=n("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),A2=[Z2];function k2(t,s){return e(),o("svg",V2,[...A2])}const zn={name:"carbon-checkbox",render:k2},j2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y2=n("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),q2=[y2];function E2(t,s){return e(),o("svg",j2,[...q2])}const Cn={name:"carbon-radio-button",render:E2},S2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},D2=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),F2=[D2];function G2(t,s){return e(),o("svg",S2,[...F2])}const Hn={name:"carbon-arrow-up-right",render:G2},N2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},I2=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),J2=[I2];function K2(t,s){return e(),o("svg",N2,[...J2])}const bn={name:"carbon-cursor1",render:K2};export{Mn as A,xn as B,wn as C,fn as D,Ln as E,gn as F,pn as G,$n as H,bn as _,vn as a,mn as b,un as c,dn as d,Q2 as e,P2 as f,an as g,rn as h,hn as i,ln as j,_n as k,sn as l,tn as m,on as n,en as o,nn as p,R2 as q,cn as r,Y2 as s,X2 as t,W2 as u,U2 as v,T2 as w,Hn as x,Cn as y,zn as z}; diff --git a/03-layered/assets/modules/unplugin-icons-DSU1Mbun.js b/03-layered/assets/modules/unplugin-icons-DSU1Mbun.js new file mode 100644 index 0000000..7025cf2 --- /dev/null +++ b/03-layered/assets/modules/unplugin-icons-DSU1Mbun.js @@ -0,0 +1 @@ +import{o as e,b as o,e as n}from"./vue-BeRk5K_R.js";const s={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},l=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),_=[l];function i(t,c){return e(),o("svg",s,[..._])}const Ln={name:"carbon-list-boxes",render:i},h={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M26 2H8a2 2 0 0 0-2 2v4H4v2h2v5H4v2h2v5H4v2h2v4a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2m0 26H8v-4h2v-2H8v-5h2v-2H8v-5h2V8H8V4h18Z"},null,-1),a=n("path",{fill:"currentColor",d:"M14 8h8v2h-8zm0 7h8v2h-8zm0 7h8v2h-8z"},null,-1),d=[r,a];function u(t,c){return e(),o("svg",h,[...d])}const fn={name:"carbon-catalog",render:u},v={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},m=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),$=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),p=[m,$];function g(t,c){return e(),o("svg",v,[...p])}const wn={name:"carbon-user-speaker",render:g},L={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},f=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),w=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),x=[f,w];function M(t,c){return e(),o("svg",L,[...x])}const xn={name:"carbon-presentation-file",render:M},z={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),H=[C];function B(t,c){return e(),o("svg",z,[...H])}const Mn={name:"carbon-pen",render:B},b={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},V=n("path",{fill:"currentColor",d:"m20.17 19l-2.59 2.59L19 23l4-4l-4-4l-1.42 1.41zm-8.34 0l2.59-2.59L13 15l-4 4l4 4l1.42-1.41z"},null,-1),Z=n("circle",{cx:"9",cy:"8",r:"1",fill:"currentColor"},null,-1),A=n("circle",{cx:"6",cy:"8",r:"1",fill:"currentColor"},null,-1),k=n("path",{fill:"currentColor",d:"M28 4H4c-1.103 0-2 .898-2 2v20c0 1.103.897 2 2 2h24c1.103 0 2-.897 2-2V6c0-1.102-.897-2-2-2m0 2v4H4V6zM4 26V12h24v14z"},null,-1),y=[V,Z,A,k];function j(t,c){return e(),o("svg",b,[...y])}const zn={name:"carbon-cics-program",render:j},D={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),I=[q];function E(t,c){return e(),o("svg",D,[...I])}const Cn={name:"carbon-sun",render:E},S={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},F=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),G=[F];function J(t,c){return e(),o("svg",S,[...G])}const Hn={name:"carbon-moon",render:J},K={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},N=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),U=[N];function O(t,c){return e(),o("svg",K,[...U])}const Bn={name:"carbon-cursor1",render:O},P={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Q=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),R=n("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),T=[Q,R];function W(t,c){return e(),o("svg",P,[...T])}const bn={name:"carbon-zoom-out",render:W},X={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Y=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),n1=n("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),e1=[Y,n1];function o1(t,c){return e(),o("svg",X,[...e1])}const Vn={name:"carbon-zoom-in",render:o1},t1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},c1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),s1=[c1];function l1(t,c){return e(),o("svg",t1,[...s1])}const Zn={name:"carbon-maximize",render:l1},_1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},i1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),h1=[i1];function r1(t,c){return e(),o("svg",_1,[...h1])}const An={name:"carbon-minimize",render:r1},a1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},d1=n("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),u1=[d1];function v1(t,c){return e(),o("svg",a1,[...u1])}const kn={name:"carbon-renew",render:v1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},$1=n("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),p1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),g1=[$1,p1];function L1(t,c){return e(),o("svg",m1,[...g1])}const yn={name:"carbon-time",render:L1},f1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},w1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),x1=[w1];function M1(t,c){return e(),o("svg",f1,[...x1])}const jn={name:"carbon-arrow-left",render:M1},z1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),H1=[C1];function B1(t,c){return e(),o("svg",z1,[...H1])}const Dn={name:"carbon-arrow-right",render:B1},b1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},V1=n("path",{fill:"currentColor",d:"M16 4L6 14l1.41 1.41L15 7.83V28h2V7.83l7.59 7.58L26 14z"},null,-1),Z1=[V1];function A1(t,c){return e(),o("svg",b1,[...Z1])}const qn={name:"carbon-arrow-up",render:A1},k1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y1=n("path",{fill:"currentColor",d:"M24.59 16.59L17 24.17V4h-2v20.17l-7.59-7.58L6 18l10 10l10-10z"},null,-1),j1=[y1];function D1(t,c){return e(),o("svg",k1,[...j1])}const In={name:"carbon-arrow-down",render:D1},q1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},I1=n("path",{d:"M29.537 13.76l-3.297-3.297a1.586 1.586 0 0 0-2.24 0L10 24.467V30h5.533l14.004-14a1.586 1.586 0 0 0 0-2.24zM14.704 28H12v-2.704l9.44-9.441l2.705 2.704zM25.56 17.145l-2.704-2.704l2.267-2.267l2.704 2.704z",fill:"currentColor"},null,-1),E1=n("path",{d:"M11 17h2v-7h3V8H8v2h3v7z",fill:"currentColor"},null,-1),S1=n("path",{d:"M8 20H4V4h16v4h2V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4z",fill:"currentColor"},null,-1),F1=[I1,E1,S1];function G1(t,c){return e(),o("svg",q1,[...F1])}const En={name:"carbon-text-annotation-toggle",render:G1},J1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),N1=[K1];function U1(t,c){return e(),o("svg",J1,[...N1])}const Sn={name:"carbon-apps",render:U1},O1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},P1=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),Q1=[P1];function R1(t,c){return e(),o("svg",O1,[...Q1])}const Fn={name:"carbon-settings-adjust",render:R1},T1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},W1=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),X1=n("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),Y1=[W1,X1];function n2(t,c){return e(),o("svg",T1,[...Y1])}const Gn={name:"carbon-information",render:n2},e2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},o2=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),t2=[o2];function c2(t,c){return e(),o("svg",e2,[...t2])}const Jn={name:"carbon-download",render:c2},s2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},l2=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),_2=[l2];function i2(t,c){return e(),o("svg",s2,[..._2])}const Kn={name:"carbon-template",render:i2},h2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},r2=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0l-51.31-51.31a8 8 0 0 0-13 2.46l-17.82 46.41a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85l-46.41 17.82a8 8 0 0 0-2.46 13l51.31 51.31a8 8 0 0 1 0 11.34",opacity:".2"}),n("path",{d:"M168 132.69L214.08 115l.33-.13a16 16 0 0 0-1.41-29.8L52.92 32.8A15.95 15.95 0 0 0 32.8 52.92L85.07 213a15.82 15.82 0 0 0 14.41 11h.78a15.84 15.84 0 0 0 14.61-9.59l.13-.33L132.69 168L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63ZM195.31 208L144 156.69a16 16 0 0 0-26 4.93c0 .11-.09.22-.13.32l-17.65 46L48 48l159.85 52.2l-45.95 17.64l-.32.13a16 16 0 0 0-4.93 26L208 195.31Z"})],-1),a2=[r2];function d2(t,c){return e(),o("svg",h2,[...a2])}const Nn={name:"ph-cursor-duotone",render:d2},u2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},v2=n("path",{fill:"currentColor",d:"m220.49 207.8l-12.69 12.69a12 12 0 0 1-17 0l-56.57-56.57L115 214.08l-.13.33a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-.33.13l-50.16 19.27l56.57 56.56a12 12 0 0 1 0 16.97"},null,-1),m2=[v2];function $2(t,c){return e(),o("svg",u2,[...m2])}const Un={name:"ph-cursor-fill",render:$2},p2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g2=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),L2=[g2];function f2(t,c){return e(),o("svg",p2,[...L2])}const On={name:"carbon-checkmark",render:f2},w2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},x2=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),M2=[x2];function z2(t,c){return e(),o("svg",w2,[...M2])}const Pn={name:"carbon-close",render:z2},C2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},H2=n("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),B2=n("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),b2=[H2,B2];function V2(t,c){return e(),o("svg",C2,[...b2])}const Qn={name:"carbon-close-outline",render:V2},Z2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A2=n("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),k2=[A2];function y2(t,c){return e(),o("svg",Z2,[...k2])}const Rn={name:"carbon-error",render:y2},j2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},D2=n("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),q2=[D2];function I2(t,c){return e(),o("svg",j2,[...q2])}const Tn={name:"carbon-pin",render:I2},E2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},S2=n("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),F2=[S2];function G2(t,c){return e(),o("svg",E2,[...F2])}const Wn={name:"carbon-pin-filled",render:G2},J2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),N2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),U2=[K2,N2];function O2(t,c){return e(),o("svg",J2,[...U2])}const Xn={name:"carbon-trash-can",render:O2},P2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Q2=n("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),R2=[Q2];function T2(t,c){return e(),o("svg",P2,[...R2])}const Yn={name:"carbon-redo",render:T2},W2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},X2=n("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),Y2=[X2];function nn(t,c){return e(),o("svg",W2,[...Y2])}const ne={name:"carbon-undo",render:nn},en={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},on=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),tn=[on];function cn(t,c){return e(),o("svg",en,[...tn])}const ee={name:"carbon-erase",render:cn},sn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},ln=n("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),_n=[ln];function hn(t,c){return e(),o("svg",sn,[..._n])}const oe={name:"carbon-checkbox",render:hn},rn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},an=n("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),dn=[an];function un(t,c){return e(),o("svg",rn,[...dn])}const te={name:"carbon-radio-button",render:un},vn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},mn=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),$n=[mn];function pn(t,c){return e(),o("svg",vn,[...$n])}const ce={name:"carbon-arrow-up-right",render:pn};export{Pn as A,ce as B,te as C,oe as D,ee as E,ne as F,Yn as G,Xn as H,qn as I,Wn as J,Tn as K,Rn as L,Qn as M,xn as _,wn as a,fn as b,Ln as c,Hn as d,Cn as e,zn as f,Mn as g,Vn as h,bn as i,An as j,Zn as k,yn as l,kn as m,Bn as n,jn as o,Dn as p,In as q,En as r,Sn as s,On as t,Un as u,Nn as v,Fn as w,Kn as x,Jn as y,Gn as z}; diff --git a/03-layered/assets/modules/vue-BeRk5K_R.js b/03-layered/assets/modules/vue-BeRk5K_R.js new file mode 100644 index 0000000..bba603a --- /dev/null +++ b/03-layered/assets/modules/vue-BeRk5K_R.js @@ -0,0 +1,91 @@ +/** +* @vue/shared v3.4.25 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function Ke(e,t){const n=new Set(e.split(","));return t?s=>n.has(s.toLowerCase()):s=>n.has(s)}const ge=Object.freeze({}),ms=Object.freeze([]),Pe=()=>{},ci=()=>!1,rn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),bi=e=>e.startsWith("onUpdate:"),oe=Object.assign,Bl=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},dm=Object.prototype.hasOwnProperty,de=(e,t)=>dm.call(e,t),H=Array.isArray,Jn=e=>Fs(e)==="[object Map]",as=e=>Fs(e)==="[object Set]",uc=e=>Fs(e)==="[object Date]",pm=e=>Fs(e)==="[object RegExp]",Z=e=>typeof e=="function",ne=e=>typeof e=="string",xt=e=>typeof e=="symbol",me=e=>e!==null&&typeof e=="object",Gi=e=>(me(e)||Z(e))&&Z(e.then)&&Z(e.catch),lf=Object.prototype.toString,Fs=e=>lf.call(e),Hl=e=>Fs(e).slice(8,-1),af=e=>Fs(e)==="[object Object]",Ul=e=>ne(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,An=Ke(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),cf=Ke("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),Yi=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},hm=/-(\w)/g,Re=Yi(e=>e.replace(hm,(t,n)=>n?n.toUpperCase():"")),mm=/\B([A-Z])/g,Qe=Yi(e=>e.replace(mm,"-$1").toLowerCase()),Wt=Yi(e=>e.charAt(0).toUpperCase()+e.slice(1)),Vt=Yi(e=>e?`on${Wt(e)}`:""),Mt=(e,t)=>!Object.is(e,t),En=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},_i=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Si=e=>{const t=ne(e)?Number(e):NaN;return isNaN(t)?e:t};let fc;const Kl=()=>fc||(fc=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}),Ht={1:"TEXT",2:"CLASS",4:"STYLE",8:"PROPS",16:"FULL_PROPS",32:"NEED_HYDRATION",64:"STABLE_FRAGMENT",128:"KEYED_FRAGMENT",256:"UNKEYED_FRAGMENT",512:"NEED_PATCH",1024:"DYNAMIC_SLOTS",2048:"DEV_ROOT_FRAGMENT",[-1]:"HOISTED",[-2]:"BAIL"},gm={1:"STABLE",2:"DYNAMIC",3:"FORWARDED"},ym="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error",vm=Ke(ym),dc=2;function bm(e,t=0,n=e.length){let s=e.split(/(\r?\n)/);const r=s.filter((l,a)=>a%2===1);s=s.filter((l,a)=>a%2===0);let i=0;const o=[];for(let l=0;l=t){for(let a=l-dc;a<=l+dc||n>i;a++){if(a<0||a>=s.length)continue;const u=a+1;o.push(`${u}${" ".repeat(Math.max(3-String(u).length,0))}| ${s[a]}`);const f=s[a].length,c=r[a]&&r[a].length||0;if(a===l){const d=t-(i-(f+c)),p=Math.max(1,n>i?f-d:n-t);o.push(" | "+" ".repeat(d)+"^".repeat(p))}else if(a>l){if(n>i){const d=Math.max(Math.min(n-i,f),1);o.push(" | "+"^".repeat(d))}i+=f+c}}break}return o.join(` +`)}function Ls(e){if(H(e)){const t={};for(let n=0;n{if(n){const s=n.split(Sm);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Em(e){let t="";if(!e||ne(e))return t;for(const n in e){const s=e[n],r=n.startsWith("--")?n:Qe(n);(ne(s)||typeof s=="number")&&(t+=`${r}:${s};`)}return t}function Ds(e){let t="";if(ne(e))t=e;else if(H(e))for(let n=0;nkn(n,t))}const $m=e=>ne(e)?e:e==null?"":H(e)||me(e)&&(e.toString===lf||!Z(e.toString))?JSON.stringify(e,gf,2):String(e),gf=(e,t)=>t&&t.__v_isRef?gf(e,t.value):Jn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[wo(s,i)+" =>"]=r,n),{})}:as(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>wo(n))}:xt(t)?wo(t):me(t)&&!H(t)&&!af(t)?String(t):t,wo=(e,t="")=>{var n;return xt(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.4.25 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function qt(e,...t){console.warn(`[Vue warn] ${e}`,...t)}let ht;class ql{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=ht,!t&&ht&&(this.index=(ht.scopes||(ht.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=ht;try{return ht=this,t()}finally{ht=n}}else qt("cannot run an inactive effect scope.")}on(){ht=this}off(){ht=this.parent}stop(t){if(this._active){let n,s;for(n=0,s=this.effects.length;n=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),an()}return this._dirtyLevel>=4}set dirty(t){this._dirtyLevel=t?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=On,n=Xn;try{return On=!0,Xn=this,this._runnings++,hc(this),this.fn()}finally{mc(this),this._runnings--,Xn=n,On=t}}stop(){var t;this.active&&(hc(this),mc(this),(t=this.onStop)==null||t.call(this),this.active=!1)}}function Fm(e){return e.value}function hc(e){e._trackId++,e._depsLength=0}function mc(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{n.dirty&&n.run()});t&&(oe(n,t),t.scope&&vf(n,t.scope)),(!t||!t.lazy)&&n.run();const s=n.run.bind(n);return s.effect=n,s}function Dm(e){e.effect.stop()}let On=!0,qo=0;const Sf=[];function ln(){Sf.push(On),On=!1}function an(){const e=Sf.pop();On=e===void 0?!0:e}function Gl(){qo++}function Yl(){for(qo--;!qo&&zo.length;)zo.shift()()}function wf(e,t,n){var s;if(t.get(e)!==e._trackId){t.set(e,e._trackId);const r=e.deps[e._depsLength];r!==t?(r&&_f(r,e),e.deps[e._depsLength++]=t):e._depsLength++,(s=e.onTrack)==null||s.call(e,oe({effect:e},n))}}const zo=[];function Ef(e,t,n){var s;Gl();for(const r of e.keys()){let i;r._dirtyLevel{const n=new Map;return n.cleanup=e,n.computed=t,n},wi=new WeakMap,Qn=Symbol("iterate"),Go=Symbol("Map key iterate");function tt(e,t,n){if(On&&Xn){let s=wi.get(e);s||wi.set(e,s=new Map);let r=s.get(n);r||s.set(n,r=Cf(()=>s.delete(n))),wf(Xn,r,{target:e,type:t,key:n})}}function Ut(e,t,n,s,r,i){const o=wi.get(e);if(!o)return;let l=[];if(t==="clear")l=[...o.values()];else if(n==="length"&&H(e)){const a=Number(s);o.forEach((u,f)=>{(f==="length"||!xt(f)&&f>=a)&&l.push(u)})}else switch(n!==void 0&&l.push(o.get(n)),t){case"add":H(e)?Ul(n)&&l.push(o.get("length")):(l.push(o.get(Qn)),Jn(e)&&l.push(o.get(Go)));break;case"delete":H(e)||(l.push(o.get(Qn)),Jn(e)&&l.push(o.get(Go)));break;case"set":Jn(e)&&l.push(o.get(Qn));break}Gl();for(const a of l)a&&Ef(a,4,{target:e,type:t,key:n,newValue:s,oldValue:r,oldTarget:i});Yl()}function Vm(e,t){var n;return(n=wi.get(e))==null?void 0:n.get(t)}const jm=Ke("__proto__,__v_isRef,__isVue"),Tf=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(xt)),gc=Bm();function Bm(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const s=re(this);for(let i=0,o=this.length;i{e[t]=function(...n){ln(),Gl();const s=re(this)[t].apply(this,n);return Yl(),an(),s}}),e}function Hm(e){xt(e)||(e=String(e));const t=re(this);return tt(t,"has",e),t.hasOwnProperty(e)}class xf{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?kf:Pf:i?Nf:Rf).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=H(t);if(!r){if(o&&de(gc,n))return Reflect.get(gc,n,s);if(n==="hasOwnProperty")return Hm}const l=Reflect.get(t,n,s);return(xt(n)?Tf.has(n):jm(n))||(r||tt(t,"get",n),i)?l:Te(l)?o&&Ul(n)?l:l.value:me(l)?r?Nt(l):pt(l):l}}class Af extends xf{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];if(!this._isShallow){const a=Mn(i);if(!In(s)&&!Mn(s)&&(i=re(i),s=re(s)),!H(t)&&Te(i)&&!Te(s))return a?!1:(i.value=s,!0)}const o=H(t)&&Ul(n)?Number(n)e,Xi=e=>Reflect.getPrototypeOf(e);function Wr(e,t,n=!1,s=!1){e=e.__v_raw;const r=re(e),i=re(t);n||(Mt(t,i)&&tt(r,"get",t),tt(r,"get",i));const{has:o}=Xi(r),l=s?Jl:n?Ql:fr;if(o.call(r,t))return l(e.get(t));if(o.call(r,i))return l(e.get(i));e!==r&&e.get(t)}function qr(e,t=!1){const n=this.__v_raw,s=re(n),r=re(e);return t||(Mt(e,r)&&tt(s,"has",e),tt(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function zr(e,t=!1){return e=e.__v_raw,!t&&tt(re(e),"iterate",Qn),Reflect.get(e,"size",e)}function yc(e){e=re(e);const t=re(this);return Xi(t).has.call(t,e)||(t.add(e),Ut(t,"add",e,e)),this}function vc(e,t){t=re(t);const n=re(this),{has:s,get:r}=Xi(n);let i=s.call(n,e);i?If(n,s,e):(e=re(e),i=s.call(n,e));const o=r.call(n,e);return n.set(e,t),i?Mt(t,o)&&Ut(n,"set",e,t,o):Ut(n,"add",e,t),this}function bc(e){const t=re(this),{has:n,get:s}=Xi(t);let r=n.call(t,e);r?If(t,n,e):(e=re(e),r=n.call(t,e));const i=s?s.call(t,e):void 0,o=t.delete(e);return r&&Ut(t,"delete",e,void 0,i),o}function _c(){const e=re(this),t=e.size!==0,n=Jn(e)?new Map(e):new Set(e),s=e.clear();return t&&Ut(e,"clear",void 0,void 0,n),s}function Gr(e,t){return function(s,r){const i=this,o=i.__v_raw,l=re(o),a=t?Jl:e?Ql:fr;return!e&&tt(l,"iterate",Qn),o.forEach((u,f)=>s.call(r,a(u),a(f),i))}}function Yr(e,t,n){return function(...s){const r=this.__v_raw,i=re(r),o=Jn(i),l=e==="entries"||e===Symbol.iterator&&o,a=e==="keys"&&o,u=r[e](...s),f=n?Jl:t?Ql:fr;return!t&&tt(i,"iterate",a?Go:Qn),{next(){const{value:c,done:d}=u.next();return d?{value:c,done:d}:{value:l?[f(c[0]),f(c[1])]:f(c),done:d}},[Symbol.iterator](){return this}}}}function dn(e){return function(...t){{const n=t[0]?`on key "${t[0]}" `:"";qt(`${Wt(e)} operation ${n}failed: target is readonly.`,re(this))}return e==="delete"?!1:e==="clear"?void 0:this}}function zm(){const e={get(i){return Wr(this,i)},get size(){return zr(this)},has:qr,add:yc,set:vc,delete:bc,clear:_c,forEach:Gr(!1,!1)},t={get(i){return Wr(this,i,!1,!0)},get size(){return zr(this)},has:qr,add:yc,set:vc,delete:bc,clear:_c,forEach:Gr(!1,!0)},n={get(i){return Wr(this,i,!0)},get size(){return zr(this,!0)},has(i){return qr.call(this,i,!0)},add:dn("add"),set:dn("set"),delete:dn("delete"),clear:dn("clear"),forEach:Gr(!0,!1)},s={get(i){return Wr(this,i,!0,!0)},get size(){return zr(this,!0)},has(i){return qr.call(this,i,!0)},add:dn("add"),set:dn("set"),delete:dn("delete"),clear:dn("clear"),forEach:Gr(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=Yr(i,!1,!1),n[i]=Yr(i,!0,!1),t[i]=Yr(i,!1,!0),s[i]=Yr(i,!0,!0)}),[e,n,t,s]}const[Gm,Ym,Jm,Xm]=zm();function Qi(e,t){const n=t?e?Xm:Jm:e?Ym:Gm;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(de(n,r)&&r in s?n:s,r,i)}const Qm={get:Qi(!1,!1)},Zm={get:Qi(!1,!0)},eg={get:Qi(!0,!1)},tg={get:Qi(!0,!0)};function If(e,t,n){const s=re(n);if(s!==n&&t.call(e,s)){const r=Hl(e);qt(`Reactive ${r} contains both the raw and reactive versions of the same object${r==="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 Rf=new WeakMap,Nf=new WeakMap,Pf=new WeakMap,kf=new WeakMap;function ng(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function sg(e){return e.__v_skip||!Object.isExtensible(e)?0:ng(Hl(e))}function pt(e){return Mn(e)?e:Zi(e,!1,Um,Qm,Rf)}function Xl(e){return Zi(e,!1,Wm,Zm,Nf)}function Nt(e){return Zi(e,!0,Km,eg,Pf)}function Bt(e){return Zi(e,!0,qm,tg,kf)}function Zi(e,t,n,s,r){if(!me(e))return qt(`value cannot be made reactive: ${String(e)}`),e;if(e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=sg(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function Zn(e){return Mn(e)?Zn(e.__v_raw):!!(e&&e.__v_isReactive)}function Mn(e){return!!(e&&e.__v_isReadonly)}function In(e){return!!(e&&e.__v_isShallow)}function ur(e){return e?!!e.__v_raw:!1}function re(e){const t=e&&e.__v_raw;return t?re(t):e}function Mf(e){return Object.isExtensible(e)&&uf(e,"__v_skip",!0),e}const fr=e=>me(e)?pt(e):e,Ql=e=>me(e)?Nt(e):e,rg="Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free";class $f{constructor(t,n,s,r){this.getter=t,this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Cs(()=>t(this._value),()=>gs(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=s}get value(){const t=re(this);return(!t._cacheable||t.effect.dirty)&&Mt(t._value,t._value=t.effect.run())&&gs(t,4),Zl(t),t.effect._dirtyLevel>=2&&(this._warnRecursive&&qt(rg,` + +getter: `,this.getter),gs(t,2)),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function ig(e,t,n=!1){let s,r;const i=Z(e);i?(s=e,r=()=>{qt("Write operation failed: computed value is readonly")}):(s=e.get,r=e.set);const o=new $f(s,r,i||!r,n);return t&&!n&&(o.effect.onTrack=t.onTrack,o.effect.onTrigger=t.onTrigger),o}function Zl(e){var t;On&&Xn&&(e=re(e),wf(Xn,(t=e.dep)!=null?t:e.dep=Cf(()=>e.dep=void 0,e instanceof $f?e:void 0),{target:e,type:"get",key:"value"}))}function gs(e,t=4,n){e=re(e);const s=e.dep;s&&Ef(s,t,{target:e,type:"set",key:"value",newValue:n})}function Te(e){return!!(e&&e.__v_isRef===!0)}function X(e){return Ff(e,!1)}function ea(e){return Ff(e,!0)}function Ff(e,t){return Te(e)?e:new og(e,t)}class og{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:re(t),this._value=n?t:fr(t)}get value(){return Zl(this),this._value}set value(t){const n=this.__v_isShallow||In(t)||Mn(t);t=n?t:re(t),Mt(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:fr(t),gs(this,4,t))}}function lg(e){gs(e,4,e.value)}function Ge(e){return Te(e)?e.value:e}function ag(e){return Z(e)?e():Ge(e)}const cg={get:(e,t,n)=>Ge(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return Te(r)&&!Te(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function ta(e){return Zn(e)?e:new Proxy(e,cg)}class ug{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:s}=t(()=>Zl(this),()=>gs(this));this._get=n,this._set=s}get value(){return this._get()}set value(t){this._set(t)}}function eo(e){return new ug(e)}function Lf(e){ur(e)||qt("toRefs() expects a reactive object but received a plain one.");const t=H(e)?new Array(e.length):{};for(const n in e)t[n]=Vf(e,n);return t}class fg{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,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 Vm(re(this._object),this._key)}}class dg{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Df(e,t,n){return Te(e)?e:Z(e)?new dg(e):me(e)&&arguments.length>1?Vf(e,t,n):X(e)}function Vf(e,t,n){const s=e[t];return Te(s)?s:new fg(e,t,n)}const pg={GET:"get",HAS:"has",ITERATE:"iterate"},hg={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"};/** +* @vue/runtime-core v3.4.25 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/const es=[];function Xs(e){es.push(e)}function Qs(){es.pop()}function M(e,...t){ln();const n=es.length?es[es.length-1].component:null,s=n&&n.appContext.config.warnHandler,r=mg();if(s)Kt(s,n,11,[e+t.map(i=>{var o,l;return(l=(o=i.toString)==null?void 0:o.call(i))!=null?l:JSON.stringify(i)}).join(""),n&&n.proxy,r.map(({vnode:i})=>`at <${fo(n,i.type)}>`).join(` +`),r]);else{const i=[`[Vue warn]: ${e}`,...t];r.length&&i.push(` +`,...gg(r)),console.warn(...i)}an()}function mg(){let e=es[es.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 s=e.component&&e.component.parent;e=s&&s.vnode}return t}function gg(e){const t=[];return e.forEach((n,s)=>{t.push(...s===0?[]:[` +`],...yg(n))}),t}function yg({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",s=e.component?e.component.parent==null:!1,r=` at <${fo(e.component,e.type,s)}`,i=">"+n;return e.props?[r,...vg(e.props),i]:[r+i]}function vg(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(s=>{t.push(...jf(s,e[s]))}),n.length>3&&t.push(" ..."),t}function jf(e,t,n){return ne(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:Te(t)?(t=jf(e,re(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):Z(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=re(t),n?t:[`${e}=`,t])}function na(e,t){e!==void 0&&(typeof e!="number"?M(`${t} is not a valid number - got ${JSON.stringify(e)}.`):isNaN(e)&&M(`${t} is NaN - the duration expression might be incorrect.`))}const bg={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",WATCH_GETTER:2,2:"WATCH_GETTER",WATCH_CALLBACK:3,3:"WATCH_CALLBACK",WATCH_CLEANUP:4,4:"WATCH_CLEANUP",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER"},to={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 Kt(e,t,n,s){try{return s?e(...s):e()}catch(r){Dn(r,t,n)}}function gt(e,t,n,s){if(Z(e)){const r=Kt(e,t,n,s);return r&&Gi(r)&&r.catch(i=>{Dn(i,t,n)}),r}if(H(e)){const r=[];for(let i=0;i>>1,r=Ze[s],i=hr(r);ijt&&Ze.splice(t,1)}function pr(e){H(e)?ys.push(...e):(!Zt||!Zt.includes(e,e.allowRecurse?yn+1:yn))&&ys.push(e),Hf()}function Sc(e,t,n=dr?jt+1:0){for(t=t||new Map;nhr(n)-hr(s));if(ys.length=0,Zt){Zt.push(...t);return}for(Zt=t,e=e||new Map,yn=0;yne.id==null?1/0:e.id,Cg=(e,t)=>{const n=hr(e)-hr(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Uf(e){Yo=!1,dr=!0,e=e||new Map,Ze.sort(Cg);const t=n=>ra(e,n);try{for(jt=0;jtSg){const s=t.ownerInstance,r=s&&vr(s.type);return Dn(`Maximum recursive updates exceeded${r?` in component <${r}>`:""}. 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 Rn=!1;const hs=new Set;Kl().__VUE_HMR_RUNTIME__={createRecord:Eo(Kf),rerender:Eo(Ag),reload:Eo(Og)};const ss=new Map;function Tg(e){const t=e.type.__hmrId;let n=ss.get(t);n||(Kf(t,e.type),n=ss.get(t)),n.instances.add(e)}function xg(e){ss.get(e.type.__hmrId).instances.delete(e)}function Kf(e,t){return ss.has(e)?!1:(ss.set(e,{initialDef:Zs(t),instances:new Set}),!0)}function Zs(e){return Wd(e)?e.__vccOpts:e}function Ag(e,t){const n=ss.get(e);n&&(n.initialDef.render=t,[...n.instances].forEach(s=>{t&&(s.render=t,Zs(s.type).render=t),s.renderCache=[],Rn=!0,s.effect.dirty=!0,s.update(),Rn=!1}))}function Og(e,t){const n=ss.get(e);if(!n)return;t=Zs(t),wc(n.initialDef,t);const s=[...n.instances];for(const r of s){const i=Zs(r.type);hs.has(i)||(i!==n.initialDef&&wc(i,t),hs.add(i)),r.appContext.propsCache.delete(r.type),r.appContext.emitsCache.delete(r.type),r.appContext.optionsCache.delete(r.type),r.ceReload?(hs.add(i),r.ceReload(t.styles),hs.delete(i)):r.parent?(r.parent.effect.dirty=!0,Ir(r.parent.update)):r.appContext.reload?r.appContext.reload():typeof window<"u"?window.location.reload():console.warn("[HMR] Root or manually mounted instance modified. Full reload required.")}pr(()=>{for(const r of s)hs.delete(Zs(r.type))})}function wc(e,t){oe(e,t);for(const n in e)n!=="__file"&&!(n in t)&&delete e[n]}function Eo(e){return(t,n)=>{try{return e(t,n)}catch(s){console.error(s),console.warn("[HMR] Something went wrong during Vue component hot-reload. Full reload required.")}}}let It,Gs=[],Jo=!1;function Rr(e,...t){It?It.emit(e,...t):Jo||Gs.push({event:e,args:t})}function ia(e,t){var n,s;It=e,It?(It.enabled=!0,Gs.forEach(({event:r,args:i})=>It.emit(r,...i)),Gs=[]):typeof window<"u"&&window.HTMLElement&&!((s=(n=window.navigator)==null?void 0:n.userAgent)!=null&&s.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(i=>{ia(i,t)}),setTimeout(()=>{It||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Jo=!0,Gs=[])},3e3)):(Jo=!0,Gs=[])}function Ig(e,t){Rr("app:init",e,t,{Fragment:De,Text:$n,Comment:$e,Static:Nn})}function Rg(e){Rr("app:unmount",e)}const Xo=oa("component:added"),Wf=oa("component:updated"),Ng=oa("component:removed"),Pg=e=>{It&&typeof It.cleanupBuffer=="function"&&!It.cleanupBuffer(e)&&Ng(e)};/*! #__NO_SIDE_EFFECTS__ */function oa(e){return t=>{Rr(e,t.appContext.app,t.uid,t.parent?t.parent.uid:void 0,t)}}const kg=qf("perf:start"),Mg=qf("perf:end");function qf(e){return(t,n,s)=>{Rr(e,t.appContext.app,t.uid,t,n,s)}}function $g(e,t,n){Rr("component:emit",e.appContext.app,e,t,n)}function Fg(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||ge;{const{emitsOptions:f,propsOptions:[c]}=e;if(f)if(!(t in f))(!c||!(Vt(t)in c))&&M(`Component emitted event "${t}" but it is neither declared in the emits option nor as an "${Vt(t)}" prop.`);else{const d=f[t];Z(d)&&(d(...n)||M(`Invalid event arguments: event validation failed for event "${t}".`))}}let r=n;const i=t.startsWith("update:"),o=i&&t.slice(7);if(o&&o in s){const f=`${o==="modelValue"?"model":o}Modifiers`,{number:c,trim:d}=s[f]||ge;d&&(r=n.map(p=>ne(p)?p.trim():p)),c&&(r=n.map(_i))}$g(e,t,r);{const f=t.toLowerCase();f!==t&&s[Vt(f)]&&M(`Event "${f}" is emitted in component ${fo(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 "${Qe(t)}" instead of "${t}".`)}let l,a=s[l=Vt(t)]||s[l=Vt(Re(t))];!a&&i&&(a=s[l=Vt(Qe(t))]),a&>(a,e,6,r);const u=s[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,gt(u,e,6,r)}}function zf(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!Z(e)){const a=u=>{const f=zf(u,t,!0);f&&(l=!0,oe(o,f))};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!i&&!l?(me(e)&&s.set(e,null),null):(H(i)?i.forEach(a=>o[a]=null):oe(o,i),me(e)&&s.set(e,o),o)}function no(e,t){return!e||!rn(t)?!1:(t=t.slice(2).replace(/Once$/,""),de(e,t[0].toLowerCase()+t.slice(1))||de(e,Qe(t))||de(e,t))}let Ie=null,so=null;function mr(e){const t=Ie;return Ie=e,so=e&&e.type.__scopeId||null,t}function Lg(e){so=e}function Dg(){so=null}const Vg=e=>la;function la(e,t=Ie,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&ol(-1);const i=mr(t);let o;try{o=e(...r)}finally{mr(i),s._d&&ol(1)}return Wf(t),o};return s._n=!0,s._c=!0,s._d=!0,s}let Qo=!1;function Ci(){Qo=!0}function ui(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:a,render:u,renderCache:f,props:c,data:d,setupState:p,ctx:m,inheritAttrs:w}=e,E=mr(e);let y,v;Qo=!1;try{if(n.shapeFlag&4){const S=r||s,O=p.__isScriptSetup?new Proxy(S,{get(C,x,T){return M(`Property '${String(x)}' was accessed via 'this'. Avoid using 'this' in templates.`),Reflect.get(C,x,T)}}):S;y=ut(u.call(O,S,f,Bt(c),p,d,m)),v=l}else{const S=t;l===c&&Ci(),y=ut(S.length>1?S(Bt(c),{get attrs(){return Ci(),l},slots:o,emit:a}):S(Bt(c),null)),v=t.props?l:jg(l)}}catch(S){tr.length=0,Dn(S,e,1),y=xe($e)}let g=y,b;if(y.patchFlag>0&&y.patchFlag&2048&&([g,b]=Gf(y)),v&&w!==!1){const S=Object.keys(v),{shapeFlag:O}=g;if(S.length){if(O&7)i&&S.some(bi)&&(v=Bg(v,i)),g=At(g,v);else if(!Qo&&g.type!==$e){const C=Object.keys(l),x=[],T=[];for(let A=0,k=C.length;A renders non-element root node that cannot be animated."),g.transition=n.transition),b?b(g):y=g,mr(E),y}const Gf=e=>{const t=e.children,n=e.dynamicChildren,s=ro(t,!1);if(s){if(s.patchFlag>0&&s.patchFlag&2048)return Gf(s)}else return[e,void 0];const r=t.indexOf(s),i=n?n.indexOf(s):-1,o=l=>{t[r]=l,n&&(i>-1?n[i]=l:l.patchFlag>0&&(e.dynamicChildren=[...n,l]))};return[ut(s),o]};function ro(e,t=!0){let n;for(let s=0;s0&&n.patchFlag&2048)return ro(n.children)}}else return}return n}const jg=e=>{let t;for(const n in e)(n==="class"||n==="style"||rn(n))&&((t||(t={}))[n]=e[n]);return t},Bg=(e,t)=>{const n={};for(const s in e)(!bi(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n},Ec=e=>e.shapeFlag&7||e.type===$e;function Hg(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:a}=t,u=i.emitsOptions;if((r||l)&&Rn||t.dirs||t.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return s?Cc(s,o,u):!!o;if(a&8){const f=t.dynamicProps;for(let c=0;ce.__isSuspense;let Zo=0;const zg={name:"Suspense",__isSuspense:!0,process(e,t,n,s,r,i,o,l,a,u){if(e==null)Yg(t,n,s,r,i,o,l,a,u);else{if(i&&i.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}Jg(e,t,n,s,r,o,l,a,u)}},hydrate:Xg,create:fa,normalize:Qg},Gg=zg;function gr(e,t){const n=e.props&&e.props[t];Z(n)&&n()}function Yg(e,t,n,s,r,i,o,l,a){const{p:u,o:{createElement:f}}=a,c=f("div"),d=e.suspense=fa(e,r,s,t,c,n,i,o,l,a);u(null,d.pendingBranch=e.ssContent,c,null,s,d,i,o),d.deps>0?(gr(e,"onPending"),gr(e,"onFallback"),u(null,e.ssFallback,t,n,s,null,i,o),vs(d,e.ssFallback)):d.resolve(!1,!0)}function Jg(e,t,n,s,r,i,o,l,{p:a,um:u,o:{createElement:f}}){const c=t.suspense=e.suspense;c.vnode=t,t.el=e.el;const d=t.ssContent,p=t.ssFallback,{activeBranch:m,pendingBranch:w,isInFallback:E,isHydrating:y}=c;if(w)c.pendingBranch=d,Rt(d,w)?(a(w,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():E&&(y||(a(m,p,n,s,r,null,i,o,l),vs(c,p)))):(c.pendingId=Zo++,y?(c.isHydrating=!1,c.activeBranch=w):u(w,r,c),c.deps=0,c.effects.length=0,c.hiddenContainer=f("div"),E?(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():(a(m,p,n,s,r,null,i,o,l),vs(c,p))):m&&Rt(d,m)?(a(m,d,n,s,r,c,i,o,l),c.resolve(!0)):(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0&&c.resolve()));else if(m&&Rt(d,m))a(m,d,n,s,r,c,i,o,l),vs(c,d);else if(gr(t,"onPending"),c.pendingBranch=d,d.shapeFlag&512?c.pendingId=d.component.suspenseId:c.pendingId=Zo++,a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0)c.resolve();else{const{timeout:v,pendingId:g}=c;v>0?setTimeout(()=>{c.pendingId===g&&c.fallback(p)},v):v===0&&c.fallback(p)}}let xc=!1;function fa(e,t,n,s,r,i,o,l,a,u,f=!1){xc||(xc=!0,console[console.info?"info":"log"](" is an experimental feature and its API will likely change."));const{p:c,m:d,um:p,n:m,o:{parentNode:w,remove:E}}=u;let y;const v=Zg(e);v&&t!=null&&t.pendingBranch&&(y=t.pendingId,t.deps++);const g=e.props?Si(e.props.timeout):void 0;na(g,"Suspense timeout");const b=i,S={vnode:e,parent:t,parentComponent:n,namespace:o,container:s,hiddenContainer:r,deps:0,pendingId:Zo++,timeout:typeof g=="number"?g:-1,activeBranch:null,pendingBranch:null,isInFallback:!f,isHydrating:f,isUnmounted:!1,effects:[],resolve(O=!1,C=!1){{if(!O&&!S.pendingBranch)throw new Error("suspense.resolve() is called without a pending branch.");if(S.isUnmounted)throw new Error("suspense.resolve() is called on an already unmounted suspense boundary.")}const{vnode:x,activeBranch:T,pendingBranch:A,pendingId:k,effects:I,parentComponent:V,container:Y}=S;let Q=!1;S.isHydrating?S.isHydrating=!1:O||(Q=T&&A.transition&&A.transition.mode==="out-in",Q&&(T.transition.afterLeave=()=>{k===S.pendingId&&(d(A,Y,i===b?m(T):i,0),pr(I))}),T&&(w(T.el)!==S.hiddenContainer&&(i=m(T)),p(T,V,S,!0)),Q||d(A,Y,i,0)),vs(S,A),S.pendingBranch=null,S.isInFallback=!1;let z=S.parent,G=!1;for(;z;){if(z.pendingBranch){z.effects.push(...I),G=!0;break}z=z.parent}!G&&!Q&&pr(I),S.effects=[],v&&t&&t.pendingBranch&&y===t.pendingId&&(t.deps--,t.deps===0&&!C&&t.resolve()),gr(x,"onResolve")},fallback(O){if(!S.pendingBranch)return;const{vnode:C,activeBranch:x,parentComponent:T,container:A,namespace:k}=S;gr(C,"onFallback");const I=m(x),V=()=>{S.isInFallback&&(c(null,O,A,I,T,null,k,l,a),vs(S,O))},Y=O.transition&&O.transition.mode==="out-in";Y&&(x.transition.afterLeave=V),S.isInFallback=!0,p(x,T,null,!0),Y||V()},move(O,C,x){S.activeBranch&&d(S.activeBranch,O,C,x),S.container=O},next(){return S.activeBranch&&m(S.activeBranch)},registerDep(O,C){const x=!!S.pendingBranch;x&&S.deps++;const T=O.vnode.el;O.asyncDep.catch(A=>{Dn(A,O,0)}).then(A=>{if(O.isUnmounted||S.isUnmounted||S.pendingId!==O.suspenseId)return;O.asyncResolved=!0;const{vnode:k}=O;Xs(k),fl(O,A,!1),T&&(k.el=T);const I=!T&&O.subTree.el;C(O,k,w(T||O.subTree.el),T?null:m(O.subTree),S,o,a),I&&E(I),aa(O,k.el),Qs(),x&&--S.deps===0&&S.resolve()})},unmount(O,C){S.isUnmounted=!0,S.activeBranch&&p(S.activeBranch,n,O,C),S.pendingBranch&&p(S.pendingBranch,n,O,C)}};return S}function Xg(e,t,n,s,r,i,o,l,a){const u=t.suspense=fa(t,s,n,e.parentNode,document.createElement("div"),null,r,i,o,l,!0),f=a(e,u.pendingBranch=t.ssContent,n,u,i,o);return u.deps===0&&u.resolve(!1,!0),f}function Qg(e){const{shapeFlag:t,children:n}=e,s=t&32;e.ssContent=Ac(s?n.default:n),e.ssFallback=s?Ac(n.fallback):xe($e)}function Ac(e){let t;if(Z(e)){const n=is&&e._c;n&&(e._d=!1,co()),e=e(),n&&(e._d=!0,t=ft,kd())}if(H(e)){const n=ro(e);!n&&e.filter(s=>s!==ca).length>0&&M(" slots expect a single root node."),e=n}return e=ut(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function Jf(e,t){t&&t.pendingBranch?H(e)?t.effects.push(...e):t.effects.push(e):pr(e)}function vs(e,t){e.activeBranch=t;const{vnode:n,parentComponent:s}=e;let r=t.el;for(;!r&&t.component;)t=t.component.subTree,r=t.el;n.el=r,s&&s.subTree===n&&(s.vnode.el=r,aa(s,r))}function Zg(e){var t;return((t=e.props)==null?void 0:t.suspensible)!=null&&e.props.suspensible!==!1}const Xf=Symbol.for("v-scx"),Qf=()=>{{const e=Ct(Xf);return e||M("Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build."),e}};function da(e,t){return Nr(e,null,t)}function Zf(e,t){return Nr(e,null,oe({},t,{flush:"post"}))}function ed(e,t){return Nr(e,null,oe({},t,{flush:"sync"}))}const Jr={};function be(e,t,n){return Z(t)||M("`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."),Nr(e,t,n)}function Nr(e,t,{immediate:n,deep:s,flush:r,once:i,onTrack:o,onTrigger:l}=ge){if(t&&i){const C=t;t=(...x)=>{C(...x),O()}}s!==void 0&&typeof s=="number"&&M('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&&M('watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.'),s!==void 0&&M('watch() "deep" option is only respected when using the watch(source, callback, options?) signature.'),i!==void 0&&M('watch() "once" option is only respected when using the watch(source, callback, options?) signature.'));const a=C=>{M("Invalid watch source: ",C,"A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.")},u=ke,f=C=>s===!0?C:qn(C,s===!1?1:void 0);let c,d=!1,p=!1;if(Te(e)?(c=()=>e.value,d=In(e)):Zn(e)?(c=()=>f(e),d=!0):H(e)?(p=!0,d=e.some(C=>Zn(C)||In(C)),c=()=>e.map(C=>{if(Te(C))return C.value;if(Zn(C))return f(C);if(Z(C))return Kt(C,u,2);a(C)})):Z(e)?t?c=()=>Kt(e,u,2):c=()=>(m&&m(),gt(e,u,3,[w])):(c=Pe,a(e)),t&&s){const C=c;c=()=>qn(C())}let m,w=C=>{m=b.onStop=()=>{Kt(C,u,4),m=b.onStop=void 0}},E;if(Mr)if(w=Pe,t?n&>(t,u,3,[c(),p?[]:void 0,w]):c(),r==="sync"){const C=Qf();E=C.__watcherHandles||(C.__watcherHandles=[])}else return Pe;let y=p?new Array(e.length).fill(Jr):Jr;const v=()=>{if(!(!b.active||!b.dirty))if(t){const C=b.run();(s||d||(p?C.some((x,T)=>Mt(x,y[T])):Mt(C,y)))&&(m&&m(),gt(t,u,3,[C,y===Jr?void 0:p&&y[0]===Jr?[]:y,w]),y=C)}else b.run()};v.allowRecurse=!!t;let g;r==="sync"?g=v:r==="post"?g=()=>ze(v,u&&u.suspense):(v.pre=!0,u&&(v.id=u.uid),g=()=>Ir(v));const b=new Cs(c,Pe,g),S=zl(),O=()=>{b.stop(),S&&Bl(S.effects,b)};return b.onTrack=o,b.onTrigger=l,t?n?v():y=b.run():r==="post"?ze(b.run.bind(b),u&&u.suspense):b.run(),E&&E.push(O),O}function ey(e,t,n){const s=this.proxy,r=ne(e)?e.includes(".")?td(s,e):()=>s[e]:e.bind(s,s);let i;Z(t)?i=t:(i=t.handler,n=t);const o=os(this),l=Nr(r,i.bind(s),n);return o(),l}function td(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r0){if(n>=t)return e;n++}if(s=s||new Set,s.has(e))return e;if(s.add(e),Te(e))qn(e.value,t,n,s);else if(H(e))for(let r=0;r{qn(r,t,n,s)});else if(af(e))for(const r in e)qn(e[r],t,n,s);return e}function nd(e){cf(e)&&M("Do not use built-in directive ids as custom directive id: "+e)}function ty(e,t){if(Ie===null)return M("withDirectives can only be used inside render functions."),e;const n=uo(Ie)||Ie.proxy,s=e.dirs||(e.dirs=[]);for(let r=0;r{e.isMounted=!0}),ao(()=>{e.isUnmounting=!0}),e}const _t=[Function,Array],ha={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:_t,onEnter:_t,onAfterEnter:_t,onEnterCancelled:_t,onBeforeLeave:_t,onLeave:_t,onAfterLeave:_t,onLeaveCancelled:_t,onBeforeAppear:_t,onAppear:_t,onAfterAppear:_t,onAppearCancelled:_t},ny={name:"BaseTransition",props:ha,setup(e,{slots:t}){const n=Ye(),s=pa();return()=>{const r=t.default&&io(t.default(),!0);if(!r||!r.length)return;let i=r[0];if(r.length>1){let d=!1;for(const p of r)if(p.type!==$e){if(d){M(" can only be used on a single element or component. Use for lists.");break}i=p,d=!0}}const o=re(e),{mode:l}=o;if(l&&l!=="in-out"&&l!=="out-in"&&l!=="default"&&M(`invalid mode: ${l}`),s.isLeaving)return Co(i);const a=Oc(i);if(!a)return Co(i);const u=Ts(a,o,s,n);rs(a,u);const f=n.subTree,c=f&&Oc(f);if(c&&c.type!==$e&&!Rt(a,c)){const d=Ts(c,o,s,n);if(rs(c,d),l==="out-in")return s.isLeaving=!0,d.afterLeave=()=>{s.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},Co(i);l==="in-out"&&a.type!==$e&&(d.delayLeave=(p,m,w)=>{const E=rd(s,c);E[String(c.key)]=c,p[vn]=()=>{m(),p[vn]=void 0,delete u.delayedLeave},u.delayedLeave=w})}return i}}},sd=ny;function rd(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function Ts(e,t,n,s){const{appear:r,mode:i,persisted:o=!1,onBeforeEnter:l,onEnter:a,onAfterEnter:u,onEnterCancelled:f,onBeforeLeave:c,onLeave:d,onAfterLeave:p,onLeaveCancelled:m,onBeforeAppear:w,onAppear:E,onAfterAppear:y,onAppearCancelled:v}=t,g=String(e.key),b=rd(n,e),S=(x,T)=>{x&>(x,s,9,T)},O=(x,T)=>{const A=T[1];S(x,T),H(x)?x.every(k=>k.length<=1)&&A():x.length<=1&&A()},C={mode:i,persisted:o,beforeEnter(x){let T=l;if(!n.isMounted)if(r)T=w||l;else return;x[vn]&&x[vn](!0);const A=b[g];A&&Rt(e,A)&&A.el[vn]&&A.el[vn](),S(T,[x])},enter(x){let T=a,A=u,k=f;if(!n.isMounted)if(r)T=E||a,A=y||u,k=v||f;else return;let I=!1;const V=x[Xr]=Y=>{I||(I=!0,Y?S(k,[x]):S(A,[x]),C.delayedLeave&&C.delayedLeave(),x[Xr]=void 0)};T?O(T,[x,V]):V()},leave(x,T){const A=String(e.key);if(x[Xr]&&x[Xr](!0),n.isUnmounting)return T();S(c,[x]);let k=!1;const I=x[vn]=V=>{k||(k=!0,T(),V?S(m,[x]):S(p,[x]),x[vn]=void 0,b[A]===e&&delete b[A])};b[A]=e,d?O(d,[x,I]):I()},clone(x){return Ts(x,t,n,s)}};return C}function Co(e){if(Vs(e))return e=At(e),e.children=null,e}function Oc(e){if(!Vs(e))return e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&Z(n.default))return n.default()}}function rs(e,t){e.shapeFlag&6&&e.component?rs(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 io(e,t=!1,n){let s=[],r=0;for(let i=0;i1)for(let i=0;i!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function sy(e){Z(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:r=200,timeout:i,suspensible:o=!0,onError:l}=e;let a=null,u,f=0;const c=()=>(f++,a=null,d()),d=()=>{let p;return a||(p=a=t().catch(m=>{if(m=m instanceof Error?m:new Error(String(m)),l)return new Promise((w,E)=>{l(m,()=>w(c()),()=>E(m),f+1)});throw m}).then(m=>{if(p!==a&&a)return a;if(m||M("Async component loader resolved to undefined. If you are using retry(), make sure to return its return value."),m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),m&&!me(m)&&!Z(m))throw new Error(`Invalid async component load result: ${m}`);return u=m,m}))};return Pr({name:"AsyncComponentWrapper",__asyncLoader:d,get __asyncResolved(){return u},setup(){const p=ke;if(u)return()=>To(u,p);const m=v=>{a=null,Dn(v,p,13,!s)};if(o&&p.suspense||Mr)return d().then(v=>()=>To(v,p)).catch(v=>(m(v),()=>s?xe(s,{error:v}):null));const w=X(!1),E=X(),y=X(!!r);return r&&setTimeout(()=>{y.value=!1},r),i!=null&&setTimeout(()=>{if(!w.value&&!E.value){const v=new Error(`Async component timed out after ${i}ms.`);m(v),E.value=v}},i),d().then(()=>{w.value=!0,p.parent&&Vs(p.parent.vnode)&&(p.parent.effect.dirty=!0,Ir(p.parent.update))}).catch(v=>{m(v),E.value=v}),()=>{if(w.value&&u)return To(u,p);if(E.value&&s)return xe(s,{error:E.value});if(n&&!y.value)return xe(n)}}})}function To(e,t){const{ref:n,props:s,children:r,ce:i}=t.vnode,o=xe(e,s,r);return o.ref=n,o.ce=i,delete t.vnode.ce,o}const Vs=e=>e.type.__isKeepAlive,ry={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Ye(),s=n.ctx;if(!s.renderer)return()=>{const v=t.default&&t.default();return v&&v.length===1?v[0]:v};const r=new Map,i=new Set;let o=null;n.__v_cache=r;const l=n.suspense,{renderer:{p:a,m:u,um:f,o:{createElement:c}}}=s,d=c("div");s.activate=(v,g,b,S,O)=>{const C=v.component;u(v,g,b,0,l),a(C.vnode,v,g,b,C,l,S,v.slotScopeIds,O),ze(()=>{C.isDeactivated=!1,C.a&&En(C.a);const x=v.props&&v.props.onVnodeMounted;x&&at(x,C.parent,v)},l),Xo(C)},s.deactivate=v=>{const g=v.component;u(v,d,null,1,l),ze(()=>{g.da&&En(g.da);const b=v.props&&v.props.onVnodeUnmounted;b&&at(b,g.parent,v),g.isDeactivated=!0},l),Xo(g)};function p(v){xo(v),f(v,n,l,!0)}function m(v){r.forEach((g,b)=>{const S=vr(g.type);S&&(!v||!v(S))&&w(b)})}function w(v){const g=r.get(v);!o||!Rt(g,o)?p(g):o&&xo(o),r.delete(v),i.delete(v)}be(()=>[e.include,e.exclude],([v,g])=>{v&&m(b=>Ys(v,b)),g&&m(b=>!Ys(g,b))},{flush:"post",deep:!0});let E=null;const y=()=>{E!=null&&r.set(E,Ao(n.subTree))};return cs(y),lo(y),ao(()=>{r.forEach(v=>{const{subTree:g,suspense:b}=n,S=Ao(g);if(v.type===S.type&&v.key===S.key){xo(S);const O=S.component.da;O&&ze(O,b);return}p(v)})}),()=>{if(E=null,!t.default)return o=null;const v=t.default(),g=v[0];if(v.length>1)return M("KeepAlive should contain exactly one component child."),o=null,v;if(!on(g)||!(g.shapeFlag&4)&&!(g.shapeFlag&128))return o=null,g;let b=Ao(g);const S=b.type,O=vr(ts(b)?b.type.__asyncResolved||{}:S),{include:C,exclude:x,max:T}=e;if(C&&(!O||!Ys(C,O))||x&&O&&Ys(x,O))return o=b,g;const A=b.key==null?S:b.key,k=r.get(A);return b.el&&(b=At(b),g.shapeFlag&128&&(g.ssContent=b)),E=A,k?(b.el=k.el,b.component=k.component,b.transition&&rs(b,b.transition),b.shapeFlag|=512,i.delete(A),i.add(A)):(i.add(A),T&&i.size>parseInt(T,10)&&w(i.values().next().value)),b.shapeFlag|=256,o=b,Yf(g.type)?g:b}}},iy=ry;function Ys(e,t){return H(e)?e.some(n=>Ys(n,t)):ne(e)?e.split(",").includes(t):pm(e)?e.test(t):!1}function id(e,t){ld(e,"a",t)}function od(e,t){ld(e,"da",t)}function ld(e,t,n=ke){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(oo(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Vs(r.parent.vnode)&&oy(s,t,n,r),r=r.parent}}function oy(e,t,n,s){const r=oo(t,e,s,!0);kr(()=>{Bl(s[t],r)},n)}function xo(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Ao(e){return e.shapeFlag&128?e.ssContent:e}function oo(e,t,n=ke,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;ln();const l=os(n),a=gt(t,n,e,o);return l(),an(),a});return s?r.unshift(i):r.push(i),i}else{const r=Vt(to[e].replace(/ hook$/,""));M(`${r} 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 cn=e=>(t,n=ke)=>(!Mr||e==="sp")&&oo(e,(...s)=>t(...s),n),ad=cn("bm"),cs=cn("m"),cd=cn("bu"),lo=cn("u"),ao=cn("bum"),kr=cn("um"),ud=cn("sp"),fd=cn("rtg"),dd=cn("rtc");function pd(e,t=ke){oo("ec",e,t)}function ly(e,t,n,s){let r;const i=n&&n[s];if(H(e)||ne(e)){r=new Array(e.length);for(let o=0,l=e.length;ot(o,l,void 0,i&&i[l]));else{const o=Object.keys(e);r=new Array(o.length);for(let l=0,a=o.length;l{const i=s.fn(...r);return i&&(i.key=s.key),i}:s.fn)}return e}function cy(e,t,n={},s,r){if(Ie.isCE||Ie.parent&&ts(Ie.parent)&&Ie.parent.isCE)return t!=="default"&&(n.name=t),xe("slot",n,s&&s());let i=e[t];i&&i.length>1&&(M("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."),i=()=>[]),i&&i._c&&(i._d=!1),co();const o=i&&hd(i(n)),l=va(De,{key:n.key||o&&o.key||`_${t}`},o||(s?s():[]),o&&e._===1?64:-2);return!r&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),i&&i._c&&(i._d=!0),l}function hd(e){return e.some(t=>on(t)?!(t.type===$e||t.type===De&&!hd(t.children)):!0)?e:null}function uy(e,t){const n={};if(!me(e))return M("v-on with no argument expects an object value."),n;for(const s in e)n[t&&/[A-Z]/.test(s)?`on:${s}`:Vt(s)]=e[s];return n}const el=e=>e?jd(e)?uo(e)||e.proxy:el(e.parent):null,ns=oe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>Bt(e.props),$attrs:e=>Bt(e.attrs),$slots:e=>Bt(e.slots),$refs:e=>Bt(e.refs),$parent:e=>el(e.parent),$root:e=>el(e.root),$emit:e=>e.emit,$options:e=>ga(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Ir(e.update)}),$nextTick:e=>e.n||(e.n=Vn.bind(e.proxy)),$watch:e=>ey.bind(e)}),ma=e=>e==="_"||e==="$",Oo=(e,t)=>e!==ge&&!e.__isScriptSetup&&de(e,t),er={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:a}=e;if(t==="__isVue")return!0;let u;if(t[0]!=="$"){const p=o[t];if(p!==void 0)switch(p){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(Oo(s,t))return o[t]=1,s[t];if(r!==ge&&de(r,t))return o[t]=2,r[t];if((u=e.propsOptions[0])&&de(u,t))return o[t]=3,i[t];if(n!==ge&&de(n,t))return o[t]=4,n[t];tl&&(o[t]=0)}}const f=ns[t];let c,d;if(f)return t==="$attrs"?(tt(e.attrs,"get",""),Ci()):t==="$slots"&&tt(e,"get",t),f(e);if((c=l.__cssModules)&&(c=c[t]))return c;if(n!==ge&&de(n,t))return o[t]=4,n[t];if(d=a.config.globalProperties,de(d,t))return d[t];Ie&&(!ne(t)||t.indexOf("__v")!==0)&&(r!==ge&&ma(t[0])&&de(r,t)?M(`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===Ie&&M(`Property ${JSON.stringify(t)} was accessed during render but is not defined on instance.`))},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return Oo(r,t)?(r[t]=n,!0):r.__isScriptSetup&&de(r,t)?(M(`Cannot mutate - - + + + - +
+
diff --git a/04-mvc/404.html b/04-mvc/404.html index eaef411..2ab2340 100644 --- a/04-mvc/404.html +++ b/04-mvc/404.html @@ -7,15 +7,15 @@ - - - - + + + - +
+
diff --git a/04-mvc/assets/04-servlet-XFqEZfYA.js b/04-mvc/assets/04-servlet-XFqEZfYA.js new file mode 100644 index 0000000..6177740 --- /dev/null +++ b/04-mvc/assets/04-servlet-XFqEZfYA.js @@ -0,0 +1 @@ +const s="/sa2024/04-mvc/assets/04-servlet-Bggp2EK4.png";export{s as _}; diff --git a/04-mvc/assets/10-BwZVUisL.js b/04-mvc/assets/10-BwZVUisL.js new file mode 100644 index 0000000..0c9a911 --- /dev/null +++ b/04-mvc/assets/10-BwZVUisL.js @@ -0,0 +1 @@ +import{o,c as r,k as a,q as n,s as c,A as s,e as t}from"./modules/vue-DbJrfnh0.js";import{I as i}from"./slidev/default-4y82b8Am.js";import{_,af as e}from"./index-CdEcnseE.js";import{p as l,u as p,f as m}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const d="/sa2024/04-mvc/assets/04-bs-CBP1bW-A.png",u=t("h1",null,"B/S架构:更便于部署和管理",-1),f=t("br",null,null,-1),h=t("img",{src:d,class:"m-10 h-60"},null,-1),b=t("p",null,"A browser-based architecture runs an application directly from an internet browser on any device that has a browser (laptop, tablet, smartphone).",-1),v={__name:"10",setup(x){return l(e),p(),(B,w)=>(o(),r(i,n(c(s(m)(s(e),9))),{default:a(()=>[u,f,h,b]),_:1},16))}},C=_(v,[["__file","/@slidev/slides/10.md"]]);export{C as default}; diff --git a/04-mvc/assets/11-Djz-R7fc.js b/04-mvc/assets/11-Djz-R7fc.js new file mode 100644 index 0000000..176989b --- /dev/null +++ b/04-mvc/assets/11-Djz-R7fc.js @@ -0,0 +1,9 @@ +import{_ as e}from"./slidev/CodeBlockWrapper-DIJjzBUS.js";import{o as k,c as n,k as t,a6 as i,l as r,m as p,q as d,s as o,A as a,e as s}from"./modules/vue-DbJrfnh0.js";import{I as g}from"./slidev/two-cols-roZnz61j.js";import{_ as c,ag as h}from"./index-CdEcnseE.js";import{p as y,u as _,f as m}from"./slidev/context-CH0Estdd.js";import"./modules/unplugin-icons-CMs28sA9.js";import"./modules/shiki-nC3sHFQh.js";const f="/sa2024/04-mvc/assets/04-web-Bph8N5yt.png",u="/sa2024/04-mvc/assets/04-web-server-D2dpwxUW.png",D=s("h1",null,"Web Application",-1),E=s("br",null,null,-1),F=s("img",{src:f,class:"m-10 h-20"},null,-1),b=s("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[s("code",{class:"language-html"},[s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),s("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"html"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),s("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"head"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),s("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"title"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),s("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"This is a title"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),s("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"body"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),s("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"p"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),s("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Hello world!"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")])])],-1),v=s("img",{src:u,class:"m-30 h-60"},null,-1),B={__name:"11",setup(x){return y(h),_(),(w,A)=>{const l=e;return k(),n(g,d(o(a(m)(a(h),10))),{right:t(P=>[v]),default:t(()=>[D,E,i(" https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol "),F,r(l,p({},{ranges:[]}),{default:t(()=>[b]),_:1},16)]),_:1},16)}}},j=c(B,[["__file","/@slidev/slides/11.md"]]);export{j as default}; diff --git a/04-mvc/assets/12-CTq8936B.js b/04-mvc/assets/12-CTq8936B.js new file mode 100644 index 0000000..6f72c0f --- /dev/null +++ b/04-mvc/assets/12-CTq8936B.js @@ -0,0 +1 @@ +import{o as l,c as a,k as t,q as r,s as n,A as e,e as s}from"./modules/vue-DbJrfnh0.js";import{I as i}from"./slidev/two-cols-roZnz61j.js";import{_ as u,ah as o}from"./index-CdEcnseE.js";import{p as m,u as c,f as _}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const p="/sa2024/04-mvc/assets/04-cgi-BUF9RK4J.png",d=s("h1",null,"CGI",-1),f=s("br",null,null,-1),h=s("p",null,"Common Gateway Interface",-1),g=s("ul",null,[s("li",null,[s("small",null,"Forward requests to external programs")]),s("li",null,[s("small",null,"Spawn one process for each new request")]),s("li",null,[s("small",null,"Communicate via Standard input/output")]),s("li",null,[s("small",null,"Process terminates after request is handled")])],-1),x=s("img",{src:p,class:"m-10 h-80"},null,-1),v={__name:"12",setup(w){return m(o),c(),(C,P)=>(l(),a(i,r(n(e(_)(e(o),11))),{right:t(q=>[x]),default:t(()=>[d,f,h,g]),_:1},16))}},y=u(v,[["__file","/@slidev/slides/12.md"]]);export{y as default}; diff --git a/04-mvc/assets/17-DwjmKtbU.js b/04-mvc/assets/17-DwjmKtbU.js new file mode 100644 index 0000000..3be7607 --- /dev/null +++ b/04-mvc/assets/17-DwjmKtbU.js @@ -0,0 +1 @@ +import{o,c as r,k as a,q as n,s as _,A as t,e as s}from"./modules/vue-DbJrfnh0.js";import{I as c}from"./slidev/default-4y82b8Am.js";import{_ as m,am as e}from"./index-CdEcnseE.js";import{p as l,u as i,f as p}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const d="/sa2024/04-mvc/assets/04-doget-dmV3Se7C.png",u=s("h1",null,[s("code",null,"doGet()")],-1),f=s("br",null,null,-1),h=s("img",{src:d,class:"m-10 h-80"},null,-1),x={__name:"17",setup(g){return l(e),i(),(v,k)=>(o(),r(c,n(_(t(p)(t(e),16))),{default:a(()=>[u,f,h]),_:1},16))}},V=m(x,[["__file","/@slidev/slides/17.md"]]);export{V as default}; diff --git a/04-mvc/assets/18-CzERz7Hg.js b/04-mvc/assets/18-CzERz7Hg.js new file mode 100644 index 0000000..c4861a9 --- /dev/null +++ b/04-mvc/assets/18-CzERz7Hg.js @@ -0,0 +1 @@ +import{o as r,c as a,k as t,q as n,s as i,A as e,e as s,a6 as l}from"./modules/vue-DbJrfnh0.js";import{I as u}from"./slidev/two-cols-roZnz61j.js";import{_,an as o}from"./index-CdEcnseE.js";import{p as c,u as m,f as p}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const d="/sa2024/04-mvc/assets/04-change-CXQvsy6b.png",f=s("h1",null,"问题来了",-1),h=s("ul",null,[s("li",null,[l("Context "),s("ul",null,[s("li",null,"人机交互界面设计")])]),s("li",null,[l("Problem "),s("ul",null,[s("li",null,"功能的变化要求用户界面的改变"),s("li",null,"平台的改变要求用户界面随之改变"),s("li",null,"界面的改变需足够方便,且不应影响系统功能本身")])])],-1),x=s("p",null,[s("br"),s("br"),s("br")],-1),b=s("img",{src:d,class:"m-10 h-60"},null,-1),g={__name:"18",setup(v){return c(o),m(),(P,C)=>(r(),a(u,n(i(e(p)(e(o),17))),{right:t(k=>[x,b]),default:t(()=>[f,h]),_:1},16))}},V=_(g,[["__file","/@slidev/slides/18.md"]]);export{V as default}; diff --git a/04-mvc/assets/19-DTIgI3U8.js b/04-mvc/assets/19-DTIgI3U8.js new file mode 100644 index 0000000..9cc73e5 --- /dev/null +++ b/04-mvc/assets/19-DTIgI3U8.js @@ -0,0 +1 @@ +import{o as e,c as r,k as a,q as n,s as _,A as t,e as s}from"./modules/vue-DbJrfnh0.js";import{I as c}from"./slidev/default-4y82b8Am.js";import{_ as i,ao as o}from"./index-CdEcnseE.js";import{p as m,u as p,f as l}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const u="/sa2024/04-mvc/assets/04-ui-DpZrudCE.png",d=s("h1",null,"做一些改变",-1),f=s("br",null,null,-1),h=s("img",{src:u,class:"h-80"},null,-1),x={__name:"19",setup(v){return m(o),p(),(g,k)=>(e(),r(c,n(_(t(l)(t(o),18))),{default:a(()=>[d,f,h]),_:1},16))}},j=i(x,[["__file","/@slidev/slides/19.md"]]);export{j as default}; diff --git a/04-mvc/assets/2-C-oyZrTu.js b/04-mvc/assets/2-C-oyZrTu.js new file mode 100644 index 0000000..8e5c923 --- /dev/null +++ b/04-mvc/assets/2-C-oyZrTu.js @@ -0,0 +1 @@ +import{o as a,c as r,k as t,q as c,s as _,A as o,e as s}from"./modules/vue-DbJrfnh0.js";import{I as i}from"./slidev/two-cols-roZnz61j.js";import{_ as m,a7 as e}from"./index-CdEcnseE.js";import{p as n,u as p,f as l}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const u="/sa2024/04-mvc/assets/04-stack-UziiBQyA.png",d="/sa2024/04-mvc/assets/04-3layers-CeGVNuOU.png",f=s("h1",null,"回顾",-1),h=s("img",{src:u,class:"m-30 h-80"},null,-1),g=s("img",{src:d,class:"m-10 h-70"},null,-1),v={__name:"2",setup(x){return n(e),p(),(k,B)=>(a(),r(i,c(_(o(l)(o(e),1))),{right:t(P=>[g]),default:t(()=>[f,h]),_:1},16))}},N=m(v,[["__file","/@slidev/slides/2.md"]]);export{N as default}; diff --git a/04-mvc/assets/21-XBSSNZai.js b/04-mvc/assets/21-XBSSNZai.js new file mode 100644 index 0000000..c360a61 --- /dev/null +++ b/04-mvc/assets/21-XBSSNZai.js @@ -0,0 +1 @@ +import{o,c as r,k as a,q as l,s as i,A as e,e as t,a6 as n}from"./modules/vue-DbJrfnh0.js";import{I as _}from"./slidev/default-4y82b8Am.js";import{_ as c,at as s}from"./index-CdEcnseE.js";import{p as m,u as p,f as d}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const u="/sa2024/04-mvc/assets/04-thymeleaf-CMwemjE1.png",h=t("h1",null,"UI Template Demo",-1),f=t("br",null,null,-1),w=t("img",{src:u,class:"h-20"},null,-1),b=t("br",null,null,-1),v=t("p",null,[t("a",{href:"https://www.bilibili.com/video/BV1zE411M7HM?p=2",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV1zE411M7HM?p=2"),n(" (5:12)")],-1),g=t("br",null,null,-1),x=t("div",{style:{"text-align":"right"}},"sa-spring/thymeleaf3-servlet-helloworld",-1),B={__name:"21",setup(M){return m(s),p(),(k,y)=>(o(),r(_,l(i(e(d)(e(s),20))),{default:a(()=>[h,f,w,b,v,g,x]),_:1},16))}},P=c(B,[["__file","/@slidev/slides/21.md"]]);export{P as default}; diff --git a/04-mvc/assets/22-BH8Ywq6a.js b/04-mvc/assets/22-BH8Ywq6a.js new file mode 100644 index 0000000..8e42cd7 --- /dev/null +++ b/04-mvc/assets/22-BH8Ywq6a.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as _,s as c,A as s,e}from"./modules/vue-DbJrfnh0.js";import{I as m}from"./slidev/default-4y82b8Am.js";import{_ as n,au as t}from"./index-CdEcnseE.js";import{p as i,u as p,f as l}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const d="/sa2024/04-mvc/assets/04-mvc-_EAdCB5M.png",f=e("h1",null,"做更多改变",-1),u=e("img",{src:d,class:"h-80"},null,-1),h={__name:"22",setup(v){return i(t),p(),(x,B)=>(o(),a(m,_(c(s(l)(s(t),21))),{default:r(()=>[f,u]),_:1},16))}},I=n(h,[["__file","/@slidev/slides/22.md"]]);export{I as default}; diff --git a/04-mvc/assets/23-7XoRMmyG.js b/04-mvc/assets/23-7XoRMmyG.js new file mode 100644 index 0000000..50041d7 --- /dev/null +++ b/04-mvc/assets/23-7XoRMmyG.js @@ -0,0 +1 @@ +import{o as r,c as l,k as s,q as n,s as a,A as o,e as t}from"./modules/vue-DbJrfnh0.js";import{I as i}from"./slidev/two-cols-roZnz61j.js";import{_,av as e}from"./index-CdEcnseE.js";import{p as c,u as p,f as u}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const m="/sa2024/04-mvc/assets/04-mvc-generic-Db7lVaAE.png",d=t("h1",null,"MVC",-1),f=t("br",null,null,-1),h=t("p",null,"系统分割为processing, output和input三个部分",-1),g=t("ul",null,[t("li",null,"“Model”: processing,核心数据功能"),t("li",null,"“View”: output, 从Model获得数据显示给用户"),t("li",null,"“Controller”: input, 处理事件操作模型")],-1),v=t("p",null,[t("br"),t("br"),t("br")],-1),b=t("img",{src:m,class:"h-80"},null,-1),x={__name:"23",setup(C){return c(e),p(),(P,V)=>(r(),l(i,n(a(o(u)(o(e),22))),{right:s(k=>[v,b]),default:s(()=>[d,f,h,g]),_:1},16))}},j=_(x,[["__file","/@slidev/slides/23.md"]]);export{j as default}; diff --git a/04-mvc/assets/25-DpUtRdZO.js b/04-mvc/assets/25-DpUtRdZO.js new file mode 100644 index 0000000..1827bb8 --- /dev/null +++ b/04-mvc/assets/25-DpUtRdZO.js @@ -0,0 +1 @@ +import{o as a,c as o,k as t,a6 as c,q as i,s as n,A as e,e as s}from"./modules/vue-DbJrfnh0.js";import{I as l}from"./slidev/two-cols-roZnz61j.js";import{_ as p,ax as r}from"./index-CdEcnseE.js";import{p as _,u as m,f as d}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const u="/sa2024/04-mvc/assets/04-gef-BsCEDqVy.png",f="/sa2024/04-mvc/assets/04-gef-mvc-RVj8JCvT.png",h=s("h1",null,"GEF",-1),g=s("br",null,null,-1),v=s("img",{src:u,class:"h-80"},null,-1),x=s("p",null,[s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("img",{src:f,class:"h-60"})],-1),b={__name:"25",setup(k){return _(r),m(),(B,C)=>(a(),o(l,i(n(e(d)(e(r),24))),{right:t(E=>[x]),default:t(()=>[h,g,c(" The Graphical Editing Framework (GEF) allows developers to take an existing application model and quickly create a rich graphical editor. "),v]),_:1},16))}},w=p(b,[["__file","/@slidev/slides/25.md"]]);export{w as default}; diff --git a/04-mvc/assets/26-B8d1mFor.js b/04-mvc/assets/26-B8d1mFor.js new file mode 100644 index 0000000..f4c67e1 --- /dev/null +++ b/04-mvc/assets/26-B8d1mFor.js @@ -0,0 +1 @@ +import{o as e,c as r,k as a,q as n,s as _,A as t,e as s}from"./modules/vue-DbJrfnh0.js";import{I as c}from"./slidev/default-4y82b8Am.js";import{_ as i,aC as o}from"./index-CdEcnseE.js";import{p as m,u as p,f as l}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const u="/sa2024/04-mvc/assets/04-spring-mvc-DwJOlXON.png",d=s("h1",null,"Spring MVC",-1),f=s("br",null,null,-1),h=s("img",{src:u,class:"h-80"},null,-1),g={__name:"26",setup(v){return m(o),p(),(x,C)=>(e(),r(c,n(_(t(l)(t(o),25))),{default:a(()=>[d,f,h]),_:1},16))}},N=i(g,[["__file","/@slidev/slides/26.md"]]);export{N as default}; diff --git a/04-mvc/assets/27-B1uJdkpj.js b/04-mvc/assets/27-B1uJdkpj.js new file mode 100644 index 0000000..f44bd49 --- /dev/null +++ b/04-mvc/assets/27-B1uJdkpj.js @@ -0,0 +1 @@ +import{o,c as r,k as i,q as n,s as a,A as s,e as t}from"./modules/vue-DbJrfnh0.js";import{I as _}from"./slidev/default-4y82b8Am.js";import{_ as l,aD as e}from"./index-CdEcnseE.js";import{p as c,u as p,f as d}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const m="/sa2024/04-mvc/assets/04-spring-web-BtGPvBC7.png",u=t("h1",null,"Spring Web",-1),f=t("img",{src:m,class:"h-80"},null,-1),g=t("br",null,null,-1),h=t("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1zE411M7HM?p=3 (1:10)",-1),v=t("br",null,null,-1),b=t("div",{style:{"text-align":"right"}},"spring-guides/ gs-serving-web-content",-1),x={__name:"27",setup(w){return c(e),p(),(B,P)=>(o(),r(_,n(a(s(d)(s(e),26))),{default:i(()=>[u,f,g,h,v,b]),_:1},16))}},M=l(x,[["__file","/@slidev/slides/27.md"]]);export{M as default}; diff --git a/04-mvc/assets/29-wjVkWkPI.js b/04-mvc/assets/29-wjVkWkPI.js new file mode 100644 index 0000000..66868a4 --- /dev/null +++ b/04-mvc/assets/29-wjVkWkPI.js @@ -0,0 +1 @@ +import{o,c as r,k as a,q as i,s as n,A as s,e as t}from"./modules/vue-DbJrfnh0.js";import{I as c}from"./slidev/default-4y82b8Am.js";import{_ as p,aF as e}from"./index-CdEcnseE.js";import{p as _,u as l,f as m}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const d="/sa2024/04-mvc/assets/04-petclinic-n45qSv-a.png",f=t("h1",null,"Spring Petclinic",-1),u=t("img",{src:d,class:"h-80"},null,-1),g=t("div",{style:{"text-align":"right"}},"sa-spring/spring-petclinic",-1),h={__name:"29",setup(v){return _(e),l(),(x,P)=>(o(),r(c,i(n(s(m)(s(e),28))),{default:a(()=>[f,u,g]),_:1},16))}},C=p(h,[["__file","/@slidev/slides/29.md"]]);export{C as default}; diff --git a/04-mvc/assets/3-CTSok6fy.js b/04-mvc/assets/3-CTSok6fy.js new file mode 100644 index 0000000..0f00b6e --- /dev/null +++ b/04-mvc/assets/3-CTSok6fy.js @@ -0,0 +1 @@ +import{o as r,c as l,k as t,a6 as n,q as a,s as _,A as o,e as s}from"./modules/vue-DbJrfnh0.js";import{I as c}from"./slidev/two-cols-roZnz61j.js";import{_ as i,a8 as e}from"./index-CdEcnseE.js";import{p as m,u,f as p}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const d="/sa2024/04-mvc/assets/04-mainframe-B7_nhyLF.png",h="/sa2024/04-mvc/assets/04-cs-D0RmBR4R.png",f=s("h1",null,"从主机到CS模式",-1),b=s("br",null,null,-1),g=s("br",null,null,-1),x=s("br",null,null,-1),v=s("img",{src:d,class:"m-10 h-60"},null,-1),B=s("br",null,null,-1),C=s("br",null,null,-1),P=s("br",null,null,-1),R=s("br",null,null,-1),k=s("p",null,[n("PC与主机任务分割(CS) "),s("br"),s("img",{src:h,class:"m-10 h-60"})],-1),S={__name:"3",setup(y){return m(e),u(),(F,I)=>(r(),l(c,a(_(o(p)(o(e),2))),{right:t(L=>[B,C,P,R,k]),default:t(()=>[f,b,n(" 早期集中式计算环境 "),g,x,v]),_:1},16))}},w=i(S,[["__file","/@slidev/slides/3.md"]]);export{w as default}; diff --git a/04-mvc/assets/30-BlyhPRCt.js b/04-mvc/assets/30-BlyhPRCt.js new file mode 100644 index 0000000..18cca4d --- /dev/null +++ b/04-mvc/assets/30-BlyhPRCt.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as i,s as c,A as s,e as t}from"./modules/vue-DbJrfnh0.js";import{I as _}from"./slidev/default-4y82b8Am.js";import{_ as n,aG as e}from"./index-CdEcnseE.js";import{p,u as m,f as l}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const d="/sa2024/04-mvc/assets/04-code-1-8NCf4pYU.png",f=t("h1",null,"代码结构",-1),u=t("img",{src:d,class:"h-80"},null,-1),h=t("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1zE411M7HM?p=4",-1),v={__name:"30",setup(x){return p(e),m(),(g,w)=>(o(),a(_,i(c(s(l)(s(e),29))),{default:r(()=>[f,u,h]),_:1},16))}},y=n(v,[["__file","/@slidev/slides/30.md"]]);export{y as default}; diff --git a/04-mvc/assets/31-CwENefbm.js b/04-mvc/assets/31-CwENefbm.js new file mode 100644 index 0000000..37bde50 --- /dev/null +++ b/04-mvc/assets/31-CwENefbm.js @@ -0,0 +1 @@ +import{o as e,c as r,k as a,q as m,s as n,A as s,e as o}from"./modules/vue-DbJrfnh0.js";import{I as c}from"./slidev/default-4y82b8Am.js";import{_ as i,aH as t}from"./index-CdEcnseE.js";import{p as _,u as p,f as l}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const u="/sa2024/04-mvc/assets/04-community-BP1JGER5.png",f=o("h1",null,"Community Versions",-1),d=o("img",{src:u,class:"m-10 h-80"},null,-1),h={__name:"31",setup(x){return _(t),p(),(v,B)=>(e(),r(c,m(n(s(l)(s(t),30))),{default:a(()=>[f,d]),_:1},16))}},I=i(h,[["__file","/@slidev/slides/31.md"]]);export{I as default}; diff --git a/04-mvc/assets/32-DfSYghP9.js b/04-mvc/assets/32-DfSYghP9.js new file mode 100644 index 0000000..5d994ae --- /dev/null +++ b/04-mvc/assets/32-DfSYghP9.js @@ -0,0 +1 @@ +import{o,c as r,k as i,q as n,s as a,A as s,e as t}from"./modules/vue-DbJrfnh0.js";import{I as l}from"./slidev/default-4y82b8Am.js";import{_ as c,aI as e}from"./index-CdEcnseE.js";import{p as _,u as p,f as d}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const m="/sa2024/04-mvc/assets/04-code-2-B24pGjEQ.png",u=t("h1",null,"改进版本",-1),f=t("br",null,null,-1),h=t("img",{src:m,class:"h-80"},null,-1),g=t("br",null,null,-1),v=t("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1zE411M7HM?p=4 (4:00)",-1),x=t("br",null,null,-1),b=t("div",{style:{"text-align":"right"}},"spring-petclinic/spring-framework-petclinic",-1),w={__name:"32",setup(B){return _(e),p(),(k,y)=>(o(),r(l,n(a(s(d)(s(e),31))),{default:i(()=>[u,f,h,g,v,x,b]),_:1},16))}},E=c(w,[["__file","/@slidev/slides/32.md"]]);export{E as default}; diff --git a/04-mvc/assets/33-CS1P9Jo-.js b/04-mvc/assets/33-CS1P9Jo-.js new file mode 100644 index 0000000..e8ddcfd --- /dev/null +++ b/04-mvc/assets/33-CS1P9Jo-.js @@ -0,0 +1 @@ +import{o as r,c as o,k as a,q as p,s as n,A as t,e as s}from"./modules/vue-DbJrfnh0.js";import{I as c}from"./slidev/default-4y82b8Am.js";import{_ as i,aJ as e}from"./index-CdEcnseE.js";import{p as m,u as _,f as l}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const d="/sa2024/04-mvc/assets/04-stereotype-zy8yKcwp.png",u=s("h1",null,"Spring Stereotype",-1),f=s("br",null,null,-1),g=s("img",{src:d,class:"m-5 h-80"},null,-1),h=s("p",null,[s("a",{href:"https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/stereotype/package-summary.html",target:"_blank",rel:"noopener"},"https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/stereotype/package-summary.html")],-1),y={__name:"33",setup(k){return m(e),_(),(v,x)=>(r(),o(c,p(n(t(l)(t(e),32))),{default:a(()=>[u,f,g,h]),_:1},16))}},b=i(y,[["__file","/@slidev/slides/33.md"]]);export{b as default}; diff --git a/04-mvc/assets/34-BIl3ktOa.js b/04-mvc/assets/34-BIl3ktOa.js new file mode 100644 index 0000000..0ac19bd --- /dev/null +++ b/04-mvc/assets/34-BIl3ktOa.js @@ -0,0 +1 @@ +import{o as e,c as r,k as i,q as a,s as n,A as s,e as t}from"./modules/vue-DbJrfnh0.js";import{I as l}from"./slidev/default-4y82b8Am.js";import{_,aK as o}from"./index-CdEcnseE.js";import{p as c,u as m,f as p}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const d="/sa2024/04-mvc/assets/04-multi-view-n2j43OUE.png",u=t("h1",null,"多视图",-1),h=t("br",null,null,-1),f=t("img",{src:d,class:"h-80"},null,-1),g=t("br",null,null,-1),v=t("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1zE411M7HM?p=4 (12:00)",-1),x=t("br",null,null,-1),b=t("div",{style:{"text-align":"right"}},"sa-spring/spring-mobile",-1),w={__name:"34",setup(B){return c(o),m(),(k,y)=>(e(),r(l,a(n(s(p)(s(o),33))),{default:i(()=>[u,h,f,g,v,x,b]),_:1},16))}},I=_(w,[["__file","/@slidev/slides/34.md"]]);export{I as default}; diff --git a/04-mvc/assets/35-D3UKOMbw.js b/04-mvc/assets/35-D3UKOMbw.js new file mode 100644 index 0000000..d225d3f --- /dev/null +++ b/04-mvc/assets/35-D3UKOMbw.js @@ -0,0 +1 @@ +import{o as r,c as a,k as t,q as c,s as n,A as o,e as s}from"./modules/vue-DbJrfnh0.js";import{I as _}from"./slidev/two-cols-roZnz61j.js";import{_ as i,aL as e}from"./index-CdEcnseE.js";import{p,u as l,f as m}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const u="/sa2024/04-mvc/assets/04-concept-layer-qcWtWbuQ.png",d="/sa2024/04-mvc/assets/04-concept-tier-BIt0L3LW.png",f="/sa2024/04-mvc/assets/04-concept-mvc-C4oGzR3E.png",h=s("h1",null,"小结与概念梳理",-1),g=s("img",{src:u,class:"h-40"},null,-1),v=s("br",null,null,-1),x=s("img",{src:d,class:"h-40"},null,-1),b=s("p",null,[s("br"),s("br"),s("img",{src:f,class:"h-80"})],-1),B={__name:"35",setup(L){return p(e),l(),(P,k)=>(r(),a(_,c(n(o(m)(o(e),34))),{right:t(C=>[b]),default:t(()=>[h,g,v,x]),_:1},16))}},R=i(B,[["__file","/@slidev/slides/35.md"]]);export{R as default}; diff --git a/04-mvc/assets/4-BN2MnG9z.js b/04-mvc/assets/4-BN2MnG9z.js new file mode 100644 index 0000000..bccfeaa --- /dev/null +++ b/04-mvc/assets/4-BN2MnG9z.js @@ -0,0 +1 @@ +import{o,c as r,k as a,q as n,s as _,A as t,e as s}from"./modules/vue-DbJrfnh0.js";import{I as c}from"./slidev/default-4y82b8Am.js";import{_ as i,a9 as e}from"./index-CdEcnseE.js";import{p as m,u as l,f as p}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const u="/sa2024/04-mvc/assets/04-2tiers-DARrJLL0.png",d=s("h1",null,"三层的分割",-1),f=s("br",null,null,-1),h=s("img",{src:u,class:"m-20 h-60"},null,-1),x={__name:"4",setup(v){return m(e),l(),(g,k)=>(o(),r(c,n(_(t(p)(t(e),3))),{default:a(()=>[d,f,h]),_:1},16))}},I=i(x,[["__file","/@slidev/slides/4.md"]]);export{I as default}; diff --git a/04-mvc/assets/5-CrQVKxLm.js b/04-mvc/assets/5-CrQVKxLm.js new file mode 100644 index 0000000..3a9115a --- /dev/null +++ b/04-mvc/assets/5-CrQVKxLm.js @@ -0,0 +1 @@ +import{o,c as a,k as l,q as r,s as n,A as s,e as t}from"./modules/vue-DbJrfnh0.js";import{I as i}from"./slidev/default-4y82b8Am.js";import{_,aa as e}from"./index-CdEcnseE.js";import{p as c,u as m,f as u}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const p="/sa2024/04-mvc/assets/04-fatclient-EJdBj614.png",d=t("h1",null,"Fat Clients",-1),f=t("br",null,null,-1),h=t("p",null,"C/S模式的传统形式,一般用户个人软件系统",-1),C=t("ul",null,[t("li",null,"应用系统在Client端运行"),t("li",null,"Client知道Server上的数据、文件等如何组织和存储"),t("li",null,"为用户端程序的设计和开发提供较大的灵活性和便利性")],-1),v=t("img",{src:p,class:"m-10 h-50"},null,-1),x={__name:"5",setup(B){return c(e),m(),(g,k)=>(o(),a(i,r(n(s(u)(s(e),4))),{default:l(()=>[d,f,h,C,v]),_:1},16))}},b=_(x,[["__file","/@slidev/slides/5.md"]]);export{b as default}; diff --git a/04-mvc/assets/6-Cr-nlwMv.js b/04-mvc/assets/6-Cr-nlwMv.js new file mode 100644 index 0000000..e718eb0 --- /dev/null +++ b/04-mvc/assets/6-Cr-nlwMv.js @@ -0,0 +1 @@ +import{o as r,c as o,k as a,q as l,s as n,A as s,e}from"./modules/vue-DbJrfnh0.js";import{I as i}from"./slidev/default-4y82b8Am.js";import{_,ab as t}from"./index-CdEcnseE.js";import{p as c,u as m,f as p}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const u="/sa2024/04-mvc/assets/04-fatserver-CvxcLrVP.png",f=e("h1",null,"Fat Servers",-1),d=e("ul",null,[e("li",null,"Server通过一组确定的过程提供资源访问,而非提供对资源直接操作"),e("li",null,"Client提供GUI界面供用户进行操作,并通过远程方法调用与Server通信,获得服务"),e("li",null,"应用代码集中于Server端,便于部署和管理,减少网络通信开销")],-1),v=e("img",{src:u,class:"m-10 h-50"},null,-1),h={__name:"6",setup(x){return c(t),m(),(S,C)=>(r(),o(i,l(n(s(p)(s(t),5))),{default:a(()=>[f,d,v]),_:1},16))}},F=_(h,[["__file","/@slidev/slides/6.md"]]);export{F as default}; diff --git a/04-mvc/assets/7-D28Ao5Tj.js b/04-mvc/assets/7-D28Ao5Tj.js new file mode 100644 index 0000000..8da2732 --- /dev/null +++ b/04-mvc/assets/7-D28Ao5Tj.js @@ -0,0 +1 @@ +import{o,c as r,k as a,q as n,s as i,A as s,e as t}from"./modules/vue-DbJrfnh0.js";import{I as _}from"./slidev/default-4y82b8Am.js";import{_ as c,ac as e}from"./index-CdEcnseE.js";import{p as m,u as l,f as p}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const d="/sa2024/04-mvc/assets/04-3tiers-DhxCu7jv.png",u=t("h1",null,"From 2-tiers to 3 tiers",-1),f=t("br",null,null,-1),h=t("img",{src:d,class:"m-20 h-50"},null,-1),x=t("div",{style:{"text-align":"center"}},"资源共享,集中化管理,性能分布,安全",-1),v={__name:"7",setup(g){return m(e),l(),(k,B)=>(o(),r(_,n(i(s(p)(s(e),6))),{default:a(()=>[u,f,h,x]),_:1},16))}},I=c(v,[["__file","/@slidev/slides/7.md"]]);export{I as default}; diff --git a/04-mvc/assets/8-CMERhiLJ.js b/04-mvc/assets/8-CMERhiLJ.js new file mode 100644 index 0000000..13a2b8b --- /dev/null +++ b/04-mvc/assets/8-CMERhiLJ.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as _,s as c,A as s,e}from"./modules/vue-DbJrfnh0.js";import{I as n}from"./slidev/default-4y82b8Am.js";import{_ as m,ad as t}from"./index-CdEcnseE.js";import{p as i,u as p,f as l}from"./slidev/context-CH0Estdd.js";import"./modules/shiki-nC3sHFQh.js";const d="/sa2024/04-mvc/assets/04-jee-BKMkBKF0.png",f=e("h1",null,"Java EE",-1),u=e("img",{src:d,class:"h-90"},null,-1),h={__name:"8",setup(v){return i(t),p(),(x,B)=>(o(),a(n,_(c(s(l)(s(t),7))),{default:r(()=>[f,u]),_:1},16))}},E=m(h,[["__file","/@slidev/slides/8.md"]]);export{E as default}; diff --git a/04-mvc/assets/ClicksSlider-qq1Ub2AL.css b/04-mvc/assets/ClicksSlider-qq1Ub2AL.css new file mode 100644 index 0000000..ded5c92 --- /dev/null +++ b/04-mvc/assets/ClicksSlider-qq1Ub2AL.css @@ -0,0 +1 @@ +.range[data-v-e916140b]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}.range[data-v-e916140b]::-webkit-slider-thumb{-webkit-appearance:none;height:100%;width:var(--thumb-width, .5rem)}.range[data-v-e916140b]::-moz-range-thumb{height:100%;width:var(--thumb-width, .5rem)} diff --git a/04-mvc/assets/ContextMenu-DSnskk1a.css b/04-mvc/assets/ContextMenu-DSnskk1a.css new file mode 100644 index 0000000..b193adb --- /dev/null +++ b/04-mvc/assets/ContextMenu-DSnskk1a.css @@ -0,0 +1 @@ +.select-list[data-v-9e4a80e3]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-9e4a80e3]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-9e4a80e3]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-9e4a80e3]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-9e4a80e3]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}.autocomplete-list[data-v-a9c46306]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-a9c46306]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-a9c46306]{cursor:pointer}#slideshow[data-v-63954aac]{height:100%} diff --git a/04-mvc/assets/DrawingControls-BO6lw4N5.css b/04-mvc/assets/DrawingControls-BO6lw4N5.css deleted file mode 100644 index beec79d..0000000 --- a/04-mvc/assets/DrawingControls-BO6lw4N5.css +++ /dev/null @@ -1 +0,0 @@ -.resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper__popper{z-index:10000;top:0;left:0;outline:none}.v-popper__popper.v-popper__popper--hidden{visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s;pointer-events:none}.v-popper__popper.v-popper__popper--shown{visibility:visible;opacity:1;transition:opacity .15s}.v-popper__popper.v-popper__popper--skip-transition,.v-popper__popper.v-popper__popper--skip-transition>.v-popper__wrapper{transition:none!important}.v-popper__backdrop{position:absolute;top:0;left:0;width:100%;height:100%;display:none}.v-popper__inner{position:relative;box-sizing:border-box;overflow-y:auto}.v-popper__inner>div{position:relative;z-index:1;max-width:inherit;max-height:inherit}.v-popper__arrow-container{position:absolute;width:10px;height:10px}.v-popper__popper--arrow-overflow .v-popper__arrow-container,.v-popper__popper--no-positioning .v-popper__arrow-container{display:none}.v-popper__arrow-inner,.v-popper__arrow-outer{border-style:solid;position:absolute;top:0;left:0;width:0;height:0}.v-popper__arrow-inner{visibility:hidden;border-width:7px}.v-popper__arrow-outer{border-width:6px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{left:-2px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{left:-1px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer{border-bottom-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:0}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{border-top-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{top:-4px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{top:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{top:-1px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{border-left-width:0;border-left-color:transparent!important;border-top-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{left:-4px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{left:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer{border-right-width:0;border-top-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner{left:-2px}.v-popper--theme-tooltip .v-popper__inner{background:#000c;color:#fff;border-radius:6px;padding:7px 12px 6px}.v-popper--theme-tooltip .v-popper__arrow-outer{border-color:#000c}.v-popper--theme-dropdown .v-popper__inner{background:#fff;color:#000;border-radius:6px;border:1px solid #ddd;box-shadow:0 6px 30px #0000001a}.v-popper--theme-dropdown .v-popper__arrow-inner{visibility:visible;border-color:#fff}.v-popper--theme-dropdown .v-popper__arrow-outer{border-color:#ddd}.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/04-mvc/assets/DrawingControls-C5T1oZL5.css b/04-mvc/assets/DrawingControls-C5T1oZL5.css new file mode 100644 index 0000000..bf95bff --- /dev/null +++ b/04-mvc/assets/DrawingControls-C5T1oZL5.css @@ -0,0 +1 @@ +.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/04-mvc/assets/DrawingPreview-DJ7dOR_1.css b/04-mvc/assets/DrawingPreview-DJ7dOR_1.css new file mode 100644 index 0000000..d8ce4e2 --- /dev/null +++ b/04-mvc/assets/DrawingPreview-DJ7dOR_1.css @@ -0,0 +1 @@ +#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.disable-view-transition[data-v-1e2c950d] *{view-transition-name:none!important}.slidev-page[data-v-1e2c950d]{position:absolute;width:100%;height:100%} diff --git a/04-mvc/assets/SlidesShow-Do3DTZt5.css b/04-mvc/assets/SlidesShow-Do3DTZt5.css deleted file mode 100644 index 4ca12c5..0000000 --- a/04-mvc/assets/SlidesShow-Do3DTZt5.css +++ /dev/null @@ -1 +0,0 @@ -#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete-list[data-v-9ed224f5]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-9ed224f5]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-9ed224f5]{cursor:pointer}.select-list[data-v-38e64e7e]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-38e64e7e]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-38e64e7e]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-38e64e7e]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-38e64e7e]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}#slideshow[data-v-2fe83b23]{height:100%}#slideshow>div[data-v-2fe83b23]{position:absolute;height:100%;width:100%} diff --git a/04-mvc/assets/index-BLb_ioZx.css b/04-mvc/assets/index-BLb_ioZx.css deleted file mode 100644 index f4be073..0000000 --- a/04-mvc/assets/index-BLb_ioZx.css +++ /dev/null @@ -1 +0,0 @@ -.slidev-layout.end[data-v-e7ce0abf]{display:grid;height:100%;-webkit-user-select:none;user-select:none;place-content:center;--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity));text-align:center;font-size:1.25rem;line-height:1.75rem;--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity));--un-text-opacity:.85;letter-spacing:.1em}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media print{.print-container{width:100%}}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 640px){@media print{.print-container{max-width:640px}}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 768px){@media print{.print-container{max-width:768px}}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1024px){@media print{.print-container{max-width:1024px}}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1280px){@media print{.print-container{max-width:1280px}}}@media (min-width: 1536px){.container{max-width:1536px}}@media (min-width: 1536px){@media print{.print-container{max-width:1536px}}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .line.dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}div[widgetid=messageoverlay]{transform:translateY(calc(100% * (var(--slidev-slide-scale) - 1)))}.slidev-monaco-container{position:relative;margin:var(--slidev-code-margin);padding:var(--slidev-code-padding);line-height:var(--slidev-code-line-height);border-radius:var(--slidev-code-radius);background:var(--slidev-code-background)}.slidev-monaco-container .monaco-editor{--monaco-monospace-font: var(--slidev-code-font-family);--vscode-editor-background: var(--slidev-code-background);--vscode-editorGutter-background: var(--slidev-code-background)}.slidev-monaco-container .monaco-editor a,.slidev-monaco-container .monaco-editor a:hover{border-bottom:none}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:calc(13px * var(--slidev-slide-scale, 1))}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute,[absolute=""]{position:absolute}.fixed{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5{right:1.25rem}.top-0{top:0}.top-1\/2{top:50%}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-1{margin:.25rem}.m-10{margin:2.5rem}.m-20{margin:5rem}.m-30{margin:7.5rem}.m-4{margin:1rem}.m-5{margin:1.25rem}.m-auto{margin:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.mb-10{margin-bottom:2.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.aspect-ratio-initial{aspect-ratio:initial}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-20{height:5rem}.h-22px{height:22px}.h-3px{height:3px}.h-40{height:10rem}.h-40px{height:40px}.h-5,.h5,[h5=""]{height:1.25rem}.h-50{height:12.5rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-70{height:17.5rem}.h-8{height:2rem}.h-80{height:20rem}.h-90{height:22.5rem}.h-full,[h-full=""]{height:100%}.h1{height:.25rem}.h2{height:.5rem}.max-w-150{max-width:37.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-w-16{min-width:4rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-1px{width:1px}.w-22px{width:22px}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.flex,[flex=""],[flex~="~"]{display:flex}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-0{--un-translate-x:0;--un-translate-y:0;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-inside-avoid-page{break-inside:avoid-page}.break-after-page{break-after:page}.place-content-center{place-content:center}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4{gap:1rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""]{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border~=t]{border-top-width:1px}.border-gray-300\/50{border-color:#d1d5db80}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.\!border-none{border-style:none!important}.bg-black,[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray\/20{background-color:#9ca3af33}.bg-transparent{background-color:transparent}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.\!bg-opacity-75{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2{padding:.5rem}.\!p-4{padding:1rem!important}.px,.px-4,.px4,[p~=x-4]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2{padding-left:.5rem;padding-right:.5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-4{padding-top:1rem;padding-bottom:1rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}.text-opacity-85{--un-text-opacity:.85}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""]{opacity:1}.op20,.group:hover .group-hover\:opacity-20{opacity:.2}.op30{opacity:.3}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80{opacity:.8}.\!opacity-0{opacity:0!important}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.opacity-25{opacity:.25}.opacity-40{opacity:.4}[hover~=op100]:hover{opacity:1}.hover\:\!opacity-100:hover{opacity:1!important}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@media (max-width: 767.9px){.lt-md\:hidden{display:none}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}} diff --git a/04-mvc/assets/index-CdEcnseE.js b/04-mvc/assets/index-CdEcnseE.js new file mode 100644 index 0000000..9bd4485 --- /dev/null +++ b/04-mvc/assets/index-CdEcnseE.js @@ -0,0 +1,51 @@ +const __vite__fileDeps=["assets/slidev/1-zyHB4xIj.js","assets/modules/vue-DbJrfnh0.js","assets/slidev/context-CH0Estdd.js","assets/modules/shiki-nC3sHFQh.js","assets/modules/shiki-BSchMNmt.css","assets/2-C-oyZrTu.js","assets/slidev/two-cols-roZnz61j.js","assets/3-CTSok6fy.js","assets/4-BN2MnG9z.js","assets/slidev/default-4y82b8Am.js","assets/5-CrQVKxLm.js","assets/6-Cr-nlwMv.js","assets/7-D28Ao5Tj.js","assets/8-CMERhiLJ.js","assets/slidev/9-BV45p3PH.js","assets/slidev/CodeBlockWrapper-DIJjzBUS.js","assets/modules/unplugin-icons-CMs28sA9.js","assets/04-servlet-XFqEZfYA.js","assets/10-BwZVUisL.js","assets/11-Djz-R7fc.js","assets/12-CTq8936B.js","assets/slidev/13-AOBR-h7s.js","assets/slidev/14-5boPtNbr.js","assets/slidev/15-tDwhDkne.js","assets/slidev/16-CevHqMsf.js","assets/17-DwjmKtbU.js","assets/18-CzERz7Hg.js","assets/19-DTIgI3U8.js","assets/slidev/20-DP2pnIuZ.js","assets/21-XBSSNZai.js","assets/22-BH8Ywq6a.js","assets/23-7XoRMmyG.js","assets/slidev/24-_QhM7MIH.js","assets/25-DpUtRdZO.js","assets/26-B8d1mFor.js","assets/27-B1uJdkpj.js","assets/slidev/28-TGP_m2Z8.js","assets/29-wjVkWkPI.js","assets/30-BlyhPRCt.js","assets/31-CwENefbm.js","assets/32-DfSYghP9.js","assets/33-CS1P9Jo-.js","assets/34-BIl3ktOa.js","assets/35-D3UKOMbw.js","assets/slidev/entry-CZ5ez7G4.js","assets/slidev/overview-Dmiv5cD9.js","assets/slidev/DrawingPreview-bP72_U6p.js","assets/DrawingPreview-DJ7dOR_1.css","assets/slidev/IconButton-BVviBO2L.js","assets/slidev/NoteDisplay-Cy48Y2ge.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/ClicksSlider-B1_Upiz8.js","assets/ClicksSlider-qq1Ub2AL.css","assets/slidev/notes-Bd48W473.js","assets/slidev/presenter-DrDJMxK6.js","assets/slidev/ContextMenu-BYGVcJKv.js","assets/ContextMenu-DSnskk1a.css","assets/slidev/DrawingControls-DxnXwfsJ.js","assets/DrawingControls-C5T1oZL5.css","assets/presenter-D5oC5Gjj.css","assets/slidev/play-CnRmEM5v.js","assets/play-CoA43pdi.css"],__vite__mapDeps=i=>i.map(i=>__vite__fileDeps[i]); +import{t as L,y as f,n as Rt,z as so,A as Ln,B as gs,C as ot,D as Q,E as oo,G as ro,H as io,I as ys,J as k,K as ao,L as lo,o as vs,b as co,M as Pn,N as Jt,O as uo,P as fo,Q as te,R as _s,S as Gt,T as ws,U as ho,d as po,r as mo,c as go,V as yo,W as vo,X as _o,Y as wo,Z as ko,_ as bo,$ as So,a0 as Mo,a1 as Oo,a2 as Eo,a3 as To,a4 as $o,a5 as Lo,u as Po}from"./modules/vue-DbJrfnh0.js";import{T as Ao}from"./modules/shiki-nC3sHFQh.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))s(o);new MutationObserver(o=>{for(const r of o)if(r.type==="childList")for(const i of r.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&s(i)}).observe(document,{childList:!0,subtree:!0});function n(o){const r={};return o.integrity&&(r.integrity=o.integrity),o.referrerPolicy&&(r.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?r.credentials="include":o.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function s(o){if(o.ep)return;o.ep=!0;const r=n(o);fetch(o.href,r)}})();function vt(t,e,n){return Math.min(n,Math.max(e,t))}function Co(...t){return Io(t).reduce((e,n)=>e+n,0)}function Do(t){return t=t??[],Array.isArray(t)?t:[t]}function Io(t){return Do(t).flat(1)}function gl(...t){let e,n,s;t.length===1?(e=0,s=1,[n]=t):[e,n,s=1]=t;const o=[];let r=e;for(;re(n,s)).filter(xo))}const H={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:!0,monacoTypesSource:"local",monacoTypesAdditionalPackages:[],monacoRunAdditionalDeps:[],download:!1,export:{},info:!1,highlighter:"shiki",twoslash:!0,lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},yl="build",ks=L(H.aspectRatio??16/9),Ro=L(H.canvasWidth??980),vl=f(()=>Math.ceil(Ro.value/ks.value)),jo=f(()=>Ho(H.themeConfig||{},(t,e)=>[`--slidev-theme-${t}`,e]));function pn(t,e={},n){for(const s in t){const o=t[s],r=n?`${n}:${s}`:s;typeof o=="object"&&o!==null?pn(o,e,r):typeof o=="function"&&(e[r]=o)}return e}const No={run:t=>t()},Fo=()=>No,bs=typeof console.createTask<"u"?console.createTask:Fo;function Vo(t,e){const n=e.shift(),s=bs(n);return t.reduce((o,r)=>o.then(()=>s.run(()=>r(...e))),Promise.resolve())}function Uo(t,e){const n=e.shift(),s=bs(n);return Promise.all(t.map(o=>s.run(()=>o(...e))))}function nn(t,e){for(const n of[...t])n(e)}class Bo{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,n,s={}){if(!e||typeof n!="function")return()=>{};const o=e;let r;for(;this._deprecatedHooks[e];)r=this._deprecatedHooks[e],e=r.to;if(r&&!s.allowDeprecated){let i=r.message;i||(i=`${o} hook has been deprecated`+(r.to?`, please use ${r.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(i)||(console.warn(i),this._deprecatedMessages.add(i))}if(!n.name)try{Object.defineProperty(n,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(n),()=>{n&&(this.removeHook(e,n),n=void 0)}}hookOnce(e,n){let s,o=(...r)=>(typeof s=="function"&&s(),s=void 0,o=void 0,n(...r));return s=this.hook(e,o),s}removeHook(e,n){if(this._hooks[e]){const s=this._hooks[e].indexOf(n);s!==-1&&this._hooks[e].splice(s,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,n){this._deprecatedHooks[e]=typeof n=="string"?{to:n}:n;const s=this._hooks[e]||[];delete this._hooks[e];for(const o of s)this.hook(e,o)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const n in e)this.deprecateHook(n,e[n])}addHooks(e){const n=pn(e),s=Object.keys(n).map(o=>this.hook(o,n[o]));return()=>{for(const o of s.splice(0,s.length))o()}}removeHooks(e){const n=pn(e);for(const s in n)this.removeHook(s,n[s])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...n){return n.unshift(e),this.callHookWith(Vo,e,...n)}callHookParallel(e,...n){return n.unshift(e),this.callHookWith(Uo,e,...n)}callHookWith(e,n,...s){const o=this._before||this._after?{name:n,args:s,context:{}}:void 0;this._before&&nn(this._before,o);const r=e(n in this._hooks?[...this._hooks[n]]:[],s);return r instanceof Promise?r.finally(()=>{this._after&&o&&nn(this._after,o)}):(this._after&&o&&nn(this._after,o),r)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const n=this._before.indexOf(e);n!==-1&&this._before.splice(n,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const n=this._after.indexOf(e);n!==-1&&this._after.splice(n,1)}}}}function Wo(){return new Bo}function zo(t){return Array.isArray(t)?t:[t]}const qo=["title","titleTemplate","script","style","noscript"],Lt=["base","meta","link","style","script","noscript"],Ko=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],Jo=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],Ss=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],Go=typeof window<"u";function An(t){let e=9;for(let n=0;n>>9)+65536).toString(16).substring(1,8).toLowerCase()}function qn(t){return t._h||An(t._d?t._d:`${t.tag}:${t.textContent||t.innerHTML||""}:${Object.entries(t.props).map(([e,n])=>`${e}:${String(n)}`).join(",")}`)}function Ms(t,e){const{props:n,tag:s}=t;if(Jo.includes(s))return s;if(s==="link"&&n.rel==="canonical")return"canonical";if(n.charset)return"charset";const o=["id"];s==="meta"&&o.push("name","property","http-equiv");for(const r of o)if(typeof n[r]<"u"){const i=String(n[r]);return e&&!e(i)?!1:`${s}:${r}:${i}`}return!1}function Kn(t,e){return t==null?e||null:typeof t=="function"?t(e):t}async function Qo(t,e,n){const s={tag:t,props:await Os(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(t)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(t))};return Ss.forEach(o=>{const r=typeof s.props[o]<"u"?s.props[o]:n[o];typeof r<"u"&&((!["innerHTML","textContent","children"].includes(o)||qo.includes(s.tag))&&(s[o==="children"?"innerHTML":o]=r),delete s.props[o])}),s.props.body&&(s.tagPosition="bodyClose",delete s.props.body),s.tag==="script"&&typeof s.innerHTML=="object"&&(s.innerHTML=JSON.stringify(s.innerHTML),s.props.type=s.props.type||"application/json"),Array.isArray(s.props.content)?s.props.content.map(o=>({...s,props:{...s.props,content:o}})):s}function Zo(t,e){var s;const n=t==="class"?" ":";";return typeof e=="object"&&!Array.isArray(e)&&(e=Object.entries(e).filter(([,o])=>o).map(([o,r])=>t==="style"?`${o}:${r}`:o)),(s=Array.isArray(e)?e.join(n):e)==null?void 0:s.split(n).filter(o=>o.trim()).filter(Boolean).join(n)}async function Os(t,e){for(const n of Object.keys(t)){if(["class","style"].includes(n)){t[n]=Zo(n,t[n]);continue}if(t[n]instanceof Promise&&(t[n]=await t[n]),!e&&!Ss.includes(n)){const s=String(t[n]),o=n.startsWith("data-");s==="true"||s===""?t[n]=o?"true":!0:t[n]||(o&&s==="false"?t[n]="false":delete t[n])}}return t}const Yo=10;async function Xo(t){const e=[];return Object.entries(t.resolvedInput).filter(([n,s])=>typeof s<"u"&&Ko.includes(n)).forEach(([n,s])=>{const o=zo(s);e.push(...o.map(r=>Qo(n,r,t)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((n,s)=>(n._e=t._i,t.mode&&(n._m=t.mode),n._p=(t._i<l&&l[c]||void 0,e):a=e[i],typeof a<"u"?(a||"").replace(/"/g,'\\"'):!1}let o=t;try{o=decodeURI(t)}catch{}return(o.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(i=>{const a=s(i.slice(1));typeof a=="string"&&(t=t.replace(new RegExp(`\\${i}(\\W|$)`,"g"),(l,c)=>`${a}${c}`).trim())}),t.includes(ae)&&(t.endsWith(ae)&&(t=t.slice(0,-ae.length).trim()),t.startsWith(ae)&&(t=t.slice(ae.length).trim()),t=t.replace(new RegExp(`\\${ae}\\s*\\${ae}`,"g"),ae),t=Pt(t,{separator:n},n)),t}async function tr(t,e={}){var u;const n=e.document||t.resolvedOptions.document;if(!n||!t.dirty)return;const s={shouldRender:!0,tags:[]};if(await t.hooks.callHook("dom:beforeRender",s),!s.shouldRender)return;const o=(await t.resolveTags()).map(d=>({tag:d,id:Lt.includes(d.tag)?qn(d):d.tag,shouldRender:!0}));let r=t._dom;if(!r){r={elMap:{htmlAttrs:n.documentElement,bodyAttrs:n.body}};for(const d of["body","head"]){const h=(u=n[d])==null?void 0:u.children,p=[];for(const m of[...h].filter(g=>Lt.includes(g.tagName.toLowerCase()))){const g={tag:m.tagName.toLowerCase(),props:await Os(m.getAttributeNames().reduce((_,w)=>({..._,[w]:m.getAttribute(w)}),{})),innerHTML:m.innerHTML};let y=1,v=Ms(g);for(;v&&p.find(_=>_._d===v);)v=`${v}:${y++}`;g._d=v||void 0,p.push(g),r.elMap[m.getAttribute("data-hid")||qn(g)]=m}}}r.pendingSideEffects={...r.sideEffects||{}},r.sideEffects={};function i(d,h,p){const m=`${d}:${h}`;r.sideEffects[m]=p,delete r.pendingSideEffects[m]}function a({id:d,$el:h,tag:p}){const m=p.tag.endsWith("Attrs");r.elMap[d]=h,m||(["textContent","innerHTML"].forEach(g=>{p[g]&&p[g]!==h[g]&&(h[g]=p[g])}),i(d,"el",()=>{var g;(g=r.elMap[d])==null||g.remove(),delete r.elMap[d]}));for(const[g,y]of Object.entries(p._eventHandlers||{}))h.getAttribute(`data-${g}`)!==""&&((p.tag==="bodyAttrs"?n.defaultView:h).addEventListener(g.replace("on",""),y.bind(h)),h.setAttribute(`data-${g}`,""));Object.entries(p.props).forEach(([g,y])=>{const v=`attr:${g}`;if(g==="class")for(const _ of(y||"").split(" ").filter(Boolean))m&&i(d,`${v}:${_}`,()=>h.classList.remove(_)),!h.classList.contains(_)&&h.classList.add(_);else if(g==="style")for(const _ of(y||"").split(";").filter(Boolean)){const[w,...b]=_.split(":").map(E=>E.trim());i(d,`${v}:${_}:${w}`,()=>{h.style.removeProperty(w)}),h.style.setProperty(w,b.join(":"))}else h.getAttribute(g)!==y&&h.setAttribute(g,y===!0?"":String(y)),m&&i(d,v,()=>h.removeAttribute(g))})}const l=[],c={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const d of o){const{tag:h,shouldRender:p,id:m}=d;if(p){if(h.tag==="title"){n.title=h.textContent;continue}d.$el=d.$el||r.elMap[m],d.$el?a(d):Lt.includes(h.tag)&&l.push(d)}}for(const d of l){const h=d.tag.tagPosition||"head";d.$el=n.createElement(d.tag.tag),a(d),c[h]=c[h]||n.createDocumentFragment(),c[h].appendChild(d.$el)}for(const d of o)await t.hooks.callHook("dom:renderTag",d,n,i);c.head&&n.head.appendChild(c.head),c.bodyOpen&&n.body.insertBefore(c.bodyOpen,n.body.firstChild),c.bodyClose&&n.body.appendChild(c.bodyClose),Object.values(r.pendingSideEffects).forEach(d=>d()),t._dom=r,t.dirty=!1,await t.hooks.callHook("dom:rendered",{renders:o})}async function nr(t,e={}){const n=e.delayFn||(s=>setTimeout(s,10));return t._domUpdatePromise=t._domUpdatePromise||new Promise(s=>n(async()=>{await tr(t,e),delete t._domUpdatePromise,s()}))}function sr(t){return e=>{var s,o;const n=((o=(s=e.resolvedOptions.document)==null?void 0:s.head.querySelector('script[id="unhead:payload"]'))==null?void 0:o.innerHTML)||!1;return n&&e.push(JSON.parse(n)),{mode:"client",hooks:{"entries:updated":function(r){nr(r,t)}}}}}const or=["templateParams","htmlAttrs","bodyAttrs"],rr={hooks:{"tag:normalise":function({tag:t}){["hid","vmid","key"].forEach(s=>{t.props[s]&&(t.key=t.props[s],delete t.props[s])});const n=Ms(t)||(t.key?`${t.tag}:${t.key}`:!1);n&&(t._d=n)},"tags:resolve":function(t){const e={};t.tags.forEach(s=>{const o=(s.key?`${s.tag}:${s.key}`:s._d)||s._p,r=e[o];if(r){let a=s==null?void 0:s.tagDuplicateStrategy;if(!a&&or.includes(s.tag)&&(a="merge"),a==="merge"){const l=r.props;["class","style"].forEach(c=>{l[c]&&(s.props[c]?(c==="style"&&!l[c].endsWith(";")&&(l[c]+=";"),s.props[c]=`${l[c]} ${s.props[c]}`):s.props[c]=l[c])}),e[o].props={...l,...s.props};return}else if(s._e===r._e){r._duped=r._duped||[],s._d=`${r._d}:${r._duped.length+1}`,r._duped.push(s);return}else if(jt(s)>jt(r))return}const i=Object.keys(s.props).length+(s.innerHTML?1:0)+(s.textContent?1:0);if(Lt.includes(s.tag)&&i===0){delete e[o];return}e[o]=s});const n=[];Object.values(e).forEach(s=>{const o=s._duped;delete s._duped,n.push(s),o&&n.push(...o)}),t.tags=n,t.tags=t.tags.filter(s=>!(s.tag==="meta"&&(s.props.name||s.props.property)&&!s.props.content))}}},ir={mode:"server",hooks:{"tags:resolve":function(t){const e={};t.tags.filter(n=>["titleTemplate","templateParams","title"].includes(n.tag)&&n._m==="server").forEach(n=>{e[n.tag]=n.tag.startsWith("title")?n.textContent:n.props}),Object.keys(e).length&&t.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},ar=["script","link","bodyAttrs"],lr=t=>({hooks:{"tags:resolve":function(e){for(const n of e.tags.filter(s=>ar.includes(s.tag)))Object.entries(n.props).forEach(([s,o])=>{s.startsWith("on")&&typeof o=="function"&&(t.ssr&&Qn.includes(s)?n.props[s]=`this.dataset.${s}fired = true`:delete n.props[s],n._eventHandlers=n._eventHandlers||{},n._eventHandlers[s]=o)}),t.ssr&&n._eventHandlers&&(n.props.src||n.props.href)&&(n.key=n.key||An(n.props.src||n.props.href))},"dom:renderTag":function({$el:e,tag:n}){var s,o;for(const r of Object.keys((e==null?void 0:e.dataset)||{}).filter(i=>Qn.some(a=>`${a}fired`===i))){const i=r.replace("fired","");(o=(s=n._eventHandlers)==null?void 0:s[i])==null||o.call(e,new Event(i.replace("on","")))}}}}),cr=["link","style","script","noscript"],ur={hooks:{"tag:normalise":({tag:t})=>{t.key&&cr.includes(t.tag)&&(t.props["data-hid"]=t._h=An(t.key))}}},fr={hooks:{"tags:resolve":t=>{const e=n=>{var s;return(s=t.tags.find(o=>o._d===n))==null?void 0:s._p};for(const{prefix:n,offset:s}of er)for(const o of t.tags.filter(r=>typeof r.tagPriority=="string"&&r.tagPriority.startsWith(n))){const r=e(o.tagPriority.replace(n,""));typeof r<"u"&&(o._p=r+s)}t.tags.sort((n,s)=>n._p-s._p).sort((n,s)=>jt(n)-jt(s))}}},dr={meta:"content",link:"href",htmlAttrs:"lang"},hr=t=>({hooks:{"tags:resolve":e=>{var a;const{tags:n}=e,s=(a=n.find(l=>l.tag==="title"))==null?void 0:a.textContent,o=n.findIndex(l=>l.tag==="templateParams"),r=o!==-1?n[o].props:{},i=r.separator||"|";delete r.separator,r.pageTitle=Pt(r.pageTitle||s||"",r,i);for(const l of n.filter(c=>c.processTemplateParams!==!1)){const c=dr[l.tag];c&&typeof l.props[c]=="string"?l.props[c]=Pt(l.props[c],r,i):(l.processTemplateParams===!0||["titleTemplate","title"].includes(l.tag))&&["innerHTML","textContent"].forEach(u=>{typeof l[u]=="string"&&(l[u]=Pt(l[u],r,i))})}t._templateParams=r,t._separator=i,e.tags=n.filter(l=>l.tag!=="templateParams")}}}),pr={hooks:{"tags:resolve":t=>{const{tags:e}=t;let n=e.findIndex(o=>o.tag==="titleTemplate");const s=e.findIndex(o=>o.tag==="title");if(s!==-1&&n!==-1){const o=Kn(e[n].textContent,e[s].textContent);o!==null?e[s].textContent=o||e[s].textContent:delete e[s]}else if(n!==-1){const o=Kn(e[n].textContent);o!==null&&(e[n].textContent=o,e[n].tag="title",n=-1)}n!==-1&&delete e[n],t.tags=e.filter(Boolean)}}},mr={hooks:{"tags:afterResolve":function(t){for(const e of t.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{a.dirty=!0,e.callHook("entries:updated",a)};let o=0,r=[];const i=[],a={plugins:i,dirty:!1,resolvedOptions:t,hooks:e,headEntries(){return r},use(l){const c=typeof l=="function"?l(a):l;(!c.key||!i.some(u=>u.key===c.key))&&(i.push(c),Zn(c.mode,n)&&e.addHooks(c.hooks||{}))},push(l,c){c==null||delete c.head;const u={_i:o++,input:l,...c};return Zn(u.mode,n)&&(r.push(u),s()),{dispose(){r=r.filter(d=>d._i!==u._i),e.callHook("entries:updated",a),s()},patch(d){r=r.map(h=>(h._i===u._i&&(h.input=u.input=d),h)),s()}}},async resolveTags(){const l={tags:[],entries:[...r]};await e.callHook("entries:resolve",l);for(const c of l.entries){const u=c.resolvedInput||c.input;if(c.resolvedInput=await(c.transform?c.transform(u):u),c.resolvedInput)for(const d of await Xo(c)){const h={tag:d,entry:c,resolvedOptions:a.resolvedOptions};await e.callHook("tag:normalise",h),l.tags.push(h.tag)}}return await e.callHook("tags:beforeResolve",l),await e.callHook("tags:resolve",l),await e.callHook("tags:afterResolve",l),l.tags},ssr:n};return[rr,ir,lr,ur,fr,hr,pr,mr,...(t==null?void 0:t.plugins)||[]].forEach(l=>a.use(l)),a.hooks.callHook("init",a),a}function vr(){return Es}const _r=so.startsWith("3");function wr(t){return typeof t=="function"?t():Ln(t)}function Nt(t,e=""){if(t instanceof Promise)return t;const n=wr(t);return!t||!n?n:Array.isArray(n)?n.map(s=>Nt(s,e)):typeof n=="object"?Object.fromEntries(Object.entries(n).map(([s,o])=>s==="titleTemplate"||s.startsWith("on")?[s,Ln(o)]:[s,Nt(o,s)])):n}const kr={hooks:{"entries:resolve":function(t){for(const e of t.entries)e.resolvedInput=Nt(e.input)}}},Ts="usehead";function br(t){return{install(n){_r&&(n.config.globalProperties.$unhead=t,n.config.globalProperties.$head=t,n.provide(Ts,t))}}.install}function Sr(t={}){t.domDelayFn=t.domDelayFn||(n=>Rt(()=>setTimeout(()=>n(),0)));const e=gr(t);return e.use(kr),e.install=br(e),e}const Yn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Xn="__unhead_injection_handler__";function Mr(){if(Xn in Yn)return Yn[Xn]();const t=gs(Ts);return t||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),t||vr()}function Or(t,e={}){const n=e.head||Mr();if(n)return n.ssr?n.push(t,e):Er(n,t,e)}function Er(t,e,n={}){const s=L(!1),o=L({});ot(()=>{o.value=s.value?{}:Nt(e)});const r=t.push(o.value,n);return Q(o,a=>{r.patch(a)}),ys()&&(oo(()=>{r.dispose()}),ro(()=>{s.value=!0}),io(()=>{s.value=!1})),r}function $s(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function Z(t,e,n){Object.defineProperty(t,e,{value:n,writable:!0,enumerable:!1})}const Ge=k({page:0,clicks:0});let Tr=[],$r=[];Z(Ge,"$syncUp",!0);Z(Ge,"$syncDown",!0);Z(Ge,"$paused",!1);Z(Ge,"$onSet",t=>Tr.push(t));Z(Ge,"$onPatch",t=>$r.push(t));$s();Z(Ge,"$patch",async()=>!1);function Ls(t,e,n=!1){const s=[];let o=!1,r=!1,i,a;const l=k(e);function c(p){s.push(p)}function u(p,m){l[p]!==m&&(clearTimeout(i),o=!0,l[p]=m,i=setTimeout(()=>o=!1,0))}function d(p){o||(clearTimeout(a),r=!0,Object.entries(p).forEach(([m,g])=>{l[m]=g}),a=setTimeout(()=>r=!1,0))}function h(p){let m;n?n&&window.addEventListener("storage",y=>{y&&y.key===p&&y.newValue&&d(JSON.parse(y.newValue))}):(m=new BroadcastChannel(p),m.addEventListener("message",y=>d(y.data)));function g(){!n&&m&&!r?m.postMessage(ao(l)):n&&!r&&window.localStorage.setItem(p,JSON.stringify(l)),o||s.forEach(y=>y(l))}if(Q(l,g,{deep:!0,flush:"sync"}),n){const y=window.localStorage.getItem(p);y&&d(JSON.parse(y))}}return{init:h,onPatch:c,patch:u,state:l}}const{init:Lr,onPatch:Pr,patch:ct,state:_l}=Ls(Ge,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),Qe=k({});let Ar=[],Cr=[];Z(Qe,"$syncUp",!0);Z(Qe,"$syncDown",!0);Z(Qe,"$paused",!1);Z(Qe,"$onSet",t=>Ar.push(t));Z(Qe,"$onPatch",t=>Cr.push(t));$s();Z(Qe,"$patch",async()=>!1);const{init:Dr,onPatch:wl,patch:kl,state:bl}=Ls(Qe,{},!1),Qt="$$slidev-clicks-context",Cn="$$slidev-page",Ps="$$slidev-slide-element",Ir="$$slidev-slide-scale",xr="$$slidev-context",Sl="$$slidev-route",Dn="$$slidev-render-context",Ml="$$slidev-active",Hr="$$slidev-fontmatter",Rr="$$slidev-slide-zoom",At="slidev-vclick-target",ut="slidev-vclick-hidden",ft="slidev-vclick-fade",sn="slidev-vclick-hidden-explicitly",on="slidev-vclick-current",rn="slidev-vclick-prior",mn=999999,jr=["localhost","127.0.0.1"],Nr=["clicks","clicksStart","disabled","hide","hideInToc","layout","level","preload","routeAlias","src","title","transition","zoom","dragPos"],Ol=[...Nr,"theme","titleTemplate","info","author","keywords","presenter","download","exportFilename","export","highlighter","lineNumbers","monaco","monacoTypesSource","monacoTypesAdditionalPackages","monacoRunAdditionalDeps","remoteAssets","selectable","record","colorSchema","routerMode","aspectRatio","canvasWidth","themeConfig","favicon","plantUmlServer","fonts","defaults","drawings","htmlAttrs","mdc","contextMenu"],As=L(!1),In=Symbol.for("yaml.alias"),Fr=Symbol.for("yaml.document"),Je=Symbol.for("yaml.map"),Cs=Symbol.for("yaml.pair"),xn=Symbol.for("yaml.scalar"),bt=Symbol.for("yaml.seq"),re=Symbol.for("yaml.node.type"),it=t=>!!t&&typeof t=="object"&&t[re]===In,Zt=t=>!!t&&typeof t=="object"&&t[re]===Fr,Ds=t=>!!t&&typeof t=="object"&&t[re]===Je,U=t=>!!t&&typeof t=="object"&&t[re]===Cs,F=t=>!!t&&typeof t=="object"&&t[re]===xn,Hn=t=>!!t&&typeof t=="object"&&t[re]===bt;function J(t){if(t&&typeof t=="object")switch(t[re]){case Je:case bt:return!0}return!1}function q(t){if(t&&typeof t=="object")switch(t[re]){case In:case Je:case xn:case bt:return!0}return!1}const Vr=t=>(F(t)||J(t))&&!!t.anchor,ze=Symbol("break visit"),Ur=Symbol("skip children"),mt=Symbol("remove node");function _t(t,e){const n=Br(e);Zt(t)?et(null,t.contents,n,Object.freeze([t]))===mt&&(t.contents=null):et(null,t,n,Object.freeze([]))}_t.BREAK=ze;_t.SKIP=Ur;_t.REMOVE=mt;function et(t,e,n,s){const o=Wr(t,e,n,s);if(q(o)||U(o))return zr(t,s,o),et(t,o,n,s);if(typeof o!="symbol"){if(J(e)){s=Object.freeze(s.concat(e));for(let r=0;ree(s,String(o),n));if(t&&typeof t.toJSON=="function"){if(!n||!Vr(t))return t.toJSON(e,n);const s={aliasCount:0,count:1,res:void 0};n.anchors.set(t,s),n.onCreate=r=>{s.res=r,delete n.onCreate};const o=t.toJSON(e,n);return n.onCreate&&n.onCreate(o),o}return typeof t=="bigint"&&!(n!=null&&n.keep)?Number(t):t}class Rn{constructor(e){Object.defineProperty(this,re,{value:e})}clone(){const e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:n,maxAliasCount:s,onAnchor:o,reviver:r}={}){if(!Zt(e))throw new TypeError("A document argument is required");const i={anchors:new Map,doc:e,keep:!0,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof s=="number"?s:100},a=ee(this,"",i);if(typeof o=="function")for(const{count:l,res:c}of i.anchors.values())o(c,l);return typeof r=="function"?pt(r,{"":a},"",a):a}}class qr extends Rn{constructor(e){super(In),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e){let n;return _t(e,{Node:(s,o)=>{if(o===this)return _t.BREAK;o.anchor===this.source&&(n=o)}}),n}toJSON(e,n){if(!n)return{source:this.source};const{anchors:s,doc:o,maxAliasCount:r}=n,i=this.resolve(o);if(!i){const l=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(l)}let a=s.get(i);if(a||(ee(i,null,n),a=s.get(i)),!a||a.res===void 0){const l="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(l)}if(r>=0&&(a.count+=1,a.aliasCount===0&&(a.aliasCount=Ct(o,i,s)),a.count*a.aliasCount>r)){const l="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(l)}return a.res}toString(e,n,s){const o=`*${this.source}`;if(e){if(Is(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){const r=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(r)}if(e.implicitKey)return`${o} `}return o}}function Ct(t,e,n){if(it(e)){const s=e.resolve(t),o=n&&s&&n.get(s);return o?o.count*o.aliasCount:0}else if(J(e)){let s=0;for(const o of e.items){const r=Ct(t,o,n);r>s&&(s=r)}return s}else if(U(e)){const s=Ct(t,e.key,n),o=Ct(t,e.value,n);return Math.max(s,o)}return 1}const xs=t=>!t||typeof t!="function"&&typeof t!="object";class j extends Rn{constructor(e){super(xn),this.value=e}toJSON(e,n){return n!=null&&n.keep?this.value:ee(this.value,e,n)}toString(){return String(this.value)}}j.BLOCK_FOLDED="BLOCK_FOLDED";j.BLOCK_LITERAL="BLOCK_LITERAL";j.PLAIN="PLAIN";j.QUOTE_DOUBLE="QUOTE_DOUBLE";j.QUOTE_SINGLE="QUOTE_SINGLE";const Kr="tag:yaml.org,2002:";function Jr(t,e,n){if(e){const s=n.filter(r=>r.tag===e),o=s.find(r=>!r.format)??s[0];if(!o)throw new Error(`Tag ${e} not found`);return o}return n.find(s=>{var o;return((o=s.identify)==null?void 0:o.call(s,t))&&!s.format})}function Ft(t,e,n){var d,h,p;if(Zt(t)&&(t=t.contents),q(t))return t;if(U(t)){const m=(h=(d=n.schema[Je]).createNode)==null?void 0:h.call(d,n.schema,null,n);return m.items.push(t),m}(t instanceof String||t instanceof Number||t instanceof Boolean||typeof BigInt<"u"&&t instanceof BigInt)&&(t=t.valueOf());const{aliasDuplicateObjects:s,onAnchor:o,onTagObj:r,schema:i,sourceObjects:a}=n;let l;if(s&&t&&typeof t=="object"){if(l=a.get(t),l)return l.anchor||(l.anchor=o(t)),new qr(l.anchor);l={anchor:null,node:null},a.set(t,l)}e!=null&&e.startsWith("!!")&&(e=Kr+e.slice(2));let c=Jr(t,e,i.tags);if(!c){if(t&&typeof t.toJSON=="function"&&(t=t.toJSON()),!t||typeof t!="object"){const m=new j(t);return l&&(l.node=m),m}c=t instanceof Map?i[Je]:Symbol.iterator in Object(t)?i[bt]:i[Je]}r&&(r(c),delete n.onTagObj);const u=c!=null&&c.createNode?c.createNode(n.schema,t,n):typeof((p=c==null?void 0:c.nodeClass)==null?void 0:p.from)=="function"?c.nodeClass.from(n.schema,t,n):new j(t);return e?u.tag=e:c.default||(u.tag=c.tag),l&&(l.node=u),u}function es(t,e,n){let s=n;for(let o=e.length-1;o>=0;--o){const r=e[o];if(typeof r=="number"&&Number.isInteger(r)&&r>=0){const i=[];i[r]=s,s=i}else s=new Map([[r,s]])}return Ft(s,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:t,sourceObjects:new Map})}const Gr=t=>t==null||typeof t=="object"&&!!t[Symbol.iterator]().next().done;class jn extends Rn{constructor(e,n){super(e),Object.defineProperty(this,"schema",{value:n,configurable:!0,enumerable:!1,writable:!0})}clone(e){const n=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(n.schema=e),n.items=n.items.map(s=>q(s)||U(s)?s.clone(e):s),this.range&&(n.range=this.range.slice()),n}addIn(e,n){if(Gr(e))this.add(n);else{const[s,...o]=e,r=this.get(s,!0);if(J(r))r.addIn(o,n);else if(r===void 0&&this.schema)this.set(s,es(this.schema,o,n));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${o}`)}}deleteIn(e){const[n,...s]=e;if(s.length===0)return this.delete(n);const o=this.get(n,!0);if(J(o))return o.deleteIn(s);throw new Error(`Expected YAML collection at ${n}. Remaining path: ${s}`)}getIn(e,n){const[s,...o]=e,r=this.get(s,!0);return o.length===0?!n&&F(r)?r.value:r:J(r)?r.getIn(o,n):void 0}hasAllNullValues(e){return this.items.every(n=>{if(!U(n))return!1;const s=n.value;return s==null||e&&F(s)&&s.value==null&&!s.commentBefore&&!s.comment&&!s.tag})}hasIn(e){const[n,...s]=e;if(s.length===0)return this.has(n);const o=this.get(n,!0);return J(o)?o.hasIn(s):!1}setIn(e,n){const[s,...o]=e;if(o.length===0)this.set(s,n);else{const r=this.get(s,!0);if(J(r))r.setIn(o,n);else if(r===void 0&&this.schema)this.set(s,es(this.schema,o,n));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${o}`)}}}jn.maxFlowStringSingleLineLength=60;const Qr=t=>t.replace(/^(?!$)(?: $)?/gm,"#");function wt(t,e){return/^\n+$/.test(t)?t.substring(1):e?t.replace(/^(?! *$)/gm,e):t}const tt=(t,e,n)=>t.endsWith(` +`)?wt(n,e):n.includes(` +`)?` +`+wt(n,e):(t.endsWith(" ")?"":" ")+n,Hs="flow",gn="block",Dt="quoted";function Yt(t,e,n="flow",{indentAtStart:s,lineWidth:o=80,minContentWidth:r=20,onFold:i,onOverflow:a}={}){if(!o||o<0)return t;const l=Math.max(1+r,1+o-e.length);if(t.length<=l)return t;const c=[],u={};let d=o-e.length;typeof s=="number"&&(s>o-Math.max(2,r)?c.push(0):d=o-s);let h,p,m=!1,g=-1,y=-1,v=-1;n===gn&&(g=ts(t,g,e.length),g!==-1&&(d=g+l));for(let w;w=t[g+=1];){if(n===Dt&&w==="\\"){switch(y=g,t[g+1]){case"x":g+=3;break;case"u":g+=5;break;case"U":g+=9;break;default:g+=1}v=g}if(w===` +`)n===gn&&(g=ts(t,g,e.length)),d=g+e.length+l,h=void 0;else{if(w===" "&&p&&p!==" "&&p!==` +`&&p!==" "){const b=t[g+1];b&&b!==" "&&b!==` +`&&b!==" "&&(h=g)}if(g>=d)if(h)c.push(h),d=h+l,h=void 0;else if(n===Dt){for(;p===" "||p===" ";)p=w,w=t[g+=1],m=!0;const b=g>v+1?g-2:y-1;if(u[b])return t;c.push(b),u[b]=!0,d=b+l,h=void 0}else m=!0}p=w}if(m&&a&&a(),c.length===0)return t;i&&i();let _=t.slice(0,c[0]);for(let w=0;w({indentAtStart:e?t.indent.length:t.indentAtStart,lineWidth:t.options.lineWidth,minContentWidth:t.options.minContentWidth}),en=t=>/^(%|---|\.\.\.)/m.test(t);function Zr(t,e,n){if(!e||e<0)return!1;const s=e-n,o=t.length;if(o<=s)return!1;for(let r=0,i=0;rs)return!0;if(i=r+1,o-i<=s)return!1}return!0}function gt(t,e){const n=JSON.stringify(t);if(e.options.doubleQuotedAsJSON)return n;const{implicitKey:s}=e,o=e.options.doubleQuotedMinMultiLineLength,r=e.indent||(en(t)?" ":"");let i="",a=0;for(let l=0,c=n[l];c;c=n[++l])if(c===" "&&n[l+1]==="\\"&&n[l+2]==="n"&&(i+=n.slice(a,l)+"\\ ",l+=1,a=l,c="\\"),c==="\\")switch(n[l+1]){case"u":{i+=n.slice(a,l);const u=n.substr(l+2,4);switch(u){case"0000":i+="\\0";break;case"0007":i+="\\a";break;case"000b":i+="\\v";break;case"001b":i+="\\e";break;case"0085":i+="\\N";break;case"00a0":i+="\\_";break;case"2028":i+="\\L";break;case"2029":i+="\\P";break;default:u.substr(0,2)==="00"?i+="\\x"+u.substr(2):i+=n.substr(l,6)}l+=5,a=l+1}break;case"n":if(s||n[l+2]==='"'||n.length +`;let d,h;for(h=n.length;h>0;--h){const M=n[h-1];if(M!==` +`&&M!==" "&&M!==" ")break}let p=n.substring(h);const m=p.indexOf(` +`);m===-1?d="-":n===p||m!==p.length-1?(d="+",r&&r()):d="",p&&(n=n.slice(0,-p.length),p[p.length-1]===` +`&&(p=p.slice(0,-1)),p=p.replace(vn,`$&${c}`));let g=!1,y,v=-1;for(y=0;y")+(g?c?"2":"1":"")+d;if(t&&(b+=" "+a(t.replace(/ ?[\r\n]+/g," ")),o&&o()),u)return n=n.replace(/\n+/g,`$&${c}`),`${b} +${c}${_}${n}${p}`;n=n.replace(/\n+/g,` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${c}`);const E=Yt(`${_}${n}${p}`,c,gn,Xt(s,!0));return`${b} +${c}${E}`}function Yr(t,e,n,s){const{type:o,value:r}=t,{actualString:i,implicitKey:a,indent:l,indentStep:c,inFlow:u}=e;if(a&&r.includes(` +`)||u&&/[[\]{},]/.test(r))return nt(r,e);if(!r||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(r))return a||u||!r.includes(` +`)?nt(r,e):It(t,e,n,s);if(!a&&!u&&o!==j.PLAIN&&r.includes(` +`))return It(t,e,n,s);if(en(r)){if(l==="")return e.forceBlockIndent=!0,It(t,e,n,s);if(a&&l===c)return nt(r,e)}const d=r.replace(/\n+/g,`$& +${l}`);if(i){const h=g=>{var y;return g.default&&g.tag!=="tag:yaml.org,2002:str"&&((y=g.test)==null?void 0:y.test(d))},{compat:p,tags:m}=e.doc.schema;if(m.some(h)||p!=null&&p.some(h))return nt(r,e)}return a?d:Yt(d,l,Hs,Xt(e,!1))}function Xr(t,e,n,s){const{implicitKey:o,inFlow:r}=e,i=typeof t.value=="string"?t:Object.assign({},t,{value:String(t.value)});let{type:a}=t;a!==j.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(i.value)&&(a=j.QUOTE_DOUBLE);const l=u=>{switch(u){case j.BLOCK_FOLDED:case j.BLOCK_LITERAL:return o||r?nt(i.value,e):It(i,e,n,s);case j.QUOTE_DOUBLE:return gt(i.value,e);case j.QUOTE_SINGLE:return yn(i.value,e);case j.PLAIN:return Yr(i,e,n,s);default:return null}};let c=l(a);if(c===null){const{defaultKeyType:u,defaultStringType:d}=e.options,h=o&&u||d;if(c=l(h),c===null)throw new Error(`Unsupported default string type ${h}`)}return c}function ei(t,e){const n=Object.assign({blockQuote:!0,commentString:Qr,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},t.schema.toStringOptions,e);let s;switch(n.collectionStyle){case"block":s=!1;break;case"flow":s=!0;break;default:s=null}return{anchors:new Set,doc:t,flowCollectionPadding:n.flowCollectionPadding?" ":"",indent:"",indentStep:typeof n.indent=="number"?" ".repeat(n.indent):" ",inFlow:s,options:n}}function ti(t,e){var o;if(e.tag){const r=t.filter(i=>i.tag===e.tag);if(r.length>0)return r.find(i=>i.format===e.format)??r[0]}let n,s;if(F(e)){s=e.value;const r=t.filter(i=>{var a;return(a=i.identify)==null?void 0:a.call(i,s)});n=r.find(i=>i.format===e.format)??r.find(i=>!i.format)}else s=e,n=t.find(r=>r.nodeClass&&s instanceof r.nodeClass);if(!n){const r=((o=s==null?void 0:s.constructor)==null?void 0:o.name)??typeof s;throw new Error(`Tag not resolved for ${r} value`)}return n}function ni(t,e,{anchors:n,doc:s}){if(!s.directives)return"";const o=[],r=(F(t)||J(t))&&t.anchor;r&&Is(r)&&(n.add(r),o.push(`&${r}`));const i=t.tag?t.tag:e.default?null:e.tag;return i&&o.push(s.directives.tagString(i)),o.join(" ")}function Vt(t,e,n,s){var l;if(U(t))return t.toString(e,n,s);if(it(t)){if(e.doc.directives)return t.toString(e);if((l=e.resolvedAliases)!=null&&l.has(t))throw new TypeError("Cannot stringify circular structure without alias nodes");e.resolvedAliases?e.resolvedAliases.add(t):e.resolvedAliases=new Set([t]),t=t.resolve(e.doc)}let o;const r=q(t)?t:e.doc.createNode(t,{onTagObj:c=>o=c});o||(o=ti(e.doc.schema.tags,r));const i=ni(r,o,e);i.length>0&&(e.indentAtStart=(e.indentAtStart??0)+i.length+1);const a=typeof o.stringify=="function"?o.stringify(r,e,n,s):F(r)?Xr(r,e,n,s):r.toString(e,n,s);return i?F(r)||a[0]==="{"||a[0]==="["?`${i} ${a}`:`${i} +${e.indent}${a}`:a}function si({key:t,value:e},n,s,o){const{allNullValues:r,doc:i,indent:a,indentStep:l,options:{commentString:c,indentSeq:u,simpleKeys:d}}=n;let h=q(t)&&t.comment||null;if(d){if(h)throw new Error("With simple keys, key nodes cannot have comments");if(J(t)){const P="With simple keys, collection cannot be used as a key value";throw new Error(P)}}let p=!d&&(!t||h&&e==null&&!n.inFlow||J(t)||(F(t)?t.type===j.BLOCK_FOLDED||t.type===j.BLOCK_LITERAL:typeof t=="object"));n=Object.assign({},n,{allNullValues:!1,implicitKey:!p&&(d||!r),indent:a+l});let m=!1,g=!1,y=Vt(t,n,()=>m=!0,()=>g=!0);if(!p&&!n.inFlow&&y.length>1024){if(d)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");p=!0}if(n.inFlow){if(r||e==null)return m&&s&&s(),y===""?"?":p?`? ${y}`:y}else if(r&&!d||e==null&&p)return y=`? ${y}`,h&&!m?y+=tt(y,n.indent,c(h)):g&&o&&o(),y;m&&(h=null),p?(h&&(y+=tt(y,n.indent,c(h))),y=`? ${y} +${a}:`):(y=`${y}:`,h&&(y+=tt(y,n.indent,c(h))));let v,_,w;q(e)?(v=!!e.spaceBefore,_=e.commentBefore,w=e.comment):(v=!1,_=null,w=null,e&&typeof e=="object"&&(e=i.createNode(e))),n.implicitKey=!1,!p&&!h&&F(e)&&(n.indentAtStart=y.length+1),g=!1,!u&&l.length>=2&&!n.inFlow&&!p&&Hn(e)&&!e.flow&&!e.tag&&!e.anchor&&(n.indent=n.indent.substring(2));let b=!1;const E=Vt(e,n,()=>b=!0,()=>g=!0);let M=" ";if(h||v||_){if(M=v?` +`:"",_){const P=c(_);M+=` +${wt(P,n.indent)}`}E===""&&!n.inFlow?M===` +`&&(M=` + +`):M+=` +${n.indent}`}else if(!p&&J(e)){const P=E[0],A=E.indexOf(` +`),I=A!==-1,V=n.inFlow??e.flow??e.items.length===0;if(I||!V){let ne=!1;if(I&&(P==="&"||P==="!")){let $=E.indexOf(" ");P==="&"&&$!==-1&&$t===ns||F(t)&&t.value===ns&&(!t.type||t.type===j.PLAIN);function an(t,e,n){const s=t&&it(n)?n.resolve(t.doc):n;if(!Ds(s))throw new Error("Merge sources must be maps or map aliases");const o=s.toJSON(null,t,Map);for(const[r,i]of o)e instanceof Map?e.has(r)||e.set(r,i):e instanceof Set?e.add(r):Object.prototype.hasOwnProperty.call(e,r)||Object.defineProperty(e,r,{value:i,writable:!0,enumerable:!0,configurable:!0});return e}function ii(t,e,n){if(e===null)return"";if(typeof e!="object")return String(e);if(q(t)&&(n!=null&&n.doc)){const s=ei(n.doc,{});s.anchors=new Set;for(const r of n.anchors.keys())s.anchors.add(r.anchor);s.inFlow=!0,s.inStringifyKey=!0;const o=t.toString(s);if(!n.mapKeyWarned){let r=JSON.stringify(o);r.length>40&&(r=r.substring(0,36)+'..."'),oi(n.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${r}. Set mapAsMap: true to use object keys.`),n.mapKeyWarned=!0}return o}return JSON.stringify(e)}function Nn(t,e,n){const s=Ft(t,void 0,n),o=Ft(e,void 0,n);return new ie(s,o)}class ie{constructor(e,n=null){Object.defineProperty(this,re,{value:Cs}),this.key=e,this.value=n}clone(e){let{key:n,value:s}=this;return q(n)&&(n=n.clone(e)),q(s)&&(s=s.clone(e)),new ie(n,s)}toJSON(e,n){const s=n!=null&&n.mapAsMap?new Map:{};return Rs(n,s,this)}toString(e,n,s){return e!=null&&e.doc?si(this,e,n,s):JSON.stringify(this)}}function js(t,e,n){return(e.inFlow??t.flow?li:ai)(t,e,n)}function ai({comment:t,items:e},n,{blockItemPrefix:s,flowChars:o,itemIndent:r,onChompKeep:i,onComment:a}){const{indent:l,options:{commentString:c}}=n,u=Object.assign({},n,{indent:r,type:null});let d=!1;const h=[];for(let m=0;my=null,()=>d=!0);y&&(v+=tt(v,r,c(y))),d&&y&&(d=!1),h.push(s+v)}let p;if(h.length===0)p=o.start+o.end;else{p=h[0];for(let m=1;my=null);mu||v.includes(` +`))&&(c=!0),d.push(v),u=d.length}const{start:h,end:p}=n;if(d.length===0)return h+p;if(!c){const m=d.reduce((g,y)=>g+y.length+2,2);c=e.options.lineWidth>0&&m>e.options.lineWidth}if(c){let m=h;for(const g of d)m+=g?` +${r}${o}${g}`:` +`;return`${m} +${o}${p}`}else return`${h}${i}${d.join(" ")}${i}${p}`}function Ut({indent:t,options:{commentString:e}},n,s,o){if(s&&o&&(s=s.replace(/^\n+/,"")),s){const r=wt(e(s),t);n.push(r.trimStart())}}function Ke(t,e){const n=F(e)?e.value:e;for(const s of t)if(U(s)&&(s.key===e||s.key===n||F(s.key)&&s.key.value===n))return s}class Ye extends jn{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(Je,e),this.items=[]}static from(e,n,s){const{keepUndefined:o,replacer:r}=s,i=new this(e),a=(l,c)=>{if(typeof r=="function")c=r.call(n,l,c);else if(Array.isArray(r)&&!r.includes(l))return;(c!==void 0||o)&&i.items.push(Nn(l,c,s))};if(n instanceof Map)for(const[l,c]of n)a(l,c);else if(n&&typeof n=="object")for(const l of Object.keys(n))a(l,n[l]);return typeof e.sortMapEntries=="function"&&i.items.sort(e.sortMapEntries),i}add(e,n){var i;let s;U(e)?s=e:!e||typeof e!="object"||!("key"in e)?s=new ie(e,e==null?void 0:e.value):s=new ie(e.key,e.value);const o=Ke(this.items,s.key),r=(i=this.schema)==null?void 0:i.sortMapEntries;if(o){if(!n)throw new Error(`Key ${s.key} already set`);F(o.value)&&xs(s.value)?o.value.value=s.value:o.value=s.value}else if(r){const a=this.items.findIndex(l=>r(s,l)<0);a===-1?this.items.push(s):this.items.splice(a,0,s)}else this.items.push(s)}delete(e){const n=Ke(this.items,e);return n?this.items.splice(this.items.indexOf(n),1).length>0:!1}get(e,n){const s=Ke(this.items,e),o=s==null?void 0:s.value;return(!n&&F(o)?o.value:o)??void 0}has(e){return!!Ke(this.items,e)}set(e,n){this.add(new ie(e,n),!0)}toJSON(e,n,s){const o=s?new s:n!=null&&n.mapAsMap?new Map:{};n!=null&&n.onCreate&&n.onCreate(o);for(const r of this.items)Rs(n,o,r);return o}toString(e,n,s){if(!e)return JSON.stringify(this);for(const o of this.items)if(!U(o))throw new Error(`Map items must all be pairs; found ${JSON.stringify(o)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),js(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:s,onComment:n})}}class Ns extends jn{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(bt,e),this.items=[]}add(e){this.items.push(e)}delete(e){const n=Mt(e);return typeof n!="number"?!1:this.items.splice(n,1).length>0}get(e,n){const s=Mt(e);if(typeof s!="number")return;const o=this.items[s];return!n&&F(o)?o.value:o}has(e){const n=Mt(e);return typeof n=="number"&&n=0?e:null}function ci(t,e,n){const{replacer:s}=n,o=new Ns(t);o.tag="tag:yaml.org,2002:pairs";let r=0;if(e&&Symbol.iterator in Object(e))for(let i of e){typeof s=="function"&&(i=s.call(e,String(r++),i));let a,l;if(Array.isArray(i))if(i.length===2)a=i[0],l=i[1];else throw new TypeError(`Expected [key, value] tuple: ${i}`);else if(i&&i instanceof Object){const c=Object.keys(i);if(c.length===1)a=c[0],l=i[a];else throw new TypeError(`Expected tuple with one key, not ${c.length} keys`)}else a=i;o.items.push(Nn(a,l,n))}return o}class Fn extends Ns{constructor(){super(),this.add=Ye.prototype.add.bind(this),this.delete=Ye.prototype.delete.bind(this),this.get=Ye.prototype.get.bind(this),this.has=Ye.prototype.has.bind(this),this.set=Ye.prototype.set.bind(this),this.tag=Fn.tag}toJSON(e,n){if(!n)return super.toJSON(e);const s=new Map;n!=null&&n.onCreate&&n.onCreate(s);for(const o of this.items){let r,i;if(U(o)?(r=ee(o.key,"",n),i=ee(o.value,r,n)):r=ee(o,"",n),s.has(r))throw new Error("Ordered maps must not include duplicate keys");s.set(r,i)}return s}static from(e,n,s){const o=ci(e,n,s),r=new this;return r.items=o.items,r}}Fn.tag="tag:yaml.org,2002:omap";class Vn extends Ye{constructor(e){super(e),this.tag=Vn.tag}add(e){let n;U(e)?n=e:e&&typeof e=="object"&&"key"in e&&"value"in e&&e.value===null?n=new ie(e.key,null):n=new ie(e,null),Ke(this.items,n.key)||this.items.push(n)}get(e,n){const s=Ke(this.items,e);return!n&&U(s)?F(s.key)?s.key.value:s.key:s}set(e,n){if(typeof n!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof n}`);const s=Ke(this.items,e);s&&!n?this.items.splice(this.items.indexOf(s),1):!s&&n&&this.items.push(new ie(e))}toJSON(e,n){return super.toJSON(e,n,Set)}toString(e,n,s){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),n,s);throw new Error("Set items must all have null values")}static from(e,n,s){const{replacer:o}=s,r=new this(e);if(n&&Symbol.iterator in Object(n))for(let i of n)typeof o=="function"&&(i=o.call(n,i,i)),r.items.push(Nn(i,null,s));return r}}Vn.tag="tag:yaml.org,2002:set";function ui(t){return Array.from(new Set(t))}function ss(...t){let e,n,s;t.length===1?(e=0,s=1,[n]=t):[e,n,s=1]=t;const o=[];let r=e;for(;rs<=t).sort((s,o)=>s-o)}function El(){const t=L(Date.now()),e=lo({interval:1e3}),n=f(()=>{const o=(e.value-t.value)/1e3,r=Math.floor(o%60).toString().padStart(2,"0");return`${Math.floor(o/60).toString().padStart(2,"0")}:${r}`});function s(){t.value=e.value}return{timer:n,resetTimer:s}}function Un(t=5){const e=[],n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",s=n.length;for(let o=0;o0){const r=document.getElementsByTagName("link"),i=document.querySelector("meta[property=csp-nonce]"),a=(i==null?void 0:i.nonce)||(i==null?void 0:i.getAttribute("nonce"));o=Promise.all(n.map(l=>{if(l=hi(l),l in os)return;os[l]=!0;const c=l.endsWith(".css"),u=c?'[rel="stylesheet"]':"";if(!!s)for(let p=r.length-1;p>=0;p--){const m=r[p];if(m.href===l&&(!c||m.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${u}`))return;const h=document.createElement("link");if(h.rel=c?"stylesheet":di,c||(h.as="script",h.crossOrigin=""),h.href=l,a&&h.setAttribute("nonce",a),document.head.appendChild(h),c)return new Promise((p,m)=>{h.addEventListener("load",p),h.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${l}`)))})}))}return o.then(()=>e()).catch(r=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=r,window.dispatchEvent(i),!i.defaultPrevented)throw r})},Fs=(t,e)=>{const n=t.__vccOpts||t;for(const[s,o]of e)n[s]=o;return n},pi={},mi={class:"px-4 py-10 text-center text-red-700 dark:text-red-500 font-bold font-mono"};function gi(t,e){return vs(),co("div",mi," An error occurred on this slide. Check the terminal for more information. ")}const yi=Fs(pi,[["render",gi],["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/error.vue"]]),T=Object.freeze(Object.defineProperty({__proto__:null,default:yi},Symbol.toStringTag,{value:"Module"})),ue=k({theme:"default",layout:"cover"}),vi=k({layout:f(()=>ue.layout),transition:f(()=>ue.transition),class:f(()=>ue.class),clicks:f(()=>ue.clicks),name:f(()=>ue.name),preload:f(()=>ue.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:ue,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),fe=k({layout:"two-cols"}),_i=k({layout:f(()=>fe.layout),transition:f(()=>fe.transition),class:f(()=>fe.class),clicks:f(()=>fe.clicks),name:f(()=>fe.name),preload:f(()=>fe.preload),slide:{index:1,content:"",note:"",title:"回顾",level:1,noteHTML:"",raw:"",frontmatter:fe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:11,id:1,no:2},__clicksContext:null,__preloaded:!1}),de=k({layout:"two-cols"}),wi=k({layout:f(()=>de.layout),transition:f(()=>de.transition),class:f(()=>de.class),clicks:f(()=>de.clicks),name:f(()=>de.name),preload:f(()=>de.preload),slide:{index:2,content:"",note:"",title:"从主机到CS模式",level:1,noteHTML:"",raw:"",frontmatter:de,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:25,id:2,no:3},__clicksContext:null,__preloaded:!1}),he=k({}),ki=k({layout:f(()=>he.layout),transition:f(()=>he.transition),class:f(()=>he.class),clicks:f(()=>he.clicks),name:f(()=>he.name),preload:f(()=>he.preload),slide:{index:3,content:"",note:"",title:"三层的分割",level:1,noteHTML:"",raw:"",frontmatter:he,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:50,id:3,no:4},__clicksContext:null,__preloaded:!1}),pe=k({}),bi=k({layout:f(()=>pe.layout),transition:f(()=>pe.transition),class:f(()=>pe.class),clicks:f(()=>pe.clicks),name:f(()=>pe.name),preload:f(()=>pe.preload),slide:{index:4,content:"",note:"",title:"Fat Clients",level:1,noteHTML:"",raw:"",frontmatter:pe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:60,id:4,no:5},__clicksContext:null,__preloaded:!1}),me=k({}),Si=k({layout:f(()=>me.layout),transition:f(()=>me.transition),class:f(()=>me.class),clicks:f(()=>me.clicks),name:f(()=>me.name),preload:f(()=>me.preload),slide:{index:5,content:"",note:"",title:"Fat Servers",level:1,noteHTML:"",raw:"",frontmatter:me,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:76,id:5,no:6},__clicksContext:null,__preloaded:!1}),ge=k({}),Mi=k({layout:f(()=>ge.layout),transition:f(()=>ge.transition),class:f(()=>ge.class),clicks:f(()=>ge.clicks),name:f(()=>ge.name),preload:f(()=>ge.preload),slide:{index:6,content:"",note:"",title:"From 2-tiers to 3 tiers",level:1,noteHTML:"",raw:"",frontmatter:ge,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:87,id:6,no:7},__clicksContext:null,__preloaded:!1}),ye=k({}),Oi=k({layout:f(()=>ye.layout),transition:f(()=>ye.transition),class:f(()=>ye.class),clicks:f(()=>ye.clicks),name:f(()=>ye.name),preload:f(()=>ye.preload),slide:{index:7,content:"",note:"",title:"Java EE",level:1,noteHTML:"",raw:"",frontmatter:ye,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:98,id:7,no:8},__clicksContext:null,__preloaded:!1}),ve=k({layout:"two-cols"}),Ei=k({layout:f(()=>ve.layout),transition:f(()=>ve.transition),class:f(()=>ve.class),clicks:f(()=>ve.clicks),name:f(()=>ve.name),preload:f(()=>ve.preload),slide:{index:8,content:"",note:"",title:"Java Servlet",level:1,noteHTML:"",raw:"",frontmatter:ve,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:104,id:8,no:9},__clicksContext:null,__preloaded:!1}),_e=k({}),Ti=k({layout:f(()=>_e.layout),transition:f(()=>_e.transition),class:f(()=>_e.class),clicks:f(()=>_e.clicks),name:f(()=>_e.name),preload:f(()=>_e.preload),slide:{index:9,content:"",note:"",title:"B/S架构:更便于部署和管理",level:1,noteHTML:"",raw:"",frontmatter:_e,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:132,id:9,no:10},__clicksContext:null,__preloaded:!1}),we=k({layout:"two-cols"}),$i=k({layout:f(()=>we.layout),transition:f(()=>we.transition),class:f(()=>we.class),clicks:f(()=>we.clicks),name:f(()=>we.name),preload:f(()=>we.preload),slide:{index:10,content:"",note:"",title:"Web Application",level:1,noteHTML:"",raw:"",frontmatter:we,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:144,id:10,no:11},__clicksContext:null,__preloaded:!1}),ke=k({layout:"two-cols"}),Li=k({layout:f(()=>ke.layout),transition:f(()=>ke.transition),class:f(()=>ke.class),clicks:f(()=>ke.clicks),name:f(()=>ke.name),preload:f(()=>ke.preload),slide:{index:11,content:"",note:"",title:"CGI",level:1,noteHTML:"",raw:"",frontmatter:ke,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:171,id:11,no:12},__clicksContext:null,__preloaded:!1}),be=k({}),Pi=k({layout:f(()=>be.layout),transition:f(()=>be.transition),class:f(()=>be.class),clicks:f(()=>be.clicks),name:f(()=>be.name),preload:f(()=>be.preload),slide:{index:12,content:"",note:"",title:"CGI Example",level:1,noteHTML:"",raw:"",frontmatter:be,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:190,id:12,no:13},__clicksContext:null,__preloaded:!1}),Se=k({}),Ai=k({layout:f(()=>Se.layout),transition:f(()=>Se.transition),class:f(()=>Se.class),clicks:f(()=>Se.clicks),name:f(()=>Se.name),preload:f(()=>Se.preload),slide:{index:13,content:"",note:"",title:"Active Pages",level:1,noteHTML:"",raw:"",frontmatter:Se,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:210,id:13,no:14},__clicksContext:null,__preloaded:!1}),Me=k({layout:"two-cols"}),Ci=k({layout:f(()=>Me.layout),transition:f(()=>Me.transition),class:f(()=>Me.class),clicks:f(()=>Me.clicks),name:f(()=>Me.name),preload:f(()=>Me.preload),slide:{index:14,content:"",note:"",title:"Servlet",level:1,noteHTML:"",raw:"",frontmatter:Me,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:228,id:14,no:15},__clicksContext:null,__preloaded:!1}),Oe=k({0:{Advantages:["Running a servlet doesn’t require creating a separate process each time and one instance can handle multiple requests, not a separate instance for every request","It stays in memory and doesn’t have to be reloaded each time","Untrusted servlets can be run in a “sandbox”"]},1:{Disadvantage:["Less choice of languages (CGI scripts can be in any language)"]}}),Di=k({layout:f(()=>Oe.layout),transition:f(()=>Oe.transition),class:f(()=>Oe.class),clicks:f(()=>Oe.clicks),name:f(()=>Oe.name),preload:f(()=>Oe.preload),slide:{index:15,content:"",note:"",title:"Servlet Example",level:1,noteHTML:"",raw:"",frontmatter:Oe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:245,id:15,no:16},__clicksContext:null,__preloaded:!1}),Ee=k({}),Ii=k({layout:f(()=>Ee.layout),transition:f(()=>Ee.transition),class:f(()=>Ee.class),clicks:f(()=>Ee.clicks),name:f(()=>Ee.name),preload:f(()=>Ee.preload),slide:{index:16,content:"",note:"",title:"`doGet()`",level:1,noteHTML:"",raw:"",frontmatter:Ee,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:285,id:16,no:17},__clicksContext:null,__preloaded:!1}),Te=k({layout:"two-cols"}),xi=k({layout:f(()=>Te.layout),transition:f(()=>Te.transition),class:f(()=>Te.class),clicks:f(()=>Te.clicks),name:f(()=>Te.name),preload:f(()=>Te.preload),slide:{index:17,content:"",note:"",title:"问题来了",level:1,noteHTML:"",raw:"",frontmatter:Te,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:293,id:17,no:18},__clicksContext:null,__preloaded:!1}),$e=k({}),Hi=k({layout:f(()=>$e.layout),transition:f(()=>$e.transition),class:f(()=>$e.class),clicks:f(()=>$e.clicks),name:f(()=>$e.name),preload:f(()=>$e.preload),slide:{index:18,content:"",note:"",title:"做一些改变",level:1,noteHTML:"",raw:"",frontmatter:$e,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:313,id:18,no:19},__clicksContext:null,__preloaded:!1}),Le=k({}),Ri=k({layout:f(()=>Le.layout),transition:f(()=>Le.transition),class:f(()=>Le.class),clicks:f(()=>Le.clicks),name:f(()=>Le.name),preload:f(()=>Le.preload),slide:{index:19,content:"",note:"",title:"UI Template",level:1,noteHTML:"",raw:"",frontmatter:Le,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:322,id:19,no:20},__clicksContext:null,__preloaded:!1}),Pe=k({}),ji=k({layout:f(()=>Pe.layout),transition:f(()=>Pe.transition),class:f(()=>Pe.class),clicks:f(()=>Pe.clicks),name:f(()=>Pe.name),preload:f(()=>Pe.preload),slide:{index:20,content:"",note:"",title:"UI Template Demo",level:1,noteHTML:"",raw:"",frontmatter:Pe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:349,id:20,no:21},__clicksContext:null,__preloaded:!1}),Ae=k({}),Ni=k({layout:f(()=>Ae.layout),transition:f(()=>Ae.transition),class:f(()=>Ae.class),clicks:f(()=>Ae.clicks),name:f(()=>Ae.name),preload:f(()=>Ae.preload),slide:{index:21,content:"",note:"",title:"做更多改变",level:1,noteHTML:"",raw:"",frontmatter:Ae,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:370,id:21,no:22},__clicksContext:null,__preloaded:!1}),Ce=k({layout:"two-cols"}),Fi=k({layout:f(()=>Ce.layout),transition:f(()=>Ce.transition),class:f(()=>Ce.class),clicks:f(()=>Ce.clicks),name:f(()=>Ce.name),preload:f(()=>Ce.preload),slide:{index:22,content:"",note:"",title:"MVC",level:1,noteHTML:"",raw:"",frontmatter:Ce,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:376,id:22,no:23},__clicksContext:null,__preloaded:!1}),De=k({}),Vi=k({layout:f(()=>De.layout),transition:f(()=>De.transition),class:f(()=>De.class),clicks:f(()=>De.clicks),name:f(()=>De.name),preload:f(()=>De.preload),slide:{index:23,content:"",note:"",title:"MVC实例",level:1,noteHTML:"",raw:"",frontmatter:De,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:398,id:23,no:24},__clicksContext:null,__preloaded:!1}),Ie=k({layout:"two-cols"}),Ui=k({layout:f(()=>Ie.layout),transition:f(()=>Ie.transition),class:f(()=>Ie.class),clicks:f(()=>Ie.clicks),name:f(()=>Ie.name),preload:f(()=>Ie.preload),slide:{index:24,content:"",note:"",title:"GEF",level:1,noteHTML:"",raw:"",frontmatter:Ie,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:409,id:24,no:25},__clicksContext:null,__preloaded:!1}),xe=k({}),Bi=k({layout:f(()=>xe.layout),transition:f(()=>xe.transition),class:f(()=>xe.class),clicks:f(()=>xe.clicks),name:f(()=>xe.name),preload:f(()=>xe.preload),slide:{index:25,content:"",note:"",title:"Spring MVC",level:1,noteHTML:"",raw:"",frontmatter:xe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:426,id:25,no:26},__clicksContext:null,__preloaded:!1}),He=k({}),Wi=k({layout:f(()=>He.layout),transition:f(()=>He.transition),class:f(()=>He.class),clicks:f(()=>He.clicks),name:f(()=>He.name),preload:f(()=>He.preload),slide:{index:26,content:"",note:"",title:"Spring Web",level:1,noteHTML:"",raw:"",frontmatter:He,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:437,id:26,no:27},__clicksContext:null,__preloaded:!1}),Re=k({}),zi=k({layout:f(()=>Re.layout),transition:f(()=>Re.transition),class:f(()=>Re.class),clicks:f(()=>Re.clicks),name:f(()=>Re.name),preload:f(()=>Re.preload),slide:{index:27,content:"",note:"",title:"Testing",level:1,noteHTML:"",raw:"",frontmatter:Re,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:455,id:27,no:28},__clicksContext:null,__preloaded:!1}),je=k({}),qi=k({layout:f(()=>je.layout),transition:f(()=>je.transition),class:f(()=>je.class),clicks:f(()=>je.clicks),name:f(()=>je.name),preload:f(()=>je.preload),slide:{index:28,content:"",note:"",title:"Spring Petclinic",level:1,noteHTML:"",raw:"",frontmatter:je,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:471,id:28,no:29},__clicksContext:null,__preloaded:!1}),Ne=k({}),Ki=k({layout:f(()=>Ne.layout),transition:f(()=>Ne.transition),class:f(()=>Ne.class),clicks:f(()=>Ne.clicks),name:f(()=>Ne.name),preload:f(()=>Ne.preload),slide:{index:29,content:"",note:"",title:"代码结构",level:1,noteHTML:"",raw:"",frontmatter:Ne,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:480,id:29,no:30},__clicksContext:null,__preloaded:!1}),Fe=k({}),Ji=k({layout:f(()=>Fe.layout),transition:f(()=>Fe.transition),class:f(()=>Fe.class),clicks:f(()=>Fe.clicks),name:f(()=>Fe.name),preload:f(()=>Fe.preload),slide:{index:30,content:"",note:"",title:"Community Versions",level:1,noteHTML:"",raw:"",frontmatter:Fe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:489,id:30,no:31},__clicksContext:null,__preloaded:!1}),Ve=k({}),Gi=k({layout:f(()=>Ve.layout),transition:f(()=>Ve.transition),class:f(()=>Ve.class),clicks:f(()=>Ve.clicks),name:f(()=>Ve.name),preload:f(()=>Ve.preload),slide:{index:31,content:"",note:"",title:"改进版本",level:1,noteHTML:"",raw:"",frontmatter:Ve,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:496,id:31,no:32},__clicksContext:null,__preloaded:!1}),Ue=k({}),Qi=k({layout:f(()=>Ue.layout),transition:f(()=>Ue.transition),class:f(()=>Ue.class),clicks:f(()=>Ue.clicks),name:f(()=>Ue.name),preload:f(()=>Ue.preload),slide:{index:32,content:"",note:"",title:"Spring Stereotype",level:1,noteHTML:"",raw:"",frontmatter:Ue,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:512,id:32,no:33},__clicksContext:null,__preloaded:!1}),Be=k({}),Zi=k({layout:f(()=>Be.layout),transition:f(()=>Be.transition),class:f(()=>Be.class),clicks:f(()=>Be.clicks),name:f(()=>Be.name),preload:f(()=>Be.preload),slide:{index:33,content:"",note:"",title:"多视图",level:1,noteHTML:"",raw:"",frontmatter:Be,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:522,id:33,no:34},__clicksContext:null,__preloaded:!1}),We=k({layout:"two-cols"}),Yi=k({layout:f(()=>We.layout),transition:f(()=>We.transition),class:f(()=>We.class),clicks:f(()=>We.clicks),name:f(()=>We.name),preload:f(()=>We.preload),slide:{index:34,content:"",note:"",title:"小结与概念梳理",level:1,noteHTML:"",raw:"",frontmatter:We,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:535,id:34,no:35},__clicksContext:null,__preloaded:!1}),Xi=[{no:1,meta:vi,component:async()=>{try{return await O(()=>import("./slidev/1-zyHB4xIj.js"),__vite__mapDeps([0,1,2,3,4]))}catch(t){return console.error("Failed to load slide 1:",t),T}}},{no:2,meta:_i,component:async()=>{try{return await O(()=>import("./2-C-oyZrTu.js"),__vite__mapDeps([5,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 2:",t),T}}},{no:3,meta:wi,component:async()=>{try{return await O(()=>import("./3-CTSok6fy.js"),__vite__mapDeps([7,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 3:",t),T}}},{no:4,meta:ki,component:async()=>{try{return await O(()=>import("./4-BN2MnG9z.js"),__vite__mapDeps([8,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 4:",t),T}}},{no:5,meta:bi,component:async()=>{try{return await O(()=>import("./5-CrQVKxLm.js"),__vite__mapDeps([10,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 5:",t),T}}},{no:6,meta:Si,component:async()=>{try{return await O(()=>import("./6-Cr-nlwMv.js"),__vite__mapDeps([11,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 6:",t),T}}},{no:7,meta:Mi,component:async()=>{try{return await O(()=>import("./7-D28Ao5Tj.js"),__vite__mapDeps([12,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 7:",t),T}}},{no:8,meta:Oi,component:async()=>{try{return await O(()=>import("./8-CMERhiLJ.js"),__vite__mapDeps([13,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 8:",t),T}}},{no:9,meta:Ei,component:async()=>{try{return await O(()=>import("./slidev/9-BV45p3PH.js"),__vite__mapDeps([14,15,16,1,2,17,6,3,4]))}catch(t){return console.error("Failed to load slide 9:",t),T}}},{no:10,meta:Ti,component:async()=>{try{return await O(()=>import("./10-BwZVUisL.js"),__vite__mapDeps([18,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 10:",t),T}}},{no:11,meta:$i,component:async()=>{try{return await O(()=>import("./11-Djz-R7fc.js"),__vite__mapDeps([19,15,16,1,2,6,3,4]))}catch(t){return console.error("Failed to load slide 11:",t),T}}},{no:12,meta:Li,component:async()=>{try{return await O(()=>import("./12-CTq8936B.js"),__vite__mapDeps([20,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 12:",t),T}}},{no:13,meta:Pi,component:async()=>{try{return await O(()=>import("./slidev/13-AOBR-h7s.js"),__vite__mapDeps([21,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 13:",t),T}}},{no:14,meta:Ai,component:async()=>{try{return await O(()=>import("./slidev/14-5boPtNbr.js"),__vite__mapDeps([22,15,16,1,2,9,3,4]))}catch(t){return console.error("Failed to load slide 14:",t),T}}},{no:15,meta:Ci,component:async()=>{try{return await O(()=>import("./slidev/15-tDwhDkne.js"),__vite__mapDeps([23,1,17,6,2,3,4]))}catch(t){return console.error("Failed to load slide 15:",t),T}}},{no:16,meta:Di,component:async()=>{try{return await O(()=>import("./slidev/16-CevHqMsf.js"),__vite__mapDeps([24,15,16,1,2,9,3,4]))}catch(t){return console.error("Failed to load slide 16:",t),T}}},{no:17,meta:Ii,component:async()=>{try{return await O(()=>import("./17-DwjmKtbU.js"),__vite__mapDeps([25,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 17:",t),T}}},{no:18,meta:xi,component:async()=>{try{return await O(()=>import("./18-CzERz7Hg.js"),__vite__mapDeps([26,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 18:",t),T}}},{no:19,meta:Hi,component:async()=>{try{return await O(()=>import("./19-DTIgI3U8.js"),__vite__mapDeps([27,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 19:",t),T}}},{no:20,meta:Ri,component:async()=>{try{return await O(()=>import("./slidev/20-DP2pnIuZ.js"),__vite__mapDeps([28,15,16,1,2,9,3,4]))}catch(t){return console.error("Failed to load slide 20:",t),T}}},{no:21,meta:ji,component:async()=>{try{return await O(()=>import("./21-XBSSNZai.js"),__vite__mapDeps([29,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 21:",t),T}}},{no:22,meta:Ni,component:async()=>{try{return await O(()=>import("./22-BH8Ywq6a.js"),__vite__mapDeps([30,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 22:",t),T}}},{no:23,meta:Fi,component:async()=>{try{return await O(()=>import("./23-7XoRMmyG.js"),__vite__mapDeps([31,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 23:",t),T}}},{no:24,meta:Vi,component:async()=>{try{return await O(()=>import("./slidev/24-_QhM7MIH.js"),__vite__mapDeps([32,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 24:",t),T}}},{no:25,meta:Ui,component:async()=>{try{return await O(()=>import("./25-DpUtRdZO.js"),__vite__mapDeps([33,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 25:",t),T}}},{no:26,meta:Bi,component:async()=>{try{return await O(()=>import("./26-B8d1mFor.js"),__vite__mapDeps([34,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 26:",t),T}}},{no:27,meta:Wi,component:async()=>{try{return await O(()=>import("./27-B1uJdkpj.js"),__vite__mapDeps([35,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 27:",t),T}}},{no:28,meta:zi,component:async()=>{try{return await O(()=>import("./slidev/28-TGP_m2Z8.js"),__vite__mapDeps([36,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 28:",t),T}}},{no:29,meta:qi,component:async()=>{try{return await O(()=>import("./29-wjVkWkPI.js"),__vite__mapDeps([37,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 29:",t),T}}},{no:30,meta:Ki,component:async()=>{try{return await O(()=>import("./30-BlyhPRCt.js"),__vite__mapDeps([38,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 30:",t),T}}},{no:31,meta:Ji,component:async()=>{try{return await O(()=>import("./31-CwENefbm.js"),__vite__mapDeps([39,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 31:",t),T}}},{no:32,meta:Gi,component:async()=>{try{return await O(()=>import("./32-DfSYghP9.js"),__vite__mapDeps([40,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 32:",t),T}}},{no:33,meta:Qi,component:async()=>{try{return await O(()=>import("./33-CS1P9Jo-.js"),__vite__mapDeps([41,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 33:",t),T}}},{no:34,meta:Zi,component:async()=>{try{return await O(()=>import("./34-BIl3ktOa.js"),__vite__mapDeps([42,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 34:",t),T}}},{no:35,meta:Yi,component:async()=>{try{return await O(()=>import("./35-D3UKOMbw.js"),__vite__mapDeps([43,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 35:",t),T}}}],oe=Pn(Xi);function kt(t){return oe.value.find(e=>{var n;return e.no===+t||((n=e.meta.slide)==null?void 0:n.frontmatter.routeAlias)===t})}function st(t,e){var s;(typeof t=="number"||typeof t=="string")&&(t=kt(t));const n=((s=t.meta.slide)==null?void 0:s.frontmatter.routeAlias)??t.no;return e?`/presenter/${n}`:`/${n}`}function ea(t,e,{mode:n="replace"}={}){const s=Jt();return f({get(){const o=s.currentRoute.value.query[t];return o==null?e??null:Array.isArray(o)?o.filter(Boolean):o},set(o){Rt(()=>{(s.currentRoute.value.query[t]??(e==null?void 0:e.toString()))!==o.toString()&&s[Ln(n)]({query:{...s.currentRoute.value.query,[t]:`${o}`===e?void 0:o}})})}})}const _n=L(0);function ta(t){return t===!1||t==="false"?null:t==null||t===!0||t==="true"?"+1":Array.isArray(t)?[+t[0],+t[1]]:typeof t=="string"&&"+-".includes(t[0])?t:+t}function Vs(t,e=0,n){const s={get current(){return vt(+t.value,e,s.total)},set current(o){t.value=vt(+o,e,s.total)},clicksStart:e,relativeOffsets:new Map,maxMap:uo(new Map),onMounted(){},calculateSince(o,r=1){let i,a,l;if(typeof o=="string"){const c=s.currentOffset,u=+o;i=c+u,a=c+u+r-1,l=u+r-1}else i=o,a=o+r-1,l=0;return{start:i,end:+Number.POSITIVE_INFINITY,max:a,delta:l,isCurrent:f(()=>s.current===i),isActive:f(()=>s.current>=i)}},calculateRange([o,r]){let i,a,l;return typeof o=="string"?(i=s.currentOffset+ +o,l=+o):(i=o,l=0),typeof r=="string"?(a=i+ +r,l+=+r):a=r,{start:i,end:a,max:a,delta:l,isCurrent:f(()=>s.current===i),isActive:f(()=>i<=s.current&&s.currentH.colorSchema!=="auto"),Us=f({get(){return is.value?H.colorSchema==="dark":ln.value==="auto"?rs.value:ln.value==="dark"},set(t){is.value||(ln.value=t===rs.value?"auto":t?"dark":"light")}}),$l=_s(Us);Gt&&Q(Us,t=>{const e=document.querySelector("html");e.classList.toggle("dark",t),e.classList.toggle("light",!t)},{immediate:!0});const sa={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function oa(t,e=!1){if(!t||(typeof t=="string"&&(t={name:t}),!t.name))return;let n=t.name.includes("|")?t.name:sa[t.name]||t.name;if(n.includes("|")){const[s,o]=n.split("|").map(r=>r.trim());n=e?o:s}if(n)return{...t,name:n}}function ra(t,e,n){var o,r;let s=t>0?(o=n==null?void 0:n.meta)==null?void 0:o.transition:(r=e==null?void 0:e.meta)==null?void 0:r.transition;return s||(s=H.transition),oa(s,t<0)}function Bs(t,e,n=1){var o,r,i,a,l,c,u,d,h;const s=(r=(o=e.meta)==null?void 0:o.slide)==null?void 0:r.level;s&&s>n&&t.length>0?Bs(t[t.length-1].children,e,n+1):t.push({no:e.no,children:[],level:n,path:st(((a=(i=e.meta.slide)==null?void 0:i.frontmatter)==null?void 0:a.routeAlias)??e.no,!1),hideInToc:!!((u=(c=(l=e.meta)==null?void 0:l.slide)==null?void 0:c.frontmatter)!=null&&u.hideInToc),title:(h=(d=e.meta)==null?void 0:d.slide)==null?void 0:h.title})}function Ws(t,e,n=!1,s,o){return t.map(r=>{const i={...r,active:r.no===(o==null?void 0:o.value),hasActiveParent:n};return i.children.length>0&&(i.children=Ws(i.children,e,i.active||i.hasActiveParent,i,o)),s&&(i.active||i.activeParent)&&(s.activeParent=!0),i})}function zs(t,e=1){return t.filter(n=>!n.hideInToc).map(n=>({...n,children:zs(n.children,e+1)}))}function ia(t,e,n){const s=f(()=>t.value.filter(r=>{var i,a;return(a=(i=r.meta)==null?void 0:i.slide)==null?void 0:a.title}).reduce((r,i)=>(Bs(r,i),r),[])),o=f(()=>Ws(s.value,n.value,void 0,void 0,e));return f(()=>zs(o.value))}function aa(t,e,n=L(0),s,o,r){const i=f(()=>oe.value.length),a=L(0),l=L(0),c=f(()=>st(t.value,s.value)),u=f(()=>t.value.no),d=f(()=>{var N;return((N=t.value.meta)==null?void 0:N.layout)||(u.value===1?"cover":"default")}),h=f(()=>e.value.current),p=f(()=>e.value.clicksStart),m=f(()=>e.value.total),g=f(()=>oe.value[Math.min(oe.value.length,u.value+1)-1]),y=f(()=>oe.value[Math.max(1,u.value-1)-1]),v=f(()=>u.valueu.value>1||h.value>0),w=f(()=>ra(a.value,t.value,y.value));Q(t,(N,x)=>{a.value=N.no-x.no});async function b(N){return!1}const E=ia(oe,u,t);async function M(){l.value=1,m.value<=n.value?await A():n.value+=1}async function P(){l.value=-1,n.value<=p.value?await I():n.value-=1}async function A(){l.value=1,u.value{const t=Jt(),e=f(()=>t.currentRoute.value),n=f(()=>(t.currentRoute.value.query,new URLSearchParams(location.search))),s=f(()=>n.value.has("print")),o=f(()=>n.value.get("print")==="clicks"),r=f(()=>n.value.has("embedded")),i=f(()=>e.value.name==="play"),a=f(()=>e.value.name==="presenter"),l=f(()=>e.value.name==="notes"),c=f(()=>!a.value&&(!H.remote||n.value.get("password")===H.remote)),u=ho(i,a),d=f(()=>{var v;return u.value?((v=kt(e.value.params.no))==null?void 0:v.no)??1:1}),h=f(()=>oe.value[d.value-1]),p=ea("clicks","0"),m=f(()=>y(h.value)),g=f({get(){let v=+(p.value||0);return Number.isNaN(v)&&(v=0),v},set(v){p.value=v.toString()}});function y(v){var b,E;if((b=v==null?void 0:v.meta)!=null&&b.__clicksContext)return v.meta.__clicksContext;const _=v.no,w=Vs(f({get(){return d.value===_?Math.max(+(p.value??0),w.clicksStart):d.value>_?mn:w.clicksStart},set(M){d.value===_&&(p.value=vt(M,w.clicksStart,w.total).toString())}}),((E=v==null?void 0:v.meta.slide)==null?void 0:E.frontmatter.clicksStart)??0,v==null?void 0:v.meta.clicks);return w.onMounted=()=>{d.value===_&&(p.value=vt(+p.value,w.clicksStart,w.total).toString())},v!=null&&v.meta&&(v.meta.__clicksContext=w),w}return{router:t,currentRoute:e,isPrintMode:s,isPrintWithClicks:o,isEmbedded:r,isPlaying:i,isPresenter:a,isNotesViewer:l,isPresenterAvailable:c,hasPrimarySlide:u,currentSlideNo:d,currentSlideRoute:h,clicksContext:m,queryClicksRaw:p,queryClicks:g,getPrimaryClicks:y}}),wn=ws(()=>{const t=la(),e=Jt(),n=aa(t.currentSlideRoute,t.clicksContext,t.queryClicks,t.isPresenter,t.isPrintMode,e);return Q([n.total,t.currentRoute],async()=>{t.hasPrimarySlide.value&&!kt(t.currentRoute.value.params.no)&&await n.goLast()},{flush:"pre",immediate:!0}),{...n,...t}}),ca=[];function ua(){const t=ys().appContext.app,e=k({nav:wn(),configs:H,themeConfigs:f(()=>H.themeConfig)});t.provide(Dn,L("none")),t.provide(xr,e),t.provide(Cn,f(()=>e.nav.currentSlideNo)),t.provide(Qt,Pn(na()));for(const d of ca)d();const n=H.titleTemplate.replace("%s",H.title||"Slidev"),{clicksContext:s,currentSlideNo:o,hasPrimarySlide:r,isNotesViewer:i,isPresenter:a}=wn();Or({title:n,htmlAttrs:H.htmlAttrs}),Lr(`${n} - shared`),Dr(`${n} - drawings`);const l=`${location.origin}_${Un()}`;function c(){i.value||!a.value&&!jr.includes(location.host.split(":")[0])||(a.value?(ct("page",+o.value),ct("clicks",s.value.current)):(ct("viewerPage",+o.value),ct("viewerClicks",s.value.current)),ct("lastUpdate",{id:l,type:a.value?"presenter":"viewer",time:new Date().getTime()}))}const u=Jt();u.afterEach(c),Q(s,c),Pr(d=>{var h;r.value&&((h=d.lastUpdate)==null?void 0:h.type)==="presenter"&&(+d.page!=+o.value||+s.value.current!=+d.clicks)&&(As.value=!1,u.replace({path:st(d.page,a.value),query:{...u.currentRoute.value.query,clicks:d.clicks||0}}))})}const fa=po({__name:"App",setup(t){return ua(),ot(()=>{for(const[e,n]of Object.entries(jo.value))document.body.style.setProperty(e,n.toString())}),(e,n)=>{const s=mo("RouterView");return vs(),go(s)}}}),da=Fs(fa,[["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function Ll(t,e=""){var o,r;const n=["slidev-page",e],s=(r=(o=t==null?void 0:t.meta)==null?void 0:o.slide)==null?void 0:r.no;return s!=null&&n.push(`slidev-page-${s}`),n.filter(Boolean).join(" ")}async function Pl(){const{saveAs:t}=await O(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),[]);t(typeof H.download=="string"?H.download:H.exportFilename?`${H.exportFilename}.pdf`:"/sa2024/04-mvc/slidev-exported.pdf",`${H.title}.pdf`)}function rt(t,e,n){var s;return((s=t.instance)==null?void 0:s.$).provides[e]??n}function ha(){return{install(t){t.directive("click",{name:"v-click",mounted(e,n){const s=xt(e,n,n.value);s!=null&&(e.classList.toggle(At,!0),e.dataset.slidevClicksStart=String(s.start),Number.isFinite(s.end)&&(e.dataset.slidevClicksEnd=String(s.end)),e.watchStopHandle=ot(()=>{const o=s.isActive.value,r=s.isCurrent.value,i=o&&!r;s.flagHide?(e.classList.toggle(s.flagFade?ft:ut,o),e.classList.toggle(sn,o)):e.classList.toggle(s.flagFade?ft:ut,!o),e.classList.toggle(on,r),e.classList.toggle(rn,i)}))},unmounted:cn}),t.directive("after",{name:"v-after",mounted(e,n){const s=xt(e,n,"+0");s!=null&&(e.classList.toggle(At,!0),e.watchStopHandle=ot(()=>{const o=s.isActive.value,r=s.isCurrent.value,i=o&&!r;s.flagHide?(e.classList.toggle(s.flagFade?ft:ut,o),e.classList.toggle(sn,o)):e.classList.toggle(s.flagFade?ft:ut,!o),e.classList.toggle(on,r),e.classList.toggle(rn,i)}))},unmounted:cn}),t.directive("click-hide",{name:"v-click-hide",mounted(e,n){const s=xt(e,n,n.value,!0);s!=null&&(e.classList.toggle(At,!0),e.watchStopHandle=ot(()=>{const o=s.isActive.value,r=s.isCurrent.value,i=o&&!r;e.classList.toggle(s.flagFade?ft:ut,o),e.classList.toggle(sn,o),e.classList.toggle(on,r),e.classList.toggle(rn,i)}))},unmounted:cn})}}}const qs=new Map;function xt(t,e,n,s=!1){var h;const o=(h=rt(e,Qt))==null?void 0:h.value;if(!t||!o)return null;const r=s||e.modifiers.hide!==!1&&e.modifiers.hide!=null,i=e.modifiers.fade!==!1&&e.modifiers.fade!=null,a=ta(n),l=o.calculate(a);if(!l)return null;o.register(t,l);const c=f(()=>r?!l.isActive.value:l.isActive.value),u=f(()=>c.value?"shown":Number.isFinite(l.end)?o.currents.push(...o)),kn(s,e,n)}function ga(t,e){return t[0]===e[0]&&t[1]===e[1]}function ya(t,e,n,s=1){const o=n,r=Math.max(e,.1),i=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,a=[0,0];if(o)for(const c of i)kn(c,a,o);const l=va(i,r,s);if(o){for(const c of i)kn(c,a,-o);ma(l,a,-o)}return l}function va(t,e,n){const s=[];for(const c of t){const u=[...c];ga(u[0],u[u.length-1])||u.push([u[0][0],u[0][1]]),u.length>2&&s.push(u)}const o=[];e=Math.max(e,.1);const r=[];for(const c of s)for(let u=0;uc.yminu.ymin?1:c.xu.x?1:c.ymax===u.ymax?0:(c.ymax-u.ymax)/Math.abs(c.ymax-u.ymax)),!r.length)return o;let i=[],a=r[0].ymin,l=0;for(;i.length||r.length;){if(r.length){let c=-1;for(let d=0;da);d++)c=d;r.splice(0,c+1).forEach(d=>{i.push({s:a,edge:d})})}if(i=i.filter(c=>!(c.edge.ymax<=a)),i.sort((c,u)=>c.edge.x===u.edge.x?0:(c.edge.x-u.edge.x)/Math.abs(c.edge.x-u.edge.x)),(n!==1||l%e===0)&&i.length>1)for(let c=0;c=i.length)break;const d=i[c].edge,h=i[u].edge;o.push([[Math.round(d.x),a],[Math.round(h.x),a]])}a+=n,i.forEach(c=>{c.edge.x=c.edge.x+n*c.edge.islope}),l++}return o}function St(t,e){var n;const s=e.hachureAngle+90;let o=e.hachureGap;o<0&&(o=e.strokeWidth*4),o=Math.round(Math.max(o,.1));let r=1;return e.roughness>=1&&(((n=e.randomizer)===null||n===void 0?void 0:n.next())||Math.random())>.7&&(r=o),ya(t,o,s,r||1)}class Bn{constructor(e){this.helper=e}fillPolygons(e,n){return this._fillPolygons(e,n)}_fillPolygons(e,n){const s=St(e,n);return{type:"fillSketch",ops:this.renderLines(s,n)}}renderLines(e,n){const s=[];for(const o of e)s.push(...this.helper.doubleLineOps(o[0][0],o[0][1],o[1][0],o[1][1],n));return s}}function tn(t){const e=t[0],n=t[1];return Math.sqrt(Math.pow(e[0]-n[0],2)+Math.pow(e[1]-n[1],2))}class _a extends Bn{fillPolygons(e,n){let s=n.hachureGap;s<0&&(s=n.strokeWidth*4),s=Math.max(s,.1);const o=Object.assign({},n,{hachureGap:s}),r=St(e,o),i=Math.PI/180*n.hachureAngle,a=[],l=s*.5*Math.cos(i),c=s*.5*Math.sin(i);for(const[d,h]of r)tn([d,h])&&a.push([[d[0]-l,d[1]+c],[...h]],[[d[0]+l,d[1]-c],[...h]]);return{type:"fillSketch",ops:this.renderLines(a,n)}}}class wa extends Bn{fillPolygons(e,n){const s=this._fillPolygons(e,n),o=Object.assign({},n,{hachureAngle:n.hachureAngle+90}),r=this._fillPolygons(e,o);return s.ops=s.ops.concat(r.ops),s}}class ka{constructor(e){this.helper=e}fillPolygons(e,n){n=Object.assign({},n,{hachureAngle:0});const s=St(e,n);return this.dotsOnLines(s,n)}dotsOnLines(e,n){const s=[];let o=n.hachureGap;o<0&&(o=n.strokeWidth*4),o=Math.max(o,.1);let r=n.fillWeight;r<0&&(r=n.strokeWidth/2);const i=o/4;for(const a of e){const l=tn(a),c=l/o,u=Math.ceil(c)-1,d=l-u*o,h=(a[0][0]+a[1][0])/2-o/4,p=Math.min(a[0][1],a[1][1]);for(let m=0;m{const a=tn(i),l=Math.floor(a/(s+o)),c=(a+o-l*(s+o))/2;let u=i[0],d=i[1];u[0]>d[0]&&(u=i[1],d=i[0]);const h=Math.atan((d[1]-u[1])/(d[0]-u[0]));for(let p=0;p{const i=tn(r),a=Math.round(i/(2*n));let l=r[0],c=r[1];l[0]>c[0]&&(l=r[1],c=r[0]);const u=Math.atan((c[1]-l[1])/(c[0]-l[0]));for(let d=0;du%2?c+n:c+e);r.push({key:"C",data:l}),e=l[4],n=l[5];break}case"Q":r.push({key:"Q",data:[...a]}),e=a[2],n=a[3];break;case"q":{const l=a.map((c,u)=>u%2?c+n:c+e);r.push({key:"Q",data:l}),e=l[2],n=l[3];break}case"A":r.push({key:"A",data:[...a]}),e=a[5],n=a[6];break;case"a":e+=a[5],n+=a[6],r.push({key:"A",data:[a[0],a[1],a[2],a[3],a[4],e,n]});break;case"H":r.push({key:"H",data:[...a]}),e=a[0];break;case"h":e+=a[0],r.push({key:"H",data:[e]});break;case"V":r.push({key:"V",data:[...a]}),n=a[0];break;case"v":n+=a[0],r.push({key:"V",data:[n]});break;case"S":r.push({key:"S",data:[...a]}),e=a[2],n=a[3];break;case"s":{const l=a.map((c,u)=>u%2?c+n:c+e);r.push({key:"S",data:l}),e=l[2],n=l[3];break}case"T":r.push({key:"T",data:[...a]}),e=a[0],n=a[1];break;case"t":e+=a[0],n+=a[1],r.push({key:"T",data:[e,n]});break;case"Z":case"z":r.push({key:"Z",data:[]}),e=s,n=o;break}return r}function Qs(t){const e=[];let n="",s=0,o=0,r=0,i=0,a=0,l=0;for(const{key:c,data:u}of t){switch(c){case"M":e.push({key:"M",data:[...u]}),[s,o]=u,[r,i]=u;break;case"C":e.push({key:"C",data:[...u]}),s=u[4],o=u[5],a=u[2],l=u[3];break;case"L":e.push({key:"L",data:[...u]}),[s,o]=u;break;case"H":s=u[0],e.push({key:"L",data:[s,o]});break;case"V":o=u[0],e.push({key:"L",data:[s,o]});break;case"S":{let d=0,h=0;n==="C"||n==="S"?(d=s+(s-a),h=o+(o-l)):(d=s,h=o),e.push({key:"C",data:[d,h,...u]}),a=u[0],l=u[1],s=u[2],o=u[3];break}case"T":{const[d,h]=u;let p=0,m=0;n==="Q"||n==="T"?(p=s+(s-a),m=o+(o-l)):(p=s,m=o);const g=s+2*(p-s)/3,y=o+2*(m-o)/3,v=d+2*(p-d)/3,_=h+2*(m-h)/3;e.push({key:"C",data:[g,y,v,_,d,h]}),a=p,l=m,s=d,o=h;break}case"Q":{const[d,h,p,m]=u,g=s+2*(d-s)/3,y=o+2*(h-o)/3,v=p+2*(d-p)/3,_=m+2*(h-m)/3;e.push({key:"C",data:[g,y,v,_,p,m]}),a=d,l=h,s=p,o=m;break}case"A":{const d=Math.abs(u[0]),h=Math.abs(u[1]),p=u[2],m=u[3],g=u[4],y=u[5],v=u[6];d===0||h===0?(e.push({key:"C",data:[s,o,y,v,y,v]}),s=y,o=v):(s!==y||o!==v)&&(Zs(s,o,y,v,d,h,p,m,g).forEach(function(w){e.push({key:"C",data:w})}),s=y,o=v);break}case"Z":e.push({key:"Z",data:[]}),s=r,o=i;break}n=c}return e}function Ta(t){return Math.PI*t/180}function dt(t,e,n){const s=t*Math.cos(n)-e*Math.sin(n),o=t*Math.sin(n)+e*Math.cos(n);return[s,o]}function Zs(t,e,n,s,o,r,i,a,l,c){const u=Ta(i);let d=[],h=0,p=0,m=0,g=0;if(c)[h,p,m,g]=c;else{[t,e]=dt(t,e,-u),[n,s]=dt(n,s,-u);const $=(t-n)/2,C=(e-s)/2;let R=$*$/(o*o)+C*C/(r*r);R>1&&(R=Math.sqrt(R),o=R*o,r=R*r);const N=a===l?-1:1,x=o*o,se=r*r,B=x*se-x*C*C-se*$*$,Y=x*C*C+se*$*$,D=N*Math.sqrt(Math.abs(B/Y));m=D*o*C/r+(t+n)/2,g=D*-r*$/o+(e+s)/2,h=Math.asin(parseFloat(((e-g)/r).toFixed(9))),p=Math.asin(parseFloat(((s-g)/r).toFixed(9))),tp&&(h=h-Math.PI*2),!l&&p>h&&(p=p-Math.PI*2)}let y=p-h;if(Math.abs(y)>Math.PI*120/180){const $=p,C=n,R=s;l&&p>h?p=h+Math.PI*120/180*1:p=h+Math.PI*120/180*-1,n=m+o*Math.cos(p),s=g+r*Math.sin(p),d=Zs(n,s,C,R,o,r,i,0,l,[p,$,m,g])}y=p-h;const v=Math.cos(h),_=Math.sin(h),w=Math.cos(p),b=Math.sin(p),E=Math.tan(y/4),M=4/3*o*E,P=4/3*r*E,A=[t,e],I=[t+M*_,e-P*v],V=[n+M*b,s-P*w],ne=[n,s];if(I[0]=2*A[0]-I[0],I[1]=2*A[1]-I[1],c)return[I,V,ne].concat(d);{d=[I,V,ne].concat(d);const $=[];for(let C=0;C2){const o=[];for(let r=0;rMath.PI*2&&(p=0,m=Math.PI*2);const g=Math.PI*2/l.curveStepCount,y=Math.min(g/2,(m-p)/2),v=ds(y,c,u,d,h,p,m,1,l);if(!l.disableMultiStroke){const _=ds(y,c,u,d,h,p,m,1.5,l);v.push(..._)}return i&&(a?v.push(...le(c,u,c+d*Math.cos(p),u+h*Math.sin(p),l),...le(c,u,c+d*Math.cos(m),u+h*Math.sin(m),l)):v.push({op:"lineTo",data:[c,u]},{op:"lineTo",data:[c+d*Math.cos(p),u+h*Math.sin(p)]})),{type:"path",ops:v}}function cs(t,e){const n=Qs(Gs(Wn(t))),s=[];let o=[0,0],r=[0,0];for(const{key:i,data:a}of n)switch(i){case"M":{r=[a[0],a[1]],o=[a[0],a[1]];break}case"L":s.push(...le(r[0],r[1],a[0],a[1],e)),r=[a[0],a[1]];break;case"C":{const[l,c,u,d,h,p]=a;s.push(...Ia(l,c,u,d,h,p,r,e)),r=[h,p];break}case"Z":s.push(...le(r[0],r[1],o[0],o[1],e)),r=[o[0],o[1]];break}return{type:"path",ops:s}}function fn(t,e){const n=[];for(const s of t)if(s.length){const o=e.maxRandomnessOffset||0,r=s.length;if(r>2){n.push({op:"move",data:[s[0][0]+S(o,e),s[0][1]+S(o,e)]});for(let i=1;iMath.PI*2&&(d=0,h=Math.PI*2);const p=(h-d)/i.curveStepCount,m=[];for(let g=d;g<=h;g=g+p)m.push([a+c*Math.cos(g),l+u*Math.sin(g)]);return m.push([a+c*Math.cos(h),l+u*Math.sin(h)]),m.push([a,l]),Xe([m],i)}function Aa(t,e){return S(t,e)}function Ca(t,e,n){return Bt(t,e,n)}function Da(t,e,n,s,o){return le(t,e,n,s,o,!0)}function us(t){const e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function eo(t){return t.randomizer||(t.randomizer=new pa(t.seed||0)),t.randomizer.next()}function Bt(t,e,n,s=1){return n.roughness*s*(eo(n)*(e-t)+t)}function S(t,e,n=1){return Bt(-t,t,e,n)}function le(t,e,n,s,o,r=!1){const i=r?o.disableMultiStrokeFill:o.disableMultiStroke,a=On(t,e,n,s,o,!0,!1);if(i)return a;const l=On(t,e,n,s,o,!0,!0);return a.concat(l)}function On(t,e,n,s,o,r,i){const a=Math.pow(t-n,2)+Math.pow(e-s,2),l=Math.sqrt(a);let c=1;l<200?c=1:l>500?c=.4:c=-.0016668*l+1.233334;let u=o.maxRandomnessOffset||0;u*u*100>a&&(u=l/10);const d=u/2,h=.2+eo(o)*.2;let p=o.bowing*o.maxRandomnessOffset*(s-e)/200,m=o.bowing*o.maxRandomnessOffset*(t-n)/200;p=S(p,o,c),m=S(m,o,c);const g=[],y=()=>S(d,o,c),v=()=>S(u,o,c),_=o.preserveVertices;return r&&(i?g.push({op:"move",data:[t+(_?0:y()),e+(_?0:y())]}):g.push({op:"move",data:[t+(_?0:S(u,o,c)),e+(_?0:S(u,o,c))]})),i?g.push({op:"bcurveTo",data:[p+t+(n-t)*h+y(),m+e+(s-e)*h+y(),p+t+2*(n-t)*h+y(),m+e+2*(s-e)*h+y(),n+(_?0:y()),s+(_?0:y())]}):g.push({op:"bcurveTo",data:[p+t+(n-t)*h+v(),m+e+(s-e)*h+v(),p+t+2*(n-t)*h+v(),m+e+2*(s-e)*h+v(),n+(_?0:v()),s+(_?0:v())]}),g}function Et(t,e,n){if(!t.length)return[];const s=[];s.push([t[0][0]+S(e,n),t[0][1]+S(e,n)]),s.push([t[0][0]+S(e,n),t[0][1]+S(e,n)]);for(let o=1;o3){const r=[],i=1-n.curveTightness;o.push({op:"move",data:[t[1][0],t[1][1]]});for(let a=1;a+21&&o.push(r):o.push(r),o.push(t[e+3])}else{const i=t[e+0],a=t[e+1],l=t[e+2],c=t[e+3],u=qe(i,a,.5),d=qe(a,l,.5),h=qe(l,c,.5),p=qe(u,d,.5),m=qe(d,h,.5),g=qe(p,m,.5);En([i,u,p,g],0,n,o),En([g,m,h,c],0,n,o)}return o}function ja(t,e){return zt(t,0,t.length,e)}function zt(t,e,n,s,o){const r=o||[],i=t[e],a=t[n-1];let l=0,c=1;for(let u=e+1;ul&&(l=d,c=u)}return Math.sqrt(l)>s?(zt(t,e,c+1,s,r),zt(t,c,n,s,r)):(r.length||r.push(i),r.push(a)),r}function Tn(t,e=.15,n){const s=[],o=(t.length-1)/3;for(let r=0;r0?zt(s,0,s.length,n):s}function Na(t,e,n){const s=Wn(t),o=Qs(Gs(s)),r=[];let i=[],a=[0,0],l=[];const c=()=>{l.length>=4&&i.push(...Tn(l,e)),l=[]},u=()=>{c(),i.length&&(r.push(i),i=[])};for(const{key:h,data:p}of o)switch(h){case"M":u(),a=[p[0],p[1]],i.push(a);break;case"L":c(),i.push([p[0],p[1]]);break;case"C":if(!l.length){const m=i.length?i[i.length-1]:a;l.push([m[0],m[1]])}l.push([p[0],p[1]]),l.push([p[2],p[3]]),l.push([p[4],p[5]]);break;case"Z":c(),i.push([a[0],a[1]]);break}if(u(),!n)return r;const d=[];for(const h of r){const p=ja(h,n);p.length&&d.push(p)}return d}const K="none";class Fa{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Ks()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,n,s){return{shape:e,sets:n||[],options:s||this.defaultOptions}}line(e,n,s,o,r){const i=this._o(r);return this._d("line",[G(e,n,s,o,i)],i)}rectangle(e,n,s,o,r){const i=this._o(r),a=[],l=Ys(e,n,s,o,i);if(i.fill){const c=[[e,n],[e+s,n],[e+s,n+o],[e,n+o]];i.fillStyle==="solid"?a.push(fn([c],i)):a.push(Xe([c],i))}return i.stroke!==K&&a.push(l),this._d("rectangle",a,i)}ellipse(e,n,s,o,r){const i=this._o(r),a=[],l=Xs(s,o,i),c=Mn(e,n,i,l);if(i.fill)if(i.fillStyle==="solid"){const u=Mn(e,n,i,l).opset;u.type="fillPath",a.push(u)}else a.push(Xe([c.estimatedPoints],i));return i.stroke!==K&&a.push(c.opset),this._d("ellipse",a,i)}circle(e,n,s,o){const r=this.ellipse(e,n,s,s,o);return r.shape="circle",r}linearPath(e,n){const s=this._o(n);return this._d("linearPath",[yt(e,!1,s)],s)}arc(e,n,s,o,r,i,a=!1,l){const c=this._o(l),u=[],d=ls(e,n,s,o,r,i,a,!0,c);if(a&&c.fill)if(c.fillStyle==="solid"){const h=Object.assign({},c);h.disableMultiStroke=!0;const p=ls(e,n,s,o,r,i,!0,!1,h);p.type="fillPath",u.push(p)}else u.push(Pa(e,n,s,o,r,i,c));return c.stroke!==K&&u.push(d),this._d("arc",u,c)}curve(e,n){const s=this._o(n),o=[],r=as(e,s);if(s.fill&&s.fill!==K)if(s.fillStyle==="solid"){const i=as(e,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));o.push({type:"fillPath",ops:this._mergedShape(i.ops)})}else{const i=[],a=e;if(a.length){const c=typeof a[0][0]=="number"?[a]:a;for(const u of c)u.length<3?i.push(...u):u.length===3?i.push(...Tn(hs([u[0],u[0],u[1],u[2]]),10,(1+s.roughness)/2)):i.push(...Tn(hs(u),10,(1+s.roughness)/2))}i.length&&o.push(Xe([i],s))}return s.stroke!==K&&o.push(r),this._d("curve",o,s)}polygon(e,n){const s=this._o(n),o=[],r=yt(e,!0,s);return s.fill&&(s.fillStyle==="solid"?o.push(fn([e],s)):o.push(Xe([e],s))),s.stroke!==K&&o.push(r),this._d("polygon",o,s)}path(e,n){const s=this._o(n),o=[];if(!e)return this._d("path",o,s);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const r=s.fill&&s.fill!=="transparent"&&s.fill!==K,i=s.stroke!==K,a=!!(s.simplification&&s.simplification<1),l=a?4-4*(s.simplification||1):(1+s.roughness)/2,c=Na(e,1,l),u=cs(e,s);if(r)if(s.fillStyle==="solid")if(c.length===1){const d=cs(e,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));o.push({type:"fillPath",ops:this._mergedShape(d.ops)})}else o.push(fn(c,s));else o.push(Xe(c,s));return i&&(a?c.forEach(d=>{o.push(yt(d,!1,s))}):o.push(u)),this._d("path",o,s)}opsToPath(e,n){let s="";for(const o of e.ops){const r=typeof n=="number"&&n>=0?o.data.map(i=>+i.toFixed(n)):o.data;switch(o.op){case"move":s+=`M${r[0]} ${r[1]} `;break;case"bcurveTo":s+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":s+=`L${r[0]} ${r[1]} `;break}}return s.trim()}toPaths(e){const n=e.sets||[],s=e.options||this.defaultOptions,o=[];for(const r of n){let i=null;switch(r.type){case"path":i={d:this.opsToPath(r),stroke:s.stroke,strokeWidth:s.strokeWidth,fill:K};break;case"fillPath":i={d:this.opsToPath(r),stroke:K,strokeWidth:0,fill:s.fill||K};break;case"fillSketch":i=this.fillSketch(r,s);break}i&&o.push(i)}return o}fillSketch(e,n){let s=n.fillWeight;return s<0&&(s=n.strokeWidth/2),{d:this.opsToPath(e),stroke:n.fill||K,strokeWidth:s,fill:K}}_mergedShape(e){return e.filter((n,s)=>s===0?!0:n.op!=="move")}}const to="http://www.w3.org/2000/svg",Va=800;let dn=null;function Ua(){return dn||(dn=new Fa().defaultOptions),dn}function hn(t,e,n){return{...Ua(),maxRandomnessOffset:2,roughness:t==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:t!=="double",disableMultiStrokeFill:!1,seed:e,...n}}function Ba(t){const e=t.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const n=e;if(n.length)switch(n.length){case 4:return[...n];case 1:return[n[0],n[0],n[0],n[0]];case 2:return[...n,...n];case 3:return[...n,n[1]];default:return[n[0],n[1],n[2],n[3]]}}}return[5,5,5,5]}function Wa(t,e,n,s,o,r){const i=[];let a=n.strokeWidth||2;const l=Ba(n),c=n.animate===void 0?!0:!!n.animate,u=n.iterations||2,d=n.rtl?1:0,h=hn("single",r,n);switch(n.type){case"underline":{const p=e.y+e.h+l[2];for(let m=d;m_.setAttribute(w,b);for(const _ of p){const w=document.createElementNS(to,"path");if(v(w,"d",_),v(w,"fill","none"),v(w,"stroke",n.color||"currentColor"),v(w,"stroke-width",`${a}`),n.opacity!==void 0&&v(w,"style",`opacity:${n.opacity}`),c){const b=w.getTotalLength();m.push(b),y+=b}t.appendChild(w),g.push(w)}if(c){let _=0;for(let w=0;wsetTimeout(e,t))}function za(t){const e=[];for(const n of t){let s="";for(const o of n.ops){const r=o.data;switch(o.op){case"move":s.trim()&&e.push(s.trim()),s=`M${r[0]} ${r[1]} `;break;case"bcurveTo":s+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":s+=`L${r[0]} ${r[1]} `;break}}s.trim()&&e.push(s.trim())}return e}function qa(){if(!window.__rno_kf_s){const t=window.__rno_kf_s=document.createElement("style");t.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(t)}}var Ka=Object.defineProperty,Ja=(t,e,n)=>e in t?Ka(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,X=(t,e,n)=>(Ja(t,typeof e!="symbol"?e+"":e,n),n);class Ga{constructor(e,n){X(this,"_state","unattached"),X(this,"_config"),X(this,"_resizing",!1),X(this,"_ro"),X(this,"_seed",Ks()),X(this,"_e"),X(this,"_svg"),X(this,"_lastSizes",[]),X(this,"_animationDelay",0),X(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),X(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(n)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,n){this._config[e]!==n&&(this._config[e]=n,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){qa();const e=this._svg=document.createElementNS(to,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const n=e.style;n.position="absolute",n.top="0",n.left="0",n.overflow="visible",n.pointerEvents="none",n.width="100px",n.height="100px";const s=this._config.type==="highlight";if(this._e.insertAdjacentElement(s?"beforebegin":"afterend",e),this._state="not-showing",s){const o=window.getComputedStyle(this._e).position;(!o||o==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const n of e)n.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let n=0;nMath.round(o)===Math.round(r);return s(e.x,n.x)&&s(e.y,n.y)&&s(e.w,n.w)&&s(e.h,n.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,n){let s=this._config;n&&(s=JSON.parse(JSON.stringify(this._config)),s.animate=!1);const o=this.rects();let r=0;o.forEach(c=>r+=c.w);const i=s.animationDuration||Va;let a=0;const l=[];for(let c=0;cObject.assign(t,{type:"box"}),circle:t=>Object.assign(t,{type:"circle"}),underline:t=>Object.assign(t,{type:"underline"}),highlight:t=>Object.assign(t,{type:"highlight"}),"strike-through":t=>Object.assign(t,{type:"strike-through"}),"crossed-off":t=>Object.assign(t,{type:"crossed-off"}),bracket:t=>Object.assign(t,{type:"bracket"}),strike:t=>Object.assign(t,{type:"strike-through"}),cross:t=>Object.assign(t,{type:"crossed-off"}),crossed:t=>Object.assign(t,{type:"crossed-off"}),linethrough:t=>Object.assign(t,{type:"strike-through"}),"line-through":t=>Object.assign(t,{type:"strike-through"}),black:t=>z(t,"text-black"),blue:t=>z(t,"text-blue"),cyan:t=>z(t,"text-cyan"),gray:t=>z(t,"text-gray"),green:t=>z(t,"text-green"),indigo:t=>z(t,"text-indigo"),lime:t=>z(t,"text-lime"),orange:t=>z(t,"text-orange"),pink:t=>z(t,"text-pink"),purple:t=>z(t,"text-purple"),red:t=>z(t,"text-red"),teal:t=>z(t,"text-teal"),white:t=>z(t,"text-white"),yellow:t=>z(t,"text-yellow")},Za=[[/^delay-?(\d+)?$/,(t,e,n)=>{const s=(t[1]?Number.parseInt(t[1]):n)||300;return e.delay=s,e}],[/^(?:op|opacity)-?(\d+)?$/,(t,e,n)=>{const s=(t[1]?Number.parseInt(t[1]):n)||100;return e.opacity=s/100,e}]];function Ya(){return{install(t){t.directive("mark",{name:"v-mark",mounted:(e,n)=>{const s=f(()=>{const i=typeof n.value=="object"&&!Array.isArray(n.value)?{...n.value}:{at:n.value};let a={at:i.at};const l=Object.entries(n.modifiers).filter(([u,d])=>{if(ms[u])return a=ms[u](a,d),!1;for(const[h,p]of Za){const m=u.match(h);if(m)return a=p(m,a,d),!1}return!0});l.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",l);const c={...a,...i};return c.type||(c.type="underline"),c}),o=Qa(e,s.value),r=xt(e,n,s.value.at);if(!r){o.show();return}e.watchStopHandle=ot(()=>{let i;s.value.class&&(o.class=s.value.class),s.value.color&&(o.color=s.value.color);const a=s.value.at;a===!0?i=!0:a===!1?i=!1:i=r.isActive.value,i!=null&&(i?o.show():o.hide())})},unmounted:e=>{var n;(n=e.watchStopHandle)==null||n.call(e)}})}}}const Al=L(!1),Cl=L(!1),Dl=L(!1),Xa=L(!1),Il=L(!0),xl=yo({xs:460,...bo}),qt=vo(),Hl=_o(),Rl=f(()=>qt.height.value-qt.width.value/ks.value>120),jl=wo(Gt?document.body:null),$n=ko(),Nl=f(()=>{var t,e;return["INPUT","TEXTAREA"].includes(((t=$n.value)==null?void 0:t.tagName)||"")||((e=$n.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),Fl=f(()=>{var t;return["BUTTON","A"].includes(((t=$n.value)==null?void 0:t.tagName)||"")});te("slidev-camera","default",{listenToStorageChanges:!1});te("slidev-mic","default",{listenToStorageChanges:!1});const el=te("slidev-scale",0),Vl=te("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),tl=te("slidev-show-editor",!1,{listenToStorageChanges:!1}),nl=te("slidev-editor-vertical",!1,{listenToStorageChanges:!1}),sl=te("slidev-editor-width",Gt?window.innerWidth*.4:318,{listenToStorageChanges:!1}),ol=te("slidev-editor-height",Gt?window.innerHeight*.4:300,{listenToStorageChanges:!1}),Tt=Pn(null),Kt=te("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),$t=te("slidev-presenter-layout",1,{listenToStorageChanges:!1});function Ul(){$t.value=$t.value+1,$t.value>2&&($t.value=1)}function Bl(){Kt.value=Math.min(2,Kt.value+.1)}function Wl(){Kt.value=Math.max(.5,Kt.value-.1)}const zl=_s(Xa);function rl(t=gs(Ps,L())){const e=So(t),n=Q([tl,nl,sl,ol,el,qt.width,qt.height],()=>{setTimeout(e.update,300)},{flush:"post",immediate:!0});return{...e,stop:n}}function il(t){return()=>{}}function al(t,e,n){var Y;function s(D){return t?rt(t,D):Eo(D)}const o=s(Dn),r=s(Hr)??{},i=s(Cn),a=f(()=>il(i.value)),l=s(Ir)??L(1),c=s(Rr)??L(1),{left:u,top:d,stop:h}=rl(s(Ps)??L()),p=["slide","presenter"].includes(o.value);let m=t?"directive":"prop",g=Un(),y;if(Array.isArray(e)?y=e:typeof e=="string"&&e.includes(",")?y=e.split(",").map(Number):e!=null&&(m="frontmatter",g=`${e}`,e=(Y=r==null?void 0:r.dragPos)==null?void 0:Y[g],y=e==null?void 0:e.split(",").map(Number)),m!=="frontmatter"&&!n)throw new Error("[Slidev] Can not identify the source position of the v-drag element, please provide an explicit `id` prop.");const v=[h],_=e!=null&&!Number.isFinite(y==null?void 0:y[3]);y??(y=[Number.NaN,Number.NaN,0]);const w=L(y[2]),b=L(y[0]+y[2]/2),E=L(y[4]??0),M=f(()=>E.value*Math.PI/180),P=f(()=>Math.sin(M.value)),A=f(()=>Math.cos(M.value)),I=L(),V=L({left:0,top:0,width:0,height:0}),ne=L(0);function $(){const D=I.value.getBoundingClientRect();V.value={left:D.left/c.value,top:D.top/c.value,width:D.width/c.value,height:D.height/c.value},ne.value=(V.value.width+V.value.height)/l.value/(Math.abs(P.value)+Math.abs(A.value))-w.value}v.push(Q(w,$,{flush:"post"}));const C=L(y[3]??0),R=f({get:()=>(_?ne.value:C.value)||0,set:D=>!_&&(C.value=D)}),N=L(y[1]),x=f({get:()=>N.value+R.value/2,set:D=>N.value=D-R.value/2}),se=f(()=>Number.isFinite(b.value)?{position:"absolute",zIndex:100,left:`${b.value-w.value/2}px`,top:`${x.value-R.value/2}px`,width:`${w.value}px`,height:_?void 0:`${R.value}px`,transformOrigin:"center center",transform:`rotate(${E.value}deg)`}:{position:"absolute",zIndex:100});v.push(Q([b,x,w,R,E],([D,ce,at,lt,zn])=>{let Ze=[D-at/2,ce-lt/2,at].map(Math.round).join();_?Ze+=m==="directive"?",NaN":",_":Ze+=`,${Math.round(lt)}`,Math.round(zn)!==0&&(Ze+=`,${Math.round(zn)}`),m==="directive"&&(Ze=`[${Ze}]`),a.value(g,Ze,m,n)}));const B={id:g,dataSource:m,markdownSource:n,zoom:c,autoHeight:_,x0:b,y0:x,width:w,height:R,rotate:E,container:I,containerStyle:se,watchStopHandles:v,dragging:f(()=>Tt.value===B),mounted(){p&&($(),e||setTimeout(()=>{$(),b.value=(V.value.left+V.value.width/2-u.value)/l.value,x.value=(V.value.top-d.value)/l.value,w.value=V.value.width/l.value,R.value=V.value.height/l.value},100))},unmounted(){p&&B.stopDragging()},startDragging(){$(),Tt.value=B},stopDragging(){Tt.value===B&&(Tt.value=null)}};return v.push(Mo(I,D=>{const ce=document.querySelector("#drag-control-container");ce&&D.target&&ce.contains(D.target)||B.stopDragging()}),Q(Oo(),D=>{D||B.stopDragging()})),B}function ll(){return{install(t){t.directive("drag",{name:"v-drag",created(e,n,s){var r;const o=al(n,n.value,(r=s.props)==null?void 0:r.markdownSource);s.props&&(s.props={...s.props},delete s.props.markdownSource),o.container.value=e,e.draggingState=o,e.dataset.dragId=o.id,o.watchStopHandles.push(Q(o.containerStyle,i=>{for(const[a,l]of Object.entries(i))l&&(e.style[a]=l)},{immediate:!0})),e.addEventListener("dblclick",o.startDragging)},mounted(e){e.draggingState.mounted()},unmounted(e){const n=e.draggingState;n.unmounted(),e.removeEventListener("dblclick",n.startDragging),n.watchStopHandles.forEach(s=>s())}})}}}function cl(){return{install(t){const e=To();t.directive("motion",{name:"v-motion",mounted(n,s,o,r){var w,b,E;const i=rt(s,Qt),a=rt(s,Cn),l=rt(s,Dn),{currentPage:c,clicks:u,isPrintMode:d}=wn(),h=o.props={...o.props},p={...h.initial,...(w=h.variants)==null?void 0:w["slidev-initial"]},m={...h.enter,...(b=h.variants)==null?void 0:b["slidev-enter"]},g={...h.leave,...(E=h.variants)==null?void 0:E["slidev-leave"]};delete h.initial,delete h.enter,delete h.leave;const y=`${Un()}-`,v=[];for(const M of Object.keys(h))if(M.startsWith("click-")){const P=M.slice(6),A=P.includes("-")?P.split("-").map(Number):+P,I=y+P;v.push({id:I,at:A,variant:{...h[M]},info:i==null?void 0:i.value.calculate(A)}),delete h[M]}v.sort((M,P)=>(Array.isArray(M.at)?M.at[0]:M.at)-(Array.isArray(P.at)?P.at[0]:P.at)),e.created(n,s,o,r),e.mounted(n,s,o,r);const _=n.motionInstance;_.clickIds=v.map(M=>M.id),_.set(p),_.watchStopHandle=Q([a,c,u].filter(Boolean),()=>{var P;const M=((P=qs.get(n))==null?void 0:P.visibilityState.value)??"shown";if(!(i!=null&&i.value)||!["slide","presenter"].includes((l==null?void 0:l.value)??"")){const A={...p,...m};for(const{variant:I}of v)Object.assign(A,I);_.set(A)}else if(d.value||(a==null?void 0:a.value)===c.value)if(M==="shown"){const A={...p,...m};for(const{variant:I,info:V}of v)(!V||V.isActive.value)&&Object.assign(A,I);d.value?_.set(A):_.apply(A)}else _.apply(M==="before"?p:g);else _.apply(((a==null?void 0:a.value)??-1)>c.value?p:g)},{immediate:!0})},unmounted(n){n.motionInstance.watchStopHandle()}})}}}const ul=[];function fl(){const t=[];{let e=function(n){if(!H.remote||H.remote===n.query.password)return!0;if(H.remote&&n.query.password===void 0){const s=prompt("Enter password");if(H.remote===s)return!0}return n.params.no?{path:`/${n.params.no}`}:{path:""}};t.push({name:"entry",path:"/entry",component:()=>O(()=>import("./slidev/entry-CZ5ez7G4.js"),__vite__mapDeps([44,16,1,3,4]))},{name:"overview",path:"/overview",component:()=>O(()=>import("./slidev/overview-Dmiv5cD9.js"),__vite__mapDeps([45,16,1,46,47,48,49,50,51,52,3,4]))},{name:"notes",path:"/notes",component:()=>O(()=>import("./slidev/notes-Bd48W473.js"),__vite__mapDeps([53,16,1,49,50,48,3,4])),beforeEnter:e},{name:"presenter",path:"/presenter/:no",component:()=>O(()=>import("./slidev/presenter-DrDJMxK6.js"),__vite__mapDeps([54,16,1,55,46,47,48,2,3,4,56,49,50,57,58,51,52,59])),beforeEnter:e},{path:"/presenter",redirect:{path:"/presenter/1"}})}return t.push({name:"play",path:"/:no",component:()=>O(()=>import("./slidev/play-CnRmEM5v.js"),__vite__mapDeps([60,1,55,46,47,16,48,2,3,4,56,61]))},{path:"",redirect:{path:"/1"}}),ul.reduce((e,n)=>n(e),t)}const dl=[];async function hl(t){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e);const n=$o({history:Lo("/sa2024/04-mvc/"),routes:fl()});t.use(n),t.use(Sr()),t.use(ha()),t.use(Ya()),t.use(ll()),t.use(cl()),t.use(Ao,{container:"#twoslash-container"});const s={app:t,router:n};Rt(()=>{n.afterEach(async()=>{await Rt(),_n.value+=1})});for(const o of dl)await o(s)}const no=Po(da);hl(no);no.mount("#app");export{Dn as $,O as A,qt as B,mn as C,el as D,nl as E,oe as F,Tt as G,zl as H,Dl as I,Hl as J,Pl as K,Il as L,Fl as M,Nl as N,yl as O,xl as P,$n as Q,Ul as R,kt as S,Ir as T,rl as U,As as V,ks as W,Ps as X,Sl as Y,Cn as Z,Fs as _,wn as a,Ml as a0,Qt as a1,Rr as a2,bl as a3,kl as a4,wl as a5,ue as a6,fe as a7,de as a8,he as a9,Ol as aA,Nr as aB,xe as aC,He as aD,Re as aE,je as aF,Ne as aG,Fe as aH,Ve as aI,Ue as aJ,Be as aK,We as aL,pe as aa,me as ab,ge as ac,ye as ad,ve as ae,_e as af,we as ag,ke as ah,be as ai,Se as aj,Me as ak,Oe as al,Ee as am,Te as an,$e as ao,Le as ap,Un as aq,ut as ar,Tl as as,Pe as at,Ae as au,Ce as av,De as aw,Ie as ax,xr as ay,Hr as az,na as b,H as c,Us as d,Ll as e,jl as f,st as g,El as h,is as i,Vl as j,Xa as k,Kt as l,Bl as m,Wl as n,vt as o,$t as p,Al as q,gl as r,_l as s,$l as t,Or as u,Cl as v,Ro as w,vl as x,Rl as y,tl as z}; diff --git a/04-mvc/assets/index-ChKpB1CT.js b/04-mvc/assets/index-ChKpB1CT.js deleted file mode 100644 index 4bc23f9..0000000 --- a/04-mvc/assets/index-ChKpB1CT.js +++ /dev/null @@ -1,82 +0,0 @@ -import{n as Le,y as Rn,z as v,A as jn,t as U,B as ne,C as we,D as Un,E as qn,G as zn,H as Vn,I as u,J as w,K as Wn,L as Gn,M as Kn,N as Yn,O as re,P as ci,Q as Zn,R as Jn,d as cs,b as Oe,e as n,f as Fe,h as zi,o as D,c as M,k as A,q as P,s as T,i as Ge,S as y,T as Xn,U as Qn,V as ta,g as ea,l as _e,m as ye,W as Vs,X as sa,Y as ia,Z as na,_ as aa,$ as ra,a0 as la,a1 as oa,a2 as et,a3 as Vi,a4 as ca,a5 as hs,a6 as ha,a7 as ua,a8 as da,r as pa,a9 as fa,aa as ka,u as ga}from"./modules/vue-CoY6Ph6S.js";import{_ as ma,a as _a}from"./modules/unplugin-icons-DdL09wdV.js";import{T as ya}from"./modules/shiki-CNrqLFow.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))i(a);new MutationObserver(a=>{for(const r of a)if(r.type==="childList")for(const l of r.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&i(l)}).observe(document,{childList:!0,subtree:!0});function s(a){const r={};return a.integrity&&(r.integrity=a.integrity),a.referrerPolicy&&(r.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?r.credentials="include":a.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function i(a){if(a.ep)return;a.ep=!0;const r=s(a);fetch(a.href,r)}})();function $s(t,e={},s){for(const i in t){const a=t[i],r=s?`${s}:${i}`:i;typeof a=="object"&&a!==null?$s(a,e,r):typeof a=="function"&&(e[r]=a)}return e}const va={run:t=>t()},wa=()=>va,Wi=typeof console.createTask<"u"?console.createTask:wa;function ba(t,e){const s=e.shift(),i=Wi(s);return t.reduce((a,r)=>a.then(()=>i.run(()=>r(...e))),Promise.resolve())}function xa(t,e){const s=e.shift(),i=Wi(s);return Promise.all(t.map(a=>i.run(()=>a(...e))))}function ms(t,e){for(const s of[...t])s(e)}class Aa{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,s,i={}){if(!e||typeof s!="function")return()=>{};const a=e;let r;for(;this._deprecatedHooks[e];)r=this._deprecatedHooks[e],e=r.to;if(r&&!i.allowDeprecated){let l=r.message;l||(l=`${a} hook has been deprecated`+(r.to?`, please use ${r.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(l)||(console.warn(l),this._deprecatedMessages.add(l))}if(!s.name)try{Object.defineProperty(s,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(s),()=>{s&&(this.removeHook(e,s),s=void 0)}}hookOnce(e,s){let i,a=(...r)=>(typeof i=="function"&&i(),i=void 0,a=void 0,s(...r));return i=this.hook(e,a),i}removeHook(e,s){if(this._hooks[e]){const i=this._hooks[e].indexOf(s);i!==-1&&this._hooks[e].splice(i,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,s){this._deprecatedHooks[e]=typeof s=="string"?{to:s}:s;const i=this._hooks[e]||[];delete this._hooks[e];for(const a of i)this.hook(e,a)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const s in e)this.deprecateHook(s,e[s])}addHooks(e){const s=$s(e),i=Object.keys(s).map(a=>this.hook(a,s[a]));return()=>{for(const a of i.splice(0,i.length))a()}}removeHooks(e){const s=$s(e);for(const i in s)this.removeHook(i,s[i])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...s){return s.unshift(e),this.callHookWith(ba,e,...s)}callHookParallel(e,...s){return s.unshift(e),this.callHookWith(xa,e,...s)}callHookWith(e,s,...i){const a=this._before||this._after?{name:s,args:i,context:{}}:void 0;this._before&&ms(this._before,a);const r=e(s in this._hooks?[...this._hooks[s]]:[],i);return r instanceof Promise?r.finally(()=>{this._after&&a&&ms(this._after,a)}):(this._after&&a&&ms(this._after,a),r)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const s=this._before.indexOf(e);s!==-1&&this._before.splice(s,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const s=this._after.indexOf(e);s!==-1&&this._after.splice(s,1)}}}}function Ea(){return new Aa}function Da(t){return Array.isArray(t)?t:[t]}const Ca=["title","titleTemplate","script","style","noscript"],Ke=["base","meta","link","style","script","noscript"],$a=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],Ma=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],Gi=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],Sa=typeof window<"u";function Ws(t){let e=9;for(let s=0;s>>9)+65536).toString(16).substring(1,8).toLowerCase()}function hi(t){return t._h||Ws(t._d?t._d:`${t.tag}:${t.textContent||t.innerHTML||""}:${Object.entries(t.props).map(([e,s])=>`${e}:${String(s)}`).join(",")}`)}function Ki(t,e){const{props:s,tag:i}=t;if(Ma.includes(i))return i;if(i==="link"&&s.rel==="canonical")return"canonical";if(s.charset)return"charset";const a=["id"];i==="meta"&&a.push("name","property","http-equiv");for(const r of a)if(typeof s[r]<"u"){const l=String(s[r]);return e&&!e(l)?!1:`${i}:${r}:${l}`}return!1}function ui(t,e){return t==null?e||null:typeof t=="function"?t(e):t}async function Ba(t,e,s){const i={tag:t,props:await Yi(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(t)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(t))};return Gi.forEach(a=>{const r=typeof i.props[a]<"u"?i.props[a]:s[a];typeof r<"u"&&((!["innerHTML","textContent","children"].includes(a)||Ca.includes(i.tag))&&(i[a==="children"?"innerHTML":a]=r),delete i.props[a])}),i.props.body&&(i.tagPosition="bodyClose",delete i.props.body),i.tag==="script"&&typeof i.innerHTML=="object"&&(i.innerHTML=JSON.stringify(i.innerHTML),i.props.type=i.props.type||"application/json"),Array.isArray(i.props.content)?i.props.content.map(a=>({...i,props:{...i.props,content:a}})):i}function Pa(t){return typeof t=="object"&&!Array.isArray(t)&&(t=Object.keys(t).filter(e=>t[e])),(Array.isArray(t)?t.join(" "):t).split(" ").filter(e=>e.trim()).filter(Boolean).join(" ")}async function Yi(t,e){for(const s of Object.keys(t)){if(s==="class"){t[s]=Pa(t[s]);continue}if(t[s]instanceof Promise&&(t[s]=await t[s]),!e&&!Gi.includes(s)){const i=String(t[s]),a=s.startsWith("data-");i==="true"||i===""?t[s]=a?"true":!0:t[s]||(a&&i==="false"?t[s]="false":delete t[s])}}return t}const Ta=10;async function La(t){const e=[];return Object.entries(t.resolvedInput).filter(([s,i])=>typeof i<"u"&&$a.includes(s)).forEach(([s,i])=>{const a=Da(i);e.push(...a.map(r=>Ba(s,r,t)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((s,i)=>(s._e=t._i,t.mode&&(s._m=t.mode),s._p=(t._i<c&&c[h]||void 0,e):o=e[l],typeof o<"u"?(o||"").replace(/"/g,'\\"'):!1}let a=t;try{a=decodeURI(t)}catch{}return(a.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(l=>{const o=i(l.slice(1));typeof o=="string"&&(t=t.replace(new RegExp(`\\${l}(\\W|$)`,"g"),(c,h)=>`${o}${h}`).trim())}),t.includes(se)&&(t.endsWith(se)&&(t=t.slice(0,-se.length).trim()),t.startsWith(se)&&(t=t.slice(se.length).trim()),t=t.replace(new RegExp(`\\${se}\\s*\\${se}`,"g"),se),t=Ye(t,{separator:s},s)),t}async function Fa(t){const e={tag:t.tagName.toLowerCase(),props:await Yi(t.getAttributeNames().reduce((s,i)=>({...s,[i]:t.getAttribute(i)}),{})),innerHTML:t.innerHTML};return e._d=Ki(e),e}async function Ia(t,e={}){var d;const s=e.document||t.resolvedOptions.document;if(!s)return;const i={shouldRender:t.dirty,tags:[]};if(await t.hooks.callHook("dom:beforeRender",i),!i.shouldRender)return;const a=(await t.resolveTags()).map(p=>({tag:p,id:Ke.includes(p.tag)?hi(p):p.tag,shouldRender:!0}));let r=t._dom;if(!r){r={elMap:{htmlAttrs:s.documentElement,bodyAttrs:s.body}};for(const p of["body","head"]){const k=(d=s==null?void 0:s[p])==null?void 0:d.children;for(const f of[...k].filter(g=>Ke.includes(g.tagName.toLowerCase())))r.elMap[f.getAttribute("data-hid")||hi(await Fa(f))]=f}}r.pendingSideEffects={...r.sideEffects||{}},r.sideEffects={};function l(p,k,f){const g=`${p}:${k}`;r.sideEffects[g]=f,delete r.pendingSideEffects[g]}function o({id:p,$el:k,tag:f}){const g=f.tag.endsWith("Attrs");r.elMap[p]=k,g||(["textContent","innerHTML"].forEach(m=>{f[m]&&f[m]!==k[m]&&(k[m]=f[m])}),l(p,"el",()=>{r.elMap[p].remove(),delete r.elMap[p]})),Object.entries(f.props).forEach(([m,_])=>{const b=`attr:${m}`;if(m==="class")for(const E of(_||"").split(" ").filter(Boolean))g&&l(p,`${b}:${E}`,()=>k.classList.remove(E)),!k.classList.contains(E)&&k.classList.add(E);else k.getAttribute(m)!==_&&k.setAttribute(m,_===!0?"":String(_)),g&&l(p,b,()=>k.removeAttribute(m))})}const c=[],h={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const p of a){const{tag:k,shouldRender:f,id:g}=p;if(f){if(k.tag==="title"){s.title=k.textContent;continue}p.$el=p.$el||r.elMap[g],p.$el?o(p):Ke.includes(k.tag)&&c.push(p)}}for(const p of c){const k=p.tag.tagPosition||"head";p.$el=s.createElement(p.tag.tag),o(p),h[k]=h[k]||s.createDocumentFragment(),h[k].appendChild(p.$el)}for(const p of a)await t.hooks.callHook("dom:renderTag",p,s,l);h.head&&s.head.appendChild(h.head),h.bodyOpen&&s.body.insertBefore(h.bodyOpen,s.body.firstChild),h.bodyClose&&s.body.appendChild(h.bodyClose),Object.values(r.pendingSideEffects).forEach(p=>p()),t._dom=r,t.dirty=!1,await t.hooks.callHook("dom:rendered",{renders:a})}async function Na(t,e={}){const s=e.delayFn||(i=>setTimeout(i,10));return t._domUpdatePromise=t._domUpdatePromise||new Promise(i=>s(async()=>{await Ia(t,e),delete t._domUpdatePromise,i()}))}function Ha(t){return e=>{var i,a;const s=((a=(i=e.resolvedOptions.document)==null?void 0:i.head.querySelector('script[id="unhead:payload"]'))==null?void 0:a.innerHTML)||!1;return s&&e.push(JSON.parse(s)),{mode:"client",hooks:{"entries:updated":function(r){Na(r,t)}}}}}const Ra=["templateParams","htmlAttrs","bodyAttrs"],ja={hooks:{"tag:normalise":function({tag:t}){["hid","vmid","key"].forEach(i=>{t.props[i]&&(t.key=t.props[i],delete t.props[i])});const s=Ki(t)||(t.key?`${t.tag}:${t.key}`:!1);s&&(t._d=s)},"tags:resolve":function(t){const e={};t.tags.forEach(i=>{const a=(i.key?`${i.tag}:${i.key}`:i._d)||i._p,r=e[a];if(r){let o=i==null?void 0:i.tagDuplicateStrategy;if(!o&&Ra.includes(i.tag)&&(o="merge"),o==="merge"){const c=r.props;["class","style"].forEach(h=>{c[h]&&(i.props[h]?(h==="style"&&!c[h].endsWith(";")&&(c[h]+=";"),i.props[h]=`${c[h]} ${i.props[h]}`):i.props[h]=c[h])}),e[a].props={...c,...i.props};return}else if(i._e===r._e){r._duped=r._duped||[],i._d=`${r._d}:${r._duped.length+1}`,r._duped.push(i);return}else if(Qe(i)>Qe(r))return}const l=Object.keys(i.props).length+(i.innerHTML?1:0)+(i.textContent?1:0);if(Ke.includes(i.tag)&&l===0){delete e[a];return}e[a]=i});const s=[];Object.values(e).forEach(i=>{const a=i._duped;delete i._duped,s.push(i),a&&s.push(...a)}),t.tags=s,t.tags=t.tags.filter(i=>!(i.tag==="meta"&&(i.props.name||i.props.property)&&!i.props.content))}}},Ua={mode:"server",hooks:{"tags:resolve":function(t){const e={};t.tags.filter(s=>["titleTemplate","templateParams","title"].includes(s.tag)&&s._m==="server").forEach(s=>{e[s.tag]=s.tag.startsWith("title")?s.textContent:s.props}),Object.keys(e).length&&t.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},qa=["script","link","bodyAttrs"];function za(t){const e={},s={};return Object.entries(t.props).forEach(([i,a])=>{i.startsWith("on")&&typeof a=="function"?(Zi.includes(i)&&(e[i]=`this.dataset.${i} = true`),s[i]=a):e[i]=a}),{props:e,eventHandlers:s}}const Va=t=>({hooks:{"tags:resolve":function(e){for(const s of e.tags)if(qa.includes(s.tag)){const{props:i,eventHandlers:a}=za(s);s.props=i,Object.keys(a).length&&((s.props.src||s.props.href)&&(s.key=s.key||Ws(s.props.src||s.props.href)),s._eventHandlers=a)}},"dom:renderTag":function(e,s,i){if(!e.tag._eventHandlers)return;const a=e.tag.tag==="bodyAttrs"?s.defaultView:e.$el;Object.entries(e.tag._eventHandlers).forEach(([r,l])=>{const o=`${e.tag._d||e.tag._p}:${r}`,c=r.slice(2).toLowerCase(),h=`data-h-${c}`;if(i(e.id,o,()=>{}),e.$el.hasAttribute(h))return;e.$el.setAttribute(h,"");let d;const p=k=>{l(k),d==null||d.disconnect()};r in e.$el.dataset?p(new Event(r.replace("on",""))):Zi.includes(r)&&typeof MutationObserver<"u"?(d=new MutationObserver(k=>{k.some(g=>g.attributeName===`data-${r}`)&&(p(new Event(r.replace("on",""))),d==null||d.disconnect())}),d.observe(e.$el,{attributes:!0})):a.addEventListener(c,p),i(e.id,o,()=>{d==null||d.disconnect(),a.removeEventListener(c,p),e.$el.removeAttribute(h)})})}}}),Wa=["link","style","script","noscript"],Ga={hooks:{"tag:normalise":({tag:t})=>{t.key&&Wa.includes(t.tag)&&(t.props["data-hid"]=t._h=Ws(t.key))}}},Ka={hooks:{"tags:resolve":t=>{const e=s=>{var i;return(i=t.tags.find(a=>a._d===s))==null?void 0:i._p};for(const{prefix:s,offset:i}of Oa)for(const a of t.tags.filter(r=>typeof r.tagPriority=="string"&&r.tagPriority.startsWith(s))){const r=e(a.tagPriority.replace(s,""));typeof r<"u"&&(a._p=r+i)}t.tags.sort((s,i)=>s._p-i._p).sort((s,i)=>Qe(s)-Qe(i))}}},Ya={meta:"content",link:"href",htmlAttrs:"lang"},Za=t=>({hooks:{"tags:resolve":e=>{var o;const{tags:s}=e,i=(o=s.find(c=>c.tag==="title"))==null?void 0:o.textContent,a=s.findIndex(c=>c.tag==="templateParams"),r=a!==-1?s[a].props:{},l=r.separator||"|";delete r.separator,r.pageTitle=Ye(r.pageTitle||i||"",r,l);for(const c of s.filter(h=>h.processTemplateParams!==!1)){const h=Ya[c.tag];h&&typeof c.props[h]=="string"?c.props[h]=Ye(c.props[h],r,l):(c.processTemplateParams===!0||["titleTemplate","title"].includes(c.tag))&&["innerHTML","textContent"].forEach(d=>{typeof c[d]=="string"&&(c[d]=Ye(c[d],r,l))})}t._templateParams=r,t._separator=l,e.tags=s.filter(c=>c.tag!=="templateParams")}}}),Ja={hooks:{"tags:resolve":t=>{const{tags:e}=t;let s=e.findIndex(a=>a.tag==="titleTemplate");const i=e.findIndex(a=>a.tag==="title");if(i!==-1&&s!==-1){const a=ui(e[s].textContent,e[i].textContent);a!==null?e[i].textContent=a||e[i].textContent:delete e[i]}else if(s!==-1){const a=ui(e[s].textContent);a!==null&&(e[s].textContent=a,e[s].tag="title",s=-1)}s!==-1&&delete e[s],t.tags=e.filter(Boolean)}}},Xa={hooks:{"tags:afterResolve":function(t){for(const e of t.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{o.dirty=!0,e.callHook("entries:updated",o)};let a=0,r=[];const l=[],o={plugins:l,dirty:!1,resolvedOptions:t,hooks:e,headEntries(){return r},use(c){const h=typeof c=="function"?c(o):c;(!h.key||!l.some(d=>d.key===h.key))&&(l.push(h),fi(h.mode,s)&&e.addHooks(h.hooks||{}))},push(c,h){h==null||delete h.head;const d={_i:a++,input:c,...h};return fi(d.mode,s)&&(r.push(d),i()),{dispose(){r=r.filter(p=>p._i!==d._i),e.callHook("entries:updated",o),i()},patch(p){r=r.map(k=>(k._i===d._i&&(k.input=d.input=p),k)),i()}}},async resolveTags(){const c={tags:[],entries:[...r]};await e.callHook("entries:resolve",c);for(const h of c.entries){const d=h.resolvedInput||h.input;if(h.resolvedInput=await(h.transform?h.transform(d):d),h.resolvedInput)for(const p of await La(h)){const k={tag:p,entry:h,resolvedOptions:o.resolvedOptions};await e.callHook("tag:normalise",k),c.tags.push(k.tag)}}return await e.callHook("tags:beforeResolve",c),await e.callHook("tags:resolve",c),await e.callHook("tags:afterResolve",c),c.tags},ssr:s};return[ja,Ua,Va,Ga,Ka,Za,Ja,Xa,...(t==null?void 0:t.plugins)||[]].forEach(c=>o.use(c)),o.hooks.callHook("init",o),o}function er(){return Ji}const sr=Rn.startsWith("3");function ir(t){return typeof t=="function"?t():v(t)}function ts(t,e=""){if(t instanceof Promise)return t;const s=ir(t);return!t||!s?s:Array.isArray(s)?s.map(i=>ts(i,e)):typeof s=="object"?Object.fromEntries(Object.entries(s).map(([i,a])=>i==="titleTemplate"||i.startsWith("on")?[i,v(a)]:[i,ts(a,i)])):s}const nr={hooks:{"entries:resolve":function(t){for(const e of t.entries)e.resolvedInput=ts(e.input)}}},Xi="usehead";function ar(t){return{install(s){sr&&(s.config.globalProperties.$unhead=t,s.config.globalProperties.$head=t,s.provide(Xi,t))}}.install}function rr(t={}){t.domDelayFn=t.domDelayFn||(s=>Le(()=>setTimeout(()=>s(),0)));const e=Qa(t);return e.use(nr),e.install=ar(e),e}const ki=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},gi="__unhead_injection_handler__";function lr(){if(gi in ki)return ki[gi]();const t=jn(Xi);return t||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),t||er()}function or(t,e={}){const s=e.head||lr();if(s)return s.ssr?s.push(t,e):cr(s,t,e)}function cr(t,e,s={}){const i=U(!1),a=U({});ne(()=>{a.value=i.value?{}:ts(e)});const r=t.push(a.value,s);return we(a,o=>{r.patch(o)}),Vn()&&(Un(()=>{r.dispose()}),qn(()=>{i.value=!0}),zn(()=>{i.value=!1})),r}function hr(...t){return dr(t).reduce((e,s)=>e+s,0)}function ur(t){return t=t??[],Array.isArray(t)?t:[t]}function dr(t){return ur(t).flat(1)}function pr(t){return t!=null}function fr(t,e){return Object.fromEntries(Object.entries(t).map(([s,i])=>e(s,i)).filter(pr))}const N={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:"dev",monacoTypesSource:"local",monacoTypesAdditionalPackages:[],download:!1,export:{},info:!1,highlighter:"shiki",lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},Qi=N.aspectRatio??16/9,kr=N.canvasWidth??980,yk=Math.ceil(kr/Qi),gr=u(()=>fr(N.themeConfig||{},(t,e)=>[`--slidev-theme-${t}`,e]));function tn(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function lt(t,e,s){Object.defineProperty(t,e,{value:s,writable:!0,enumerable:!1})}const ue=w({page:0,clicks:0});let mr=[],_r=[];lt(ue,"$syncUp",!0);lt(ue,"$syncDown",!0);lt(ue,"$paused",!1);lt(ue,"$onSet",t=>mr.push(t));lt(ue,"$onPatch",t=>_r.push(t));tn();lt(ue,"$patch",async()=>!1);function en(t,e,s=!1){const i=[];let a=!1,r=!1,l,o;const c=w(e);function h(f){i.push(f)}function d(f,g){c[f]!==g&&(clearTimeout(l),a=!0,c[f]=g,l=setTimeout(()=>a=!1,0))}function p(f){a||(clearTimeout(o),r=!0,Object.entries(f).forEach(([g,m])=>{c[g]=m}),o=setTimeout(()=>r=!1,0))}function k(f){let g;s?s&&window.addEventListener("storage",_=>{_&&_.key===f&&_.newValue&&p(JSON.parse(_.newValue))}):(g=new BroadcastChannel(f),g.addEventListener("message",_=>p(_.data)));function m(){!s&&g&&!r?g.postMessage(Wn(c)):s&&!r&&window.localStorage.setItem(f,JSON.stringify(c)),a||i.forEach(_=>_(c))}if(we(c,m,{deep:!0,flush:"sync"}),s){const _=window.localStorage.getItem(f);_&&p(JSON.parse(_))}}return{init:k,onPatch:h,patch:d,state:c}}const{init:yr,onPatch:vr,patch:Ae,state:vk}=en(ue,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),de=w({});let wr=[],br=[];lt(de,"$syncUp",!0);lt(de,"$syncDown",!0);lt(de,"$paused",!1);lt(de,"$onSet",t=>wr.push(t));lt(de,"$onPatch",t=>br.push(t));tn();lt(de,"$patch",async()=>!1);const{init:xr,onPatch:Ar,patch:sn,state:nn}=en(de,{},!1),Er="modulepreload",Dr=function(t){return"/sa2024/04-mvc/"+t},mi={},Ie=function(e,s,i){let a=Promise.resolve();if(s&&s.length>0){const r=document.getElementsByTagName("link");a=Promise.all(s.map(l=>{if(l=Dr(l),l in mi)return;mi[l]=!0;const o=l.endsWith(".css"),c=o?'[rel="stylesheet"]':"";if(!!i)for(let p=r.length-1;p>=0;p--){const k=r[p];if(k.href===l&&(!o||k.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${c}`))return;const d=document.createElement("link");if(d.rel=o?"stylesheet":Er,o||(d.as="script",d.crossOrigin=""),d.href=l,document.head.appendChild(d),o)return new Promise((p,k)=>{d.addEventListener("load",p),d.addEventListener("error",()=>k(new Error(`Unable to preload CSS for ${l}`)))})}))}return a.then(()=>e()).catch(r=>{const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=r,window.dispatchEvent(l),!l.defaultPrevented)throw r})},C=(t,e)=>{const s=t.__vccOpts||t;for(const[i,a]of e)s[i]=a;return s};function wk(){const t=U(Date.now()),e=Gn({interval:1e3}),s=u(()=>{const a=(e.value-t.value)/1e3,r=Math.floor(a%60).toString().padStart(2,"0");return`${Math.floor(a/60).toString().padStart(2,"0")}:${r}`});function i(){t.value=e.value}return{timer:s,resetTimer:i}}function an(t=5){const e=[],s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",i=s.length;for(let a=0;aa.max||0))}}}function Pr(t){var a,r;if((a=t==null?void 0:t.meta)!=null&&a.__clicksContext)return t.meta.__clicksContext;const e=+((t==null?void 0:t.path)??Ms),s=u({get(){var o;const l=+(((o=Qt.value)==null?void 0:o.path)??Number.NaN);return!l||Number.isNaN(l)?0:l===e?ve.value:l>e?Ms:0},set(l){var c;+(((c=Qt.value)==null?void 0:c.path)??Number.NaN)===e&&(ve.value=l)}}),i=un(s,(r=t==null?void 0:t.meta)==null?void 0:r.clicks);return t!=null&&t.meta&&(t.meta.__clicksContext=i),i}function Tr(t,e=0){var s;return un(U(e),(s=t==null?void 0:t.meta)==null?void 0:s.clicks)}const Lr=Yn(Tr());function S(){const t=re(ln),e=ci(t,"nav"),s=re(Gs,Lr).value,i=ci(s,"current"),a=re(rn),r=re(on),l=re(cn,{}),o=re(Mr,void 0),c=re($r,U(1));return{$slidev:t,$nav:e,$clicksContext:s,$clicks:i,$page:a,$route:o,$renderContext:r,$frontmatter:l,$scale:c}}function L(t){var a,r;Zn(cn,t);const{$slidev:e,$page:s}=S(),i=e.nav.rawRoutes.find(l=>l.path===String(s.value));if((r=(a=i==null?void 0:i.meta)==null?void 0:a.slide)!=null&&r.frontmatter){for(const l of Object.keys(i.meta.slide.frontmatter))l in t||delete i.meta.slide.frontmatter[l];Object.assign(i.meta.slide.frontmatter,t)}}function O(t,e){return{...Jn(t,e===0?Br:hn),frontmatter:t}}function _i(t){return t.startsWith("/")?"/sa2024/04-mvc/"+t.slice(1):t}function Or(t,e=!1){const s=t&&["#","rgb","hsl"].some(a=>t.indexOf(a)===0),i={background:s?t:void 0,color:t&&!s?"white":void 0,backgroundImage:s?void 0:t?e?`linear-gradient(#0005, #0008), url(${_i(t)})`:`url("${_i(t)}")`:void 0,backgroundRepeat:"no-repeat",backgroundPosition:"center",backgroundSize:"cover"};return i.background||delete i.background,i}const Fr={class:"my-auto w-full"},Ir=cs({__name:"cover",props:{background:{default:""}},setup(t){S();const e=t,s=u(()=>Or(e.background,!0));return(i,a)=>(D(),Oe("div",{class:"slidev-layout cover",style:zi(s.value)},[n("div",Fr,[Fe(i.$slots,"default")])],4))}}),Nr=C(Ir,[["__file","/opt/homebrew/lib/node_modules/@slidev/theme-default/layouts/cover.vue"]]),_t=w({theme:"default",layout:"cover"}),Hr=w({layout:u(()=>_t.layout),transition:u(()=>_t.transition),class:u(()=>_t.class),clicks:u(()=>_t.clicks),name:u(()=>_t.name),preload:u(()=>_t.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:_t,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),Rr=n("h1",null,"Software Architecture",-1),jr=n("h2",null,"CS/BS with Spring MVC",-1),Ur={__name:"1",setup(t){return L(_t),S(),(e,s)=>(D(),M(Nr,P(T(v(O)(v(_t),0))),{default:A(()=>[Rr,jr]),_:1},16))}},qr=C(Ur,[["__file","/@slidev/slides/1.md"]]),zr="/sa2024/04-mvc/assets/04-stack-UziiBQyA.png",Vr="/sa2024/04-mvc/assets/04-3layers-CeGVNuOU.png",Wr=cs({__name:"two-cols",props:{class:{type:String},layoutClass:{type:String}},setup(t){const e=t;return(s,i)=>(D(),Oe("div",{class:Ge(["slidev-layout two-columns w-full h-full grid grid-cols-2",e.layoutClass])},[n("div",{class:Ge(["col-left",e.class])},[Fe(s.$slots,"default")],2),n("div",{class:Ge(["col-right",e.class])},[Fe(s.$slots,"right")],2)],2))}}),kt=C(Wr,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/two-cols.vue"]]),yt=w({layout:"two-cols"}),Gr=w({layout:u(()=>yt.layout),transition:u(()=>yt.transition),class:u(()=>yt.class),clicks:u(()=>yt.clicks),name:u(()=>yt.name),preload:u(()=>yt.preload),slide:{index:1,content:"",note:"",title:"回顾",level:1,noteHTML:"",raw:"",frontmatter:yt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:11,id:1,no:2},__clicksContext:null,__preloaded:!1}),Kr=n("h1",null,"回顾",-1),Yr=n("img",{src:zr,class:"m-30 h-80"},null,-1),Zr=n("img",{src:Vr,class:"m-10 h-70"},null,-1),Jr={__name:"2",setup(t){return L(yt),S(),(e,s)=>(D(),M(kt,P(T(v(O)(v(yt),1))),{right:A(i=>[Zr]),default:A(()=>[Kr,Yr]),_:1},16))}},Xr=C(Jr,[["__file","/@slidev/slides/2.md"]]),Qr="/sa2024/04-mvc/assets/04-mainframe-B7_nhyLF.png",tl="/sa2024/04-mvc/assets/04-cs-D0RmBR4R.png",vt=w({layout:"two-cols"}),el=w({layout:u(()=>vt.layout),transition:u(()=>vt.transition),class:u(()=>vt.class),clicks:u(()=>vt.clicks),name:u(()=>vt.name),preload:u(()=>vt.preload),slide:{index:2,content:"",note:"",title:"从主机到CS模式",level:1,noteHTML:"",raw:"",frontmatter:vt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:25,id:2,no:3},__clicksContext:null,__preloaded:!1}),sl=n("h1",null,"从主机到CS模式",-1),il=n("br",null,null,-1),nl=n("br",null,null,-1),al=n("br",null,null,-1),rl=n("img",{src:Qr,class:"m-10 h-60"},null,-1),ll=n("br",null,null,-1),ol=n("br",null,null,-1),cl=n("br",null,null,-1),hl=n("br",null,null,-1),ul=n("p",null,[y("PC与主机任务分割(CS) "),n("br"),n("img",{src:tl,class:"m-10 h-60"})],-1),dl={__name:"3",setup(t){return L(vt),S(),(e,s)=>(D(),M(kt,P(T(v(O)(v(vt),2))),{right:A(i=>[ll,ol,cl,hl,ul]),default:A(()=>[sl,il,y(" 早期集中式计算环境 "),nl,al,rl]),_:1},16))}},pl=C(dl,[["__file","/@slidev/slides/3.md"]]),fl="/sa2024/04-mvc/assets/04-2tiers-DARrJLL0.png",kl={},gl={class:"slidev-layout default"};function ml(t,e){return D(),Oe("div",gl,[Fe(t.$slots,"default")])}const R=C(kl,[["render",ml],["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/default.vue"]]),wt=w({}),_l=w({layout:u(()=>wt.layout),transition:u(()=>wt.transition),class:u(()=>wt.class),clicks:u(()=>wt.clicks),name:u(()=>wt.name),preload:u(()=>wt.preload),slide:{index:3,content:"",note:"",title:"三层的分割",level:1,noteHTML:"",raw:"",frontmatter:wt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:50,id:3,no:4},__clicksContext:null,__preloaded:!1}),yl=n("h1",null,"三层的分割",-1),vl=n("br",null,null,-1),wl=n("img",{src:fl,class:"m-20 h-60"},null,-1),bl={__name:"4",setup(t){return L(wt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(wt),3))),{default:A(()=>[yl,vl,wl]),_:1},16))}},xl=C(bl,[["__file","/@slidev/slides/4.md"]]),Al="/sa2024/04-mvc/assets/04-fatclient-EJdBj614.png",bt=w({}),El=w({layout:u(()=>bt.layout),transition:u(()=>bt.transition),class:u(()=>bt.class),clicks:u(()=>bt.clicks),name:u(()=>bt.name),preload:u(()=>bt.preload),slide:{index:4,content:"",note:"",title:"Fat Clients",level:1,noteHTML:"",raw:"",frontmatter:bt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:60,id:4,no:5},__clicksContext:null,__preloaded:!1}),Dl=n("h1",null,"Fat Clients",-1),Cl=n("br",null,null,-1),$l=n("p",null,"C/S模式的传统形式,一般用户个人软件系统",-1),Ml=n("ul",null,[n("li",null,"应用系统在Client端运行"),n("li",null,"Client知道Server上的数据、文件等如何组织和存储"),n("li",null,"为用户端程序的设计和开发提供较大的灵活性和便利性")],-1),Sl=n("img",{src:Al,class:"m-10 h-50"},null,-1),Bl={__name:"5",setup(t){return L(bt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(bt),4))),{default:A(()=>[Dl,Cl,$l,Ml,Sl]),_:1},16))}},Pl=C(Bl,[["__file","/@slidev/slides/5.md"]]),Tl="/sa2024/04-mvc/assets/04-fatserver-CvxcLrVP.png",xt=w({}),Ll=w({layout:u(()=>xt.layout),transition:u(()=>xt.transition),class:u(()=>xt.class),clicks:u(()=>xt.clicks),name:u(()=>xt.name),preload:u(()=>xt.preload),slide:{index:5,content:"",note:"",title:"Fat Servers",level:1,noteHTML:"",raw:"",frontmatter:xt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:76,id:5,no:6},__clicksContext:null,__preloaded:!1}),Ol=n("h1",null,"Fat Servers",-1),Fl=n("ul",null,[n("li",null,"Server通过一组确定的过程提供资源访问,而非提供对资源直接操作"),n("li",null,"Client提供GUI界面供用户进行操作,并通过远程方法调用与Server通信,获得服务"),n("li",null,"应用代码集中于Server端,便于部署和管理,减少网络通信开销")],-1),Il=n("img",{src:Tl,class:"m-10 h-50"},null,-1),Nl={__name:"6",setup(t){return L(xt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(xt),5))),{default:A(()=>[Ol,Fl,Il]),_:1},16))}},Hl=C(Nl,[["__file","/@slidev/slides/6.md"]]),Rl="/sa2024/04-mvc/assets/04-3tiers-DhxCu7jv.png",At=w({}),jl=w({layout:u(()=>At.layout),transition:u(()=>At.transition),class:u(()=>At.class),clicks:u(()=>At.clicks),name:u(()=>At.name),preload:u(()=>At.preload),slide:{index:6,content:"",note:"",title:"From 2-tiers to 3 tiers",level:1,noteHTML:"",raw:"",frontmatter:At,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:87,id:6,no:7},__clicksContext:null,__preloaded:!1}),Ul=n("h1",null,"From 2-tiers to 3 tiers",-1),ql=n("br",null,null,-1),zl=n("img",{src:Rl,class:"m-20 h-50"},null,-1),Vl=n("div",{style:{"text-align":"center"}},"资源共享,集中化管理,性能分布,安全",-1),Wl={__name:"7",setup(t){return L(At),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(At),6))),{default:A(()=>[Ul,ql,zl,Vl]),_:1},16))}},Gl=C(Wl,[["__file","/@slidev/slides/7.md"]]),Kl="/sa2024/04-mvc/assets/04-jee-BKMkBKF0.png",Et=w({}),Yl=w({layout:u(()=>Et.layout),transition:u(()=>Et.transition),class:u(()=>Et.class),clicks:u(()=>Et.clicks),name:u(()=>Et.name),preload:u(()=>Et.preload),slide:{index:7,content:"",note:"",title:"Java EE",level:1,noteHTML:"",raw:"",frontmatter:Et,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:98,id:7,no:8},__clicksContext:null,__preloaded:!1}),Zl=n("h1",null,"Java EE",-1),Jl=n("img",{src:Kl,class:"h-90"},null,-1),Xl={__name:"8",setup(t){return L(Et),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(Et),7))),{default:A(()=>[Zl,Jl]),_:1},16))}},Ql=C(Xl,[["__file","/@slidev/slides/8.md"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function dn(t){return typeof t>"u"||t===null}function to(t){return typeof t=="object"&&t!==null}function eo(t){return Array.isArray(t)?t:dn(t)?[]:[t]}function so(t,e){var s,i,a,r;if(e)for(r=Object.keys(e),s=0,i=r.length;s=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),Io=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function No(t){return!(t===null||!Io.test(t)||t[t.length-1]==="_")}function Ho(t){var e,s;return e=t.replace(/_/g,"").toLowerCase(),s=e[0]==="-"?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?s===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:s*parseFloat(e,10)}var Ro=/^[-+]?[0-9]+e/;function jo(t,e){var s;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Ks.isNegativeZero(t))return"-0.0";return s=t.toString(10),Ro.test(s)?s.replace("e",".e"):s}function Uo(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||Ks.isNegativeZero(t))}var qo=new X("tag:yaml.org,2002:float",{kind:"scalar",resolve:No,construct:Ho,predicate:Uo,represent:jo,defaultStyle:"lowercase"}),zo=wo.extend({implicit:[Eo,Mo,Fo,qo]}),Vo=zo,fn=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),kn=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function Wo(t){return t===null?!1:fn.exec(t)!==null||kn.exec(t)!==null}function Go(t){var e,s,i,a,r,l,o,c=0,h=null,d,p,k;if(e=fn.exec(t),e===null&&(e=kn.exec(t)),e===null)throw new Error("Date resolve error");if(s=+e[1],i=+e[2]-1,a=+e[3],!e[4])return new Date(Date.UTC(s,i,a));if(r=+e[4],l=+e[5],o=+e[6],e[7]){for(c=e[7].slice(0,3);c.length<3;)c+="0";c=+c}return e[9]&&(d=+e[10],p=+(e[11]||0),h=(d*60+p)*6e4,e[9]==="-"&&(h=-h)),k=new Date(Date.UTC(s,i,a,r,l,o,c)),h&&k.setTime(k.getTime()-h),k}function Ko(t){return t.toISOString()}var Yo=new X("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Wo,construct:Go,instanceOf:Date,represent:Ko});function Zo(t){return t==="<<"||t===null}var Jo=new X("tag:yaml.org,2002:merge",{kind:"scalar",resolve:Zo}),Ys=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function Xo(t){if(t===null)return!1;var e,s,i=0,a=t.length,r=Ys;for(s=0;s64)){if(e<0)return!1;i+=6}return i%8===0}function Qo(t){var e,s,i=t.replace(/[\r\n=]/g,""),a=i.length,r=Ys,l=0,o=[];for(e=0;e>16&255),o.push(l>>8&255),o.push(l&255)),l=l<<6|r.indexOf(i.charAt(e));return s=a%4*6,s===0?(o.push(l>>16&255),o.push(l>>8&255),o.push(l&255)):s===18?(o.push(l>>10&255),o.push(l>>2&255)):s===12&&o.push(l>>4&255),new Uint8Array(o)}function tc(t){var e="",s=0,i,a,r=t.length,l=Ys;for(i=0;i>18&63],e+=l[s>>12&63],e+=l[s>>6&63],e+=l[s&63]),s=(s<<8)+t[i];return a=r%3,a===0?(e+=l[s>>18&63],e+=l[s>>12&63],e+=l[s>>6&63],e+=l[s&63]):a===2?(e+=l[s>>10&63],e+=l[s>>4&63],e+=l[s<<2&63],e+=l[64]):a===1&&(e+=l[s>>2&63],e+=l[s<<4&63],e+=l[64],e+=l[64]),e}function ec(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}var sc=new X("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Xo,construct:Qo,predicate:ec,represent:tc}),ic=Object.prototype.hasOwnProperty,nc=Object.prototype.toString;function ac(t){if(t===null)return!0;var e=[],s,i,a,r,l,o=t;for(s=0,i=o.length;si<=t).sort((i,a)=>i-a)}const vc=["title"],wc=cs({__name:"CodeBlockWrapper",props:{ranges:{type:Array,default:()=>[]},finally:{type:[String,Number],default:"last"},startLine:{type:Number,default:1},lines:{type:Boolean,default:N.lineNumbers},at:{type:[String,Number],default:"+1"},maxHeight:{type:String,default:void 0}},setup(t){const e=t,{$clicksContext:s}=S(),i=U(),a=an();Xn(()=>{s.unregister(a)}),ne(()=>{var c;(c=i.value)==null||c.classList.toggle("slidev-code-line-numbers",e.lines)}),Qn(()=>{var f;if(!s||s.disabled||!((f=e.ranges)!=null&&f.length))return;const{start:c,end:h,delta:d}=s.resolve(e.at,e.ranges.length-1);s.register(a,{max:h,delta:d});const p=u(()=>s.disabled?e.ranges.length-1:Math.max(0,s.current-c+1)),k=u(()=>e.finally==="last"?e.ranges.at(-1):e.finally.toString());ne(()=>{if(!i.value)return;let g=e.ranges[p.value]??k.value;const m=g==="hide";i.value.classList.toggle(ge,m),m&&(g=e.ranges[p.value+1]??k.value);const b=i.value.querySelector(".shiki-dark")?Array.from(i.value.querySelectorAll(".shiki")):[i.value],E=e.startLine;for(const $ of b){const q=Array.from($.querySelectorAll("code > .line")),j=yc(q.length+E-1,g);if(q.forEach((z,ot)=>{const K=j.includes(ot+E);z.classList.toggle(Pe,!0),z.classList.toggle("highlighted",K),z.classList.toggle("dishonored",!K)}),e.maxHeight){const z=Array.from($.querySelectorAll(".line.highlighted"));z.reduce((K,st)=>st.offsetHeight+K,0)>i.value.offsetHeight?z[0].scrollIntoView({behavior:"smooth",block:"start"}):z.length>0&&z[Math.round((z.length-1)/2)].scrollIntoView({behavior:"smooth",block:"center"})}}})});const{copied:r,copy:l}=ta();function o(){var h,d;const c=(d=(h=i.value)==null?void 0:h.querySelector(".slidev-code"))==null?void 0:d.textContent;c&&l(c)}return(c,h)=>{const d=ma,p=_a;return D(),Oe("div",{ref_key:"el",ref:i,class:Ge(["slidev-code-wrapper relative group",{"slidev-code-line-numbers":e.lines}]),style:zi({"max-height":e.maxHeight,"overflow-y":e.maxHeight?"scroll":void 0,"--start":e.startLine})},[Fe(c.$slots,"default"),v(N).codeCopy?(D(),Oe("button",{key:0,class:"slidev-code-copy absolute top-0 right-0 transition opacity-0 group-hover:opacity-20 hover:!opacity-100",title:v(r)?"Copied":"Copy",onClick:h[0]||(h[0]=k=>o())},[v(r)?(D(),M(d,{key:0,class:"p-2 w-8 h-8"})):(D(),M(p,{key:1,class:"p-2 w-8 h-8"}))],8,vc)):ea("v-if",!0)],6)}}}),je=C(wc,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/builtin/CodeBlockWrapper.vue"]]),gn="/sa2024/04-mvc/assets/04-servlet-Bggp2EK4.png",Dt=w({layout:"two-cols"}),bc=w({layout:u(()=>Dt.layout),transition:u(()=>Dt.transition),class:u(()=>Dt.class),clicks:u(()=>Dt.clicks),name:u(()=>Dt.name),preload:u(()=>Dt.preload),slide:{index:8,content:"",note:"",title:"Java Servlet",level:1,noteHTML:"",raw:"",frontmatter:Dt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:104,id:8,no:9},__clicksContext:null,__preloaded:!1}),xc=n("h1",null,"Java Servlet",-1),Ac=n("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[n("code",{class:"language-java"},[n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"import"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," javax"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"servlet"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#C99076","--shiki-light":"#A65E2B"}},"*"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},";")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"import"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," java"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"io"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#C99076","--shiki-light":"#A65E2B"}},"*"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},";"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"}),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"public"),n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," class"),n("span",{style:{"--shiki-dark":"#5DA994","--shiki-light":"#2E8F82"}}," BasicServlet"),n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," extends"),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," GenericServlet"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," {"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," public"),n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," void"),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," service"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"ServletRequest "),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"req"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ServletResponse "),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"resp"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," throws"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," Servlet etException"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," IOException "),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"{"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," resp"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"setContentType"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"text/plain"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," PrintWriter"),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," out"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," resp"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"getWriter"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," );"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," out"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"println"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"Hello."),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," }"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"}")])])],-1),Ec=n("p",null,[n("br"),n("br"),n("br")],-1),Dc=n("img",{src:gn,class:"m-10 h-60"},null,-1),Cc={__name:"9",setup(t){return L(Dt),S(),(e,s)=>{const i=je;return D(),M(kt,P(T(v(O)(v(Dt),8))),{right:A(a=>[Ec,Dc]),default:A(()=>[xc,_e(i,ye({},{ranges:[]}),{default:A(()=>[Ac]),_:1},16)]),_:1},16)}}},$c=C(Cc,[["__file","/@slidev/slides/9.md"]]),Mc="/sa2024/04-mvc/assets/04-bs-CBP1bW-A.png",Ct=w({}),Sc=w({layout:u(()=>Ct.layout),transition:u(()=>Ct.transition),class:u(()=>Ct.class),clicks:u(()=>Ct.clicks),name:u(()=>Ct.name),preload:u(()=>Ct.preload),slide:{index:9,content:"",note:"",title:"B/S架构:更便于部署和管理",level:1,noteHTML:"",raw:"",frontmatter:Ct,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:132,id:9,no:10},__clicksContext:null,__preloaded:!1}),Bc=n("h1",null,"B/S架构:更便于部署和管理",-1),Pc=n("br",null,null,-1),Tc=n("img",{src:Mc,class:"m-10 h-60"},null,-1),Lc=n("p",null,"A browser-based architecture runs an application directly from an internet browser on any device that has a browser (laptop, tablet, smartphone).",-1),Oc={__name:"10",setup(t){return L(Ct),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(Ct),9))),{default:A(()=>[Bc,Pc,Tc,Lc]),_:1},16))}},Fc=C(Oc,[["__file","/@slidev/slides/10.md"]]),Ic="/sa2024/04-mvc/assets/04-web-Bph8N5yt.png",Nc="/sa2024/04-mvc/assets/04-web-server-D2dpwxUW.png",$t=w({layout:"two-cols"}),Hc=w({layout:u(()=>$t.layout),transition:u(()=>$t.transition),class:u(()=>$t.class),clicks:u(()=>$t.clicks),name:u(()=>$t.name),preload:u(()=>$t.preload),slide:{index:10,content:"",note:"",title:"Web Application",level:1,noteHTML:"",raw:"",frontmatter:$t,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:144,id:10,no:11},__clicksContext:null,__preloaded:!1}),Rc=n("h1",null,"Web Application",-1),jc=n("br",null,null,-1),Uc=n("img",{src:Ic,class:"m-10 h-20"},null,-1),qc=n("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[n("code",{class:"language-html"},[n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"html"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"head"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"title"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"This is a title"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"body"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"p"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Hello world!"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")])])],-1),zc=n("img",{src:Nc,class:"m-30 h-60"},null,-1),Vc={__name:"11",setup(t){return L($t),S(),(e,s)=>{const i=je;return D(),M(kt,P(T(v(O)(v($t),10))),{right:A(a=>[zc]),default:A(()=>[Rc,jc,y(" https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol "),Uc,_e(i,ye({},{ranges:[]}),{default:A(()=>[qc]),_:1},16)]),_:1},16)}}},Wc=C(Vc,[["__file","/@slidev/slides/11.md"]]),Gc="/sa2024/04-mvc/assets/04-cgi-BUF9RK4J.png",Mt=w({layout:"two-cols"}),Kc=w({layout:u(()=>Mt.layout),transition:u(()=>Mt.transition),class:u(()=>Mt.class),clicks:u(()=>Mt.clicks),name:u(()=>Mt.name),preload:u(()=>Mt.preload),slide:{index:11,content:"",note:"",title:"CGI",level:1,noteHTML:"",raw:"",frontmatter:Mt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:171,id:11,no:12},__clicksContext:null,__preloaded:!1}),Yc=n("h1",null,"CGI",-1),Zc=n("br",null,null,-1),Jc=n("p",null,"Common Gateway Interface",-1),Xc=n("ul",null,[n("li",null,[n("small",null,"Forward requests to external programs")]),n("li",null,[n("small",null,"Spawn one process for each new request")]),n("li",null,[n("small",null,"Communicate via Standard input/output")]),n("li",null,[n("small",null,"Process terminates after request is handled")])],-1),Qc=n("img",{src:Gc,class:"m-10 h-80"},null,-1),th={__name:"12",setup(t){return L(Mt),S(),(e,s)=>(D(),M(kt,P(T(v(O)(v(Mt),11))),{right:A(i=>[Qc]),default:A(()=>[Yc,Zc,Jc,Xc]),_:1},16))}},eh=C(th,[["__file","/@slidev/slides/12.md"]]),St=w({}),sh=w({layout:u(()=>St.layout),transition:u(()=>St.transition),class:u(()=>St.class),clicks:u(()=>St.clicks),name:u(()=>St.name),preload:u(()=>St.preload),slide:{index:12,content:"",note:"",title:"CGI Example",level:1,noteHTML:"",raw:"",frontmatter:St,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:190,id:12,no:13},__clicksContext:null,__preloaded:!1}),ih=n("h1",null,"CGI Example",-1),nh=n("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[n("code",{class:"language-perl"},[n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#758575DD","--shiki-light":"#A0ADA0"}},"#!perl -w ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"use"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," CGI "),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"qw/"),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},":standard"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"/"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"; ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"{ ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," my"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," $"),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"cgi"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"= new CGI; ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}}," print"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," $"),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"cgi"),n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"->"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"header, ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," $"),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"cgi"),n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"->"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"start_html("),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"A Simple Example"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"), ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," $"),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"cgi"),n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"->"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"h1("),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"A Simple Example"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"); ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}}," if"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ( "),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"$"),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"cgi"),n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"->"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"param"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"()"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},") ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," { ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}}," print"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},' "'),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"Your name is "),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},", ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," $"),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"cgi"),n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"->"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"param("),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"name"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"); ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," } ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," $"),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"cgi"),n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"->"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"end_html"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"()"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"; ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"}")])])],-1),ah={__name:"13",setup(t){return L(St),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(St),12))),{default:A(()=>[ih,nh]),_:1},16))}},rh=C(ah,[["__file","/@slidev/slides/13.md"]]),Bt=w({}),lh=w({layout:u(()=>Bt.layout),transition:u(()=>Bt.transition),class:u(()=>Bt.class),clicks:u(()=>Bt.clicks),name:u(()=>Bt.name),preload:u(()=>Bt.preload),slide:{index:13,content:"",note:"",title:"Active Pages",level:1,noteHTML:"",raw:"",frontmatter:Bt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:210,id:13,no:14},__clicksContext:null,__preloaded:!1}),oh=n("h1",null,"Active Pages",-1),ch=n("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[n("code",{class:"language-html"},[n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"html"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"head"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"><"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"title"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"First JSP"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"body"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28","--shiki-dark-font-style":"italic","--shiki-light-font-style":"italic"}}," <"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"%")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," double num = Math.random();")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," if (num > 0.95) {")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," %>")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"h2"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"You will have a luck day!"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"p"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"("),n("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28","--shiki-dark-font-style":"italic","--shiki-light-font-style":"italic"}},"<"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"%= num %>)"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28","--shiki-dark-font-style":"italic","--shiki-light-font-style":"italic"}}," <"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"% } else { %>")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"h2"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Well, life goes on ... "),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"p"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"("),n("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28","--shiki-dark-font-style":"italic","--shiki-light-font-style":"italic"}},"<"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"%= num %>)"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28","--shiki-dark-font-style":"italic","--shiki-light-font-style":"italic"}}," <"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"% } %>")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"a"),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," href"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28","--shiki-dark-font-style":"italic","--shiki-light-font-style":"italic"}},"<"),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"%= request.getRequestURI() %>"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"><"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"h3"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Try Again"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")])])],-1),hh={__name:"14",setup(t){return L(Bt),S(),(e,s)=>{const i=je;return D(),M(R,P(T(v(O)(v(Bt),13))),{default:A(()=>[oh,_e(i,ye({},{ranges:[]}),{default:A(()=>[ch]),_:1},16)]),_:1},16)}}},uh=C(hh,[["__file","/@slidev/slides/14.md"]]),Pt=w({layout:"two-cols"}),dh=w({layout:u(()=>Pt.layout),transition:u(()=>Pt.transition),class:u(()=>Pt.class),clicks:u(()=>Pt.clicks),name:u(()=>Pt.name),preload:u(()=>Pt.preload),slide:{index:14,content:"",note:"",title:"Servlet",level:1,noteHTML:"",raw:"",frontmatter:Pt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:228,id:14,no:15},__clicksContext:null,__preloaded:!1}),ph=n("h1",null,"Servlet",-1),fh=n("br",null,null,-1),kh=n("ul",null,[n("li",null,"Containing application-specific code"),n("li",null,"Web server does generic part of request handling"),n("li",null,"Servlets run “in” the web server and do some of the handling")],-1),gh=n("img",{src:gn,class:"m-10 h-80"},null,-1),mh={__name:"15",setup(t){return L(Pt),S(),(e,s)=>(D(),M(kt,P(T(v(O)(v(Pt),14))),{right:A(i=>[gh]),default:A(()=>[ph,fh,kh]),_:1},16))}},_h=C(mh,[["__file","/@slidev/slides/15.md"]]),Tt=w({}),yh=w({layout:u(()=>Tt.layout),transition:u(()=>Tt.transition),class:u(()=>Tt.class),clicks:u(()=>Tt.clicks),name:u(()=>Tt.name),preload:u(()=>Tt.preload),slide:{index:15,content:"",note:"",title:"Servlet Example",level:1,noteHTML:"",raw:"",frontmatter:Tt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:245,id:15,no:16},__clicksContext:null,__preloaded:!1}),vh=n("h1",null,"Servlet Example",-1),wh=n("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[n("code",{class:"language-java"},[n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"import"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," javax"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"servlet"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#C99076","--shiki-light":"#A65E2B"}},"*"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},";"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"import"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," javax"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"servlet"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"http"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#C99076","--shiki-light":"#A65E2B"}},"*"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},";"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"import"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," java"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"io"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#C99076","--shiki-light":"#A65E2B"}},"*"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},";"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"public"),n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," class"),n("span",{style:{"--shiki-dark":"#5DA994","--shiki-light":"#2E8F82"}}," HelloWorldServlet"),n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," extends"),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," HttpServlet"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," {"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," public"),n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," void"),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," doGet"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"HttpServletRequest "),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"req"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," HttpServletResponse "),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}},"resp"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," throws"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ServletException"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," IOException "),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"{"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," resp"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"setContentType"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"text/html"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," PrintWriter"),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," out"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," resp"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"getWriter"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," );"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," out"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"println"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},""),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," out"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"println"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},' "'),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"Have you seen this before?"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," out"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"println"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},' "'),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"

Hello, World!

Again.
"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," }"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"}")])])],-1),bh=n("p",null,[n("a",{href:"https://www.bilibili.com/video/BV1zE411M7HM?p=1",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV1zE411M7HM?p=1"),y(" (16:50)")],-1),xh=n("div",{style:{"text-align":"right"}},"sa-spring/servlet",-1),Ah={__name:"16",setup(t){return L(Tt),S(),(e,s)=>{const i=je;return D(),M(R,P(T(v(O)(v(Tt),15))),{default:A(()=>[vh,_e(i,ye({},{ranges:[]}),{default:A(()=>[wh]),_:1},16),bh,xh]),_:1},16)}}},Eh=C(Ah,[["__file","/@slidev/slides/16.md"]]),Dh="/sa2024/04-mvc/assets/04-doget-dmV3Se7C.png",Lt=w({}),Ch=w({layout:u(()=>Lt.layout),transition:u(()=>Lt.transition),class:u(()=>Lt.class),clicks:u(()=>Lt.clicks),name:u(()=>Lt.name),preload:u(()=>Lt.preload),slide:{index:16,content:"",note:"",title:"`doGet()`",level:1,noteHTML:"",raw:"",frontmatter:Lt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:285,id:16,no:17},__clicksContext:null,__preloaded:!1}),$h=n("h1",null,[n("code",null,"doGet()")],-1),Mh=n("br",null,null,-1),Sh=n("img",{src:Dh,class:"m-10 h-80"},null,-1),Bh={__name:"17",setup(t){return L(Lt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(Lt),16))),{default:A(()=>[$h,Mh,Sh]),_:1},16))}},Ph=C(Bh,[["__file","/@slidev/slides/17.md"]]),Th="/sa2024/04-mvc/assets/04-change-CXQvsy6b.png",Ot=w({layout:"two-cols"}),Lh=w({layout:u(()=>Ot.layout),transition:u(()=>Ot.transition),class:u(()=>Ot.class),clicks:u(()=>Ot.clicks),name:u(()=>Ot.name),preload:u(()=>Ot.preload),slide:{index:17,content:"",note:"",title:"问题来了",level:1,noteHTML:"",raw:"",frontmatter:Ot,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:293,id:17,no:18},__clicksContext:null,__preloaded:!1}),Oh=n("h1",null,"问题来了",-1),Fh=n("ul",null,[n("li",null,[y("Context "),n("ul",null,[n("li",null,"人机交互界面设计")])]),n("li",null,[y("Problem "),n("ul",null,[n("li",null,"功能的变化要求用户界面的改变"),n("li",null,"平台的改变要求用户界面随之改变"),n("li",null,"界面的改变需足够方便,且不应影响系统功能本身")])])],-1),Ih=n("p",null,[n("br"),n("br"),n("br")],-1),Nh=n("img",{src:Th,class:"m-10 h-60"},null,-1),Hh={__name:"18",setup(t){return L(Ot),S(),(e,s)=>(D(),M(kt,P(T(v(O)(v(Ot),17))),{right:A(i=>[Ih,Nh]),default:A(()=>[Oh,Fh]),_:1},16))}},Rh=C(Hh,[["__file","/@slidev/slides/18.md"]]),jh="/sa2024/04-mvc/assets/04-ui-DpZrudCE.png",Ft=w({}),Uh=w({layout:u(()=>Ft.layout),transition:u(()=>Ft.transition),class:u(()=>Ft.class),clicks:u(()=>Ft.clicks),name:u(()=>Ft.name),preload:u(()=>Ft.preload),slide:{index:18,content:"",note:"",title:"做一些改变",level:1,noteHTML:"",raw:"",frontmatter:Ft,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:313,id:18,no:19},__clicksContext:null,__preloaded:!1}),qh=n("h1",null,"做一些改变",-1),zh=n("br",null,null,-1),Vh=n("img",{src:jh,class:"h-80"},null,-1),Wh={__name:"19",setup(t){return L(Ft),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(Ft),18))),{default:A(()=>[qh,zh,Vh]),_:1},16))}},Gh=C(Wh,[["__file","/@slidev/slides/19.md"]]),It=w({}),Kh=w({layout:u(()=>It.layout),transition:u(()=>It.transition),class:u(()=>It.class),clicks:u(()=>It.clicks),name:u(()=>It.name),preload:u(()=>It.preload),slide:{index:19,content:"",note:"",title:"UI Template",level:1,noteHTML:"",raw:"",frontmatter:It,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:322,id:19,no:20},__clicksContext:null,__preloaded:!1}),Yh=n("h1",null,"UI Template",-1),Zh=n("br",null,null,-1),Jh=n("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[n("code",{class:"language-java"},[n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"protected"),n("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," void"),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," doGet"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"HttpServletRequest request"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," HttpServletResponse response"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," throws ServletException"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," IOException "),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"{")]),y(` -`),n("span",{class:"line"}),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," request"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"setAttribute"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"time"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}}," new"),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}}," Date"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"());"),n("span",{style:{"--shiki-dark":"#758575DD","--shiki-light":"#A0ADA0"}}," // 'time' would be shown on JSP page ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," RequestDispatcher"),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," view"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," request"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"getRequestDispatcher"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"WEB-INF/templates/sample.jsp"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," view"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),n("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"forward"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"request"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," response"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},");")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"}")])])],-1),Xh=n("br",null,null,-1),Qh=n("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[n("code",{class:"language-html"},[n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28","--shiki-dark-font-style":"italic","--shiki-light-font-style":"italic"}},"<"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},'%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>')]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"html"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"head"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"meta"),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," http-equiv"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"Content-Type"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," content"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"text/html; charset=ISO-8859-1"),n("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"title"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Sample Page"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"body"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),n("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"b"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Time Now:"),n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},""),n("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},' ${requestScope["time"]}')]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),y(` -`),n("span",{class:"line"},[n("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")])])],-1),tu={__name:"20",setup(t){return L(It),S(),(e,s)=>{const i=je;return D(),M(R,P(T(v(O)(v(It),19))),{default:A(()=>[Yh,Zh,_e(i,ye({},{ranges:[]}),{default:A(()=>[Jh]),_:1},16),Xh,_e(i,ye({},{ranges:[]}),{default:A(()=>[Qh]),_:1},16)]),_:1},16)}}},eu=C(tu,[["__file","/@slidev/slides/20.md"]]),su="/sa2024/04-mvc/assets/04-thymeleaf-CMwemjE1.png",Nt=w({}),iu=w({layout:u(()=>Nt.layout),transition:u(()=>Nt.transition),class:u(()=>Nt.class),clicks:u(()=>Nt.clicks),name:u(()=>Nt.name),preload:u(()=>Nt.preload),slide:{index:20,content:"",note:"",title:"UI Template Demo",level:1,noteHTML:"",raw:"",frontmatter:Nt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:349,id:20,no:21},__clicksContext:null,__preloaded:!1}),nu=n("h1",null,"UI Template Demo",-1),au=n("br",null,null,-1),ru=n("img",{src:su,class:"h-20"},null,-1),lu=n("br",null,null,-1),ou=n("p",null,[n("a",{href:"https://www.bilibili.com/video/BV1zE411M7HM?p=2",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV1zE411M7HM?p=2"),y(" (5:12)")],-1),cu=n("br",null,null,-1),hu=n("div",{style:{"text-align":"right"}},"sa-spring/thymeleaf3-servlet-helloworld",-1),uu={__name:"21",setup(t){return L(Nt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(Nt),20))),{default:A(()=>[nu,au,ru,lu,ou,cu,hu]),_:1},16))}},du=C(uu,[["__file","/@slidev/slides/21.md"]]),pu="/sa2024/04-mvc/assets/04-mvc-_EAdCB5M.png",Ht=w({}),fu=w({layout:u(()=>Ht.layout),transition:u(()=>Ht.transition),class:u(()=>Ht.class),clicks:u(()=>Ht.clicks),name:u(()=>Ht.name),preload:u(()=>Ht.preload),slide:{index:21,content:"",note:"",title:"做更多改变",level:1,noteHTML:"",raw:"",frontmatter:Ht,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:370,id:21,no:22},__clicksContext:null,__preloaded:!1}),ku=n("h1",null,"做更多改变",-1),gu=n("img",{src:pu,class:"h-80"},null,-1),mu={__name:"22",setup(t){return L(Ht),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(Ht),21))),{default:A(()=>[ku,gu]),_:1},16))}},_u=C(mu,[["__file","/@slidev/slides/22.md"]]),yu="/sa2024/04-mvc/assets/04-mvc-generic-Db7lVaAE.png",Rt=w({layout:"two-cols"}),vu=w({layout:u(()=>Rt.layout),transition:u(()=>Rt.transition),class:u(()=>Rt.class),clicks:u(()=>Rt.clicks),name:u(()=>Rt.name),preload:u(()=>Rt.preload),slide:{index:22,content:"",note:"",title:"MVC",level:1,noteHTML:"",raw:"",frontmatter:Rt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:376,id:22,no:23},__clicksContext:null,__preloaded:!1}),wu=n("h1",null,"MVC",-1),bu=n("br",null,null,-1),xu=n("p",null,"系统分割为processing, output和input三个部分",-1),Au=n("ul",null,[n("li",null,"“Model”: processing,核心数据功能"),n("li",null,"“View”: output, 从Model获得数据显示给用户"),n("li",null,"“Controller”: input, 处理事件操作模型")],-1),Eu=n("p",null,[n("br"),n("br"),n("br")],-1),Du=n("img",{src:yu,class:"h-80"},null,-1),Cu={__name:"23",setup(t){return L(Rt),S(),(e,s)=>(D(),M(kt,P(T(v(O)(v(Rt),22))),{right:A(i=>[Eu,Du]),default:A(()=>[wu,bu,xu,Au]),_:1},16))}},$u=C(Cu,[["__file","/@slidev/slides/23.md"]]),jt=w({}),Mu=w({layout:u(()=>jt.layout),transition:u(()=>jt.transition),class:u(()=>jt.class),clicks:u(()=>jt.clicks),name:u(()=>jt.name),preload:u(()=>jt.preload),slide:{index:23,content:"",note:"",title:"MVC实例",level:1,noteHTML:"",raw:"",frontmatter:jt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:398,id:23,no:24},__clicksContext:null,__preloaded:!1}),Su=n("h1",null,"MVC实例",-1),Bu=n("ul",null,[n("li",null,"Graphical Editing Framework (GEF)"),n("li",null,"Spring MVC"),n("li",null,"ASP.Net MVC"),n("li",null,"Struts"),n("li",null,"Flask …")],-1),Pu={__name:"24",setup(t){return L(jt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(jt),23))),{default:A(()=>[Su,Bu]),_:1},16))}},Tu=C(Pu,[["__file","/@slidev/slides/24.md"]]),Lu="/sa2024/04-mvc/assets/04-gef-BsCEDqVy.png",Ou="/sa2024/04-mvc/assets/04-gef-mvc-RVj8JCvT.png",Ut=w({layout:"two-cols"}),Fu=w({layout:u(()=>Ut.layout),transition:u(()=>Ut.transition),class:u(()=>Ut.class),clicks:u(()=>Ut.clicks),name:u(()=>Ut.name),preload:u(()=>Ut.preload),slide:{index:24,content:"",note:"",title:"GEF",level:1,noteHTML:"",raw:"",frontmatter:Ut,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:409,id:24,no:25},__clicksContext:null,__preloaded:!1}),Iu=n("h1",null,"GEF",-1),Nu=n("br",null,null,-1),Hu=n("img",{src:Lu,class:"h-80"},null,-1),Ru=n("p",null,[n("br"),n("br"),n("br"),n("br"),n("br"),n("br"),n("img",{src:Ou,class:"h-60"})],-1),ju={__name:"25",setup(t){return L(Ut),S(),(e,s)=>(D(),M(kt,P(T(v(O)(v(Ut),24))),{right:A(i=>[Ru]),default:A(()=>[Iu,Nu,y(" The Graphical Editing Framework (GEF) allows developers to take an existing application model and quickly create a rich graphical editor. "),Hu]),_:1},16))}},Uu=C(ju,[["__file","/@slidev/slides/25.md"]]),qu="/sa2024/04-mvc/assets/04-spring-mvc-DwJOlXON.png",qt=w({}),zu=w({layout:u(()=>qt.layout),transition:u(()=>qt.transition),class:u(()=>qt.class),clicks:u(()=>qt.clicks),name:u(()=>qt.name),preload:u(()=>qt.preload),slide:{index:25,content:"",note:"",title:"Spring MVC",level:1,noteHTML:"",raw:"",frontmatter:qt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:426,id:25,no:26},__clicksContext:null,__preloaded:!1}),Vu=n("h1",null,"Spring MVC",-1),Wu=n("br",null,null,-1),Gu=n("img",{src:qu,class:"h-80"},null,-1),Ku={__name:"26",setup(t){return L(qt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(qt),25))),{default:A(()=>[Vu,Wu,Gu]),_:1},16))}},Yu=C(Ku,[["__file","/@slidev/slides/26.md"]]),Zu="/sa2024/04-mvc/assets/04-spring-web-BtGPvBC7.png",zt=w({}),Ju=w({layout:u(()=>zt.layout),transition:u(()=>zt.transition),class:u(()=>zt.class),clicks:u(()=>zt.clicks),name:u(()=>zt.name),preload:u(()=>zt.preload),slide:{index:26,content:"",note:"",title:"Spring Web",level:1,noteHTML:"",raw:"",frontmatter:zt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:437,id:26,no:27},__clicksContext:null,__preloaded:!1}),Xu=n("h1",null,"Spring Web",-1),Qu=n("img",{src:Zu,class:"h-80"},null,-1),td=n("br",null,null,-1),ed=n("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1zE411M7HM?p=3 (1:10)",-1),sd=n("br",null,null,-1),id=n("div",{style:{"text-align":"right"}},"spring-guides/ gs-serving-web-content",-1),nd={__name:"27",setup(t){return L(zt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(zt),26))),{default:A(()=>[Xu,Qu,td,ed,sd,id]),_:1},16))}},ad=C(nd,[["__file","/@slidev/slides/27.md"]]),Vt=w({}),rd=w({layout:u(()=>Vt.layout),transition:u(()=>Vt.transition),class:u(()=>Vt.class),clicks:u(()=>Vt.clicks),name:u(()=>Vt.name),preload:u(()=>Vt.preload),slide:{index:27,content:"",note:"",title:"Testing",level:1,noteHTML:"",raw:"",frontmatter:Vt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:455,id:27,no:28},__clicksContext:null,__preloaded:!1}),ld=n("h1",null,"Testing",-1),od=n("br",null,null,-1),cd=n("p",null,[n("a",{href:"https://spring.io/guides/gs/testing-web/",target:"_blank",rel:"noopener"},"https://spring.io/guides/gs/testing-web/")],-1),hd=n("br",null,null,-1),ud=n("p",null,"spring-guides/gs-testing-web",-1),dd=n("br",null,null,-1),pd=n("p",null,[n("a",{href:"https://www.bilibili.com/video/BV1zE411M7HM?p=3",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV1zE411M7HM?p=3"),y(" (7:05)")],-1),fd={__name:"28",setup(t){return L(Vt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(Vt),27))),{default:A(()=>[ld,od,cd,hd,ud,dd,pd]),_:1},16))}},kd=C(fd,[["__file","/@slidev/slides/28.md"]]),gd="/sa2024/04-mvc/assets/04-petclinic-n45qSv-a.png",Wt=w({}),md=w({layout:u(()=>Wt.layout),transition:u(()=>Wt.transition),class:u(()=>Wt.class),clicks:u(()=>Wt.clicks),name:u(()=>Wt.name),preload:u(()=>Wt.preload),slide:{index:28,content:"",note:"",title:"Spring Petclinic",level:1,noteHTML:"",raw:"",frontmatter:Wt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:471,id:28,no:29},__clicksContext:null,__preloaded:!1}),_d=n("h1",null,"Spring Petclinic",-1),yd=n("img",{src:gd,class:"h-80"},null,-1),vd=n("div",{style:{"text-align":"right"}},"sa-spring/spring-petclinic",-1),wd={__name:"29",setup(t){return L(Wt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(Wt),28))),{default:A(()=>[_d,yd,vd]),_:1},16))}},bd=C(wd,[["__file","/@slidev/slides/29.md"]]),xd="/sa2024/04-mvc/assets/04-code-1-8NCf4pYU.png",Gt=w({}),Ad=w({layout:u(()=>Gt.layout),transition:u(()=>Gt.transition),class:u(()=>Gt.class),clicks:u(()=>Gt.clicks),name:u(()=>Gt.name),preload:u(()=>Gt.preload),slide:{index:29,content:"",note:"",title:"代码结构",level:1,noteHTML:"",raw:"",frontmatter:Gt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:480,id:29,no:30},__clicksContext:null,__preloaded:!1}),Ed=n("h1",null,"代码结构",-1),Dd=n("img",{src:xd,class:"h-80"},null,-1),Cd=n("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1zE411M7HM?p=4",-1),$d={__name:"30",setup(t){return L(Gt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(Gt),29))),{default:A(()=>[Ed,Dd,Cd]),_:1},16))}},Md=C($d,[["__file","/@slidev/slides/30.md"]]),Sd="/sa2024/04-mvc/assets/04-community-BP1JGER5.png",Kt=w({}),Bd=w({layout:u(()=>Kt.layout),transition:u(()=>Kt.transition),class:u(()=>Kt.class),clicks:u(()=>Kt.clicks),name:u(()=>Kt.name),preload:u(()=>Kt.preload),slide:{index:30,content:"",note:"",title:"Community Versions",level:1,noteHTML:"",raw:"",frontmatter:Kt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:489,id:30,no:31},__clicksContext:null,__preloaded:!1}),Pd=n("h1",null,"Community Versions",-1),Td=n("img",{src:Sd,class:"m-10 h-80"},null,-1),Ld={__name:"31",setup(t){return L(Kt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(Kt),30))),{default:A(()=>[Pd,Td]),_:1},16))}},Od=C(Ld,[["__file","/@slidev/slides/31.md"]]),Fd="/sa2024/04-mvc/assets/04-code-2-B24pGjEQ.png",Yt=w({}),Id=w({layout:u(()=>Yt.layout),transition:u(()=>Yt.transition),class:u(()=>Yt.class),clicks:u(()=>Yt.clicks),name:u(()=>Yt.name),preload:u(()=>Yt.preload),slide:{index:31,content:"",note:"",title:"改进版本",level:1,noteHTML:"",raw:"",frontmatter:Yt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:496,id:31,no:32},__clicksContext:null,__preloaded:!1}),Nd=n("h1",null,"改进版本",-1),Hd=n("br",null,null,-1),Rd=n("img",{src:Fd,class:"h-80"},null,-1),jd=n("br",null,null,-1),Ud=n("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1zE411M7HM?p=4 (4:00)",-1),qd=n("br",null,null,-1),zd=n("div",{style:{"text-align":"right"}},"spring-petclinic/spring-framework-petclinic",-1),Vd={__name:"32",setup(t){return L(Yt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(Yt),31))),{default:A(()=>[Nd,Hd,Rd,jd,Ud,qd,zd]),_:1},16))}},Wd=C(Vd,[["__file","/@slidev/slides/32.md"]]),Gd="/sa2024/04-mvc/assets/04-stereotype-zy8yKcwp.png",Zt=w({}),Kd=w({layout:u(()=>Zt.layout),transition:u(()=>Zt.transition),class:u(()=>Zt.class),clicks:u(()=>Zt.clicks),name:u(()=>Zt.name),preload:u(()=>Zt.preload),slide:{index:32,content:"",note:"",title:"Spring Stereotype",level:1,noteHTML:"",raw:"",frontmatter:Zt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:512,id:32,no:33},__clicksContext:null,__preloaded:!1}),Yd=n("h1",null,"Spring Stereotype",-1),Zd=n("br",null,null,-1),Jd=n("img",{src:Gd,class:"m-5 h-80"},null,-1),Xd=n("p",null,[n("a",{href:"https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/stereotype/package-summary.html",target:"_blank",rel:"noopener"},"https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/stereotype/package-summary.html")],-1),Qd={__name:"33",setup(t){return L(Zt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(Zt),32))),{default:A(()=>[Yd,Zd,Jd,Xd]),_:1},16))}},tp=C(Qd,[["__file","/@slidev/slides/33.md"]]),ep="/sa2024/04-mvc/assets/04-multi-view-n2j43OUE.png",Jt=w({}),sp=w({layout:u(()=>Jt.layout),transition:u(()=>Jt.transition),class:u(()=>Jt.class),clicks:u(()=>Jt.clicks),name:u(()=>Jt.name),preload:u(()=>Jt.preload),slide:{index:33,content:"",note:"",title:"多视图",level:1,noteHTML:"",raw:"",frontmatter:Jt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:522,id:33,no:34},__clicksContext:null,__preloaded:!1}),ip=n("h1",null,"多视图",-1),np=n("br",null,null,-1),ap=n("img",{src:ep,class:"h-80"},null,-1),rp=n("br",null,null,-1),lp=n("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1zE411M7HM?p=4 (12:00)",-1),op=n("br",null,null,-1),cp=n("div",{style:{"text-align":"right"}},"sa-spring/spring-mobile",-1),hp={__name:"34",setup(t){return L(Jt),S(),(e,s)=>(D(),M(R,P(T(v(O)(v(Jt),33))),{default:A(()=>[ip,np,ap,rp,lp,op,cp]),_:1},16))}},up=C(hp,[["__file","/@slidev/slides/34.md"]]),dp="/sa2024/04-mvc/assets/04-concept-layer-qcWtWbuQ.png",pp="/sa2024/04-mvc/assets/04-concept-tier-BIt0L3LW.png",fp="/sa2024/04-mvc/assets/04-concept-mvc-C4oGzR3E.png",Xt=w({layout:"two-cols"}),kp=w({layout:u(()=>Xt.layout),transition:u(()=>Xt.transition),class:u(()=>Xt.class),clicks:u(()=>Xt.clicks),name:u(()=>Xt.name),preload:u(()=>Xt.preload),slide:{index:34,content:"",note:"",title:"小结与概念梳理",level:1,noteHTML:"",raw:"",frontmatter:Xt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/04-mvc.md",start:535,id:34,no:35},__clicksContext:null,__preloaded:!1}),gp=n("h1",null,"小结与概念梳理",-1),mp=n("img",{src:dp,class:"h-40"},null,-1),_p=n("br",null,null,-1),yp=n("img",{src:pp,class:"h-40"},null,-1),vp=n("p",null,[n("br"),n("br"),n("img",{src:fp,class:"h-80"})],-1),wp={__name:"35",setup(t){return L(Xt),S(),(e,s)=>(D(),M(kt,P(T(v(O)(v(Xt),34))),{right:A(i=>[vp]),default:A(()=>[gp,mp,_p,yp]),_:1},16))}},bp=C(wp,[["__file","/@slidev/slides/35.md"]]),Y=[{path:"1",name:"page-1",component:qr,meta:Hr},{path:"2",name:"page-2",component:Xr,meta:Gr},{path:"3",name:"page-3",component:pl,meta:el},{path:"4",name:"page-4",component:xl,meta:_l},{path:"5",name:"page-5",component:Pl,meta:El},{path:"6",name:"page-6",component:Hl,meta:Ll},{path:"7",name:"page-7",component:Gl,meta:jl},{path:"8",name:"page-8",component:Ql,meta:Yl},{path:"9",name:"page-9",component:$c,meta:bc},{path:"10",name:"page-10",component:Fc,meta:Sc},{path:"11",name:"page-11",component:Wc,meta:Hc},{path:"12",name:"page-12",component:eh,meta:Kc},{path:"13",name:"page-13",component:rh,meta:sh},{path:"14",name:"page-14",component:uh,meta:lh},{path:"15",name:"page-15",component:_h,meta:dh},{path:"16",name:"page-16",component:Eh,meta:yh},{path:"17",name:"page-17",component:Ph,meta:Ch},{path:"18",name:"page-18",component:Rh,meta:Lh},{path:"19",name:"page-19",component:Gh,meta:Uh},{path:"20",name:"page-20",component:eu,meta:Kh},{path:"21",name:"page-21",component:du,meta:iu},{path:"22",name:"page-22",component:_u,meta:fu},{path:"23",name:"page-23",component:$u,meta:vu},{path:"24",name:"page-24",component:Tu,meta:Mu},{path:"25",name:"page-25",component:Uu,meta:Fu},{path:"26",name:"page-26",component:Yu,meta:zu},{path:"27",name:"page-27",component:ad,meta:Ju},{path:"28",name:"page-28",component:kd,meta:rd},{path:"29",name:"page-29",component:bd,meta:md},{path:"30",name:"page-30",component:Md,meta:Ad},{path:"31",name:"page-31",component:Od,meta:Bd},{path:"32",name:"page-32",component:Wd,meta:Id},{path:"33",name:"page-33",component:tp,meta:Kd},{path:"34",name:"page-34",component:up,meta:sp},{path:"35",name:"page-35",component:bp,meta:kp}].map(Vs),xp=[].map(Vs),Ze=[{name:"play",path:"/",component:()=>Ie(()=>import("./slidev/play-C8n7z59C.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])),children:[...Y,...xp]},{name:"print",path:"/print",component:()=>Ie(()=>import("./slidev/print-BlY9Pl4Y.js"),__vite__mapDeps([11,1,4,9,3,6,7,12]))},{path:"",redirect:{path:"/1"}},{path:"/:pathMatch(.*)",redirect:{path:"/1"}}];{let t=function(e){if(!N.remote||N.remote===e.query.password)return!0;if(N.remote&&e.query.password===void 0){const s=prompt("Enter password");if(N.remote===s)return!0}return e.params.no?{path:`/${e.params.no}`}:{path:""}};Ze.push({path:"/presenter/print",component:()=>Ie(()=>import("./slidev/print-Bp8839Bl.js"),__vite__mapDeps([13,1,14,15,3,6,7]))}),Ze.push({name:"presenter",path:"/presenter/:no",component:()=>Ie(()=>import("./slidev/presenter-CsZKS7uB.js"),__vite__mapDeps([16,3,1,2,4,5,6,7,8,14,15,17,18,19])),beforeEnter:t}),Ze.push({path:"/presenter",redirect:{path:"/presenter/1"}})}const nt=sa({history:ia("/sa2024/04-mvc/"),routes:Ze}),mn=U(!1);function Ap(t,e,{mode:s="replace"}={}){return u({get(){const i=nt.currentRoute.value.query[t];return i==null?e??null:Array.isArray(i)?i.filter(Boolean):i},set(i){Le(()=>{nt[v(s)]({query:{...nt.currentRoute.value.query,[t]:i}})})}})}var Ep=Object.defineProperty,bi=Object.getOwnPropertySymbols,Dp=Object.prototype.hasOwnProperty,Cp=Object.prototype.propertyIsEnumerable,xi=(t,e,s)=>e in t?Ep(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,Bs=(t,e)=>{for(var s in e||(e={}))Dp.call(e,s)&&xi(t,s,e[s]);if(bi)for(var s of bi(e))Cp.call(e,s)&&xi(t,s,e[s]);return t},$p=()=>({emit(t,...e){for(let s=0,i=this.events[t]||[],a=i.length;s{var i;this.events[t]=(i=this.events[t])==null?void 0:i.filter(a=>e!==a)}}});function Ai(t,e,s,i=a=>a){return t*i(.5-e*(.5-s))}function Mp(t){return[-t[0],-t[1]]}function dt(t,e){return[t[0]+e[0],t[1]+e[1]]}function rt(t,e){return[t[0]-e[0],t[1]-e[1]]}function ut(t,e){return[t[0]*e,t[1]*e]}function Sp(t,e){return[t[0]/e,t[1]/e]}function De(t){return[t[1],-t[0]]}function Ei(t,e){return t[0]*e[0]+t[1]*e[1]}function Bp(t,e){return t[0]===e[0]&&t[1]===e[1]}function Pp(t){return Math.hypot(t[0],t[1])}function Tp(t){return t[0]*t[0]+t[1]*t[1]}function Di(t,e){return Tp(rt(t,e))}function _n(t){return Sp(t,Pp(t))}function Lp(t,e){return Math.hypot(t[1]-e[1],t[0]-e[0])}function Ce(t,e,s){let i=Math.sin(s),a=Math.cos(s),r=t[0]-e[0],l=t[1]-e[1],o=r*a-l*i,c=r*i+l*a;return[o+e[0],c+e[1]]}function Ps(t,e,s){return dt(t,ut(rt(e,t),s))}function Ci(t,e,s){return dt(t,ut(e,s))}var{min:ke,PI:Op}=Math,$i=.275,$e=Op+1e-4;function Fp(t,e={}){let{size:s=16,smoothing:i=.5,thinning:a=.5,simulatePressure:r=!0,easing:l=B=>B,start:o={},end:c={},last:h=!1}=e,{cap:d=!0,easing:p=B=>B*(2-B)}=o,{cap:k=!0,easing:f=B=>--B*B*B+1}=c;if(t.length===0||s<=0)return[];let g=t[t.length-1].runningLength,m=o.taper===!1?0:o.taper===!0?Math.max(s,g):o.taper,_=c.taper===!1?0:c.taper===!0?Math.max(s,g):c.taper,b=Math.pow(s*i,2),E=[],$=[],q=t.slice(0,10).reduce((B,W)=>{let I=W.pressure;if(r){let H=ke(1,W.distance/s),fs=ke(1,1-H);I=ke(1,B+(fs-B)*(H*$i))}return(B+I)/2},t[0].pressure),j=Ai(s,a,t[t.length-1].pressure,l),z,ot=t[0].vector,K=t[0].point,st=K,pt=K,ft=st,J=!1;for(let B=0;Bb)&&(E.push(pt),K=pt),ft=dt(I,oi),(B<=1||Di(st,ft)>b)&&($.push(ft),st=ft),q=W,ot=H}let F=t[0].point.slice(0,2),V=t.length>1?t[t.length-1].point.slice(0,2):dt(t[0].point,[1,1]),te=[],ct=[];if(t.length===1){if(!(m||_)||h){let B=Ci(F,_n(De(rt(F,V))),-(z||j)),W=[];for(let I=1/13,H=I;H<=1;H+=I)W.push(Ce(B,F,$e*2*H));return W}}else{if(!(m||_&&t.length===1))if(d)for(let W=1/13,I=W;I<=1;I+=W){let H=Ce($[0],F,$e*I);te.push(H)}else{let W=rt(E[0],$[0]),I=ut(W,.5),H=ut(W,.51);te.push(rt(F,I),rt(F,H),dt(F,H),dt(F,I))}let B=De(Mp(t[t.length-1].vector));if(_||m&&t.length===1)ct.push(V);else if(k){let W=Ci(V,B,j);for(let I=1/29,H=I;H<1;H+=I)ct.push(Ce(W,V,$e*3*H))}else ct.push(dt(V,ut(B,j)),dt(V,ut(B,j*.99)),rt(V,ut(B,j*.99)),rt(V,ut(B,j)))}return E.concat(ct,$.reverse(),te)}function Ip(t,e={}){var s;let{streamline:i=.5,size:a=16,last:r=!1}=e;if(t.length===0)return[];let l=.15+(1-i)*.85,o=Array.isArray(t[0])?t:t.map(({x:f,y:g,pressure:m=.5})=>[f,g,m]);if(o.length===2){let f=o[1];o=o.slice(0,-1);for(let g=1;g<5;g++)o.push(Ps(o[0],f,g/4))}o.length===1&&(o=[...o,[...dt(o[0],[1,1]),...o[0].slice(2)]]);let c=[{point:[o[0][0],o[0][1]],pressure:o[0][2]>=0?o[0][2]:.25,vector:[1,1],distance:0,runningLength:0}],h=!1,d=0,p=c[0],k=o.length-1;for(let f=1;f=0?o[f][2]:.5,vector:_n(rt(p.point,g)),distance:m,runningLength:d},c.push(p)}return c[0].vector=((s=c[1])==null?void 0:s.vector)||[0,0],c}function Np(t,e={}){return Fp(Ip(t,e),e)}function es(t,e){return t-e}function Hp(t){return t<0?-1:1}function ss(t){return[Math.abs(t),Hp(t)]}function yn(){const t=()=>((1+Math.random())*65536|0).toString(16).substring(1);return`${t()+t()}-${t()}-${t()}-${t()}-${t()}${t()}${t()}`}var Rp=2,mt=Rp,be=class{constructor(t){this.drauu=t,this.event=void 0,this.point=void 0,this.start=void 0,this.el=null}onSelected(t){}onUnselected(){}onStart(t){}onMove(t){return!1}onEnd(t){}get brush(){return this.drauu.brush}get shiftPressed(){return this.drauu.shiftPressed}get altPressed(){return this.drauu.altPressed}get svgElement(){return this.drauu.el}getMousePosition(t){var e,s,i;const a=this.drauu.el,r=(e=this.drauu.options.coordinateScale)!=null?e:1,l=(s=this.drauu.options.offset)!=null?s:{x:0,y:0};if(this.drauu.options.coordinateTransform===!1){const o=this.drauu.el.getBoundingClientRect();return{x:(t.pageX-o.left+l.x)*r,y:(t.pageY-o.top+l.y)*r,pressure:t.pressure}}else{const o=this.drauu.svgPoint;o.x=t.clientX+l.x,o.y=t.clientY+l.y;const c=o.matrixTransform((i=a.getScreenCTM())==null?void 0:i.inverse());return{x:c.x*r,y:c.y*r,pressure:t.pressure}}}createElement(t,e){var s;const i=document.createElementNS("http://www.w3.org/2000/svg",t),a=e?Bs(Bs({},this.brush),e):this.brush;return i.setAttribute("fill",(s=a.fill)!=null?s:"transparent"),i.setAttribute("stroke",a.color),i.setAttribute("stroke-width",a.size.toString()),i.setAttribute("stroke-linecap","round"),a.dasharray&&i.setAttribute("stroke-dasharray",a.dasharray),i}attr(t,e){this.el.setAttribute(t,typeof e=="string"?e:e.toFixed(mt))}_setEvent(t){this.event=t,this.point=this.getMousePosition(t)}_eventDown(t){return this._setEvent(t),this.start=this.point,this.onStart(this.point)}_eventMove(t){return this._setEvent(t),this.onMove(this.point)}_eventUp(t){return this._setEvent(t),this.onEnd(this.point)}},jp=class vn extends be{constructor(){super(...arguments),this.points=[]}onStart(e){return this.el=document.createElementNS("http://www.w3.org/2000/svg","path"),this.points=[e],this.attr("fill",this.brush.color),this.attr("d",this.getSvgData(this.points)),this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&this.points.push(e),this.attr("d",this.getSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!!e}getSvgData(e){return vn.getSvgData(e,this.brush)}static getSvgData(e,s){const i=Np(e,Bs({size:s.size,thinning:.9,simulatePressure:!1,start:{taper:5},end:{taper:5}},s.stylusOptions));if(!i.length)return"";const a=i.reduce((r,[l,o],c,h)=>{const[d,p]=h[(c+1)%h.length];return r.push(l,o,(l+d)/2,(o+p)/2),r},["M",...i[0],"Q"]);return a.push("Z"),a.map(r=>typeof r=="number"?r.toFixed(2):r).join(" ")}},Up=class extends be{onStart(t){return this.el=this.createElement("ellipse"),this.attr("cx",t.x),this.attr("cy",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=ss(t.x-this.start.x),[i,a]=ss(t.y-this.start.y);if(this.shiftPressed){const r=Math.min(e,i);e=r,i=r}if(this.altPressed)this.attr("cx",this.start.x),this.attr("cy",this.start.y),this.attr("rx",e),this.attr("ry",i);else{const[r,l]=[this.start.x,this.start.x+e*s].sort(es),[o,c]=[this.start.y,this.start.y+i*a].sort(es);this.attr("cx",(r+l)/2),this.attr("cy",(o+c)/2),this.attr("rx",(l-r)/2),this.attr("ry",(c-o)/2)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function wn(t,e){const s=document.createElementNS("http://www.w3.org/2000/svg","defs"),i=document.createElementNS("http://www.w3.org/2000/svg","marker"),a=document.createElementNS("http://www.w3.org/2000/svg","path");return a.setAttribute("fill",e),i.setAttribute("id",t),i.setAttribute("viewBox","0 -5 10 10"),i.setAttribute("refX","5"),i.setAttribute("refY","0"),i.setAttribute("markerWidth","4"),i.setAttribute("markerHeight","4"),i.setAttribute("orient","auto"),a.setAttribute("d","M0,-5L10,0L0,5"),i.appendChild(a),s.appendChild(i),s}var qp=class extends be{onStart(t){if(this.el=this.createElement("line",{fill:"transparent"}),this.attr("x1",t.x),this.attr("y1",t.y),this.attr("x2",t.x),this.attr("y2",t.y),this.brush.arrowEnd){const e=yn(),s=document.createElementNS("http://www.w3.org/2000/svg","g");return s.append(wn(e,this.brush.color)),s.append(this.el),this.attr("marker-end",`url(#${e})`),s}return this.el}onMove(t){if(!this.el)return!1;let{x:e,y:s}=t;if(this.shiftPressed){const i=t.x-this.start.x,a=t.y-this.start.y;if(a!==0){let r=i/a;r=Math.round(r),Math.abs(r)<=1?(e=this.start.x+a*r,s=this.start.y+a):(e=this.start.x+i,s=this.start.y)}}return this.altPressed?(this.attr("x1",this.start.x*2-e),this.attr("y1",this.start.y*2-s),this.attr("x2",e),this.attr("y2",s)):(this.attr("x1",this.start.x),this.attr("y1",this.start.y),this.attr("x2",e),this.attr("y2",s)),!0}onEnd(){const t=this.el;return this.el=null,!(!t||t.getTotalLength()<5)}},zp=class extends be{onStart(t){return this.el=this.createElement("rect"),this.brush.cornerRadius&&(this.attr("rx",this.brush.cornerRadius),this.attr("ry",this.brush.cornerRadius)),this.attr("x",t.x),this.attr("y",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=ss(t.x-this.start.x),[i,a]=ss(t.y-this.start.y);if(this.shiftPressed){const r=Math.min(e,i);e=r,i=r}if(this.altPressed)this.attr("x",this.start.x-e),this.attr("y",this.start.y-i),this.attr("width",e*2),this.attr("height",i*2);else{const[r,l]=[this.start.x,this.start.x+e*s].sort(es),[o,c]=[this.start.y,this.start.y+i*a].sort(es);this.attr("x",r),this.attr("y",o),this.attr("width",l-r),this.attr("height",c-o)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function Vp(t,e){const s=t.x-e.x,i=t.y-e.y;return s*s+i*i}function Wp(t,e,s){let i=e.x,a=e.y,r=s.x-i,l=s.y-a;if(r!==0||l!==0){const o=((t.x-i)*r+(t.y-a)*l)/(r*r+l*l);o>1?(i=s.x,a=s.y):o>0&&(i+=r*o,a+=l*o)}return r=t.x-i,l=t.y-a,r*r+l*l}function Gp(t,e){let s=t[0];const i=[s];let a;for(let r=1,l=t.length;re&&(i.push(a),s=a);return s!==a&&a&&i.push(a),i}function Ts(t,e,s,i,a){let r=i,l=0;for(let o=e+1;or&&(l=o,r=c)}r>i&&(l-e>1&&Ts(t,e,l,i,a),a.push(t[l]),s-l>1&&Ts(t,l,s,i,a))}function Kp(t,e){const s=t.length-1,i=[t[0]];return Ts(t,0,s,e,i),i.push(t[s]),i}function Mi(t,e,s=!1){if(t.length<=2)return t;const i=e!==void 0?e*e:1;return t=s?t:Gp(t,i),t=Kp(t,i),t}var Yp=class le extends be{constructor(){super(...arguments),this.points=[],this.count=0}onStart(e){if(this.el=this.createElement("path",{fill:"transparent"}),this.points=[e],this.brush.arrowEnd){this.arrowId=yn();const s=wn(this.arrowId,this.brush.color);this.el.appendChild(s)}return this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&(this.points.push(e),this.count+=1),this.count>5&&(this.points=Mi(this.points,1,!0),this.count=0),this.attr("d",le.toSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!(!e||(e.setAttribute("d",le.toSvgData(Mi(this.points,1,!0))),!e.getTotalLength()))}static line(e,s){const i=s.x-e.x,a=s.y-e.y;return{length:Math.sqrt(i**2+a**2),angle:Math.atan2(a,i)}}static controlPoint(e,s,i,a){const r=s||e,l=i||e,o=.2,c=le.line(r,l),h=c.angle+(a?Math.PI:0),d=c.length*o,p=e.x+Math.cos(h)*d,k=e.y+Math.sin(h)*d;return{x:p,y:k}}static bezierCommand(e,s,i){const a=le.controlPoint(i[s-1],i[s-2],e),r=le.controlPoint(e,i[s-1],i[s+1],!0);return`C ${a.x.toFixed(mt)},${a.y.toFixed(mt)} ${r.x.toFixed(mt)},${r.y.toFixed(mt)} ${e.x.toFixed(mt)},${e.y.toFixed(mt)}`}static toSvgData(e){return e.reduce((s,i,a,r)=>a===0?`M ${i.x.toFixed(mt)},${i.y.toFixed(mt)}`:`${s} ${le.bezierCommand(i,a,r)}`,"")}},Zp=class extends be{constructor(){super(...arguments),this.pathSubFactor=20,this.pathFragments=[],this._erased=[]}onSelected(t){const e=(s,i)=>{if(s&&s.length)for(let a=0;at.forEach(e=>this.drauu._restoreNode(e)),redo:()=>t.forEach(e=>this.drauu._removeNode(e))}}checkAndEraseElement(){if(this.pathFragments.length)for(let t=0;t!this._erased.includes(t.element))),this._erased.length>0}lineLineIntersect(t,e){const s=t.x1,i=t.x2,a=e.x1,r=e.x2,l=t.y1,o=t.y2,c=e.y1,h=e.y2,d=(s-i)*(c-h)-(l-o)*(a-r),p=(s*o-l*i)*(a-r)-(s-i)*(a*h-c*r),k=(s*o-l*i)*(c-h)-(l-o)*(a*h-c*r),f=(g,m,_)=>g>=m&&g<=_?!0:g>=_&&g<=m;if(d===0)return!1;{const g={x:p/d,y:k/d};return f(g.x,s,i)&&f(g.y,l,o)&&f(g.x,a,r)&&f(g.y,c,h)}}};function Jp(t){return{draw:new Yp(t),stylus:new jp(t),line:new qp(t),rectangle:new zp(t),ellipse:new Up(t),eraseLine:new Zp(t)}}var Xp=class{constructor(t={}){this.options=t,this.el=null,this.svgPoint=null,this.eventEl=null,this.shiftPressed=!1,this.altPressed=!1,this.drawing=!1,this._emitter=$p(),this._originalPointerId=null,this._models=Jp(this),this._opStack=[],this._opIndex=0,this._disposables=[],this._elements=[],this.options.brush||(this.options.brush={color:"black",size:3,mode:"stylus"}),t.el&&this.mount(t.el,t.eventTarget,t.window)}get model(){return this._models[this.mode]}get mounted(){return!!this.el}get mode(){return this.options.brush.mode||"stylus"}set mode(t){this._models[this.mode].onUnselected(),this.options.brush.mode=t,this.model.onSelected(this.el)}get brush(){return this.options.brush}set brush(t){this.options.brush=t}resolveSelector(t){return typeof t=="string"?document.querySelector(t):t||null}mount(t,e,s=window){if(this.el)throw new Error("[drauu] already mounted, unmount previous target first");if(this.el=this.resolveSelector(t),!this.el)throw new Error("[drauu] target element not found");if(this.el.tagName.toLocaleLowerCase()!=="svg")throw new Error("[drauu] can only mount to a SVG element");if(!this.el.createSVGPoint)throw new Error("[drauu] SVG element must be create by document.createElementNS('http://www.w3.org/2000/svg', 'svg')");this.svgPoint=this.el.createSVGPoint();const i=this.resolveSelector(e)||this.el,a=this.eventStart.bind(this),r=this.eventMove.bind(this),l=this.eventEnd.bind(this),o=this.eventKeyboard.bind(this);i.addEventListener("pointerdown",a,{passive:!1}),s.addEventListener("pointermove",r,{passive:!1}),s.addEventListener("pointerup",l,{passive:!1}),s.addEventListener("pointercancel",l,{passive:!1}),s.addEventListener("keydown",o,!1),s.addEventListener("keyup",o,!1),this._disposables.push(()=>{i.removeEventListener("pointerdown",a),s.removeEventListener("pointermove",r),s.removeEventListener("pointerup",l),s.removeEventListener("pointercancel",l),s.removeEventListener("keydown",o,!1),s.removeEventListener("keyup",o,!1)}),this._emitter.emit("mounted")}unmount(){this._disposables.forEach(t=>t()),this._disposables.length=0,this._elements.length=0,this.el=null,this._emitter.emit("unmounted")}on(t,e){return this._emitter.on(t,e)}undo(){return!this.canUndo()||this.drawing?!1:(this._opStack[--this._opIndex].undo(),this._emitter.emit("changed"),!0)}redo(){return!this.canRedo()||this.drawing?!1:(this._opStack[this._opIndex++].redo(),this._emitter.emit("changed"),!0)}canRedo(){return this._opIndex0}eventMove(t){!this.acceptsInput(t)||!this.drawing||this.model._eventMove(t)&&(t.stopPropagation(),t.preventDefault(),this._emitter.emit("changed"))}eventStart(t){this.acceptsInput(t)&&(t.stopPropagation(),t.preventDefault(),this._currentNode&&this.cancel(),this.drawing=!0,this._originalPointerId=t.pointerId,this._emitter.emit("start"),this._currentNode=this.model._eventDown(t),this._currentNode&&this.mode!=="eraseLine"&&this.el.appendChild(this._currentNode),this._emitter.emit("changed"))}eventEnd(t){if(!this.acceptsInput(t)||!this.drawing)return;const e=this.model._eventUp(t);if(!e)this.cancel();else if(e===!0){const s=this._currentNode;this._appendNode(s),this.commit({undo:()=>this._removeNode(s),redo:()=>this._restoreNode(s)})}else this.commit(e);this.drawing=!1,this._emitter.emit("end"),this._emitter.emit("changed"),this._originalPointerId=null}acceptsInput(t){return(!this.options.acceptsInputTypes||this.options.acceptsInputTypes.includes(t.pointerType))&&!(this._originalPointerId&&this._originalPointerId!==t.pointerId)}eventKeyboard(t){this.shiftPressed===t.shiftKey&&this.altPressed===t.altKey||(this.shiftPressed=t.shiftKey,this.altPressed=t.altKey,this.model.point&&this.model.onMove(this.model.point)&&this._emitter.emit("changed"))}commit(t){this._opStack.length=this._opIndex,this._opStack.push(t),this._opIndex++;const e=this._currentNode;this._currentNode=void 0,this._emitter.emit("committed",e)}clear(){this._opStack.length=0,this._opIndex=0,this.cancel(),this.el.innerHTML="",this._emitter.emit("changed")}cancel(){this._currentNode&&(this.el.removeChild(this._currentNode),this._currentNode=void 0,this._emitter.emit("canceled"))}dump(){return this.el.innerHTML}load(t){this.clear(),this.el.innerHTML=t}_appendNode(t){const e=this._elements.at(-1);e?e.after(t):this.el.append(t);const s=this._elements.push(t)-1;t.dataset.drauu_index=s.toString()}_removeNode(t){t.remove(),this._elements[+t.dataset.drauu_index]=null}_restoreNode(t){const e=+t.dataset.drauu_index;this._elements[e]=t;for(let s=e-1;s>=0;s--){const i=this._elements[s];if(i){i.after(t);return}}this.el.prepend(t)}};function Qp(t){return new Xp(t)}const xk=U(!1),Ak=U(!1),Ek=U(!1),tf=U(!1),Dk=U(!0),Ck=na({xs:460,...ca}),Si=aa(),$k=ra(),Mk=u(()=>Si.height.value-Si.width.value/Qi>120),Sk=la(hs?document.body:null),Ls=oa(),ef=u(()=>{var t,e;return["INPUT","TEXTAREA"].includes(((t=Ls.value)==null?void 0:t.tagName)||"")||((e=Ls.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),Bk=u(()=>{var t;return["BUTTON","A"].includes(((t=Ls.value)==null?void 0:t.tagName)||"")});et("slidev-camera","default",{listenToStorageChanges:!1});et("slidev-mic","default",{listenToStorageChanges:!1});const Pk=et("slidev-scale",0),Tk=et("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),Lk=et("slidev-show-editor",!1,{listenToStorageChanges:!1}),Ok=et("slidev-editor-vertical",!1,{listenToStorageChanges:!1});et("slidev-editor-width",hs?window.innerWidth*.4:318,{listenToStorageChanges:!1});et("slidev-editor-height",hs?window.innerHeight*.4:300,{listenToStorageChanges:!1});const is=et("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),ze=et("slidev-presenter-layout",1,{listenToStorageChanges:!1});function Fk(){ze.value=ze.value+1,ze.value>2&&(ze.value=1)}function Ik(){is.value=Math.min(2,is.value+.1)}function Nk(){is.value=Math.max(.5,is.value-.1)}const Hk=Vi(tf),Os=["#ff595e","#ffca3a","#8ac926","#1982c4","#6a4c93","#ffffff","#000000"],Fs=et("slidev-drawing-enabled",!1),Rk=et("slidev-drawing-pinned",!1),sf=U(!1),nf=U(!1),af=U(!1),ns=U(!1),as=ha(et("slidev-drawing-brush",{color:Os[0],size:4,mode:"stylus"})),Bi=U("stylus"),bn=u(()=>N.drawings.syncAll||he.value);let He=!1;const Me=u({get(){return Bi.value},set(t){Bi.value=t,t==="arrow"?(Z.mode="line",as.arrowEnd=!0):(Z.mode=t,as.arrowEnd=!1)}}),rf=w({brush:as,acceptsInputTypes:u(()=>Fs.value&&(!N.drawings.presenterOnly||he.value)?void 0:["pen"]),coordinateTransform:!1}),Z=Vs(Qp(rf));function lf(){Z.clear(),bn.value&&sn(G.value,"")}function Zs(){var t;nf.value=Z.canRedo(),sf.value=Z.canUndo(),af.value=!!((t=Z.el)!=null&&t.children.length)}function of(t){He=!0;const e=nn[t||G.value];e!=null?Z.load(e):Z.clear(),Zs(),He=!1}Z.on("changed",()=>{if(Zs(),!He){const t=Z.dump(),e=G.value;(nn[e]||"")!==t&&bn.value&&sn(e,Z.dump())}});Ar(t=>{He=!0,t[G.value]!=null&&Z.load(t[G.value]||""),He=!1,Zs()});Le(()=>{we(G,()=>{Z.mounted&&of()},{immediate:!0})});Z.on("start",()=>ns.value=!0);Z.on("end",()=>ns.value=!1);window.addEventListener("keydown",t=>{if(!Fs.value||ef.value)return;const e=!t.ctrlKey&&!t.altKey&&!t.shiftKey&&!t.metaKey;let s=!0;t.code==="KeyZ"&&(t.ctrlKey||t.metaKey)?t.shiftKey?Z.redo():Z.undo():t.code==="Escape"?Fs.value=!1:t.code==="KeyL"&&e?Me.value="line":t.code==="KeyA"&&e?Me.value="arrow":t.code==="KeyS"&&e?Me.value="stylus":t.code==="KeyR"&&e?Me.value="rectangle":t.code==="KeyE"&&e?Me.value="ellipse":t.code==="KeyC"&&e?lf():t.code.startsWith("Digit")&&e&&+t.code[5]<=Os.length?as.color=Os[+t.code[5]-1]:s=!1,s&&(t.preventDefault(),t.stopPropagation())},!1);const Is=U(0);Le(()=>{nt.afterEach(async()=>{await Le(),Is.value+=1})});const xn=U(0),us=U(0),gt=u(()=>nt.currentRoute.value),cf=u(()=>gt.value.query.print!==void 0),hf=u(()=>gt.value.query.print==="clicks"),jk=u(()=>gt.value.query.embedded!==void 0),he=u(()=>gt.value.path.startsWith("/presenter")),uf=u(()=>gt.value.path.startsWith("/notes")),df=u(()=>gt.value.query.password),Uk=u(()=>!he.value&&(!N.remote||df.value===N.remote)),Pi=Ap("clicks","0"),ve=u({get(){if(ie.value.disabled)return Ms;let t=+(Pi.value||0);return Number.isNaN(t)&&(t=0),t},set(t){Pi.value=t.toString()}}),qk=u(()=>Y.length),pf=u(()=>gt.value.path),G=u(()=>Number.parseInt(pf.value.split(/\//g).slice(-1)[0])||1);u(()=>ds(G.value));const Qt=u(()=>Y.find(t=>t.path===`${G.value}`)),zk=u(()=>{var t,e,s;return(s=(e=(t=Qt.value)==null?void 0:t.meta)==null?void 0:e.slide)==null?void 0:s.id});u(()=>{var t,e;return((e=(t=Qt.value)==null?void 0:t.meta)==null?void 0:e.layout)||(G.value===1?"cover":"default")});const Vk=u(()=>Y.find(t=>t.path===`${Math.min(Y.length,G.value+1)}`)),ff=u(()=>Y.find(t=>t.path===`${Math.max(1,G.value-1)}`)),ie=u(()=>Pr(Qt.value)),Js=u(()=>ie.value.current),Re=u(()=>ie.value.total),Wk=u(()=>G.valueG.value>1||Js.value>0),kf=u(()=>Y.filter(t=>{var e,s;return(s=(e=t.meta)==null?void 0:e.slide)==null?void 0:s.title}).reduce((t,e)=>(ei(t,e),t),[])),gf=u(()=>si(kf.value,Qt.value));u(()=>ii(gf.value));const Kk=u(()=>wf(xn.value,Qt.value,ff.value));we(Qt,(t,e)=>{xn.value=Number(t==null?void 0:t.path)-Number(e==null?void 0:e.path)});async function An(){us.value=1,Re.value<=ve.value?await Xs():ve.value+=1}async function En(){us.value=-1,ve.value<=0?await Qs():ve.value-=1}function ds(t){return he.value?`/presenter/${t}`:`/${t}`}async function Xs(){us.value=1,G.value.3||r>75?s.value==="left"?An():En():(l/window.innerHeight>.4||l>200)&&(s.value==="down"?Qs():Xs())}})}async function mf(){const{saveAs:t}=await Ie(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),__vite__mapDeps([]));t(typeof N.download=="string"?N.download:N.exportFilename?`${N.exportFilename}.pdf`:"/sa2024/04-mvc/slidev-exported.pdf",`${N.title}.pdf`)}async function _f(t){var e,s;if(t==null){const i=(s=(e=Qt.value)==null?void 0:e.meta)==null?void 0:s.slide;if(!i)return!1;t=`${i.filepath}:${i.start}`}return await fetch(`/__open-in-editor?file=${encodeURIComponent(t)}`),!0}function ei(t,e,s=1){var a,r,l,o,c,h,d;const i=(r=(a=e.meta)==null?void 0:a.slide)==null?void 0:r.level;i&&i>s&&t.length>0?ei(t[t.length-1].children,e,s+1):t.push({children:[],level:s,path:e.path,hideInToc:!!((c=(o=(l=e.meta)==null?void 0:l.slide)==null?void 0:o.frontmatter)!=null&&c.hideInToc),title:(d=(h=e.meta)==null?void 0:h.slide)==null?void 0:d.title})}function si(t,e,s=!1,i){return t.map(a=>{const r={...a,active:a.path===(e==null?void 0:e.path),hasActiveParent:s};return r.children.length>0&&(r.children=si(r.children,e,r.active||r.hasActiveParent,r)),i&&(r.active||r.activeParent)&&(i.activeParent=!0),r})}function ii(t,e=1){return t.filter(s=>!s.hideInToc).map(s=>({...s,children:ii(s.children,e+1)}))}const yf={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function vf(t,e=!1){if(!t||(typeof t=="string"&&(t={name:t}),!t.name))return;let s=t.name.includes("|")?t.name:yf[t.name]||t.name;if(s.includes("|")){const[i,a]=s.split("|").map(r=>r.trim());s=e?a:i}if(s)return{...t,name:s}}function wf(t,e,s){var a,r;let i=t>0?(a=s==null?void 0:s.meta)==null?void 0:a.transition:(r=e==null?void 0:e.meta)==null?void 0:r.transition;return i||(i=N.transition),vf(i,t<0)}function bf(){const t=N.titleTemplate.replace("%s",N.title||"Slidev");or({title:t,htmlAttrs:N.htmlAttrs}),yr(`${t} - shared`),xr(`${t} - drawings`);const e=`${location.origin}_${an()}`;function s(){uf.value||!he.value&&!Sr.includes(location.host.split(":")[0])||(he.value?(Ae("page",+G.value),Ae("clicks",ie.value.current)):(Ae("viewerPage",+G.value),Ae("viewerClicks",ie.value.current)),Ae("lastUpdate",{id:e,type:he.value?"presenter":"viewer",time:new Date().getTime()}))}nt.afterEach(s),we(ie,s),vr(i=>{var r;nt.currentRoute.value.path.match(/^\/(\d+|presenter)\/?/)&&((r=i.lastUpdate)==null?void 0:r.type)==="presenter"&&(+i.page!=+G.value||+ie.value.current!=+i.clicks)&&(mn.value=!1,nt.replace({path:ds(i.page),query:{...nt.currentRoute.value.query,clicks:i.clicks||0}}))})}const xf=cs({__name:"App",setup(t){return bf(),ne(()=>{for(const[e,s]of Object.entries(gr.value))document.body.style.setProperty(e,s.toString())}),(e,s)=>{const i=pa("RouterView");return D(),M(i)}}}),Af=C(xf,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function Ef(t){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e),t.app.use(fa),t.app.use(ya)}function Dn(t,e,s){var i;return((i=t.instance)==null?void 0:i.$).provides[e]??s}function Df(){return{install(t){t.directive("click",{name:"v-click",mounted(e,s){const i=Je(e,s,s.value);if(i==null)return;e.classList.toggle(Pe,!0);const a=Array.isArray(i.clicks)?i.clicks:[i.clicks,void 0];e.dataset.slidevClicksStart=String(a[0]),a[1]!=null&&(e.dataset.slidevClicksEnd=String(a[1])),ne(()=>{const r=i.isActive.value,l=i.isCurrent.value,o=r&&!l;i.flagHide?(e.classList.toggle(i.flagFade?Ee:ge,r),e.classList.toggle(_s,r)):e.classList.toggle(i.flagFade?Ee:ge,!r),e.classList.toggle(ys,l),e.classList.toggle(vs,o)})},unmounted:bs}),t.directive("after",{name:"v-after",mounted(e,s){const i=Je(e,s,s.value,!0);i!=null&&(e.classList.toggle(Pe,!0),ne(()=>{const a=i.isActive.value,r=i.isCurrent.value,l=a&&!r;i.flagHide?(e.classList.toggle(i.flagFade?Ee:ge,a),e.classList.toggle(_s,a)):e.classList.toggle(i.flagFade?Ee:ge,!a),e.classList.toggle(ys,r),e.classList.toggle(vs,l)}))},unmounted:bs}),t.directive("click-hide",{name:"v-click-hide",mounted(e,s){const i=Je(e,s,s.value,!1,!0);i!=null&&(e.classList.toggle(Pe,!0),ne(()=>{const a=i.isActive.value,r=i.isCurrent.value,l=a&&!r;e.classList.toggle(i.flagFade?Ee:ge,a),e.classList.toggle(_s,a),e.classList.toggle(ys,r),e.classList.toggle(vs,l)}))},unmounted:bs})}}}function ws(t,e){return Array.isArray(t)?t[0]<=e&&ews(c,r.current)),isCurrent:u(()=>Cf(c,r.current)),isShown:u(()=>a?!ws(c,r.current):ws(c,r.current)),flagFade:l,flagHide:a};return r.register(t,d),d}function bs(t,e){var i;t.classList.toggle(Pe,!1);const s=(i=Dn(e,Gs))==null?void 0:i.value;s==null||s.unregister(t)}function Cn(){return Math.floor(Math.random()*2**31)}class $f{constructor(e){this.seed=e}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}}function Ns(t,e,s){if(t&&t.length){const[i,a]=e,r=Math.PI/180*s,l=Math.cos(r),o=Math.sin(r);for(const c of t){const[h,d]=c;c[0]=(h-i)*l-(d-a)*o+i,c[1]=(h-i)*o+(d-a)*l+a}}}function Mf(t,e,s){const i=[];t.forEach(a=>i.push(...a)),Ns(i,e,s)}function Sf(t,e){return t[0]===e[0]&&t[1]===e[1]}function Bf(t,e,s,i=1){const a=s,r=Math.max(e,.1),l=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,o=[0,0];if(a)for(const h of l)Ns(h,o,a);const c=Pf(l,r,i);if(a){for(const h of l)Ns(h,o,-a);Mf(c,o,-a)}return c}function Pf(t,e,s){const i=[];for(const h of t){const d=[...h];Sf(d[0],d[d.length-1])||d.push([d[0][0],d[0][1]]),d.length>2&&i.push(d)}const a=[];e=Math.max(e,.1);const r=[];for(const h of i)for(let d=0;dh.ymind.ymin?1:h.xd.x?1:h.ymax===d.ymax?0:(h.ymax-d.ymax)/Math.abs(h.ymax-d.ymax)),!r.length)return a;let l=[],o=r[0].ymin,c=0;for(;l.length||r.length;){if(r.length){let h=-1;for(let p=0;po);p++)h=p;r.splice(0,h+1).forEach(p=>{l.push({s:o,edge:p})})}if(l=l.filter(h=>!(h.edge.ymax<=o)),l.sort((h,d)=>h.edge.x===d.edge.x?0:(h.edge.x-d.edge.x)/Math.abs(h.edge.x-d.edge.x)),(s!==1||c%e===0)&&l.length>1)for(let h=0;h=l.length)break;const p=l[h].edge,k=l[d].edge;a.push([[Math.round(p.x),o],[Math.round(k.x),o]])}o+=s,l.forEach(h=>{h.edge.x=h.edge.x+s*h.edge.islope}),c++}return a}function Ue(t,e){var s;const i=e.hachureAngle+90;let a=e.hachureGap;a<0&&(a=e.strokeWidth*4),a=Math.round(Math.max(a,.1));let r=1;return e.roughness>=1&&(((s=e.randomizer)===null||s===void 0?void 0:s.next())||Math.random())>.7&&(r=a),Bf(t,a,i,r||1)}class ni{constructor(e){this.helper=e}fillPolygons(e,s){return this._fillPolygons(e,s)}_fillPolygons(e,s){const i=Ue(e,s);return{type:"fillSketch",ops:this.renderLines(i,s)}}renderLines(e,s){const i=[];for(const a of e)i.push(...this.helper.doubleLineOps(a[0][0],a[0][1],a[1][0],a[1][1],s));return i}}function ps(t){const e=t[0],s=t[1];return Math.sqrt(Math.pow(e[0]-s[0],2)+Math.pow(e[1]-s[1],2))}class Tf extends ni{fillPolygons(e,s){let i=s.hachureGap;i<0&&(i=s.strokeWidth*4),i=Math.max(i,.1);const a=Object.assign({},s,{hachureGap:i}),r=Ue(e,a),l=Math.PI/180*s.hachureAngle,o=[],c=i*.5*Math.cos(l),h=i*.5*Math.sin(l);for(const[p,k]of r)ps([p,k])&&o.push([[p[0]-c,p[1]+h],[...k]],[[p[0]+c,p[1]-h],[...k]]);return{type:"fillSketch",ops:this.renderLines(o,s)}}}class Lf extends ni{fillPolygons(e,s){const i=this._fillPolygons(e,s),a=Object.assign({},s,{hachureAngle:s.hachureAngle+90}),r=this._fillPolygons(e,a);return i.ops=i.ops.concat(r.ops),i}}class Of{constructor(e){this.helper=e}fillPolygons(e,s){s=Object.assign({},s,{hachureAngle:0});const i=Ue(e,s);return this.dotsOnLines(i,s)}dotsOnLines(e,s){const i=[];let a=s.hachureGap;a<0&&(a=s.strokeWidth*4),a=Math.max(a,.1);let r=s.fillWeight;r<0&&(r=s.strokeWidth/2);const l=a/4;for(const o of e){const c=ps(o),h=c/a,d=Math.ceil(h)-1,p=c-d*a,k=(o[0][0]+o[1][0])/2-a/4,f=Math.min(o[0][1],o[1][1]);for(let g=0;g{const o=ps(l),c=Math.floor(o/(i+a)),h=(o+a-c*(i+a))/2;let d=l[0],p=l[1];d[0]>p[0]&&(d=l[1],p=l[0]);const k=Math.atan((p[1]-d[1])/(p[0]-d[0]));for(let f=0;f{const l=ps(r),o=Math.round(l/(2*s));let c=r[0],h=r[1];c[0]>h[0]&&(c=r[1],h=r[0]);const d=Math.atan((h[1]-c[1])/(h[0]-c[0]));for(let p=0;pd%2?h+s:h+e);r.push({key:"C",data:c}),e=c[4],s=c[5];break}case"Q":r.push({key:"Q",data:[...o]}),e=o[2],s=o[3];break;case"q":{const c=o.map((h,d)=>d%2?h+s:h+e);r.push({key:"Q",data:c}),e=c[2],s=c[3];break}case"A":r.push({key:"A",data:[...o]}),e=o[5],s=o[6];break;case"a":e+=o[5],s+=o[6],r.push({key:"A",data:[o[0],o[1],o[2],o[3],o[4],e,s]});break;case"H":r.push({key:"H",data:[...o]}),e=o[0];break;case"h":e+=o[0],r.push({key:"H",data:[e]});break;case"V":r.push({key:"V",data:[...o]}),s=o[0];break;case"v":s+=o[0],r.push({key:"V",data:[s]});break;case"S":r.push({key:"S",data:[...o]}),e=o[2],s=o[3];break;case"s":{const c=o.map((h,d)=>d%2?h+s:h+e);r.push({key:"S",data:c}),e=c[2],s=c[3];break}case"T":r.push({key:"T",data:[...o]}),e=o[0],s=o[1];break;case"t":e+=o[0],s+=o[1],r.push({key:"T",data:[e,s]});break;case"Z":case"z":r.push({key:"Z",data:[]}),e=i,s=a;break}return r}function Sn(t){const e=[];let s="",i=0,a=0,r=0,l=0,o=0,c=0;for(const{key:h,data:d}of t){switch(h){case"M":e.push({key:"M",data:[...d]}),[i,a]=d,[r,l]=d;break;case"C":e.push({key:"C",data:[...d]}),i=d[4],a=d[5],o=d[2],c=d[3];break;case"L":e.push({key:"L",data:[...d]}),[i,a]=d;break;case"H":i=d[0],e.push({key:"L",data:[i,a]});break;case"V":a=d[0],e.push({key:"L",data:[i,a]});break;case"S":{let p=0,k=0;s==="C"||s==="S"?(p=i+(i-o),k=a+(a-c)):(p=i,k=a),e.push({key:"C",data:[p,k,...d]}),o=d[0],c=d[1],i=d[2],a=d[3];break}case"T":{const[p,k]=d;let f=0,g=0;s==="Q"||s==="T"?(f=i+(i-o),g=a+(a-c)):(f=i,g=a);const m=i+2*(f-i)/3,_=a+2*(g-a)/3,b=p+2*(f-p)/3,E=k+2*(g-k)/3;e.push({key:"C",data:[m,_,b,E,p,k]}),o=f,c=g,i=p,a=k;break}case"Q":{const[p,k,f,g]=d,m=i+2*(p-i)/3,_=a+2*(k-a)/3,b=f+2*(p-f)/3,E=g+2*(k-g)/3;e.push({key:"C",data:[m,_,b,E,f,g]}),o=p,c=k,i=f,a=g;break}case"A":{const p=Math.abs(d[0]),k=Math.abs(d[1]),f=d[2],g=d[3],m=d[4],_=d[5],b=d[6];p===0||k===0?(e.push({key:"C",data:[i,a,_,b,_,b]}),i=_,a=b):(i!==_||a!==b)&&(Bn(i,a,_,b,p,k,f,g,m).forEach(function($){e.push({key:"C",data:$})}),i=_,a=b);break}case"Z":e.push({key:"Z",data:[]}),i=r,a=l;break}s=h}return e}function jf(t){return Math.PI*t/180}function Se(t,e,s){const i=t*Math.cos(s)-e*Math.sin(s),a=t*Math.sin(s)+e*Math.cos(s);return[i,a]}function Bn(t,e,s,i,a,r,l,o,c,h){const d=jf(l);let p=[],k=0,f=0,g=0,m=0;if(h)[k,f,g,m]=h;else{[t,e]=Se(t,e,-d),[s,i]=Se(s,i,-d);const J=(t-s)/2,F=(e-i)/2;let V=J*J/(a*a)+F*F/(r*r);V>1&&(V=Math.sqrt(V),a=V*a,r=V*r);const te=o===c?-1:1,ct=a*a,B=r*r,W=ct*B-ct*F*F-B*J*J,I=ct*F*F+B*J*J,H=te*Math.sqrt(Math.abs(W/I));g=H*a*F/r+(t+s)/2,m=H*-r*J/a+(e+i)/2,k=Math.asin(parseFloat(((e-m)/r).toFixed(9))),f=Math.asin(parseFloat(((i-m)/r).toFixed(9))),tf&&(k=k-Math.PI*2),!c&&f>k&&(f=f-Math.PI*2)}let _=f-k;if(Math.abs(_)>Math.PI*120/180){const J=f,F=s,V=i;c&&f>k?f=k+Math.PI*120/180*1:f=k+Math.PI*120/180*-1,s=g+a*Math.cos(f),i=m+r*Math.sin(f),p=Bn(s,i,F,V,a,r,l,0,c,[f,J,g,m])}_=f-k;const b=Math.cos(k),E=Math.sin(k),$=Math.cos(f),q=Math.sin(f),j=Math.tan(_/4),z=4/3*a*j,ot=4/3*r*j,K=[t,e],st=[t+z*E,e-ot*b],pt=[s+z*q,i-ot*$],ft=[s,i];if(st[0]=2*K[0]-st[0],st[1]=2*K[1]-st[1],h)return[st,pt,ft].concat(p);{p=[st,pt,ft].concat(p);const J=[];for(let F=0;F2){const a=[];for(let r=0;rMath.PI*2&&(f=0,g=Math.PI*2);const m=Math.PI*2/c.curveStepCount,_=Math.min(m/2,(g-f)/2),b=Ni(_,h,d,p,k,f,g,1,c);if(!c.disableMultiStroke){const E=Ni(_,h,d,p,k,f,g,1.5,c);b.push(...E)}return l&&(o?b.push(...ae(h,d,h+p*Math.cos(f),d+k*Math.sin(f),c),...ae(h,d,h+p*Math.cos(g),d+k*Math.sin(g),c)):b.push({op:"lineTo",data:[h,d]},{op:"lineTo",data:[h+p*Math.cos(f),d+k*Math.sin(f)]})),{type:"path",ops:b}}function Oi(t,e){const s=Sn(Mn(ai(t))),i=[];let a=[0,0],r=[0,0];for(const{key:l,data:o}of s)switch(l){case"M":{r=[o[0],o[1]],a=[o[0],o[1]];break}case"L":i.push(...ae(r[0],r[1],o[0],o[1],e)),r=[o[0],o[1]];break;case"C":{const[c,h,d,p,k,f]=o;i.push(...Kf(c,h,d,p,k,f,r,e)),r=[k,f];break}case"Z":i.push(...ae(r[0],r[1],a[0],a[1],e)),r=[a[0],a[1]];break}return{type:"path",ops:i}}function As(t,e){const s=[];for(const i of t)if(i.length){const a=e.maxRandomnessOffset||0,r=i.length;if(r>2){s.push({op:"move",data:[i[0][0]+x(a,e),i[0][1]+x(a,e)]});for(let l=1;lMath.PI*2&&(p=0,k=Math.PI*2);const f=(k-p)/l.curveStepCount,g=[];for(let m=p;m<=k;m=m+f)g.push([o+h*Math.cos(m),c+d*Math.sin(m)]);return g.push([o+h*Math.cos(k),c+d*Math.sin(k)]),g.push([o,c]),me([g],l)}function Vf(t,e){return x(t,e)}function Wf(t,e,s){return rs(t,e,s)}function Gf(t,e,s,i,a){return ae(t,e,s,i,a,!0)}function Fi(t){const e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function Ln(t){return t.randomizer||(t.randomizer=new $f(t.seed||0)),t.randomizer.next()}function rs(t,e,s,i=1){return s.roughness*i*(Ln(s)*(e-t)+t)}function x(t,e,s=1){return rs(-t,t,e,s)}function ae(t,e,s,i,a,r=!1){const l=r?a.disableMultiStrokeFill:a.disableMultiStroke,o=Us(t,e,s,i,a,!0,!1);if(l)return o;const c=Us(t,e,s,i,a,!0,!0);return o.concat(c)}function Us(t,e,s,i,a,r,l){const o=Math.pow(t-s,2)+Math.pow(e-i,2),c=Math.sqrt(o);let h=1;c<200?h=1:c>500?h=.4:h=-.0016668*c+1.233334;let d=a.maxRandomnessOffset||0;d*d*100>o&&(d=c/10);const p=d/2,k=.2+Ln(a)*.2;let f=a.bowing*a.maxRandomnessOffset*(i-e)/200,g=a.bowing*a.maxRandomnessOffset*(t-s)/200;f=x(f,a,h),g=x(g,a,h);const m=[],_=()=>x(p,a,h),b=()=>x(d,a,h),E=a.preserveVertices;return r&&(l?m.push({op:"move",data:[t+(E?0:_()),e+(E?0:_())]}):m.push({op:"move",data:[t+(E?0:x(d,a,h)),e+(E?0:x(d,a,h))]})),l?m.push({op:"bcurveTo",data:[f+t+(s-t)*k+_(),g+e+(i-e)*k+_(),f+t+2*(s-t)*k+_(),g+e+2*(i-e)*k+_(),s+(E?0:_()),i+(E?0:_())]}):m.push({op:"bcurveTo",data:[f+t+(s-t)*k+b(),g+e+(i-e)*k+b(),f+t+2*(s-t)*k+b(),g+e+2*(i-e)*k+b(),s+(E?0:b()),i+(E?0:b())]}),m}function We(t,e,s){if(!t.length)return[];const i=[];i.push([t[0][0]+x(e,s),t[0][1]+x(e,s)]),i.push([t[0][0]+x(e,s),t[0][1]+x(e,s)]);for(let a=1;a3){const r=[],l=1-s.curveTightness;a.push({op:"move",data:[t[1][0],t[1][1]]});for(let o=1;o+21&&a.push(r):a.push(r),a.push(t[e+3])}else{const l=t[e+0],o=t[e+1],c=t[e+2],h=t[e+3],d=oe(l,o,.5),p=oe(o,c,.5),k=oe(c,h,.5),f=oe(d,p,.5),g=oe(p,k,.5),m=oe(f,g,.5);qs([l,d,f,m],0,s,a),qs([m,g,k,h],0,s,a)}return a}function Xf(t,e){return os(t,0,t.length,e)}function os(t,e,s,i,a){const r=a||[],l=t[e],o=t[s-1];let c=0,h=1;for(let d=e+1;dc&&(c=p,h=d)}return Math.sqrt(c)>i?(os(t,e,h+1,i,r),os(t,h,s,i,r)):(r.length||r.push(l),r.push(o)),r}function zs(t,e=.15,s){const i=[],a=(t.length-1)/3;for(let r=0;r0?os(i,0,i.length,s):i}function Qf(t,e,s){const i=ai(t),a=Sn(Mn(i)),r=[];let l=[],o=[0,0],c=[];const h=()=>{c.length>=4&&l.push(...zs(c,e)),c=[]},d=()=>{h(),l.length&&(r.push(l),l=[])};for(const{key:k,data:f}of a)switch(k){case"M":d(),o=[f[0],f[1]],l.push(o);break;case"L":h(),l.push([f[0],f[1]]);break;case"C":if(!c.length){const g=l.length?l[l.length-1]:o;c.push([g[0],g[1]])}c.push([f[0],f[1]]),c.push([f[2],f[3]]),c.push([f[4],f[5]]);break;case"Z":h(),l.push([o[0],o[1]]);break}if(d(),!s)return r;const p=[];for(const k of r){const f=Xf(k,s);f.length&&p.push(f)}return p}const it="none";class tk{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Cn()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,s,i){return{shape:e,sets:s||[],options:i||this.defaultOptions}}line(e,s,i,a,r){const l=this._o(r);return this._d("line",[at(e,s,i,a,l)],l)}rectangle(e,s,i,a,r){const l=this._o(r),o=[],c=Pn(e,s,i,a,l);if(l.fill){const h=[[e,s],[e+i,s],[e+i,s+a],[e,s+a]];l.fillStyle==="solid"?o.push(As([h],l)):o.push(me([h],l))}return l.stroke!==it&&o.push(c),this._d("rectangle",o,l)}ellipse(e,s,i,a,r){const l=this._o(r),o=[],c=Tn(i,a,l),h=js(e,s,l,c);if(l.fill)if(l.fillStyle==="solid"){const d=js(e,s,l,c).opset;d.type="fillPath",o.push(d)}else o.push(me([h.estimatedPoints],l));return l.stroke!==it&&o.push(h.opset),this._d("ellipse",o,l)}circle(e,s,i,a){const r=this.ellipse(e,s,i,i,a);return r.shape="circle",r}linearPath(e,s){const i=this._o(s);return this._d("linearPath",[Te(e,!1,i)],i)}arc(e,s,i,a,r,l,o=!1,c){const h=this._o(c),d=[],p=Li(e,s,i,a,r,l,o,!0,h);if(o&&h.fill)if(h.fillStyle==="solid"){const k=Object.assign({},h);k.disableMultiStroke=!0;const f=Li(e,s,i,a,r,l,!0,!1,k);f.type="fillPath",d.push(f)}else d.push(zf(e,s,i,a,r,l,h));return h.stroke!==it&&d.push(p),this._d("arc",d,h)}curve(e,s){const i=this._o(s),a=[],r=Ti(e,i);if(i.fill&&i.fill!==it)if(i.fillStyle==="solid"){const l=Ti(e,Object.assign(Object.assign({},i),{disableMultiStroke:!0,roughness:i.roughness?i.roughness+i.fillShapeRoughnessGain:0}));a.push({type:"fillPath",ops:this._mergedShape(l.ops)})}else{const l=[],o=e;if(o.length){const h=typeof o[0][0]=="number"?[o]:o;for(const d of h)d.length<3?l.push(...d):d.length===3?l.push(...zs(Hi([d[0],d[0],d[1],d[2]]),10,(1+i.roughness)/2)):l.push(...zs(Hi(d),10,(1+i.roughness)/2))}l.length&&a.push(me([l],i))}return i.stroke!==it&&a.push(r),this._d("curve",a,i)}polygon(e,s){const i=this._o(s),a=[],r=Te(e,!0,i);return i.fill&&(i.fillStyle==="solid"?a.push(As([e],i)):a.push(me([e],i))),i.stroke!==it&&a.push(r),this._d("polygon",a,i)}path(e,s){const i=this._o(s),a=[];if(!e)return this._d("path",a,i);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const r=i.fill&&i.fill!=="transparent"&&i.fill!==it,l=i.stroke!==it,o=!!(i.simplification&&i.simplification<1),c=o?4-4*(i.simplification||1):(1+i.roughness)/2,h=Qf(e,1,c),d=Oi(e,i);if(r)if(i.fillStyle==="solid")if(h.length===1){const p=Oi(e,Object.assign(Object.assign({},i),{disableMultiStroke:!0,roughness:i.roughness?i.roughness+i.fillShapeRoughnessGain:0}));a.push({type:"fillPath",ops:this._mergedShape(p.ops)})}else a.push(As(h,i));else a.push(me(h,i));return l&&(o?h.forEach(p=>{a.push(Te(p,!1,i))}):a.push(d)),this._d("path",a,i)}opsToPath(e,s){let i="";for(const a of e.ops){const r=typeof s=="number"&&s>=0?a.data.map(l=>+l.toFixed(s)):a.data;switch(a.op){case"move":i+=`M${r[0]} ${r[1]} `;break;case"bcurveTo":i+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":i+=`L${r[0]} ${r[1]} `;break}}return i.trim()}toPaths(e){const s=e.sets||[],i=e.options||this.defaultOptions,a=[];for(const r of s){let l=null;switch(r.type){case"path":l={d:this.opsToPath(r),stroke:i.stroke,strokeWidth:i.strokeWidth,fill:it};break;case"fillPath":l={d:this.opsToPath(r),stroke:it,strokeWidth:0,fill:i.fill||it};break;case"fillSketch":l=this.fillSketch(r,i);break}l&&a.push(l)}return a}fillSketch(e,s){let i=s.fillWeight;return i<0&&(i=s.strokeWidth/2),{d:this.opsToPath(e),stroke:s.fill||it,strokeWidth:i,fill:it}}_mergedShape(e){return e.filter((s,i)=>i===0?!0:s.op!=="move")}}const On="http://www.w3.org/2000/svg",ek=800;let Es=null;function sk(){return Es||(Es=new tk().defaultOptions),Es}function Ds(t,e,s){return{...sk(),maxRandomnessOffset:2,roughness:t==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:t!=="double",disableMultiStrokeFill:!1,seed:e,...s}}function ik(t){const e=t.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const s=e;if(s.length)switch(s.length){case 4:return[...s];case 1:return[s[0],s[0],s[0],s[0]];case 2:return[...s,...s];case 3:return[...s,s[1]];default:return[s[0],s[1],s[2],s[3]]}}}return[5,5,5,5]}function nk(t,e,s,i,a,r){const l=[];let o=s.strokeWidth||2;const c=ik(s),h=s.animate===void 0?!0:!!s.animate,d=s.iterations||2,p=s.rtl?1:0,k=Ds("single",r,s);switch(s.type){case"underline":{const f=e.y+e.h+c[2];for(let g=p;gE.setAttribute($,q);for(const E of f){const $=document.createElementNS(On,"path");if(b($,"d",E),b($,"fill","none"),b($,"stroke",s.color||"currentColor"),b($,"stroke-width",`${o}`),s.opacity!==void 0&&b($,"style",`opacity:${s.opacity}`),h){const q=$.getTotalLength();g.push(q),_+=q}t.appendChild($),m.push($)}if(h){let E=0;for(let $=0;$setTimeout(e,t))}function ak(t){const e=[];for(const s of t){let i="";for(const a of s.ops){const r=a.data;switch(a.op){case"move":i.trim()&&e.push(i.trim()),i=`M${r[0]} ${r[1]} `;break;case"bcurveTo":i+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":i+=`L${r[0]} ${r[1]} `;break}}i.trim()&&e.push(i.trim())}return e}function rk(){if(!window.__rno_kf_s){const t=window.__rno_kf_s=document.createElement("style");t.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(t)}}var lk=Object.defineProperty,ok=(t,e,s)=>e in t?lk(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,ht=(t,e,s)=>(ok(t,typeof e!="symbol"?e+"":e,s),s);class ck{constructor(e,s){ht(this,"_state","unattached"),ht(this,"_config"),ht(this,"_resizing",!1),ht(this,"_ro"),ht(this,"_seed",Cn()),ht(this,"_e"),ht(this,"_svg"),ht(this,"_lastSizes",[]),ht(this,"_animationDelay",0),ht(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),ht(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(s)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,s){this._config[e]!==s&&(this._config[e]=s,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){rk();const e=this._svg=document.createElementNS(On,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const s=e.style;s.position="absolute",s.top="0",s.left="0",s.overflow="visible",s.pointerEvents="none",s.width="100px",s.height="100px";const i=this._config.type==="highlight";if(this._e.insertAdjacentElement(i?"beforebegin":"afterend",e),this._state="not-showing",i){const a=window.getComputedStyle(this._e).position;(!a||a==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const s of e)s.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let s=0;sMath.round(a)===Math.round(r);return i(e.x,s.x)&&i(e.y,s.y)&&i(e.w,s.w)&&i(e.h,s.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,s){let i=this._config;s&&(i=JSON.parse(JSON.stringify(this._config)),i.animate=!1);const a=this.rects();let r=0;a.forEach(h=>r+=h.w);const l=i.animationDuration||ek;let o=0;const c=[];for(let h=0;hObject.assign(t,{type:"box"}),circle:t=>Object.assign(t,{type:"circle"}),underline:t=>Object.assign(t,{type:"underline"}),highlight:t=>Object.assign(t,{type:"highlight"}),"strike-through":t=>Object.assign(t,{type:"strike-through"}),"crossed-off":t=>Object.assign(t,{type:"crossed-off"}),bracket:t=>Object.assign(t,{type:"bracket"}),strike:t=>Object.assign(t,{type:"strike-through"}),cross:t=>Object.assign(t,{type:"crossed-off"}),crossed:t=>Object.assign(t,{type:"crossed-off"}),linethrough:t=>Object.assign(t,{type:"strike-through"}),"line-through":t=>Object.assign(t,{type:"strike-through"}),black:t=>tt(t,"text-black"),blue:t=>tt(t,"text-blue"),cyan:t=>tt(t,"text-cyan"),gray:t=>tt(t,"text-gray"),green:t=>tt(t,"text-green"),indigo:t=>tt(t,"text-indigo"),lime:t=>tt(t,"text-lime"),orange:t=>tt(t,"text-orange"),pink:t=>tt(t,"text-pink"),purple:t=>tt(t,"text-purple"),red:t=>tt(t,"text-red"),teal:t=>tt(t,"text-teal"),white:t=>tt(t,"text-white"),yellow:t=>tt(t,"text-yellow")},uk=[[/^delay-?(\d+)?$/,(t,e,s)=>{const i=(t[1]?Number.parseInt(t[1]):s)||300;return e.delay=i,e}],[/^(?:op|opacity)-?(\d+)?$/,(t,e,s)=>{const i=(t[1]?Number.parseInt(t[1]):s)||100;return e.opacity=i/100,e}]];function dk(){return{install(t){t.directive("mark",{name:"v-mark",mounted:(e,s)=>{const i=u(()=>{const l=typeof s.value=="object"&&!Array.isArray(s.value)?{...s.value}:{at:s.value};let o={at:l.at};const c=Object.entries(s.modifiers).filter(([d,p])=>{if(ji[d])return o=ji[d](o,p),!1;for(const[k,f]of uk){const g=d.match(k);if(g)return o=f(g,o,p),!1}return!0});c.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",c);const h={...o,...l};return h.type||(h.type="underline"),h}),a=hk(e,i.value),r=Je(e,s,i.value.at);if(!r){console.error("[Slidev] Invalid value for v-mark:",i.value.at);return}ne(()=>{let l;i.value.class&&(a.class=i.value.class),i.value.color&&(a.color=i.value.color);const o=i.value.at;if(o===!0)l=!0;else if(o===!1)l=!1;else if(r)l=r.isActive.value;else{console.error("[Slidev] Invalid value for v-mark:",o);return}l!=null&&(l?a.show():a.hide())})}})}}}const Ui=ka(),Cs=et("slidev-color-schema","auto"),qi=u(()=>N.colorSchema!=="auto"),Fn=u({get(){return qi.value?N.colorSchema==="dark":Cs.value==="auto"?Ui.value:Cs.value==="dark"},set(t){qi.value||(Cs.value=t===Ui.value?"auto":t?"dark":"light")}}),Zk=Vi(Fn);hs&&we(Fn,t=>{const e=document.querySelector("html");e.classList.toggle("dark",t),e.classList.toggle("light",!t)},{immediate:!0});function pk(t){const e=u(()=>t.value.path),s=u(()=>Y.length),i=u(()=>Number.parseInt(e.value.split(/\//g).slice(-1)[0])||1),a=u(()=>ds(i.value)),r=u(()=>Y.find(k=>k.path===`${i.value}`)??Y.at(-1)??Y[0]),l=u(()=>{var k,f,g;return(g=(f=(k=r.value)==null?void 0:k.meta)==null?void 0:f.slide)==null?void 0:g.id}),o=u(()=>{var k,f;return((f=(k=r.value)==null?void 0:k.meta)==null?void 0:f.layout)||(i.value===1?"cover":"default")}),c=u(()=>Y.find(k=>k.path===`${Math.min(Y.length,i.value+1)}`)),h=u(()=>Y.filter(k=>{var f,g;return(g=(f=k.meta)==null?void 0:f.slide)==null?void 0:g.title}).reduce((k,f)=>(ei(k,f),k),[])),d=u(()=>si(h.value,r.value)),p=u(()=>ii(d.value));return{rawRoutes:Y,route:t,path:e,total:s,clicksContext:ie,clicks:Js,clicksTotal:Re,currentPage:i,currentPath:a,currentRoute:r,currentSlideId:l,currentLayout:o,nextRoute:c,rawTree:h,treeWithActiveStatuses:d,tree:p,go:ti,downloadPDF:mf,next:An,nextSlide:Xs,openInEditor:_f,prev:En,prevSlide:Qs}}function fk(t){return{nav:pk(t),configs:N,themeConfigs:u(()=>N.themeConfig)}}function kk(){return{install(t){const e=w(fk(gt));t.provide(on,U("none")),t.provide(ln,e),t.provide(rn,u(()=>e.nav.currentPage))}}}const pe=ga(Af);pe.use(nt);pe.use(rr());pe.use(Df());pe.use(dk());pe.use(kk());Ef({app:pe,router:nt});pe.mount("#app");export{Dk as $,or as A,qk as B,Ms as C,wk as D,ie as E,Qt as F,Wk as G,Vk as H,ve as I,vk as J,Tk as K,ze as L,Pr as M,zk as N,is as O,Ik as P,Nk as Q,G as R,Xs as S,Qs as T,Fs as U,Zk as V,Hk as W,Ek as X,ti as Y,$k as Z,C as _,xk as a,Bk as a0,ef as a1,Sk as a2,us as a3,Ck as a4,Ls as a5,df as a6,Gk as a7,qi as a8,Fn as a9,he as aa,as as ab,Uk as ac,Fk as ad,mf as ae,mn as af,Kk as ag,Mr as ah,rn as ai,on as aj,bk as ak,Gs as al,Me as am,Os as an,sf as ao,nf as ap,af as aq,lf as ar,Rk as as,Z as at,S as au,of as av,nn as aw,Ak as b,N as c,Lk as d,Ie as e,cf as f,ns as g,jk as h,Mk as i,Pk as j,Ok as k,yk as l,kr as m,An as n,ln as o,En as p,pk as q,Tr as r,tf as s,Qi as t,Yk as u,gt as v,Si as w,yc as x,Y as y,$r as z}; -function __vite__mapDeps(indexes) { - if (!__vite__mapDeps.viteFileDeps) { - __vite__mapDeps.viteFileDeps = ["assets/slidev/play-C8n7z59C.js","assets/modules/vue-CoY6Ph6S.js","assets/slidev/SlidesShow-HcxTFSmb.js","assets/modules/unplugin-icons-DdL09wdV.js","assets/slidev/bottom-WuJ66Wos.js","assets/slidev/DrawingPreview-CoNNOSET.js","assets/modules/shiki-CNrqLFow.js","assets/modules/shiki-BSchMNmt.css","assets/SlidesShow-Do3DTZt5.css","assets/slidev/PrintStyle-5JBmnYtP.js","assets/play-CoA43pdi.css","assets/slidev/print-BlY9Pl4Y.js","assets/print-Nssgrd1X.css","assets/slidev/print-Bp8839Bl.js","assets/slidev/NoteDisplay-CaWJaX5S.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/presenter-CsZKS7uB.js","assets/slidev/DrawingControls-1gJU4Lzk.js","assets/DrawingControls-BO6lw4N5.css","assets/presenter-BRsvFpoV.css"] - } - return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) -} diff --git a/04-mvc/assets/index-CwDoYzMm.css b/04-mvc/assets/index-CwDoYzMm.css new file mode 100644 index 0000000..5d0f775 --- /dev/null +++ b/04-mvc/assets/index-CwDoYzMm.css @@ -0,0 +1 @@ +*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border-main=""],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main,[bg-main=""]{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main,.dark [bg-main=""]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.hover\:bg-active:hover,[hover\:bg-active=""]:hover{background-color:#9ca3af1a}.dark .text-main{--un-text-opacity:1;color:rgb(221 221 221 / var(--un-text-opacity))}.text-main{--un-text-opacity:1;color:rgb(24 24 24 / var(--un-text-opacity))}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .slidev-code-dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:13px}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.i-svg-spinners-90-ring-with-bg{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z' opacity='.25'/%3E%3Cpath fill='currentColor' d='M10.14,1.16a11,11,0,0,0-9,8.92A1.59,1.59,0,0,0,2.46,12,1.52,1.52,0,0,0,4.11,10.7a8,8,0,0,1,6.66-6.61A1.42,1.42,0,0,0,12,2.69h0A1.57,1.57,0,0,0,10.14,1.16Z'%3E%3CanimateTransform attributeName='transform' dur='0.75s' repeatCount='indefinite' type='rotate' values='0 12 12;360 12 12'/%3E%3C/path%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1em;height:1em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none,[pointer-events-none=""]{pointer-events:none}.absolute,[absolute=""]{position:absolute}.fixed,[fixed=""]{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-110\%,[left-110\%=""]{left:110%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5,[right-5=""]{right:1.25rem}.top-0{top:0}.top-1\/2,.top-50\%,[top-50\%=""]{top:50%}.-top-15px{top:-15px}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-100{z-index:100}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-cols-\[35px_1fr\]{grid-template-columns:35px 1fr}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-rows-\[auto_max-content\]{grid-template-rows:auto max-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-1{margin:.25rem}.m-10{margin:2.5rem}.m-20{margin:5rem}.m-30{margin:7.5rem}.m-5{margin:1.25rem}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.my1{margin-top:.25rem;margin-bottom:.25rem}.my4{margin-top:1rem;margin-bottom:1rem}.my5{margin-top:1.25rem;margin-bottom:1.25rem}.mb-4{margin-bottom:1rem}.mb2{margin-bottom:.5rem}.ml--4{margin-left:-1rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr--3,[mr--3=""]{margin-right:-.75rem}.mr--8{margin-right:-2rem}.mr-1,.mr1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-0\.5{margin-top:.125rem}.mt-1,.mt1{margin-top:.25rem}.mt-2,[mt-2=""]{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.aspect-ratio-initial{aspect-ratio:initial}.h-\[40px\],.h-40px{height:40px}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-20{height:5rem}.h-22px{height:22px}.h-2px{height:2px}.h-3px{height:3px}.h-40{height:10rem}.h-5,.h5,[h5=""]{height:1.25rem}.h-50{height:12.5rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-70{height:17.5rem}.h-8,[h-8=""]{height:2rem}.h-80{height:20rem}.h-9,[h-9=""]{height:2.25rem}.h-90{height:22.5rem}.h-full,[h-full=""]{height:100%}.h-max{height:max-content}.h-screen{height:100vh}.h1{height:.25rem}.max-h-full{max-height:100%}.max-w-150{max-width:37.5rem}.max-w-250,[max-w-250=""]{max-width:62.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-h-50,[min-h-50=""]{min-height:12.5rem}.min-w-16{min-width:4rem}.min-w-40{min-width:10rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-\[40px\]{width:40px}.w-0{width:0}.w-13{width:3.25rem}.w-1px{width:1px}.w-200{width:50rem}.w-22px{width:22px}.w-250,[w-250=""]{width:62.5rem}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-7{width:1.75rem}.w-8,[w-8=""]{width:2rem}.w-9,[w-9=""]{width:2.25rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.w-screen{width:100vw}.w1{width:.25rem}.flex,[flex=""],[flex~="~"]{display:flex}.flex-1,[flex-1=""]{flex:1 1 0%}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-y--50\%,[translate-y--50\%=""]{--un-translate-y:-50%;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in 1s linear 1}.animate-duration-100{animation-duration:.1s}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.important\:\[\&_\*\]\:select-none *{-webkit-user-select:none!important;user-select:none!important}.select-none,[select-none=""]{-webkit-user-select:none;user-select:none}[select-none~="default:"]:default{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-after-page{break-after:page}.items-end{align-items:flex-end}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.justify-items-start{justify-items:start}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4,[gap-4=""]{gap:1rem}.gap-5{gap:1.25rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""],[overflow-hidden=""]{overflow:hidden}.of-scroll{overflow:scroll}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap,.ws-nowrap,[ws-nowrap=""]{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border=""],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border-t=""],[border~=t]{border-top-width:1px}.b-dark{--un-border-opacity:1;border-color:rgb(34 34 34 / var(--un-border-opacity))}.border-gray,.dark .dark\:b-gray-400{--un-border-opacity:1;border-color:rgb(156 163 175 / var(--un-border-opacity))}.border-gray-300\/50{border-color:#d1d5db80}.dark .dark\:border-gray-500{--un-border-opacity:1;border-color:rgb(107 114 128 / var(--un-border-opacity))}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded],[rounded=""]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full,[rounded-full=""]{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-lb{border-bottom-left-radius:.25rem}.rounded-tl{border-top-left-radius:.25rem}.b-dashed{border-style:dashed}.\!border-none{border-style:none!important}[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray,[hover\:op100~="bg-gray:5"]{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.dark .dark\:bg-gray-800{--un-bg-opacity:1;background-color:rgb(31 41 55 / var(--un-bg-opacity))}.bg-gray\:10{background-color:#9ca3af1a}.bg-gray\:5{background-color:#9ca3af0d}.bg-gray\/20{background-color:#9ca3af33}.bg-teal-500{--un-bg-opacity:1;background-color:rgb(20 184 166 / var(--un-bg-opacity))}.bg-transparent,[bg-transparent~=","],[bg-transparent~="{"],[bg-transparent~="&&"],[bg-transparent~="text.value"]{background-color:transparent}[bg-transparent~="!valid.value"]{background-color:transparent!important}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.hover\:bg-gray\/20:hover{background-color:#9ca3af33}[bg-transparent~="placeholder:"]::placeholder{background-color:transparent}.bg-opacity-30{--un-bg-opacity:.3}.\!bg-opacity-75,.bg-opacity-75\!{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.dark .dark\:stroke-black{--un-stroke-opacity:1;stroke:rgb(0 0 0 / var(--un-stroke-opacity))}.stroke-white{--un-stroke-opacity:1;stroke:rgb(255 255 255 / var(--un-stroke-opacity))}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2,.p2,[p2=""]{padding:.5rem}.\!p-4{padding:1rem!important}.p3{padding:.75rem}.p4{padding:1rem}.px,.px-4,.px4,[p~=x-4],[px=""]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2,[px2=""]{padding-left:.5rem;padding-right:.5rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px1{padding-left:.25rem;padding-right:.25rem}.px3{padding-left:.75rem;padding-right:.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3,.py3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py0\.5{padding-top:.125rem;padding-bottom:.125rem}.py1\.5{padding-top:.375rem;padding-bottom:.375rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-0{padding-left:0}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.pt5{padding-top:1.25rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3em{font-size:3em}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg,[text-lg=""]{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}[text-sm~="default:"]:default{font-size:.875rem;line-height:1.25rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.dark .dark\:text-red-500{--un-text-opacity:1;color:rgb(239 68 68 / var(--un-text-opacity))}.text-red-700{--un-text-opacity:1;color:rgb(185 28 28 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}.important-text-op-50,.text-opacity-50\!{--un-text-opacity:.5 !important}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.font-mono,[font-mono=""]{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.tab{-moz-tab-size:4;-o-tab-size:4;tab-size:4}[tab~="1032"]{-moz-tab-size:1032;-o-tab-size:1032;tab-size:1032}[tab~="2"]{-moz-tab-size:2;-o-tab-size:2;tab-size:2}[tab~="default:"]:default{-moz-tab-size:4;-o-tab-size:4;tab-size:4}.\!opacity-0,.important\:op0{opacity:0!important}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""],.group:hover .group-hover\:op100{opacity:1}.op15{opacity:.15}.op20,.group:hover .group-hover\:opacity-20{opacity:.2}.op25,.opacity-25,[op25=""]{opacity:.25}.op30{opacity:.3}.op35{opacity:.35}.op40,.opacity-40{opacity:.4}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80,.group:hover .group-hover\:op80{opacity:.8}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.hover\:op100:hover,[hover~=op100]:hover{opacity:1}.hover\:\!opacity-100:hover{opacity:1!important}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-xl,[shadow-xl=""]{--un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none,[outline-none=""]{outline:2px solid transparent;outline-offset:2px}.backdrop-blur,.backdrop-blur-8,[backdrop-blur-8=""]{--un-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition,[transition=""]{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300,[duration-300=""]{transition-duration:.3s}.duration-400,[duration-400=""]{transition-duration:.4s}.duration-500{transition-duration:.5s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.view-transition-name{view-transition-name:name}@media (max-width: 767.9px){.lt-md\:hidden{display:none}.lt-md\:flex-col{flex-direction:column}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}}.shiki-magic-move-container{position:relative;white-space:pre}.shiki-magic-move-line-number{opacity:.3;-webkit-user-select:none;user-select:none}.shiki-magic-move-item{display:inline-block;transition:color var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-move,.shiki-magic-move-enter-active,.shiki-magic-move-leave-active{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-container-resize,.shiki-magic-move-container-restyle{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease");transition-delay:calc(var(--smm-duration, .5s) * var(--smm-delay-container, 1))}.shiki-magic-move-move{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-move, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-enter-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-enter, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-leave-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-leave, 1)) + var(--smm-stagger, 0))}.shiki-magic-move-enter-from,.shiki-magic-move-leave-to{opacity:0}br.shiki-magic-move-leave-active{display:none} diff --git a/02-components/assets/modules/shiki-ywDJVitK.js b/04-mvc/assets/modules/shiki-nC3sHFQh.js similarity index 99% rename from 02-components/assets/modules/shiki-ywDJVitK.js rename to 04-mvc/assets/modules/shiki-nC3sHFQh.js index b33a068..9b892e8 100644 --- a/02-components/assets/modules/shiki-ywDJVitK.js +++ b/04-mvc/assets/modules/shiki-nC3sHFQh.js @@ -1 +1 @@ -import{d as xe,n as Vt,p as Wt,a as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-DfJOUuqf.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),Vt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Wt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};jt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T}; +import{d as xe,p as Vt,a as Wt,n as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-DbJrfnh0.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),jt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Vt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};Wt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T,Nt as t}; diff --git a/04-mvc/assets/modules/unplugin-icons-CMs28sA9.js b/04-mvc/assets/modules/unplugin-icons-CMs28sA9.js new file mode 100644 index 0000000..9eda504 --- /dev/null +++ b/04-mvc/assets/modules/unplugin-icons-CMs28sA9.js @@ -0,0 +1 @@ +import{o as e,b as o,e as n}from"./vue-DbJrfnh0.js";const s={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},l=n("path",{fill:"currentColor",d:"M200 32h-36.26a47.92 47.92 0 0 0-71.48 0H56a16 16 0 0 0-16 16v168a16 16 0 0 0 16 16h144a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16m-72 0a32 32 0 0 1 32 32H96a32 32 0 0 1 32-32m72 184H56V48h26.75A47.93 47.93 0 0 0 80 64v8a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-8a47.93 47.93 0 0 0-2.75-16H200Z"},null,-1),_=[l];function i(t,c){return e(),o("svg",s,[..._])}const Bn={name:"ph-clipboard",render:i},h={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M173.66 98.34a8 8 0 0 1 0 11.32l-56 56a8 8 0 0 1-11.32 0l-24-24a8 8 0 0 1 11.32-11.32L112 148.69l50.34-50.35a8 8 0 0 1 11.32 0M232 128A104 104 0 1 1 128 24a104.11 104.11 0 0 1 104 104m-16 0a88 88 0 1 0-88 88a88.1 88.1 0 0 0 88-88"},null,-1),a=[r];function d(t,c){return e(),o("svg",h,[...a])}const Vn={name:"ph-check-circle",render:d},u={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),m=[v];function $(t,c){return e(),o("svg",u,[...m])}const bn={name:"carbon-list-boxes",render:$},p={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g=n("path",{fill:"currentColor",d:"M26 2H8a2 2 0 0 0-2 2v4H4v2h2v5H4v2h2v5H4v2h2v4a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2m0 26H8v-4h2v-2H8v-5h2v-2H8v-5h2V8H8V4h18Z"},null,-1),f=n("path",{fill:"currentColor",d:"M14 8h8v2h-8zm0 7h8v2h-8zm0 7h8v2h-8z"},null,-1),L=[g,f];function w(t,c){return e(),o("svg",p,[...L])}const Zn={name:"carbon-catalog",render:w},x={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),z=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),H=[M,z];function C(t,c){return e(),o("svg",x,[...H])}const An={name:"carbon-user-speaker",render:C},B={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},V=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),b=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),Z=[V,b];function A(t,c){return e(),o("svg",B,[...Z])}const kn={name:"carbon-presentation-file",render:A},k={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),j=[y];function D(t,c){return e(),o("svg",k,[...j])}const yn={name:"carbon-pen",render:D},E={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q=n("path",{fill:"currentColor",d:"m20.17 19l-2.59 2.59L19 23l4-4l-4-4l-1.42 1.41zm-8.34 0l2.59-2.59L13 15l-4 4l4 4l1.42-1.41z"},null,-1),F=n("circle",{cx:"9",cy:"8",r:"1",fill:"currentColor"},null,-1),I=n("circle",{cx:"6",cy:"8",r:"1",fill:"currentColor"},null,-1),N=n("path",{fill:"currentColor",d:"M28 4H4c-1.103 0-2 .898-2 2v20c0 1.103.897 2 2 2h24c1.103 0 2-.897 2-2V6c0-1.102-.897-2-2-2m0 2v4H4V6zM4 26V12h24v14z"},null,-1),S=[q,F,I,N];function G(t,c){return e(),o("svg",E,[...S])}const jn={name:"carbon-cics-program",render:G},J={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),O=[K];function U(t,c){return e(),o("svg",J,[...O])}const Dn={name:"carbon-sun",render:U},P={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Q=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),R=[Q];function T(t,c){return e(),o("svg",P,[...R])}const En={name:"carbon-moon",render:T},W={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},X=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),Y=[X];function n1(t,c){return e(),o("svg",W,[...Y])}const qn={name:"carbon-cursor1",render:n1},e1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},o1=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),t1=n("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),c1=[o1,t1];function s1(t,c){return e(),o("svg",e1,[...c1])}const Fn={name:"carbon-zoom-out",render:s1},l1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},_1=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),i1=n("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),h1=[_1,i1];function r1(t,c){return e(),o("svg",l1,[...h1])}const In={name:"carbon-zoom-in",render:r1},a1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},d1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),u1=[d1];function v1(t,c){return e(),o("svg",a1,[...u1])}const Nn={name:"carbon-maximize",render:v1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},$1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),p1=[$1];function g1(t,c){return e(),o("svg",m1,[...p1])}const Sn={name:"carbon-minimize",render:g1},f1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},L1=n("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),w1=[L1];function x1(t,c){return e(),o("svg",f1,[...w1])}const Gn={name:"carbon-renew",render:x1},M1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},z1=n("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),H1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),C1=[z1,H1];function B1(t,c){return e(),o("svg",M1,[...C1])}const Jn={name:"carbon-time",render:B1},V1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),Z1=[b1];function A1(t,c){return e(),o("svg",V1,[...Z1])}const Kn={name:"carbon-arrow-left",render:A1},k1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),j1=[y1];function D1(t,c){return e(),o("svg",k1,[...j1])}const On={name:"carbon-arrow-right",render:D1},E1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q1=n("path",{fill:"currentColor",d:"M16 4L6 14l1.41 1.41L15 7.83V28h2V7.83l7.59 7.58L26 14z"},null,-1),F1=[q1];function I1(t,c){return e(),o("svg",E1,[...F1])}const Un={name:"carbon-arrow-up",render:I1},N1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},S1=n("path",{fill:"currentColor",d:"M24.59 16.59L17 24.17V4h-2v20.17l-7.59-7.58L6 18l10 10l10-10z"},null,-1),G1=[S1];function J1(t,c){return e(),o("svg",N1,[...G1])}const Pn={name:"carbon-arrow-down",render:J1},K1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},O1=n("path",{d:"M29.537 13.76l-3.297-3.297a1.586 1.586 0 0 0-2.24 0L10 24.467V30h5.533l14.004-14a1.586 1.586 0 0 0 0-2.24zM14.704 28H12v-2.704l9.44-9.441l2.705 2.704zM25.56 17.145l-2.704-2.704l2.267-2.267l2.704 2.704z",fill:"currentColor"},null,-1),U1=n("path",{d:"M11 17h2v-7h3V8H8v2h3v7z",fill:"currentColor"},null,-1),P1=n("path",{d:"M8 20H4V4h16v4h2V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4z",fill:"currentColor"},null,-1),Q1=[O1,U1,P1];function R1(t,c){return e(),o("svg",K1,[...Q1])}const Qn={name:"carbon-text-annotation-toggle",render:R1},T1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},W1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),X1=[W1];function Y1(t,c){return e(),o("svg",T1,[...X1])}const Rn={name:"carbon-apps",render:Y1},n2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},e2=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),o2=[e2];function t2(t,c){return e(),o("svg",n2,[...o2])}const Tn={name:"carbon-settings-adjust",render:t2},c2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},s2=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),l2=n("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),_2=[s2,l2];function i2(t,c){return e(),o("svg",c2,[..._2])}const Wn={name:"carbon-information",render:i2},h2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},r2=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),a2=[r2];function d2(t,c){return e(),o("svg",h2,[...a2])}const Xn={name:"carbon-download",render:d2},u2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v2=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),m2=[v2];function $2(t,c){return e(),o("svg",u2,[...m2])}const Yn={name:"carbon-template",render:$2},p2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},g2=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0l-51.31-51.31a8 8 0 0 0-13 2.46l-17.82 46.41a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85l-46.41 17.82a8 8 0 0 0-2.46 13l51.31 51.31a8 8 0 0 1 0 11.34",opacity:".2"}),n("path",{d:"M168 132.69L214.08 115l.33-.13a16 16 0 0 0-1.41-29.8L52.92 32.8A15.95 15.95 0 0 0 32.8 52.92L85.07 213a15.82 15.82 0 0 0 14.41 11h.78a15.84 15.84 0 0 0 14.61-9.59l.13-.33L132.69 168L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63ZM195.31 208L144 156.69a16 16 0 0 0-26 4.93c0 .11-.09.22-.13.32l-17.65 46L48 48l159.85 52.2l-45.95 17.64l-.32.13a16 16 0 0 0-4.93 26L208 195.31Z"})],-1),f2=[g2];function L2(t,c){return e(),o("svg",p2,[...f2])}const ne={name:"ph-cursor-duotone",render:L2},w2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},x2=n("path",{fill:"currentColor",d:"m220.49 207.8l-12.69 12.69a12 12 0 0 1-17 0l-56.57-56.57L115 214.08l-.13.33a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-.33.13l-50.16 19.27l56.57 56.56a12 12 0 0 1 0 16.97"},null,-1),M2=[x2];function z2(t,c){return e(),o("svg",w2,[...M2])}const ee={name:"ph-cursor-fill",render:z2},H2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C2=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),B2=[C2];function V2(t,c){return e(),o("svg",H2,[...B2])}const oe={name:"carbon-checkmark",render:V2},b2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Z2=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),A2=[Z2];function k2(t,c){return e(),o("svg",b2,[...A2])}const te={name:"carbon-close",render:k2},y2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},j2=n("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),D2=n("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),E2=[j2,D2];function q2(t,c){return e(),o("svg",y2,[...E2])}const ce={name:"carbon-close-outline",render:q2},F2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},I2=n("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),N2=[I2];function S2(t,c){return e(),o("svg",F2,[...N2])}const se={name:"carbon-error",render:S2},G2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},J2=n("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),K2=[J2];function O2(t,c){return e(),o("svg",G2,[...K2])}const le={name:"carbon-pin",render:O2},U2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},P2=n("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),Q2=[P2];function R2(t,c){return e(),o("svg",U2,[...Q2])}const _e={name:"carbon-pin-filled",render:R2},T2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},W2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),X2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),Y2=[W2,X2];function nn(t,c){return e(),o("svg",T2,[...Y2])}const ie={name:"carbon-trash-can",render:nn},en={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},on=n("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),tn=[on];function cn(t,c){return e(),o("svg",en,[...tn])}const he={name:"carbon-redo",render:cn},sn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},ln=n("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),_n=[ln];function hn(t,c){return e(),o("svg",sn,[..._n])}const re={name:"carbon-undo",render:hn},rn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},an=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),dn=[an];function un(t,c){return e(),o("svg",rn,[...dn])}const ae={name:"carbon-erase",render:un},vn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},mn=n("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),$n=[mn];function pn(t,c){return e(),o("svg",vn,[...$n])}const de={name:"carbon-checkbox",render:pn},gn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},fn=n("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),Ln=[fn];function wn(t,c){return e(),o("svg",gn,[...Ln])}const ue={name:"carbon-radio-button",render:wn},xn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Mn=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),zn=[Mn];function Hn(t,c){return e(),o("svg",xn,[...zn])}const ve={name:"carbon-arrow-up-right",render:Hn};export{te as A,Vn as B,Bn as C,ve as D,ue as E,de as F,ae as G,re as H,Un as I,he as J,ie as K,_e as L,le as M,se as N,ce as O,kn as _,An as a,Zn as b,bn as c,En as d,Dn as e,jn as f,yn as g,In as h,Fn as i,Sn as j,Nn as k,Jn as l,Gn as m,qn as n,Kn as o,On as p,Pn as q,Qn as r,Rn as s,oe as t,ee as u,ne as v,Tn as w,Yn as x,Xn as y,Wn as z}; diff --git a/04-mvc/assets/modules/unplugin-icons-DdL09wdV.js b/04-mvc/assets/modules/unplugin-icons-DdL09wdV.js deleted file mode 100644 index 34c0f8e..0000000 --- a/04-mvc/assets/modules/unplugin-icons-DdL09wdV.js +++ /dev/null @@ -1 +0,0 @@ -import{o as e,b as o,e as n}from"./vue-CoY6Ph6S.js";const c={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},_=n("path",{fill:"currentColor",d:"M200 32h-36.26a47.92 47.92 0 0 0-71.48 0H56a16 16 0 0 0-16 16v168a16 16 0 0 0 16 16h144a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16m-72 0a32 32 0 0 1 32 32H96a32 32 0 0 1 32-32m72 184H56V48h26.75A47.93 47.93 0 0 0 80 64v8a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-8a47.93 47.93 0 0 0-2.75-16H200Z"},null,-1),i=[_];function l(t,s){return e(),o("svg",c,[...i])}const nn={name:"ph-clipboard",render:l},h={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M173.66 98.34a8 8 0 0 1 0 11.32l-56 56a8 8 0 0 1-11.32 0l-24-24a8 8 0 0 1 11.32-11.32L112 148.69l50.34-50.35a8 8 0 0 1 11.32 0M232 128A104 104 0 1 1 128 24a104.11 104.11 0 0 1 104 104m-16 0a88 88 0 1 0-88 88a88.1 88.1 0 0 0 88-88"},null,-1),a=[r];function d(t,s){return e(),o("svg",h,[...a])}const en={name:"ph-check-circle",render:d},u={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},m=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),v=[m];function $(t,s){return e(),o("svg",u,[...v])}const on={name:"carbon-list-boxes",render:$},p={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),L=[g];function f(t,s){return e(),o("svg",p,[...L])}const tn={name:"carbon-close",render:f},w={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},x=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),M=[x];function z(t,s){return e(),o("svg",w,[...M])}const sn={name:"carbon-settings-adjust",render:z},H={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),b=n("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),B=[C,b];function V(t,s){return e(),o("svg",H,[...B])}const cn={name:"carbon-information",render:V},Z={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),k=[A];function j(t,s){return e(),o("svg",Z,[...k])}const _n={name:"carbon-download",render:j},y={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),E=[q];function S(t,s){return e(),o("svg",y,[...E])}const ln={name:"carbon-template",render:S},D={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},F=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),G=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),I=[F,G];function J(t,s){return e(),o("svg",D,[...I])}const hn={name:"carbon-user-speaker",render:J},N={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),O=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),P=[K,O];function Q(t,s){return e(),o("svg",N,[...P])}const rn={name:"carbon-presentation-file",render:Q},R={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},T=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),U=[T];function W(t,s){return e(),o("svg",R,[...U])}const an={name:"carbon-pen",render:W},X={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},Y=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0L140 164a8 8 0 0 0-13 2.46l-19.46 44.77a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85L166.45 127a8 8 0 0 0-2.45 13l49.67 49.67a8 8 0 0 1-.01 11.33",opacity:".2"}),n("path",{d:"m169.64 134.33l44.77-19.46a16 16 0 0 0-1.41-29.8L52.92 32.8A16 16 0 0 0 32.8 52.92L85.07 213a15.83 15.83 0 0 0 14.41 11h.78a15.83 15.83 0 0 0 14.61-9.59l19.46-44.77L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63Zm-69.48 73.76l.06-.05Zm95.15-.09l-49.67-49.67a16 16 0 0 0-26 4.94l-19.42 44.65L48 48l159.87 52.21l-44.64 19.41a16 16 0 0 0-4.94 26L208 195.31Z"})],-1),n1=[Y];function e1(t,s){return e(),o("svg",X,[...n1])}const dn={name:"ph-cursor-duotone",render:e1},o1={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},t1=n("path",{fill:"currentColor",d:"M219.31 192a16 16 0 0 1 0 22.63l-4.68 4.68a16 16 0 0 1-22.63 0l-55.25-55.24l-21.88 50.34a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-50.34 21.88Z"},null,-1),s1=[t1];function c1(t,s){return e(),o("svg",o1,[...s1])}const un={name:"ph-cursor-fill",render:c1},_1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},i1=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),l1=[i1];function h1(t,s){return e(),o("svg",_1,[...l1])}const mn={name:"carbon-sun",render:h1},r1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},a1=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),d1=[a1];function u1(t,s){return e(),o("svg",r1,[...d1])}const vn={name:"carbon-moon",render:u1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),$1=[v1];function p1(t,s){return e(),o("svg",m1,[...$1])}const $n={name:"carbon-apps",render:p1},g1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},L1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),f1=[L1];function w1(t,s){return e(),o("svg",g1,[...f1])}const pn={name:"carbon-arrow-right",render:w1},x1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),z1=[M1];function H1(t,s){return e(),o("svg",x1,[...z1])}const gn={name:"carbon-arrow-left",render:H1},C1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),B1=[b1];function V1(t,s){return e(),o("svg",C1,[...B1])}const Ln={name:"carbon-maximize",render:V1},Z1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),k1=[A1];function j1(t,s){return e(),o("svg",Z1,[...k1])}const fn={name:"carbon-minimize",render:j1},y1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q1=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),E1=[q1];function S1(t,s){return e(),o("svg",y1,[...E1])}const wn={name:"carbon-checkmark",render:S1},D1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},F1=n("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),G1=[F1];function I1(t,s){return e(),o("svg",D1,[...G1])}const xn={name:"carbon-renew",render:I1},J1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},N1=n("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),K1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),O1=[N1,K1];function P1(t,s){return e(),o("svg",J1,[...O1])}const Mn={name:"carbon-time",render:P1},Q1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},R1=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),T1=n("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),U1=[R1,T1];function W1(t,s){return e(),o("svg",Q1,[...U1])}const zn={name:"carbon-zoom-out",render:W1},X1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Y1=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),n2=n("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),e2=[Y1,n2];function o2(t,s){return e(),o("svg",X1,[...e2])}const Hn={name:"carbon-zoom-in",render:o2},t2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},s2=n("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),c2=n("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),_2=[s2,c2];function i2(t,s){return e(),o("svg",t2,[..._2])}const Cn={name:"carbon-close-outline",render:i2},l2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},h2=n("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),r2=[h2];function a2(t,s){return e(),o("svg",l2,[...r2])}const bn={name:"carbon-error",render:a2},d2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},u2=n("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),m2=[u2];function v2(t,s){return e(),o("svg",d2,[...m2])}const Bn={name:"carbon-pin",render:v2},$2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},p2=n("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),g2=[p2];function L2(t,s){return e(),o("svg",$2,[...g2])}const Vn={name:"carbon-pin-filled",render:L2},f2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},w2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),x2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),M2=[w2,x2];function z2(t,s){return e(),o("svg",f2,[...M2])}const Zn={name:"carbon-trash-can",render:z2},H2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C2=n("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),b2=[C2];function B2(t,s){return e(),o("svg",H2,[...b2])}const An={name:"carbon-redo",render:B2},V2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Z2=n("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),A2=[Z2];function k2(t,s){return e(),o("svg",V2,[...A2])}const kn={name:"carbon-undo",render:k2},j2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y2=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),q2=[y2];function E2(t,s){return e(),o("svg",j2,[...q2])}const jn={name:"carbon-erase",render:E2},S2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},D2=n("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),F2=[D2];function G2(t,s){return e(),o("svg",S2,[...F2])}const yn={name:"carbon-checkbox",render:G2},I2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},J2=n("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),N2=[J2];function K2(t,s){return e(),o("svg",I2,[...N2])}const qn={name:"carbon-radio-button",render:K2},O2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},P2=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),Q2=[P2];function R2(t,s){return e(),o("svg",O2,[...Q2])}const En={name:"carbon-arrow-up-right",render:R2},T2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},U2=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),W2=[U2];function X2(t,s){return e(),o("svg",T2,[...W2])}const Sn={name:"carbon-cursor1",render:X2};export{qn as A,yn as B,jn as C,kn as D,An as E,Zn as F,Vn as G,Bn as H,bn as I,Cn as J,en as _,nn as a,Sn as b,Hn as c,zn as d,Mn as e,xn as f,tn as g,on as h,wn as i,fn as j,Ln as k,gn as l,pn as m,vn as n,mn as o,un as p,dn as q,an as r,sn as s,$n as t,rn as u,hn as v,ln as w,_n as x,cn as y,En as z}; diff --git a/04-mvc/assets/modules/vue-CoY6Ph6S.js b/04-mvc/assets/modules/vue-CoY6Ph6S.js deleted file mode 100644 index b3b3c07..0000000 --- a/04-mvc/assets/modules/vue-CoY6Ph6S.js +++ /dev/null @@ -1,62 +0,0 @@ -/** -* vue v3.4.21 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/function We(e,t){const n=new Set(e.split(","));return t?s=>n.has(s.toLowerCase()):s=>n.has(s)}const ge=Object.freeze({}),ms=Object.freeze([]),Ve=()=>{},li=()=>!1,In=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),yi=e=>e.startsWith("onUpdate:"),ue=Object.assign,jl=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},im=Object.prototype.hasOwnProperty,pe=(e,t)=>im.call(e,t),K=Array.isArray,Jn=e=>Ls(e)==="[object Map]",Fs=e=>Ls(e)==="[object Set]",oc=e=>Ls(e)==="[object Date]",om=e=>Ls(e)==="[object RegExp]",Q=e=>typeof e=="function",ne=e=>typeof e=="string",$t=e=>typeof e=="symbol",me=e=>e!==null&&typeof e=="object",Ki=e=>(me(e)||Q(e))&&Q(e.then)&&Q(e.catch),nf=Object.prototype.toString,Ls=e=>nf.call(e),Bl=e=>Ls(e).slice(8,-1),sf=e=>Ls(e)==="[object Object]",Hl=e=>ne(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Sn=We(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),rf=We("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),qi=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},lm=/-(\w)/g,Pe=qi(e=>e.replace(lm,(t,n)=>n?n.toUpperCase():"")),am=/\B([A-Z])/g,et=qi(e=>e.replace(am,"-$1").toLowerCase()),Wt=qi(e=>e.charAt(0).toUpperCase()+e.slice(1)),Bt=qi(e=>e?`on${Wt(e)}`:""),Ft=(e,t)=>!Object.is(e,t),bn=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},dr=e=>{const t=parseFloat(e);return isNaN(t)?e:t},bi=e=>{const t=ne(e)?Number(e):NaN;return isNaN(t)?e:t};let lc;const of=()=>lc||(lc=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}),Ut={1:"TEXT",2:"CLASS",4:"STYLE",8:"PROPS",16:"FULL_PROPS",32:"NEED_HYDRATION",64:"STABLE_FRAGMENT",128:"KEYED_FRAGMENT",256:"UNKEYED_FRAGMENT",512:"NEED_PATCH",1024:"DYNAMIC_SLOTS",2048:"DEV_ROOT_FRAGMENT",[-1]:"HOISTED",[-2]:"BAIL"},cm={1:"STABLE",2:"DYNAMIC",3:"FORWARDED"},um="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error",fm=We(um),ac=2;function dm(e,t=0,n=e.length){let s=e.split(/(\r?\n)/);const r=s.filter((l,a)=>a%2===1);s=s.filter((l,a)=>a%2===0);let i=0;const o=[];for(let l=0;l=t){for(let a=l-ac;a<=l+ac||n>i;a++){if(a<0||a>=s.length)continue;const u=a+1;o.push(`${u}${" ".repeat(Math.max(3-String(u).length,0))}| ${s[a]}`);const f=s[a].length,c=r[a]&&r[a].length||0;if(a===l){const d=t-(i-(f+c)),p=Math.max(1,n>i?f-d:n-t);o.push(" | "+" ".repeat(d)+"^".repeat(p))}else if(a>l){if(n>i){const d=Math.max(Math.min(n-i,f),1);o.push(" | "+"^".repeat(d))}i+=f+c}}break}return o.join(` -`)}function Ds(e){if(K(e)){const t={};for(let n=0;n{if(n){const s=n.split(hm);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function gm(e){let t="";if(!e||ne(e))return t;for(const n in e){const s=e[n],r=n.startsWith("--")?n:et(n);(ne(s)||typeof s=="number")&&(t+=`${r}:${s};`)}return t}function Vs(e){let t="";if(ne(e))t=e;else if(K(e))for(let n=0;nss(n,t))}const Om=e=>ne(e)?e:e==null?"":K(e)||me(e)&&(e.toString===nf||!Q(e.toString))?JSON.stringify(e,df,2):String(e),df=(e,t)=>t&&t.__v_isRef?df(e,t.value):Jn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[go(s,i)+" =>"]=r,n),{})}:Fs(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>go(n))}:$t(t)?go(t):me(t)&&!K(t)&&!sf(t)?String(t):t,go=(e,t="")=>{var n;return $t(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};function zt(e,...t){console.warn(`[Vue warn] ${e}`,...t)}let gt;class ql{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=gt,!t&>&&(this.index=(gt.scopes||(gt.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=gt;try{return gt=this,t()}finally{gt=n}}else zt("cannot run an inactive effect scope.")}on(){gt=this}off(){gt=this.parent}stop(t){if(this._active){let n,s;for(n=0,s=this.effects.length;n=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),$n()}return this._dirtyLevel>=4}set dirty(t){this._dirtyLevel=t?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=En,n=Xn;try{return En=!0,Xn=this,this._runnings++,uc(this),this.fn()}finally{fc(this),this._runnings--,Xn=n,En=t}}stop(){var t;this.active&&(uc(this),fc(this),(t=this.onStop)==null||t.call(this),this.active=!1)}}function Nm(e){return e.value}function uc(e){e._trackId++,e._depsLength=0}function fc(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{n.dirty&&n.run()});t&&(ue(n,t),t.scope&&pf(n,t.scope)),(!t||!t.lazy)&&n.run();const s=n.run.bind(n);return s.effect=n,s}function Pm(e){e.effect.stop()}let En=!0,Uo=0;const gf=[];function Mn(){gf.push(En),En=!1}function $n(){const e=gf.pop();En=e===void 0?!0:e}function zl(){Uo++}function Gl(){for(Uo--;!Uo&&Ko.length;)Ko.shift()()}function yf(e,t,n){var s;if(t.get(e)!==e._trackId){t.set(e,e._trackId);const r=e.deps[e._depsLength];r!==t?(r&&mf(r,e),e.deps[e._depsLength++]=t):e._depsLength++,(s=e.onTrack)==null||s.call(e,ue({effect:e},n))}}const Ko=[];function vf(e,t,n){var s;zl();for(const r of e.keys()){let i;r._dirtyLevel{const n=new Map;return n.cleanup=e,n.computed=t,n},_i=new WeakMap,Qn=Symbol("iterate"),qo=Symbol("Map key iterate");function rt(e,t,n){if(En&&Xn){let s=_i.get(e);s||_i.set(e,s=new Map);let r=s.get(n);r||s.set(n,r=bf(()=>s.delete(n))),yf(Xn,r,{target:e,type:t,key:n})}}function Kt(e,t,n,s,r,i){const o=_i.get(e);if(!o)return;let l=[];if(t==="clear")l=[...o.values()];else if(n==="length"&&K(e)){const a=Number(s);o.forEach((u,f)=>{(f==="length"||!$t(f)&&f>=a)&&l.push(u)})}else switch(n!==void 0&&l.push(o.get(n)),t){case"add":K(e)?Hl(n)&&l.push(o.get("length")):(l.push(o.get(Qn)),Jn(e)&&l.push(o.get(qo)));break;case"delete":K(e)||(l.push(o.get(Qn)),Jn(e)&&l.push(o.get(qo)));break;case"set":Jn(e)&&l.push(o.get(Qn));break}zl();for(const a of l)a&&vf(a,4,{target:e,type:t,key:n,newValue:s,oldValue:r,oldTarget:i});Gl()}function Im(e,t){var n;return(n=_i.get(e))==null?void 0:n.get(t)}const Mm=We("__proto__,__v_isRef,__isVue"),_f=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter($t)),dc=$m();function $m(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const s=se(this);for(let i=0,o=this.length;i{e[t]=function(...n){Mn(),zl();const s=se(this)[t].apply(this,n);return Gl(),$n(),s}}),e}function Fm(e){const t=se(this);return rt(t,"has",e),t.hasOwnProperty(e)}class wf{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?Of:Af:i?xf:Cf).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=K(t);if(!r){if(o&&pe(dc,n))return Reflect.get(dc,n,s);if(n==="hasOwnProperty")return Fm}const l=Reflect.get(t,n,s);return($t(n)?_f.has(n):Mm(n))||(r||rt(t,"get",n),i)?l:Ee(l)?o&&Hl(n)?l:l.value:me(l)?r?dt(l):lt(l):l}}class Sf extends wf{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];if(!this._isShallow){const a=rn(i);if(!Cn(s)&&!rn(s)&&(i=se(i),s=se(s)),!K(t)&&Ee(i)&&!Ee(s))return a?!1:(i.value=s,!0)}const o=K(t)&&Hl(n)?Number(n)e,Wi=e=>Reflect.getPrototypeOf(e);function Ur(e,t,n=!1,s=!1){e=e.__v_raw;const r=se(e),i=se(t);n||(Ft(t,i)&&rt(r,"get",t),rt(r,"get",i));const{has:o}=Wi(r),l=s?Yl:n?Ql:hr;if(o.call(r,t))return l(e.get(t));if(o.call(r,i))return l(e.get(i));e!==r&&e.get(t)}function Kr(e,t=!1){const n=this.__v_raw,s=se(n),r=se(e);return t||(Ft(e,r)&&rt(s,"has",e),rt(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function qr(e,t=!1){return e=e.__v_raw,!t&&rt(se(e),"iterate",Qn),Reflect.get(e,"size",e)}function pc(e){e=se(e);const t=se(this);return Wi(t).has.call(t,e)||(t.add(e),Kt(t,"add",e,e)),this}function hc(e,t){t=se(t);const n=se(this),{has:s,get:r}=Wi(n);let i=s.call(n,e);i?Tf(n,s,e):(e=se(e),i=s.call(n,e));const o=r.call(n,e);return n.set(e,t),i?Ft(t,o)&&Kt(n,"set",e,t,o):Kt(n,"add",e,t),this}function mc(e){const t=se(this),{has:n,get:s}=Wi(t);let r=n.call(t,e);r?Tf(t,n,e):(e=se(e),r=n.call(t,e));const i=s?s.call(t,e):void 0,o=t.delete(e);return r&&Kt(t,"delete",e,void 0,i),o}function gc(){const e=se(this),t=e.size!==0,n=Jn(e)?new Map(e):new Set(e),s=e.clear();return t&&Kt(e,"clear",void 0,void 0,n),s}function Wr(e,t){return function(s,r){const i=this,o=i.__v_raw,l=se(o),a=t?Yl:e?Ql:hr;return!e&&rt(l,"iterate",Qn),o.forEach((u,f)=>s.call(r,a(u),a(f),i))}}function zr(e,t,n){return function(...s){const r=this.__v_raw,i=se(r),o=Jn(i),l=e==="entries"||e===Symbol.iterator&&o,a=e==="keys"&&o,u=r[e](...s),f=n?Yl:t?Ql:hr;return!t&&rt(i,"iterate",a?qo:Qn),{next(){const{value:c,done:d}=u.next();return d?{value:c,done:d}:{value:l?[f(c[0]),f(c[1])]:f(c),done:d}},[Symbol.iterator](){return this}}}}function an(e){return function(...t){{const n=t[0]?`on key "${t[0]}" `:"";zt(`${Wt(e)} operation ${n}failed: target is readonly.`,se(this))}return e==="delete"?!1:e==="clear"?void 0:this}}function Bm(){const e={get(i){return Ur(this,i)},get size(){return qr(this)},has:Kr,add:pc,set:hc,delete:mc,clear:gc,forEach:Wr(!1,!1)},t={get(i){return Ur(this,i,!1,!0)},get size(){return qr(this)},has:Kr,add:pc,set:hc,delete:mc,clear:gc,forEach:Wr(!1,!0)},n={get(i){return Ur(this,i,!0)},get size(){return qr(this,!0)},has(i){return Kr.call(this,i,!0)},add:an("add"),set:an("set"),delete:an("delete"),clear:an("clear"),forEach:Wr(!0,!1)},s={get(i){return Ur(this,i,!0,!0)},get size(){return qr(this,!0)},has(i){return Kr.call(this,i,!0)},add:an("add"),set:an("set"),delete:an("delete"),clear:an("clear"),forEach:Wr(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=zr(i,!1,!1),n[i]=zr(i,!0,!1),t[i]=zr(i,!1,!0),s[i]=zr(i,!0,!0)}),[e,n,t,s]}const[Hm,Um,Km,qm]=Bm();function zi(e,t){const n=t?e?qm:Km:e?Um:Hm;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(pe(n,r)&&r in s?n:s,r,i)}const Wm={get:zi(!1,!1)},zm={get:zi(!1,!0)},Gm={get:zi(!0,!1)},Ym={get:zi(!0,!0)};function Tf(e,t,n){const s=se(n);if(s!==n&&t.call(e,s)){const r=Bl(e);zt(`Reactive ${r} contains both the raw and reactive versions of the same object${r==="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 Cf=new WeakMap,xf=new WeakMap,Af=new WeakMap,Of=new WeakMap;function Jm(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Xm(e){return e.__v_skip||!Object.isExtensible(e)?0:Jm(Bl(e))}function lt(e){return rn(e)?e:Gi(e,!1,Lm,Wm,Cf)}function Jl(e){return Gi(e,!1,Vm,zm,xf)}function dt(e){return Gi(e,!0,Dm,Gm,Af)}function Kn(e){return Gi(e,!0,jm,Ym,Of)}function Gi(e,t,n,s,r){if(!me(e))return zt(`value cannot be made reactive: ${String(e)}`),e;if(e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=Xm(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function Tn(e){return rn(e)?Tn(e.__v_raw):!!(e&&e.__v_isReactive)}function rn(e){return!!(e&&e.__v_isReadonly)}function Cn(e){return!!(e&&e.__v_isShallow)}function pr(e){return Tn(e)||rn(e)}function se(e){const t=e&&e.__v_raw;return t?se(t):e}function Xl(e){return Object.isExtensible(e)&&vi(e,"__v_skip",!0),e}const hr=e=>me(e)?lt(e):e,Ql=e=>me(e)?dt(e):e,Qm="Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free";class Rf{constructor(t,n,s,r){this.getter=t,this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Cs(()=>t(this._value),()=>gs(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=s}get value(){const t=se(this);return(!t._cacheable||t.effect.dirty)&&Ft(t._value,t._value=t.effect.run())&&gs(t,4),Zl(t),t.effect._dirtyLevel>=2&&(this._warnRecursive&&zt(Qm,` - -getter: `,this.getter),gs(t,2)),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function Zm(e,t,n=!1){let s,r;const i=Q(e);i?(s=e,r=()=>{zt("Write operation failed: computed value is readonly")}):(s=e.get,r=e.set);const o=new Rf(s,r,i||!r,n);return t&&!n&&(o.effect.onTrack=t.onTrack,o.effect.onTrigger=t.onTrigger),o}function Zl(e){var t;En&&Xn&&(e=se(e),yf(Xn,(t=e.dep)!=null?t:e.dep=bf(()=>e.dep=void 0,e instanceof Rf?e:void 0),{target:e,type:"get",key:"value"}))}function gs(e,t=4,n){e=se(e);const s=e.dep;s&&vf(s,t,{target:e,type:"set",key:"value",newValue:n})}function Ee(e){return!!(e&&e.__v_isRef===!0)}function Z(e){return Nf(e,!1)}function ys(e){return Nf(e,!0)}function Nf(e,t){return Ee(e)?e:new eg(e,t)}class eg{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:se(t),this._value=n?t:hr(t)}get value(){return Zl(this),this._value}set value(t){const n=this.__v_isShallow||Cn(t)||rn(t);t=n?t:se(t),Ft(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:hr(t),gs(this,4,t))}}function tg(e){gs(e,4,e.value)}function nt(e){return Ee(e)?e.value:e}function ng(e){return Q(e)?e():nt(e)}const sg={get:(e,t,n)=>nt(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return Ee(r)&&!Ee(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function ea(e){return Tn(e)?e:new Proxy(e,sg)}class rg{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:s}=t(()=>Zl(this),()=>gs(this));this._get=n,this._set=s}get value(){return this._get()}set value(t){this._set(t)}}function Yi(e){return new rg(e)}function kf(e){pr(e)||zt("toRefs() expects a reactive object but received a plain one.");const t=K(e)?new Array(e.length):{};for(const n in e)t[n]=If(e,n);return t}class ig{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,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 Im(se(this._object),this._key)}}class og{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Pf(e,t,n){return Ee(e)?e:Q(e)?new og(e):me(e)&&arguments.length>1?If(e,t,n):Z(e)}function If(e,t,n){const s=e[t];return Ee(s)?s:new ig(e,t,n)}const lg={GET:"get",HAS:"has",ITERATE:"iterate"},ag={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},Zn=[];function Zs(e){Zn.push(e)}function er(){Zn.pop()}function M(e,...t){Mn();const n=Zn.length?Zn[Zn.length-1].component:null,s=n&&n.appContext.config.warnHandler,r=cg();if(s)qt(s,n,11,[e+t.map(i=>{var o,l;return(l=(o=i.toString)==null?void 0:o.call(i))!=null?l:JSON.stringify(i)}).join(""),n&&n.proxy,r.map(({vnode:i})=>`at <${oo(n,i.type)}>`).join(` -`),r]);else{const i=[`[Vue warn]: ${e}`,...t];r.length&&i.push(` -`,...ug(r)),console.warn(...i)}$n()}function cg(){let e=Zn[Zn.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 s=e.component&&e.component.parent;e=s&&s.vnode}return t}function ug(e){const t=[];return e.forEach((n,s)=>{t.push(...s===0?[]:[` -`],...fg(n))}),t}function fg({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",s=e.component?e.component.parent==null:!1,r=` at <${oo(e.component,e.type,s)}`,i=">"+n;return e.props?[r,...dg(e.props),i]:[r+i]}function dg(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(s=>{t.push(...Mf(s,e[s]))}),n.length>3&&t.push(" ..."),t}function Mf(e,t,n){return ne(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:Ee(t)?(t=Mf(e,se(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):Q(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=se(t),n?t:[`${e}=`,t])}function ta(e,t){e!==void 0&&(typeof e!="number"?M(`${t} is not a valid number - got ${JSON.stringify(e)}.`):isNaN(e)&&M(`${t} is NaN - the duration expression might be incorrect.`))}const pg={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",WATCH_GETTER:2,2:"WATCH_GETTER",WATCH_CALLBACK:3,3:"WATCH_CALLBACK",WATCH_CLEANUP:4,4:"WATCH_CLEANUP",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER"},Ji={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 qt(e,t,n,s){try{return s?e(...s):e()}catch(r){Fn(r,t,n)}}function At(e,t,n,s){if(Q(e)){const i=qt(e,t,n,s);return i&&Ki(i)&&i.catch(o=>{Fn(o,t,n)}),i}const r=[];for(let i=0;i>>1,r=tt[s],i=yr(r);iHt&&tt.splice(t,1)}function gr(e){K(e)?vs.push(...e):(!en||!en.includes(e,e.allowRecurse?pn+1:pn))&&vs.push(e),Ff()}function yc(e,t,n=mr?Ht+1:0){for(t=t||new Map;nyr(n)-yr(s));if(vs.length=0,en){en.push(...t);return}for(en=t,e=e||new Map,pn=0;pne.id==null?1/0:e.id,vg=(e,t)=>{const n=yr(e)-yr(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Lf(e){Wo=!1,mr=!0,e=e||new Map,tt.sort(vg);const t=n=>sa(e,n);try{for(Ht=0;Htmg){const s=t.ownerInstance,r=s&&_r(s.type);return Fn(`Maximum recursive updates exceeded${r?` in component <${r}>`:""}. 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 xn=!1;const hs=new Set;of().__VUE_HMR_RUNTIME__={createRecord:yo(Df),rerender:yo(wg),reload:yo(Sg)};const rs=new Map;function bg(e){const t=e.type.__hmrId;let n=rs.get(t);n||(Df(t,e.type),n=rs.get(t)),n.instances.add(e)}function _g(e){rs.get(e.type.__hmrId).instances.delete(e)}function Df(e,t){return rs.has(e)?!1:(rs.set(e,{initialDef:tr(t),instances:new Set}),!0)}function tr(e){return $d(e)?e.__vccOpts:e}function wg(e,t){const n=rs.get(e);n&&(n.initialDef.render=t,[...n.instances].forEach(s=>{t&&(s.render=t,tr(s.type).render=t),s.renderCache=[],xn=!0,s.effect.dirty=!0,s.update(),xn=!1}))}function Sg(e,t){const n=rs.get(e);if(!n)return;t=tr(t),vc(n.initialDef,t);const s=[...n.instances];for(const r of s){const i=tr(r.type);hs.has(i)||(i!==n.initialDef&&vc(i,t),hs.add(i)),r.appContext.propsCache.delete(r.type),r.appContext.emitsCache.delete(r.type),r.appContext.optionsCache.delete(r.type),r.ceReload?(hs.add(i),r.ceReload(t.styles),hs.delete(i)):r.parent?(r.parent.effect.dirty=!0,Rr(r.parent.update)):r.appContext.reload?r.appContext.reload():typeof window<"u"?window.location.reload():console.warn("[HMR] Root or manually mounted instance modified. Full reload required.")}gr(()=>{for(const r of s)hs.delete(tr(r.type))})}function vc(e,t){ue(e,t);for(const n in e)n!=="__file"&&!(n in t)&&delete e[n]}function yo(e){return(t,n)=>{try{return e(t,n)}catch(s){console.error(s),console.warn("[HMR] Something went wrong during Vue component hot-reload. Full reload required.")}}}let kt,Js=[],zo=!1;function Nr(e,...t){kt?kt.emit(e,...t):zo||Js.push({event:e,args:t})}function ra(e,t){var n,s;kt=e,kt?(kt.enabled=!0,Js.forEach(({event:r,args:i})=>kt.emit(r,...i)),Js=[]):typeof window<"u"&&window.HTMLElement&&!((s=(n=window.navigator)==null?void 0:n.userAgent)!=null&&s.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(i=>{ra(i,t)}),setTimeout(()=>{kt||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,zo=!0,Js=[])},3e3)):(zo=!0,Js=[])}function Eg(e,t){Nr("app:init",e,t,{Fragment:Be,Text:On,Comment:Le,Static:An})}function Tg(e){Nr("app:unmount",e)}const Go=ia("component:added"),Vf=ia("component:updated"),Cg=ia("component:removed"),xg=e=>{kt&&typeof kt.cleanupBuffer=="function"&&!kt.cleanupBuffer(e)&&Cg(e)};function ia(e){return t=>{Nr(e,t.appContext.app,t.uid,t.parent?t.parent.uid:void 0,t)}}const Ag=jf("perf:start"),Og=jf("perf:end");function jf(e){return(t,n,s)=>{Nr(e,t.appContext.app,t.uid,t,n,s)}}function Rg(e,t,n){Nr("component:emit",e.appContext.app,e,t,n)}function Ng(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||ge;{const{emitsOptions:f,propsOptions:[c]}=e;if(f)if(!(t in f))(!c||!(Bt(t)in c))&&M(`Component emitted event "${t}" but it is neither declared in the emits option nor as an "${Bt(t)}" prop.`);else{const d=f[t];Q(d)&&(d(...n)||M(`Invalid event arguments: event validation failed for event "${t}".`))}}let r=n;const i=t.startsWith("update:"),o=i&&t.slice(7);if(o&&o in s){const f=`${o==="modelValue"?"model":o}Modifiers`,{number:c,trim:d}=s[f]||ge;d&&(r=n.map(p=>ne(p)?p.trim():p)),c&&(r=n.map(dr))}Rg(e,t,r);{const f=t.toLowerCase();f!==t&&s[Bt(f)]&&M(`Event "${f}" is emitted in component ${oo(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 "${et(t)}" instead of "${t}".`)}let l,a=s[l=Bt(t)]||s[l=Bt(Pe(t))];!a&&i&&(a=s[l=Bt(et(t))]),a&&At(a,e,6,r);const u=s[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,At(u,e,6,r)}}function Bf(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!Q(e)){const a=u=>{const f=Bf(u,t,!0);f&&(l=!0,ue(o,f))};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!i&&!l?(me(e)&&s.set(e,null),null):(K(i)?i.forEach(a=>o[a]=null):ue(o,i),me(e)&&s.set(e,o),o)}function Xi(e,t){return!e||!In(t)?!1:(t=t.slice(2).replace(/Once$/,""),pe(e,t[0].toLowerCase()+t.slice(1))||pe(e,et(t))||pe(e,t))}let ke=null,Qi=null;function Si(e){const t=ke;return ke=e,Qi=e&&e.type.__scopeId||null,t}function kg(e){Qi=e}function Pg(){Qi=null}const Ig=e=>oa;function oa(e,t=ke,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&sl(-1);const i=Si(t);let o;try{o=e(...r)}finally{Si(i),s._d&&sl(1)}return Vf(t),o};return s._n=!0,s._c=!0,s._d=!0,s}let Yo=!1;function Ei(){Yo=!0}function vo(e){const{type:t,vnode:n,proxy:s,withProxy:r,props:i,propsOptions:[o],slots:l,attrs:a,emit:u,render:f,renderCache:c,data:d,setupState:p,ctx:g,inheritAttrs:E}=e;let S,y;const v=Si(e);Yo=!1;try{if(n.shapeFlag&4){const b=r||s,T=p.__isScriptSetup?new Proxy(b,{get(O,C,A){return M(`Property '${String(C)}' was accessed via 'this'. Avoid using 'this' in templates.`),Reflect.get(O,C,A)}}):b;S=vt(f.call(T,b,c,i,p,d,g)),y=a}else{const b=t;a===i&&Ei(),S=vt(b.length>1?b(i,{get attrs(){return Ei(),a},slots:l,emit:u}):b(i,null)),y=t.props?a:Mg(a)}}catch(b){sr.length=0,Fn(b,e,1),S=Oe(Le)}let h=S,w;if(S.patchFlag>0&&S.patchFlag&2048&&([h,w]=Hf(S)),y&&E!==!1){const b=Object.keys(y),{shapeFlag:T}=h;if(b.length){if(T&7)o&&b.some(yi)&&(y=$g(y,o)),h=Ot(h,y);else if(!Yo&&h.type!==Le){const O=Object.keys(a),C=[],A=[];for(let x=0,k=O.length;x renders non-element root node that cannot be animated."),h.transition=n.transition),w?w(h):S=h,Si(v),S}const Hf=e=>{const t=e.children,n=e.dynamicChildren,s=Zi(t,!1);if(s){if(s.patchFlag>0&&s.patchFlag&2048)return Hf(s)}else return[e,void 0];const r=t.indexOf(s),i=n?n.indexOf(s):-1,o=l=>{t[r]=l,n&&(i>-1?n[i]=l:l.patchFlag>0&&(e.dynamicChildren=[...n,l]))};return[vt(s),o]};function Zi(e,t=!0){let n;for(let s=0;s0&&n.patchFlag&2048)return Zi(n.children)}}else return}return n}const Mg=e=>{let t;for(const n in e)(n==="class"||n==="style"||In(n))&&((t||(t={}))[n]=e[n]);return t},$g=(e,t)=>{const n={};for(const s in e)(!yi(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n},bc=e=>e.shapeFlag&7||e.type===Le;function Fg(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:a}=t,u=i.emitsOptions;if((r||l)&&xn||t.dirs||t.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return s?_c(s,o,u):!!o;if(a&8){const f=t.dynamicProps;for(let c=0;ce.__isSuspense;let Jo=0;const jg={name:"Suspense",__isSuspense:!0,process(e,t,n,s,r,i,o,l,a,u){if(e==null)Hg(t,n,s,r,i,o,l,a,u);else{if(i&&i.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}Ug(e,t,n,s,r,o,l,a,u)}},hydrate:Kg,create:ua,normalize:qg},Bg=jg;function vr(e,t){const n=e.props&&e.props[t];Q(n)&&n()}function Hg(e,t,n,s,r,i,o,l,a){const{p:u,o:{createElement:f}}=a,c=f("div"),d=e.suspense=ua(e,r,s,t,c,n,i,o,l,a);u(null,d.pendingBranch=e.ssContent,c,null,s,d,i,o),d.deps>0?(vr(e,"onPending"),vr(e,"onFallback"),u(null,e.ssFallback,t,n,s,null,i,o),bs(d,e.ssFallback)):d.resolve(!1,!0)}function Ug(e,t,n,s,r,i,o,l,{p:a,um:u,o:{createElement:f}}){const c=t.suspense=e.suspense;c.vnode=t,t.el=e.el;const d=t.ssContent,p=t.ssFallback,{activeBranch:g,pendingBranch:E,isInFallback:S,isHydrating:y}=c;if(E)c.pendingBranch=d,Pt(d,E)?(a(E,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():S&&(y||(a(g,p,n,s,r,null,i,o,l),bs(c,p)))):(c.pendingId=Jo++,y?(c.isHydrating=!1,c.activeBranch=E):u(E,r,c),c.deps=0,c.effects.length=0,c.hiddenContainer=f("div"),S?(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():(a(g,p,n,s,r,null,i,o,l),bs(c,p))):g&&Pt(d,g)?(a(g,d,n,s,r,c,i,o,l),c.resolve(!0)):(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0&&c.resolve()));else if(g&&Pt(d,g))a(g,d,n,s,r,c,i,o,l),bs(c,d);else if(vr(t,"onPending"),c.pendingBranch=d,d.shapeFlag&512?c.pendingId=d.component.suspenseId:c.pendingId=Jo++,a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0)c.resolve();else{const{timeout:v,pendingId:h}=c;v>0?setTimeout(()=>{c.pendingId===h&&c.fallback(p)},v):v===0&&c.fallback(p)}}let Sc=!1;function ua(e,t,n,s,r,i,o,l,a,u,f=!1){Sc||(Sc=!0,console[console.info?"info":"log"](" is an experimental feature and its API will likely change."));const{p:c,m:d,um:p,n:g,o:{parentNode:E,remove:S}}=u;let y;const v=Wg(e);v&&t!=null&&t.pendingBranch&&(y=t.pendingId,t.deps++);const h=e.props?bi(e.props.timeout):void 0;ta(h,"Suspense timeout");const w=i,b={vnode:e,parent:t,parentComponent:n,namespace:o,container:s,hiddenContainer:r,deps:0,pendingId:Jo++,timeout:typeof h=="number"?h:-1,activeBranch:null,pendingBranch:null,isInFallback:!f,isHydrating:f,isUnmounted:!1,effects:[],resolve(T=!1,O=!1){{if(!T&&!b.pendingBranch)throw new Error("suspense.resolve() is called without a pending branch.");if(b.isUnmounted)throw new Error("suspense.resolve() is called on an already unmounted suspense boundary.")}const{vnode:C,activeBranch:A,pendingBranch:x,pendingId:k,effects:R,parentComponent:V,container:Y}=b;let ee=!1;b.isHydrating?b.isHydrating=!1:T||(ee=A&&x.transition&&x.transition.mode==="out-in",ee&&(A.transition.afterLeave=()=>{k===b.pendingId&&(d(x,Y,i===w?g(A):i,0),gr(R))}),A&&(E(A.el)!==b.hiddenContainer&&(i=g(A)),p(A,V,b,!0)),ee||d(x,Y,i,0)),bs(b,x),b.pendingBranch=null,b.isInFallback=!1;let B=b.parent,G=!1;for(;B;){if(B.pendingBranch){B.effects.push(...R),G=!0;break}B=B.parent}!G&&!ee&&gr(R),b.effects=[],v&&t&&t.pendingBranch&&y===t.pendingId&&(t.deps--,t.deps===0&&!O&&t.resolve()),vr(C,"onResolve")},fallback(T){if(!b.pendingBranch)return;const{vnode:O,activeBranch:C,parentComponent:A,container:x,namespace:k}=b;vr(O,"onFallback");const R=g(C),V=()=>{b.isInFallback&&(c(null,T,x,R,A,null,k,l,a),bs(b,T))},Y=T.transition&&T.transition.mode==="out-in";Y&&(C.transition.afterLeave=V),b.isInFallback=!0,p(C,A,null,!0),Y||V()},move(T,O,C){b.activeBranch&&d(b.activeBranch,T,O,C),b.container=T},next(){return b.activeBranch&&g(b.activeBranch)},registerDep(T,O){const C=!!b.pendingBranch;C&&b.deps++;const A=T.vnode.el;T.asyncDep.catch(x=>{Fn(x,T,0)}).then(x=>{if(T.isUnmounted||b.isUnmounted||b.pendingId!==T.suspenseId)return;T.asyncResolved=!0;const{vnode:k}=T;Zs(k),al(T,x,!1),A&&(k.el=A);const R=!A&&T.subTree.el;O(T,k,E(A||T.subTree.el),A?null:g(T.subTree),b,o,a),R&&S(R),la(T,k.el),er(),C&&--b.deps===0&&b.resolve()})},unmount(T,O){b.isUnmounted=!0,b.activeBranch&&p(b.activeBranch,n,T,O),b.pendingBranch&&p(b.pendingBranch,n,T,O)}};return b}function Kg(e,t,n,s,r,i,o,l,a){const u=t.suspense=ua(t,s,n,e.parentNode,document.createElement("div"),null,r,i,o,l,!0),f=a(e,u.pendingBranch=t.ssContent,n,u,i,o);return u.deps===0&&u.resolve(!1,!0),f}function qg(e){const{shapeFlag:t,children:n}=e,s=t&32;e.ssContent=Ec(s?n.default:n),e.ssFallback=s?Ec(n.fallback):Oe(Le)}function Ec(e){let t;if(Q(e)){const n=os&&e._c;n&&(e._d=!1,so()),e=e(),n&&(e._d=!0,t=pt,Cd())}if(K(e)){const n=Zi(e);!n&&e.filter(s=>s!==aa).length>0&&M(" slots expect a single root node."),e=n}return e=vt(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function qf(e,t){t&&t.pendingBranch?K(e)?t.effects.push(...e):t.effects.push(e):gr(e)}function bs(e,t){e.activeBranch=t;const{vnode:n,parentComponent:s}=e;let r=t.el;for(;!r&&t.component;)t=t.component.subTree,r=t.el;n.el=r,s&&s.subTree===n&&(s.vnode.el=r,la(s,r))}function Wg(e){var t;return((t=e.props)==null?void 0:t.suspensible)!=null&&e.props.suspensible!==!1}const Wf=Symbol.for("v-scx"),zg=()=>{{const e=Ct(Wf);return e||M("Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build."),e}};function fa(e,t){return kr(e,null,t)}function zf(e,t){return kr(e,null,ue({},t,{flush:"post"}))}function Gf(e,t){return kr(e,null,ue({},t,{flush:"sync"}))}const Gr={};function ve(e,t,n){return Q(t)||M("`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."),kr(e,t,n)}function kr(e,t,{immediate:n,deep:s,flush:r,once:i,onTrack:o,onTrigger:l}=ge){if(t&&i){const T=t;t=(...O)=>{T(...O),b()}}s!==void 0&&typeof s=="number"&&M('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&&M('watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.'),s!==void 0&&M('watch() "deep" option is only respected when using the watch(source, callback, options?) signature.'),i!==void 0&&M('watch() "once" option is only respected when using the watch(source, callback, options?) signature.'));const a=T=>{M("Invalid watch source: ",T,"A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.")},u=Fe,f=T=>s===!0?T:qn(T,s===!1?1:void 0);let c,d=!1,p=!1;if(Ee(e)?(c=()=>e.value,d=Cn(e)):Tn(e)?(c=()=>f(e),d=!0):K(e)?(p=!0,d=e.some(T=>Tn(T)||Cn(T)),c=()=>e.map(T=>{if(Ee(T))return T.value;if(Tn(T))return f(T);if(Q(T))return qt(T,u,2);a(T)})):Q(e)?t?c=()=>qt(e,u,2):c=()=>(g&&g(),At(e,u,3,[E])):(c=Ve,a(e)),t&&s){const T=c;c=()=>qn(T())}let g,E=T=>{g=h.onStop=()=>{qt(T,u,4),g=h.onStop=void 0}},S=p?new Array(e.length).fill(Gr):Gr;const y=()=>{if(!(!h.active||!h.dirty))if(t){const T=h.run();(s||d||(p?T.some((O,C)=>Ft(O,S[C])):Ft(T,S)))&&(g&&g(),At(t,u,3,[T,S===Gr?void 0:p&&S[0]===Gr?[]:S,E]),S=T)}else h.run()};y.allowRecurse=!!t;let v;r==="sync"?v=y:r==="post"?v=()=>Ge(y,u&&u.suspense):(y.pre=!0,u&&(y.id=u.uid),v=()=>Rr(y));const h=new Cs(c,Ve,v),w=Wl(),b=()=>{h.stop(),w&&jl(w.effects,h)};return h.onTrack=o,h.onTrigger=l,t?n?y():S=h.run():r==="post"?Ge(h.run.bind(h),u&&u.suspense):h.run(),b}function Gg(e,t,n){const s=this.proxy,r=ne(e)?e.includes(".")?Yf(s,e):()=>s[e]:e.bind(s,s);let i;Q(t)?i=t:(i=t.handler,n=t);const o=ls(this),l=kr(r,i.bind(s),n);return o(),l}function Yf(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r0){if(n>=t)return e;n++}if(s=s||new Set,s.has(e))return e;if(s.add(e),Ee(e))qn(e.value,t,n,s);else if(K(e))for(let r=0;r{qn(r,t,n,s)});else if(sf(e))for(const r in e)qn(e[r],t,n,s);return e}function Jf(e){rf(e)&&M("Do not use built-in directive ids as custom directive id: "+e)}function Yg(e,t){if(ke===null)return M("withDirectives can only be used inside render functions."),e;const n=io(ke)||ke.proxy,s=e.dirs||(e.dirs=[]);for(let r=0;r{e.isMounted=!0}),no(()=>{e.isUnmounting=!0}),e}const wt=[Function,Array],pa={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:wt,onEnter:wt,onAfterEnter:wt,onEnterCancelled:wt,onBeforeLeave:wt,onLeave:wt,onAfterLeave:wt,onLeaveCancelled:wt,onBeforeAppear:wt,onAppear:wt,onAfterAppear:wt,onAppearCancelled:wt},Jg={name:"BaseTransition",props:pa,setup(e,{slots:t}){const n=Je(),s=da();return()=>{const r=t.default&&eo(t.default(),!0);if(!r||!r.length)return;let i=r[0];if(r.length>1){let d=!1;for(const p of r)if(p.type!==Le){if(d){M(" can only be used on a single element or component. Use for lists.");break}i=p,d=!0}}const o=se(e),{mode:l}=o;if(l&&l!=="in-out"&&l!=="out-in"&&l!=="default"&&M(`invalid mode: ${l}`),s.isLeaving)return bo(i);const a=Tc(i);if(!a)return bo(i);const u=xs(a,o,s,n);is(a,u);const f=n.subTree,c=f&&Tc(f);if(c&&c.type!==Le&&!Pt(a,c)){const d=xs(c,o,s,n);if(is(c,d),l==="out-in")return s.isLeaving=!0,d.afterLeave=()=>{s.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},bo(i);l==="in-out"&&a.type!==Le&&(d.delayLeave=(p,g,E)=>{const S=Qf(s,c);S[String(c.key)]=c,p[hn]=()=>{g(),p[hn]=void 0,delete u.delayedLeave},u.delayedLeave=E})}return i}}},Xf=Jg;function Qf(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function xs(e,t,n,s){const{appear:r,mode:i,persisted:o=!1,onBeforeEnter:l,onEnter:a,onAfterEnter:u,onEnterCancelled:f,onBeforeLeave:c,onLeave:d,onAfterLeave:p,onLeaveCancelled:g,onBeforeAppear:E,onAppear:S,onAfterAppear:y,onAppearCancelled:v}=t,h=String(e.key),w=Qf(n,e),b=(C,A)=>{C&&At(C,s,9,A)},T=(C,A)=>{const x=A[1];b(C,A),K(C)?C.every(k=>k.length<=1)&&x():C.length<=1&&x()},O={mode:i,persisted:o,beforeEnter(C){let A=l;if(!n.isMounted)if(r)A=E||l;else return;C[hn]&&C[hn](!0);const x=w[h];x&&Pt(e,x)&&x.el[hn]&&x.el[hn](),b(A,[C])},enter(C){let A=a,x=u,k=f;if(!n.isMounted)if(r)A=S||a,x=y||u,k=v||f;else return;let R=!1;const V=C[Yr]=Y=>{R||(R=!0,Y?b(k,[C]):b(x,[C]),O.delayedLeave&&O.delayedLeave(),C[Yr]=void 0)};A?T(A,[C,V]):V()},leave(C,A){const x=String(e.key);if(C[Yr]&&C[Yr](!0),n.isUnmounting)return A();b(c,[C]);let k=!1;const R=C[hn]=V=>{k||(k=!0,A(),V?b(g,[C]):b(p,[C]),C[hn]=void 0,w[x]===e&&delete w[x])};w[x]=e,d?T(d,[C,R]):R()},clone(C){return xs(C,t,n,s)}};return O}function bo(e){if(Bs(e))return e=Ot(e),e.children=null,e}function Tc(e){return Bs(e)?e.component?e.component.subTree:e.children?e.children[0]:void 0:e}function is(e,t){e.shapeFlag&6&&e.component?is(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 eo(e,t=!1,n){let s=[],r=0;for(let i=0;i1)for(let i=0;i!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function Xg(e){Q(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:r=200,timeout:i,suspensible:o=!0,onError:l}=e;let a=null,u,f=0;const c=()=>(f++,a=null,d()),d=()=>{let p;return a||(p=a=t().catch(g=>{if(g=g instanceof Error?g:new Error(String(g)),l)return new Promise((E,S)=>{l(g,()=>E(c()),()=>S(g),f+1)});throw g}).then(g=>{if(p!==a&&a)return a;if(g||M("Async component loader resolved to undefined. If you are using retry(), make sure to return its return value."),g&&(g.__esModule||g[Symbol.toStringTag]==="Module")&&(g=g.default),g&&!me(g)&&!Q(g))throw new Error(`Invalid async component load result: ${g}`);return u=g,g}))};return js({name:"AsyncComponentWrapper",__asyncLoader:d,get __asyncResolved(){return u},setup(){const p=Fe;if(u)return()=>_o(u,p);const g=v=>{a=null,Fn(v,p,13,!s)};if(o&&p.suspense)return d().then(v=>()=>_o(v,p)).catch(v=>(g(v),()=>s?Oe(s,{error:v}):null));const E=Z(!1),S=Z(),y=Z(!!r);return r&&setTimeout(()=>{y.value=!1},r),i!=null&&setTimeout(()=>{if(!E.value&&!S.value){const v=new Error(`Async component timed out after ${i}ms.`);g(v),S.value=v}},i),d().then(()=>{E.value=!0,p.parent&&Bs(p.parent.vnode)&&(p.parent.effect.dirty=!0,Rr(p.parent.update))}).catch(v=>{g(v),S.value=v}),()=>{if(E.value&&u)return _o(u,p);if(S.value&&s)return Oe(s,{error:S.value});if(n&&!y.value)return Oe(n)}}})}function _o(e,t){const{ref:n,props:s,children:r,ce:i}=t.vnode,o=Oe(e,s,r);return o.ref=n,o.ce=i,delete t.vnode.ce,o}const Bs=e=>e.type.__isKeepAlive,Qg={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Je(),s=n.ctx,r=new Map,i=new Set;let o=null;n.__v_cache=r;const l=n.suspense,{renderer:{p:a,m:u,um:f,o:{createElement:c}}}=s,d=c("div");s.activate=(v,h,w,b,T)=>{const O=v.component;u(v,h,w,0,l),a(O.vnode,v,h,w,O,l,b,v.slotScopeIds,T),Ge(()=>{O.isDeactivated=!1,O.a&&bn(O.a);const C=v.props&&v.props.onVnodeMounted;C&&ut(C,O.parent,v)},l),Go(O)},s.deactivate=v=>{const h=v.component;u(v,d,null,1,l),Ge(()=>{h.da&&bn(h.da);const w=v.props&&v.props.onVnodeUnmounted;w&&ut(w,h.parent,v),h.isDeactivated=!0},l),Go(h)};function p(v){wo(v),f(v,n,l,!0)}function g(v){r.forEach((h,w)=>{const b=_r(h.type);b&&(!v||!v(b))&&E(w)})}function E(v){const h=r.get(v);!o||!Pt(h,o)?p(h):o&&wo(o),r.delete(v),i.delete(v)}ve(()=>[e.include,e.exclude],([v,h])=>{v&&g(w=>Xs(v,w)),h&&g(w=>!Xs(h,w))},{flush:"post",deep:!0});let S=null;const y=()=>{S!=null&&r.set(S,So(n.subTree))};return cs(y),Pr(y),no(()=>{r.forEach(v=>{const{subTree:h,suspense:w}=n,b=So(h);if(v.type===b.type&&v.key===b.key){wo(b);const T=b.component.da;T&&Ge(T,w);return}p(v)})}),()=>{if(S=null,!t.default)return null;const v=t.default(),h=v[0];if(v.length>1)return M("KeepAlive should contain exactly one component child."),o=null,v;if(!Rn(h)||!(h.shapeFlag&4)&&!(h.shapeFlag&128))return o=null,h;let w=So(h);const b=w.type,T=_r(es(w)?w.type.__asyncResolved||{}:b),{include:O,exclude:C,max:A}=e;if(O&&(!T||!Xs(O,T))||C&&T&&Xs(C,T))return o=w,h;const x=w.key==null?b:w.key,k=r.get(x);return w.el&&(w=Ot(w),h.shapeFlag&128&&(h.ssContent=w)),S=x,k?(w.el=k.el,w.component=k.component,w.transition&&is(w,w.transition),w.shapeFlag|=512,i.delete(x),i.add(x)):(i.add(x),A&&i.size>parseInt(A,10)&&E(i.values().next().value)),w.shapeFlag|=256,o=w,Kf(h.type)?h:w}}},Zg=Qg;function Xs(e,t){return K(e)?e.some(n=>Xs(n,t)):ne(e)?e.split(",").includes(t):om(e)?e.test(t):!1}function Zf(e,t){td(e,"a",t)}function ed(e,t){td(e,"da",t)}function td(e,t,n=Fe){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(to(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Bs(r.parent.vnode)&&ey(s,t,n,r),r=r.parent}}function ey(e,t,n,s){const r=to(t,e,s,!0);Ir(()=>{jl(s[t],r)},n)}function wo(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function So(e){return e.shapeFlag&128?e.ssContent:e}function to(e,t,n=Fe,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;Mn();const l=ls(n),a=At(t,n,e,o);return l(),$n(),a});return s?r.unshift(i):r.push(i),i}else{const r=Bt(Ji[e].replace(/ hook$/,""));M(`${r} 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 on=e=>(t,n=Fe)=>(!wa||e==="sp")&&to(e,(...s)=>t(...s),n),nd=on("bm"),cs=on("m"),sd=on("bu"),Pr=on("u"),no=on("bum"),Ir=on("um"),rd=on("sp"),id=on("rtg"),od=on("rtc");function ld(e,t=Fe){to("ec",e,t)}function ty(e,t,n,s){let r;const i=n&&n[s];if(K(e)||ne(e)){r=new Array(e.length);for(let o=0,l=e.length;ot(o,l,void 0,i&&i[l]));else{const o=Object.keys(e);r=new Array(o.length);for(let l=0,a=o.length;l{const i=s.fn(...r);return i&&(i.key=s.key),i}:s.fn)}return e}function sy(e,t,n={},s,r){if(ke.isCE||ke.parent&&es(ke.parent)&&ke.parent.isCE)return t!=="default"&&(n.name=t),Oe("slot",n,s&&s());let i=e[t];i&&i.length>1&&(M("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."),i=()=>[]),i&&i._c&&(i._d=!1),so();const o=i&&ad(i(n)),l=ya(Be,{key:n.key||o&&o.key||`_${t}`},o||(s?s():[]),o&&e._===1?64:-2);return!r&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),i&&i._c&&(i._d=!0),l}function ad(e){return e.some(t=>Rn(t)?!(t.type===Le||t.type===Be&&!ad(t.children)):!0)?e:null}function ry(e,t){const n={};if(!me(e))return M("v-on with no argument expects an object value."),n;for(const s in e)n[t&&/[A-Z]/.test(s)?`on:${s}`:Bt(s)]=e[s];return n}const Xo=e=>e?kd(e)?io(e)||e.proxy:Xo(e.parent):null,ts=ue(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>Kn(e.props),$attrs:e=>Kn(e.attrs),$slots:e=>Kn(e.slots),$refs:e=>Kn(e.refs),$parent:e=>Xo(e.parent),$root:e=>Xo(e.root),$emit:e=>e.emit,$options:e=>ma(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Rr(e.update)}),$nextTick:e=>e.n||(e.n=Ln.bind(e.proxy)),$watch:e=>Gg.bind(e)}),ha=e=>e==="_"||e==="$",Eo=(e,t)=>e!==ge&&!e.__isScriptSetup&&pe(e,t),nr={get({_:e},t){const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:a}=e;if(t==="__isVue")return!0;let u;if(t[0]!=="$"){const p=o[t];if(p!==void 0)switch(p){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(Eo(s,t))return o[t]=1,s[t];if(r!==ge&&pe(r,t))return o[t]=2,r[t];if((u=e.propsOptions[0])&&pe(u,t))return o[t]=3,i[t];if(n!==ge&&pe(n,t))return o[t]=4,n[t];Qo&&(o[t]=0)}}const f=ts[t];let c,d;if(f)return t==="$attrs"?(rt(e,"get",t),Ei()):t==="$slots"&&rt(e,"get",t),f(e);if((c=l.__cssModules)&&(c=c[t]))return c;if(n!==ge&&pe(n,t))return o[t]=4,n[t];if(d=a.config.globalProperties,pe(d,t))return d[t];ke&&(!ne(t)||t.indexOf("__v")!==0)&&(r!==ge&&ha(t[0])&&pe(r,t)?M(`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===ke&&M(`Property ${JSON.stringify(t)} was accessed during render but is not defined on instance.`))},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return Eo(r,t)?(r[t]=n,!0):r.__isScriptSetup&&pe(r,t)?(M(`Cannot mutate - - - + + + - +
+
diff --git a/05-restful/404.html b/05-restful/404.html index 28bbc61..c8ed517 100644 --- a/05-restful/404.html +++ b/05-restful/404.html @@ -7,15 +7,15 @@ - - - - + + + - +
+
diff --git a/05-restful/assets/07-scene-BeuorM8v.js b/05-restful/assets/07-scene-BeuorM8v.js new file mode 100644 index 0000000..f4630b5 --- /dev/null +++ b/05-restful/assets/07-scene-BeuorM8v.js @@ -0,0 +1 @@ +const s="/sa2024/05-restful/assets/07-scene-sVSmSOLF.png";export{s as _}; diff --git a/05-restful/assets/2-D9a51Lhn.js b/05-restful/assets/2-D9a51Lhn.js new file mode 100644 index 0000000..a3f906b --- /dev/null +++ b/05-restful/assets/2-D9a51Lhn.js @@ -0,0 +1 @@ +import{o as r,c as a,k as t,q as i,s as n,A as e,e as s}from"./modules/vue-DbJrfnh0.js";import{I as c}from"./slidev/two-cols-Cv0bVzrx.js";import{_ as l,a7 as o}from"./index-D8V96I3B.js";import{p as _,u as p,f as m}from"./slidev/context-Dnko4ojF.js";import"./modules/shiki-nC3sHFQh.js";const u="/sa2024/05-restful/assets/07-petclinic-cs-BOEsrYmK.png",d="/sa2024/05-restful/assets/07-petclinic-C1GbFER0.png",f=s("h1",null,"回顾",-1),h=s("p",null,[s("br"),s("br")],-1),g=s("img",{src:u,class:"m-10 h-50"},null,-1),x=s("img",{src:d,class:"m-20 h-60"},null,-1),b=s("br",null,null,-1),k=s("div",{style:{"text-align":"right"}},"spring-petclinic/spring-framework-petclinic",-1),v={__name:"2",setup(B){return _(o),p(),(P,C)=>(r(),a(c,i(n(e(m)(e(o),1))),{right:t(w=>[x,b,k]),default:t(()=>[f,h,g]),_:1},16))}},j=l(v,[["__file","/@slidev/slides/2.md"]]);export{j as default}; diff --git a/05-restful/assets/20-ctKZXN7o.js b/05-restful/assets/20-ctKZXN7o.js new file mode 100644 index 0000000..4753146 --- /dev/null +++ b/05-restful/assets/20-ctKZXN7o.js @@ -0,0 +1 @@ +import{o as r,c as a,k as t,a6 as l,q as n,s as _,A as o,e as s}from"./modules/vue-DbJrfnh0.js";import{I as i}from"./slidev/two-cols-Cv0bVzrx.js";import{_ as c,as as e}from"./index-D8V96I3B.js";import{p,u as m,f as u}from"./slidev/context-Dnko4ojF.js";import"./modules/shiki-nC3sHFQh.js";const d="/sa2024/05-restful/assets/07-rep-json-ClbUNhlO.png",f="/sa2024/05-restful/assets/07-rep-xml-ClkifFKW.png",h=s("h1",null,"资源表述",-1),g=s("br",null,null,-1),b=s("img",{src:d,class:"m-5 h-80"},null,-1),x=s("p",null,[s("br"),s("br"),s("br")],-1),k=s("img",{src:f,class:"m-10 h-80"},null,-1),C={__name:"20",setup(P){return p(e),m(),(v,B)=>(r(),a(i,n(_(o(u)(o(e),19))),{right:t(N=>[x,k]),default:t(()=>[h,g,l(" 同一资源 http://api.github.com/orgs/github 的不同表述 "),b]),_:1},16))}},q=c(C,[["__file","/@slidev/slides/20.md"]]);export{q as default}; diff --git a/05-restful/assets/21-CSD9ftwu.js b/05-restful/assets/21-CSD9ftwu.js new file mode 100644 index 0000000..5b89454 --- /dev/null +++ b/05-restful/assets/21-CSD9ftwu.js @@ -0,0 +1 @@ +import{o as e,c as r,k as a,q as n,s as _,A as t,e as s}from"./modules/vue-DbJrfnh0.js";import{I as c}from"./slidev/default-DzK7tnt1.js";import{_ as l,at as o}from"./index-D8V96I3B.js";import{p as i,u as p,f as m}from"./slidev/context-Dnko4ojF.js";import"./modules/shiki-nC3sHFQh.js";const u="/sa2024/05-restful/assets/07-rep-notacc-DyXVbkS9.png",d=s("h1",null,"资源表述",-1),f=s("br",null,null,-1),h=s("p",null,"不支持的表述",-1),x=s("img",{src:u,class:"m-10 h-50"},null,-1),k={__name:"21",setup(g){return i(o),p(),(v,B)=>(e(),r(c,n(_(t(m)(t(o),20))),{default:a(()=>[d,f,h,x]),_:1},16))}},S=l(k,[["__file","/@slidev/slides/21.md"]]);export{S as default}; diff --git a/05-restful/assets/22-Bmlg3LlX.js b/05-restful/assets/22-Bmlg3LlX.js new file mode 100644 index 0000000..5e7ee05 --- /dev/null +++ b/05-restful/assets/22-Bmlg3LlX.js @@ -0,0 +1 @@ +import{o as r,c as a,k as t,q as l,s as n,A as o,e as s}from"./modules/vue-DbJrfnh0.js";import{I as i}from"./slidev/two-cols-Cv0bVzrx.js";import{_,au as e}from"./index-D8V96I3B.js";import{p as c,u as p,f as u}from"./slidev/context-Dnko4ojF.js";import"./modules/shiki-nC3sHFQh.js";const m="/sa2024/05-restful/assets/07-link-next-CtEPac4P.png",d=s("h1",null,"资源链接",-1),f=s("ul",null,[s("li",null,"当你浏览Web网页时,从一个连接跳到一个页面,再从另一个连接跳到另外一个页面,就是利用了超媒体的概念: 把一个个把资源链接起来"),s("li",null,"同样,我们在表述格式里边加入链接来引导客户端")],-1),h=s("p",null,"在Link头告诉客户端怎么访问下一页和最后一页的记录;在响应体里用url来链接项目所有者和项目地址",-1),x=s("p",null,[s("br"),s("br"),s("img",{src:m,class:"m-0 h-100"})],-1),P={__name:"22",setup(k){return c(e),p(),(g,b)=>(r(),a(i,l(n(o(u)(o(e),21))),{right:t(v=>[x]),default:t(()=>[d,f,h]),_:1},16))}},q=_(P,[["__file","/@slidev/slides/22.md"]]);export{q as default}; diff --git a/05-restful/assets/23-DcTrtdcw.js b/05-restful/assets/23-DcTrtdcw.js new file mode 100644 index 0000000..a185b04 --- /dev/null +++ b/05-restful/assets/23-DcTrtdcw.js @@ -0,0 +1 @@ +import{o,c as r,k as a,q as n,s as _,A as t,e as s}from"./modules/vue-DbJrfnh0.js";import{I as l}from"./slidev/default-DzK7tnt1.js";import{_ as c,av as e}from"./index-D8V96I3B.js";import{p as i,u as m,f as p}from"./slidev/context-Dnko4ojF.js";import"./modules/shiki-nC3sHFQh.js";const u="/sa2024/05-restful/assets/07-link-payment-e0MB_Ndz.png",d=s("h1",null,"资源链接",-1),f=s("br",null,null,-1),h=s("p",null,"创建订单后通过链接引导客户端如何去付款",-1),x=s("img",{src:u,class:"m-10 h-60"},null,-1),k={__name:"23",setup(v){return i(e),m(),(B,g)=>(o(),r(l,n(_(t(p)(t(e),22))),{default:a(()=>[d,f,h,x]),_:1},16))}},N=c(k,[["__file","/@slidev/slides/23.md"]]);export{N as default}; diff --git a/05-restful/assets/3-CyDAncdi.js b/05-restful/assets/3-CyDAncdi.js new file mode 100644 index 0000000..1ac257b --- /dev/null +++ b/05-restful/assets/3-CyDAncdi.js @@ -0,0 +1,23 @@ +import{_ as l}from"./slidev/CodeBlockWrapper-DMDl5zEN.js";import{o as e,c as n,k as h,l as r,m as p,q as d,s as g,A as k,e as i,a6 as s}from"./modules/vue-DbJrfnh0.js";import{I as y}from"./slidev/two-cols-Cv0bVzrx.js";import{_ as D,a8 as a}from"./index-D8V96I3B.js";import{p as B,u as A,f as o}from"./slidev/context-Dnko4ojF.js";import"./modules/unplugin-icons-CMs28sA9.js";import"./modules/shiki-nC3sHFQh.js";const c="/sa2024/05-restful/assets/07-manong-BM1NENVW.png",C=i("h1",null,"问题一",-1),m=i("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[i("code",{class:"language-html"},[i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),i("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"petclinic:layout"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," pageName"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"owners"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"h2"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"c:if"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," test"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"${owner['new']}"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),i("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"New "),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},""),i("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," Owner")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"form:form"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," modelAttribute"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"owner"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"form-horizontal"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," id"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"add-owner-form"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"div"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"form-group has-feedback"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"petclinic:inputField"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," label"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"First Name"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," name"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"firstName"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"/>")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"petclinic:inputField"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," label"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"Last Name"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," name"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"lastName"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"/>")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"div"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"form-group"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"div"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"col-sm-offset-2 col-sm-10"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"c:choose"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"c:when"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," test"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"${owner['new']}"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"button"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"btn btn-primary"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," type"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"submit"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),i("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Add Owner"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"c:otherwise"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"button"),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"btn btn-primary"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," type"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"submit"),i("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),i("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Update Owner"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")])])],-1),f=i("p",null,[i("br"),i("br"),i("img",{src:c,class:"m-10 h-70"})],-1),E=i("div",{style:{"text-align":"center"}},"展示层页面与计算逻辑混杂",-1),_={__name:"3",setup(u){return B(a),A(),(F,b)=>{const t=l;return e(),n(y,d(g(k(o)(k(a),2))),{right:h(w=>[f,E]),default:h(()=>[C,r(t,p({},{ranges:[]}),{default:h(()=>[m]),_:1},16)]),_:1},16)}}},I=D(_,[["__file","/@slidev/slides/3.md"]]);export{I as default}; diff --git a/05-restful/assets/5-CH645g5i.js b/05-restful/assets/5-CH645g5i.js new file mode 100644 index 0000000..4c9280a --- /dev/null +++ b/05-restful/assets/5-CH645g5i.js @@ -0,0 +1 @@ +import{o,c as i,k as r,q as a,s as c,A as s,e as t}from"./modules/vue-DbJrfnh0.js";import{I as n}from"./slidev/default-DzK7tnt1.js";import{_ as l,ad as e}from"./index-D8V96I3B.js";import{p,u as _,f as m}from"./slidev/context-Dnko4ojF.js";import"./modules/shiki-nC3sHFQh.js";const d="/sa2024/05-restful/assets/07-petclinic-rest-BYsc00ZI.png",f=t("h1",null,"RESTful Petclinic",-1),u=t("div",{style:{"text-align":"left"}},"https://github.com/spring-petclinic/spring-petclinic-rest",-1),h=t("img",{src:d,class:"m-10 h-70"},null,-1),g=t("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1p5411S7Am 6:04",-1),x={__name:"5",setup(v){return p(e),_(),(B,w)=>(o(),i(n,a(c(s(m)(s(e),4))),{default:r(()=>[f,u,h,g]),_:1},16))}},S=l(x,[["__file","/@slidev/slides/5.md"]]);export{S as default}; diff --git a/05-restful/assets/6-BYxK3Wv6.js b/05-restful/assets/6-BYxK3Wv6.js new file mode 100644 index 0000000..d9a246a --- /dev/null +++ b/05-restful/assets/6-BYxK3Wv6.js @@ -0,0 +1 @@ +import{o as r,c as a,k as s,q as i,s as n,A as e,e as t}from"./modules/vue-DbJrfnh0.js";import{I as l}from"./slidev/two-cols-Cv0bVzrx.js";import{_,ae as o}from"./index-D8V96I3B.js";import{p as c,u as p,f as d}from"./slidev/context-Dnko4ojF.js";import"./modules/shiki-nC3sHFQh.js";const u="/sa2024/05-restful/assets/07-roy-fielding-BBuYwNli.png",m=t("h1",null,"REST架构风格",-1),h=t("br",null,null,-1),f=t("p",null,"Architectural Styles and the Design of Network-based Software Architectures",-1),g=t("div",{style:{"text-align":"right"}},"- Roy Thomas Fielding, 2000",-1),x=t("br",null,null,-1),y=t("p",null,"Roy Thomas Fielding: HTTP协议(1.0版和1.1版)的主要设计者、Apache服务器软件的作者之一、Apache基金会的第一任主席",-1),T=t("p",null,[t("br"),t("br"),t("img",{src:u,class:"m-10 h-80"})],-1),b={__name:"6",setup(A){return c(o),p(),(B,P)=>(r(),a(l,i(n(e(d)(e(o),5))),{right:s(k=>[T]),default:s(()=>[m,h,f,g,x,y]),_:1},16))}},N=_(b,[["__file","/@slidev/slides/6.md"]]);export{N as default}; diff --git a/05-restful/assets/ClicksSlider-qq1Ub2AL.css b/05-restful/assets/ClicksSlider-qq1Ub2AL.css new file mode 100644 index 0000000..ded5c92 --- /dev/null +++ b/05-restful/assets/ClicksSlider-qq1Ub2AL.css @@ -0,0 +1 @@ +.range[data-v-e916140b]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}.range[data-v-e916140b]::-webkit-slider-thumb{-webkit-appearance:none;height:100%;width:var(--thumb-width, .5rem)}.range[data-v-e916140b]::-moz-range-thumb{height:100%;width:var(--thumb-width, .5rem)} diff --git a/05-restful/assets/ContextMenu-DSnskk1a.css b/05-restful/assets/ContextMenu-DSnskk1a.css new file mode 100644 index 0000000..b193adb --- /dev/null +++ b/05-restful/assets/ContextMenu-DSnskk1a.css @@ -0,0 +1 @@ +.select-list[data-v-9e4a80e3]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-9e4a80e3]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-9e4a80e3]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-9e4a80e3]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-9e4a80e3]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}.autocomplete-list[data-v-a9c46306]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-a9c46306]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-a9c46306]{cursor:pointer}#slideshow[data-v-63954aac]{height:100%} diff --git a/05-restful/assets/DrawingControls-BO6lw4N5.css b/05-restful/assets/DrawingControls-BO6lw4N5.css deleted file mode 100644 index beec79d..0000000 --- a/05-restful/assets/DrawingControls-BO6lw4N5.css +++ /dev/null @@ -1 +0,0 @@ -.resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper__popper{z-index:10000;top:0;left:0;outline:none}.v-popper__popper.v-popper__popper--hidden{visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s;pointer-events:none}.v-popper__popper.v-popper__popper--shown{visibility:visible;opacity:1;transition:opacity .15s}.v-popper__popper.v-popper__popper--skip-transition,.v-popper__popper.v-popper__popper--skip-transition>.v-popper__wrapper{transition:none!important}.v-popper__backdrop{position:absolute;top:0;left:0;width:100%;height:100%;display:none}.v-popper__inner{position:relative;box-sizing:border-box;overflow-y:auto}.v-popper__inner>div{position:relative;z-index:1;max-width:inherit;max-height:inherit}.v-popper__arrow-container{position:absolute;width:10px;height:10px}.v-popper__popper--arrow-overflow .v-popper__arrow-container,.v-popper__popper--no-positioning .v-popper__arrow-container{display:none}.v-popper__arrow-inner,.v-popper__arrow-outer{border-style:solid;position:absolute;top:0;left:0;width:0;height:0}.v-popper__arrow-inner{visibility:hidden;border-width:7px}.v-popper__arrow-outer{border-width:6px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{left:-2px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{left:-1px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer{border-bottom-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:0}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{border-top-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{top:-4px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{top:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{top:-1px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{border-left-width:0;border-left-color:transparent!important;border-top-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{left:-4px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{left:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer{border-right-width:0;border-top-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner{left:-2px}.v-popper--theme-tooltip .v-popper__inner{background:#000c;color:#fff;border-radius:6px;padding:7px 12px 6px}.v-popper--theme-tooltip .v-popper__arrow-outer{border-color:#000c}.v-popper--theme-dropdown .v-popper__inner{background:#fff;color:#000;border-radius:6px;border:1px solid #ddd;box-shadow:0 6px 30px #0000001a}.v-popper--theme-dropdown .v-popper__arrow-inner{visibility:visible;border-color:#fff}.v-popper--theme-dropdown .v-popper__arrow-outer{border-color:#ddd}.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/05-restful/assets/DrawingControls-C5T1oZL5.css b/05-restful/assets/DrawingControls-C5T1oZL5.css new file mode 100644 index 0000000..bf95bff --- /dev/null +++ b/05-restful/assets/DrawingControls-C5T1oZL5.css @@ -0,0 +1 @@ +.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/05-restful/assets/DrawingPreview-DJ7dOR_1.css b/05-restful/assets/DrawingPreview-DJ7dOR_1.css new file mode 100644 index 0000000..d8ce4e2 --- /dev/null +++ b/05-restful/assets/DrawingPreview-DJ7dOR_1.css @@ -0,0 +1 @@ +#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.disable-view-transition[data-v-1e2c950d] *{view-transition-name:none!important}.slidev-page[data-v-1e2c950d]{position:absolute;width:100%;height:100%} diff --git a/05-restful/assets/SlidesShow-Do3DTZt5.css b/05-restful/assets/SlidesShow-Do3DTZt5.css deleted file mode 100644 index 4ca12c5..0000000 --- a/05-restful/assets/SlidesShow-Do3DTZt5.css +++ /dev/null @@ -1 +0,0 @@ -#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete-list[data-v-9ed224f5]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-9ed224f5]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-9ed224f5]{cursor:pointer}.select-list[data-v-38e64e7e]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-38e64e7e]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-38e64e7e]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-38e64e7e]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-38e64e7e]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}#slideshow[data-v-2fe83b23]{height:100%}#slideshow>div[data-v-2fe83b23]{position:absolute;height:100%;width:100%} diff --git a/05-restful/assets/index-CTBKgxrZ.js b/05-restful/assets/index-CTBKgxrZ.js deleted file mode 100644 index 590fb3d..0000000 --- a/05-restful/assets/index-CTBKgxrZ.js +++ /dev/null @@ -1,50 +0,0 @@ -import{n as De,y as Fn,z as v,A as Nn,t as U,B as ee,C as _e,D as Rn,E as Hn,G as Un,H as jn,I as d,J as b,K as zn,L as qn,M as Wn,N as Vn,O as ie,P as ni,Q as Gn,R as Kn,d as ns,b as ge,e as r,f as me,h as Ri,o as S,c as T,k as A,q as P,s as L,i as je,S as Yn,T as Zn,U as Xn,g as Jn,l as Hi,m as Ui,V as _,W as Hs,X as Qn,Y as tr,Z as er,_ as sr,$ as ir,a0 as nr,a1 as rr,a2 as et,a3 as ji,a4 as ar,a5 as rs,a6 as lr,a7 as or,a8 as cr,r as hr,a9 as ur,aa as dr,u as pr}from"./modules/vue-BoI2EFOv.js";import{_ as fr,a as gr}from"./modules/unplugin-icons-CfAESjuq.js";import{T as mr}from"./modules/shiki-DdzKTf6Q.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const n of document.querySelectorAll('link[rel="modulepreload"]'))i(n);new MutationObserver(n=>{for(const a of n)if(a.type==="childList")for(const l of a.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&i(l)}).observe(document,{childList:!0,subtree:!0});function s(n){const a={};return n.integrity&&(a.integrity=n.integrity),n.referrerPolicy&&(a.referrerPolicy=n.referrerPolicy),n.crossOrigin==="use-credentials"?a.credentials="include":n.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function i(n){if(n.ep)return;n.ep=!0;const a=s(n);fetch(n.href,a)}})();function xs(t,e={},s){for(const i in t){const n=t[i],a=s?`${s}:${i}`:i;typeof n=="object"&&n!==null?xs(n,e,a):typeof n=="function"&&(e[a]=n)}return e}const kr={run:t=>t()},_r=()=>kr,zi=typeof console.createTask<"u"?console.createTask:_r;function yr(t,e){const s=e.shift(),i=zi(s);return t.reduce((n,a)=>n.then(()=>i.run(()=>a(...e))),Promise.resolve())}function vr(t,e){const s=e.shift(),i=zi(s);return Promise.all(t.map(n=>i.run(()=>n(...e))))}function ds(t,e){for(const s of[...t])s(e)}class wr{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,s,i={}){if(!e||typeof s!="function")return()=>{};const n=e;let a;for(;this._deprecatedHooks[e];)a=this._deprecatedHooks[e],e=a.to;if(a&&!i.allowDeprecated){let l=a.message;l||(l=`${n} hook has been deprecated`+(a.to?`, please use ${a.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(l)||(console.warn(l),this._deprecatedMessages.add(l))}if(!s.name)try{Object.defineProperty(s,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(s),()=>{s&&(this.removeHook(e,s),s=void 0)}}hookOnce(e,s){let i,n=(...a)=>(typeof i=="function"&&i(),i=void 0,n=void 0,s(...a));return i=this.hook(e,n),i}removeHook(e,s){if(this._hooks[e]){const i=this._hooks[e].indexOf(s);i!==-1&&this._hooks[e].splice(i,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,s){this._deprecatedHooks[e]=typeof s=="string"?{to:s}:s;const i=this._hooks[e]||[];delete this._hooks[e];for(const n of i)this.hook(e,n)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const s in e)this.deprecateHook(s,e[s])}addHooks(e){const s=xs(e),i=Object.keys(s).map(n=>this.hook(n,s[n]));return()=>{for(const n of i.splice(0,i.length))n()}}removeHooks(e){const s=xs(e);for(const i in s)this.removeHook(i,s[i])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...s){return s.unshift(e),this.callHookWith(yr,e,...s)}callHookParallel(e,...s){return s.unshift(e),this.callHookWith(vr,e,...s)}callHookWith(e,s,...i){const n=this._before||this._after?{name:s,args:i,context:{}}:void 0;this._before&&ds(this._before,n);const a=e(s in this._hooks?[...this._hooks[s]]:[],i);return a instanceof Promise?a.finally(()=>{this._after&&n&&ds(this._after,n)}):(this._after&&n&&ds(this._after,n),a)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const s=this._before.indexOf(e);s!==-1&&this._before.splice(s,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const s=this._after.indexOf(e);s!==-1&&this._after.splice(s,1)}}}}function br(){return new wr}function xr(t){return Array.isArray(t)?t:[t]}const $r=["title","titleTemplate","script","style","noscript"],ze=["base","meta","link","style","script","noscript"],Ar=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],Sr=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],qi=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],Mr=typeof window<"u";function Us(t){let e=9;for(let s=0;s>>9)+65536).toString(16).substring(1,8).toLowerCase()}function ri(t){return t._h||Us(t._d?t._d:`${t.tag}:${t.textContent||t.innerHTML||""}:${Object.entries(t.props).map(([e,s])=>`${e}:${String(s)}`).join(",")}`)}function Wi(t,e){const{props:s,tag:i}=t;if(Sr.includes(i))return i;if(i==="link"&&s.rel==="canonical")return"canonical";if(s.charset)return"charset";const n=["id"];i==="meta"&&n.push("name","property","http-equiv");for(const a of n)if(typeof s[a]<"u"){const l=String(s[a]);return e&&!e(l)?!1:`${i}:${a}:${l}`}return!1}function ai(t,e){return t==null?e||null:typeof t=="function"?t(e):t}async function Cr(t,e,s){const i={tag:t,props:await Vi(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(t)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(t))};return qi.forEach(n=>{const a=typeof i.props[n]<"u"?i.props[n]:s[n];typeof a<"u"&&((!["innerHTML","textContent","children"].includes(n)||$r.includes(i.tag))&&(i[n==="children"?"innerHTML":n]=a),delete i.props[n])}),i.props.body&&(i.tagPosition="bodyClose",delete i.props.body),i.tag==="script"&&typeof i.innerHTML=="object"&&(i.innerHTML=JSON.stringify(i.innerHTML),i.props.type=i.props.type||"application/json"),Array.isArray(i.props.content)?i.props.content.map(n=>({...i,props:{...i.props,content:n}})):i}function Er(t){return typeof t=="object"&&!Array.isArray(t)&&(t=Object.keys(t).filter(e=>t[e])),(Array.isArray(t)?t.join(" "):t).split(" ").filter(e=>e.trim()).filter(Boolean).join(" ")}async function Vi(t,e){for(const s of Object.keys(t)){if(s==="class"){t[s]=Er(t[s]);continue}if(t[s]instanceof Promise&&(t[s]=await t[s]),!e&&!qi.includes(s)){const i=String(t[s]),n=s.startsWith("data-");i==="true"||i===""?t[s]=n?"true":!0:t[s]||(n&&i==="false"?t[s]="false":delete t[s])}}return t}const Tr=10;async function Dr(t){const e=[];return Object.entries(t.resolvedInput).filter(([s,i])=>typeof i<"u"&&Ar.includes(s)).forEach(([s,i])=>{const n=xr(i);e.push(...n.map(a=>Cr(s,a,t)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((s,i)=>(s._e=t._i,t.mode&&(s._m=t.mode),s._p=(t._i<c&&c[h]||void 0,e):o=e[l],typeof o<"u"?(o||"").replace(/"/g,'\\"'):!1}let n=t;try{n=decodeURI(t)}catch{}return(n.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(l=>{const o=i(l.slice(1));typeof o=="string"&&(t=t.replace(new RegExp(`\\${l}(\\W|$)`,"g"),(c,h)=>`${o}${h}`).trim())}),t.includes(Qt)&&(t.endsWith(Qt)&&(t=t.slice(0,-Qt.length).trim()),t.startsWith(Qt)&&(t=t.slice(Qt.length).trim()),t=t.replace(new RegExp(`\\${Qt}\\s*\\${Qt}`,"g"),Qt),t=qe(t,{separator:s},s)),t}async function Lr(t){const e={tag:t.tagName.toLowerCase(),props:await Vi(t.getAttributeNames().reduce((s,i)=>({...s,[i]:t.getAttribute(i)}),{})),innerHTML:t.innerHTML};return e._d=Wi(e),e}async function Or(t,e={}){var u;const s=e.document||t.resolvedOptions.document;if(!s)return;const i={shouldRender:t.dirty,tags:[]};if(await t.hooks.callHook("dom:beforeRender",i),!i.shouldRender)return;const n=(await t.resolveTags()).map(p=>({tag:p,id:ze.includes(p.tag)?ri(p):p.tag,shouldRender:!0}));let a=t._dom;if(!a){a={elMap:{htmlAttrs:s.documentElement,bodyAttrs:s.body}};for(const p of["body","head"]){const g=(u=s==null?void 0:s[p])==null?void 0:u.children;for(const f of[...g].filter(m=>ze.includes(m.tagName.toLowerCase())))a.elMap[f.getAttribute("data-hid")||ri(await Lr(f))]=f}}a.pendingSideEffects={...a.sideEffects||{}},a.sideEffects={};function l(p,g,f){const m=`${p}:${g}`;a.sideEffects[m]=f,delete a.pendingSideEffects[m]}function o({id:p,$el:g,tag:f}){const m=f.tag.endsWith("Attrs");a.elMap[p]=g,m||(["textContent","innerHTML"].forEach(k=>{f[k]&&f[k]!==g[k]&&(g[k]=f[k])}),l(p,"el",()=>{a.elMap[p].remove(),delete a.elMap[p]})),Object.entries(f.props).forEach(([k,y])=>{const w=`attr:${k}`;if(k==="class")for(const $ of(y||"").split(" ").filter(Boolean))m&&l(p,`${w}:${$}`,()=>g.classList.remove($)),!g.classList.contains($)&&g.classList.add($);else g.getAttribute(k)!==y&&g.setAttribute(k,y===!0?"":String(y)),m&&l(p,w,()=>g.removeAttribute(k))})}const c=[],h={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const p of n){const{tag:g,shouldRender:f,id:m}=p;if(f){if(g.tag==="title"){s.title=g.textContent;continue}p.$el=p.$el||a.elMap[m],p.$el?o(p):ze.includes(g.tag)&&c.push(p)}}for(const p of c){const g=p.tag.tagPosition||"head";p.$el=s.createElement(p.tag.tag),o(p),h[g]=h[g]||s.createDocumentFragment(),h[g].appendChild(p.$el)}for(const p of n)await t.hooks.callHook("dom:renderTag",p,s,l);h.head&&s.head.appendChild(h.head),h.bodyOpen&&s.body.insertBefore(h.bodyOpen,s.body.firstChild),h.bodyClose&&s.body.appendChild(h.bodyClose),Object.values(a.pendingSideEffects).forEach(p=>p()),t._dom=a,t.dirty=!1,await t.hooks.callHook("dom:rendered",{renders:n})}async function Br(t,e={}){const s=e.delayFn||(i=>setTimeout(i,10));return t._domUpdatePromise=t._domUpdatePromise||new Promise(i=>s(async()=>{await Or(t,e),delete t._domUpdatePromise,i()}))}function Ir(t){return e=>{var i,n;const s=((n=(i=e.resolvedOptions.document)==null?void 0:i.head.querySelector('script[id="unhead:payload"]'))==null?void 0:n.innerHTML)||!1;return s&&e.push(JSON.parse(s)),{mode:"client",hooks:{"entries:updated":function(a){Br(a,t)}}}}}const Fr=["templateParams","htmlAttrs","bodyAttrs"],Nr={hooks:{"tag:normalise":function({tag:t}){["hid","vmid","key"].forEach(i=>{t.props[i]&&(t.key=t.props[i],delete t.props[i])});const s=Wi(t)||(t.key?`${t.tag}:${t.key}`:!1);s&&(t._d=s)},"tags:resolve":function(t){const e={};t.tags.forEach(i=>{const n=(i.key?`${i.tag}:${i.key}`:i._d)||i._p,a=e[n];if(a){let o=i==null?void 0:i.tagDuplicateStrategy;if(!o&&Fr.includes(i.tag)&&(o="merge"),o==="merge"){const c=a.props;["class","style"].forEach(h=>{c[h]&&(i.props[h]?(h==="style"&&!c[h].endsWith(";")&&(c[h]+=";"),i.props[h]=`${c[h]} ${i.props[h]}`):i.props[h]=c[h])}),e[n].props={...c,...i.props};return}else if(i._e===a._e){a._duped=a._duped||[],i._d=`${a._d}:${a._duped.length+1}`,a._duped.push(i);return}else if(Ke(i)>Ke(a))return}const l=Object.keys(i.props).length+(i.innerHTML?1:0)+(i.textContent?1:0);if(ze.includes(i.tag)&&l===0){delete e[n];return}e[n]=i});const s=[];Object.values(e).forEach(i=>{const n=i._duped;delete i._duped,s.push(i),n&&s.push(...n)}),t.tags=s,t.tags=t.tags.filter(i=>!(i.tag==="meta"&&(i.props.name||i.props.property)&&!i.props.content))}}},Rr={mode:"server",hooks:{"tags:resolve":function(t){const e={};t.tags.filter(s=>["titleTemplate","templateParams","title"].includes(s.tag)&&s._m==="server").forEach(s=>{e[s.tag]=s.tag.startsWith("title")?s.textContent:s.props}),Object.keys(e).length&&t.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},Hr=["script","link","bodyAttrs"];function Ur(t){const e={},s={};return Object.entries(t.props).forEach(([i,n])=>{i.startsWith("on")&&typeof n=="function"?(Gi.includes(i)&&(e[i]=`this.dataset.${i} = true`),s[i]=n):e[i]=n}),{props:e,eventHandlers:s}}const jr=t=>({hooks:{"tags:resolve":function(e){for(const s of e.tags)if(Hr.includes(s.tag)){const{props:i,eventHandlers:n}=Ur(s);s.props=i,Object.keys(n).length&&((s.props.src||s.props.href)&&(s.key=s.key||Us(s.props.src||s.props.href)),s._eventHandlers=n)}},"dom:renderTag":function(e,s,i){if(!e.tag._eventHandlers)return;const n=e.tag.tag==="bodyAttrs"?s.defaultView:e.$el;Object.entries(e.tag._eventHandlers).forEach(([a,l])=>{const o=`${e.tag._d||e.tag._p}:${a}`,c=a.slice(2).toLowerCase(),h=`data-h-${c}`;if(i(e.id,o,()=>{}),e.$el.hasAttribute(h))return;e.$el.setAttribute(h,"");let u;const p=g=>{l(g),u==null||u.disconnect()};a in e.$el.dataset?p(new Event(a.replace("on",""))):Gi.includes(a)&&typeof MutationObserver<"u"?(u=new MutationObserver(g=>{g.some(m=>m.attributeName===`data-${a}`)&&(p(new Event(a.replace("on",""))),u==null||u.disconnect())}),u.observe(e.$el,{attributes:!0})):n.addEventListener(c,p),i(e.id,o,()=>{u==null||u.disconnect(),n.removeEventListener(c,p),e.$el.removeAttribute(h)})})}}}),zr=["link","style","script","noscript"],qr={hooks:{"tag:normalise":({tag:t})=>{t.key&&zr.includes(t.tag)&&(t.props["data-hid"]=t._h=Us(t.key))}}},Wr={hooks:{"tags:resolve":t=>{const e=s=>{var i;return(i=t.tags.find(n=>n._d===s))==null?void 0:i._p};for(const{prefix:s,offset:i}of Pr)for(const n of t.tags.filter(a=>typeof a.tagPriority=="string"&&a.tagPriority.startsWith(s))){const a=e(n.tagPriority.replace(s,""));typeof a<"u"&&(n._p=a+i)}t.tags.sort((s,i)=>s._p-i._p).sort((s,i)=>Ke(s)-Ke(i))}}},Vr={meta:"content",link:"href",htmlAttrs:"lang"},Gr=t=>({hooks:{"tags:resolve":e=>{var o;const{tags:s}=e,i=(o=s.find(c=>c.tag==="title"))==null?void 0:o.textContent,n=s.findIndex(c=>c.tag==="templateParams"),a=n!==-1?s[n].props:{},l=a.separator||"|";delete a.separator,a.pageTitle=qe(a.pageTitle||i||"",a,l);for(const c of s.filter(h=>h.processTemplateParams!==!1)){const h=Vr[c.tag];h&&typeof c.props[h]=="string"?c.props[h]=qe(c.props[h],a,l):(c.processTemplateParams===!0||["titleTemplate","title"].includes(c.tag))&&["innerHTML","textContent"].forEach(u=>{typeof c[u]=="string"&&(c[u]=qe(c[u],a,l))})}t._templateParams=a,t._separator=l,e.tags=s.filter(c=>c.tag!=="templateParams")}}}),Kr={hooks:{"tags:resolve":t=>{const{tags:e}=t;let s=e.findIndex(n=>n.tag==="titleTemplate");const i=e.findIndex(n=>n.tag==="title");if(i!==-1&&s!==-1){const n=ai(e[s].textContent,e[i].textContent);n!==null?e[i].textContent=n||e[i].textContent:delete e[i]}else if(s!==-1){const n=ai(e[s].textContent);n!==null&&(e[s].textContent=n,e[s].tag="title",s=-1)}s!==-1&&delete e[s],t.tags=e.filter(Boolean)}}},Yr={hooks:{"tags:afterResolve":function(t){for(const e of t.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{o.dirty=!0,e.callHook("entries:updated",o)};let n=0,a=[];const l=[],o={plugins:l,dirty:!1,resolvedOptions:t,hooks:e,headEntries(){return a},use(c){const h=typeof c=="function"?c(o):c;(!h.key||!l.some(u=>u.key===h.key))&&(l.push(h),ci(h.mode,s)&&e.addHooks(h.hooks||{}))},push(c,h){h==null||delete h.head;const u={_i:n++,input:c,...h};return ci(u.mode,s)&&(a.push(u),i()),{dispose(){a=a.filter(p=>p._i!==u._i),e.callHook("entries:updated",o),i()},patch(p){a=a.map(g=>(g._i===u._i&&(g.input=u.input=p),g)),i()}}},async resolveTags(){const c={tags:[],entries:[...a]};await e.callHook("entries:resolve",c);for(const h of c.entries){const u=h.resolvedInput||h.input;if(h.resolvedInput=await(h.transform?h.transform(u):u),h.resolvedInput)for(const p of await Dr(h)){const g={tag:p,entry:h,resolvedOptions:o.resolvedOptions};await e.callHook("tag:normalise",g),c.tags.push(g.tag)}}return await e.callHook("tags:beforeResolve",c),await e.callHook("tags:resolve",c),await e.callHook("tags:afterResolve",c),c.tags},ssr:s};return[Nr,Rr,jr,qr,Wr,Gr,Kr,Yr,...(t==null?void 0:t.plugins)||[]].forEach(c=>o.use(c)),o.hooks.callHook("init",o),o}function Jr(){return Ki}const Qr=Fn.startsWith("3");function ta(t){return typeof t=="function"?t():v(t)}function Ye(t,e=""){if(t instanceof Promise)return t;const s=ta(t);return!t||!s?s:Array.isArray(s)?s.map(i=>Ye(i,e)):typeof s=="object"?Object.fromEntries(Object.entries(s).map(([i,n])=>i==="titleTemplate"||i.startsWith("on")?[i,v(n)]:[i,Ye(n,i)])):s}const ea={hooks:{"entries:resolve":function(t){for(const e of t.entries)e.resolvedInput=Ye(e.input)}}},Yi="usehead";function sa(t){return{install(s){Qr&&(s.config.globalProperties.$unhead=t,s.config.globalProperties.$head=t,s.provide(Yi,t))}}.install}function ia(t={}){t.domDelayFn=t.domDelayFn||(s=>De(()=>setTimeout(()=>s(),0)));const e=Zr(t);return e.use(ea),e.install=sa(e),e}const hi=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},ui="__unhead_injection_handler__";function na(){if(ui in hi)return hi[ui]();const t=Nn(Yi);return t||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),t||Jr()}function ra(t,e={}){const s=e.head||na();if(s)return s.ssr?s.push(t,e):aa(s,t,e)}function aa(t,e,s={}){const i=U(!1),n=U({});ee(()=>{n.value=i.value?{}:Ye(e)});const a=t.push(n.value,s);return _e(n,o=>{a.patch(o)}),jn()&&(Rn(()=>{a.dispose()}),Hn(()=>{i.value=!0}),Un(()=>{i.value=!1})),a}function la(...t){return ca(t).reduce((e,s)=>e+s,0)}function oa(t){return t=t??[],Array.isArray(t)?t:[t]}function ca(t){return oa(t).flat(1)}function ha(t){return t!=null}function ua(t,e){return Object.fromEntries(Object.entries(t).map(([s,i])=>e(s,i)).filter(ha))}const N={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:"dev",monacoTypesSource:"local",monacoTypesAdditionalPackages:[],download:!1,export:{},info:!1,highlighter:"shiki",lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},Zi=N.aspectRatio??16/9,da=N.canvasWidth??980,_f=Math.ceil(da/Zi),pa=d(()=>ua(N.themeConfig||{},(t,e)=>[`--slidev-theme-${t}`,e]));function Xi(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function lt(t,e,s){Object.defineProperty(t,e,{value:s,writable:!0,enumerable:!1})}const oe=b({page:0,clicks:0});let fa=[],ga=[];lt(oe,"$syncUp",!0);lt(oe,"$syncDown",!0);lt(oe,"$paused",!1);lt(oe,"$onSet",t=>fa.push(t));lt(oe,"$onPatch",t=>ga.push(t));Xi();lt(oe,"$patch",async()=>!1);function Ji(t,e,s=!1){const i=[];let n=!1,a=!1,l,o;const c=b(e);function h(f){i.push(f)}function u(f,m){c[f]!==m&&(clearTimeout(l),n=!0,c[f]=m,l=setTimeout(()=>n=!1,0))}function p(f){n||(clearTimeout(o),a=!0,Object.entries(f).forEach(([m,k])=>{c[m]=k}),o=setTimeout(()=>a=!1,0))}function g(f){let m;s?s&&window.addEventListener("storage",y=>{y&&y.key===f&&y.newValue&&p(JSON.parse(y.newValue))}):(m=new BroadcastChannel(f),m.addEventListener("message",y=>p(y.data)));function k(){!s&&m&&!a?m.postMessage(zn(c)):s&&!a&&window.localStorage.setItem(f,JSON.stringify(c)),n||i.forEach(y=>y(c))}if(_e(c,k,{deep:!0,flush:"sync"}),s){const y=window.localStorage.getItem(f);y&&p(JSON.parse(y))}}return{init:g,onPatch:h,patch:u,state:c}}const{init:ma,onPatch:ka,patch:we,state:yf}=Ji(oe,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),ce=b({});let _a=[],ya=[];lt(ce,"$syncUp",!0);lt(ce,"$syncDown",!0);lt(ce,"$paused",!1);lt(ce,"$onSet",t=>_a.push(t));lt(ce,"$onPatch",t=>ya.push(t));Xi();lt(ce,"$patch",async()=>!1);const{init:va,onPatch:wa,patch:Qi,state:tn}=Ji(ce,{},!1),ba="modulepreload",xa=function(t){return"/sa2024/05-restful/"+t},di={},Pe=function(e,s,i){let n=Promise.resolve();if(s&&s.length>0){const a=document.getElementsByTagName("link");n=Promise.all(s.map(l=>{if(l=xa(l),l in di)return;di[l]=!0;const o=l.endsWith(".css"),c=o?'[rel="stylesheet"]':"";if(!!i)for(let p=a.length-1;p>=0;p--){const g=a[p];if(g.href===l&&(!o||g.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${c}`))return;const u=document.createElement("link");if(u.rel=o?"stylesheet":ba,o||(u.as="script",u.crossOrigin=""),u.href=l,document.head.appendChild(u),o)return new Promise((p,g)=>{u.addEventListener("load",p),u.addEventListener("error",()=>g(new Error(`Unable to preload CSS for ${l}`)))})}))}return n.then(()=>e()).catch(a=>{const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=a,window.dispatchEvent(l),!l.defaultPrevented)throw a})},C=(t,e)=>{const s=t.__vccOpts||t;for(const[i,n]of e)s[i]=n;return s};function vf(){const t=U(Date.now()),e=qn({interval:1e3}),s=d(()=>{const n=(e.value-t.value)/1e3,a=Math.floor(n%60).toString().padStart(2,"0");return`${Math.floor(n/60).toString().padStart(2,"0")}:${a}`});function i(){t.value=e.value}return{timer:s,resetTimer:i}}function en(t=5){const e=[],s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",i=s.length;for(let n=0;nn.max||0))}}}function Ea(t){var n,a;if((n=t==null?void 0:t.meta)!=null&&n.__clicksContext)return t.meta.__clicksContext;const e=+((t==null?void 0:t.path)??$s),s=d({get(){var o;const l=+(((o=Zt.value)==null?void 0:o.path)??Number.NaN);return!l||Number.isNaN(l)?0:l===e?ke.value:l>e?$s:0},set(l){var c;+(((c=Zt.value)==null?void 0:c.path)??Number.NaN)===e&&(ke.value=l)}}),i=on(s,(a=t==null?void 0:t.meta)==null?void 0:a.clicks);return t!=null&&t.meta&&(t.meta.__clicksContext=i),i}function Ta(t,e=0){var s;return on(U(e),(s=t==null?void 0:t.meta)==null?void 0:s.clicks)}const Da=Vn(Ta());function D(){const t=ie(nn),e=ni(t,"nav"),s=ie(js,Da).value,i=ni(s,"current"),n=ie(sn),a=ie(rn),l=ie(an,{}),o=ie(Sa,void 0),c=ie(Aa,U(1));return{$slidev:t,$nav:e,$clicksContext:s,$clicks:i,$page:n,$route:o,$renderContext:a,$frontmatter:l,$scale:c}}function O(t){var n,a;Gn(an,t);const{$slidev:e,$page:s}=D(),i=e.nav.rawRoutes.find(l=>l.path===String(s.value));if((a=(n=i==null?void 0:i.meta)==null?void 0:n.slide)!=null&&a.frontmatter){for(const l of Object.keys(i.meta.slide.frontmatter))l in t||delete i.meta.slide.frontmatter[l];Object.assign(i.meta.slide.frontmatter,t)}}function B(t,e){return{...Kn(t,e===0?Ca:ln),frontmatter:t}}function pi(t){return t.startsWith("/")?"/sa2024/05-restful/"+t.slice(1):t}function Pa(t,e=!1){const s=t&&["#","rgb","hsl"].some(n=>t.indexOf(n)===0),i={background:s?t:void 0,color:t&&!s?"white":void 0,backgroundImage:s?void 0:t?e?`linear-gradient(#0005, #0008), url(${pi(t)})`:`url("${pi(t)}")`:void 0,backgroundRepeat:"no-repeat",backgroundPosition:"center",backgroundSize:"cover"};return i.background||delete i.background,i}const La={class:"my-auto w-full"},Oa=ns({__name:"cover",props:{background:{default:""}},setup(t){D();const e=t,s=d(()=>Pa(e.background,!0));return(i,n)=>(S(),ge("div",{class:"slidev-layout cover",style:Ri(s.value)},[r("div",La,[me(i.$slots,"default")])],4))}}),Ba=C(Oa,[["__file","/opt/homebrew/lib/node_modules/@slidev/theme-default/layouts/cover.vue"]]),_t=b({theme:"default",layout:"cover"}),Ia=b({layout:d(()=>_t.layout),transition:d(()=>_t.transition),class:d(()=>_t.class),clicks:d(()=>_t.clicks),name:d(()=>_t.name),preload:d(()=>_t.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:_t,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),Fa=r("h1",null,"Software Architecture",-1),Na=r("h2",null,"REST and Spring HATEOAS",-1),Ra={__name:"1",setup(t){return O(_t),D(),(e,s)=>(S(),T(Ba,P(L(v(B)(v(_t),0))),{default:A(()=>[Fa,Na]),_:1},16))}},Ha=C(Ra,[["__file","/@slidev/slides/1.md"]]),Ua="/sa2024/05-restful/assets/07-petclinic-cs-BOEsrYmK.png",ja="/sa2024/05-restful/assets/07-petclinic-C1GbFER0.png",za=ns({__name:"two-cols",props:{class:{type:String},layoutClass:{type:String}},setup(t){const e=t;return(s,i)=>(S(),ge("div",{class:je(["slidev-layout two-columns w-full h-full grid grid-cols-2",e.layoutClass])},[r("div",{class:je(["col-left",e.class])},[me(s.$slots,"default")],2),r("div",{class:je(["col-right",e.class])},[me(s.$slots,"right")],2)],2))}}),pt=C(za,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/two-cols.vue"]]),yt=b({layout:"two-cols"}),qa=b({layout:d(()=>yt.layout),transition:d(()=>yt.transition),class:d(()=>yt.class),clicks:d(()=>yt.clicks),name:d(()=>yt.name),preload:d(()=>yt.preload),slide:{index:1,content:"",note:"",title:"回顾",level:1,noteHTML:"",raw:"",frontmatter:yt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:11,id:1,no:2},__clicksContext:null,__preloaded:!1}),Wa=r("h1",null,"回顾",-1),Va=r("p",null,[r("br"),r("br")],-1),Ga=r("img",{src:Ua,class:"m-10 h-50"},null,-1),Ka=r("img",{src:ja,class:"m-20 h-60"},null,-1),Ya=r("br",null,null,-1),Za=r("div",{style:{"text-align":"right"}},"spring-petclinic/spring-framework-petclinic",-1),Xa={__name:"2",setup(t){return O(yt),D(),(e,s)=>(S(),T(pt,P(L(v(B)(v(yt),1))),{right:A(i=>[Ka,Ya,Za]),default:A(()=>[Wa,Va,Ga]),_:1},16))}},Ja=C(Xa,[["__file","/@slidev/slides/2.md"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function cn(t){return typeof t>"u"||t===null}function Qa(t){return typeof t=="object"&&t!==null}function tl(t){return Array.isArray(t)?t:cn(t)?[]:[t]}function el(t,e){var s,i,n,a;if(e)for(a=Object.keys(e),s=0,i=a.length;s=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),Bl=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function Il(t){return!(t===null||!Bl.test(t)||t[t.length-1]==="_")}function Fl(t){var e,s;return e=t.replace(/_/g,"").toLowerCase(),s=e[0]==="-"?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?s===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:s*parseFloat(e,10)}var Nl=/^[-+]?[0-9]+e/;function Rl(t,e){var s;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(zs.isNegativeZero(t))return"-0.0";return s=t.toString(10),Nl.test(s)?s.replace("e",".e"):s}function Hl(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||zs.isNegativeZero(t))}var Ul=new J("tag:yaml.org,2002:float",{kind:"scalar",resolve:Il,construct:Fl,predicate:Hl,represent:Rl,defaultStyle:"lowercase"}),jl=yl.extend({implicit:[xl,Ml,Ol,Ul]}),zl=jl,un=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),dn=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function ql(t){return t===null?!1:un.exec(t)!==null||dn.exec(t)!==null}function Wl(t){var e,s,i,n,a,l,o,c=0,h=null,u,p,g;if(e=un.exec(t),e===null&&(e=dn.exec(t)),e===null)throw new Error("Date resolve error");if(s=+e[1],i=+e[2]-1,n=+e[3],!e[4])return new Date(Date.UTC(s,i,n));if(a=+e[4],l=+e[5],o=+e[6],e[7]){for(c=e[7].slice(0,3);c.length<3;)c+="0";c=+c}return e[9]&&(u=+e[10],p=+(e[11]||0),h=(u*60+p)*6e4,e[9]==="-"&&(h=-h)),g=new Date(Date.UTC(s,i,n,a,l,o,c)),h&&g.setTime(g.getTime()-h),g}function Vl(t){return t.toISOString()}var Gl=new J("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:ql,construct:Wl,instanceOf:Date,represent:Vl});function Kl(t){return t==="<<"||t===null}var Yl=new J("tag:yaml.org,2002:merge",{kind:"scalar",resolve:Kl}),qs=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function Zl(t){if(t===null)return!1;var e,s,i=0,n=t.length,a=qs;for(s=0;s64)){if(e<0)return!1;i+=6}return i%8===0}function Xl(t){var e,s,i=t.replace(/[\r\n=]/g,""),n=i.length,a=qs,l=0,o=[];for(e=0;e>16&255),o.push(l>>8&255),o.push(l&255)),l=l<<6|a.indexOf(i.charAt(e));return s=n%4*6,s===0?(o.push(l>>16&255),o.push(l>>8&255),o.push(l&255)):s===18?(o.push(l>>10&255),o.push(l>>2&255)):s===12&&o.push(l>>4&255),new Uint8Array(o)}function Jl(t){var e="",s=0,i,n,a=t.length,l=qs;for(i=0;i>18&63],e+=l[s>>12&63],e+=l[s>>6&63],e+=l[s&63]),s=(s<<8)+t[i];return n=a%3,n===0?(e+=l[s>>18&63],e+=l[s>>12&63],e+=l[s>>6&63],e+=l[s&63]):n===2?(e+=l[s>>10&63],e+=l[s>>4&63],e+=l[s<<2&63],e+=l[64]):n===1&&(e+=l[s>>2&63],e+=l[s<<4&63],e+=l[64],e+=l[64]),e}function Ql(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}var to=new J("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Zl,construct:Xl,predicate:Ql,represent:Jl}),eo=Object.prototype.hasOwnProperty,so=Object.prototype.toString;function io(t){if(t===null)return!0;var e=[],s,i,n,a,l,o=t;for(s=0,i=o.length;si<=t).sort((i,n)=>i-n)}const yo=["title"],vo=ns({__name:"CodeBlockWrapper",props:{ranges:{type:Array,default:()=>[]},finally:{type:[String,Number],default:"last"},startLine:{type:Number,default:1},lines:{type:Boolean,default:N.lineNumbers},at:{type:[String,Number],default:"+1"},maxHeight:{type:String,default:void 0}},setup(t){const e=t,{$clicksContext:s}=D(),i=U(),n=en();Yn(()=>{s.unregister(n)}),ee(()=>{var c;(c=i.value)==null||c.classList.toggle("slidev-code-line-numbers",e.lines)}),Zn(()=>{var f;if(!s||s.disabled||!((f=e.ranges)!=null&&f.length))return;const{start:c,end:h,delta:u}=s.resolve(e.at,e.ranges.length-1);s.register(n,{max:h,delta:u});const p=d(()=>s.disabled?e.ranges.length-1:Math.max(0,s.current-c+1)),g=d(()=>e.finally==="last"?e.ranges.at(-1):e.finally.toString());ee(()=>{if(!i.value)return;let m=e.ranges[p.value]??g.value;const k=m==="hide";i.value.classList.toggle(pe,k),k&&(m=e.ranges[p.value+1]??g.value);const w=i.value.querySelector(".shiki-dark")?Array.from(i.value.querySelectorAll(".shiki")):[i.value],$=e.startLine;for(const M of w){const j=Array.from(M.querySelectorAll("code > .line")),H=_o(j.length+$-1,m);if(j.forEach((z,ot)=>{const K=H.includes(ot+$);z.classList.toggle(Ee,!0),z.classList.toggle("highlighted",K),z.classList.toggle("dishonored",!K)}),e.maxHeight){const z=Array.from(M.querySelectorAll(".line.highlighted"));z.reduce((K,st)=>st.offsetHeight+K,0)>i.value.offsetHeight?z[0].scrollIntoView({behavior:"smooth",block:"start"}):z.length>0&&z[Math.round((z.length-1)/2)].scrollIntoView({behavior:"smooth",block:"center"})}}})});const{copied:a,copy:l}=Xn();function o(){var h,u;const c=(u=(h=i.value)==null?void 0:h.querySelector(".slidev-code"))==null?void 0:u.textContent;c&&l(c)}return(c,h)=>{const u=fr,p=gr;return S(),ge("div",{ref_key:"el",ref:i,class:je(["slidev-code-wrapper relative group",{"slidev-code-line-numbers":e.lines}]),style:Ri({"max-height":e.maxHeight,"overflow-y":e.maxHeight?"scroll":void 0,"--start":e.startLine})},[me(c.$slots,"default"),v(N).codeCopy?(S(),ge("button",{key:0,class:"slidev-code-copy absolute top-0 right-0 transition opacity-0 group-hover:opacity-20 hover:!opacity-100",title:v(a)?"Copied":"Copy",onClick:h[0]||(h[0]=g=>o())},[v(a)?(S(),T(u,{key:0,class:"p-2 w-8 h-8"})):(S(),T(p,{key:1,class:"p-2 w-8 h-8"}))],8,yo)):Jn("v-if",!0)],6)}}}),pn=C(vo,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/builtin/CodeBlockWrapper.vue"]]),wo="/sa2024/05-restful/assets/07-manong-BM1NENVW.png",vt=b({layout:"two-cols"}),bo=b({layout:d(()=>vt.layout),transition:d(()=>vt.transition),class:d(()=>vt.class),clicks:d(()=>vt.clicks),name:d(()=>vt.name),preload:d(()=>vt.preload),slide:{index:2,content:"",note:"",title:"问题一",level:1,noteHTML:"",raw:"",frontmatter:vt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:30,id:2,no:3},__clicksContext:null,__preloaded:!1}),xo=r("h1",null,"问题一",-1),$o=r("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[r("code",{class:"language-html"},[r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),r("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"petclinic:layout"),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," pageName"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"owners"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"h2"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"c:if"),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," test"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"${owner['new']}"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"New "),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},""),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," Owner")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"form:form"),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," modelAttribute"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"owner"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"form-horizontal"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," id"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"add-owner-form"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"div"),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"form-group has-feedback"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"petclinic:inputField"),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," label"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"First Name"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," name"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"firstName"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"/>")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"petclinic:inputField"),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," label"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"Last Name"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," name"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"lastName"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"/>")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"div"),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"form-group"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"div"),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"col-sm-offset-2 col-sm-10"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"c:choose"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"c:when"),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," test"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"${owner['new']}"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"button"),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"btn btn-primary"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," type"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"submit"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Add Owner"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#FDAEB7","--shiki-light":"#B31D28"}},"c:otherwise"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"button"),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," class"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"btn btn-primary"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#BD976A","--shiki-light":"#B07D48"}}," type"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"submit"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Update Owner"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")])])],-1),Ao=r("p",null,[r("br"),r("br"),r("img",{src:wo,class:"m-10 h-70"})],-1),So=r("div",{style:{"text-align":"center"}},"展示层页面与计算逻辑混杂",-1),Mo={__name:"3",setup(t){return O(vt),D(),(e,s)=>{const i=pn;return S(),T(pt,P(L(v(B)(v(vt),2))),{right:A(n=>[Ao,So]),default:A(()=>[xo,Hi(i,Ui({},{ranges:[]}),{default:A(()=>[$o]),_:1},16)]),_:1},16)}}},Co=C(Mo,[["__file","/@slidev/slides/3.md"]]),Eo={},To={class:"slidev-layout default"};function Do(t,e){return S(),ge("div",To,[me(t.$slots,"default")])}const G=C(Eo,[["render",Do],["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/default.vue"]]),wt=b({}),Po=b({layout:d(()=>wt.layout),transition:d(()=>wt.transition),class:d(()=>wt.class),clicks:d(()=>wt.clicks),name:d(()=>wt.name),preload:d(()=>wt.preload),slide:{index:3,content:"",note:"",title:"问题二",level:1,noteHTML:"",raw:"",frontmatter:wt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:72,id:3,no:4},__clicksContext:null,__preloaded:!1}),Lo=r("h1",null,"问题二",-1),Oo=r("br",null,null,-1),Bo=r("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[r("code",{class:"language-java"},[r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," @"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"GetMapping"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C99076","--shiki-light":"#A65E2B"}},"value"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},' "'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"/pets/new"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," public"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," String "),r("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"initCreationForm"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Owner owner"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ModelMap model"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," {"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ..."),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," }")]),_(` -`),r("span",{class:"line"}),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," @"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"PostMapping"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C99076","--shiki-light":"#A65E2B"}},"value"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},' "'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"/pets/new"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," {"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ..."),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," }")]),_(` -`),r("span",{class:"line"}),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," @"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"GetMapping"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C99076","--shiki-light":"#A65E2B"}},"value"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},' "'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"/pets/{petId}/edit"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," public"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," String "),r("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"initUpdateForm"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"(@"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"PathVariable"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"petId"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," int"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," petId"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ModelMap model"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," {"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ..."),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," }")]),_(` -`),r("span",{class:"line"}),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," @"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"PostMapping"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C99076","--shiki-light":"#A65E2B"}},"value"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},' "'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"/pets/{petId}/edit"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," public"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," String "),r("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"processUpdateForm"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"(@"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"Valid"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," Pet pet"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," BindingResult result"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," Owner owner"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ModelMap model"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," {"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ..."),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," }")])])],-1),Io=r("br",null,null,-1),Fo=r("div",{style:{"text-align":"center"}},"用户接口并不标准",-1),No={__name:"4",setup(t){return O(wt),D(),(e,s)=>{const i=pn;return S(),T(G,P(L(v(B)(v(wt),3))),{default:A(()=>[Lo,Oo,Hi(i,Ui({},{ranges:[]}),{default:A(()=>[Bo]),_:1},16),Io,Fo]),_:1},16)}}},Ro=C(No,[["__file","/@slidev/slides/4.md"]]),Ho="/sa2024/05-restful/assets/07-petclinic-rest-BYsc00ZI.png",bt=b({}),Uo=b({layout:d(()=>bt.layout),transition:d(()=>bt.transition),class:d(()=>bt.class),clicks:d(()=>bt.clicks),name:d(()=>bt.name),preload:d(()=>bt.preload),slide:{index:4,content:"",note:"",title:"RESTful Petclinic",level:1,noteHTML:"",raw:"",frontmatter:bt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:93,id:4,no:5},__clicksContext:null,__preloaded:!1}),jo=r("h1",null,"RESTful Petclinic",-1),zo=r("div",{style:{"text-align":"left"}},"https://github.com/spring-petclinic/spring-petclinic-rest",-1),qo=r("img",{src:Ho,class:"m-10 h-70"},null,-1),Wo=r("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1p5411S7Am 6:04",-1),Vo={__name:"5",setup(t){return O(bt),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(bt),4))),{default:A(()=>[jo,zo,qo,Wo]),_:1},16))}},Go=C(Vo,[["__file","/@slidev/slides/5.md"]]),Ko="/sa2024/05-restful/assets/07-roy-fielding-BBuYwNli.png",xt=b({layout:"two-cols"}),Yo=b({layout:d(()=>xt.layout),transition:d(()=>xt.transition),class:d(()=>xt.class),clicks:d(()=>xt.clicks),name:d(()=>xt.name),preload:d(()=>xt.preload),slide:{index:5,content:"",note:"",title:"REST架构风格",level:1,noteHTML:"",raw:"",frontmatter:xt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:103,id:5,no:6},__clicksContext:null,__preloaded:!1}),Zo=r("h1",null,"REST架构风格",-1),Xo=r("br",null,null,-1),Jo=r("p",null,"Architectural Styles and the Design of Network-based Software Architectures",-1),Qo=r("div",{style:{"text-align":"right"}},"- Roy Thomas Fielding, 2000",-1),tc=r("br",null,null,-1),ec=r("p",null,"Roy Thomas Fielding: HTTP协议(1.0版和1.1版)的主要设计者、Apache服务器软件的作者之一、Apache基金会的第一任主席",-1),sc=r("p",null,[r("br"),r("br"),r("img",{src:Ko,class:"m-10 h-80"})],-1),ic={__name:"6",setup(t){return O(xt),D(),(e,s)=>(S(),T(pt,P(L(v(B)(v(xt),5))),{right:A(i=>[sc]),default:A(()=>[Zo,Xo,Jo,Qo,tc,ec]),_:1},16))}},nc=C(ic,[["__file","/@slidev/slides/6.md"]]),$t=b({layout:"two-cols"}),rc=b({layout:d(()=>$t.layout),transition:d(()=>$t.transition),class:d(()=>$t.class),clicks:d(()=>$t.clicks),name:d(()=>$t.name),preload:d(()=>$t.preload),slide:{index:6,content:"",note:"",title:"REST",level:1,noteHTML:"",raw:"",frontmatter:$t,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:124,id:6,no:7},__clicksContext:null,__preloaded:!1}),ac=r("h1",null,"REST",-1),lc=r("br",null,null,-1),oc=r("p",null,[r("strong",null,"Re"),_("presentational "),r("strong",null,"S"),_("tate "),r("strong",null,"T"),_("ransfer,表现层状态转化")],-1),cc=r("p",null,"全称应为: Resource Representational State Transfer,资源表现层状态转化。",-1),hc=r("p",null,[r("a",{href:"http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm",target:"_blank",rel:"noopener"},"http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm")],-1),uc=r("p",null,[r("br"),r("br"),r("img",{src:"https://www.ics.uci.edu/~fielding/pubs/dissertation/rest_process_view.gif",class:"m-10 h-80"})],-1),dc=r("br",null,null,-1),pc={__name:"7",setup(t){return O($t),D(),(e,s)=>(S(),T(pt,P(L(v(B)(v($t),6))),{right:A(i=>[uc,dc]),default:A(()=>[ac,lc,oc,cc,hc]),_:1},16))}},fc=C(pc,[["__file","/@slidev/slides/7.md"]]),At=b({}),gc=b({layout:d(()=>At.layout),transition:d(()=>At.transition),class:d(()=>At.class),clicks:d(()=>At.clicks),name:d(()=>At.name),preload:d(()=>At.preload),slide:{index:7,content:"",note:"",title:"REST",level:1,noteHTML:"",raw:"",frontmatter:At,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:150,id:7,no:8},__clicksContext:null,__preloaded:!1}),mc=r("h1",null,"REST",-1),kc=r("ul",null,[r("li",null,[_("REST指的是一组架构约束条件和原则 "),r("ul",null,[r("li",null,"为设计一个功能强、性能好、适宜通信的Web应用"),r("li",null,"如果一个架构符合REST的约束条件和原则,我们就称它为RESTful架构")])]),r("li",null,[_("核心概念 "),r("ul",null,[r("li",null,"资源(Resources)"),r("li",null,"表现层(Representation)"),r("li",null,"状态转化(State Transfer)")])])],-1),_c={__name:"8",setup(t){return O(At),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(At),7))),{default:A(()=>[mc,kc]),_:1},16))}},yc=C(_c,[["__file","/@slidev/slides/8.md"]]),St=b({}),vc=b({layout:d(()=>St.layout),transition:d(()=>St.transition),class:d(()=>St.class),clicks:d(()=>St.clicks),name:d(()=>St.name),preload:d(()=>St.preload),slide:{index:8,content:"",note:"",title:"资源",level:1,noteHTML:"",raw:"",frontmatter:St,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:162,id:8,no:9},__clicksContext:null,__preloaded:!1}),wc=r("h1",null,"资源",-1),bc=r("br",null,null,-1),xc=r("p",null,"网络上的一个实体,或者说是网络上的一个具体信息,任何事物,只要有被引用到的必要,它就是一个资源。",-1),$c=r("ul",null,[r("li",null,"一段文本,一张图片,一首歌曲"),r("li",null,"数据库中的一行数据"),r("li",null,"一个手机号码,某用户的个人信息"),r("li",null,"一种服务")],-1),Ac={__name:"9",setup(t){return O(St),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(St),8))),{default:A(()=>[wc,bc,xc,$c]),_:1},16))}},Sc=C(Ac,[["__file","/@slidev/slides/9.md"]]),Mt=b({}),Mc=b({layout:d(()=>Mt.layout),transition:d(()=>Mt.transition),class:d(()=>Mt.class),clicks:d(()=>Mt.clicks),name:d(()=>Mt.name),preload:d(()=>Mt.preload),slide:{index:9,content:"",note:"",title:"资源标识",level:1,noteHTML:"",raw:"",frontmatter:Mt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:174,id:9,no:10},__clicksContext:null,__preloaded:!1}),Cc=r("h1",null,"资源标识",-1),Ec=r("br",null,null,-1),Tc=r("p",null,"要让一个资源可以被识别,需要有个唯一标识,在Web中这个唯一标识就是URI(Uniform Resource Identifier)",-1),Dc=r("ul",null,[r("li",null,[r("code",null,"http://www.ex.com/software/releases/latest.tar.gz")]),r("li",null,[r("code",null,"http://www.ex.com/map/roads/USA/CA/17_mile_drive")]),r("li",null,[r("code",null,"http://www.ex.com/search/cs578")]),r("li",null,[r("code",null,"http://www.ex.com/sales/2012/Q1")]),r("li",null,[r("code",null,"http://www.ex.com/relationships/Alice;Bob")])],-1),Pc={__name:"10",setup(t){return O(Mt),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Mt),9))),{default:A(()=>[Cc,Ec,Tc,Dc]),_:1},16))}},Lc=C(Pc,[["__file","/@slidev/slides/10.md"]]),Ct=b({}),Oc=b({layout:d(()=>Ct.layout),transition:d(()=>Ct.transition),class:d(()=>Ct.class),clicks:d(()=>Ct.clicks),name:d(()=>Ct.name),preload:d(()=>Ct.preload),slide:{index:10,content:"",note:"",title:"URI设计原则",level:1,noteHTML:"",raw:"",frontmatter:Ct,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:187,id:10,no:11},__clicksContext:null,__preloaded:!1}),Bc=r("h1",null,"URI设计原则",-1),Ic=r("ul",null,[r("li",null,[_("易读 "),r("ul",null,[r("li",null,[r("code",null,"http://www.oschina.net/news/38119/oschina-translate-reward-plan")])])]),r("li",null,[_("表达资源的层级关系 "),r("ul",null,[r("li",null,[r("code",null,"https://github.com/git/git/commit/e3ae056f87e1d675913d08/orders/2012/10")])])]),r("li",null,[_("表示资源的同级关系 "),r("ul",null,[r("li",null,[r("code",null,"/git/block-sha1/sha1.h/compare/e3af72cda056f87e;bd63e61bdf38eb264")])])]),r("li",null,[_("表达资源的过滤 "),r("ul",null,[r("li",null,[r("code",null,"https://github.com/git/git/pulls?state=closed")])])])],-1),Fc={__name:"11",setup(t){return O(Ct),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Ct),10))),{default:A(()=>[Bc,Ic]),_:1},16))}},Nc=C(Fc,[["__file","/@slidev/slides/11.md"]]),Et=b({}),Rc=b({layout:d(()=>Et.layout),transition:d(()=>Et.transition),class:d(()=>Et.class),clicks:d(()=>Et.clicks),name:d(()=>Et.name),preload:d(()=>Et.preload),slide:{index:11,content:"",note:"",title:"统一资源接口",level:1,noteHTML:"",raw:"",frontmatter:Et,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:200,id:11,no:12},__clicksContext:null,__preloaded:!1}),Hc=r("h1",null,"统一资源接口",-1),Uc=r("ul",null,[r("li",null,"RESTFul架构应该遵循统一接口原则,统一接口包含了一组受限的预定义的操作,不论什么样的资源,都是通过使用相同的接口进行资源的访问。接口应该使用标准的HTTP方法如GET,PUT和POST,并遵循这些方法的语义。"),r("li",null,[_("如果按照HTTP方法的语义来暴露资源,那么接口将会拥有安全性和幂等性的特性 "),r("ul",null,[r("li",null,"GET和HEAD请求是安全的, 无论请求多少次,都不改变服务器状态"),r("li",null,"GET、HEAD、PUT和DELETE请求是幂等的,无论对资源操作多少次, 结果总是一样的,后面的请求并不会产生比第一次更多的影响")])])],-1),jc={__name:"12",setup(t){return O(Et),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Et),11))),{default:A(()=>[Hc,Uc]),_:1},16))}},zc=C(jc,[["__file","/@slidev/slides/12.md"]]),Tt=b({}),qc=b({layout:d(()=>Tt.layout),transition:d(()=>Tt.transition),class:d(()=>Tt.class),clicks:d(()=>Tt.clicks),name:d(()=>Tt.name),preload:d(()=>Tt.preload),slide:{index:12,content:"",note:"",title:"GET",level:3,noteHTML:"",raw:"",frontmatter:Tt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:209,id:12,no:13},__clicksContext:null,__preloaded:!1}),Wc=r("h3",null,"GET",-1),Vc=r("p",null,"获取表示,变更时获取表示(缓存)。安全且幂等。",-1),Gc=r("ul",null,[r("li",null,[r("code",null,"200"),_("(OK) - 表示已在响应中发出")]),r("li",null,[r("code",null,"204"),_("(无内容) - 资源有空表示")]),r("li",null,[r("code",null,"301"),_("(Moved Permanently) - 资源的URI已被更新")]),r("li",null,[r("code",null,"303"),_("(See Other) - 其他(如,负载均衡)")]),r("li",null,[r("code",null,"304"),_("(not modified)- 资源未更改(缓存)")]),r("li",null,[r("code",null,"400"),_(" (bad request)- 指代坏请求(如,参数错误)")]),r("li",null,[r("code",null,"404"),_(" (not found)- 资源不存在")]),r("li",null,[r("code",null,"406"),_(" (not acceptable)- 服务端不支持所需表示")]),r("li",null,[r("code",null,"500"),_(" (internal server error)- 通用错误响应")]),r("li",null,[r("code",null,"503"),_(" (Service Unavailable)- 服务端当前无法处理请求")])],-1),Kc={__name:"13",setup(t){return O(Tt),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Tt),12))),{default:A(()=>[Wc,Vc,Gc]),_:1},16))}},Yc=C(Kc,[["__file","/@slidev/slides/13.md"]]),Dt=b({}),Zc=b({layout:d(()=>Dt.layout),transition:d(()=>Dt.transition),class:d(()=>Dt.class),clicks:d(()=>Dt.clicks),name:d(()=>Dt.name),preload:d(()=>Dt.preload),slide:{index:13,content:"",note:"",title:"POST",level:3,noteHTML:"",raw:"",frontmatter:Dt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:226,id:13,no:14},__clicksContext:null,__preloaded:!1}),Xc=r("h3",null,"POST",-1),Jc=r("p",null,"使用服务端管理的(自动产生)的实例号创建资源,或创建子资源,部分更新资源,如果没有被修改,则不过更新资源(乐观锁)。不安全且不幂等。",-1),Qc=r("ul",null,[r("li",null,[r("code",null,"200"),_("(OK)- 如果现有资源已被更改")]),r("li",null,[r("code",null,"201"),_("(created)- 如果新资源被创建")]),r("li",null,[r("code",null,"202"),_("(accepted)- 已接受处理请求但尚未完成(异步处理)")]),r("li",null,[r("code",null,"301"),_("(Moved Permanently)- 资源的URI被更新")]),r("li",null,[r("code",null,"303"),_("(See Other)- 其他(如,负载均衡)")]),r("li",null,[r("code",null,"400"),_("(bad request)- 指代坏请求")]),r("li",null,[r("code",null,"404"),_(" (not found)- 资源不存在")]),r("li",null,[r("code",null,"406"),_(" (not acceptable)- 服务端不支持所需表示")]),r("li",null,[r("code",null,"409"),_(" (conflict)- 通用冲突")]),r("li",null,[r("code",null,"412"),_(" (Precondition Failed)- 前置条件失败(如执行条件更新时的冲突)")]),r("li",null,[r("code",null,"415"),_(" (unsupported media type)- 接受到的表示不受支持")]),r("li",null,[r("code",null,"500"),_(" (internal server error)- 通用错误响应")])],-1),th={__name:"14",setup(t){return O(Dt),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Dt),13))),{default:A(()=>[Xc,Jc,Qc]),_:1},16))}},eh=C(th,[["__file","/@slidev/slides/14.md"]]),Pt=b({}),sh=b({layout:d(()=>Pt.layout),transition:d(()=>Pt.transition),class:d(()=>Pt.class),clicks:d(()=>Pt.clicks),name:d(()=>Pt.name),preload:d(()=>Pt.preload),slide:{index:14,content:"",note:"",title:"PUT",level:3,noteHTML:"",raw:"",frontmatter:Pt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:245,id:14,no:15},__clicksContext:null,__preloaded:!1}),ih=r("h3",null,"PUT",-1),nh=r("p",null,"用客户端管理的实例号创建一个资源,通过替换的方式更新资源,如果未被修改,则更新资源(乐观锁)。不安全但幂等。",-1),rh=r("ul",null,[r("li",null,[r("code",null,"200"),_(" (OK)- 如果已存在资源被更改")]),r("li",null,[r("code",null,"201"),_(" (created)- 如果新资源被创建")]),r("li",null,[r("code",null,"301"),_("(Moved Permanently)- 资源的URI已更改")]),r("li",null,[r("code",null,"303"),_(" (See Other)- 其他(如,负载均衡)")]),r("li",null,[r("code",null,"400"),_(" (bad request)- 指代坏请求")]),r("li",null,[r("code",null,"404"),_(" (not found)- 资源不存在")]),r("li",null,[r("code",null,"406"),_(" (not acceptable)- 服务端不支持所需表示")]),r("li",null,[r("code",null,"409"),_(" (conflict)- 通用冲突")]),r("li",null,[r("code",null,"412"),_(" (Precondition Failed)- 前置条件失败(如执行条件更新时的冲突)")]),r("li",null,[r("code",null,"415"),_(" (unsupported media type)- 接受到的表示不受支持")]),r("li",null,[r("code",null,"500"),_(" (internal server error)- 通用错误响应")]),r("li",null,[r("code",null,"503"),_(" (Service Unavailable)- 服务当前无法处理请求")])],-1),ah={__name:"15",setup(t){return O(Pt),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Pt),14))),{default:A(()=>[ih,nh,rh]),_:1},16))}},lh=C(ah,[["__file","/@slidev/slides/15.md"]]),Lt=b({}),oh=b({layout:d(()=>Lt.layout),transition:d(()=>Lt.transition),class:d(()=>Lt.class),clicks:d(()=>Lt.clicks),name:d(()=>Lt.name),preload:d(()=>Lt.preload),slide:{index:15,content:"",note:"",title:"DELETE",level:3,noteHTML:"",raw:"",frontmatter:Lt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:264,id:15,no:16},__clicksContext:null,__preloaded:!1}),ch=r("h3",null,"DELETE",-1),hh=r("p",null,"删除资源。不安全但幂等。",-1),uh=r("ul",null,[r("li",null,[r("code",null,"200"),_(" (OK)- 资源已被删除")]),r("li",null,[r("code",null,"301"),_(" (Moved Permanently)- 资源的URI已更改")]),r("li",null,[r("code",null,"303"),_(" (See Other)- 其他,如负载均衡")]),r("li",null,[r("code",null,"400"),_(" (bad request)- 指代坏请求")]),r("li",null,[r("code",null,"404"),_(" (not found)- 资源不存在")]),r("li",null,[r("code",null,"409"),_(" (conflict)- 通用冲突")]),r("li",null,[r("code",null,"500"),_(" (internal server error)- 通用错误响应")]),r("li",null,[r("code",null,"503"),_(" (Service Unavailable)- 服务端当前无法处理请求")])],-1),dh={__name:"16",setup(t){return O(Lt),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Lt),15))),{default:A(()=>[ch,hh,uh]),_:1},16))}},ph=C(dh,[["__file","/@slidev/slides/16.md"]]),Ot=b({}),fh=b({layout:d(()=>Ot.layout),transition:d(()=>Ot.transition),class:d(()=>Ot.class),clicks:d(()=>Ot.clicks),name:d(()=>Ot.name),preload:d(()=>Ot.preload),slide:{index:16,content:"",note:"",title:"指导意义",level:1,noteHTML:"",raw:"",frontmatter:Ot,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:279,id:16,no:17},__clicksContext:null,__preloaded:!1}),gh=r("h1",null,"指导意义",-1),mh=r("br",null,null,-1),kh=r("p",null,"统一资源接口要求使用标准的HTTP方法对资源进行操作,所以URI只应该来表示资源的名称,而不应该包括资源的操作。 通俗来说,URI不应该使用动作来描述。例如,",-1),_h=r("ul",null,[r("li",null,[r("code",null,"POST /getUser?id=1"),_(" => "),r("code",null,"GET /User/1")]),r("li",null,[r("code",null,"GET /newUser"),_(" => "),r("code",null,"POST /User")]),r("li",null,[r("code",null,"GET /updateUser"),_(" => "),r("code",null,"PUT /User/1")]),r("li",null,[r("code",null,"GET /deleteUser?id=2"),_(" => "),r("code",null,"DELETE /User/2")])],-1),yh={__name:"17",setup(t){return O(Ot),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Ot),16))),{default:A(()=>[gh,mh,kh,_h]),_:1},16))}},vh=C(yh,[["__file","/@slidev/slides/17.md"]]),Bt=b({}),wh=b({layout:d(()=>Bt.layout),transition:d(()=>Bt.transition),class:d(()=>Bt.class),clicks:d(()=>Bt.clicks),name:d(()=>Bt.name),preload:d(()=>Bt.preload),slide:{index:17,content:"",note:"",title:"表现(Representation)/表述/表征",level:1,noteHTML:"",raw:"",frontmatter:Bt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:292,id:17,no:18},__clicksContext:null,__preloaded:!1}),bh=r("h1",null,"表现(Representation)/表述/表征",-1),xh=r("br",null,null,-1),$h={__name:"18",setup(t){return O(Bt),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Bt),17))),{default:A(()=>[bh,xh,_(" “资源”是一种信息实体,它可以有多种外在表现形式。我们把“资源”具体呈现出来的形式,叫做它的“表现层”(Representation) - 文本可以用txt格式表现,也可以用HTML格式、XML格式、JSON格式表现,甚至可以采用二进制格式 - 图片可以用JPG格式表现,也可以用PNG格式表现 ")]),_:1},16))}},Ah=C($h,[["__file","/@slidev/slides/18.md"]]),It=b({}),Sh=b({layout:d(()=>It.layout),transition:d(()=>It.transition),class:d(()=>It.class),clicks:d(()=>It.clicks),name:d(()=>It.name),preload:d(()=>It.preload),slide:{index:18,content:"",note:"",title:"资源表述",level:1,noteHTML:"",raw:"",frontmatter:It,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:301,id:18,no:19},__clicksContext:null,__preloaded:!1}),Mh=r("h1",null,"资源表述",-1),Ch=r("ul",null,[r("li",null,"URI只代表资源的实体,不代表它的形式。严格地说,有些网址最后的“.html”后缀名是不必要的,因为这个后缀名表示格式,属于“表现层”范畴,而URI应该只代表“资源”的位置。"),r("li",null,"资源的表述包括数据和描述数据的元数据,例如,HTTP头“Content-Type” 就是这样一个元数据属性"),r("li",null,"客户端可以通过Accept头请求一种特定格式的表述,服务端则通过Content-Type告诉客户端资源的表述形式")],-1),Eh={__name:"19",setup(t){return O(It),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(It),18))),{default:A(()=>[Mh,Ch]),_:1},16))}},Th=C(Eh,[["__file","/@slidev/slides/19.md"]]),Dh="/sa2024/05-restful/assets/07-rep-json-ClbUNhlO.png",Ph="/sa2024/05-restful/assets/07-rep-xml-ClkifFKW.png",Ft=b({layout:"two-cols"}),Lh=b({layout:d(()=>Ft.layout),transition:d(()=>Ft.transition),class:d(()=>Ft.class),clicks:d(()=>Ft.clicks),name:d(()=>Ft.name),preload:d(()=>Ft.preload),slide:{index:19,content:"",note:"",title:"资源表述",level:1,noteHTML:"",raw:"",frontmatter:Ft,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:308,id:19,no:20},__clicksContext:null,__preloaded:!1}),Oh=r("h1",null,"资源表述",-1),Bh=r("br",null,null,-1),Ih=r("img",{src:Dh,class:"m-5 h-80"},null,-1),Fh=r("p",null,[r("br"),r("br"),r("br")],-1),Nh=r("img",{src:Ph,class:"m-10 h-80"},null,-1),Rh={__name:"20",setup(t){return O(Ft),D(),(e,s)=>(S(),T(pt,P(L(v(B)(v(Ft),19))),{right:A(i=>[Fh,Nh]),default:A(()=>[Oh,Bh,_(" 同一资源 http://api.github.com/orgs/github 的不同表述 "),Ih]),_:1},16))}},Hh=C(Rh,[["__file","/@slidev/slides/20.md"]]),Uh="/sa2024/05-restful/assets/07-rep-notacc-DyXVbkS9.png",Nt=b({}),jh=b({layout:d(()=>Nt.layout),transition:d(()=>Nt.transition),class:d(()=>Nt.class),clicks:d(()=>Nt.clicks),name:d(()=>Nt.name),preload:d(()=>Nt.preload),slide:{index:20,content:"",note:"",title:"资源表述",level:1,noteHTML:"",raw:"",frontmatter:Nt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:329,id:20,no:21},__clicksContext:null,__preloaded:!1}),zh=r("h1",null,"资源表述",-1),qh=r("br",null,null,-1),Wh=r("p",null,"不支持的表述",-1),Vh=r("img",{src:Uh,class:"m-10 h-50"},null,-1),Gh={__name:"21",setup(t){return O(Nt),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Nt),20))),{default:A(()=>[zh,qh,Wh,Vh]),_:1},16))}},Kh=C(Gh,[["__file","/@slidev/slides/21.md"]]),Yh="/sa2024/05-restful/assets/07-link-next-CtEPac4P.png",Rt=b({layout:"two-cols"}),Zh=b({layout:d(()=>Rt.layout),transition:d(()=>Rt.transition),class:d(()=>Rt.class),clicks:d(()=>Rt.clicks),name:d(()=>Rt.name),preload:d(()=>Rt.preload),slide:{index:21,content:"",note:"",title:"资源链接",level:1,noteHTML:"",raw:"",frontmatter:Rt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:343,id:21,no:22},__clicksContext:null,__preloaded:!1}),Xh=r("h1",null,"资源链接",-1),Jh=r("ul",null,[r("li",null,"当你浏览Web网页时,从一个连接跳到一个页面,再从另一个连接跳到另外一个页面,就是利用了超媒体的概念: 把一个个把资源链接起来"),r("li",null,"同样,我们在表述格式里边加入链接来引导客户端")],-1),Qh=r("p",null,"在Link头告诉客户端怎么访问下一页和最后一页的记录;在响应体里用url来链接项目所有者和项目地址",-1),tu=r("p",null,[r("br"),r("br"),r("img",{src:Yh,class:"m-0 h-100"})],-1),eu={__name:"22",setup(t){return O(Rt),D(),(e,s)=>(S(),T(pt,P(L(v(B)(v(Rt),21))),{right:A(i=>[tu]),default:A(()=>[Xh,Jh,Qh]),_:1},16))}},su=C(eu,[["__file","/@slidev/slides/22.md"]]),iu="/sa2024/05-restful/assets/07-link-payment-e0MB_Ndz.png",Ht=b({}),nu=b({layout:d(()=>Ht.layout),transition:d(()=>Ht.transition),class:d(()=>Ht.class),clicks:d(()=>Ht.clicks),name:d(()=>Ht.name),preload:d(()=>Ht.preload),slide:{index:22,content:"",note:"",title:"资源链接",level:1,noteHTML:"",raw:"",frontmatter:Ht,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:361,id:22,no:23},__clicksContext:null,__preloaded:!1}),ru=r("h1",null,"资源链接",-1),au=r("br",null,null,-1),lu=r("p",null,"创建订单后通过链接引导客户端如何去付款",-1),ou=r("img",{src:iu,class:"m-10 h-60"},null,-1),cu={__name:"23",setup(t){return O(Ht),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Ht),22))),{default:A(()=>[ru,au,lu,ou]),_:1},16))}},hu=C(cu,[["__file","/@slidev/slides/23.md"]]),Ut=b({}),uu=b({layout:d(()=>Ut.layout),transition:d(()=>Ut.transition),class:d(()=>Ut.class),clicks:d(()=>Ut.clicks),name:d(()=>Ut.name),preload:d(()=>Ut.preload),slide:{index:23,content:"",note:"",title:"状态转移(State Transfer)",level:1,noteHTML:"",raw:"",frontmatter:Ut,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:373,id:23,no:24},__clicksContext:null,__preloaded:!1}),du=r("h1",null,"状态转移(State Transfer)",-1),pu=r("ul",null,[r("li",null,"状态应该区分应用状态和资源状态,客户端负责维护应用状态(购物车),而服务端维护资源状态(库存)。"),r("li",null,"客户端与服务端的交互必须是无状态的,并在每一次请求中包含处理该请求所需的一切信息。"),r("li",null,"服务端不需要在请求间保留应用状态,只有在接受到实际请求的时候,服务端才会关注应用状态。"),r("li",null,"这种无状态通信原则,使得服务端和中介能够理解独立的请求和响应。 在多次请求中,同一客户端也不再需要依赖于同一服务器,方便实现高可扩展和高可用性的服务端(下次讲)。")],-1),fu={__name:"24",setup(t){return O(Ut),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Ut),23))),{default:A(()=>[du,pu]),_:1},16))}},gu=C(fu,[["__file","/@slidev/slides/24.md"]]),mu={},ku={class:"slidev-layout center h-full grid place-content-center"},_u={class:"my-auto"};function yu(t,e){return S(),ge("div",ku,[r("div",_u,[me(t.$slots,"default")])])}const vu=C(mu,[["render",yu],["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/center.vue"]]),jt=b({layout:"center"}),wu=b({layout:d(()=>jt.layout),transition:d(()=>jt.transition),class:d(()=>jt.class),clicks:d(()=>jt.clicks),name:d(()=>jt.name),preload:d(()=>jt.preload),slide:{index:24,content:"",note:"",noteHTML:"",raw:"",frontmatter:jt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:381,id:24,no:25},__clicksContext:null,__preloaded:!1}),bu=r("br",null,null,-1),xu=r("div",{style:{"font-size":"38px"}},"状态转移(State Transfer): 客户端应用状态在服务端提供的超媒体的指引下发生变迁。服务端通过超媒体告诉客户端当前状态有哪些后续状态可以进入。",-1),$u={__name:"25",setup(t){return O(jt),D(),(e,s)=>(S(),T(vu,P(L(v(B)(v(jt),24))),{default:A(()=>[bu,xu]),_:1},16))}},Au=C($u,[["__file","/@slidev/slides/25.md"]]),Ie="/sa2024/05-restful/assets/07-scene-sVSmSOLF.png",zt=b({layout:"two-cols"}),Su=b({layout:d(()=>zt.layout),transition:d(()=>zt.transition),class:d(()=>zt.class),clicks:d(()=>zt.clicks),name:d(()=>zt.name),preload:d(()=>zt.preload),slide:{index:25,content:"",note:"",title:"一个完整的故事",level:1,noteHTML:"",raw:"",frontmatter:zt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:390,id:25,no:26},__clicksContext:null,__preloaded:!1}),Mu=r("h1",null,"一个完整的故事",-1),Cu=r("br",null,null,-1),Eu=r("p",null,"例如我订阅了一个人的博客,想要获取他发表的所有文章(这里“他发表的所有文章”就是一个资源Resource)。于是我就向他的服务发出请求,说“我要获取你发表的所有文章,最好是atom格式的”,这时候服务器向你返回了atom格式的文章列表第一页(这里“atom格式的文章列表”就是表征Representation)。",-1),Tu=r("img",{src:Ie,class:"m-10 h-100"},null,-1),Du={__name:"26",setup(t){return O(zt),D(),(e,s)=>(S(),T(pt,P(L(v(B)(v(zt),25))),{right:A(i=>[Tu]),default:A(()=>[Mu,Cu,Eu]),_:1},16))}},Pu=C(Du,[["__file","/@slidev/slides/26.md"]]),qt=b({layout:"two-cols"}),Lu=b({layout:d(()=>qt.layout),transition:d(()=>qt.transition),class:d(()=>qt.class),clicks:d(()=>qt.clicks),name:d(()=>qt.name),preload:d(()=>qt.preload),slide:{index:26,content:"",note:"",title:"一个完整的故事-2",level:1,noteHTML:"",raw:"",frontmatter:qt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:404,id:26,no:27},__clicksContext:null,__preloaded:!1}),Ou=r("h1",null,"一个完整的故事-2",-1),Bu=r("br",null,null,-1),Iu=r("p",null,"你看到了第一页的页尾,想要看第二页,这时候有趣的事情就来了。如果服务器记录了应用的状态(stateful),那么你只要向服务询问“我要看下一页”,那么服务器自然就会返回第二页。类似的,如果你当前在第二页,想服务器请求“我要看下一页”,那就会得到第三页。",-1),Fu=r("img",{src:Ie,class:"m-10 h-100"},null,-1),Nu={__name:"27",setup(t){return O(qt),D(),(e,s)=>(S(),T(pt,P(L(v(B)(v(qt),26))),{right:A(i=>[Fu]),default:A(()=>[Ou,Bu,Iu]),_:1},16))}},Ru=C(Nu,[["__file","/@slidev/slides/27.md"]]),Wt=b({layout:"two-cols"}),Hu=b({layout:d(()=>Wt.layout),transition:d(()=>Wt.transition),class:d(()=>Wt.class),clicks:d(()=>Wt.clicks),name:d(()=>Wt.name),preload:d(()=>Wt.preload),slide:{index:27,content:"",note:"",title:"一个完整的故事-3",level:1,noteHTML:"",raw:"",frontmatter:Wt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:418,id:27,no:28},__clicksContext:null,__preloaded:!1}),Uu=r("h1",null,"一个完整的故事-3",-1),ju=r("br",null,null,-1),zu=r("p",null,"但是REST的服务器恰恰是无状态的(stateless),服务器并没有保持你当前处于第几页,也就无法响应“下一页”这种具有状态性质的请求。因此客户端需要去维护当前应用的状态(application state),也就是“如何获取下一页资源”。",-1),qu=r("img",{src:Ie,class:"m-10 h-100"},null,-1),Wu={__name:"28",setup(t){return O(Wt),D(),(e,s)=>(S(),T(pt,P(L(v(B)(v(Wt),27))),{right:A(i=>[qu]),default:A(()=>[Uu,ju,zu]),_:1},16))}},Vu=C(Wu,[["__file","/@slidev/slides/28.md"]]),Vt=b({layout:"two-cols"}),Gu=b({layout:d(()=>Vt.layout),transition:d(()=>Vt.transition),class:d(()=>Vt.class),clicks:d(()=>Vt.clicks),name:d(()=>Vt.name),preload:d(()=>Vt.preload),slide:{index:28,content:"",note:"",title:"一个完整的故事-4",level:1,noteHTML:"",raw:"",frontmatter:Vt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:433,id:28,no:29},__clicksContext:null,__preloaded:!1}),Ku=r("h1",null,"一个完整的故事-4",-1),Yu=r("br",null,null,-1),Zu=r("p",null,"当然,“下一页资源”的业务逻辑必然是由服务端来提供。服务器在文章列表的atom表征中加入一个URI超链接(hyper link),指向下一页文章列表对应的资源。客户端就可以使用统一接口(Uniform Interface)的方式,从这个URI中获取到他想要的下一页文章列表资源。",-1),Xu=r("img",{src:Ie,class:"m-10 h-100"},null,-1),Ju={__name:"29",setup(t){return O(Vt),D(),(e,s)=>(S(),T(pt,P(L(v(B)(v(Vt),28))),{right:A(i=>[Xu]),default:A(()=>[Ku,Yu,Zu]),_:1},16))}},Qu=C(Ju,[["__file","/@slidev/slides/29.md"]]),Gt=b({layout:"two-cols"}),td=b({layout:d(()=>Gt.layout),transition:d(()=>Gt.transition),class:d(()=>Gt.class),clicks:d(()=>Gt.clicks),name:d(()=>Gt.name),preload:d(()=>Gt.preload),slide:{index:29,content:"",note:"",title:"一个完整的故事-5",level:1,noteHTML:"",raw:"",frontmatter:Gt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:447,id:29,no:30},__clicksContext:null,__preloaded:!1}),ed=r("h1",null,"一个完整的故事-5",-1),sd=r("br",null,null,-1),id=r("p",null,"上面的“能够进入下一页”就是应用的状态(State)。服务器把“能够进入下一页”这个状态以atom表征形式传输(Transfer)给客户端就是表征状态传输(REpresentational State Transfer)这个概念。",-1),nd=r("img",{src:Ie,class:"m-10 h-100"},null,-1),rd={__name:"30",setup(t){return O(Gt),D(),(e,s)=>(S(),T(pt,P(L(v(B)(v(Gt),29))),{right:A(i=>[nd]),default:A(()=>[ed,sd,id]),_:1},16))}},ad=C(rd,[["__file","/@slidev/slides/30.md"]]),Kt=b({}),ld=b({layout:d(()=>Kt.layout),transition:d(()=>Kt.transition),class:d(()=>Kt.class),clicks:d(()=>Kt.clicks),name:d(()=>Kt.name),preload:d(()=>Kt.preload),slide:{index:30,content:"",note:"",title:"Tutorial",level:1,noteHTML:"",raw:"",frontmatter:Kt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:463,id:30,no:31},__clicksContext:null,__preloaded:!1}),od=r("h1",null,"Tutorial",-1),cd=r("br",null,null,-1),hd=r("p",null,"Building REST services with Spring",-1),ud=r("p",null,[r("a",{href:"https://spring.io/guides/tutorials/rest/",target:"_blank",rel:"noopener"},"https://spring.io/guides/tutorials/rest/")],-1),dd={__name:"31",setup(t){return O(Kt),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Kt),30))),{default:A(()=>[od,cd,hd,ud]),_:1},16))}},pd=C(dd,[["__file","/@slidev/slides/31.md"]]),Yt=b({}),fd=b({layout:d(()=>Yt.layout),transition:d(()=>Yt.transition),class:d(()=>Yt.class),clicks:d(()=>Yt.clicks),name:d(()=>Yt.name),preload:d(()=>Yt.preload),slide:{index:31,content:"",note:"",title:"Demo",level:1,noteHTML:"",raw:"",frontmatter:Yt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:473,id:31,no:32},__clicksContext:null,__preloaded:!1}),gd=r("h1",null,"Demo",-1),md=r("br",null,null,-1),kd=r("p",null,"spring-projects/spring-hateoas-examples",-1),_d=r("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[r("code",{class:"language-xml"},[r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"dependency"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"groupId"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"org.springframework.boot"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"artifactId"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"spring-boot-starter-hateoas"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),_(` -`),r("span",{class:"line"}),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"dependency"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"groupId"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"org.projectlombok"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"artifactId"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"lombok"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),_(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")])])],-1),yd=r("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1GE411G7hu?p=4 ",-1),vd={__name:"32",setup(t){return O(Yt),D(),(e,s)=>(S(),T(G,P(L(v(B)(v(Yt),31))),{default:A(()=>[gd,md,kd,_d,yd]),_:1},16))}},wd=C(vd,[["__file","/@slidev/slides/32.md"]]),Y=[{path:"1",name:"page-1",component:Ha,meta:Ia},{path:"2",name:"page-2",component:Ja,meta:qa},{path:"3",name:"page-3",component:Co,meta:bo},{path:"4",name:"page-4",component:Ro,meta:Po},{path:"5",name:"page-5",component:Go,meta:Uo},{path:"6",name:"page-6",component:nc,meta:Yo},{path:"7",name:"page-7",component:fc,meta:rc},{path:"8",name:"page-8",component:yc,meta:gc},{path:"9",name:"page-9",component:Sc,meta:vc},{path:"10",name:"page-10",component:Lc,meta:Mc},{path:"11",name:"page-11",component:Nc,meta:Oc},{path:"12",name:"page-12",component:zc,meta:Rc},{path:"13",name:"page-13",component:Yc,meta:qc},{path:"14",name:"page-14",component:eh,meta:Zc},{path:"15",name:"page-15",component:lh,meta:sh},{path:"16",name:"page-16",component:ph,meta:oh},{path:"17",name:"page-17",component:vh,meta:fh},{path:"18",name:"page-18",component:Ah,meta:wh},{path:"19",name:"page-19",component:Th,meta:Sh},{path:"20",name:"page-20",component:Hh,meta:Lh},{path:"21",name:"page-21",component:Kh,meta:jh},{path:"22",name:"page-22",component:su,meta:Zh},{path:"23",name:"page-23",component:hu,meta:nu},{path:"24",name:"page-24",component:gu,meta:uu},{path:"25",name:"page-25",component:Au,meta:wu},{path:"26",name:"page-26",component:Pu,meta:Su},{path:"27",name:"page-27",component:Ru,meta:Lu},{path:"28",name:"page-28",component:Vu,meta:Hu},{path:"29",name:"page-29",component:Qu,meta:Gu},{path:"30",name:"page-30",component:ad,meta:td},{path:"31",name:"page-31",component:pd,meta:ld},{path:"32",name:"page-32",component:wd,meta:fd}].map(Hs),bd=[].map(Hs),We=[{name:"play",path:"/",component:()=>Pe(()=>import("./slidev/play-DSehltPn.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])),children:[...Y,...bd]},{name:"print",path:"/print",component:()=>Pe(()=>import("./slidev/print-2cNOs_aZ.js"),__vite__mapDeps([11,1,4,9,3,6,7,12]))},{path:"",redirect:{path:"/1"}},{path:"/:pathMatch(.*)",redirect:{path:"/1"}}];{let t=function(e){if(!N.remote||N.remote===e.query.password)return!0;if(N.remote&&e.query.password===void 0){const s=prompt("Enter password");if(N.remote===s)return!0}return e.params.no?{path:`/${e.params.no}`}:{path:""}};We.push({path:"/presenter/print",component:()=>Pe(()=>import("./slidev/print-Ss9g6xiG.js"),__vite__mapDeps([13,1,14,15,3,6,7]))}),We.push({name:"presenter",path:"/presenter/:no",component:()=>Pe(()=>import("./slidev/presenter-BJ0i69ip.js"),__vite__mapDeps([16,3,1,2,4,5,6,7,8,14,15,17,18,19])),beforeEnter:t}),We.push({path:"/presenter",redirect:{path:"/presenter/1"}})}const nt=Qn({history:tr("/sa2024/05-restful/"),routes:We}),fn=U(!1);function xd(t,e,{mode:s="replace"}={}){return d({get(){const i=nt.currentRoute.value.query[t];return i==null?e??null:Array.isArray(i)?i.filter(Boolean):i},set(i){De(()=>{nt[v(s)]({query:{...nt.currentRoute.value.query,[t]:i}})})}})}var $d=Object.defineProperty,ki=Object.getOwnPropertySymbols,Ad=Object.prototype.hasOwnProperty,Sd=Object.prototype.propertyIsEnumerable,_i=(t,e,s)=>e in t?$d(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,Ss=(t,e)=>{for(var s in e||(e={}))Ad.call(e,s)&&_i(t,s,e[s]);if(ki)for(var s of ki(e))Sd.call(e,s)&&_i(t,s,e[s]);return t},Md=()=>({emit(t,...e){for(let s=0,i=this.events[t]||[],n=i.length;s{var i;this.events[t]=(i=this.events[t])==null?void 0:i.filter(n=>e!==n)}}});function yi(t,e,s,i=n=>n){return t*i(.5-e*(.5-s))}function Cd(t){return[-t[0],-t[1]]}function dt(t,e){return[t[0]+e[0],t[1]+e[1]]}function at(t,e){return[t[0]-e[0],t[1]-e[1]]}function ut(t,e){return[t[0]*e,t[1]*e]}function Ed(t,e){return[t[0]/e,t[1]/e]}function xe(t){return[t[1],-t[0]]}function vi(t,e){return t[0]*e[0]+t[1]*e[1]}function Td(t,e){return t[0]===e[0]&&t[1]===e[1]}function Dd(t){return Math.hypot(t[0],t[1])}function Pd(t){return t[0]*t[0]+t[1]*t[1]}function wi(t,e){return Pd(at(t,e))}function gn(t){return Ed(t,Dd(t))}function Ld(t,e){return Math.hypot(t[1]-e[1],t[0]-e[0])}function $e(t,e,s){let i=Math.sin(s),n=Math.cos(s),a=t[0]-e[0],l=t[1]-e[1],o=a*n-l*i,c=a*i+l*n;return[o+e[0],c+e[1]]}function Ms(t,e,s){return dt(t,ut(at(e,t),s))}function bi(t,e,s){return dt(t,ut(e,s))}var{min:de,PI:Od}=Math,xi=.275,Ae=Od+1e-4;function Bd(t,e={}){let{size:s=16,smoothing:i=.5,thinning:n=.5,simulatePressure:a=!0,easing:l=E=>E,start:o={},end:c={},last:h=!1}=e,{cap:u=!0,easing:p=E=>E*(2-E)}=o,{cap:g=!0,easing:f=E=>--E*E*E+1}=c;if(t.length===0||s<=0)return[];let m=t[t.length-1].runningLength,k=o.taper===!1?0:o.taper===!0?Math.max(s,m):o.taper,y=c.taper===!1?0:c.taper===!0?Math.max(s,m):c.taper,w=Math.pow(s*i,2),$=[],M=[],j=t.slice(0,10).reduce((E,W)=>{let F=W.pressure;if(a){let R=de(1,W.distance/s),cs=de(1,1-R);F=de(1,E+(cs-E)*(R*xi))}return(E+F)/2},t[0].pressure),H=yi(s,n,t[t.length-1].pressure,l),z,ot=t[0].vector,K=t[0].point,st=K,ft=K,gt=st,X=!1;for(let E=0;Ew)&&($.push(ft),K=ft),gt=dt(F,ii),(E<=1||wi(st,gt)>w)&&(M.push(gt),st=gt),j=W,ot=R}let I=t[0].point.slice(0,2),q=t.length>1?t[t.length-1].point.slice(0,2):dt(t[0].point,[1,1]),Xt=[],ct=[];if(t.length===1){if(!(k||y)||h){let E=bi(I,gn(xe(at(I,q))),-(z||H)),W=[];for(let F=1/13,R=F;R<=1;R+=F)W.push($e(E,I,Ae*2*R));return W}}else{if(!(k||y&&t.length===1))if(u)for(let W=1/13,F=W;F<=1;F+=W){let R=$e(M[0],I,Ae*F);Xt.push(R)}else{let W=at($[0],M[0]),F=ut(W,.5),R=ut(W,.51);Xt.push(at(I,F),at(I,R),dt(I,R),dt(I,F))}let E=xe(Cd(t[t.length-1].vector));if(y||k&&t.length===1)ct.push(q);else if(g){let W=bi(q,E,H);for(let F=1/29,R=F;R<1;R+=F)ct.push($e(W,q,Ae*3*R))}else ct.push(dt(q,ut(E,H)),dt(q,ut(E,H*.99)),at(q,ut(E,H*.99)),at(q,ut(E,H)))}return $.concat(ct,M.reverse(),Xt)}function Id(t,e={}){var s;let{streamline:i=.5,size:n=16,last:a=!1}=e;if(t.length===0)return[];let l=.15+(1-i)*.85,o=Array.isArray(t[0])?t:t.map(({x:f,y:m,pressure:k=.5})=>[f,m,k]);if(o.length===2){let f=o[1];o=o.slice(0,-1);for(let m=1;m<5;m++)o.push(Ms(o[0],f,m/4))}o.length===1&&(o=[...o,[...dt(o[0],[1,1]),...o[0].slice(2)]]);let c=[{point:[o[0][0],o[0][1]],pressure:o[0][2]>=0?o[0][2]:.25,vector:[1,1],distance:0,runningLength:0}],h=!1,u=0,p=c[0],g=o.length-1;for(let f=1;f=0?o[f][2]:.5,vector:gn(at(p.point,m)),distance:k,runningLength:u},c.push(p)}return c[0].vector=((s=c[1])==null?void 0:s.vector)||[0,0],c}function Fd(t,e={}){return Bd(Id(t,e),e)}function Ze(t,e){return t-e}function Nd(t){return t<0?-1:1}function Xe(t){return[Math.abs(t),Nd(t)]}function mn(){const t=()=>((1+Math.random())*65536|0).toString(16).substring(1);return`${t()+t()}-${t()}-${t()}-${t()}-${t()}${t()}${t()}`}var Rd=2,kt=Rd,ye=class{constructor(t){this.drauu=t,this.event=void 0,this.point=void 0,this.start=void 0,this.el=null}onSelected(t){}onUnselected(){}onStart(t){}onMove(t){return!1}onEnd(t){}get brush(){return this.drauu.brush}get shiftPressed(){return this.drauu.shiftPressed}get altPressed(){return this.drauu.altPressed}get svgElement(){return this.drauu.el}getMousePosition(t){var e,s,i;const n=this.drauu.el,a=(e=this.drauu.options.coordinateScale)!=null?e:1,l=(s=this.drauu.options.offset)!=null?s:{x:0,y:0};if(this.drauu.options.coordinateTransform===!1){const o=this.drauu.el.getBoundingClientRect();return{x:(t.pageX-o.left+l.x)*a,y:(t.pageY-o.top+l.y)*a,pressure:t.pressure}}else{const o=this.drauu.svgPoint;o.x=t.clientX+l.x,o.y=t.clientY+l.y;const c=o.matrixTransform((i=n.getScreenCTM())==null?void 0:i.inverse());return{x:c.x*a,y:c.y*a,pressure:t.pressure}}}createElement(t,e){var s;const i=document.createElementNS("http://www.w3.org/2000/svg",t),n=e?Ss(Ss({},this.brush),e):this.brush;return i.setAttribute("fill",(s=n.fill)!=null?s:"transparent"),i.setAttribute("stroke",n.color),i.setAttribute("stroke-width",n.size.toString()),i.setAttribute("stroke-linecap","round"),n.dasharray&&i.setAttribute("stroke-dasharray",n.dasharray),i}attr(t,e){this.el.setAttribute(t,typeof e=="string"?e:e.toFixed(kt))}_setEvent(t){this.event=t,this.point=this.getMousePosition(t)}_eventDown(t){return this._setEvent(t),this.start=this.point,this.onStart(this.point)}_eventMove(t){return this._setEvent(t),this.onMove(this.point)}_eventUp(t){return this._setEvent(t),this.onEnd(this.point)}},Hd=class kn extends ye{constructor(){super(...arguments),this.points=[]}onStart(e){return this.el=document.createElementNS("http://www.w3.org/2000/svg","path"),this.points=[e],this.attr("fill",this.brush.color),this.attr("d",this.getSvgData(this.points)),this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&this.points.push(e),this.attr("d",this.getSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!!e}getSvgData(e){return kn.getSvgData(e,this.brush)}static getSvgData(e,s){const i=Fd(e,Ss({size:s.size,thinning:.9,simulatePressure:!1,start:{taper:5},end:{taper:5}},s.stylusOptions));if(!i.length)return"";const n=i.reduce((a,[l,o],c,h)=>{const[u,p]=h[(c+1)%h.length];return a.push(l,o,(l+u)/2,(o+p)/2),a},["M",...i[0],"Q"]);return n.push("Z"),n.map(a=>typeof a=="number"?a.toFixed(2):a).join(" ")}},Ud=class extends ye{onStart(t){return this.el=this.createElement("ellipse"),this.attr("cx",t.x),this.attr("cy",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=Xe(t.x-this.start.x),[i,n]=Xe(t.y-this.start.y);if(this.shiftPressed){const a=Math.min(e,i);e=a,i=a}if(this.altPressed)this.attr("cx",this.start.x),this.attr("cy",this.start.y),this.attr("rx",e),this.attr("ry",i);else{const[a,l]=[this.start.x,this.start.x+e*s].sort(Ze),[o,c]=[this.start.y,this.start.y+i*n].sort(Ze);this.attr("cx",(a+l)/2),this.attr("cy",(o+c)/2),this.attr("rx",(l-a)/2),this.attr("ry",(c-o)/2)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function _n(t,e){const s=document.createElementNS("http://www.w3.org/2000/svg","defs"),i=document.createElementNS("http://www.w3.org/2000/svg","marker"),n=document.createElementNS("http://www.w3.org/2000/svg","path");return n.setAttribute("fill",e),i.setAttribute("id",t),i.setAttribute("viewBox","0 -5 10 10"),i.setAttribute("refX","5"),i.setAttribute("refY","0"),i.setAttribute("markerWidth","4"),i.setAttribute("markerHeight","4"),i.setAttribute("orient","auto"),n.setAttribute("d","M0,-5L10,0L0,5"),i.appendChild(n),s.appendChild(i),s}var jd=class extends ye{onStart(t){if(this.el=this.createElement("line",{fill:"transparent"}),this.attr("x1",t.x),this.attr("y1",t.y),this.attr("x2",t.x),this.attr("y2",t.y),this.brush.arrowEnd){const e=mn(),s=document.createElementNS("http://www.w3.org/2000/svg","g");return s.append(_n(e,this.brush.color)),s.append(this.el),this.attr("marker-end",`url(#${e})`),s}return this.el}onMove(t){if(!this.el)return!1;let{x:e,y:s}=t;if(this.shiftPressed){const i=t.x-this.start.x,n=t.y-this.start.y;if(n!==0){let a=i/n;a=Math.round(a),Math.abs(a)<=1?(e=this.start.x+n*a,s=this.start.y+n):(e=this.start.x+i,s=this.start.y)}}return this.altPressed?(this.attr("x1",this.start.x*2-e),this.attr("y1",this.start.y*2-s),this.attr("x2",e),this.attr("y2",s)):(this.attr("x1",this.start.x),this.attr("y1",this.start.y),this.attr("x2",e),this.attr("y2",s)),!0}onEnd(){const t=this.el;return this.el=null,!(!t||t.getTotalLength()<5)}},zd=class extends ye{onStart(t){return this.el=this.createElement("rect"),this.brush.cornerRadius&&(this.attr("rx",this.brush.cornerRadius),this.attr("ry",this.brush.cornerRadius)),this.attr("x",t.x),this.attr("y",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=Xe(t.x-this.start.x),[i,n]=Xe(t.y-this.start.y);if(this.shiftPressed){const a=Math.min(e,i);e=a,i=a}if(this.altPressed)this.attr("x",this.start.x-e),this.attr("y",this.start.y-i),this.attr("width",e*2),this.attr("height",i*2);else{const[a,l]=[this.start.x,this.start.x+e*s].sort(Ze),[o,c]=[this.start.y,this.start.y+i*n].sort(Ze);this.attr("x",a),this.attr("y",o),this.attr("width",l-a),this.attr("height",c-o)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function qd(t,e){const s=t.x-e.x,i=t.y-e.y;return s*s+i*i}function Wd(t,e,s){let i=e.x,n=e.y,a=s.x-i,l=s.y-n;if(a!==0||l!==0){const o=((t.x-i)*a+(t.y-n)*l)/(a*a+l*l);o>1?(i=s.x,n=s.y):o>0&&(i+=a*o,n+=l*o)}return a=t.x-i,l=t.y-n,a*a+l*l}function Vd(t,e){let s=t[0];const i=[s];let n;for(let a=1,l=t.length;ae&&(i.push(n),s=n);return s!==n&&n&&i.push(n),i}function Cs(t,e,s,i,n){let a=i,l=0;for(let o=e+1;oa&&(l=o,a=c)}a>i&&(l-e>1&&Cs(t,e,l,i,n),n.push(t[l]),s-l>1&&Cs(t,l,s,i,n))}function Gd(t,e){const s=t.length-1,i=[t[0]];return Cs(t,0,s,e,i),i.push(t[s]),i}function $i(t,e,s=!1){if(t.length<=2)return t;const i=e!==void 0?e*e:1;return t=s?t:Vd(t,i),t=Gd(t,i),t}var Kd=class ne extends ye{constructor(){super(...arguments),this.points=[],this.count=0}onStart(e){if(this.el=this.createElement("path",{fill:"transparent"}),this.points=[e],this.brush.arrowEnd){this.arrowId=mn();const s=_n(this.arrowId,this.brush.color);this.el.appendChild(s)}return this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&(this.points.push(e),this.count+=1),this.count>5&&(this.points=$i(this.points,1,!0),this.count=0),this.attr("d",ne.toSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!(!e||(e.setAttribute("d",ne.toSvgData($i(this.points,1,!0))),!e.getTotalLength()))}static line(e,s){const i=s.x-e.x,n=s.y-e.y;return{length:Math.sqrt(i**2+n**2),angle:Math.atan2(n,i)}}static controlPoint(e,s,i,n){const a=s||e,l=i||e,o=.2,c=ne.line(a,l),h=c.angle+(n?Math.PI:0),u=c.length*o,p=e.x+Math.cos(h)*u,g=e.y+Math.sin(h)*u;return{x:p,y:g}}static bezierCommand(e,s,i){const n=ne.controlPoint(i[s-1],i[s-2],e),a=ne.controlPoint(e,i[s-1],i[s+1],!0);return`C ${n.x.toFixed(kt)},${n.y.toFixed(kt)} ${a.x.toFixed(kt)},${a.y.toFixed(kt)} ${e.x.toFixed(kt)},${e.y.toFixed(kt)}`}static toSvgData(e){return e.reduce((s,i,n,a)=>n===0?`M ${i.x.toFixed(kt)},${i.y.toFixed(kt)}`:`${s} ${ne.bezierCommand(i,n,a)}`,"")}},Yd=class extends ye{constructor(){super(...arguments),this.pathSubFactor=20,this.pathFragments=[],this._erased=[]}onSelected(t){const e=(s,i)=>{if(s&&s.length)for(let n=0;nt.forEach(e=>this.drauu._restoreNode(e)),redo:()=>t.forEach(e=>this.drauu._removeNode(e))}}checkAndEraseElement(){if(this.pathFragments.length)for(let t=0;t!this._erased.includes(t.element))),this._erased.length>0}lineLineIntersect(t,e){const s=t.x1,i=t.x2,n=e.x1,a=e.x2,l=t.y1,o=t.y2,c=e.y1,h=e.y2,u=(s-i)*(c-h)-(l-o)*(n-a),p=(s*o-l*i)*(n-a)-(s-i)*(n*h-c*a),g=(s*o-l*i)*(c-h)-(l-o)*(n*h-c*a),f=(m,k,y)=>m>=k&&m<=y?!0:m>=y&&m<=k;if(u===0)return!1;{const m={x:p/u,y:g/u};return f(m.x,s,i)&&f(m.y,l,o)&&f(m.x,n,a)&&f(m.y,c,h)}}};function Zd(t){return{draw:new Kd(t),stylus:new Hd(t),line:new jd(t),rectangle:new zd(t),ellipse:new Ud(t),eraseLine:new Yd(t)}}var Xd=class{constructor(t={}){this.options=t,this.el=null,this.svgPoint=null,this.eventEl=null,this.shiftPressed=!1,this.altPressed=!1,this.drawing=!1,this._emitter=Md(),this._originalPointerId=null,this._models=Zd(this),this._opStack=[],this._opIndex=0,this._disposables=[],this._elements=[],this.options.brush||(this.options.brush={color:"black",size:3,mode:"stylus"}),t.el&&this.mount(t.el,t.eventTarget,t.window)}get model(){return this._models[this.mode]}get mounted(){return!!this.el}get mode(){return this.options.brush.mode||"stylus"}set mode(t){this._models[this.mode].onUnselected(),this.options.brush.mode=t,this.model.onSelected(this.el)}get brush(){return this.options.brush}set brush(t){this.options.brush=t}resolveSelector(t){return typeof t=="string"?document.querySelector(t):t||null}mount(t,e,s=window){if(this.el)throw new Error("[drauu] already mounted, unmount previous target first");if(this.el=this.resolveSelector(t),!this.el)throw new Error("[drauu] target element not found");if(this.el.tagName.toLocaleLowerCase()!=="svg")throw new Error("[drauu] can only mount to a SVG element");if(!this.el.createSVGPoint)throw new Error("[drauu] SVG element must be create by document.createElementNS('http://www.w3.org/2000/svg', 'svg')");this.svgPoint=this.el.createSVGPoint();const i=this.resolveSelector(e)||this.el,n=this.eventStart.bind(this),a=this.eventMove.bind(this),l=this.eventEnd.bind(this),o=this.eventKeyboard.bind(this);i.addEventListener("pointerdown",n,{passive:!1}),s.addEventListener("pointermove",a,{passive:!1}),s.addEventListener("pointerup",l,{passive:!1}),s.addEventListener("pointercancel",l,{passive:!1}),s.addEventListener("keydown",o,!1),s.addEventListener("keyup",o,!1),this._disposables.push(()=>{i.removeEventListener("pointerdown",n),s.removeEventListener("pointermove",a),s.removeEventListener("pointerup",l),s.removeEventListener("pointercancel",l),s.removeEventListener("keydown",o,!1),s.removeEventListener("keyup",o,!1)}),this._emitter.emit("mounted")}unmount(){this._disposables.forEach(t=>t()),this._disposables.length=0,this._elements.length=0,this.el=null,this._emitter.emit("unmounted")}on(t,e){return this._emitter.on(t,e)}undo(){return!this.canUndo()||this.drawing?!1:(this._opStack[--this._opIndex].undo(),this._emitter.emit("changed"),!0)}redo(){return!this.canRedo()||this.drawing?!1:(this._opStack[this._opIndex++].redo(),this._emitter.emit("changed"),!0)}canRedo(){return this._opIndex0}eventMove(t){!this.acceptsInput(t)||!this.drawing||this.model._eventMove(t)&&(t.stopPropagation(),t.preventDefault(),this._emitter.emit("changed"))}eventStart(t){this.acceptsInput(t)&&(t.stopPropagation(),t.preventDefault(),this._currentNode&&this.cancel(),this.drawing=!0,this._originalPointerId=t.pointerId,this._emitter.emit("start"),this._currentNode=this.model._eventDown(t),this._currentNode&&this.mode!=="eraseLine"&&this.el.appendChild(this._currentNode),this._emitter.emit("changed"))}eventEnd(t){if(!this.acceptsInput(t)||!this.drawing)return;const e=this.model._eventUp(t);if(!e)this.cancel();else if(e===!0){const s=this._currentNode;this._appendNode(s),this.commit({undo:()=>this._removeNode(s),redo:()=>this._restoreNode(s)})}else this.commit(e);this.drawing=!1,this._emitter.emit("end"),this._emitter.emit("changed"),this._originalPointerId=null}acceptsInput(t){return(!this.options.acceptsInputTypes||this.options.acceptsInputTypes.includes(t.pointerType))&&!(this._originalPointerId&&this._originalPointerId!==t.pointerId)}eventKeyboard(t){this.shiftPressed===t.shiftKey&&this.altPressed===t.altKey||(this.shiftPressed=t.shiftKey,this.altPressed=t.altKey,this.model.point&&this.model.onMove(this.model.point)&&this._emitter.emit("changed"))}commit(t){this._opStack.length=this._opIndex,this._opStack.push(t),this._opIndex++;const e=this._currentNode;this._currentNode=void 0,this._emitter.emit("committed",e)}clear(){this._opStack.length=0,this._opIndex=0,this.cancel(),this.el.innerHTML="",this._emitter.emit("changed")}cancel(){this._currentNode&&(this.el.removeChild(this._currentNode),this._currentNode=void 0,this._emitter.emit("canceled"))}dump(){return this.el.innerHTML}load(t){this.clear(),this.el.innerHTML=t}_appendNode(t){const e=this._elements.at(-1);e?e.after(t):this.el.append(t);const s=this._elements.push(t)-1;t.dataset.drauu_index=s.toString()}_removeNode(t){t.remove(),this._elements[+t.dataset.drauu_index]=null}_restoreNode(t){const e=+t.dataset.drauu_index;this._elements[e]=t;for(let s=e-1;s>=0;s--){const i=this._elements[s];if(i){i.after(t);return}}this.el.prepend(t)}};function Jd(t){return new Xd(t)}const bf=U(!1),xf=U(!1),$f=U(!1),Qd=U(!1),Af=U(!0),Sf=er({xs:460,...ar}),Ai=sr(),Mf=ir(),Cf=d(()=>Ai.height.value-Ai.width.value/Zi>120),Ef=nr(rs?document.body:null),Es=rr(),tp=d(()=>{var t,e;return["INPUT","TEXTAREA"].includes(((t=Es.value)==null?void 0:t.tagName)||"")||((e=Es.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),Tf=d(()=>{var t;return["BUTTON","A"].includes(((t=Es.value)==null?void 0:t.tagName)||"")});et("slidev-camera","default",{listenToStorageChanges:!1});et("slidev-mic","default",{listenToStorageChanges:!1});const Df=et("slidev-scale",0),Pf=et("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),Lf=et("slidev-show-editor",!1,{listenToStorageChanges:!1}),Of=et("slidev-editor-vertical",!1,{listenToStorageChanges:!1});et("slidev-editor-width",rs?window.innerWidth*.4:318,{listenToStorageChanges:!1});et("slidev-editor-height",rs?window.innerHeight*.4:300,{listenToStorageChanges:!1});const Je=et("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),Re=et("slidev-presenter-layout",1,{listenToStorageChanges:!1});function Bf(){Re.value=Re.value+1,Re.value>2&&(Re.value=1)}function If(){Je.value=Math.min(2,Je.value+.1)}function Ff(){Je.value=Math.max(.5,Je.value-.1)}const Nf=ji(Qd),Ts=["#ff595e","#ffca3a","#8ac926","#1982c4","#6a4c93","#ffffff","#000000"],Ds=et("slidev-drawing-enabled",!1),Rf=et("slidev-drawing-pinned",!1),ep=U(!1),sp=U(!1),ip=U(!1),Qe=U(!1),ts=lr(et("slidev-drawing-brush",{color:Ts[0],size:4,mode:"stylus"})),Si=U("stylus"),yn=d(()=>N.drawings.syncAll||le.value);let Oe=!1;const Se=d({get(){return Si.value},set(t){Si.value=t,t==="arrow"?(Z.mode="line",ts.arrowEnd=!0):(Z.mode=t,ts.arrowEnd=!1)}}),np=b({brush:ts,acceptsInputTypes:d(()=>Ds.value&&(!N.drawings.presenterOnly||le.value)?void 0:["pen"]),coordinateTransform:!1}),Z=Hs(Jd(np));function rp(){Z.clear(),yn.value&&Qi(V.value,"")}function Ws(){var t;sp.value=Z.canRedo(),ep.value=Z.canUndo(),ip.value=!!((t=Z.el)!=null&&t.children.length)}function ap(t){Oe=!0;const e=tn[t||V.value];e!=null?Z.load(e):Z.clear(),Ws(),Oe=!1}Z.on("changed",()=>{if(Ws(),!Oe){const t=Z.dump(),e=V.value;(tn[e]||"")!==t&&yn.value&&Qi(e,Z.dump())}});wa(t=>{Oe=!0,t[V.value]!=null&&Z.load(t[V.value]||""),Oe=!1,Ws()});De(()=>{_e(V,()=>{Z.mounted&&ap()},{immediate:!0})});Z.on("start",()=>Qe.value=!0);Z.on("end",()=>Qe.value=!1);window.addEventListener("keydown",t=>{if(!Ds.value||tp.value)return;const e=!t.ctrlKey&&!t.altKey&&!t.shiftKey&&!t.metaKey;let s=!0;t.code==="KeyZ"&&(t.ctrlKey||t.metaKey)?t.shiftKey?Z.redo():Z.undo():t.code==="Escape"?Ds.value=!1:t.code==="KeyL"&&e?Se.value="line":t.code==="KeyA"&&e?Se.value="arrow":t.code==="KeyS"&&e?Se.value="stylus":t.code==="KeyR"&&e?Se.value="rectangle":t.code==="KeyE"&&e?Se.value="ellipse":t.code==="KeyC"&&e?rp():t.code.startsWith("Digit")&&e&&+t.code[5]<=Ts.length?ts.color=Ts[+t.code[5]-1]:s=!1,s&&(t.preventDefault(),t.stopPropagation())},!1);const Ps=U(0);De(()=>{nt.afterEach(async()=>{await De(),Ps.value+=1})});const vn=U(0),as=U(0),mt=d(()=>nt.currentRoute.value),lp=d(()=>mt.value.query.print!==void 0),op=d(()=>mt.value.query.print==="clicks"),Hf=d(()=>mt.value.query.embedded!==void 0),le=d(()=>mt.value.path.startsWith("/presenter")),cp=d(()=>mt.value.path.startsWith("/notes")),hp=d(()=>mt.value.query.password),Uf=d(()=>!le.value&&(!N.remote||hp.value===N.remote)),Mi=xd("clicks","0"),ke=d({get(){if(te.value.disabled)return $s;let t=+(Mi.value||0);return Number.isNaN(t)&&(t=0),t},set(t){Mi.value=t.toString()}}),jf=d(()=>Y.length),up=d(()=>mt.value.path),V=d(()=>Number.parseInt(up.value.split(/\//g).slice(-1)[0])||1);d(()=>ls(V.value));const Zt=d(()=>Y.find(t=>t.path===`${V.value}`)),zf=d(()=>{var t,e,s;return(s=(e=(t=Zt.value)==null?void 0:t.meta)==null?void 0:e.slide)==null?void 0:s.id});d(()=>{var t,e;return((e=(t=Zt.value)==null?void 0:t.meta)==null?void 0:e.layout)||(V.value===1?"cover":"default")});const qf=d(()=>Y.find(t=>t.path===`${Math.min(Y.length,V.value+1)}`)),dp=d(()=>Y.find(t=>t.path===`${Math.max(1,V.value-1)}`)),te=d(()=>Ea(Zt.value)),Vs=d(()=>te.value.current),Be=d(()=>te.value.total),Wf=d(()=>V.valueV.value>1||Vs.value>0),pp=d(()=>Y.filter(t=>{var e,s;return(s=(e=t.meta)==null?void 0:e.slide)==null?void 0:s.title}).reduce((t,e)=>(Zs(t,e),t),[])),fp=d(()=>Xs(pp.value,Zt.value));d(()=>Js(fp.value));const Gf=d(()=>yp(vn.value,Zt.value,dp.value));_e(Zt,(t,e)=>{vn.value=Number(t==null?void 0:t.path)-Number(e==null?void 0:e.path)});async function wn(){as.value=1,Be.value<=ke.value?await Gs():ke.value+=1}async function bn(){as.value=-1,ke.value<=0?await Ks():ke.value-=1}function ls(t){return le.value?`/presenter/${t}`:`/${t}`}async function Gs(){as.value=1,V.value.3||a>75?s.value==="left"?wn():bn():(l/window.innerHeight>.4||l>200)&&(s.value==="down"?Ks():Gs())}})}async function gp(){const{saveAs:t}=await Pe(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),__vite__mapDeps([]));t(typeof N.download=="string"?N.download:N.exportFilename?`${N.exportFilename}.pdf`:"/sa2024/05-restful/slidev-exported.pdf",`${N.title}.pdf`)}async function mp(t){var e,s;if(t==null){const i=(s=(e=Zt.value)==null?void 0:e.meta)==null?void 0:s.slide;if(!i)return!1;t=`${i.filepath}:${i.start}`}return await fetch(`/__open-in-editor?file=${encodeURIComponent(t)}`),!0}function Zs(t,e,s=1){var n,a,l,o,c,h,u;const i=(a=(n=e.meta)==null?void 0:n.slide)==null?void 0:a.level;i&&i>s&&t.length>0?Zs(t[t.length-1].children,e,s+1):t.push({children:[],level:s,path:e.path,hideInToc:!!((c=(o=(l=e.meta)==null?void 0:l.slide)==null?void 0:o.frontmatter)!=null&&c.hideInToc),title:(u=(h=e.meta)==null?void 0:h.slide)==null?void 0:u.title})}function Xs(t,e,s=!1,i){return t.map(n=>{const a={...n,active:n.path===(e==null?void 0:e.path),hasActiveParent:s};return a.children.length>0&&(a.children=Xs(a.children,e,a.active||a.hasActiveParent,a)),i&&(a.active||a.activeParent)&&(i.activeParent=!0),a})}function Js(t,e=1){return t.filter(s=>!s.hideInToc).map(s=>({...s,children:Js(s.children,e+1)}))}const kp={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function _p(t,e=!1){if(!t||(typeof t=="string"&&(t={name:t}),!t.name))return;let s=t.name.includes("|")?t.name:kp[t.name]||t.name;if(s.includes("|")){const[i,n]=s.split("|").map(a=>a.trim());s=e?n:i}if(s)return{...t,name:s}}function yp(t,e,s){var n,a;let i=t>0?(n=s==null?void 0:s.meta)==null?void 0:n.transition:(a=e==null?void 0:e.meta)==null?void 0:a.transition;return i||(i=N.transition),_p(i,t<0)}function vp(){const t=N.titleTemplate.replace("%s",N.title||"Slidev");ra({title:t,htmlAttrs:N.htmlAttrs}),ma(`${t} - shared`),va(`${t} - drawings`);const e=`${location.origin}_${en()}`;function s(){cp.value||!le.value&&!Ma.includes(location.host.split(":")[0])||(le.value?(we("page",+V.value),we("clicks",te.value.current)):(we("viewerPage",+V.value),we("viewerClicks",te.value.current)),we("lastUpdate",{id:e,type:le.value?"presenter":"viewer",time:new Date().getTime()}))}nt.afterEach(s),_e(te,s),ka(i=>{var a;nt.currentRoute.value.path.match(/^\/(\d+|presenter)\/?/)&&((a=i.lastUpdate)==null?void 0:a.type)==="presenter"&&(+i.page!=+V.value||+te.value.current!=+i.clicks)&&(fn.value=!1,nt.replace({path:ls(i.page),query:{...nt.currentRoute.value.query,clicks:i.clicks||0}}))})}const wp=ns({__name:"App",setup(t){return vp(),ee(()=>{for(const[e,s]of Object.entries(pa.value))document.body.style.setProperty(e,s.toString())}),(e,s)=>{const i=hr("RouterView");return S(),T(i)}}}),bp=C(wp,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function xp(t){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e),t.app.use(ur),t.app.use(mr)}function xn(t,e,s){var i;return((i=t.instance)==null?void 0:i.$).provides[e]??s}function $p(){return{install(t){t.directive("click",{name:"v-click",mounted(e,s){const i=Ve(e,s,s.value);if(i==null)return;e.classList.toggle(Ee,!0);const n=Array.isArray(i.clicks)?i.clicks:[i.clicks,void 0];e.dataset.slidevClicksStart=String(n[0]),n[1]!=null&&(e.dataset.slidevClicksEnd=String(n[1])),ee(()=>{const a=i.isActive.value,l=i.isCurrent.value,o=a&&!l;i.flagHide?(e.classList.toggle(i.flagFade?be:pe,a),e.classList.toggle(ps,a)):e.classList.toggle(i.flagFade?be:pe,!a),e.classList.toggle(fs,l),e.classList.toggle(gs,o)})},unmounted:ks}),t.directive("after",{name:"v-after",mounted(e,s){const i=Ve(e,s,s.value,!0);i!=null&&(e.classList.toggle(Ee,!0),ee(()=>{const n=i.isActive.value,a=i.isCurrent.value,l=n&&!a;i.flagHide?(e.classList.toggle(i.flagFade?be:pe,n),e.classList.toggle(ps,n)):e.classList.toggle(i.flagFade?be:pe,!n),e.classList.toggle(fs,a),e.classList.toggle(gs,l)}))},unmounted:ks}),t.directive("click-hide",{name:"v-click-hide",mounted(e,s){const i=Ve(e,s,s.value,!1,!0);i!=null&&(e.classList.toggle(Ee,!0),ee(()=>{const n=i.isActive.value,a=i.isCurrent.value,l=n&&!a;e.classList.toggle(i.flagFade?be:pe,n),e.classList.toggle(ps,n),e.classList.toggle(fs,a),e.classList.toggle(gs,l)}))},unmounted:ks})}}}function ms(t,e){return Array.isArray(t)?t[0]<=e&&ems(c,a.current)),isCurrent:d(()=>Ap(c,a.current)),isShown:d(()=>n?!ms(c,a.current):ms(c,a.current)),flagFade:l,flagHide:n};return a.register(t,u),u}function ks(t,e){var i;t.classList.toggle(Ee,!1);const s=(i=xn(e,js))==null?void 0:i.value;s==null||s.unregister(t)}function $n(){return Math.floor(Math.random()*2**31)}class Sp{constructor(e){this.seed=e}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}}function Ls(t,e,s){if(t&&t.length){const[i,n]=e,a=Math.PI/180*s,l=Math.cos(a),o=Math.sin(a);for(const c of t){const[h,u]=c;c[0]=(h-i)*l-(u-n)*o+i,c[1]=(h-i)*o+(u-n)*l+n}}}function Mp(t,e,s){const i=[];t.forEach(n=>i.push(...n)),Ls(i,e,s)}function Cp(t,e){return t[0]===e[0]&&t[1]===e[1]}function Ep(t,e,s,i=1){const n=s,a=Math.max(e,.1),l=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,o=[0,0];if(n)for(const h of l)Ls(h,o,n);const c=Tp(l,a,i);if(n){for(const h of l)Ls(h,o,-n);Mp(c,o,-n)}return c}function Tp(t,e,s){const i=[];for(const h of t){const u=[...h];Cp(u[0],u[u.length-1])||u.push([u[0][0],u[0][1]]),u.length>2&&i.push(u)}const n=[];e=Math.max(e,.1);const a=[];for(const h of i)for(let u=0;uh.yminu.ymin?1:h.xu.x?1:h.ymax===u.ymax?0:(h.ymax-u.ymax)/Math.abs(h.ymax-u.ymax)),!a.length)return n;let l=[],o=a[0].ymin,c=0;for(;l.length||a.length;){if(a.length){let h=-1;for(let p=0;po);p++)h=p;a.splice(0,h+1).forEach(p=>{l.push({s:o,edge:p})})}if(l=l.filter(h=>!(h.edge.ymax<=o)),l.sort((h,u)=>h.edge.x===u.edge.x?0:(h.edge.x-u.edge.x)/Math.abs(h.edge.x-u.edge.x)),(s!==1||c%e===0)&&l.length>1)for(let h=0;h=l.length)break;const p=l[h].edge,g=l[u].edge;n.push([[Math.round(p.x),o],[Math.round(g.x),o]])}o+=s,l.forEach(h=>{h.edge.x=h.edge.x+s*h.edge.islope}),c++}return n}function Fe(t,e){var s;const i=e.hachureAngle+90;let n=e.hachureGap;n<0&&(n=e.strokeWidth*4),n=Math.round(Math.max(n,.1));let a=1;return e.roughness>=1&&(((s=e.randomizer)===null||s===void 0?void 0:s.next())||Math.random())>.7&&(a=n),Ep(t,n,i,a||1)}class Qs{constructor(e){this.helper=e}fillPolygons(e,s){return this._fillPolygons(e,s)}_fillPolygons(e,s){const i=Fe(e,s);return{type:"fillSketch",ops:this.renderLines(i,s)}}renderLines(e,s){const i=[];for(const n of e)i.push(...this.helper.doubleLineOps(n[0][0],n[0][1],n[1][0],n[1][1],s));return i}}function os(t){const e=t[0],s=t[1];return Math.sqrt(Math.pow(e[0]-s[0],2)+Math.pow(e[1]-s[1],2))}class Dp extends Qs{fillPolygons(e,s){let i=s.hachureGap;i<0&&(i=s.strokeWidth*4),i=Math.max(i,.1);const n=Object.assign({},s,{hachureGap:i}),a=Fe(e,n),l=Math.PI/180*s.hachureAngle,o=[],c=i*.5*Math.cos(l),h=i*.5*Math.sin(l);for(const[p,g]of a)os([p,g])&&o.push([[p[0]-c,p[1]+h],[...g]],[[p[0]+c,p[1]-h],[...g]]);return{type:"fillSketch",ops:this.renderLines(o,s)}}}class Pp extends Qs{fillPolygons(e,s){const i=this._fillPolygons(e,s),n=Object.assign({},s,{hachureAngle:s.hachureAngle+90}),a=this._fillPolygons(e,n);return i.ops=i.ops.concat(a.ops),i}}class Lp{constructor(e){this.helper=e}fillPolygons(e,s){s=Object.assign({},s,{hachureAngle:0});const i=Fe(e,s);return this.dotsOnLines(i,s)}dotsOnLines(e,s){const i=[];let n=s.hachureGap;n<0&&(n=s.strokeWidth*4),n=Math.max(n,.1);let a=s.fillWeight;a<0&&(a=s.strokeWidth/2);const l=n/4;for(const o of e){const c=os(o),h=c/n,u=Math.ceil(h)-1,p=c-u*n,g=(o[0][0]+o[1][0])/2-n/4,f=Math.min(o[0][1],o[1][1]);for(let m=0;m{const o=os(l),c=Math.floor(o/(i+n)),h=(o+n-c*(i+n))/2;let u=l[0],p=l[1];u[0]>p[0]&&(u=l[1],p=l[0]);const g=Math.atan((p[1]-u[1])/(p[0]-u[0]));for(let f=0;f{const l=os(a),o=Math.round(l/(2*s));let c=a[0],h=a[1];c[0]>h[0]&&(c=a[1],h=a[0]);const u=Math.atan((h[1]-c[1])/(h[0]-c[0]));for(let p=0;pu%2?h+s:h+e);a.push({key:"C",data:c}),e=c[4],s=c[5];break}case"Q":a.push({key:"Q",data:[...o]}),e=o[2],s=o[3];break;case"q":{const c=o.map((h,u)=>u%2?h+s:h+e);a.push({key:"Q",data:c}),e=c[2],s=c[3];break}case"A":a.push({key:"A",data:[...o]}),e=o[5],s=o[6];break;case"a":e+=o[5],s+=o[6],a.push({key:"A",data:[o[0],o[1],o[2],o[3],o[4],e,s]});break;case"H":a.push({key:"H",data:[...o]}),e=o[0];break;case"h":e+=o[0],a.push({key:"H",data:[e]});break;case"V":a.push({key:"V",data:[...o]}),s=o[0];break;case"v":s+=o[0],a.push({key:"V",data:[s]});break;case"S":a.push({key:"S",data:[...o]}),e=o[2],s=o[3];break;case"s":{const c=o.map((h,u)=>u%2?h+s:h+e);a.push({key:"S",data:c}),e=c[2],s=c[3];break}case"T":a.push({key:"T",data:[...o]}),e=o[0],s=o[1];break;case"t":e+=o[0],s+=o[1],a.push({key:"T",data:[e,s]});break;case"Z":case"z":a.push({key:"Z",data:[]}),e=i,s=n;break}return a}function Mn(t){const e=[];let s="",i=0,n=0,a=0,l=0,o=0,c=0;for(const{key:h,data:u}of t){switch(h){case"M":e.push({key:"M",data:[...u]}),[i,n]=u,[a,l]=u;break;case"C":e.push({key:"C",data:[...u]}),i=u[4],n=u[5],o=u[2],c=u[3];break;case"L":e.push({key:"L",data:[...u]}),[i,n]=u;break;case"H":i=u[0],e.push({key:"L",data:[i,n]});break;case"V":n=u[0],e.push({key:"L",data:[i,n]});break;case"S":{let p=0,g=0;s==="C"||s==="S"?(p=i+(i-o),g=n+(n-c)):(p=i,g=n),e.push({key:"C",data:[p,g,...u]}),o=u[0],c=u[1],i=u[2],n=u[3];break}case"T":{const[p,g]=u;let f=0,m=0;s==="Q"||s==="T"?(f=i+(i-o),m=n+(n-c)):(f=i,m=n);const k=i+2*(f-i)/3,y=n+2*(m-n)/3,w=p+2*(f-p)/3,$=g+2*(m-g)/3;e.push({key:"C",data:[k,y,w,$,p,g]}),o=f,c=m,i=p,n=g;break}case"Q":{const[p,g,f,m]=u,k=i+2*(p-i)/3,y=n+2*(g-n)/3,w=f+2*(p-f)/3,$=m+2*(g-m)/3;e.push({key:"C",data:[k,y,w,$,f,m]}),o=p,c=g,i=f,n=m;break}case"A":{const p=Math.abs(u[0]),g=Math.abs(u[1]),f=u[2],m=u[3],k=u[4],y=u[5],w=u[6];p===0||g===0?(e.push({key:"C",data:[i,n,y,w,y,w]}),i=y,n=w):(i!==y||n!==w)&&(Cn(i,n,y,w,p,g,f,m,k).forEach(function(M){e.push({key:"C",data:M})}),i=y,n=w);break}case"Z":e.push({key:"Z",data:[]}),i=a,n=l;break}s=h}return e}function Rp(t){return Math.PI*t/180}function Me(t,e,s){const i=t*Math.cos(s)-e*Math.sin(s),n=t*Math.sin(s)+e*Math.cos(s);return[i,n]}function Cn(t,e,s,i,n,a,l,o,c,h){const u=Rp(l);let p=[],g=0,f=0,m=0,k=0;if(h)[g,f,m,k]=h;else{[t,e]=Me(t,e,-u),[s,i]=Me(s,i,-u);const X=(t-s)/2,I=(e-i)/2;let q=X*X/(n*n)+I*I/(a*a);q>1&&(q=Math.sqrt(q),n=q*n,a=q*a);const Xt=o===c?-1:1,ct=n*n,E=a*a,W=ct*E-ct*I*I-E*X*X,F=ct*I*I+E*X*X,R=Xt*Math.sqrt(Math.abs(W/F));m=R*n*I/a+(t+s)/2,k=R*-a*X/n+(e+i)/2,g=Math.asin(parseFloat(((e-k)/a).toFixed(9))),f=Math.asin(parseFloat(((i-k)/a).toFixed(9))),tf&&(g=g-Math.PI*2),!c&&f>g&&(f=f-Math.PI*2)}let y=f-g;if(Math.abs(y)>Math.PI*120/180){const X=f,I=s,q=i;c&&f>g?f=g+Math.PI*120/180*1:f=g+Math.PI*120/180*-1,s=m+n*Math.cos(f),i=k+a*Math.sin(f),p=Cn(s,i,I,q,n,a,l,0,c,[f,X,m,k])}y=f-g;const w=Math.cos(g),$=Math.sin(g),M=Math.cos(f),j=Math.sin(f),H=Math.tan(y/4),z=4/3*n*H,ot=4/3*a*H,K=[t,e],st=[t+z*$,e-ot*w],ft=[s+z*j,i-ot*M],gt=[s,i];if(st[0]=2*K[0]-st[0],st[1]=2*K[1]-st[1],h)return[st,ft,gt].concat(p);{p=[st,ft,gt].concat(p);const X=[];for(let I=0;I2){const n=[];for(let a=0;aMath.PI*2&&(f=0,m=Math.PI*2);const k=Math.PI*2/c.curveStepCount,y=Math.min(k/2,(m-f)/2),w=Li(y,h,u,p,g,f,m,1,c);if(!c.disableMultiStroke){const $=Li(y,h,u,p,g,f,m,1.5,c);w.push(...$)}return l&&(o?w.push(...se(h,u,h+p*Math.cos(f),u+g*Math.sin(f),c),...se(h,u,h+p*Math.cos(m),u+g*Math.sin(m),c)):w.push({op:"lineTo",data:[h,u]},{op:"lineTo",data:[h+p*Math.cos(f),u+g*Math.sin(f)]})),{type:"path",ops:w}}function Ti(t,e){const s=Mn(Sn(ti(t))),i=[];let n=[0,0],a=[0,0];for(const{key:l,data:o}of s)switch(l){case"M":{a=[o[0],o[1]],n=[o[0],o[1]];break}case"L":i.push(...se(a[0],a[1],o[0],o[1],e)),a=[o[0],o[1]];break;case"C":{const[c,h,u,p,g,f]=o;i.push(...Vp(c,h,u,p,g,f,a,e)),a=[g,f];break}case"Z":i.push(...se(a[0],a[1],n[0],n[1],e)),a=[n[0],n[1]];break}return{type:"path",ops:i}}function ys(t,e){const s=[];for(const i of t)if(i.length){const n=e.maxRandomnessOffset||0,a=i.length;if(a>2){s.push({op:"move",data:[i[0][0]+x(n,e),i[0][1]+x(n,e)]});for(let l=1;lMath.PI*2&&(p=0,g=Math.PI*2);const f=(g-p)/l.curveStepCount,m=[];for(let k=p;k<=g;k=k+f)m.push([o+h*Math.cos(k),c+u*Math.sin(k)]);return m.push([o+h*Math.cos(g),c+u*Math.sin(g)]),m.push([o,c]),fe([m],l)}function zp(t,e){return x(t,e)}function qp(t,e,s){return es(t,e,s)}function Wp(t,e,s,i,n){return se(t,e,s,i,n,!0)}function Di(t){const e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function Dn(t){return t.randomizer||(t.randomizer=new Sp(t.seed||0)),t.randomizer.next()}function es(t,e,s,i=1){return s.roughness*i*(Dn(s)*(e-t)+t)}function x(t,e,s=1){return es(-t,t,e,s)}function se(t,e,s,i,n,a=!1){const l=a?n.disableMultiStrokeFill:n.disableMultiStroke,o=Fs(t,e,s,i,n,!0,!1);if(l)return o;const c=Fs(t,e,s,i,n,!0,!0);return o.concat(c)}function Fs(t,e,s,i,n,a,l){const o=Math.pow(t-s,2)+Math.pow(e-i,2),c=Math.sqrt(o);let h=1;c<200?h=1:c>500?h=.4:h=-.0016668*c+1.233334;let u=n.maxRandomnessOffset||0;u*u*100>o&&(u=c/10);const p=u/2,g=.2+Dn(n)*.2;let f=n.bowing*n.maxRandomnessOffset*(i-e)/200,m=n.bowing*n.maxRandomnessOffset*(t-s)/200;f=x(f,n,h),m=x(m,n,h);const k=[],y=()=>x(p,n,h),w=()=>x(u,n,h),$=n.preserveVertices;return a&&(l?k.push({op:"move",data:[t+($?0:y()),e+($?0:y())]}):k.push({op:"move",data:[t+($?0:x(u,n,h)),e+($?0:x(u,n,h))]})),l?k.push({op:"bcurveTo",data:[f+t+(s-t)*g+y(),m+e+(i-e)*g+y(),f+t+2*(s-t)*g+y(),m+e+2*(i-e)*g+y(),s+($?0:y()),i+($?0:y())]}):k.push({op:"bcurveTo",data:[f+t+(s-t)*g+w(),m+e+(i-e)*g+w(),f+t+2*(s-t)*g+w(),m+e+2*(i-e)*g+w(),s+($?0:w()),i+($?0:w())]}),k}function Ue(t,e,s){if(!t.length)return[];const i=[];i.push([t[0][0]+x(e,s),t[0][1]+x(e,s)]),i.push([t[0][0]+x(e,s),t[0][1]+x(e,s)]);for(let n=1;n3){const a=[],l=1-s.curveTightness;n.push({op:"move",data:[t[1][0],t[1][1]]});for(let o=1;o+21&&n.push(a):n.push(a),n.push(t[e+3])}else{const l=t[e+0],o=t[e+1],c=t[e+2],h=t[e+3],u=re(l,o,.5),p=re(o,c,.5),g=re(c,h,.5),f=re(u,p,.5),m=re(p,g,.5),k=re(f,m,.5);Ns([l,u,f,k],0,s,n),Ns([k,m,g,h],0,s,n)}return n}function Zp(t,e){return is(t,0,t.length,e)}function is(t,e,s,i,n){const a=n||[],l=t[e],o=t[s-1];let c=0,h=1;for(let u=e+1;uc&&(c=p,h=u)}return Math.sqrt(c)>i?(is(t,e,h+1,i,a),is(t,h,s,i,a)):(a.length||a.push(l),a.push(o)),a}function Rs(t,e=.15,s){const i=[],n=(t.length-1)/3;for(let a=0;a0?is(i,0,i.length,s):i}function Xp(t,e,s){const i=ti(t),n=Mn(Sn(i)),a=[];let l=[],o=[0,0],c=[];const h=()=>{c.length>=4&&l.push(...Rs(c,e)),c=[]},u=()=>{h(),l.length&&(a.push(l),l=[])};for(const{key:g,data:f}of n)switch(g){case"M":u(),o=[f[0],f[1]],l.push(o);break;case"L":h(),l.push([f[0],f[1]]);break;case"C":if(!c.length){const m=l.length?l[l.length-1]:o;c.push([m[0],m[1]])}c.push([f[0],f[1]]),c.push([f[2],f[3]]),c.push([f[4],f[5]]);break;case"Z":h(),l.push([o[0],o[1]]);break}if(u(),!s)return a;const p=[];for(const g of a){const f=Zp(g,s);f.length&&p.push(f)}return p}const it="none";class Jp{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return $n()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,s,i){return{shape:e,sets:s||[],options:i||this.defaultOptions}}line(e,s,i,n,a){const l=this._o(a);return this._d("line",[rt(e,s,i,n,l)],l)}rectangle(e,s,i,n,a){const l=this._o(a),o=[],c=En(e,s,i,n,l);if(l.fill){const h=[[e,s],[e+i,s],[e+i,s+n],[e,s+n]];l.fillStyle==="solid"?o.push(ys([h],l)):o.push(fe([h],l))}return l.stroke!==it&&o.push(c),this._d("rectangle",o,l)}ellipse(e,s,i,n,a){const l=this._o(a),o=[],c=Tn(i,n,l),h=Is(e,s,l,c);if(l.fill)if(l.fillStyle==="solid"){const u=Is(e,s,l,c).opset;u.type="fillPath",o.push(u)}else o.push(fe([h.estimatedPoints],l));return l.stroke!==it&&o.push(h.opset),this._d("ellipse",o,l)}circle(e,s,i,n){const a=this.ellipse(e,s,i,i,n);return a.shape="circle",a}linearPath(e,s){const i=this._o(s);return this._d("linearPath",[Te(e,!1,i)],i)}arc(e,s,i,n,a,l,o=!1,c){const h=this._o(c),u=[],p=Ei(e,s,i,n,a,l,o,!0,h);if(o&&h.fill)if(h.fillStyle==="solid"){const g=Object.assign({},h);g.disableMultiStroke=!0;const f=Ei(e,s,i,n,a,l,!0,!1,g);f.type="fillPath",u.push(f)}else u.push(jp(e,s,i,n,a,l,h));return h.stroke!==it&&u.push(p),this._d("arc",u,h)}curve(e,s){const i=this._o(s),n=[],a=Ci(e,i);if(i.fill&&i.fill!==it)if(i.fillStyle==="solid"){const l=Ci(e,Object.assign(Object.assign({},i),{disableMultiStroke:!0,roughness:i.roughness?i.roughness+i.fillShapeRoughnessGain:0}));n.push({type:"fillPath",ops:this._mergedShape(l.ops)})}else{const l=[],o=e;if(o.length){const h=typeof o[0][0]=="number"?[o]:o;for(const u of h)u.length<3?l.push(...u):u.length===3?l.push(...Rs(Oi([u[0],u[0],u[1],u[2]]),10,(1+i.roughness)/2)):l.push(...Rs(Oi(u),10,(1+i.roughness)/2))}l.length&&n.push(fe([l],i))}return i.stroke!==it&&n.push(a),this._d("curve",n,i)}polygon(e,s){const i=this._o(s),n=[],a=Te(e,!0,i);return i.fill&&(i.fillStyle==="solid"?n.push(ys([e],i)):n.push(fe([e],i))),i.stroke!==it&&n.push(a),this._d("polygon",n,i)}path(e,s){const i=this._o(s),n=[];if(!e)return this._d("path",n,i);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const a=i.fill&&i.fill!=="transparent"&&i.fill!==it,l=i.stroke!==it,o=!!(i.simplification&&i.simplification<1),c=o?4-4*(i.simplification||1):(1+i.roughness)/2,h=Xp(e,1,c),u=Ti(e,i);if(a)if(i.fillStyle==="solid")if(h.length===1){const p=Ti(e,Object.assign(Object.assign({},i),{disableMultiStroke:!0,roughness:i.roughness?i.roughness+i.fillShapeRoughnessGain:0}));n.push({type:"fillPath",ops:this._mergedShape(p.ops)})}else n.push(ys(h,i));else n.push(fe(h,i));return l&&(o?h.forEach(p=>{n.push(Te(p,!1,i))}):n.push(u)),this._d("path",n,i)}opsToPath(e,s){let i="";for(const n of e.ops){const a=typeof s=="number"&&s>=0?n.data.map(l=>+l.toFixed(s)):n.data;switch(n.op){case"move":i+=`M${a[0]} ${a[1]} `;break;case"bcurveTo":i+=`C${a[0]} ${a[1]}, ${a[2]} ${a[3]}, ${a[4]} ${a[5]} `;break;case"lineTo":i+=`L${a[0]} ${a[1]} `;break}}return i.trim()}toPaths(e){const s=e.sets||[],i=e.options||this.defaultOptions,n=[];for(const a of s){let l=null;switch(a.type){case"path":l={d:this.opsToPath(a),stroke:i.stroke,strokeWidth:i.strokeWidth,fill:it};break;case"fillPath":l={d:this.opsToPath(a),stroke:it,strokeWidth:0,fill:i.fill||it};break;case"fillSketch":l=this.fillSketch(a,i);break}l&&n.push(l)}return n}fillSketch(e,s){let i=s.fillWeight;return i<0&&(i=s.strokeWidth/2),{d:this.opsToPath(e),stroke:s.fill||it,strokeWidth:i,fill:it}}_mergedShape(e){return e.filter((s,i)=>i===0?!0:s.op!=="move")}}const Pn="http://www.w3.org/2000/svg",Qp=800;let vs=null;function tf(){return vs||(vs=new Jp().defaultOptions),vs}function ws(t,e,s){return{...tf(),maxRandomnessOffset:2,roughness:t==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:t!=="double",disableMultiStrokeFill:!1,seed:e,...s}}function ef(t){const e=t.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const s=e;if(s.length)switch(s.length){case 4:return[...s];case 1:return[s[0],s[0],s[0],s[0]];case 2:return[...s,...s];case 3:return[...s,s[1]];default:return[s[0],s[1],s[2],s[3]]}}}return[5,5,5,5]}function sf(t,e,s,i,n,a){const l=[];let o=s.strokeWidth||2;const c=ef(s),h=s.animate===void 0?!0:!!s.animate,u=s.iterations||2,p=s.rtl?1:0,g=ws("single",a,s);switch(s.type){case"underline":{const f=e.y+e.h+c[2];for(let m=p;m$.setAttribute(M,j);for(const $ of f){const M=document.createElementNS(Pn,"path");if(w(M,"d",$),w(M,"fill","none"),w(M,"stroke",s.color||"currentColor"),w(M,"stroke-width",`${o}`),s.opacity!==void 0&&w(M,"style",`opacity:${s.opacity}`),h){const j=M.getTotalLength();m.push(j),y+=j}t.appendChild(M),k.push(M)}if(h){let $=0;for(let M=0;MsetTimeout(e,t))}function nf(t){const e=[];for(const s of t){let i="";for(const n of s.ops){const a=n.data;switch(n.op){case"move":i.trim()&&e.push(i.trim()),i=`M${a[0]} ${a[1]} `;break;case"bcurveTo":i+=`C${a[0]} ${a[1]}, ${a[2]} ${a[3]}, ${a[4]} ${a[5]} `;break;case"lineTo":i+=`L${a[0]} ${a[1]} `;break}}i.trim()&&e.push(i.trim())}return e}function rf(){if(!window.__rno_kf_s){const t=window.__rno_kf_s=document.createElement("style");t.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(t)}}var af=Object.defineProperty,lf=(t,e,s)=>e in t?af(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,ht=(t,e,s)=>(lf(t,typeof e!="symbol"?e+"":e,s),s);class of{constructor(e,s){ht(this,"_state","unattached"),ht(this,"_config"),ht(this,"_resizing",!1),ht(this,"_ro"),ht(this,"_seed",$n()),ht(this,"_e"),ht(this,"_svg"),ht(this,"_lastSizes",[]),ht(this,"_animationDelay",0),ht(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),ht(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(s)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,s){this._config[e]!==s&&(this._config[e]=s,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){rf();const e=this._svg=document.createElementNS(Pn,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const s=e.style;s.position="absolute",s.top="0",s.left="0",s.overflow="visible",s.pointerEvents="none",s.width="100px",s.height="100px";const i=this._config.type==="highlight";if(this._e.insertAdjacentElement(i?"beforebegin":"afterend",e),this._state="not-showing",i){const n=window.getComputedStyle(this._e).position;(!n||n==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const s of e)s.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let s=0;sMath.round(n)===Math.round(a);return i(e.x,s.x)&&i(e.y,s.y)&&i(e.w,s.w)&&i(e.h,s.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,s){let i=this._config;s&&(i=JSON.parse(JSON.stringify(this._config)),i.animate=!1);const n=this.rects();let a=0;n.forEach(h=>a+=h.w);const l=i.animationDuration||Qp;let o=0;const c=[];for(let h=0;hObject.assign(t,{type:"box"}),circle:t=>Object.assign(t,{type:"circle"}),underline:t=>Object.assign(t,{type:"underline"}),highlight:t=>Object.assign(t,{type:"highlight"}),"strike-through":t=>Object.assign(t,{type:"strike-through"}),"crossed-off":t=>Object.assign(t,{type:"crossed-off"}),bracket:t=>Object.assign(t,{type:"bracket"}),strike:t=>Object.assign(t,{type:"strike-through"}),cross:t=>Object.assign(t,{type:"crossed-off"}),crossed:t=>Object.assign(t,{type:"crossed-off"}),linethrough:t=>Object.assign(t,{type:"strike-through"}),"line-through":t=>Object.assign(t,{type:"strike-through"}),black:t=>tt(t,"text-black"),blue:t=>tt(t,"text-blue"),cyan:t=>tt(t,"text-cyan"),gray:t=>tt(t,"text-gray"),green:t=>tt(t,"text-green"),indigo:t=>tt(t,"text-indigo"),lime:t=>tt(t,"text-lime"),orange:t=>tt(t,"text-orange"),pink:t=>tt(t,"text-pink"),purple:t=>tt(t,"text-purple"),red:t=>tt(t,"text-red"),teal:t=>tt(t,"text-teal"),white:t=>tt(t,"text-white"),yellow:t=>tt(t,"text-yellow")},hf=[[/^delay-?(\d+)?$/,(t,e,s)=>{const i=(t[1]?Number.parseInt(t[1]):s)||300;return e.delay=i,e}],[/^(?:op|opacity)-?(\d+)?$/,(t,e,s)=>{const i=(t[1]?Number.parseInt(t[1]):s)||100;return e.opacity=i/100,e}]];function uf(){return{install(t){t.directive("mark",{name:"v-mark",mounted:(e,s)=>{const i=d(()=>{const l=typeof s.value=="object"&&!Array.isArray(s.value)?{...s.value}:{at:s.value};let o={at:l.at};const c=Object.entries(s.modifiers).filter(([u,p])=>{if(Ii[u])return o=Ii[u](o,p),!1;for(const[g,f]of hf){const m=u.match(g);if(m)return o=f(m,o,p),!1}return!0});c.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",c);const h={...o,...l};return h.type||(h.type="underline"),h}),n=cf(e,i.value),a=Ve(e,s,i.value.at);if(!a){console.error("[Slidev] Invalid value for v-mark:",i.value.at);return}ee(()=>{let l;i.value.class&&(n.class=i.value.class),i.value.color&&(n.color=i.value.color);const o=i.value.at;if(o===!0)l=!0;else if(o===!1)l=!1;else if(a)l=a.isActive.value;else{console.error("[Slidev] Invalid value for v-mark:",o);return}l!=null&&(l?n.show():n.hide())})}})}}}const Fi=dr(),bs=et("slidev-color-schema","auto"),Ni=d(()=>N.colorSchema!=="auto"),Ln=d({get(){return Ni.value?N.colorSchema==="dark":bs.value==="auto"?Fi.value:bs.value==="dark"},set(t){Ni.value||(bs.value=t===Fi.value?"auto":t?"dark":"light")}}),Yf=ji(Ln);rs&&_e(Ln,t=>{const e=document.querySelector("html");e.classList.toggle("dark",t),e.classList.toggle("light",!t)},{immediate:!0});function df(t){const e=d(()=>t.value.path),s=d(()=>Y.length),i=d(()=>Number.parseInt(e.value.split(/\//g).slice(-1)[0])||1),n=d(()=>ls(i.value)),a=d(()=>Y.find(g=>g.path===`${i.value}`)??Y.at(-1)??Y[0]),l=d(()=>{var g,f,m;return(m=(f=(g=a.value)==null?void 0:g.meta)==null?void 0:f.slide)==null?void 0:m.id}),o=d(()=>{var g,f;return((f=(g=a.value)==null?void 0:g.meta)==null?void 0:f.layout)||(i.value===1?"cover":"default")}),c=d(()=>Y.find(g=>g.path===`${Math.min(Y.length,i.value+1)}`)),h=d(()=>Y.filter(g=>{var f,m;return(m=(f=g.meta)==null?void 0:f.slide)==null?void 0:m.title}).reduce((g,f)=>(Zs(g,f),g),[])),u=d(()=>Xs(h.value,a.value)),p=d(()=>Js(u.value));return{rawRoutes:Y,route:t,path:e,total:s,clicksContext:te,clicks:Vs,clicksTotal:Be,currentPage:i,currentPath:n,currentRoute:a,currentSlideId:l,currentLayout:o,nextRoute:c,rawTree:h,treeWithActiveStatuses:u,tree:p,go:Ys,downloadPDF:gp,next:wn,nextSlide:Gs,openInEditor:mp,prev:bn,prevSlide:Ks}}function pf(t){return{nav:df(t),configs:N,themeConfigs:d(()=>N.themeConfig)}}function ff(){return{install(t){const e=b(pf(mt));t.provide(rn,U("none")),t.provide(nn,e),t.provide(sn,d(()=>e.nav.currentPage))}}}const he=pr(bp);he.use(nt);he.use(ia());he.use($p());he.use(uf());he.use(ff());xp({app:he,router:nt});he.mount("#app");export{Af as $,ra as A,jf as B,$s as C,vf as D,te as E,Zt as F,Wf as G,qf as H,ke as I,yf as J,Pf as K,Re as L,Ea as M,zf as N,Je as O,If as P,Ff as Q,V as R,Gs as S,Ks as T,Ds as U,Yf as V,Nf as W,$f as X,Ys as Y,Mf as Z,C as _,bf as a,Tf as a0,tp as a1,Ef as a2,as as a3,Sf as a4,Es as a5,hp as a6,Vf as a7,Ni as a8,Ln as a9,le as aa,ts as ab,Uf as ac,Bf as ad,gp as ae,fn as af,Gf as ag,Sa as ah,sn as ai,rn as aj,wf as ak,js as al,Se as am,Ts as an,ep as ao,sp as ap,ip as aq,rp as ar,Rf as as,Z as at,D as au,ap as av,tn as aw,xf as b,N as c,Lf as d,Pe as e,lp as f,Qe as g,Hf as h,Cf as i,Df as j,Of as k,_f as l,da as m,wn as n,nn as o,bn as p,df as q,Ta as r,Qd as s,Zi as t,Kf as u,mt as v,Ai as w,_o as x,Y as y,Aa as z}; -function __vite__mapDeps(indexes) { - if (!__vite__mapDeps.viteFileDeps) { - __vite__mapDeps.viteFileDeps = ["assets/slidev/play-DSehltPn.js","assets/modules/vue-BoI2EFOv.js","assets/slidev/SlidesShow-aZvHWNC2.js","assets/modules/unplugin-icons-CfAESjuq.js","assets/slidev/bottom-DYeMWyTH.js","assets/slidev/DrawingPreview-DOv9aIwT.js","assets/modules/shiki-DdzKTf6Q.js","assets/modules/shiki-BSchMNmt.css","assets/SlidesShow-Do3DTZt5.css","assets/slidev/PrintStyle-C5A1Lxy8.js","assets/play-CoA43pdi.css","assets/slidev/print-2cNOs_aZ.js","assets/print-Nssgrd1X.css","assets/slidev/print-Ss9g6xiG.js","assets/slidev/NoteDisplay-DVesK58r.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/presenter-BJ0i69ip.js","assets/slidev/DrawingControls-CwStMqrz.js","assets/DrawingControls-BO6lw4N5.css","assets/presenter-BRsvFpoV.css"] - } - return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) -} diff --git a/05-restful/assets/index-CTiKa7JK.css b/05-restful/assets/index-CTiKa7JK.css deleted file mode 100644 index bd2bce2..0000000 --- a/05-restful/assets/index-CTiKa7JK.css +++ /dev/null @@ -1 +0,0 @@ -.slidev-layout.end[data-v-e7ce0abf]{display:grid;height:100%;-webkit-user-select:none;user-select:none;place-content:center;--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity));text-align:center;font-size:1.25rem;line-height:1.75rem;--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity));--un-text-opacity:.85;letter-spacing:.1em}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media print{.print-container{width:100%}}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 640px){@media print{.print-container{max-width:640px}}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 768px){@media print{.print-container{max-width:768px}}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1024px){@media print{.print-container{max-width:1024px}}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1280px){@media print{.print-container{max-width:1280px}}}@media (min-width: 1536px){.container{max-width:1536px}}@media (min-width: 1536px){@media print{.print-container{max-width:1536px}}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .line.dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}div[widgetid=messageoverlay]{transform:translateY(calc(100% * (var(--slidev-slide-scale) - 1)))}.slidev-monaco-container{position:relative;margin:var(--slidev-code-margin);padding:var(--slidev-code-padding);line-height:var(--slidev-code-line-height);border-radius:var(--slidev-code-radius);background:var(--slidev-code-background)}.slidev-monaco-container .monaco-editor{--monaco-monospace-font: var(--slidev-code-font-family);--vscode-editor-background: var(--slidev-code-background);--vscode-editorGutter-background: var(--slidev-code-background)}.slidev-monaco-container .monaco-editor a,.slidev-monaco-container .monaco-editor a:hover{border-bottom:none}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:calc(13px * var(--slidev-slide-scale, 1))}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute,[absolute=""]{position:absolute}.fixed{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5{right:1.25rem}.top-0{top:0}.top-1\/2{top:50%}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-0{margin:0}.m-1{margin:.25rem}.m-10{margin:2.5rem}.m-20{margin:5rem}.m-4{margin:1rem}.m-5{margin:1.25rem}.m-auto{margin:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.mb-10{margin-bottom:2.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.aspect-ratio-initial{aspect-ratio:initial}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-100{height:25rem}.h-22px{height:22px}.h-3px{height:3px}.h-40px{height:40px}.h-5,.h5,[h5=""]{height:1.25rem}.h-50{height:12.5rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-70{height:17.5rem}.h-8{height:2rem}.h-80{height:20rem}.h-full,[h-full=""]{height:100%}.h1{height:.25rem}.h2{height:.5rem}.max-w-150{max-width:37.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-w-16{min-width:4rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-1px{width:1px}.w-22px{width:22px}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.flex,[flex=""],[flex~="~"]{display:flex}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-0{--un-translate-x:0;--un-translate-y:0;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-inside-avoid-page{break-inside:avoid-page}.break-after-page{break-after:page}.place-content-center{place-content:center}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4{gap:1rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""]{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border~=t]{border-top-width:1px}.border-gray-300\/50{border-color:#d1d5db80}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.\!border-none{border-style:none!important}.bg-black,[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray\/20{background-color:#9ca3af33}.bg-transparent{background-color:transparent}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.\!bg-opacity-75{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2{padding:.5rem}.\!p-4{padding:1rem!important}.px,.px-4,.px4,[p~=x-4]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2{padding-left:.5rem;padding-right:.5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-4{padding-top:1rem;padding-bottom:1rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}.text-opacity-85{--un-text-opacity:.85}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""]{opacity:1}.op20,.group:hover .group-hover\:opacity-20{opacity:.2}.op30{opacity:.3}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80{opacity:.8}.\!opacity-0{opacity:0!important}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.opacity-25{opacity:.25}.opacity-40{opacity:.4}[hover~=op100]:hover{opacity:1}.hover\:\!opacity-100:hover{opacity:1!important}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@media (max-width: 767.9px){.lt-md\:hidden{display:none}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}} diff --git a/05-restful/assets/index-D8V96I3B.js b/05-restful/assets/index-D8V96I3B.js new file mode 100644 index 0000000..d322851 --- /dev/null +++ b/05-restful/assets/index-D8V96I3B.js @@ -0,0 +1,51 @@ +const __vite__fileDeps=["assets/slidev/1-DFXCcPRS.js","assets/modules/vue-DbJrfnh0.js","assets/slidev/context-Dnko4ojF.js","assets/modules/shiki-nC3sHFQh.js","assets/modules/shiki-BSchMNmt.css","assets/2-D9a51Lhn.js","assets/slidev/two-cols-Cv0bVzrx.js","assets/3-CyDAncdi.js","assets/slidev/CodeBlockWrapper-DMDl5zEN.js","assets/modules/unplugin-icons-CMs28sA9.js","assets/slidev/4-d1H05_2B.js","assets/slidev/default-DzK7tnt1.js","assets/5-CH645g5i.js","assets/6-BYxK3Wv6.js","assets/slidev/7-D2YbIGyD.js","assets/slidev/8-CZC9i337.js","assets/slidev/9-07qKAZV6.js","assets/slidev/10-DgQQbrRM.js","assets/slidev/11-Cxs7_xuH.js","assets/slidev/12-Dxz9RI9W.js","assets/slidev/13-C9LQTbBY.js","assets/slidev/14-CQcX1XLb.js","assets/slidev/15-BSa0KTgV.js","assets/slidev/16-DZzvXiKw.js","assets/slidev/17-C4nNDon9.js","assets/slidev/18-MuiLZkPu.js","assets/slidev/19-VWQcbQYQ.js","assets/20-ctKZXN7o.js","assets/21-CSD9ftwu.js","assets/22-Bmlg3LlX.js","assets/23-DcTrtdcw.js","assets/slidev/24-CIug9AJb.js","assets/slidev/25-CnIydKEZ.js","assets/slidev/26-ClCgedbU.js","assets/07-scene-BeuorM8v.js","assets/slidev/27-BCMN384_.js","assets/slidev/28-BGx82Exq.js","assets/slidev/29-CkDBce4m.js","assets/slidev/30-DmsSGVgA.js","assets/slidev/31-mMh96i-h.js","assets/slidev/32-CB8tWv8M.js","assets/slidev/entry-CLHnNFdd.js","assets/slidev/overview-C9yRJfca.js","assets/slidev/DrawingPreview-DzoEt-n5.js","assets/DrawingPreview-DJ7dOR_1.css","assets/slidev/IconButton-5xo68whq.js","assets/slidev/NoteDisplay-kYzC0YhS.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/ClicksSlider-BeH7ErWQ.js","assets/ClicksSlider-qq1Ub2AL.css","assets/slidev/notes-BnFJlwSq.js","assets/slidev/presenter-CSlu0vx_.js","assets/slidev/ContextMenu-DozplJce.js","assets/ContextMenu-DSnskk1a.css","assets/slidev/DrawingControls-B3TBZzDD.js","assets/DrawingControls-C5T1oZL5.css","assets/presenter-D5oC5Gjj.css","assets/slidev/play-BBKts_fx.js","assets/play-CoA43pdi.css"],__vite__mapDeps=i=>i.map(i=>__vite__fileDeps[i]); +import{t as P,y as h,n as It,z as eo,A as Tn,B as hs,C as tt,D as Q,E as to,G as no,H as so,I as ps,J as k,K as oo,L as ro,o as gs,b as io,M as En,N as zt,O as ao,P as lo,Q as te,R as ms,S as qt,T as ys,U as co,d as uo,r as fo,c as ho,V as po,W as go,X as mo,Y as yo,Z as _o,_ as vo,$ as wo,a0 as ko,a1 as bo,a2 as So,a3 as Mo,a4 as Oo,a5 as To,u as Eo}from"./modules/vue-DbJrfnh0.js";import{T as $o}from"./modules/shiki-nC3sHFQh.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))s(o);new MutationObserver(o=>{for(const r of o)if(r.type==="childList")for(const i of r.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&s(i)}).observe(document,{childList:!0,subtree:!0});function n(o){const r={};return o.integrity&&(r.integrity=o.integrity),o.referrerPolicy&&(r.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?r.credentials="include":o.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function s(o){if(o.ep)return;o.ep=!0;const r=n(o);fetch(o.href,r)}})();function gt(t,e,n){return Math.min(n,Math.max(e,t))}function Po(...t){return Ao(t).reduce((e,n)=>e+n,0)}function Lo(t){return t=t??[],Array.isArray(t)?t:[t]}function Ao(t){return Lo(t).flat(1)}function ul(...t){let e,n,s;t.length===1?(e=0,s=1,[n]=t):[e,n,s=1]=t;const o=[];let r=e;for(;re(n,s)).filter(Co))}const H={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:!0,monacoTypesSource:"local",monacoTypesAdditionalPackages:[],monacoRunAdditionalDeps:[],download:!1,export:{},info:!1,highlighter:"shiki",twoslash:!0,lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},fl="build",_s=P(H.aspectRatio??16/9),Io=P(H.canvasWidth??980),dl=h(()=>Math.ceil(Io.value/_s.value)),Ro=h(()=>Do(H.themeConfig||{},(t,e)=>[`--slidev-theme-${t}`,e]));function fn(t,e={},n){for(const s in t){const o=t[s],r=n?`${n}:${s}`:s;typeof o=="object"&&o!==null?fn(o,e,r):typeof o=="function"&&(e[r]=o)}return e}const Ho={run:t=>t()},jo=()=>Ho,vs=typeof console.createTask<"u"?console.createTask:jo;function xo(t,e){const n=e.shift(),s=vs(n);return t.reduce((o,r)=>o.then(()=>s.run(()=>r(...e))),Promise.resolve())}function No(t,e){const n=e.shift(),s=vs(n);return Promise.all(t.map(o=>s.run(()=>o(...e))))}function Xt(t,e){for(const n of[...t])n(e)}class Fo{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,n,s={}){if(!e||typeof n!="function")return()=>{};const o=e;let r;for(;this._deprecatedHooks[e];)r=this._deprecatedHooks[e],e=r.to;if(r&&!s.allowDeprecated){let i=r.message;i||(i=`${o} hook has been deprecated`+(r.to?`, please use ${r.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(i)||(console.warn(i),this._deprecatedMessages.add(i))}if(!n.name)try{Object.defineProperty(n,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(n),()=>{n&&(this.removeHook(e,n),n=void 0)}}hookOnce(e,n){let s,o=(...r)=>(typeof s=="function"&&s(),s=void 0,o=void 0,n(...r));return s=this.hook(e,o),s}removeHook(e,n){if(this._hooks[e]){const s=this._hooks[e].indexOf(n);s!==-1&&this._hooks[e].splice(s,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,n){this._deprecatedHooks[e]=typeof n=="string"?{to:n}:n;const s=this._hooks[e]||[];delete this._hooks[e];for(const o of s)this.hook(e,o)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const n in e)this.deprecateHook(n,e[n])}addHooks(e){const n=fn(e),s=Object.keys(n).map(o=>this.hook(o,n[o]));return()=>{for(const o of s.splice(0,s.length))o()}}removeHooks(e){const n=fn(e);for(const s in n)this.removeHook(s,n[s])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...n){return n.unshift(e),this.callHookWith(xo,e,...n)}callHookParallel(e,...n){return n.unshift(e),this.callHookWith(No,e,...n)}callHookWith(e,n,...s){const o=this._before||this._after?{name:n,args:s,context:{}}:void 0;this._before&&Xt(this._before,o);const r=e(n in this._hooks?[...this._hooks[n]]:[],s);return r instanceof Promise?r.finally(()=>{this._after&&o&&Xt(this._after,o)}):(this._after&&o&&Xt(this._after,o),r)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const n=this._before.indexOf(e);n!==-1&&this._before.splice(n,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const n=this._after.indexOf(e);n!==-1&&this._after.splice(n,1)}}}}function Vo(){return new Fo}function Uo(t){return Array.isArray(t)?t:[t]}const Bo=["title","titleTemplate","script","style","noscript"],Tt=["base","meta","link","style","script","noscript"],Wo=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],zo=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],ws=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],qo=typeof window<"u";function $n(t){let e=9;for(let n=0;n>>9)+65536).toString(16).substring(1,8).toLowerCase()}function Bn(t){return t._h||$n(t._d?t._d:`${t.tag}:${t.textContent||t.innerHTML||""}:${Object.entries(t.props).map(([e,n])=>`${e}:${String(n)}`).join(",")}`)}function ks(t,e){const{props:n,tag:s}=t;if(zo.includes(s))return s;if(s==="link"&&n.rel==="canonical")return"canonical";if(n.charset)return"charset";const o=["id"];s==="meta"&&o.push("name","property","http-equiv");for(const r of o)if(typeof n[r]<"u"){const i=String(n[r]);return e&&!e(i)?!1:`${s}:${r}:${i}`}return!1}function Wn(t,e){return t==null?e||null:typeof t=="function"?t(e):t}async function Ko(t,e,n){const s={tag:t,props:await bs(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(t)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(t))};return ws.forEach(o=>{const r=typeof s.props[o]<"u"?s.props[o]:n[o];typeof r<"u"&&((!["innerHTML","textContent","children"].includes(o)||Bo.includes(s.tag))&&(s[o==="children"?"innerHTML":o]=r),delete s.props[o])}),s.props.body&&(s.tagPosition="bodyClose",delete s.props.body),s.tag==="script"&&typeof s.innerHTML=="object"&&(s.innerHTML=JSON.stringify(s.innerHTML),s.props.type=s.props.type||"application/json"),Array.isArray(s.props.content)?s.props.content.map(o=>({...s,props:{...s.props,content:o}})):s}function Jo(t,e){var s;const n=t==="class"?" ":";";return typeof e=="object"&&!Array.isArray(e)&&(e=Object.entries(e).filter(([,o])=>o).map(([o,r])=>t==="style"?`${o}:${r}`:o)),(s=Array.isArray(e)?e.join(n):e)==null?void 0:s.split(n).filter(o=>o.trim()).filter(Boolean).join(n)}async function bs(t,e){for(const n of Object.keys(t)){if(["class","style"].includes(n)){t[n]=Jo(n,t[n]);continue}if(t[n]instanceof Promise&&(t[n]=await t[n]),!e&&!ws.includes(n)){const s=String(t[n]),o=n.startsWith("data-");s==="true"||s===""?t[n]=o?"true":!0:t[n]||(o&&s==="false"?t[n]="false":delete t[n])}}return t}const Go=10;async function Qo(t){const e=[];return Object.entries(t.resolvedInput).filter(([n,s])=>typeof s<"u"&&Wo.includes(n)).forEach(([n,s])=>{const o=Uo(s);e.push(...o.map(r=>Ko(n,r,t)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((n,s)=>(n._e=t._i,t.mode&&(n._m=t.mode),n._p=(t._i<l&&l[c]||void 0,e):a=e[i],typeof a<"u"?(a||"").replace(/"/g,'\\"'):!1}let o=t;try{o=decodeURI(t)}catch{}return(o.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(i=>{const a=s(i.slice(1));typeof a=="string"&&(t=t.replace(new RegExp(`\\${i}(\\W|$)`,"g"),(l,c)=>`${a}${c}`).trim())}),t.includes(ae)&&(t.endsWith(ae)&&(t=t.slice(0,-ae.length).trim()),t.startsWith(ae)&&(t=t.slice(ae.length).trim()),t=t.replace(new RegExp(`\\${ae}\\s*\\${ae}`,"g"),ae),t=Et(t,{separator:n},n)),t}async function Yo(t,e={}){var u;const n=e.document||t.resolvedOptions.document;if(!n||!t.dirty)return;const s={shouldRender:!0,tags:[]};if(await t.hooks.callHook("dom:beforeRender",s),!s.shouldRender)return;const o=(await t.resolveTags()).map(f=>({tag:f,id:Tt.includes(f.tag)?Bn(f):f.tag,shouldRender:!0}));let r=t._dom;if(!r){r={elMap:{htmlAttrs:n.documentElement,bodyAttrs:n.body}};for(const f of["body","head"]){const d=(u=n[f])==null?void 0:u.children,p=[];for(const g of[...d].filter(m=>Tt.includes(m.tagName.toLowerCase()))){const m={tag:g.tagName.toLowerCase(),props:await bs(g.getAttributeNames().reduce((v,w)=>({...v,[w]:g.getAttribute(w)}),{})),innerHTML:g.innerHTML};let y=1,_=ks(m);for(;_&&p.find(v=>v._d===_);)_=`${_}:${y++}`;m._d=_||void 0,p.push(m),r.elMap[g.getAttribute("data-hid")||Bn(m)]=g}}}r.pendingSideEffects={...r.sideEffects||{}},r.sideEffects={};function i(f,d,p){const g=`${f}:${d}`;r.sideEffects[g]=p,delete r.pendingSideEffects[g]}function a({id:f,$el:d,tag:p}){const g=p.tag.endsWith("Attrs");r.elMap[f]=d,g||(["textContent","innerHTML"].forEach(m=>{p[m]&&p[m]!==d[m]&&(d[m]=p[m])}),i(f,"el",()=>{var m;(m=r.elMap[f])==null||m.remove(),delete r.elMap[f]}));for(const[m,y]of Object.entries(p._eventHandlers||{}))d.getAttribute(`data-${m}`)!==""&&((p.tag==="bodyAttrs"?n.defaultView:d).addEventListener(m.replace("on",""),y.bind(d)),d.setAttribute(`data-${m}`,""));Object.entries(p.props).forEach(([m,y])=>{const _=`attr:${m}`;if(m==="class")for(const v of(y||"").split(" ").filter(Boolean))g&&i(f,`${_}:${v}`,()=>d.classList.remove(v)),!d.classList.contains(v)&&d.classList.add(v);else if(m==="style")for(const v of(y||"").split(";").filter(Boolean)){const[w,...b]=v.split(":").map(T=>T.trim());i(f,`${_}:${v}:${w}`,()=>{d.style.removeProperty(w)}),d.style.setProperty(w,b.join(":"))}else d.getAttribute(m)!==y&&d.setAttribute(m,y===!0?"":String(y)),g&&i(f,_,()=>d.removeAttribute(m))})}const l=[],c={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const f of o){const{tag:d,shouldRender:p,id:g}=f;if(p){if(d.tag==="title"){n.title=d.textContent;continue}f.$el=f.$el||r.elMap[g],f.$el?a(f):Tt.includes(d.tag)&&l.push(f)}}for(const f of l){const d=f.tag.tagPosition||"head";f.$el=n.createElement(f.tag.tag),a(f),c[d]=c[d]||n.createDocumentFragment(),c[d].appendChild(f.$el)}for(const f of o)await t.hooks.callHook("dom:renderTag",f,n,i);c.head&&n.head.appendChild(c.head),c.bodyOpen&&n.body.insertBefore(c.bodyOpen,n.body.firstChild),c.bodyClose&&n.body.appendChild(c.bodyClose),Object.values(r.pendingSideEffects).forEach(f=>f()),t._dom=r,t.dirty=!1,await t.hooks.callHook("dom:rendered",{renders:o})}async function Xo(t,e={}){const n=e.delayFn||(s=>setTimeout(s,10));return t._domUpdatePromise=t._domUpdatePromise||new Promise(s=>n(async()=>{await Yo(t,e),delete t._domUpdatePromise,s()}))}function er(t){return e=>{var s,o;const n=((o=(s=e.resolvedOptions.document)==null?void 0:s.head.querySelector('script[id="unhead:payload"]'))==null?void 0:o.innerHTML)||!1;return n&&e.push(JSON.parse(n)),{mode:"client",hooks:{"entries:updated":function(r){Xo(r,t)}}}}}const tr=["templateParams","htmlAttrs","bodyAttrs"],nr={hooks:{"tag:normalise":function({tag:t}){["hid","vmid","key"].forEach(s=>{t.props[s]&&(t.key=t.props[s],delete t.props[s])});const n=ks(t)||(t.key?`${t.tag}:${t.key}`:!1);n&&(t._d=n)},"tags:resolve":function(t){const e={};t.tags.forEach(s=>{const o=(s.key?`${s.tag}:${s.key}`:s._d)||s._p,r=e[o];if(r){let a=s==null?void 0:s.tagDuplicateStrategy;if(!a&&tr.includes(s.tag)&&(a="merge"),a==="merge"){const l=r.props;["class","style"].forEach(c=>{l[c]&&(s.props[c]?(c==="style"&&!l[c].endsWith(";")&&(l[c]+=";"),s.props[c]=`${l[c]} ${s.props[c]}`):s.props[c]=l[c])}),e[o].props={...l,...s.props};return}else if(s._e===r._e){r._duped=r._duped||[],s._d=`${r._d}:${r._duped.length+1}`,r._duped.push(s);return}else if(Rt(s)>Rt(r))return}const i=Object.keys(s.props).length+(s.innerHTML?1:0)+(s.textContent?1:0);if(Tt.includes(s.tag)&&i===0){delete e[o];return}e[o]=s});const n=[];Object.values(e).forEach(s=>{const o=s._duped;delete s._duped,n.push(s),o&&n.push(...o)}),t.tags=n,t.tags=t.tags.filter(s=>!(s.tag==="meta"&&(s.props.name||s.props.property)&&!s.props.content))}}},sr={mode:"server",hooks:{"tags:resolve":function(t){const e={};t.tags.filter(n=>["titleTemplate","templateParams","title"].includes(n.tag)&&n._m==="server").forEach(n=>{e[n.tag]=n.tag.startsWith("title")?n.textContent:n.props}),Object.keys(e).length&&t.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},or=["script","link","bodyAttrs"],rr=t=>({hooks:{"tags:resolve":function(e){for(const n of e.tags.filter(s=>or.includes(s.tag)))Object.entries(n.props).forEach(([s,o])=>{s.startsWith("on")&&typeof o=="function"&&(t.ssr&&Kn.includes(s)?n.props[s]=`this.dataset.${s}fired = true`:delete n.props[s],n._eventHandlers=n._eventHandlers||{},n._eventHandlers[s]=o)}),t.ssr&&n._eventHandlers&&(n.props.src||n.props.href)&&(n.key=n.key||$n(n.props.src||n.props.href))},"dom:renderTag":function({$el:e,tag:n}){var s,o;for(const r of Object.keys((e==null?void 0:e.dataset)||{}).filter(i=>Kn.some(a=>`${a}fired`===i))){const i=r.replace("fired","");(o=(s=n._eventHandlers)==null?void 0:s[i])==null||o.call(e,new Event(i.replace("on","")))}}}}),ir=["link","style","script","noscript"],ar={hooks:{"tag:normalise":({tag:t})=>{t.key&&ir.includes(t.tag)&&(t.props["data-hid"]=t._h=$n(t.key))}}},lr={hooks:{"tags:resolve":t=>{const e=n=>{var s;return(s=t.tags.find(o=>o._d===n))==null?void 0:s._p};for(const{prefix:n,offset:s}of Zo)for(const o of t.tags.filter(r=>typeof r.tagPriority=="string"&&r.tagPriority.startsWith(n))){const r=e(o.tagPriority.replace(n,""));typeof r<"u"&&(o._p=r+s)}t.tags.sort((n,s)=>n._p-s._p).sort((n,s)=>Rt(n)-Rt(s))}}},cr={meta:"content",link:"href",htmlAttrs:"lang"},ur=t=>({hooks:{"tags:resolve":e=>{var a;const{tags:n}=e,s=(a=n.find(l=>l.tag==="title"))==null?void 0:a.textContent,o=n.findIndex(l=>l.tag==="templateParams"),r=o!==-1?n[o].props:{},i=r.separator||"|";delete r.separator,r.pageTitle=Et(r.pageTitle||s||"",r,i);for(const l of n.filter(c=>c.processTemplateParams!==!1)){const c=cr[l.tag];c&&typeof l.props[c]=="string"?l.props[c]=Et(l.props[c],r,i):(l.processTemplateParams===!0||["titleTemplate","title"].includes(l.tag))&&["innerHTML","textContent"].forEach(u=>{typeof l[u]=="string"&&(l[u]=Et(l[u],r,i))})}t._templateParams=r,t._separator=i,e.tags=n.filter(l=>l.tag!=="templateParams")}}}),fr={hooks:{"tags:resolve":t=>{const{tags:e}=t;let n=e.findIndex(o=>o.tag==="titleTemplate");const s=e.findIndex(o=>o.tag==="title");if(s!==-1&&n!==-1){const o=Wn(e[n].textContent,e[s].textContent);o!==null?e[s].textContent=o||e[s].textContent:delete e[s]}else if(n!==-1){const o=Wn(e[n].textContent);o!==null&&(e[n].textContent=o,e[n].tag="title",n=-1)}n!==-1&&delete e[n],t.tags=e.filter(Boolean)}}},dr={hooks:{"tags:afterResolve":function(t){for(const e of t.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{a.dirty=!0,e.callHook("entries:updated",a)};let o=0,r=[];const i=[],a={plugins:i,dirty:!1,resolvedOptions:t,hooks:e,headEntries(){return r},use(l){const c=typeof l=="function"?l(a):l;(!c.key||!i.some(u=>u.key===c.key))&&(i.push(c),Jn(c.mode,n)&&e.addHooks(c.hooks||{}))},push(l,c){c==null||delete c.head;const u={_i:o++,input:l,...c};return Jn(u.mode,n)&&(r.push(u),s()),{dispose(){r=r.filter(f=>f._i!==u._i),e.callHook("entries:updated",a),s()},patch(f){r=r.map(d=>(d._i===u._i&&(d.input=u.input=f),d)),s()}}},async resolveTags(){const l={tags:[],entries:[...r]};await e.callHook("entries:resolve",l);for(const c of l.entries){const u=c.resolvedInput||c.input;if(c.resolvedInput=await(c.transform?c.transform(u):u),c.resolvedInput)for(const f of await Qo(c)){const d={tag:f,entry:c,resolvedOptions:a.resolvedOptions};await e.callHook("tag:normalise",d),l.tags.push(d.tag)}}return await e.callHook("tags:beforeResolve",l),await e.callHook("tags:resolve",l),await e.callHook("tags:afterResolve",l),l.tags},ssr:n};return[nr,sr,rr,ar,lr,ur,fr,dr,...(t==null?void 0:t.plugins)||[]].forEach(l=>a.use(l)),a.hooks.callHook("init",a),a}function gr(){return Ss}const mr=eo.startsWith("3");function yr(t){return typeof t=="function"?t():Tn(t)}function Ht(t,e=""){if(t instanceof Promise)return t;const n=yr(t);return!t||!n?n:Array.isArray(n)?n.map(s=>Ht(s,e)):typeof n=="object"?Object.fromEntries(Object.entries(n).map(([s,o])=>s==="titleTemplate"||s.startsWith("on")?[s,Tn(o)]:[s,Ht(o,s)])):n}const _r={hooks:{"entries:resolve":function(t){for(const e of t.entries)e.resolvedInput=Ht(e.input)}}},Ms="usehead";function vr(t){return{install(n){mr&&(n.config.globalProperties.$unhead=t,n.config.globalProperties.$head=t,n.provide(Ms,t))}}.install}function wr(t={}){t.domDelayFn=t.domDelayFn||(n=>It(()=>setTimeout(()=>n(),0)));const e=hr(t);return e.use(_r),e.install=vr(e),e}const Gn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Qn="__unhead_injection_handler__";function kr(){if(Qn in Gn)return Gn[Qn]();const t=hs(Ms);return t||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),t||gr()}function br(t,e={}){const n=e.head||kr();if(n)return n.ssr?n.push(t,e):Sr(n,t,e)}function Sr(t,e,n={}){const s=P(!1),o=P({});tt(()=>{o.value=s.value?{}:Ht(e)});const r=t.push(o.value,n);return Q(o,a=>{r.patch(a)}),ps()&&(to(()=>{r.dispose()}),no(()=>{s.value=!0}),so(()=>{s.value=!1})),r}function Os(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function Z(t,e,n){Object.defineProperty(t,e,{value:n,writable:!0,enumerable:!1})}const qe=k({page:0,clicks:0});let Mr=[],Or=[];Z(qe,"$syncUp",!0);Z(qe,"$syncDown",!0);Z(qe,"$paused",!1);Z(qe,"$onSet",t=>Mr.push(t));Z(qe,"$onPatch",t=>Or.push(t));Os();Z(qe,"$patch",async()=>!1);function Ts(t,e,n=!1){const s=[];let o=!1,r=!1,i,a;const l=k(e);function c(p){s.push(p)}function u(p,g){l[p]!==g&&(clearTimeout(i),o=!0,l[p]=g,i=setTimeout(()=>o=!1,0))}function f(p){o||(clearTimeout(a),r=!0,Object.entries(p).forEach(([g,m])=>{l[g]=m}),a=setTimeout(()=>r=!1,0))}function d(p){let g;n?n&&window.addEventListener("storage",y=>{y&&y.key===p&&y.newValue&&f(JSON.parse(y.newValue))}):(g=new BroadcastChannel(p),g.addEventListener("message",y=>f(y.data)));function m(){!n&&g&&!r?g.postMessage(oo(l)):n&&!r&&window.localStorage.setItem(p,JSON.stringify(l)),o||s.forEach(y=>y(l))}if(Q(l,m,{deep:!0,flush:"sync"}),n){const y=window.localStorage.getItem(p);y&&f(JSON.parse(y))}}return{init:d,onPatch:c,patch:u,state:l}}const{init:Tr,onPatch:Er,patch:it,state:hl}=Ts(qe,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),Ke=k({});let $r=[],Pr=[];Z(Ke,"$syncUp",!0);Z(Ke,"$syncDown",!0);Z(Ke,"$paused",!1);Z(Ke,"$onSet",t=>$r.push(t));Z(Ke,"$onPatch",t=>Pr.push(t));Os();Z(Ke,"$patch",async()=>!1);const{init:Lr,onPatch:pl,patch:gl,state:ml}=Ts(Ke,{},!1),Kt="$$slidev-clicks-context",Pn="$$slidev-page",Es="$$slidev-slide-element",Ar="$$slidev-slide-scale",Cr="$$slidev-context",yl="$$slidev-route",Ln="$$slidev-render-context",_l="$$slidev-active",Dr="$$slidev-fontmatter",Ir="$$slidev-slide-zoom",$t="slidev-vclick-target",at="slidev-vclick-hidden",lt="slidev-vclick-fade",en="slidev-vclick-hidden-explicitly",tn="slidev-vclick-current",nn="slidev-vclick-prior",dn=999999,Rr=["localhost","127.0.0.1"],Hr=["clicks","clicksStart","disabled","hide","hideInToc","layout","level","preload","routeAlias","src","title","transition","zoom","dragPos"],vl=[...Hr,"theme","titleTemplate","info","author","keywords","presenter","download","exportFilename","export","highlighter","lineNumbers","monaco","monacoTypesSource","monacoTypesAdditionalPackages","monacoRunAdditionalDeps","remoteAssets","selectable","record","colorSchema","routerMode","aspectRatio","canvasWidth","themeConfig","favicon","plantUmlServer","fonts","defaults","drawings","htmlAttrs","mdc","contextMenu"],$s=P(!1),An=Symbol.for("yaml.alias"),jr=Symbol.for("yaml.document"),ze=Symbol.for("yaml.map"),Ps=Symbol.for("yaml.pair"),Cn=Symbol.for("yaml.scalar"),vt=Symbol.for("yaml.seq"),re=Symbol.for("yaml.node.type"),st=t=>!!t&&typeof t=="object"&&t[re]===An,Jt=t=>!!t&&typeof t=="object"&&t[re]===jr,Ls=t=>!!t&&typeof t=="object"&&t[re]===ze,U=t=>!!t&&typeof t=="object"&&t[re]===Ps,F=t=>!!t&&typeof t=="object"&&t[re]===Cn,Dn=t=>!!t&&typeof t=="object"&&t[re]===vt;function J(t){if(t&&typeof t=="object")switch(t[re]){case ze:case vt:return!0}return!1}function q(t){if(t&&typeof t=="object")switch(t[re]){case An:case ze:case Cn:case vt:return!0}return!1}const xr=t=>(F(t)||J(t))&&!!t.anchor,Ue=Symbol("break visit"),Nr=Symbol("skip children"),dt=Symbol("remove node");function mt(t,e){const n=Fr(e);Jt(t)?Ze(null,t.contents,n,Object.freeze([t]))===dt&&(t.contents=null):Ze(null,t,n,Object.freeze([]))}mt.BREAK=Ue;mt.SKIP=Nr;mt.REMOVE=dt;function Ze(t,e,n,s){const o=Vr(t,e,n,s);if(q(o)||U(o))return Ur(t,s,o),Ze(t,o,n,s);if(typeof o!="symbol"){if(J(e)){s=Object.freeze(s.concat(e));for(let r=0;ree(s,String(o),n));if(t&&typeof t.toJSON=="function"){if(!n||!xr(t))return t.toJSON(e,n);const s={aliasCount:0,count:1,res:void 0};n.anchors.set(t,s),n.onCreate=r=>{s.res=r,delete n.onCreate};const o=t.toJSON(e,n);return n.onCreate&&n.onCreate(o),o}return typeof t=="bigint"&&!(n!=null&&n.keep)?Number(t):t}class In{constructor(e){Object.defineProperty(this,re,{value:e})}clone(){const e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:n,maxAliasCount:s,onAnchor:o,reviver:r}={}){if(!Jt(e))throw new TypeError("A document argument is required");const i={anchors:new Map,doc:e,keep:!0,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof s=="number"?s:100},a=ee(this,"",i);if(typeof o=="function")for(const{count:l,res:c}of i.anchors.values())o(c,l);return typeof r=="function"?ft(r,{"":a},"",a):a}}class Br extends In{constructor(e){super(An),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e){let n;return mt(e,{Node:(s,o)=>{if(o===this)return mt.BREAK;o.anchor===this.source&&(n=o)}}),n}toJSON(e,n){if(!n)return{source:this.source};const{anchors:s,doc:o,maxAliasCount:r}=n,i=this.resolve(o);if(!i){const l=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(l)}let a=s.get(i);if(a||(ee(i,null,n),a=s.get(i)),!a||a.res===void 0){const l="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(l)}if(r>=0&&(a.count+=1,a.aliasCount===0&&(a.aliasCount=Pt(o,i,s)),a.count*a.aliasCount>r)){const l="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(l)}return a.res}toString(e,n,s){const o=`*${this.source}`;if(e){if(As(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){const r=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(r)}if(e.implicitKey)return`${o} `}return o}}function Pt(t,e,n){if(st(e)){const s=e.resolve(t),o=n&&s&&n.get(s);return o?o.count*o.aliasCount:0}else if(J(e)){let s=0;for(const o of e.items){const r=Pt(t,o,n);r>s&&(s=r)}return s}else if(U(e)){const s=Pt(t,e.key,n),o=Pt(t,e.value,n);return Math.max(s,o)}return 1}const Cs=t=>!t||typeof t!="function"&&typeof t!="object";class x extends In{constructor(e){super(Cn),this.value=e}toJSON(e,n){return n!=null&&n.keep?this.value:ee(this.value,e,n)}toString(){return String(this.value)}}x.BLOCK_FOLDED="BLOCK_FOLDED";x.BLOCK_LITERAL="BLOCK_LITERAL";x.PLAIN="PLAIN";x.QUOTE_DOUBLE="QUOTE_DOUBLE";x.QUOTE_SINGLE="QUOTE_SINGLE";const Wr="tag:yaml.org,2002:";function zr(t,e,n){if(e){const s=n.filter(r=>r.tag===e),o=s.find(r=>!r.format)??s[0];if(!o)throw new Error(`Tag ${e} not found`);return o}return n.find(s=>{var o;return((o=s.identify)==null?void 0:o.call(s,t))&&!s.format})}function jt(t,e,n){var f,d,p;if(Jt(t)&&(t=t.contents),q(t))return t;if(U(t)){const g=(d=(f=n.schema[ze]).createNode)==null?void 0:d.call(f,n.schema,null,n);return g.items.push(t),g}(t instanceof String||t instanceof Number||t instanceof Boolean||typeof BigInt<"u"&&t instanceof BigInt)&&(t=t.valueOf());const{aliasDuplicateObjects:s,onAnchor:o,onTagObj:r,schema:i,sourceObjects:a}=n;let l;if(s&&t&&typeof t=="object"){if(l=a.get(t),l)return l.anchor||(l.anchor=o(t)),new Br(l.anchor);l={anchor:null,node:null},a.set(t,l)}e!=null&&e.startsWith("!!")&&(e=Wr+e.slice(2));let c=zr(t,e,i.tags);if(!c){if(t&&typeof t.toJSON=="function"&&(t=t.toJSON()),!t||typeof t!="object"){const g=new x(t);return l&&(l.node=g),g}c=t instanceof Map?i[ze]:Symbol.iterator in Object(t)?i[vt]:i[ze]}r&&(r(c),delete n.onTagObj);const u=c!=null&&c.createNode?c.createNode(n.schema,t,n):typeof((p=c==null?void 0:c.nodeClass)==null?void 0:p.from)=="function"?c.nodeClass.from(n.schema,t,n):new x(t);return e?u.tag=e:c.default||(u.tag=c.tag),l&&(l.node=u),u}function Zn(t,e,n){let s=n;for(let o=e.length-1;o>=0;--o){const r=e[o];if(typeof r=="number"&&Number.isInteger(r)&&r>=0){const i=[];i[r]=s,s=i}else s=new Map([[r,s]])}return jt(s,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:t,sourceObjects:new Map})}const qr=t=>t==null||typeof t=="object"&&!!t[Symbol.iterator]().next().done;class Rn extends In{constructor(e,n){super(e),Object.defineProperty(this,"schema",{value:n,configurable:!0,enumerable:!1,writable:!0})}clone(e){const n=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(n.schema=e),n.items=n.items.map(s=>q(s)||U(s)?s.clone(e):s),this.range&&(n.range=this.range.slice()),n}addIn(e,n){if(qr(e))this.add(n);else{const[s,...o]=e,r=this.get(s,!0);if(J(r))r.addIn(o,n);else if(r===void 0&&this.schema)this.set(s,Zn(this.schema,o,n));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${o}`)}}deleteIn(e){const[n,...s]=e;if(s.length===0)return this.delete(n);const o=this.get(n,!0);if(J(o))return o.deleteIn(s);throw new Error(`Expected YAML collection at ${n}. Remaining path: ${s}`)}getIn(e,n){const[s,...o]=e,r=this.get(s,!0);return o.length===0?!n&&F(r)?r.value:r:J(r)?r.getIn(o,n):void 0}hasAllNullValues(e){return this.items.every(n=>{if(!U(n))return!1;const s=n.value;return s==null||e&&F(s)&&s.value==null&&!s.commentBefore&&!s.comment&&!s.tag})}hasIn(e){const[n,...s]=e;if(s.length===0)return this.has(n);const o=this.get(n,!0);return J(o)?o.hasIn(s):!1}setIn(e,n){const[s,...o]=e;if(o.length===0)this.set(s,n);else{const r=this.get(s,!0);if(J(r))r.setIn(o,n);else if(r===void 0&&this.schema)this.set(s,Zn(this.schema,o,n));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${o}`)}}}Rn.maxFlowStringSingleLineLength=60;const Kr=t=>t.replace(/^(?!$)(?: $)?/gm,"#");function yt(t,e){return/^\n+$/.test(t)?t.substring(1):e?t.replace(/^(?! *$)/gm,e):t}const Ye=(t,e,n)=>t.endsWith(` +`)?yt(n,e):n.includes(` +`)?` +`+yt(n,e):(t.endsWith(" ")?"":" ")+n,Ds="flow",hn="block",Lt="quoted";function Gt(t,e,n="flow",{indentAtStart:s,lineWidth:o=80,minContentWidth:r=20,onFold:i,onOverflow:a}={}){if(!o||o<0)return t;const l=Math.max(1+r,1+o-e.length);if(t.length<=l)return t;const c=[],u={};let f=o-e.length;typeof s=="number"&&(s>o-Math.max(2,r)?c.push(0):f=o-s);let d,p,g=!1,m=-1,y=-1,_=-1;n===hn&&(m=Yn(t,m,e.length),m!==-1&&(f=m+l));for(let w;w=t[m+=1];){if(n===Lt&&w==="\\"){switch(y=m,t[m+1]){case"x":m+=3;break;case"u":m+=5;break;case"U":m+=9;break;default:m+=1}_=m}if(w===` +`)n===hn&&(m=Yn(t,m,e.length)),f=m+e.length+l,d=void 0;else{if(w===" "&&p&&p!==" "&&p!==` +`&&p!==" "){const b=t[m+1];b&&b!==" "&&b!==` +`&&b!==" "&&(d=m)}if(m>=f)if(d)c.push(d),f=d+l,d=void 0;else if(n===Lt){for(;p===" "||p===" ";)p=w,w=t[m+=1],g=!0;const b=m>_+1?m-2:y-1;if(u[b])return t;c.push(b),u[b]=!0,f=b+l,d=void 0}else g=!0}p=w}if(g&&a&&a(),c.length===0)return t;i&&i();let v=t.slice(0,c[0]);for(let w=0;w({indentAtStart:e?t.indent.length:t.indentAtStart,lineWidth:t.options.lineWidth,minContentWidth:t.options.minContentWidth}),Zt=t=>/^(%|---|\.\.\.)/m.test(t);function Jr(t,e,n){if(!e||e<0)return!1;const s=e-n,o=t.length;if(o<=s)return!1;for(let r=0,i=0;rs)return!0;if(i=r+1,o-i<=s)return!1}return!0}function ht(t,e){const n=JSON.stringify(t);if(e.options.doubleQuotedAsJSON)return n;const{implicitKey:s}=e,o=e.options.doubleQuotedMinMultiLineLength,r=e.indent||(Zt(t)?" ":"");let i="",a=0;for(let l=0,c=n[l];c;c=n[++l])if(c===" "&&n[l+1]==="\\"&&n[l+2]==="n"&&(i+=n.slice(a,l)+"\\ ",l+=1,a=l,c="\\"),c==="\\")switch(n[l+1]){case"u":{i+=n.slice(a,l);const u=n.substr(l+2,4);switch(u){case"0000":i+="\\0";break;case"0007":i+="\\a";break;case"000b":i+="\\v";break;case"001b":i+="\\e";break;case"0085":i+="\\N";break;case"00a0":i+="\\_";break;case"2028":i+="\\L";break;case"2029":i+="\\P";break;default:u.substr(0,2)==="00"?i+="\\x"+u.substr(2):i+=n.substr(l,6)}l+=5,a=l+1}break;case"n":if(s||n[l+2]==='"'||n.length +`;let f,d;for(d=n.length;d>0;--d){const M=n[d-1];if(M!==` +`&&M!==" "&&M!==" ")break}let p=n.substring(d);const g=p.indexOf(` +`);g===-1?f="-":n===p||g!==p.length-1?(f="+",r&&r()):f="",p&&(n=n.slice(0,-p.length),p[p.length-1]===` +`&&(p=p.slice(0,-1)),p=p.replace(gn,`$&${c}`));let m=!1,y,_=-1;for(y=0;y")+(m?c?"2":"1":"")+f;if(t&&(b+=" "+a(t.replace(/ ?[\r\n]+/g," ")),o&&o()),u)return n=n.replace(/\n+/g,`$&${c}`),`${b} +${c}${v}${n}${p}`;n=n.replace(/\n+/g,` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${c}`);const T=Gt(`${v}${n}${p}`,c,hn,Qt(s,!0));return`${b} +${c}${T}`}function Gr(t,e,n,s){const{type:o,value:r}=t,{actualString:i,implicitKey:a,indent:l,indentStep:c,inFlow:u}=e;if(a&&r.includes(` +`)||u&&/[[\]{},]/.test(r))return Xe(r,e);if(!r||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(r))return a||u||!r.includes(` +`)?Xe(r,e):At(t,e,n,s);if(!a&&!u&&o!==x.PLAIN&&r.includes(` +`))return At(t,e,n,s);if(Zt(r)){if(l==="")return e.forceBlockIndent=!0,At(t,e,n,s);if(a&&l===c)return Xe(r,e)}const f=r.replace(/\n+/g,`$& +${l}`);if(i){const d=m=>{var y;return m.default&&m.tag!=="tag:yaml.org,2002:str"&&((y=m.test)==null?void 0:y.test(f))},{compat:p,tags:g}=e.doc.schema;if(g.some(d)||p!=null&&p.some(d))return Xe(r,e)}return a?f:Gt(f,l,Ds,Qt(e,!1))}function Qr(t,e,n,s){const{implicitKey:o,inFlow:r}=e,i=typeof t.value=="string"?t:Object.assign({},t,{value:String(t.value)});let{type:a}=t;a!==x.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(i.value)&&(a=x.QUOTE_DOUBLE);const l=u=>{switch(u){case x.BLOCK_FOLDED:case x.BLOCK_LITERAL:return o||r?Xe(i.value,e):At(i,e,n,s);case x.QUOTE_DOUBLE:return ht(i.value,e);case x.QUOTE_SINGLE:return pn(i.value,e);case x.PLAIN:return Gr(i,e,n,s);default:return null}};let c=l(a);if(c===null){const{defaultKeyType:u,defaultStringType:f}=e.options,d=o&&u||f;if(c=l(d),c===null)throw new Error(`Unsupported default string type ${d}`)}return c}function Zr(t,e){const n=Object.assign({blockQuote:!0,commentString:Kr,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},t.schema.toStringOptions,e);let s;switch(n.collectionStyle){case"block":s=!1;break;case"flow":s=!0;break;default:s=null}return{anchors:new Set,doc:t,flowCollectionPadding:n.flowCollectionPadding?" ":"",indent:"",indentStep:typeof n.indent=="number"?" ".repeat(n.indent):" ",inFlow:s,options:n}}function Yr(t,e){var o;if(e.tag){const r=t.filter(i=>i.tag===e.tag);if(r.length>0)return r.find(i=>i.format===e.format)??r[0]}let n,s;if(F(e)){s=e.value;const r=t.filter(i=>{var a;return(a=i.identify)==null?void 0:a.call(i,s)});n=r.find(i=>i.format===e.format)??r.find(i=>!i.format)}else s=e,n=t.find(r=>r.nodeClass&&s instanceof r.nodeClass);if(!n){const r=((o=s==null?void 0:s.constructor)==null?void 0:o.name)??typeof s;throw new Error(`Tag not resolved for ${r} value`)}return n}function Xr(t,e,{anchors:n,doc:s}){if(!s.directives)return"";const o=[],r=(F(t)||J(t))&&t.anchor;r&&As(r)&&(n.add(r),o.push(`&${r}`));const i=t.tag?t.tag:e.default?null:e.tag;return i&&o.push(s.directives.tagString(i)),o.join(" ")}function xt(t,e,n,s){var l;if(U(t))return t.toString(e,n,s);if(st(t)){if(e.doc.directives)return t.toString(e);if((l=e.resolvedAliases)!=null&&l.has(t))throw new TypeError("Cannot stringify circular structure without alias nodes");e.resolvedAliases?e.resolvedAliases.add(t):e.resolvedAliases=new Set([t]),t=t.resolve(e.doc)}let o;const r=q(t)?t:e.doc.createNode(t,{onTagObj:c=>o=c});o||(o=Yr(e.doc.schema.tags,r));const i=Xr(r,o,e);i.length>0&&(e.indentAtStart=(e.indentAtStart??0)+i.length+1);const a=typeof o.stringify=="function"?o.stringify(r,e,n,s):F(r)?Qr(r,e,n,s):r.toString(e,n,s);return i?F(r)||a[0]==="{"||a[0]==="["?`${i} ${a}`:`${i} +${e.indent}${a}`:a}function ei({key:t,value:e},n,s,o){const{allNullValues:r,doc:i,indent:a,indentStep:l,options:{commentString:c,indentSeq:u,simpleKeys:f}}=n;let d=q(t)&&t.comment||null;if(f){if(d)throw new Error("With simple keys, key nodes cannot have comments");if(J(t)){const L="With simple keys, collection cannot be used as a key value";throw new Error(L)}}let p=!f&&(!t||d&&e==null&&!n.inFlow||J(t)||(F(t)?t.type===x.BLOCK_FOLDED||t.type===x.BLOCK_LITERAL:typeof t=="object"));n=Object.assign({},n,{allNullValues:!1,implicitKey:!p&&(f||!r),indent:a+l});let g=!1,m=!1,y=xt(t,n,()=>g=!0,()=>m=!0);if(!p&&!n.inFlow&&y.length>1024){if(f)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");p=!0}if(n.inFlow){if(r||e==null)return g&&s&&s(),y===""?"?":p?`? ${y}`:y}else if(r&&!f||e==null&&p)return y=`? ${y}`,d&&!g?y+=Ye(y,n.indent,c(d)):m&&o&&o(),y;g&&(d=null),p?(d&&(y+=Ye(y,n.indent,c(d))),y=`? ${y} +${a}:`):(y=`${y}:`,d&&(y+=Ye(y,n.indent,c(d))));let _,v,w;q(e)?(_=!!e.spaceBefore,v=e.commentBefore,w=e.comment):(_=!1,v=null,w=null,e&&typeof e=="object"&&(e=i.createNode(e))),n.implicitKey=!1,!p&&!d&&F(e)&&(n.indentAtStart=y.length+1),m=!1,!u&&l.length>=2&&!n.inFlow&&!p&&Dn(e)&&!e.flow&&!e.tag&&!e.anchor&&(n.indent=n.indent.substring(2));let b=!1;const T=xt(e,n,()=>b=!0,()=>m=!0);let M=" ";if(d||_||v){if(M=_?` +`:"",v){const L=c(v);M+=` +${yt(L,n.indent)}`}T===""&&!n.inFlow?M===` +`&&(M=` + +`):M+=` +${n.indent}`}else if(!p&&J(e)){const L=T[0],A=T.indexOf(` +`),I=A!==-1,V=n.inFlow??e.flow??e.items.length===0;if(I||!V){let ne=!1;if(I&&(L==="&"||L==="!")){let $=T.indexOf(" ");L==="&"&&$!==-1&&$t===Xn||F(t)&&t.value===Xn&&(!t.type||t.type===x.PLAIN);function sn(t,e,n){const s=t&&st(n)?n.resolve(t.doc):n;if(!Ls(s))throw new Error("Merge sources must be maps or map aliases");const o=s.toJSON(null,t,Map);for(const[r,i]of o)e instanceof Map?e.has(r)||e.set(r,i):e instanceof Set?e.add(r):Object.prototype.hasOwnProperty.call(e,r)||Object.defineProperty(e,r,{value:i,writable:!0,enumerable:!0,configurable:!0});return e}function si(t,e,n){if(e===null)return"";if(typeof e!="object")return String(e);if(q(t)&&(n!=null&&n.doc)){const s=Zr(n.doc,{});s.anchors=new Set;for(const r of n.anchors.keys())s.anchors.add(r.anchor);s.inFlow=!0,s.inStringifyKey=!0;const o=t.toString(s);if(!n.mapKeyWarned){let r=JSON.stringify(o);r.length>40&&(r=r.substring(0,36)+'..."'),ti(n.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${r}. Set mapAsMap: true to use object keys.`),n.mapKeyWarned=!0}return o}return JSON.stringify(e)}function Hn(t,e,n){const s=jt(t,void 0,n),o=jt(e,void 0,n);return new ie(s,o)}class ie{constructor(e,n=null){Object.defineProperty(this,re,{value:Ps}),this.key=e,this.value=n}clone(e){let{key:n,value:s}=this;return q(n)&&(n=n.clone(e)),q(s)&&(s=s.clone(e)),new ie(n,s)}toJSON(e,n){const s=n!=null&&n.mapAsMap?new Map:{};return Is(n,s,this)}toString(e,n,s){return e!=null&&e.doc?ei(this,e,n,s):JSON.stringify(this)}}function Rs(t,e,n){return(e.inFlow??t.flow?ri:oi)(t,e,n)}function oi({comment:t,items:e},n,{blockItemPrefix:s,flowChars:o,itemIndent:r,onChompKeep:i,onComment:a}){const{indent:l,options:{commentString:c}}=n,u=Object.assign({},n,{indent:r,type:null});let f=!1;const d=[];for(let g=0;gy=null,()=>f=!0);y&&(_+=Ye(_,r,c(y))),f&&y&&(f=!1),d.push(s+_)}let p;if(d.length===0)p=o.start+o.end;else{p=d[0];for(let g=1;gy=null);gu||_.includes(` +`))&&(c=!0),f.push(_),u=f.length}const{start:d,end:p}=n;if(f.length===0)return d+p;if(!c){const g=f.reduce((m,y)=>m+y.length+2,2);c=e.options.lineWidth>0&&g>e.options.lineWidth}if(c){let g=d;for(const m of f)g+=m?` +${r}${o}${m}`:` +`;return`${g} +${o}${p}`}else return`${d}${i}${f.join(" ")}${i}${p}`}function Nt({indent:t,options:{commentString:e}},n,s,o){if(s&&o&&(s=s.replace(/^\n+/,"")),s){const r=yt(e(s),t);n.push(r.trimStart())}}function We(t,e){const n=F(e)?e.value:e;for(const s of t)if(U(s)&&(s.key===e||s.key===n||F(s.key)&&s.key.value===n))return s}class Ge extends Rn{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(ze,e),this.items=[]}static from(e,n,s){const{keepUndefined:o,replacer:r}=s,i=new this(e),a=(l,c)=>{if(typeof r=="function")c=r.call(n,l,c);else if(Array.isArray(r)&&!r.includes(l))return;(c!==void 0||o)&&i.items.push(Hn(l,c,s))};if(n instanceof Map)for(const[l,c]of n)a(l,c);else if(n&&typeof n=="object")for(const l of Object.keys(n))a(l,n[l]);return typeof e.sortMapEntries=="function"&&i.items.sort(e.sortMapEntries),i}add(e,n){var i;let s;U(e)?s=e:!e||typeof e!="object"||!("key"in e)?s=new ie(e,e==null?void 0:e.value):s=new ie(e.key,e.value);const o=We(this.items,s.key),r=(i=this.schema)==null?void 0:i.sortMapEntries;if(o){if(!n)throw new Error(`Key ${s.key} already set`);F(o.value)&&Cs(s.value)?o.value.value=s.value:o.value=s.value}else if(r){const a=this.items.findIndex(l=>r(s,l)<0);a===-1?this.items.push(s):this.items.splice(a,0,s)}else this.items.push(s)}delete(e){const n=We(this.items,e);return n?this.items.splice(this.items.indexOf(n),1).length>0:!1}get(e,n){const s=We(this.items,e),o=s==null?void 0:s.value;return(!n&&F(o)?o.value:o)??void 0}has(e){return!!We(this.items,e)}set(e,n){this.add(new ie(e,n),!0)}toJSON(e,n,s){const o=s?new s:n!=null&&n.mapAsMap?new Map:{};n!=null&&n.onCreate&&n.onCreate(o);for(const r of this.items)Is(n,o,r);return o}toString(e,n,s){if(!e)return JSON.stringify(this);for(const o of this.items)if(!U(o))throw new Error(`Map items must all be pairs; found ${JSON.stringify(o)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),Rs(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:s,onComment:n})}}class Hs extends Rn{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(vt,e),this.items=[]}add(e){this.items.push(e)}delete(e){const n=kt(e);return typeof n!="number"?!1:this.items.splice(n,1).length>0}get(e,n){const s=kt(e);if(typeof s!="number")return;const o=this.items[s];return!n&&F(o)?o.value:o}has(e){const n=kt(e);return typeof n=="number"&&n=0?e:null}function ii(t,e,n){const{replacer:s}=n,o=new Hs(t);o.tag="tag:yaml.org,2002:pairs";let r=0;if(e&&Symbol.iterator in Object(e))for(let i of e){typeof s=="function"&&(i=s.call(e,String(r++),i));let a,l;if(Array.isArray(i))if(i.length===2)a=i[0],l=i[1];else throw new TypeError(`Expected [key, value] tuple: ${i}`);else if(i&&i instanceof Object){const c=Object.keys(i);if(c.length===1)a=c[0],l=i[a];else throw new TypeError(`Expected tuple with one key, not ${c.length} keys`)}else a=i;o.items.push(Hn(a,l,n))}return o}class jn extends Hs{constructor(){super(),this.add=Ge.prototype.add.bind(this),this.delete=Ge.prototype.delete.bind(this),this.get=Ge.prototype.get.bind(this),this.has=Ge.prototype.has.bind(this),this.set=Ge.prototype.set.bind(this),this.tag=jn.tag}toJSON(e,n){if(!n)return super.toJSON(e);const s=new Map;n!=null&&n.onCreate&&n.onCreate(s);for(const o of this.items){let r,i;if(U(o)?(r=ee(o.key,"",n),i=ee(o.value,r,n)):r=ee(o,"",n),s.has(r))throw new Error("Ordered maps must not include duplicate keys");s.set(r,i)}return s}static from(e,n,s){const o=ii(e,n,s),r=new this;return r.items=o.items,r}}jn.tag="tag:yaml.org,2002:omap";class xn extends Ge{constructor(e){super(e),this.tag=xn.tag}add(e){let n;U(e)?n=e:e&&typeof e=="object"&&"key"in e&&"value"in e&&e.value===null?n=new ie(e.key,null):n=new ie(e,null),We(this.items,n.key)||this.items.push(n)}get(e,n){const s=We(this.items,e);return!n&&U(s)?F(s.key)?s.key.value:s.key:s}set(e,n){if(typeof n!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof n}`);const s=We(this.items,e);s&&!n?this.items.splice(this.items.indexOf(s),1):!s&&n&&this.items.push(new ie(e))}toJSON(e,n){return super.toJSON(e,n,Set)}toString(e,n,s){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),n,s);throw new Error("Set items must all have null values")}static from(e,n,s){const{replacer:o}=s,r=new this(e);if(n&&Symbol.iterator in Object(n))for(let i of n)typeof o=="function"&&(i=o.call(n,i,i)),r.items.push(Hn(i,null,s));return r}}xn.tag="tag:yaml.org,2002:set";function ai(t){return Array.from(new Set(t))}function es(...t){let e,n,s;t.length===1?(e=0,s=1,[n]=t):[e,n,s=1]=t;const o=[];let r=e;for(;rs<=t).sort((s,o)=>s-o)}function wl(){const t=P(Date.now()),e=ro({interval:1e3}),n=h(()=>{const o=(e.value-t.value)/1e3,r=Math.floor(o%60).toString().padStart(2,"0");return`${Math.floor(o/60).toString().padStart(2,"0")}:${r}`});function s(){t.value=e.value}return{timer:n,resetTimer:s}}function Nn(t=5){const e=[],n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",s=n.length;for(let o=0;o0){const r=document.getElementsByTagName("link"),i=document.querySelector("meta[property=csp-nonce]"),a=(i==null?void 0:i.nonce)||(i==null?void 0:i.getAttribute("nonce"));o=Promise.all(n.map(l=>{if(l=ui(l),l in ts)return;ts[l]=!0;const c=l.endsWith(".css"),u=c?'[rel="stylesheet"]':"";if(!!s)for(let p=r.length-1;p>=0;p--){const g=r[p];if(g.href===l&&(!c||g.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${u}`))return;const d=document.createElement("link");if(d.rel=c?"stylesheet":ci,c||(d.as="script",d.crossOrigin=""),d.href=l,a&&d.setAttribute("nonce",a),document.head.appendChild(d),c)return new Promise((p,g)=>{d.addEventListener("load",p),d.addEventListener("error",()=>g(new Error(`Unable to preload CSS for ${l}`)))})}))}return o.then(()=>e()).catch(r=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=r,window.dispatchEvent(i),!i.defaultPrevented)throw r})},js=(t,e)=>{const n=t.__vccOpts||t;for(const[s,o]of e)n[s]=o;return n},fi={},di={class:"px-4 py-10 text-center text-red-700 dark:text-red-500 font-bold font-mono"};function hi(t,e){return gs(),io("div",di," An error occurred on this slide. Check the terminal for more information. ")}const pi=js(fi,[["render",hi],["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/error.vue"]]),E=Object.freeze(Object.defineProperty({__proto__:null,default:pi},Symbol.toStringTag,{value:"Module"})),ue=k({theme:"default",layout:"cover"}),gi=k({layout:h(()=>ue.layout),transition:h(()=>ue.transition),class:h(()=>ue.class),clicks:h(()=>ue.clicks),name:h(()=>ue.name),preload:h(()=>ue.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:ue,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),fe=k({layout:"two-cols"}),mi=k({layout:h(()=>fe.layout),transition:h(()=>fe.transition),class:h(()=>fe.class),clicks:h(()=>fe.clicks),name:h(()=>fe.name),preload:h(()=>fe.preload),slide:{index:1,content:"",note:"",title:"回顾",level:1,noteHTML:"",raw:"",frontmatter:fe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:11,id:1,no:2},__clicksContext:null,__preloaded:!1}),de=k({layout:"two-cols"}),yi=k({layout:h(()=>de.layout),transition:h(()=>de.transition),class:h(()=>de.class),clicks:h(()=>de.clicks),name:h(()=>de.name),preload:h(()=>de.preload),slide:{index:2,content:"",note:"",title:"问题一",level:1,noteHTML:"",raw:"",frontmatter:de,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:30,id:2,no:3},__clicksContext:null,__preloaded:!1}),he=k({}),_i=k({layout:h(()=>he.layout),transition:h(()=>he.transition),class:h(()=>he.class),clicks:h(()=>he.clicks),name:h(()=>he.name),preload:h(()=>he.preload),slide:{index:3,content:"",note:"",title:"问题二",level:1,noteHTML:"",raw:"",frontmatter:he,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:72,id:3,no:4},__clicksContext:null,__preloaded:!1}),pe=k({}),vi=k({layout:h(()=>pe.layout),transition:h(()=>pe.transition),class:h(()=>pe.class),clicks:h(()=>pe.clicks),name:h(()=>pe.name),preload:h(()=>pe.preload),slide:{index:4,content:"",note:"",title:"RESTful Petclinic",level:1,noteHTML:"",raw:"",frontmatter:pe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:93,id:4,no:5},__clicksContext:null,__preloaded:!1}),ge=k({layout:"two-cols"}),wi=k({layout:h(()=>ge.layout),transition:h(()=>ge.transition),class:h(()=>ge.class),clicks:h(()=>ge.clicks),name:h(()=>ge.name),preload:h(()=>ge.preload),slide:{index:5,content:"",note:"",title:"REST架构风格",level:1,noteHTML:"",raw:"",frontmatter:ge,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:103,id:5,no:6},__clicksContext:null,__preloaded:!1}),me=k({layout:"two-cols"}),ki=k({layout:h(()=>me.layout),transition:h(()=>me.transition),class:h(()=>me.class),clicks:h(()=>me.clicks),name:h(()=>me.name),preload:h(()=>me.preload),slide:{index:6,content:"",note:"",title:"REST",level:1,noteHTML:"",raw:"",frontmatter:me,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:124,id:6,no:7},__clicksContext:null,__preloaded:!1}),ye=k({}),bi=k({layout:h(()=>ye.layout),transition:h(()=>ye.transition),class:h(()=>ye.class),clicks:h(()=>ye.clicks),name:h(()=>ye.name),preload:h(()=>ye.preload),slide:{index:7,content:"",note:"",title:"REST",level:1,noteHTML:"",raw:"",frontmatter:ye,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:150,id:7,no:8},__clicksContext:null,__preloaded:!1}),_e=k({}),Si=k({layout:h(()=>_e.layout),transition:h(()=>_e.transition),class:h(()=>_e.class),clicks:h(()=>_e.clicks),name:h(()=>_e.name),preload:h(()=>_e.preload),slide:{index:8,content:"",note:"",title:"资源",level:1,noteHTML:"",raw:"",frontmatter:_e,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:162,id:8,no:9},__clicksContext:null,__preloaded:!1}),ve=k({}),Mi=k({layout:h(()=>ve.layout),transition:h(()=>ve.transition),class:h(()=>ve.class),clicks:h(()=>ve.clicks),name:h(()=>ve.name),preload:h(()=>ve.preload),slide:{index:9,content:"",note:"",title:"资源标识",level:1,noteHTML:"",raw:"",frontmatter:ve,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:174,id:9,no:10},__clicksContext:null,__preloaded:!1}),we=k({}),Oi=k({layout:h(()=>we.layout),transition:h(()=>we.transition),class:h(()=>we.class),clicks:h(()=>we.clicks),name:h(()=>we.name),preload:h(()=>we.preload),slide:{index:10,content:"",note:"",title:"URI设计原则",level:1,noteHTML:"",raw:"",frontmatter:we,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:187,id:10,no:11},__clicksContext:null,__preloaded:!1}),ke=k({}),Ti=k({layout:h(()=>ke.layout),transition:h(()=>ke.transition),class:h(()=>ke.class),clicks:h(()=>ke.clicks),name:h(()=>ke.name),preload:h(()=>ke.preload),slide:{index:11,content:"",note:"",title:"统一资源接口",level:1,noteHTML:"",raw:"",frontmatter:ke,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:200,id:11,no:12},__clicksContext:null,__preloaded:!1}),be=k({}),Ei=k({layout:h(()=>be.layout),transition:h(()=>be.transition),class:h(()=>be.class),clicks:h(()=>be.clicks),name:h(()=>be.name),preload:h(()=>be.preload),slide:{index:12,content:"",note:"",title:"GET",level:3,noteHTML:"",raw:"",frontmatter:be,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:209,id:12,no:13},__clicksContext:null,__preloaded:!1}),Se=k({}),$i=k({layout:h(()=>Se.layout),transition:h(()=>Se.transition),class:h(()=>Se.class),clicks:h(()=>Se.clicks),name:h(()=>Se.name),preload:h(()=>Se.preload),slide:{index:13,content:"",note:"",title:"POST",level:3,noteHTML:"",raw:"",frontmatter:Se,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:226,id:13,no:14},__clicksContext:null,__preloaded:!1}),Me=k({}),Pi=k({layout:h(()=>Me.layout),transition:h(()=>Me.transition),class:h(()=>Me.class),clicks:h(()=>Me.clicks),name:h(()=>Me.name),preload:h(()=>Me.preload),slide:{index:14,content:"",note:"",title:"PUT",level:3,noteHTML:"",raw:"",frontmatter:Me,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:245,id:14,no:15},__clicksContext:null,__preloaded:!1}),Oe=k({}),Li=k({layout:h(()=>Oe.layout),transition:h(()=>Oe.transition),class:h(()=>Oe.class),clicks:h(()=>Oe.clicks),name:h(()=>Oe.name),preload:h(()=>Oe.preload),slide:{index:15,content:"",note:"",title:"DELETE",level:3,noteHTML:"",raw:"",frontmatter:Oe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:264,id:15,no:16},__clicksContext:null,__preloaded:!1}),Te=k({}),Ai=k({layout:h(()=>Te.layout),transition:h(()=>Te.transition),class:h(()=>Te.class),clicks:h(()=>Te.clicks),name:h(()=>Te.name),preload:h(()=>Te.preload),slide:{index:16,content:"",note:"",title:"指导意义",level:1,noteHTML:"",raw:"",frontmatter:Te,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:279,id:16,no:17},__clicksContext:null,__preloaded:!1}),Ee=k({}),Ci=k({layout:h(()=>Ee.layout),transition:h(()=>Ee.transition),class:h(()=>Ee.class),clicks:h(()=>Ee.clicks),name:h(()=>Ee.name),preload:h(()=>Ee.preload),slide:{index:17,content:"",note:"",title:"表现(Representation)/表述/表征",level:1,noteHTML:"",raw:"",frontmatter:Ee,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:292,id:17,no:18},__clicksContext:null,__preloaded:!1}),$e=k({}),Di=k({layout:h(()=>$e.layout),transition:h(()=>$e.transition),class:h(()=>$e.class),clicks:h(()=>$e.clicks),name:h(()=>$e.name),preload:h(()=>$e.preload),slide:{index:18,content:"",note:"",title:"资源表述",level:1,noteHTML:"",raw:"",frontmatter:$e,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:301,id:18,no:19},__clicksContext:null,__preloaded:!1}),Pe=k({layout:"two-cols"}),Ii=k({layout:h(()=>Pe.layout),transition:h(()=>Pe.transition),class:h(()=>Pe.class),clicks:h(()=>Pe.clicks),name:h(()=>Pe.name),preload:h(()=>Pe.preload),slide:{index:19,content:"",note:"",title:"资源表述",level:1,noteHTML:"",raw:"",frontmatter:Pe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:308,id:19,no:20},__clicksContext:null,__preloaded:!1}),Le=k({}),Ri=k({layout:h(()=>Le.layout),transition:h(()=>Le.transition),class:h(()=>Le.class),clicks:h(()=>Le.clicks),name:h(()=>Le.name),preload:h(()=>Le.preload),slide:{index:20,content:"",note:"",title:"资源表述",level:1,noteHTML:"",raw:"",frontmatter:Le,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:329,id:20,no:21},__clicksContext:null,__preloaded:!1}),Ae=k({layout:"two-cols"}),Hi=k({layout:h(()=>Ae.layout),transition:h(()=>Ae.transition),class:h(()=>Ae.class),clicks:h(()=>Ae.clicks),name:h(()=>Ae.name),preload:h(()=>Ae.preload),slide:{index:21,content:"",note:"",title:"资源链接",level:1,noteHTML:"",raw:"",frontmatter:Ae,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:343,id:21,no:22},__clicksContext:null,__preloaded:!1}),Ce=k({}),ji=k({layout:h(()=>Ce.layout),transition:h(()=>Ce.transition),class:h(()=>Ce.class),clicks:h(()=>Ce.clicks),name:h(()=>Ce.name),preload:h(()=>Ce.preload),slide:{index:22,content:"",note:"",title:"资源链接",level:1,noteHTML:"",raw:"",frontmatter:Ce,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:361,id:22,no:23},__clicksContext:null,__preloaded:!1}),De=k({}),xi=k({layout:h(()=>De.layout),transition:h(()=>De.transition),class:h(()=>De.class),clicks:h(()=>De.clicks),name:h(()=>De.name),preload:h(()=>De.preload),slide:{index:23,content:"",note:"",title:"状态转移(State Transfer)",level:1,noteHTML:"",raw:"",frontmatter:De,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:373,id:23,no:24},__clicksContext:null,__preloaded:!1}),Ie=k({layout:"center"}),Ni=k({layout:h(()=>Ie.layout),transition:h(()=>Ie.transition),class:h(()=>Ie.class),clicks:h(()=>Ie.clicks),name:h(()=>Ie.name),preload:h(()=>Ie.preload),slide:{index:24,content:"",note:"",noteHTML:"",raw:"",frontmatter:Ie,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:381,id:24,no:25},__clicksContext:null,__preloaded:!1}),Re=k({layout:"two-cols"}),Fi=k({layout:h(()=>Re.layout),transition:h(()=>Re.transition),class:h(()=>Re.class),clicks:h(()=>Re.clicks),name:h(()=>Re.name),preload:h(()=>Re.preload),slide:{index:25,content:"",note:"",title:"一个完整的故事",level:1,noteHTML:"",raw:"",frontmatter:Re,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:390,id:25,no:26},__clicksContext:null,__preloaded:!1}),He=k({layout:"two-cols"}),Vi=k({layout:h(()=>He.layout),transition:h(()=>He.transition),class:h(()=>He.class),clicks:h(()=>He.clicks),name:h(()=>He.name),preload:h(()=>He.preload),slide:{index:26,content:"",note:"",title:"一个完整的故事-2",level:1,noteHTML:"",raw:"",frontmatter:He,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:404,id:26,no:27},__clicksContext:null,__preloaded:!1}),je=k({layout:"two-cols"}),Ui=k({layout:h(()=>je.layout),transition:h(()=>je.transition),class:h(()=>je.class),clicks:h(()=>je.clicks),name:h(()=>je.name),preload:h(()=>je.preload),slide:{index:27,content:"",note:"",title:"一个完整的故事-3",level:1,noteHTML:"",raw:"",frontmatter:je,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:418,id:27,no:28},__clicksContext:null,__preloaded:!1}),xe=k({layout:"two-cols"}),Bi=k({layout:h(()=>xe.layout),transition:h(()=>xe.transition),class:h(()=>xe.class),clicks:h(()=>xe.clicks),name:h(()=>xe.name),preload:h(()=>xe.preload),slide:{index:28,content:"",note:"",title:"一个完整的故事-4",level:1,noteHTML:"",raw:"",frontmatter:xe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:433,id:28,no:29},__clicksContext:null,__preloaded:!1}),Ne=k({layout:"two-cols"}),Wi=k({layout:h(()=>Ne.layout),transition:h(()=>Ne.transition),class:h(()=>Ne.class),clicks:h(()=>Ne.clicks),name:h(()=>Ne.name),preload:h(()=>Ne.preload),slide:{index:29,content:"",note:"",title:"一个完整的故事-5",level:1,noteHTML:"",raw:"",frontmatter:Ne,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:447,id:29,no:30},__clicksContext:null,__preloaded:!1}),Fe=k({}),zi=k({layout:h(()=>Fe.layout),transition:h(()=>Fe.transition),class:h(()=>Fe.class),clicks:h(()=>Fe.clicks),name:h(()=>Fe.name),preload:h(()=>Fe.preload),slide:{index:30,content:"",note:"",title:"Tutorial",level:1,noteHTML:"",raw:"",frontmatter:Fe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:463,id:30,no:31},__clicksContext:null,__preloaded:!1}),Ve=k({}),qi=k({layout:h(()=>Ve.layout),transition:h(()=>Ve.transition),class:h(()=>Ve.class),clicks:h(()=>Ve.clicks),name:h(()=>Ve.name),preload:h(()=>Ve.preload),slide:{index:31,content:"",note:"",title:"Demo",level:1,noteHTML:"",raw:"",frontmatter:Ve,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/05-restful.md",start:473,id:31,no:32},__clicksContext:null,__preloaded:!1}),Ki=[{no:1,meta:gi,component:async()=>{try{return await O(()=>import("./slidev/1-DFXCcPRS.js"),__vite__mapDeps([0,1,2,3,4]))}catch(t){return console.error("Failed to load slide 1:",t),E}}},{no:2,meta:mi,component:async()=>{try{return await O(()=>import("./2-D9a51Lhn.js"),__vite__mapDeps([5,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 2:",t),E}}},{no:3,meta:yi,component:async()=>{try{return await O(()=>import("./3-CyDAncdi.js"),__vite__mapDeps([7,8,9,1,2,6,3,4]))}catch(t){return console.error("Failed to load slide 3:",t),E}}},{no:4,meta:_i,component:async()=>{try{return await O(()=>import("./slidev/4-d1H05_2B.js"),__vite__mapDeps([10,8,9,1,2,11,3,4]))}catch(t){return console.error("Failed to load slide 4:",t),E}}},{no:5,meta:vi,component:async()=>{try{return await O(()=>import("./5-CH645g5i.js"),__vite__mapDeps([12,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 5:",t),E}}},{no:6,meta:wi,component:async()=>{try{return await O(()=>import("./6-BYxK3Wv6.js"),__vite__mapDeps([13,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 6:",t),E}}},{no:7,meta:ki,component:async()=>{try{return await O(()=>import("./slidev/7-D2YbIGyD.js"),__vite__mapDeps([14,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 7:",t),E}}},{no:8,meta:bi,component:async()=>{try{return await O(()=>import("./slidev/8-CZC9i337.js"),__vite__mapDeps([15,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 8:",t),E}}},{no:9,meta:Si,component:async()=>{try{return await O(()=>import("./slidev/9-07qKAZV6.js"),__vite__mapDeps([16,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 9:",t),E}}},{no:10,meta:Mi,component:async()=>{try{return await O(()=>import("./slidev/10-DgQQbrRM.js"),__vite__mapDeps([17,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 10:",t),E}}},{no:11,meta:Oi,component:async()=>{try{return await O(()=>import("./slidev/11-Cxs7_xuH.js"),__vite__mapDeps([18,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 11:",t),E}}},{no:12,meta:Ti,component:async()=>{try{return await O(()=>import("./slidev/12-Dxz9RI9W.js"),__vite__mapDeps([19,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 12:",t),E}}},{no:13,meta:Ei,component:async()=>{try{return await O(()=>import("./slidev/13-C9LQTbBY.js"),__vite__mapDeps([20,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 13:",t),E}}},{no:14,meta:$i,component:async()=>{try{return await O(()=>import("./slidev/14-CQcX1XLb.js"),__vite__mapDeps([21,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 14:",t),E}}},{no:15,meta:Pi,component:async()=>{try{return await O(()=>import("./slidev/15-BSa0KTgV.js"),__vite__mapDeps([22,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 15:",t),E}}},{no:16,meta:Li,component:async()=>{try{return await O(()=>import("./slidev/16-DZzvXiKw.js"),__vite__mapDeps([23,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 16:",t),E}}},{no:17,meta:Ai,component:async()=>{try{return await O(()=>import("./slidev/17-C4nNDon9.js"),__vite__mapDeps([24,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 17:",t),E}}},{no:18,meta:Ci,component:async()=>{try{return await O(()=>import("./slidev/18-MuiLZkPu.js"),__vite__mapDeps([25,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 18:",t),E}}},{no:19,meta:Di,component:async()=>{try{return await O(()=>import("./slidev/19-VWQcbQYQ.js"),__vite__mapDeps([26,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 19:",t),E}}},{no:20,meta:Ii,component:async()=>{try{return await O(()=>import("./20-ctKZXN7o.js"),__vite__mapDeps([27,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 20:",t),E}}},{no:21,meta:Ri,component:async()=>{try{return await O(()=>import("./21-CSD9ftwu.js"),__vite__mapDeps([28,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 21:",t),E}}},{no:22,meta:Hi,component:async()=>{try{return await O(()=>import("./22-Bmlg3LlX.js"),__vite__mapDeps([29,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 22:",t),E}}},{no:23,meta:ji,component:async()=>{try{return await O(()=>import("./23-DcTrtdcw.js"),__vite__mapDeps([30,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 23:",t),E}}},{no:24,meta:xi,component:async()=>{try{return await O(()=>import("./slidev/24-CIug9AJb.js"),__vite__mapDeps([31,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 24:",t),E}}},{no:25,meta:Ni,component:async()=>{try{return await O(()=>import("./slidev/25-CnIydKEZ.js"),__vite__mapDeps([32,1,2,3,4]))}catch(t){return console.error("Failed to load slide 25:",t),E}}},{no:26,meta:Fi,component:async()=>{try{return await O(()=>import("./slidev/26-ClCgedbU.js"),__vite__mapDeps([33,1,34,6,2,3,4]))}catch(t){return console.error("Failed to load slide 26:",t),E}}},{no:27,meta:Vi,component:async()=>{try{return await O(()=>import("./slidev/27-BCMN384_.js"),__vite__mapDeps([35,1,34,6,2,3,4]))}catch(t){return console.error("Failed to load slide 27:",t),E}}},{no:28,meta:Ui,component:async()=>{try{return await O(()=>import("./slidev/28-BGx82Exq.js"),__vite__mapDeps([36,1,34,6,2,3,4]))}catch(t){return console.error("Failed to load slide 28:",t),E}}},{no:29,meta:Bi,component:async()=>{try{return await O(()=>import("./slidev/29-CkDBce4m.js"),__vite__mapDeps([37,1,34,6,2,3,4]))}catch(t){return console.error("Failed to load slide 29:",t),E}}},{no:30,meta:Wi,component:async()=>{try{return await O(()=>import("./slidev/30-DmsSGVgA.js"),__vite__mapDeps([38,1,34,6,2,3,4]))}catch(t){return console.error("Failed to load slide 30:",t),E}}},{no:31,meta:zi,component:async()=>{try{return await O(()=>import("./slidev/31-mMh96i-h.js"),__vite__mapDeps([39,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 31:",t),E}}},{no:32,meta:qi,component:async()=>{try{return await O(()=>import("./slidev/32-CB8tWv8M.js"),__vite__mapDeps([40,1,11,2,3,4]))}catch(t){return console.error("Failed to load slide 32:",t),E}}}],oe=En(Ki);function _t(t){return oe.value.find(e=>{var n;return e.no===+t||((n=e.meta.slide)==null?void 0:n.frontmatter.routeAlias)===t})}function et(t,e){var s;(typeof t=="number"||typeof t=="string")&&(t=_t(t));const n=((s=t.meta.slide)==null?void 0:s.frontmatter.routeAlias)??t.no;return e?`/presenter/${n}`:`/${n}`}function Ji(t,e,{mode:n="replace"}={}){const s=zt();return h({get(){const o=s.currentRoute.value.query[t];return o==null?e??null:Array.isArray(o)?o.filter(Boolean):o},set(o){It(()=>{(s.currentRoute.value.query[t]??(e==null?void 0:e.toString()))!==o.toString()&&s[Tn(n)]({query:{...s.currentRoute.value.query,[t]:`${o}`===e?void 0:o}})})}})}const mn=P(0);function Gi(t){return t===!1||t==="false"?null:t==null||t===!0||t==="true"?"+1":Array.isArray(t)?[+t[0],+t[1]]:typeof t=="string"&&"+-".includes(t[0])?t:+t}function xs(t,e=0,n){const s={get current(){return gt(+t.value,e,s.total)},set current(o){t.value=gt(+o,e,s.total)},clicksStart:e,relativeOffsets:new Map,maxMap:ao(new Map),onMounted(){},calculateSince(o,r=1){let i,a,l;if(typeof o=="string"){const c=s.currentOffset,u=+o;i=c+u,a=c+u+r-1,l=u+r-1}else i=o,a=o+r-1,l=0;return{start:i,end:+Number.POSITIVE_INFINITY,max:a,delta:l,isCurrent:h(()=>s.current===i),isActive:h(()=>s.current>=i)}},calculateRange([o,r]){let i,a,l;return typeof o=="string"?(i=s.currentOffset+ +o,l=+o):(i=o,l=0),typeof r=="string"?(a=i+ +r,l+=+r):a=r,{start:i,end:a,max:a,delta:l,isCurrent:h(()=>s.current===i),isActive:h(()=>i<=s.current&&s.currentH.colorSchema!=="auto"),Ns=h({get(){return ss.value?H.colorSchema==="dark":on.value==="auto"?ns.value:on.value==="dark"},set(t){ss.value||(on.value=t===ns.value?"auto":t?"dark":"light")}}),bl=ms(Ns);qt&&Q(Ns,t=>{const e=document.querySelector("html");e.classList.toggle("dark",t),e.classList.toggle("light",!t)},{immediate:!0});const Zi={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function Yi(t,e=!1){if(!t||(typeof t=="string"&&(t={name:t}),!t.name))return;let n=t.name.includes("|")?t.name:Zi[t.name]||t.name;if(n.includes("|")){const[s,o]=n.split("|").map(r=>r.trim());n=e?o:s}if(n)return{...t,name:n}}function Xi(t,e,n){var o,r;let s=t>0?(o=n==null?void 0:n.meta)==null?void 0:o.transition:(r=e==null?void 0:e.meta)==null?void 0:r.transition;return s||(s=H.transition),Yi(s,t<0)}function Fs(t,e,n=1){var o,r,i,a,l,c,u,f,d;const s=(r=(o=e.meta)==null?void 0:o.slide)==null?void 0:r.level;s&&s>n&&t.length>0?Fs(t[t.length-1].children,e,n+1):t.push({no:e.no,children:[],level:n,path:et(((a=(i=e.meta.slide)==null?void 0:i.frontmatter)==null?void 0:a.routeAlias)??e.no,!1),hideInToc:!!((u=(c=(l=e.meta)==null?void 0:l.slide)==null?void 0:c.frontmatter)!=null&&u.hideInToc),title:(d=(f=e.meta)==null?void 0:f.slide)==null?void 0:d.title})}function Vs(t,e,n=!1,s,o){return t.map(r=>{const i={...r,active:r.no===(o==null?void 0:o.value),hasActiveParent:n};return i.children.length>0&&(i.children=Vs(i.children,e,i.active||i.hasActiveParent,i,o)),s&&(i.active||i.activeParent)&&(s.activeParent=!0),i})}function Us(t,e=1){return t.filter(n=>!n.hideInToc).map(n=>({...n,children:Us(n.children,e+1)}))}function ea(t,e,n){const s=h(()=>t.value.filter(r=>{var i,a;return(a=(i=r.meta)==null?void 0:i.slide)==null?void 0:a.title}).reduce((r,i)=>(Fs(r,i),r),[])),o=h(()=>Vs(s.value,n.value,void 0,void 0,e));return h(()=>Us(o.value))}function ta(t,e,n=P(0),s,o,r){const i=h(()=>oe.value.length),a=P(0),l=P(0),c=h(()=>et(t.value,s.value)),u=h(()=>t.value.no),f=h(()=>{var N;return((N=t.value.meta)==null?void 0:N.layout)||(u.value===1?"cover":"default")}),d=h(()=>e.value.current),p=h(()=>e.value.clicksStart),g=h(()=>e.value.total),m=h(()=>oe.value[Math.min(oe.value.length,u.value+1)-1]),y=h(()=>oe.value[Math.max(1,u.value-1)-1]),_=h(()=>u.valueu.value>1||d.value>0),w=h(()=>Xi(a.value,t.value,y.value));Q(t,(N,R)=>{a.value=N.no-R.no});async function b(N){return!1}const T=ea(oe,u,t);async function M(){l.value=1,g.value<=n.value?await A():n.value+=1}async function L(){l.value=-1,n.value<=p.value?await I():n.value-=1}async function A(){l.value=1,u.value{const t=zt(),e=h(()=>t.currentRoute.value),n=h(()=>(t.currentRoute.value.query,new URLSearchParams(location.search))),s=h(()=>n.value.has("print")),o=h(()=>n.value.get("print")==="clicks"),r=h(()=>n.value.has("embedded")),i=h(()=>e.value.name==="play"),a=h(()=>e.value.name==="presenter"),l=h(()=>e.value.name==="notes"),c=h(()=>!a.value&&(!H.remote||n.value.get("password")===H.remote)),u=co(i,a),f=h(()=>{var _;return u.value?((_=_t(e.value.params.no))==null?void 0:_.no)??1:1}),d=h(()=>oe.value[f.value-1]),p=Ji("clicks","0"),g=h(()=>y(d.value)),m=h({get(){let _=+(p.value||0);return Number.isNaN(_)&&(_=0),_},set(_){p.value=_.toString()}});function y(_){var b,T;if((b=_==null?void 0:_.meta)!=null&&b.__clicksContext)return _.meta.__clicksContext;const v=_.no,w=xs(h({get(){return f.value===v?Math.max(+(p.value??0),w.clicksStart):f.value>v?dn:w.clicksStart},set(M){f.value===v&&(p.value=gt(M,w.clicksStart,w.total).toString())}}),((T=_==null?void 0:_.meta.slide)==null?void 0:T.frontmatter.clicksStart)??0,_==null?void 0:_.meta.clicks);return w.onMounted=()=>{f.value===v&&(p.value=gt(+p.value,w.clicksStart,w.total).toString())},_!=null&&_.meta&&(_.meta.__clicksContext=w),w}return{router:t,currentRoute:e,isPrintMode:s,isPrintWithClicks:o,isEmbedded:r,isPlaying:i,isPresenter:a,isNotesViewer:l,isPresenterAvailable:c,hasPrimarySlide:u,currentSlideNo:f,currentSlideRoute:d,clicksContext:g,queryClicksRaw:p,queryClicks:m,getPrimaryClicks:y}}),yn=ys(()=>{const t=na(),e=zt(),n=ta(t.currentSlideRoute,t.clicksContext,t.queryClicks,t.isPresenter,t.isPrintMode,e);return Q([n.total,t.currentRoute],async()=>{t.hasPrimarySlide.value&&!_t(t.currentRoute.value.params.no)&&await n.goLast()},{flush:"pre",immediate:!0}),{...n,...t}}),sa=[];function oa(){const t=ps().appContext.app,e=k({nav:yn(),configs:H,themeConfigs:h(()=>H.themeConfig)});t.provide(Ln,P("none")),t.provide(Cr,e),t.provide(Pn,h(()=>e.nav.currentSlideNo)),t.provide(Kt,En(Qi()));for(const f of sa)f();const n=H.titleTemplate.replace("%s",H.title||"Slidev"),{clicksContext:s,currentSlideNo:o,hasPrimarySlide:r,isNotesViewer:i,isPresenter:a}=yn();br({title:n,htmlAttrs:H.htmlAttrs}),Tr(`${n} - shared`),Lr(`${n} - drawings`);const l=`${location.origin}_${Nn()}`;function c(){i.value||!a.value&&!Rr.includes(location.host.split(":")[0])||(a.value?(it("page",+o.value),it("clicks",s.value.current)):(it("viewerPage",+o.value),it("viewerClicks",s.value.current)),it("lastUpdate",{id:l,type:a.value?"presenter":"viewer",time:new Date().getTime()}))}const u=zt();u.afterEach(c),Q(s,c),Er(f=>{var d;r.value&&((d=f.lastUpdate)==null?void 0:d.type)==="presenter"&&(+f.page!=+o.value||+s.value.current!=+f.clicks)&&($s.value=!1,u.replace({path:et(f.page,a.value),query:{...u.currentRoute.value.query,clicks:f.clicks||0}}))})}const ra=uo({__name:"App",setup(t){return oa(),tt(()=>{for(const[e,n]of Object.entries(Ro.value))document.body.style.setProperty(e,n.toString())}),(e,n)=>{const s=fo("RouterView");return gs(),ho(s)}}}),ia=js(ra,[["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function Sl(t,e=""){var o,r;const n=["slidev-page",e],s=(r=(o=t==null?void 0:t.meta)==null?void 0:o.slide)==null?void 0:r.no;return s!=null&&n.push(`slidev-page-${s}`),n.filter(Boolean).join(" ")}async function Ml(){const{saveAs:t}=await O(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),[]);t(typeof H.download=="string"?H.download:H.exportFilename?`${H.exportFilename}.pdf`:"/sa2024/05-restful/slidev-exported.pdf",`${H.title}.pdf`)}function nt(t,e,n){var s;return((s=t.instance)==null?void 0:s.$).provides[e]??n}function aa(){return{install(t){t.directive("click",{name:"v-click",mounted(e,n){const s=Ct(e,n,n.value);s!=null&&(e.classList.toggle($t,!0),e.dataset.slidevClicksStart=String(s.start),Number.isFinite(s.end)&&(e.dataset.slidevClicksEnd=String(s.end)),e.watchStopHandle=tt(()=>{const o=s.isActive.value,r=s.isCurrent.value,i=o&&!r;s.flagHide?(e.classList.toggle(s.flagFade?lt:at,o),e.classList.toggle(en,o)):e.classList.toggle(s.flagFade?lt:at,!o),e.classList.toggle(tn,r),e.classList.toggle(nn,i)}))},unmounted:rn}),t.directive("after",{name:"v-after",mounted(e,n){const s=Ct(e,n,"+0");s!=null&&(e.classList.toggle($t,!0),e.watchStopHandle=tt(()=>{const o=s.isActive.value,r=s.isCurrent.value,i=o&&!r;s.flagHide?(e.classList.toggle(s.flagFade?lt:at,o),e.classList.toggle(en,o)):e.classList.toggle(s.flagFade?lt:at,!o),e.classList.toggle(tn,r),e.classList.toggle(nn,i)}))},unmounted:rn}),t.directive("click-hide",{name:"v-click-hide",mounted(e,n){const s=Ct(e,n,n.value,!0);s!=null&&(e.classList.toggle($t,!0),e.watchStopHandle=tt(()=>{const o=s.isActive.value,r=s.isCurrent.value,i=o&&!r;e.classList.toggle(s.flagFade?lt:at,o),e.classList.toggle(en,o),e.classList.toggle(tn,r),e.classList.toggle(nn,i)}))},unmounted:rn})}}}const Bs=new Map;function Ct(t,e,n,s=!1){var d;const o=(d=nt(e,Kt))==null?void 0:d.value;if(!t||!o)return null;const r=s||e.modifiers.hide!==!1&&e.modifiers.hide!=null,i=e.modifiers.fade!==!1&&e.modifiers.fade!=null,a=Gi(n),l=o.calculate(a);if(!l)return null;o.register(t,l);const c=h(()=>r?!l.isActive.value:l.isActive.value),u=h(()=>c.value?"shown":Number.isFinite(l.end)?o.currents.push(...o)),_n(s,e,n)}function ua(t,e){return t[0]===e[0]&&t[1]===e[1]}function fa(t,e,n,s=1){const o=n,r=Math.max(e,.1),i=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,a=[0,0];if(o)for(const c of i)_n(c,a,o);const l=da(i,r,s);if(o){for(const c of i)_n(c,a,-o);ca(l,a,-o)}return l}function da(t,e,n){const s=[];for(const c of t){const u=[...c];ua(u[0],u[u.length-1])||u.push([u[0][0],u[0][1]]),u.length>2&&s.push(u)}const o=[];e=Math.max(e,.1);const r=[];for(const c of s)for(let u=0;uc.yminu.ymin?1:c.xu.x?1:c.ymax===u.ymax?0:(c.ymax-u.ymax)/Math.abs(c.ymax-u.ymax)),!r.length)return o;let i=[],a=r[0].ymin,l=0;for(;i.length||r.length;){if(r.length){let c=-1;for(let f=0;fa);f++)c=f;r.splice(0,c+1).forEach(f=>{i.push({s:a,edge:f})})}if(i=i.filter(c=>!(c.edge.ymax<=a)),i.sort((c,u)=>c.edge.x===u.edge.x?0:(c.edge.x-u.edge.x)/Math.abs(c.edge.x-u.edge.x)),(n!==1||l%e===0)&&i.length>1)for(let c=0;c=i.length)break;const f=i[c].edge,d=i[u].edge;o.push([[Math.round(f.x),a],[Math.round(d.x),a]])}a+=n,i.forEach(c=>{c.edge.x=c.edge.x+n*c.edge.islope}),l++}return o}function wt(t,e){var n;const s=e.hachureAngle+90;let o=e.hachureGap;o<0&&(o=e.strokeWidth*4),o=Math.round(Math.max(o,.1));let r=1;return e.roughness>=1&&(((n=e.randomizer)===null||n===void 0?void 0:n.next())||Math.random())>.7&&(r=o),fa(t,o,s,r||1)}class Fn{constructor(e){this.helper=e}fillPolygons(e,n){return this._fillPolygons(e,n)}_fillPolygons(e,n){const s=wt(e,n);return{type:"fillSketch",ops:this.renderLines(s,n)}}renderLines(e,n){const s=[];for(const o of e)s.push(...this.helper.doubleLineOps(o[0][0],o[0][1],o[1][0],o[1][1],n));return s}}function Yt(t){const e=t[0],n=t[1];return Math.sqrt(Math.pow(e[0]-n[0],2)+Math.pow(e[1]-n[1],2))}class ha extends Fn{fillPolygons(e,n){let s=n.hachureGap;s<0&&(s=n.strokeWidth*4),s=Math.max(s,.1);const o=Object.assign({},n,{hachureGap:s}),r=wt(e,o),i=Math.PI/180*n.hachureAngle,a=[],l=s*.5*Math.cos(i),c=s*.5*Math.sin(i);for(const[f,d]of r)Yt([f,d])&&a.push([[f[0]-l,f[1]+c],[...d]],[[f[0]+l,f[1]-c],[...d]]);return{type:"fillSketch",ops:this.renderLines(a,n)}}}class pa extends Fn{fillPolygons(e,n){const s=this._fillPolygons(e,n),o=Object.assign({},n,{hachureAngle:n.hachureAngle+90}),r=this._fillPolygons(e,o);return s.ops=s.ops.concat(r.ops),s}}class ga{constructor(e){this.helper=e}fillPolygons(e,n){n=Object.assign({},n,{hachureAngle:0});const s=wt(e,n);return this.dotsOnLines(s,n)}dotsOnLines(e,n){const s=[];let o=n.hachureGap;o<0&&(o=n.strokeWidth*4),o=Math.max(o,.1);let r=n.fillWeight;r<0&&(r=n.strokeWidth/2);const i=o/4;for(const a of e){const l=Yt(a),c=l/o,u=Math.ceil(c)-1,f=l-u*o,d=(a[0][0]+a[1][0])/2-o/4,p=Math.min(a[0][1],a[1][1]);for(let g=0;g{const a=Yt(i),l=Math.floor(a/(s+o)),c=(a+o-l*(s+o))/2;let u=i[0],f=i[1];u[0]>f[0]&&(u=i[1],f=i[0]);const d=Math.atan((f[1]-u[1])/(f[0]-u[0]));for(let p=0;p{const i=Yt(r),a=Math.round(i/(2*n));let l=r[0],c=r[1];l[0]>c[0]&&(l=r[1],c=r[0]);const u=Math.atan((c[1]-l[1])/(c[0]-l[0]));for(let f=0;fu%2?c+n:c+e);r.push({key:"C",data:l}),e=l[4],n=l[5];break}case"Q":r.push({key:"Q",data:[...a]}),e=a[2],n=a[3];break;case"q":{const l=a.map((c,u)=>u%2?c+n:c+e);r.push({key:"Q",data:l}),e=l[2],n=l[3];break}case"A":r.push({key:"A",data:[...a]}),e=a[5],n=a[6];break;case"a":e+=a[5],n+=a[6],r.push({key:"A",data:[a[0],a[1],a[2],a[3],a[4],e,n]});break;case"H":r.push({key:"H",data:[...a]}),e=a[0];break;case"h":e+=a[0],r.push({key:"H",data:[e]});break;case"V":r.push({key:"V",data:[...a]}),n=a[0];break;case"v":n+=a[0],r.push({key:"V",data:[n]});break;case"S":r.push({key:"S",data:[...a]}),e=a[2],n=a[3];break;case"s":{const l=a.map((c,u)=>u%2?c+n:c+e);r.push({key:"S",data:l}),e=l[2],n=l[3];break}case"T":r.push({key:"T",data:[...a]}),e=a[0],n=a[1];break;case"t":e+=a[0],n+=a[1],r.push({key:"T",data:[e,n]});break;case"Z":case"z":r.push({key:"Z",data:[]}),e=s,n=o;break}return r}function Ks(t){const e=[];let n="",s=0,o=0,r=0,i=0,a=0,l=0;for(const{key:c,data:u}of t){switch(c){case"M":e.push({key:"M",data:[...u]}),[s,o]=u,[r,i]=u;break;case"C":e.push({key:"C",data:[...u]}),s=u[4],o=u[5],a=u[2],l=u[3];break;case"L":e.push({key:"L",data:[...u]}),[s,o]=u;break;case"H":s=u[0],e.push({key:"L",data:[s,o]});break;case"V":o=u[0],e.push({key:"L",data:[s,o]});break;case"S":{let f=0,d=0;n==="C"||n==="S"?(f=s+(s-a),d=o+(o-l)):(f=s,d=o),e.push({key:"C",data:[f,d,...u]}),a=u[0],l=u[1],s=u[2],o=u[3];break}case"T":{const[f,d]=u;let p=0,g=0;n==="Q"||n==="T"?(p=s+(s-a),g=o+(o-l)):(p=s,g=o);const m=s+2*(p-s)/3,y=o+2*(g-o)/3,_=f+2*(p-f)/3,v=d+2*(g-d)/3;e.push({key:"C",data:[m,y,_,v,f,d]}),a=p,l=g,s=f,o=d;break}case"Q":{const[f,d,p,g]=u,m=s+2*(f-s)/3,y=o+2*(d-o)/3,_=p+2*(f-p)/3,v=g+2*(d-g)/3;e.push({key:"C",data:[m,y,_,v,p,g]}),a=f,l=d,s=p,o=g;break}case"A":{const f=Math.abs(u[0]),d=Math.abs(u[1]),p=u[2],g=u[3],m=u[4],y=u[5],_=u[6];f===0||d===0?(e.push({key:"C",data:[s,o,y,_,y,_]}),s=y,o=_):(s!==y||o!==_)&&(Js(s,o,y,_,f,d,p,g,m).forEach(function(w){e.push({key:"C",data:w})}),s=y,o=_);break}case"Z":e.push({key:"Z",data:[]}),s=r,o=i;break}n=c}return e}function ka(t){return Math.PI*t/180}function ct(t,e,n){const s=t*Math.cos(n)-e*Math.sin(n),o=t*Math.sin(n)+e*Math.cos(n);return[s,o]}function Js(t,e,n,s,o,r,i,a,l,c){const u=ka(i);let f=[],d=0,p=0,g=0,m=0;if(c)[d,p,g,m]=c;else{[t,e]=ct(t,e,-u),[n,s]=ct(n,s,-u);const $=(t-n)/2,C=(e-s)/2;let j=$*$/(o*o)+C*C/(r*r);j>1&&(j=Math.sqrt(j),o=j*o,r=j*r);const N=a===l?-1:1,R=o*o,se=r*r,B=R*se-R*C*C-se*$*$,Y=R*C*C+se*$*$,D=N*Math.sqrt(Math.abs(B/Y));g=D*o*C/r+(t+n)/2,m=D*-r*$/o+(e+s)/2,d=Math.asin(parseFloat(((e-m)/r).toFixed(9))),p=Math.asin(parseFloat(((s-m)/r).toFixed(9))),tp&&(d=d-Math.PI*2),!l&&p>d&&(p=p-Math.PI*2)}let y=p-d;if(Math.abs(y)>Math.PI*120/180){const $=p,C=n,j=s;l&&p>d?p=d+Math.PI*120/180*1:p=d+Math.PI*120/180*-1,n=g+o*Math.cos(p),s=m+r*Math.sin(p),f=Js(n,s,C,j,o,r,i,0,l,[p,$,g,m])}y=p-d;const _=Math.cos(d),v=Math.sin(d),w=Math.cos(p),b=Math.sin(p),T=Math.tan(y/4),M=4/3*o*T,L=4/3*r*T,A=[t,e],I=[t+M*v,e-L*_],V=[n+M*b,s-L*w],ne=[n,s];if(I[0]=2*A[0]-I[0],I[1]=2*A[1]-I[1],c)return[I,V,ne].concat(f);{f=[I,V,ne].concat(f);const $=[];for(let C=0;C2){const o=[];for(let r=0;rMath.PI*2&&(p=0,g=Math.PI*2);const m=Math.PI*2/l.curveStepCount,y=Math.min(m/2,(g-p)/2),_=cs(y,c,u,f,d,p,g,1,l);if(!l.disableMultiStroke){const v=cs(y,c,u,f,d,p,g,1.5,l);_.push(...v)}return i&&(a?_.push(...le(c,u,c+f*Math.cos(p),u+d*Math.sin(p),l),...le(c,u,c+f*Math.cos(g),u+d*Math.sin(g),l)):_.push({op:"lineTo",data:[c,u]},{op:"lineTo",data:[c+f*Math.cos(p),u+d*Math.sin(p)]})),{type:"path",ops:_}}function is(t,e){const n=Ks(qs(Vn(t))),s=[];let o=[0,0],r=[0,0];for(const{key:i,data:a}of n)switch(i){case"M":{r=[a[0],a[1]],o=[a[0],a[1]];break}case"L":s.push(...le(r[0],r[1],a[0],a[1],e)),r=[a[0],a[1]];break;case"C":{const[l,c,u,f,d,p]=a;s.push(...$a(l,c,u,f,d,p,r,e)),r=[d,p];break}case"Z":s.push(...le(r[0],r[1],o[0],o[1],e)),r=[o[0],o[1]];break}return{type:"path",ops:s}}function ln(t,e){const n=[];for(const s of t)if(s.length){const o=e.maxRandomnessOffset||0,r=s.length;if(r>2){n.push({op:"move",data:[s[0][0]+S(o,e),s[0][1]+S(o,e)]});for(let i=1;iMath.PI*2&&(f=0,d=Math.PI*2);const p=(d-f)/i.curveStepCount,g=[];for(let m=f;m<=d;m=m+p)g.push([a+c*Math.cos(m),l+u*Math.sin(m)]);return g.push([a+c*Math.cos(d),l+u*Math.sin(d)]),g.push([a,l]),Qe([g],i)}function Oa(t,e){return S(t,e)}function Ta(t,e,n){return Ft(t,e,n)}function Ea(t,e,n,s,o){return le(t,e,n,s,o,!0)}function as(t){const e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function Zs(t){return t.randomizer||(t.randomizer=new la(t.seed||0)),t.randomizer.next()}function Ft(t,e,n,s=1){return n.roughness*s*(Zs(n)*(e-t)+t)}function S(t,e,n=1){return Ft(-t,t,e,n)}function le(t,e,n,s,o,r=!1){const i=r?o.disableMultiStrokeFill:o.disableMultiStroke,a=bn(t,e,n,s,o,!0,!1);if(i)return a;const l=bn(t,e,n,s,o,!0,!0);return a.concat(l)}function bn(t,e,n,s,o,r,i){const a=Math.pow(t-n,2)+Math.pow(e-s,2),l=Math.sqrt(a);let c=1;l<200?c=1:l>500?c=.4:c=-.0016668*l+1.233334;let u=o.maxRandomnessOffset||0;u*u*100>a&&(u=l/10);const f=u/2,d=.2+Zs(o)*.2;let p=o.bowing*o.maxRandomnessOffset*(s-e)/200,g=o.bowing*o.maxRandomnessOffset*(t-n)/200;p=S(p,o,c),g=S(g,o,c);const m=[],y=()=>S(f,o,c),_=()=>S(u,o,c),v=o.preserveVertices;return r&&(i?m.push({op:"move",data:[t+(v?0:y()),e+(v?0:y())]}):m.push({op:"move",data:[t+(v?0:S(u,o,c)),e+(v?0:S(u,o,c))]})),i?m.push({op:"bcurveTo",data:[p+t+(n-t)*d+y(),g+e+(s-e)*d+y(),p+t+2*(n-t)*d+y(),g+e+2*(s-e)*d+y(),n+(v?0:y()),s+(v?0:y())]}):m.push({op:"bcurveTo",data:[p+t+(n-t)*d+_(),g+e+(s-e)*d+_(),p+t+2*(n-t)*d+_(),g+e+2*(s-e)*d+_(),n+(v?0:_()),s+(v?0:_())]}),m}function St(t,e,n){if(!t.length)return[];const s=[];s.push([t[0][0]+S(e,n),t[0][1]+S(e,n)]),s.push([t[0][0]+S(e,n),t[0][1]+S(e,n)]);for(let o=1;o3){const r=[],i=1-n.curveTightness;o.push({op:"move",data:[t[1][0],t[1][1]]});for(let a=1;a+21&&o.push(r):o.push(r),o.push(t[e+3])}else{const i=t[e+0],a=t[e+1],l=t[e+2],c=t[e+3],u=Be(i,a,.5),f=Be(a,l,.5),d=Be(l,c,.5),p=Be(u,f,.5),g=Be(f,d,.5),m=Be(p,g,.5);Sn([i,u,p,m],0,n,o),Sn([m,g,d,c],0,n,o)}return o}function Ca(t,e){return Ut(t,0,t.length,e)}function Ut(t,e,n,s,o){const r=o||[],i=t[e],a=t[n-1];let l=0,c=1;for(let u=e+1;ul&&(l=f,c=u)}return Math.sqrt(l)>s?(Ut(t,e,c+1,s,r),Ut(t,c,n,s,r)):(r.length||r.push(i),r.push(a)),r}function Mn(t,e=.15,n){const s=[],o=(t.length-1)/3;for(let r=0;r0?Ut(s,0,s.length,n):s}function Da(t,e,n){const s=Vn(t),o=Ks(qs(s)),r=[];let i=[],a=[0,0],l=[];const c=()=>{l.length>=4&&i.push(...Mn(l,e)),l=[]},u=()=>{c(),i.length&&(r.push(i),i=[])};for(const{key:d,data:p}of o)switch(d){case"M":u(),a=[p[0],p[1]],i.push(a);break;case"L":c(),i.push([p[0],p[1]]);break;case"C":if(!l.length){const g=i.length?i[i.length-1]:a;l.push([g[0],g[1]])}l.push([p[0],p[1]]),l.push([p[2],p[3]]),l.push([p[4],p[5]]);break;case"Z":c(),i.push([a[0],a[1]]);break}if(u(),!n)return r;const f=[];for(const d of r){const p=Ca(d,n);p.length&&f.push(p)}return f}const K="none";class Ia{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Ws()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,n,s){return{shape:e,sets:n||[],options:s||this.defaultOptions}}line(e,n,s,o,r){const i=this._o(r);return this._d("line",[G(e,n,s,o,i)],i)}rectangle(e,n,s,o,r){const i=this._o(r),a=[],l=Gs(e,n,s,o,i);if(i.fill){const c=[[e,n],[e+s,n],[e+s,n+o],[e,n+o]];i.fillStyle==="solid"?a.push(ln([c],i)):a.push(Qe([c],i))}return i.stroke!==K&&a.push(l),this._d("rectangle",a,i)}ellipse(e,n,s,o,r){const i=this._o(r),a=[],l=Qs(s,o,i),c=kn(e,n,i,l);if(i.fill)if(i.fillStyle==="solid"){const u=kn(e,n,i,l).opset;u.type="fillPath",a.push(u)}else a.push(Qe([c.estimatedPoints],i));return i.stroke!==K&&a.push(c.opset),this._d("ellipse",a,i)}circle(e,n,s,o){const r=this.ellipse(e,n,s,s,o);return r.shape="circle",r}linearPath(e,n){const s=this._o(n);return this._d("linearPath",[pt(e,!1,s)],s)}arc(e,n,s,o,r,i,a=!1,l){const c=this._o(l),u=[],f=rs(e,n,s,o,r,i,a,!0,c);if(a&&c.fill)if(c.fillStyle==="solid"){const d=Object.assign({},c);d.disableMultiStroke=!0;const p=rs(e,n,s,o,r,i,!0,!1,d);p.type="fillPath",u.push(p)}else u.push(Ma(e,n,s,o,r,i,c));return c.stroke!==K&&u.push(f),this._d("arc",u,c)}curve(e,n){const s=this._o(n),o=[],r=os(e,s);if(s.fill&&s.fill!==K)if(s.fillStyle==="solid"){const i=os(e,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));o.push({type:"fillPath",ops:this._mergedShape(i.ops)})}else{const i=[],a=e;if(a.length){const c=typeof a[0][0]=="number"?[a]:a;for(const u of c)u.length<3?i.push(...u):u.length===3?i.push(...Mn(us([u[0],u[0],u[1],u[2]]),10,(1+s.roughness)/2)):i.push(...Mn(us(u),10,(1+s.roughness)/2))}i.length&&o.push(Qe([i],s))}return s.stroke!==K&&o.push(r),this._d("curve",o,s)}polygon(e,n){const s=this._o(n),o=[],r=pt(e,!0,s);return s.fill&&(s.fillStyle==="solid"?o.push(ln([e],s)):o.push(Qe([e],s))),s.stroke!==K&&o.push(r),this._d("polygon",o,s)}path(e,n){const s=this._o(n),o=[];if(!e)return this._d("path",o,s);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const r=s.fill&&s.fill!=="transparent"&&s.fill!==K,i=s.stroke!==K,a=!!(s.simplification&&s.simplification<1),l=a?4-4*(s.simplification||1):(1+s.roughness)/2,c=Da(e,1,l),u=is(e,s);if(r)if(s.fillStyle==="solid")if(c.length===1){const f=is(e,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));o.push({type:"fillPath",ops:this._mergedShape(f.ops)})}else o.push(ln(c,s));else o.push(Qe(c,s));return i&&(a?c.forEach(f=>{o.push(pt(f,!1,s))}):o.push(u)),this._d("path",o,s)}opsToPath(e,n){let s="";for(const o of e.ops){const r=typeof n=="number"&&n>=0?o.data.map(i=>+i.toFixed(n)):o.data;switch(o.op){case"move":s+=`M${r[0]} ${r[1]} `;break;case"bcurveTo":s+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":s+=`L${r[0]} ${r[1]} `;break}}return s.trim()}toPaths(e){const n=e.sets||[],s=e.options||this.defaultOptions,o=[];for(const r of n){let i=null;switch(r.type){case"path":i={d:this.opsToPath(r),stroke:s.stroke,strokeWidth:s.strokeWidth,fill:K};break;case"fillPath":i={d:this.opsToPath(r),stroke:K,strokeWidth:0,fill:s.fill||K};break;case"fillSketch":i=this.fillSketch(r,s);break}i&&o.push(i)}return o}fillSketch(e,n){let s=n.fillWeight;return s<0&&(s=n.strokeWidth/2),{d:this.opsToPath(e),stroke:n.fill||K,strokeWidth:s,fill:K}}_mergedShape(e){return e.filter((n,s)=>s===0?!0:n.op!=="move")}}const Ys="http://www.w3.org/2000/svg",Ra=800;let cn=null;function Ha(){return cn||(cn=new Ia().defaultOptions),cn}function un(t,e,n){return{...Ha(),maxRandomnessOffset:2,roughness:t==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:t!=="double",disableMultiStrokeFill:!1,seed:e,...n}}function ja(t){const e=t.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const n=e;if(n.length)switch(n.length){case 4:return[...n];case 1:return[n[0],n[0],n[0],n[0]];case 2:return[...n,...n];case 3:return[...n,n[1]];default:return[n[0],n[1],n[2],n[3]]}}}return[5,5,5,5]}function xa(t,e,n,s,o,r){const i=[];let a=n.strokeWidth||2;const l=ja(n),c=n.animate===void 0?!0:!!n.animate,u=n.iterations||2,f=n.rtl?1:0,d=un("single",r,n);switch(n.type){case"underline":{const p=e.y+e.h+l[2];for(let g=f;gv.setAttribute(w,b);for(const v of p){const w=document.createElementNS(Ys,"path");if(_(w,"d",v),_(w,"fill","none"),_(w,"stroke",n.color||"currentColor"),_(w,"stroke-width",`${a}`),n.opacity!==void 0&&_(w,"style",`opacity:${n.opacity}`),c){const b=w.getTotalLength();g.push(b),y+=b}t.appendChild(w),m.push(w)}if(c){let v=0;for(let w=0;wsetTimeout(e,t))}function Na(t){const e=[];for(const n of t){let s="";for(const o of n.ops){const r=o.data;switch(o.op){case"move":s.trim()&&e.push(s.trim()),s=`M${r[0]} ${r[1]} `;break;case"bcurveTo":s+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":s+=`L${r[0]} ${r[1]} `;break}}s.trim()&&e.push(s.trim())}return e}function Fa(){if(!window.__rno_kf_s){const t=window.__rno_kf_s=document.createElement("style");t.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(t)}}var Va=Object.defineProperty,Ua=(t,e,n)=>e in t?Va(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,X=(t,e,n)=>(Ua(t,typeof e!="symbol"?e+"":e,n),n);class Ba{constructor(e,n){X(this,"_state","unattached"),X(this,"_config"),X(this,"_resizing",!1),X(this,"_ro"),X(this,"_seed",Ws()),X(this,"_e"),X(this,"_svg"),X(this,"_lastSizes",[]),X(this,"_animationDelay",0),X(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),X(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(n)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,n){this._config[e]!==n&&(this._config[e]=n,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){Fa();const e=this._svg=document.createElementNS(Ys,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const n=e.style;n.position="absolute",n.top="0",n.left="0",n.overflow="visible",n.pointerEvents="none",n.width="100px",n.height="100px";const s=this._config.type==="highlight";if(this._e.insertAdjacentElement(s?"beforebegin":"afterend",e),this._state="not-showing",s){const o=window.getComputedStyle(this._e).position;(!o||o==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const n of e)n.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let n=0;nMath.round(o)===Math.round(r);return s(e.x,n.x)&&s(e.y,n.y)&&s(e.w,n.w)&&s(e.h,n.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,n){let s=this._config;n&&(s=JSON.parse(JSON.stringify(this._config)),s.animate=!1);const o=this.rects();let r=0;o.forEach(c=>r+=c.w);const i=s.animationDuration||Ra;let a=0;const l=[];for(let c=0;cObject.assign(t,{type:"box"}),circle:t=>Object.assign(t,{type:"circle"}),underline:t=>Object.assign(t,{type:"underline"}),highlight:t=>Object.assign(t,{type:"highlight"}),"strike-through":t=>Object.assign(t,{type:"strike-through"}),"crossed-off":t=>Object.assign(t,{type:"crossed-off"}),bracket:t=>Object.assign(t,{type:"bracket"}),strike:t=>Object.assign(t,{type:"strike-through"}),cross:t=>Object.assign(t,{type:"crossed-off"}),crossed:t=>Object.assign(t,{type:"crossed-off"}),linethrough:t=>Object.assign(t,{type:"strike-through"}),"line-through":t=>Object.assign(t,{type:"strike-through"}),black:t=>z(t,"text-black"),blue:t=>z(t,"text-blue"),cyan:t=>z(t,"text-cyan"),gray:t=>z(t,"text-gray"),green:t=>z(t,"text-green"),indigo:t=>z(t,"text-indigo"),lime:t=>z(t,"text-lime"),orange:t=>z(t,"text-orange"),pink:t=>z(t,"text-pink"),purple:t=>z(t,"text-purple"),red:t=>z(t,"text-red"),teal:t=>z(t,"text-teal"),white:t=>z(t,"text-white"),yellow:t=>z(t,"text-yellow")},za=[[/^delay-?(\d+)?$/,(t,e,n)=>{const s=(t[1]?Number.parseInt(t[1]):n)||300;return e.delay=s,e}],[/^(?:op|opacity)-?(\d+)?$/,(t,e,n)=>{const s=(t[1]?Number.parseInt(t[1]):n)||100;return e.opacity=s/100,e}]];function qa(){return{install(t){t.directive("mark",{name:"v-mark",mounted:(e,n)=>{const s=h(()=>{const i=typeof n.value=="object"&&!Array.isArray(n.value)?{...n.value}:{at:n.value};let a={at:i.at};const l=Object.entries(n.modifiers).filter(([u,f])=>{if(ds[u])return a=ds[u](a,f),!1;for(const[d,p]of za){const g=u.match(d);if(g)return a=p(g,a,f),!1}return!0});l.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",l);const c={...a,...i};return c.type||(c.type="underline"),c}),o=Wa(e,s.value),r=Ct(e,n,s.value.at);if(!r){o.show();return}e.watchStopHandle=tt(()=>{let i;s.value.class&&(o.class=s.value.class),s.value.color&&(o.color=s.value.color);const a=s.value.at;a===!0?i=!0:a===!1?i=!1:i=r.isActive.value,i!=null&&(i?o.show():o.hide())})},unmounted:e=>{var n;(n=e.watchStopHandle)==null||n.call(e)}})}}}const Ol=P(!1),Tl=P(!1),El=P(!1),Ka=P(!1),$l=P(!0),Pl=po({xs:460,...vo}),Bt=go(),Ll=mo(),Al=h(()=>Bt.height.value-Bt.width.value/_s.value>120),Cl=yo(qt?document.body:null),On=_o(),Dl=h(()=>{var t,e;return["INPUT","TEXTAREA"].includes(((t=On.value)==null?void 0:t.tagName)||"")||((e=On.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),Il=h(()=>{var t;return["BUTTON","A"].includes(((t=On.value)==null?void 0:t.tagName)||"")});te("slidev-camera","default",{listenToStorageChanges:!1});te("slidev-mic","default",{listenToStorageChanges:!1});const Ja=te("slidev-scale",0),Rl=te("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),Ga=te("slidev-show-editor",!1,{listenToStorageChanges:!1}),Qa=te("slidev-editor-vertical",!1,{listenToStorageChanges:!1}),Za=te("slidev-editor-width",qt?window.innerWidth*.4:318,{listenToStorageChanges:!1}),Ya=te("slidev-editor-height",qt?window.innerHeight*.4:300,{listenToStorageChanges:!1}),Mt=En(null),Wt=te("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),Ot=te("slidev-presenter-layout",1,{listenToStorageChanges:!1});function Hl(){Ot.value=Ot.value+1,Ot.value>2&&(Ot.value=1)}function jl(){Wt.value=Math.min(2,Wt.value+.1)}function xl(){Wt.value=Math.max(.5,Wt.value-.1)}const Nl=ms(Ka);function Xa(t=hs(Es,P())){const e=wo(t),n=Q([Ga,Qa,Za,Ya,Ja,Bt.width,Bt.height],()=>{setTimeout(e.update,300)},{flush:"post",immediate:!0});return{...e,stop:n}}function el(t){return()=>{}}function tl(t,e,n){var Y;function s(D){return t?nt(t,D):So(D)}const o=s(Ln),r=s(Dr)??{},i=s(Pn),a=h(()=>el(i.value)),l=s(Ar)??P(1),c=s(Ir)??P(1),{left:u,top:f,stop:d}=Xa(s(Es)??P()),p=["slide","presenter"].includes(o.value);let g=t?"directive":"prop",m=Nn(),y;if(Array.isArray(e)?y=e:typeof e=="string"&&e.includes(",")?y=e.split(",").map(Number):e!=null&&(g="frontmatter",m=`${e}`,e=(Y=r==null?void 0:r.dragPos)==null?void 0:Y[m],y=e==null?void 0:e.split(",").map(Number)),g!=="frontmatter"&&!n)throw new Error("[Slidev] Can not identify the source position of the v-drag element, please provide an explicit `id` prop.");const _=[d],v=e!=null&&!Number.isFinite(y==null?void 0:y[3]);y??(y=[Number.NaN,Number.NaN,0]);const w=P(y[2]),b=P(y[0]+y[2]/2),T=P(y[4]??0),M=h(()=>T.value*Math.PI/180),L=h(()=>Math.sin(M.value)),A=h(()=>Math.cos(M.value)),I=P(),V=P({left:0,top:0,width:0,height:0}),ne=P(0);function $(){const D=I.value.getBoundingClientRect();V.value={left:D.left/c.value,top:D.top/c.value,width:D.width/c.value,height:D.height/c.value},ne.value=(V.value.width+V.value.height)/l.value/(Math.abs(L.value)+Math.abs(A.value))-w.value}_.push(Q(w,$,{flush:"post"}));const C=P(y[3]??0),j=h({get:()=>(v?ne.value:C.value)||0,set:D=>!v&&(C.value=D)}),N=P(y[1]),R=h({get:()=>N.value+j.value/2,set:D=>N.value=D-j.value/2}),se=h(()=>Number.isFinite(b.value)?{position:"absolute",zIndex:100,left:`${b.value-w.value/2}px`,top:`${R.value-j.value/2}px`,width:`${w.value}px`,height:v?void 0:`${j.value}px`,transformOrigin:"center center",transform:`rotate(${T.value}deg)`}:{position:"absolute",zIndex:100});_.push(Q([b,R,w,j,T],([D,ce,ot,rt,Un])=>{let Je=[D-ot/2,ce-rt/2,ot].map(Math.round).join();v?Je+=g==="directive"?",NaN":",_":Je+=`,${Math.round(rt)}`,Math.round(Un)!==0&&(Je+=`,${Math.round(Un)}`),g==="directive"&&(Je=`[${Je}]`),a.value(m,Je,g,n)}));const B={id:m,dataSource:g,markdownSource:n,zoom:c,autoHeight:v,x0:b,y0:R,width:w,height:j,rotate:T,container:I,containerStyle:se,watchStopHandles:_,dragging:h(()=>Mt.value===B),mounted(){p&&($(),e||setTimeout(()=>{$(),b.value=(V.value.left+V.value.width/2-u.value)/l.value,R.value=(V.value.top-f.value)/l.value,w.value=V.value.width/l.value,j.value=V.value.height/l.value},100))},unmounted(){p&&B.stopDragging()},startDragging(){$(),Mt.value=B},stopDragging(){Mt.value===B&&(Mt.value=null)}};return _.push(ko(I,D=>{const ce=document.querySelector("#drag-control-container");ce&&D.target&&ce.contains(D.target)||B.stopDragging()}),Q(bo(),D=>{D||B.stopDragging()})),B}function nl(){return{install(t){t.directive("drag",{name:"v-drag",created(e,n,s){var r;const o=tl(n,n.value,(r=s.props)==null?void 0:r.markdownSource);s.props&&(s.props={...s.props},delete s.props.markdownSource),o.container.value=e,e.draggingState=o,e.dataset.dragId=o.id,o.watchStopHandles.push(Q(o.containerStyle,i=>{for(const[a,l]of Object.entries(i))l&&(e.style[a]=l)},{immediate:!0})),e.addEventListener("dblclick",o.startDragging)},mounted(e){e.draggingState.mounted()},unmounted(e){const n=e.draggingState;n.unmounted(),e.removeEventListener("dblclick",n.startDragging),n.watchStopHandles.forEach(s=>s())}})}}}function sl(){return{install(t){const e=Mo();t.directive("motion",{name:"v-motion",mounted(n,s,o,r){var w,b,T;const i=nt(s,Kt),a=nt(s,Pn),l=nt(s,Ln),{currentPage:c,clicks:u,isPrintMode:f}=yn(),d=o.props={...o.props},p={...d.initial,...(w=d.variants)==null?void 0:w["slidev-initial"]},g={...d.enter,...(b=d.variants)==null?void 0:b["slidev-enter"]},m={...d.leave,...(T=d.variants)==null?void 0:T["slidev-leave"]};delete d.initial,delete d.enter,delete d.leave;const y=`${Nn()}-`,_=[];for(const M of Object.keys(d))if(M.startsWith("click-")){const L=M.slice(6),A=L.includes("-")?L.split("-").map(Number):+L,I=y+L;_.push({id:I,at:A,variant:{...d[M]},info:i==null?void 0:i.value.calculate(A)}),delete d[M]}_.sort((M,L)=>(Array.isArray(M.at)?M.at[0]:M.at)-(Array.isArray(L.at)?L.at[0]:L.at)),e.created(n,s,o,r),e.mounted(n,s,o,r);const v=n.motionInstance;v.clickIds=_.map(M=>M.id),v.set(p),v.watchStopHandle=Q([a,c,u].filter(Boolean),()=>{var L;const M=((L=Bs.get(n))==null?void 0:L.visibilityState.value)??"shown";if(!(i!=null&&i.value)||!["slide","presenter"].includes((l==null?void 0:l.value)??"")){const A={...p,...g};for(const{variant:I}of _)Object.assign(A,I);v.set(A)}else if(f.value||(a==null?void 0:a.value)===c.value)if(M==="shown"){const A={...p,...g};for(const{variant:I,info:V}of _)(!V||V.isActive.value)&&Object.assign(A,I);f.value?v.set(A):v.apply(A)}else v.apply(M==="before"?p:m);else v.apply(((a==null?void 0:a.value)??-1)>c.value?p:m)},{immediate:!0})},unmounted(n){n.motionInstance.watchStopHandle()}})}}}const ol=[];function rl(){const t=[];{let e=function(n){if(!H.remote||H.remote===n.query.password)return!0;if(H.remote&&n.query.password===void 0){const s=prompt("Enter password");if(H.remote===s)return!0}return n.params.no?{path:`/${n.params.no}`}:{path:""}};t.push({name:"entry",path:"/entry",component:()=>O(()=>import("./slidev/entry-CLHnNFdd.js"),__vite__mapDeps([41,9,1,3,4]))},{name:"overview",path:"/overview",component:()=>O(()=>import("./slidev/overview-C9yRJfca.js"),__vite__mapDeps([42,9,1,43,44,45,46,47,48,49,3,4]))},{name:"notes",path:"/notes",component:()=>O(()=>import("./slidev/notes-BnFJlwSq.js"),__vite__mapDeps([50,9,1,46,47,45,3,4])),beforeEnter:e},{name:"presenter",path:"/presenter/:no",component:()=>O(()=>import("./slidev/presenter-CSlu0vx_.js"),__vite__mapDeps([51,9,1,52,43,44,45,2,3,4,53,46,47,54,55,48,49,56])),beforeEnter:e},{path:"/presenter",redirect:{path:"/presenter/1"}})}return t.push({name:"play",path:"/:no",component:()=>O(()=>import("./slidev/play-BBKts_fx.js"),__vite__mapDeps([57,1,52,43,44,9,45,2,3,4,53,58]))},{path:"",redirect:{path:"/1"}}),ol.reduce((e,n)=>n(e),t)}const il=[];async function al(t){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e);const n=Oo({history:To("/sa2024/05-restful/"),routes:rl()});t.use(n),t.use(wr()),t.use(aa()),t.use(qa()),t.use(nl()),t.use(sl()),t.use($o,{container:"#twoslash-container"});const s={app:t,router:n};It(()=>{n.afterEach(async()=>{await It(),mn.value+=1})});for(const o of il)await o(s)}const Xs=Eo(ia);al(Xs);Xs.mount("#app");export{Ln as $,O as A,Bt as B,dn as C,Ja as D,Qa as E,oe as F,Mt as G,Nl as H,El as I,Ll as J,Ml as K,$l as L,Il as M,Dl as N,fl as O,Pl as P,On as Q,Hl as R,_t as S,Ar as T,Xa as U,$s as V,_s as W,Es as X,yl as Y,Pn as Z,js as _,yn as a,_l as a0,Kt as a1,Ir as a2,ml as a3,gl as a4,pl as a5,ue as a6,fe as a7,de as a8,he as a9,vl as aA,Hr as aB,Re as aC,He as aD,je as aE,xe as aF,Ne as aG,Fe as aH,Ve as aI,Nn as aa,at as ab,kl as ac,pe as ad,ge as ae,me as af,ye as ag,_e as ah,ve as ai,we as aj,ke as ak,be as al,Se as am,Me as an,Oe as ao,Te as ap,Ee as aq,$e as ar,Pe as as,Le as at,Ae as au,Ce as av,De as aw,Ie as ax,Cr as ay,Dr as az,Qi as b,H as c,Ns as d,Sl as e,Cl as f,et as g,wl as h,ss as i,Rl as j,Ka as k,Wt as l,jl as m,xl as n,gt as o,Ot as p,Ol as q,ul as r,hl as s,bl as t,br as u,Tl as v,Io as w,dl as x,Al as y,Ga as z}; diff --git a/05-restful/assets/index-zko8lOF5.css b/05-restful/assets/index-zko8lOF5.css new file mode 100644 index 0000000..46e0102 --- /dev/null +++ b/05-restful/assets/index-zko8lOF5.css @@ -0,0 +1 @@ +*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border-main=""],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main,[bg-main=""]{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main,.dark [bg-main=""]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.hover\:bg-active:hover,[hover\:bg-active=""]:hover{background-color:#9ca3af1a}.dark .text-main{--un-text-opacity:1;color:rgb(221 221 221 / var(--un-text-opacity))}.text-main{--un-text-opacity:1;color:rgb(24 24 24 / var(--un-text-opacity))}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .slidev-code-dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:13px}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.i-svg-spinners-90-ring-with-bg{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z' opacity='.25'/%3E%3Cpath fill='currentColor' d='M10.14,1.16a11,11,0,0,0-9,8.92A1.59,1.59,0,0,0,2.46,12,1.52,1.52,0,0,0,4.11,10.7a8,8,0,0,1,6.66-6.61A1.42,1.42,0,0,0,12,2.69h0A1.57,1.57,0,0,0,10.14,1.16Z'%3E%3CanimateTransform attributeName='transform' dur='0.75s' repeatCount='indefinite' type='rotate' values='0 12 12;360 12 12'/%3E%3C/path%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1em;height:1em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none,[pointer-events-none=""]{pointer-events:none}.absolute,[absolute=""]{position:absolute}.fixed,[fixed=""]{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-110\%,[left-110\%=""]{left:110%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5,[right-5=""]{right:1.25rem}.top-0{top:0}.top-1\/2,.top-50\%,[top-50\%=""]{top:50%}.-top-15px{top:-15px}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-100{z-index:100}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-cols-\[35px_1fr\]{grid-template-columns:35px 1fr}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-rows-\[auto_max-content\]{grid-template-rows:auto max-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-0{margin:0}.m-1{margin:.25rem}.m-10{margin:2.5rem}.m-20{margin:5rem}.m-5{margin:1.25rem}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.my1{margin-top:.25rem;margin-bottom:.25rem}.my4{margin-top:1rem;margin-bottom:1rem}.my5{margin-top:1.25rem;margin-bottom:1.25rem}.mb-4{margin-bottom:1rem}.mb2{margin-bottom:.5rem}.ml--4{margin-left:-1rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr--3,[mr--3=""]{margin-right:-.75rem}.mr--8{margin-right:-2rem}.mr-1,.mr1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-0\.5{margin-top:.125rem}.mt-1,.mt1{margin-top:.25rem}.mt-2,[mt-2=""]{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.aspect-ratio-initial{aspect-ratio:initial}.h-\[40px\],.h-40px{height:40px}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-100{height:25rem}.h-22px{height:22px}.h-2px{height:2px}.h-3px{height:3px}.h-40{height:10rem}.h-5,.h5,[h5=""]{height:1.25rem}.h-50{height:12.5rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-70{height:17.5rem}.h-8,[h-8=""]{height:2rem}.h-80{height:20rem}.h-9,[h-9=""]{height:2.25rem}.h-full,[h-full=""]{height:100%}.h-max{height:max-content}.h-screen{height:100vh}.h1{height:.25rem}.max-h-full{max-height:100%}.max-w-150{max-width:37.5rem}.max-w-250,[max-w-250=""]{max-width:62.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-h-50,[min-h-50=""]{min-height:12.5rem}.min-w-16{min-width:4rem}.min-w-40{min-width:10rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-\[40px\]{width:40px}.w-0{width:0}.w-13{width:3.25rem}.w-1px{width:1px}.w-200{width:50rem}.w-22px{width:22px}.w-250,[w-250=""]{width:62.5rem}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-7{width:1.75rem}.w-8,[w-8=""]{width:2rem}.w-9,[w-9=""]{width:2.25rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.w-screen{width:100vw}.w1{width:.25rem}.flex,[flex=""],[flex~="~"]{display:flex}.flex-1,[flex-1=""]{flex:1 1 0%}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-y--50\%,[translate-y--50\%=""]{--un-translate-y:-50%;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in 1s linear 1}.animate-duration-100{animation-duration:.1s}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.important\:\[\&_\*\]\:select-none *{-webkit-user-select:none!important;user-select:none!important}.select-none,[select-none=""]{-webkit-user-select:none;user-select:none}[select-none~="default:"]:default{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-after-page{break-after:page}.place-content-center{place-content:center}.items-end{align-items:flex-end}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.justify-items-start{justify-items:start}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4,[gap-4=""]{gap:1rem}.gap-5{gap:1.25rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""],[overflow-hidden=""]{overflow:hidden}.of-scroll{overflow:scroll}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap,.ws-nowrap,[ws-nowrap=""]{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border=""],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border-t=""],[border~=t]{border-top-width:1px}.b-dark{--un-border-opacity:1;border-color:rgb(34 34 34 / var(--un-border-opacity))}.border-gray,.dark .dark\:b-gray-400{--un-border-opacity:1;border-color:rgb(156 163 175 / var(--un-border-opacity))}.border-gray-300\/50{border-color:#d1d5db80}.dark .dark\:border-gray-500{--un-border-opacity:1;border-color:rgb(107 114 128 / var(--un-border-opacity))}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded],[rounded=""]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full,[rounded-full=""]{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-lb{border-bottom-left-radius:.25rem}.rounded-tl{border-top-left-radius:.25rem}.b-dashed{border-style:dashed}.\!border-none{border-style:none!important}[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray,[hover\:op100~="bg-gray:5"]{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.dark .dark\:bg-gray-800{--un-bg-opacity:1;background-color:rgb(31 41 55 / var(--un-bg-opacity))}.bg-gray\:10{background-color:#9ca3af1a}.bg-gray\:5{background-color:#9ca3af0d}.bg-gray\/20{background-color:#9ca3af33}.bg-teal-500{--un-bg-opacity:1;background-color:rgb(20 184 166 / var(--un-bg-opacity))}.bg-transparent,[bg-transparent~=","],[bg-transparent~="{"],[bg-transparent~="&&"],[bg-transparent~="text.value"]{background-color:transparent}[bg-transparent~="!valid.value"]{background-color:transparent!important}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.hover\:bg-gray\/20:hover{background-color:#9ca3af33}[bg-transparent~="placeholder:"]::placeholder{background-color:transparent}.bg-opacity-30{--un-bg-opacity:.3}.\!bg-opacity-75,.bg-opacity-75\!{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.dark .dark\:stroke-black{--un-stroke-opacity:1;stroke:rgb(0 0 0 / var(--un-stroke-opacity))}.stroke-white{--un-stroke-opacity:1;stroke:rgb(255 255 255 / var(--un-stroke-opacity))}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2,.p2,[p2=""]{padding:.5rem}.\!p-4{padding:1rem!important}.p3{padding:.75rem}.p4{padding:1rem}.px,.px-4,.px4,[p~=x-4],[px=""]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2,[px2=""]{padding-left:.5rem;padding-right:.5rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px1{padding-left:.25rem;padding-right:.25rem}.px3{padding-left:.75rem;padding-right:.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3,.py3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py0\.5{padding-top:.125rem;padding-bottom:.125rem}.py1\.5{padding-top:.375rem;padding-bottom:.375rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-0{padding-left:0}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.pt5{padding-top:1.25rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3em{font-size:3em}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg,[text-lg=""]{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}[text-sm~="default:"]:default{font-size:.875rem;line-height:1.25rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.dark .dark\:text-red-500{--un-text-opacity:1;color:rgb(239 68 68 / var(--un-text-opacity))}.text-red-700{--un-text-opacity:1;color:rgb(185 28 28 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}.important-text-op-50,.text-opacity-50\!{--un-text-opacity:.5 !important}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.font-mono,[font-mono=""]{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.tab{-moz-tab-size:4;-o-tab-size:4;tab-size:4}[tab~="1032"]{-moz-tab-size:1032;-o-tab-size:1032;tab-size:1032}[tab~="2"]{-moz-tab-size:2;-o-tab-size:2;tab-size:2}[tab~="default:"]:default{-moz-tab-size:4;-o-tab-size:4;tab-size:4}.\!opacity-0,.important\:op0{opacity:0!important}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""],.group:hover .group-hover\:op100{opacity:1}.op15{opacity:.15}.op20,.group:hover .group-hover\:opacity-20{opacity:.2}.op25,.opacity-25,[op25=""]{opacity:.25}.op30{opacity:.3}.op35{opacity:.35}.op40,.opacity-40{opacity:.4}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80,.group:hover .group-hover\:op80{opacity:.8}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.hover\:op100:hover,[hover~=op100]:hover{opacity:1}.hover\:\!opacity-100:hover{opacity:1!important}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-xl,[shadow-xl=""]{--un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none,[outline-none=""]{outline:2px solid transparent;outline-offset:2px}.backdrop-blur,.backdrop-blur-8,[backdrop-blur-8=""]{--un-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition,[transition=""]{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300,[duration-300=""]{transition-duration:.3s}.duration-400,[duration-400=""]{transition-duration:.4s}.duration-500{transition-duration:.5s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.view-transition-name{view-transition-name:name}@media (max-width: 767.9px){.lt-md\:hidden{display:none}.lt-md\:flex-col{flex-direction:column}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}}.shiki-magic-move-container{position:relative;white-space:pre}.shiki-magic-move-line-number{opacity:.3;-webkit-user-select:none;user-select:none}.shiki-magic-move-item{display:inline-block;transition:color var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-move,.shiki-magic-move-enter-active,.shiki-magic-move-leave-active{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-container-resize,.shiki-magic-move-container-restyle{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease");transition-delay:calc(var(--smm-duration, .5s) * var(--smm-delay-container, 1))}.shiki-magic-move-move{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-move, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-enter-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-enter, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-leave-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-leave, 1)) + var(--smm-stagger, 0))}.shiki-magic-move-enter-from,.shiki-magic-move-leave-to{opacity:0}br.shiki-magic-move-leave-active{display:none} diff --git a/05-restful/assets/modules/shiki-DdzKTf6Q.js b/05-restful/assets/modules/shiki-DdzKTf6Q.js deleted file mode 100644 index a2dd64c..0000000 --- a/05-restful/assets/modules/shiki-DdzKTf6Q.js +++ /dev/null @@ -1 +0,0 @@ -import{d as xe,n as Vt,p as Wt,a as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-BoI2EFOv.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),Vt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Wt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};jt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T}; diff --git a/05-restful/assets/modules/shiki-nC3sHFQh.js b/05-restful/assets/modules/shiki-nC3sHFQh.js new file mode 100644 index 0000000..9b892e8 --- /dev/null +++ b/05-restful/assets/modules/shiki-nC3sHFQh.js @@ -0,0 +1 @@ +import{d as xe,p as Vt,a as Wt,n as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-DbJrfnh0.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),jt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Vt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};Wt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T,Nt as t}; diff --git a/05-restful/assets/modules/unplugin-icons-CMs28sA9.js b/05-restful/assets/modules/unplugin-icons-CMs28sA9.js new file mode 100644 index 0000000..9eda504 --- /dev/null +++ b/05-restful/assets/modules/unplugin-icons-CMs28sA9.js @@ -0,0 +1 @@ +import{o as e,b as o,e as n}from"./vue-DbJrfnh0.js";const s={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},l=n("path",{fill:"currentColor",d:"M200 32h-36.26a47.92 47.92 0 0 0-71.48 0H56a16 16 0 0 0-16 16v168a16 16 0 0 0 16 16h144a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16m-72 0a32 32 0 0 1 32 32H96a32 32 0 0 1 32-32m72 184H56V48h26.75A47.93 47.93 0 0 0 80 64v8a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-8a47.93 47.93 0 0 0-2.75-16H200Z"},null,-1),_=[l];function i(t,c){return e(),o("svg",s,[..._])}const Bn={name:"ph-clipboard",render:i},h={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M173.66 98.34a8 8 0 0 1 0 11.32l-56 56a8 8 0 0 1-11.32 0l-24-24a8 8 0 0 1 11.32-11.32L112 148.69l50.34-50.35a8 8 0 0 1 11.32 0M232 128A104 104 0 1 1 128 24a104.11 104.11 0 0 1 104 104m-16 0a88 88 0 1 0-88 88a88.1 88.1 0 0 0 88-88"},null,-1),a=[r];function d(t,c){return e(),o("svg",h,[...a])}const Vn={name:"ph-check-circle",render:d},u={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),m=[v];function $(t,c){return e(),o("svg",u,[...m])}const bn={name:"carbon-list-boxes",render:$},p={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g=n("path",{fill:"currentColor",d:"M26 2H8a2 2 0 0 0-2 2v4H4v2h2v5H4v2h2v5H4v2h2v4a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2m0 26H8v-4h2v-2H8v-5h2v-2H8v-5h2V8H8V4h18Z"},null,-1),f=n("path",{fill:"currentColor",d:"M14 8h8v2h-8zm0 7h8v2h-8zm0 7h8v2h-8z"},null,-1),L=[g,f];function w(t,c){return e(),o("svg",p,[...L])}const Zn={name:"carbon-catalog",render:w},x={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),z=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),H=[M,z];function C(t,c){return e(),o("svg",x,[...H])}const An={name:"carbon-user-speaker",render:C},B={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},V=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),b=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),Z=[V,b];function A(t,c){return e(),o("svg",B,[...Z])}const kn={name:"carbon-presentation-file",render:A},k={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),j=[y];function D(t,c){return e(),o("svg",k,[...j])}const yn={name:"carbon-pen",render:D},E={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q=n("path",{fill:"currentColor",d:"m20.17 19l-2.59 2.59L19 23l4-4l-4-4l-1.42 1.41zm-8.34 0l2.59-2.59L13 15l-4 4l4 4l1.42-1.41z"},null,-1),F=n("circle",{cx:"9",cy:"8",r:"1",fill:"currentColor"},null,-1),I=n("circle",{cx:"6",cy:"8",r:"1",fill:"currentColor"},null,-1),N=n("path",{fill:"currentColor",d:"M28 4H4c-1.103 0-2 .898-2 2v20c0 1.103.897 2 2 2h24c1.103 0 2-.897 2-2V6c0-1.102-.897-2-2-2m0 2v4H4V6zM4 26V12h24v14z"},null,-1),S=[q,F,I,N];function G(t,c){return e(),o("svg",E,[...S])}const jn={name:"carbon-cics-program",render:G},J={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),O=[K];function U(t,c){return e(),o("svg",J,[...O])}const Dn={name:"carbon-sun",render:U},P={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Q=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),R=[Q];function T(t,c){return e(),o("svg",P,[...R])}const En={name:"carbon-moon",render:T},W={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},X=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),Y=[X];function n1(t,c){return e(),o("svg",W,[...Y])}const qn={name:"carbon-cursor1",render:n1},e1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},o1=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),t1=n("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),c1=[o1,t1];function s1(t,c){return e(),o("svg",e1,[...c1])}const Fn={name:"carbon-zoom-out",render:s1},l1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},_1=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),i1=n("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),h1=[_1,i1];function r1(t,c){return e(),o("svg",l1,[...h1])}const In={name:"carbon-zoom-in",render:r1},a1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},d1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),u1=[d1];function v1(t,c){return e(),o("svg",a1,[...u1])}const Nn={name:"carbon-maximize",render:v1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},$1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),p1=[$1];function g1(t,c){return e(),o("svg",m1,[...p1])}const Sn={name:"carbon-minimize",render:g1},f1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},L1=n("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),w1=[L1];function x1(t,c){return e(),o("svg",f1,[...w1])}const Gn={name:"carbon-renew",render:x1},M1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},z1=n("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),H1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),C1=[z1,H1];function B1(t,c){return e(),o("svg",M1,[...C1])}const Jn={name:"carbon-time",render:B1},V1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),Z1=[b1];function A1(t,c){return e(),o("svg",V1,[...Z1])}const Kn={name:"carbon-arrow-left",render:A1},k1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),j1=[y1];function D1(t,c){return e(),o("svg",k1,[...j1])}const On={name:"carbon-arrow-right",render:D1},E1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q1=n("path",{fill:"currentColor",d:"M16 4L6 14l1.41 1.41L15 7.83V28h2V7.83l7.59 7.58L26 14z"},null,-1),F1=[q1];function I1(t,c){return e(),o("svg",E1,[...F1])}const Un={name:"carbon-arrow-up",render:I1},N1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},S1=n("path",{fill:"currentColor",d:"M24.59 16.59L17 24.17V4h-2v20.17l-7.59-7.58L6 18l10 10l10-10z"},null,-1),G1=[S1];function J1(t,c){return e(),o("svg",N1,[...G1])}const Pn={name:"carbon-arrow-down",render:J1},K1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},O1=n("path",{d:"M29.537 13.76l-3.297-3.297a1.586 1.586 0 0 0-2.24 0L10 24.467V30h5.533l14.004-14a1.586 1.586 0 0 0 0-2.24zM14.704 28H12v-2.704l9.44-9.441l2.705 2.704zM25.56 17.145l-2.704-2.704l2.267-2.267l2.704 2.704z",fill:"currentColor"},null,-1),U1=n("path",{d:"M11 17h2v-7h3V8H8v2h3v7z",fill:"currentColor"},null,-1),P1=n("path",{d:"M8 20H4V4h16v4h2V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4z",fill:"currentColor"},null,-1),Q1=[O1,U1,P1];function R1(t,c){return e(),o("svg",K1,[...Q1])}const Qn={name:"carbon-text-annotation-toggle",render:R1},T1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},W1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),X1=[W1];function Y1(t,c){return e(),o("svg",T1,[...X1])}const Rn={name:"carbon-apps",render:Y1},n2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},e2=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),o2=[e2];function t2(t,c){return e(),o("svg",n2,[...o2])}const Tn={name:"carbon-settings-adjust",render:t2},c2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},s2=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),l2=n("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),_2=[s2,l2];function i2(t,c){return e(),o("svg",c2,[..._2])}const Wn={name:"carbon-information",render:i2},h2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},r2=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),a2=[r2];function d2(t,c){return e(),o("svg",h2,[...a2])}const Xn={name:"carbon-download",render:d2},u2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v2=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),m2=[v2];function $2(t,c){return e(),o("svg",u2,[...m2])}const Yn={name:"carbon-template",render:$2},p2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},g2=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0l-51.31-51.31a8 8 0 0 0-13 2.46l-17.82 46.41a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85l-46.41 17.82a8 8 0 0 0-2.46 13l51.31 51.31a8 8 0 0 1 0 11.34",opacity:".2"}),n("path",{d:"M168 132.69L214.08 115l.33-.13a16 16 0 0 0-1.41-29.8L52.92 32.8A15.95 15.95 0 0 0 32.8 52.92L85.07 213a15.82 15.82 0 0 0 14.41 11h.78a15.84 15.84 0 0 0 14.61-9.59l.13-.33L132.69 168L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63ZM195.31 208L144 156.69a16 16 0 0 0-26 4.93c0 .11-.09.22-.13.32l-17.65 46L48 48l159.85 52.2l-45.95 17.64l-.32.13a16 16 0 0 0-4.93 26L208 195.31Z"})],-1),f2=[g2];function L2(t,c){return e(),o("svg",p2,[...f2])}const ne={name:"ph-cursor-duotone",render:L2},w2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},x2=n("path",{fill:"currentColor",d:"m220.49 207.8l-12.69 12.69a12 12 0 0 1-17 0l-56.57-56.57L115 214.08l-.13.33a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-.33.13l-50.16 19.27l56.57 56.56a12 12 0 0 1 0 16.97"},null,-1),M2=[x2];function z2(t,c){return e(),o("svg",w2,[...M2])}const ee={name:"ph-cursor-fill",render:z2},H2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C2=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),B2=[C2];function V2(t,c){return e(),o("svg",H2,[...B2])}const oe={name:"carbon-checkmark",render:V2},b2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Z2=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),A2=[Z2];function k2(t,c){return e(),o("svg",b2,[...A2])}const te={name:"carbon-close",render:k2},y2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},j2=n("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),D2=n("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),E2=[j2,D2];function q2(t,c){return e(),o("svg",y2,[...E2])}const ce={name:"carbon-close-outline",render:q2},F2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},I2=n("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),N2=[I2];function S2(t,c){return e(),o("svg",F2,[...N2])}const se={name:"carbon-error",render:S2},G2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},J2=n("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),K2=[J2];function O2(t,c){return e(),o("svg",G2,[...K2])}const le={name:"carbon-pin",render:O2},U2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},P2=n("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),Q2=[P2];function R2(t,c){return e(),o("svg",U2,[...Q2])}const _e={name:"carbon-pin-filled",render:R2},T2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},W2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),X2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),Y2=[W2,X2];function nn(t,c){return e(),o("svg",T2,[...Y2])}const ie={name:"carbon-trash-can",render:nn},en={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},on=n("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),tn=[on];function cn(t,c){return e(),o("svg",en,[...tn])}const he={name:"carbon-redo",render:cn},sn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},ln=n("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),_n=[ln];function hn(t,c){return e(),o("svg",sn,[..._n])}const re={name:"carbon-undo",render:hn},rn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},an=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),dn=[an];function un(t,c){return e(),o("svg",rn,[...dn])}const ae={name:"carbon-erase",render:un},vn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},mn=n("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),$n=[mn];function pn(t,c){return e(),o("svg",vn,[...$n])}const de={name:"carbon-checkbox",render:pn},gn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},fn=n("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),Ln=[fn];function wn(t,c){return e(),o("svg",gn,[...Ln])}const ue={name:"carbon-radio-button",render:wn},xn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Mn=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),zn=[Mn];function Hn(t,c){return e(),o("svg",xn,[...zn])}const ve={name:"carbon-arrow-up-right",render:Hn};export{te as A,Vn as B,Bn as C,ve as D,ue as E,de as F,ae as G,re as H,Un as I,he as J,ie as K,_e as L,le as M,se as N,ce as O,kn as _,An as a,Zn as b,bn as c,En as d,Dn as e,jn as f,yn as g,In as h,Fn as i,Sn as j,Nn as k,Jn as l,Gn as m,qn as n,Kn as o,On as p,Pn as q,Qn as r,Rn as s,oe as t,ee as u,ne as v,Tn as w,Yn as x,Xn as y,Wn as z}; diff --git a/05-restful/assets/modules/unplugin-icons-CfAESjuq.js b/05-restful/assets/modules/unplugin-icons-CfAESjuq.js deleted file mode 100644 index 625ca9c..0000000 --- a/05-restful/assets/modules/unplugin-icons-CfAESjuq.js +++ /dev/null @@ -1 +0,0 @@ -import{o as e,b as o,e as n}from"./vue-BoI2EFOv.js";const c={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},_=n("path",{fill:"currentColor",d:"M200 32h-36.26a47.92 47.92 0 0 0-71.48 0H56a16 16 0 0 0-16 16v168a16 16 0 0 0 16 16h144a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16m-72 0a32 32 0 0 1 32 32H96a32 32 0 0 1 32-32m72 184H56V48h26.75A47.93 47.93 0 0 0 80 64v8a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-8a47.93 47.93 0 0 0-2.75-16H200Z"},null,-1),i=[_];function l(t,s){return e(),o("svg",c,[...i])}const nn={name:"ph-clipboard",render:l},h={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M173.66 98.34a8 8 0 0 1 0 11.32l-56 56a8 8 0 0 1-11.32 0l-24-24a8 8 0 0 1 11.32-11.32L112 148.69l50.34-50.35a8 8 0 0 1 11.32 0M232 128A104 104 0 1 1 128 24a104.11 104.11 0 0 1 104 104m-16 0a88 88 0 1 0-88 88a88.1 88.1 0 0 0 88-88"},null,-1),a=[r];function d(t,s){return e(),o("svg",h,[...a])}const en={name:"ph-check-circle",render:d},u={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},m=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),v=[m];function $(t,s){return e(),o("svg",u,[...v])}const on={name:"carbon-list-boxes",render:$},p={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),L=[g];function f(t,s){return e(),o("svg",p,[...L])}const tn={name:"carbon-close",render:f},w={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},x=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),M=[x];function z(t,s){return e(),o("svg",w,[...M])}const sn={name:"carbon-settings-adjust",render:z},H={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),b=n("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),B=[C,b];function V(t,s){return e(),o("svg",H,[...B])}const cn={name:"carbon-information",render:V},Z={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),k=[A];function j(t,s){return e(),o("svg",Z,[...k])}const _n={name:"carbon-download",render:j},y={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),E=[q];function S(t,s){return e(),o("svg",y,[...E])}const ln={name:"carbon-template",render:S},D={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},F=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),G=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),I=[F,G];function J(t,s){return e(),o("svg",D,[...I])}const hn={name:"carbon-user-speaker",render:J},N={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),O=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),P=[K,O];function Q(t,s){return e(),o("svg",N,[...P])}const rn={name:"carbon-presentation-file",render:Q},R={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},T=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),U=[T];function W(t,s){return e(),o("svg",R,[...U])}const an={name:"carbon-pen",render:W},X={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},Y=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0L140 164a8 8 0 0 0-13 2.46l-19.46 44.77a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85L166.45 127a8 8 0 0 0-2.45 13l49.67 49.67a8 8 0 0 1-.01 11.33",opacity:".2"}),n("path",{d:"m169.64 134.33l44.77-19.46a16 16 0 0 0-1.41-29.8L52.92 32.8A16 16 0 0 0 32.8 52.92L85.07 213a15.83 15.83 0 0 0 14.41 11h.78a15.83 15.83 0 0 0 14.61-9.59l19.46-44.77L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63Zm-69.48 73.76l.06-.05Zm95.15-.09l-49.67-49.67a16 16 0 0 0-26 4.94l-19.42 44.65L48 48l159.87 52.21l-44.64 19.41a16 16 0 0 0-4.94 26L208 195.31Z"})],-1),n1=[Y];function e1(t,s){return e(),o("svg",X,[...n1])}const dn={name:"ph-cursor-duotone",render:e1},o1={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},t1=n("path",{fill:"currentColor",d:"M219.31 192a16 16 0 0 1 0 22.63l-4.68 4.68a16 16 0 0 1-22.63 0l-55.25-55.24l-21.88 50.34a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-50.34 21.88Z"},null,-1),s1=[t1];function c1(t,s){return e(),o("svg",o1,[...s1])}const un={name:"ph-cursor-fill",render:c1},_1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},i1=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),l1=[i1];function h1(t,s){return e(),o("svg",_1,[...l1])}const mn={name:"carbon-sun",render:h1},r1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},a1=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),d1=[a1];function u1(t,s){return e(),o("svg",r1,[...d1])}const vn={name:"carbon-moon",render:u1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),$1=[v1];function p1(t,s){return e(),o("svg",m1,[...$1])}const $n={name:"carbon-apps",render:p1},g1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},L1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),f1=[L1];function w1(t,s){return e(),o("svg",g1,[...f1])}const pn={name:"carbon-arrow-right",render:w1},x1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),z1=[M1];function H1(t,s){return e(),o("svg",x1,[...z1])}const gn={name:"carbon-arrow-left",render:H1},C1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),B1=[b1];function V1(t,s){return e(),o("svg",C1,[...B1])}const Ln={name:"carbon-maximize",render:V1},Z1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),k1=[A1];function j1(t,s){return e(),o("svg",Z1,[...k1])}const fn={name:"carbon-minimize",render:j1},y1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q1=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),E1=[q1];function S1(t,s){return e(),o("svg",y1,[...E1])}const wn={name:"carbon-checkmark",render:S1},D1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},F1=n("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),G1=[F1];function I1(t,s){return e(),o("svg",D1,[...G1])}const xn={name:"carbon-renew",render:I1},J1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},N1=n("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),K1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),O1=[N1,K1];function P1(t,s){return e(),o("svg",J1,[...O1])}const Mn={name:"carbon-time",render:P1},Q1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},R1=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),T1=n("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),U1=[R1,T1];function W1(t,s){return e(),o("svg",Q1,[...U1])}const zn={name:"carbon-zoom-out",render:W1},X1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Y1=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),n2=n("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),e2=[Y1,n2];function o2(t,s){return e(),o("svg",X1,[...e2])}const Hn={name:"carbon-zoom-in",render:o2},t2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},s2=n("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),c2=n("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),_2=[s2,c2];function i2(t,s){return e(),o("svg",t2,[..._2])}const Cn={name:"carbon-close-outline",render:i2},l2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},h2=n("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),r2=[h2];function a2(t,s){return e(),o("svg",l2,[...r2])}const bn={name:"carbon-error",render:a2},d2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},u2=n("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),m2=[u2];function v2(t,s){return e(),o("svg",d2,[...m2])}const Bn={name:"carbon-pin",render:v2},$2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},p2=n("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),g2=[p2];function L2(t,s){return e(),o("svg",$2,[...g2])}const Vn={name:"carbon-pin-filled",render:L2},f2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},w2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),x2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),M2=[w2,x2];function z2(t,s){return e(),o("svg",f2,[...M2])}const Zn={name:"carbon-trash-can",render:z2},H2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C2=n("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),b2=[C2];function B2(t,s){return e(),o("svg",H2,[...b2])}const An={name:"carbon-redo",render:B2},V2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Z2=n("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),A2=[Z2];function k2(t,s){return e(),o("svg",V2,[...A2])}const kn={name:"carbon-undo",render:k2},j2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y2=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),q2=[y2];function E2(t,s){return e(),o("svg",j2,[...q2])}const jn={name:"carbon-erase",render:E2},S2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},D2=n("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),F2=[D2];function G2(t,s){return e(),o("svg",S2,[...F2])}const yn={name:"carbon-checkbox",render:G2},I2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},J2=n("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),N2=[J2];function K2(t,s){return e(),o("svg",I2,[...N2])}const qn={name:"carbon-radio-button",render:K2},O2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},P2=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),Q2=[P2];function R2(t,s){return e(),o("svg",O2,[...Q2])}const En={name:"carbon-arrow-up-right",render:R2},T2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},U2=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),W2=[U2];function X2(t,s){return e(),o("svg",T2,[...W2])}const Sn={name:"carbon-cursor1",render:X2};export{qn as A,yn as B,jn as C,kn as D,An as E,Zn as F,Vn as G,Bn as H,bn as I,Cn as J,en as _,nn as a,Sn as b,Hn as c,zn as d,Mn as e,xn as f,tn as g,on as h,wn as i,fn as j,Ln as k,gn as l,pn as m,vn as n,mn as o,un as p,dn as q,an as r,sn as s,$n as t,rn as u,hn as v,ln as w,_n as x,cn as y,En as z}; diff --git a/05-restful/assets/modules/vue-BoI2EFOv.js b/05-restful/assets/modules/vue-BoI2EFOv.js deleted file mode 100644 index 5798001..0000000 --- a/05-restful/assets/modules/vue-BoI2EFOv.js +++ /dev/null @@ -1,62 +0,0 @@ -/** -* vue v3.4.21 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/function We(e,t){const n=new Set(e.split(","));return t?s=>n.has(s.toLowerCase()):s=>n.has(s)}const ge=Object.freeze({}),ms=Object.freeze([]),Ve=()=>{},li=()=>!1,In=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),yi=e=>e.startsWith("onUpdate:"),ue=Object.assign,jl=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},im=Object.prototype.hasOwnProperty,pe=(e,t)=>im.call(e,t),K=Array.isArray,Jn=e=>Ls(e)==="[object Map]",Fs=e=>Ls(e)==="[object Set]",oc=e=>Ls(e)==="[object Date]",om=e=>Ls(e)==="[object RegExp]",Q=e=>typeof e=="function",ne=e=>typeof e=="string",$t=e=>typeof e=="symbol",me=e=>e!==null&&typeof e=="object",Ki=e=>(me(e)||Q(e))&&Q(e.then)&&Q(e.catch),nf=Object.prototype.toString,Ls=e=>nf.call(e),Bl=e=>Ls(e).slice(8,-1),sf=e=>Ls(e)==="[object Object]",Hl=e=>ne(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Sn=We(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),rf=We("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),qi=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},lm=/-(\w)/g,Pe=qi(e=>e.replace(lm,(t,n)=>n?n.toUpperCase():"")),am=/\B([A-Z])/g,et=qi(e=>e.replace(am,"-$1").toLowerCase()),Wt=qi(e=>e.charAt(0).toUpperCase()+e.slice(1)),Bt=qi(e=>e?`on${Wt(e)}`:""),Ft=(e,t)=>!Object.is(e,t),bn=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},dr=e=>{const t=parseFloat(e);return isNaN(t)?e:t},bi=e=>{const t=ne(e)?Number(e):NaN;return isNaN(t)?e:t};let lc;const of=()=>lc||(lc=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}),Ut={1:"TEXT",2:"CLASS",4:"STYLE",8:"PROPS",16:"FULL_PROPS",32:"NEED_HYDRATION",64:"STABLE_FRAGMENT",128:"KEYED_FRAGMENT",256:"UNKEYED_FRAGMENT",512:"NEED_PATCH",1024:"DYNAMIC_SLOTS",2048:"DEV_ROOT_FRAGMENT",[-1]:"HOISTED",[-2]:"BAIL"},cm={1:"STABLE",2:"DYNAMIC",3:"FORWARDED"},um="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error",fm=We(um),ac=2;function dm(e,t=0,n=e.length){let s=e.split(/(\r?\n)/);const r=s.filter((l,a)=>a%2===1);s=s.filter((l,a)=>a%2===0);let i=0;const o=[];for(let l=0;l=t){for(let a=l-ac;a<=l+ac||n>i;a++){if(a<0||a>=s.length)continue;const u=a+1;o.push(`${u}${" ".repeat(Math.max(3-String(u).length,0))}| ${s[a]}`);const f=s[a].length,c=r[a]&&r[a].length||0;if(a===l){const d=t-(i-(f+c)),p=Math.max(1,n>i?f-d:n-t);o.push(" | "+" ".repeat(d)+"^".repeat(p))}else if(a>l){if(n>i){const d=Math.max(Math.min(n-i,f),1);o.push(" | "+"^".repeat(d))}i+=f+c}}break}return o.join(` -`)}function Ds(e){if(K(e)){const t={};for(let n=0;n{if(n){const s=n.split(hm);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function gm(e){let t="";if(!e||ne(e))return t;for(const n in e){const s=e[n],r=n.startsWith("--")?n:et(n);(ne(s)||typeof s=="number")&&(t+=`${r}:${s};`)}return t}function Vs(e){let t="";if(ne(e))t=e;else if(K(e))for(let n=0;nss(n,t))}const Om=e=>ne(e)?e:e==null?"":K(e)||me(e)&&(e.toString===nf||!Q(e.toString))?JSON.stringify(e,df,2):String(e),df=(e,t)=>t&&t.__v_isRef?df(e,t.value):Jn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[go(s,i)+" =>"]=r,n),{})}:Fs(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>go(n))}:$t(t)?go(t):me(t)&&!K(t)&&!sf(t)?String(t):t,go=(e,t="")=>{var n;return $t(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};function zt(e,...t){console.warn(`[Vue warn] ${e}`,...t)}let gt;class ql{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=gt,!t&>&&(this.index=(gt.scopes||(gt.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=gt;try{return gt=this,t()}finally{gt=n}}else zt("cannot run an inactive effect scope.")}on(){gt=this}off(){gt=this.parent}stop(t){if(this._active){let n,s;for(n=0,s=this.effects.length;n=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),$n()}return this._dirtyLevel>=4}set dirty(t){this._dirtyLevel=t?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=En,n=Xn;try{return En=!0,Xn=this,this._runnings++,uc(this),this.fn()}finally{fc(this),this._runnings--,Xn=n,En=t}}stop(){var t;this.active&&(uc(this),fc(this),(t=this.onStop)==null||t.call(this),this.active=!1)}}function Nm(e){return e.value}function uc(e){e._trackId++,e._depsLength=0}function fc(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{n.dirty&&n.run()});t&&(ue(n,t),t.scope&&pf(n,t.scope)),(!t||!t.lazy)&&n.run();const s=n.run.bind(n);return s.effect=n,s}function Pm(e){e.effect.stop()}let En=!0,Uo=0;const gf=[];function Mn(){gf.push(En),En=!1}function $n(){const e=gf.pop();En=e===void 0?!0:e}function zl(){Uo++}function Gl(){for(Uo--;!Uo&&Ko.length;)Ko.shift()()}function yf(e,t,n){var s;if(t.get(e)!==e._trackId){t.set(e,e._trackId);const r=e.deps[e._depsLength];r!==t?(r&&mf(r,e),e.deps[e._depsLength++]=t):e._depsLength++,(s=e.onTrack)==null||s.call(e,ue({effect:e},n))}}const Ko=[];function vf(e,t,n){var s;zl();for(const r of e.keys()){let i;r._dirtyLevel{const n=new Map;return n.cleanup=e,n.computed=t,n},_i=new WeakMap,Qn=Symbol("iterate"),qo=Symbol("Map key iterate");function rt(e,t,n){if(En&&Xn){let s=_i.get(e);s||_i.set(e,s=new Map);let r=s.get(n);r||s.set(n,r=bf(()=>s.delete(n))),yf(Xn,r,{target:e,type:t,key:n})}}function Kt(e,t,n,s,r,i){const o=_i.get(e);if(!o)return;let l=[];if(t==="clear")l=[...o.values()];else if(n==="length"&&K(e)){const a=Number(s);o.forEach((u,f)=>{(f==="length"||!$t(f)&&f>=a)&&l.push(u)})}else switch(n!==void 0&&l.push(o.get(n)),t){case"add":K(e)?Hl(n)&&l.push(o.get("length")):(l.push(o.get(Qn)),Jn(e)&&l.push(o.get(qo)));break;case"delete":K(e)||(l.push(o.get(Qn)),Jn(e)&&l.push(o.get(qo)));break;case"set":Jn(e)&&l.push(o.get(Qn));break}zl();for(const a of l)a&&vf(a,4,{target:e,type:t,key:n,newValue:s,oldValue:r,oldTarget:i});Gl()}function Im(e,t){var n;return(n=_i.get(e))==null?void 0:n.get(t)}const Mm=We("__proto__,__v_isRef,__isVue"),_f=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter($t)),dc=$m();function $m(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const s=se(this);for(let i=0,o=this.length;i{e[t]=function(...n){Mn(),zl();const s=se(this)[t].apply(this,n);return Gl(),$n(),s}}),e}function Fm(e){const t=se(this);return rt(t,"has",e),t.hasOwnProperty(e)}class wf{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?Of:Af:i?xf:Cf).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=K(t);if(!r){if(o&&pe(dc,n))return Reflect.get(dc,n,s);if(n==="hasOwnProperty")return Fm}const l=Reflect.get(t,n,s);return($t(n)?_f.has(n):Mm(n))||(r||rt(t,"get",n),i)?l:Ee(l)?o&&Hl(n)?l:l.value:me(l)?r?dt(l):lt(l):l}}class Sf extends wf{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];if(!this._isShallow){const a=rn(i);if(!Cn(s)&&!rn(s)&&(i=se(i),s=se(s)),!K(t)&&Ee(i)&&!Ee(s))return a?!1:(i.value=s,!0)}const o=K(t)&&Hl(n)?Number(n)e,Wi=e=>Reflect.getPrototypeOf(e);function Ur(e,t,n=!1,s=!1){e=e.__v_raw;const r=se(e),i=se(t);n||(Ft(t,i)&&rt(r,"get",t),rt(r,"get",i));const{has:o}=Wi(r),l=s?Yl:n?Ql:hr;if(o.call(r,t))return l(e.get(t));if(o.call(r,i))return l(e.get(i));e!==r&&e.get(t)}function Kr(e,t=!1){const n=this.__v_raw,s=se(n),r=se(e);return t||(Ft(e,r)&&rt(s,"has",e),rt(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function qr(e,t=!1){return e=e.__v_raw,!t&&rt(se(e),"iterate",Qn),Reflect.get(e,"size",e)}function pc(e){e=se(e);const t=se(this);return Wi(t).has.call(t,e)||(t.add(e),Kt(t,"add",e,e)),this}function hc(e,t){t=se(t);const n=se(this),{has:s,get:r}=Wi(n);let i=s.call(n,e);i?Tf(n,s,e):(e=se(e),i=s.call(n,e));const o=r.call(n,e);return n.set(e,t),i?Ft(t,o)&&Kt(n,"set",e,t,o):Kt(n,"add",e,t),this}function mc(e){const t=se(this),{has:n,get:s}=Wi(t);let r=n.call(t,e);r?Tf(t,n,e):(e=se(e),r=n.call(t,e));const i=s?s.call(t,e):void 0,o=t.delete(e);return r&&Kt(t,"delete",e,void 0,i),o}function gc(){const e=se(this),t=e.size!==0,n=Jn(e)?new Map(e):new Set(e),s=e.clear();return t&&Kt(e,"clear",void 0,void 0,n),s}function Wr(e,t){return function(s,r){const i=this,o=i.__v_raw,l=se(o),a=t?Yl:e?Ql:hr;return!e&&rt(l,"iterate",Qn),o.forEach((u,f)=>s.call(r,a(u),a(f),i))}}function zr(e,t,n){return function(...s){const r=this.__v_raw,i=se(r),o=Jn(i),l=e==="entries"||e===Symbol.iterator&&o,a=e==="keys"&&o,u=r[e](...s),f=n?Yl:t?Ql:hr;return!t&&rt(i,"iterate",a?qo:Qn),{next(){const{value:c,done:d}=u.next();return d?{value:c,done:d}:{value:l?[f(c[0]),f(c[1])]:f(c),done:d}},[Symbol.iterator](){return this}}}}function an(e){return function(...t){{const n=t[0]?`on key "${t[0]}" `:"";zt(`${Wt(e)} operation ${n}failed: target is readonly.`,se(this))}return e==="delete"?!1:e==="clear"?void 0:this}}function Bm(){const e={get(i){return Ur(this,i)},get size(){return qr(this)},has:Kr,add:pc,set:hc,delete:mc,clear:gc,forEach:Wr(!1,!1)},t={get(i){return Ur(this,i,!1,!0)},get size(){return qr(this)},has:Kr,add:pc,set:hc,delete:mc,clear:gc,forEach:Wr(!1,!0)},n={get(i){return Ur(this,i,!0)},get size(){return qr(this,!0)},has(i){return Kr.call(this,i,!0)},add:an("add"),set:an("set"),delete:an("delete"),clear:an("clear"),forEach:Wr(!0,!1)},s={get(i){return Ur(this,i,!0,!0)},get size(){return qr(this,!0)},has(i){return Kr.call(this,i,!0)},add:an("add"),set:an("set"),delete:an("delete"),clear:an("clear"),forEach:Wr(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=zr(i,!1,!1),n[i]=zr(i,!0,!1),t[i]=zr(i,!1,!0),s[i]=zr(i,!0,!0)}),[e,n,t,s]}const[Hm,Um,Km,qm]=Bm();function zi(e,t){const n=t?e?qm:Km:e?Um:Hm;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(pe(n,r)&&r in s?n:s,r,i)}const Wm={get:zi(!1,!1)},zm={get:zi(!1,!0)},Gm={get:zi(!0,!1)},Ym={get:zi(!0,!0)};function Tf(e,t,n){const s=se(n);if(s!==n&&t.call(e,s)){const r=Bl(e);zt(`Reactive ${r} contains both the raw and reactive versions of the same object${r==="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 Cf=new WeakMap,xf=new WeakMap,Af=new WeakMap,Of=new WeakMap;function Jm(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Xm(e){return e.__v_skip||!Object.isExtensible(e)?0:Jm(Bl(e))}function lt(e){return rn(e)?e:Gi(e,!1,Lm,Wm,Cf)}function Jl(e){return Gi(e,!1,Vm,zm,xf)}function dt(e){return Gi(e,!0,Dm,Gm,Af)}function Kn(e){return Gi(e,!0,jm,Ym,Of)}function Gi(e,t,n,s,r){if(!me(e))return zt(`value cannot be made reactive: ${String(e)}`),e;if(e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=Xm(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function Tn(e){return rn(e)?Tn(e.__v_raw):!!(e&&e.__v_isReactive)}function rn(e){return!!(e&&e.__v_isReadonly)}function Cn(e){return!!(e&&e.__v_isShallow)}function pr(e){return Tn(e)||rn(e)}function se(e){const t=e&&e.__v_raw;return t?se(t):e}function Xl(e){return Object.isExtensible(e)&&vi(e,"__v_skip",!0),e}const hr=e=>me(e)?lt(e):e,Ql=e=>me(e)?dt(e):e,Qm="Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free";class Rf{constructor(t,n,s,r){this.getter=t,this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Cs(()=>t(this._value),()=>gs(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=s}get value(){const t=se(this);return(!t._cacheable||t.effect.dirty)&&Ft(t._value,t._value=t.effect.run())&&gs(t,4),Zl(t),t.effect._dirtyLevel>=2&&(this._warnRecursive&&zt(Qm,` - -getter: `,this.getter),gs(t,2)),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function Zm(e,t,n=!1){let s,r;const i=Q(e);i?(s=e,r=()=>{zt("Write operation failed: computed value is readonly")}):(s=e.get,r=e.set);const o=new Rf(s,r,i||!r,n);return t&&!n&&(o.effect.onTrack=t.onTrack,o.effect.onTrigger=t.onTrigger),o}function Zl(e){var t;En&&Xn&&(e=se(e),yf(Xn,(t=e.dep)!=null?t:e.dep=bf(()=>e.dep=void 0,e instanceof Rf?e:void 0),{target:e,type:"get",key:"value"}))}function gs(e,t=4,n){e=se(e);const s=e.dep;s&&vf(s,t,{target:e,type:"set",key:"value",newValue:n})}function Ee(e){return!!(e&&e.__v_isRef===!0)}function Z(e){return Nf(e,!1)}function ys(e){return Nf(e,!0)}function Nf(e,t){return Ee(e)?e:new eg(e,t)}class eg{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:se(t),this._value=n?t:hr(t)}get value(){return Zl(this),this._value}set value(t){const n=this.__v_isShallow||Cn(t)||rn(t);t=n?t:se(t),Ft(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:hr(t),gs(this,4,t))}}function tg(e){gs(e,4,e.value)}function nt(e){return Ee(e)?e.value:e}function ng(e){return Q(e)?e():nt(e)}const sg={get:(e,t,n)=>nt(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return Ee(r)&&!Ee(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function ea(e){return Tn(e)?e:new Proxy(e,sg)}class rg{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:s}=t(()=>Zl(this),()=>gs(this));this._get=n,this._set=s}get value(){return this._get()}set value(t){this._set(t)}}function Yi(e){return new rg(e)}function kf(e){pr(e)||zt("toRefs() expects a reactive object but received a plain one.");const t=K(e)?new Array(e.length):{};for(const n in e)t[n]=If(e,n);return t}class ig{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,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 Im(se(this._object),this._key)}}class og{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Pf(e,t,n){return Ee(e)?e:Q(e)?new og(e):me(e)&&arguments.length>1?If(e,t,n):Z(e)}function If(e,t,n){const s=e[t];return Ee(s)?s:new ig(e,t,n)}const lg={GET:"get",HAS:"has",ITERATE:"iterate"},ag={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},Zn=[];function Zs(e){Zn.push(e)}function er(){Zn.pop()}function M(e,...t){Mn();const n=Zn.length?Zn[Zn.length-1].component:null,s=n&&n.appContext.config.warnHandler,r=cg();if(s)qt(s,n,11,[e+t.map(i=>{var o,l;return(l=(o=i.toString)==null?void 0:o.call(i))!=null?l:JSON.stringify(i)}).join(""),n&&n.proxy,r.map(({vnode:i})=>`at <${oo(n,i.type)}>`).join(` -`),r]);else{const i=[`[Vue warn]: ${e}`,...t];r.length&&i.push(` -`,...ug(r)),console.warn(...i)}$n()}function cg(){let e=Zn[Zn.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 s=e.component&&e.component.parent;e=s&&s.vnode}return t}function ug(e){const t=[];return e.forEach((n,s)=>{t.push(...s===0?[]:[` -`],...fg(n))}),t}function fg({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",s=e.component?e.component.parent==null:!1,r=` at <${oo(e.component,e.type,s)}`,i=">"+n;return e.props?[r,...dg(e.props),i]:[r+i]}function dg(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(s=>{t.push(...Mf(s,e[s]))}),n.length>3&&t.push(" ..."),t}function Mf(e,t,n){return ne(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:Ee(t)?(t=Mf(e,se(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):Q(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=se(t),n?t:[`${e}=`,t])}function ta(e,t){e!==void 0&&(typeof e!="number"?M(`${t} is not a valid number - got ${JSON.stringify(e)}.`):isNaN(e)&&M(`${t} is NaN - the duration expression might be incorrect.`))}const pg={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",WATCH_GETTER:2,2:"WATCH_GETTER",WATCH_CALLBACK:3,3:"WATCH_CALLBACK",WATCH_CLEANUP:4,4:"WATCH_CLEANUP",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER"},Ji={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 qt(e,t,n,s){try{return s?e(...s):e()}catch(r){Fn(r,t,n)}}function At(e,t,n,s){if(Q(e)){const i=qt(e,t,n,s);return i&&Ki(i)&&i.catch(o=>{Fn(o,t,n)}),i}const r=[];for(let i=0;i>>1,r=tt[s],i=yr(r);iHt&&tt.splice(t,1)}function gr(e){K(e)?vs.push(...e):(!en||!en.includes(e,e.allowRecurse?pn+1:pn))&&vs.push(e),Ff()}function yc(e,t,n=mr?Ht+1:0){for(t=t||new Map;nyr(n)-yr(s));if(vs.length=0,en){en.push(...t);return}for(en=t,e=e||new Map,pn=0;pne.id==null?1/0:e.id,vg=(e,t)=>{const n=yr(e)-yr(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Lf(e){Wo=!1,mr=!0,e=e||new Map,tt.sort(vg);const t=n=>sa(e,n);try{for(Ht=0;Htmg){const s=t.ownerInstance,r=s&&_r(s.type);return Fn(`Maximum recursive updates exceeded${r?` in component <${r}>`:""}. 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 xn=!1;const hs=new Set;of().__VUE_HMR_RUNTIME__={createRecord:yo(Df),rerender:yo(wg),reload:yo(Sg)};const rs=new Map;function bg(e){const t=e.type.__hmrId;let n=rs.get(t);n||(Df(t,e.type),n=rs.get(t)),n.instances.add(e)}function _g(e){rs.get(e.type.__hmrId).instances.delete(e)}function Df(e,t){return rs.has(e)?!1:(rs.set(e,{initialDef:tr(t),instances:new Set}),!0)}function tr(e){return $d(e)?e.__vccOpts:e}function wg(e,t){const n=rs.get(e);n&&(n.initialDef.render=t,[...n.instances].forEach(s=>{t&&(s.render=t,tr(s.type).render=t),s.renderCache=[],xn=!0,s.effect.dirty=!0,s.update(),xn=!1}))}function Sg(e,t){const n=rs.get(e);if(!n)return;t=tr(t),vc(n.initialDef,t);const s=[...n.instances];for(const r of s){const i=tr(r.type);hs.has(i)||(i!==n.initialDef&&vc(i,t),hs.add(i)),r.appContext.propsCache.delete(r.type),r.appContext.emitsCache.delete(r.type),r.appContext.optionsCache.delete(r.type),r.ceReload?(hs.add(i),r.ceReload(t.styles),hs.delete(i)):r.parent?(r.parent.effect.dirty=!0,Rr(r.parent.update)):r.appContext.reload?r.appContext.reload():typeof window<"u"?window.location.reload():console.warn("[HMR] Root or manually mounted instance modified. Full reload required.")}gr(()=>{for(const r of s)hs.delete(tr(r.type))})}function vc(e,t){ue(e,t);for(const n in e)n!=="__file"&&!(n in t)&&delete e[n]}function yo(e){return(t,n)=>{try{return e(t,n)}catch(s){console.error(s),console.warn("[HMR] Something went wrong during Vue component hot-reload. Full reload required.")}}}let kt,Js=[],zo=!1;function Nr(e,...t){kt?kt.emit(e,...t):zo||Js.push({event:e,args:t})}function ra(e,t){var n,s;kt=e,kt?(kt.enabled=!0,Js.forEach(({event:r,args:i})=>kt.emit(r,...i)),Js=[]):typeof window<"u"&&window.HTMLElement&&!((s=(n=window.navigator)==null?void 0:n.userAgent)!=null&&s.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(i=>{ra(i,t)}),setTimeout(()=>{kt||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,zo=!0,Js=[])},3e3)):(zo=!0,Js=[])}function Eg(e,t){Nr("app:init",e,t,{Fragment:Be,Text:On,Comment:Le,Static:An})}function Tg(e){Nr("app:unmount",e)}const Go=ia("component:added"),Vf=ia("component:updated"),Cg=ia("component:removed"),xg=e=>{kt&&typeof kt.cleanupBuffer=="function"&&!kt.cleanupBuffer(e)&&Cg(e)};function ia(e){return t=>{Nr(e,t.appContext.app,t.uid,t.parent?t.parent.uid:void 0,t)}}const Ag=jf("perf:start"),Og=jf("perf:end");function jf(e){return(t,n,s)=>{Nr(e,t.appContext.app,t.uid,t,n,s)}}function Rg(e,t,n){Nr("component:emit",e.appContext.app,e,t,n)}function Ng(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||ge;{const{emitsOptions:f,propsOptions:[c]}=e;if(f)if(!(t in f))(!c||!(Bt(t)in c))&&M(`Component emitted event "${t}" but it is neither declared in the emits option nor as an "${Bt(t)}" prop.`);else{const d=f[t];Q(d)&&(d(...n)||M(`Invalid event arguments: event validation failed for event "${t}".`))}}let r=n;const i=t.startsWith("update:"),o=i&&t.slice(7);if(o&&o in s){const f=`${o==="modelValue"?"model":o}Modifiers`,{number:c,trim:d}=s[f]||ge;d&&(r=n.map(p=>ne(p)?p.trim():p)),c&&(r=n.map(dr))}Rg(e,t,r);{const f=t.toLowerCase();f!==t&&s[Bt(f)]&&M(`Event "${f}" is emitted in component ${oo(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 "${et(t)}" instead of "${t}".`)}let l,a=s[l=Bt(t)]||s[l=Bt(Pe(t))];!a&&i&&(a=s[l=Bt(et(t))]),a&&At(a,e,6,r);const u=s[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,At(u,e,6,r)}}function Bf(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!Q(e)){const a=u=>{const f=Bf(u,t,!0);f&&(l=!0,ue(o,f))};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!i&&!l?(me(e)&&s.set(e,null),null):(K(i)?i.forEach(a=>o[a]=null):ue(o,i),me(e)&&s.set(e,o),o)}function Xi(e,t){return!e||!In(t)?!1:(t=t.slice(2).replace(/Once$/,""),pe(e,t[0].toLowerCase()+t.slice(1))||pe(e,et(t))||pe(e,t))}let ke=null,Qi=null;function Si(e){const t=ke;return ke=e,Qi=e&&e.type.__scopeId||null,t}function kg(e){Qi=e}function Pg(){Qi=null}const Ig=e=>oa;function oa(e,t=ke,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&sl(-1);const i=Si(t);let o;try{o=e(...r)}finally{Si(i),s._d&&sl(1)}return Vf(t),o};return s._n=!0,s._c=!0,s._d=!0,s}let Yo=!1;function Ei(){Yo=!0}function vo(e){const{type:t,vnode:n,proxy:s,withProxy:r,props:i,propsOptions:[o],slots:l,attrs:a,emit:u,render:f,renderCache:c,data:d,setupState:p,ctx:g,inheritAttrs:E}=e;let S,y;const v=Si(e);Yo=!1;try{if(n.shapeFlag&4){const b=r||s,T=p.__isScriptSetup?new Proxy(b,{get(O,C,A){return M(`Property '${String(C)}' was accessed via 'this'. Avoid using 'this' in templates.`),Reflect.get(O,C,A)}}):b;S=vt(f.call(T,b,c,i,p,d,g)),y=a}else{const b=t;a===i&&Ei(),S=vt(b.length>1?b(i,{get attrs(){return Ei(),a},slots:l,emit:u}):b(i,null)),y=t.props?a:Mg(a)}}catch(b){sr.length=0,Fn(b,e,1),S=Oe(Le)}let h=S,w;if(S.patchFlag>0&&S.patchFlag&2048&&([h,w]=Hf(S)),y&&E!==!1){const b=Object.keys(y),{shapeFlag:T}=h;if(b.length){if(T&7)o&&b.some(yi)&&(y=$g(y,o)),h=Ot(h,y);else if(!Yo&&h.type!==Le){const O=Object.keys(a),C=[],A=[];for(let x=0,k=O.length;x renders non-element root node that cannot be animated."),h.transition=n.transition),w?w(h):S=h,Si(v),S}const Hf=e=>{const t=e.children,n=e.dynamicChildren,s=Zi(t,!1);if(s){if(s.patchFlag>0&&s.patchFlag&2048)return Hf(s)}else return[e,void 0];const r=t.indexOf(s),i=n?n.indexOf(s):-1,o=l=>{t[r]=l,n&&(i>-1?n[i]=l:l.patchFlag>0&&(e.dynamicChildren=[...n,l]))};return[vt(s),o]};function Zi(e,t=!0){let n;for(let s=0;s0&&n.patchFlag&2048)return Zi(n.children)}}else return}return n}const Mg=e=>{let t;for(const n in e)(n==="class"||n==="style"||In(n))&&((t||(t={}))[n]=e[n]);return t},$g=(e,t)=>{const n={};for(const s in e)(!yi(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n},bc=e=>e.shapeFlag&7||e.type===Le;function Fg(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:a}=t,u=i.emitsOptions;if((r||l)&&xn||t.dirs||t.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return s?_c(s,o,u):!!o;if(a&8){const f=t.dynamicProps;for(let c=0;ce.__isSuspense;let Jo=0;const jg={name:"Suspense",__isSuspense:!0,process(e,t,n,s,r,i,o,l,a,u){if(e==null)Hg(t,n,s,r,i,o,l,a,u);else{if(i&&i.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}Ug(e,t,n,s,r,o,l,a,u)}},hydrate:Kg,create:ua,normalize:qg},Bg=jg;function vr(e,t){const n=e.props&&e.props[t];Q(n)&&n()}function Hg(e,t,n,s,r,i,o,l,a){const{p:u,o:{createElement:f}}=a,c=f("div"),d=e.suspense=ua(e,r,s,t,c,n,i,o,l,a);u(null,d.pendingBranch=e.ssContent,c,null,s,d,i,o),d.deps>0?(vr(e,"onPending"),vr(e,"onFallback"),u(null,e.ssFallback,t,n,s,null,i,o),bs(d,e.ssFallback)):d.resolve(!1,!0)}function Ug(e,t,n,s,r,i,o,l,{p:a,um:u,o:{createElement:f}}){const c=t.suspense=e.suspense;c.vnode=t,t.el=e.el;const d=t.ssContent,p=t.ssFallback,{activeBranch:g,pendingBranch:E,isInFallback:S,isHydrating:y}=c;if(E)c.pendingBranch=d,Pt(d,E)?(a(E,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():S&&(y||(a(g,p,n,s,r,null,i,o,l),bs(c,p)))):(c.pendingId=Jo++,y?(c.isHydrating=!1,c.activeBranch=E):u(E,r,c),c.deps=0,c.effects.length=0,c.hiddenContainer=f("div"),S?(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():(a(g,p,n,s,r,null,i,o,l),bs(c,p))):g&&Pt(d,g)?(a(g,d,n,s,r,c,i,o,l),c.resolve(!0)):(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0&&c.resolve()));else if(g&&Pt(d,g))a(g,d,n,s,r,c,i,o,l),bs(c,d);else if(vr(t,"onPending"),c.pendingBranch=d,d.shapeFlag&512?c.pendingId=d.component.suspenseId:c.pendingId=Jo++,a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0)c.resolve();else{const{timeout:v,pendingId:h}=c;v>0?setTimeout(()=>{c.pendingId===h&&c.fallback(p)},v):v===0&&c.fallback(p)}}let Sc=!1;function ua(e,t,n,s,r,i,o,l,a,u,f=!1){Sc||(Sc=!0,console[console.info?"info":"log"](" is an experimental feature and its API will likely change."));const{p:c,m:d,um:p,n:g,o:{parentNode:E,remove:S}}=u;let y;const v=Wg(e);v&&t!=null&&t.pendingBranch&&(y=t.pendingId,t.deps++);const h=e.props?bi(e.props.timeout):void 0;ta(h,"Suspense timeout");const w=i,b={vnode:e,parent:t,parentComponent:n,namespace:o,container:s,hiddenContainer:r,deps:0,pendingId:Jo++,timeout:typeof h=="number"?h:-1,activeBranch:null,pendingBranch:null,isInFallback:!f,isHydrating:f,isUnmounted:!1,effects:[],resolve(T=!1,O=!1){{if(!T&&!b.pendingBranch)throw new Error("suspense.resolve() is called without a pending branch.");if(b.isUnmounted)throw new Error("suspense.resolve() is called on an already unmounted suspense boundary.")}const{vnode:C,activeBranch:A,pendingBranch:x,pendingId:k,effects:R,parentComponent:V,container:Y}=b;let ee=!1;b.isHydrating?b.isHydrating=!1:T||(ee=A&&x.transition&&x.transition.mode==="out-in",ee&&(A.transition.afterLeave=()=>{k===b.pendingId&&(d(x,Y,i===w?g(A):i,0),gr(R))}),A&&(E(A.el)!==b.hiddenContainer&&(i=g(A)),p(A,V,b,!0)),ee||d(x,Y,i,0)),bs(b,x),b.pendingBranch=null,b.isInFallback=!1;let B=b.parent,G=!1;for(;B;){if(B.pendingBranch){B.effects.push(...R),G=!0;break}B=B.parent}!G&&!ee&&gr(R),b.effects=[],v&&t&&t.pendingBranch&&y===t.pendingId&&(t.deps--,t.deps===0&&!O&&t.resolve()),vr(C,"onResolve")},fallback(T){if(!b.pendingBranch)return;const{vnode:O,activeBranch:C,parentComponent:A,container:x,namespace:k}=b;vr(O,"onFallback");const R=g(C),V=()=>{b.isInFallback&&(c(null,T,x,R,A,null,k,l,a),bs(b,T))},Y=T.transition&&T.transition.mode==="out-in";Y&&(C.transition.afterLeave=V),b.isInFallback=!0,p(C,A,null,!0),Y||V()},move(T,O,C){b.activeBranch&&d(b.activeBranch,T,O,C),b.container=T},next(){return b.activeBranch&&g(b.activeBranch)},registerDep(T,O){const C=!!b.pendingBranch;C&&b.deps++;const A=T.vnode.el;T.asyncDep.catch(x=>{Fn(x,T,0)}).then(x=>{if(T.isUnmounted||b.isUnmounted||b.pendingId!==T.suspenseId)return;T.asyncResolved=!0;const{vnode:k}=T;Zs(k),al(T,x,!1),A&&(k.el=A);const R=!A&&T.subTree.el;O(T,k,E(A||T.subTree.el),A?null:g(T.subTree),b,o,a),R&&S(R),la(T,k.el),er(),C&&--b.deps===0&&b.resolve()})},unmount(T,O){b.isUnmounted=!0,b.activeBranch&&p(b.activeBranch,n,T,O),b.pendingBranch&&p(b.pendingBranch,n,T,O)}};return b}function Kg(e,t,n,s,r,i,o,l,a){const u=t.suspense=ua(t,s,n,e.parentNode,document.createElement("div"),null,r,i,o,l,!0),f=a(e,u.pendingBranch=t.ssContent,n,u,i,o);return u.deps===0&&u.resolve(!1,!0),f}function qg(e){const{shapeFlag:t,children:n}=e,s=t&32;e.ssContent=Ec(s?n.default:n),e.ssFallback=s?Ec(n.fallback):Oe(Le)}function Ec(e){let t;if(Q(e)){const n=os&&e._c;n&&(e._d=!1,so()),e=e(),n&&(e._d=!0,t=pt,Cd())}if(K(e)){const n=Zi(e);!n&&e.filter(s=>s!==aa).length>0&&M(" slots expect a single root node."),e=n}return e=vt(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function qf(e,t){t&&t.pendingBranch?K(e)?t.effects.push(...e):t.effects.push(e):gr(e)}function bs(e,t){e.activeBranch=t;const{vnode:n,parentComponent:s}=e;let r=t.el;for(;!r&&t.component;)t=t.component.subTree,r=t.el;n.el=r,s&&s.subTree===n&&(s.vnode.el=r,la(s,r))}function Wg(e){var t;return((t=e.props)==null?void 0:t.suspensible)!=null&&e.props.suspensible!==!1}const Wf=Symbol.for("v-scx"),zg=()=>{{const e=Ct(Wf);return e||M("Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build."),e}};function fa(e,t){return kr(e,null,t)}function zf(e,t){return kr(e,null,ue({},t,{flush:"post"}))}function Gf(e,t){return kr(e,null,ue({},t,{flush:"sync"}))}const Gr={};function ve(e,t,n){return Q(t)||M("`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."),kr(e,t,n)}function kr(e,t,{immediate:n,deep:s,flush:r,once:i,onTrack:o,onTrigger:l}=ge){if(t&&i){const T=t;t=(...O)=>{T(...O),b()}}s!==void 0&&typeof s=="number"&&M('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&&M('watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.'),s!==void 0&&M('watch() "deep" option is only respected when using the watch(source, callback, options?) signature.'),i!==void 0&&M('watch() "once" option is only respected when using the watch(source, callback, options?) signature.'));const a=T=>{M("Invalid watch source: ",T,"A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.")},u=Fe,f=T=>s===!0?T:qn(T,s===!1?1:void 0);let c,d=!1,p=!1;if(Ee(e)?(c=()=>e.value,d=Cn(e)):Tn(e)?(c=()=>f(e),d=!0):K(e)?(p=!0,d=e.some(T=>Tn(T)||Cn(T)),c=()=>e.map(T=>{if(Ee(T))return T.value;if(Tn(T))return f(T);if(Q(T))return qt(T,u,2);a(T)})):Q(e)?t?c=()=>qt(e,u,2):c=()=>(g&&g(),At(e,u,3,[E])):(c=Ve,a(e)),t&&s){const T=c;c=()=>qn(T())}let g,E=T=>{g=h.onStop=()=>{qt(T,u,4),g=h.onStop=void 0}},S=p?new Array(e.length).fill(Gr):Gr;const y=()=>{if(!(!h.active||!h.dirty))if(t){const T=h.run();(s||d||(p?T.some((O,C)=>Ft(O,S[C])):Ft(T,S)))&&(g&&g(),At(t,u,3,[T,S===Gr?void 0:p&&S[0]===Gr?[]:S,E]),S=T)}else h.run()};y.allowRecurse=!!t;let v;r==="sync"?v=y:r==="post"?v=()=>Ge(y,u&&u.suspense):(y.pre=!0,u&&(y.id=u.uid),v=()=>Rr(y));const h=new Cs(c,Ve,v),w=Wl(),b=()=>{h.stop(),w&&jl(w.effects,h)};return h.onTrack=o,h.onTrigger=l,t?n?y():S=h.run():r==="post"?Ge(h.run.bind(h),u&&u.suspense):h.run(),b}function Gg(e,t,n){const s=this.proxy,r=ne(e)?e.includes(".")?Yf(s,e):()=>s[e]:e.bind(s,s);let i;Q(t)?i=t:(i=t.handler,n=t);const o=ls(this),l=kr(r,i.bind(s),n);return o(),l}function Yf(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r0){if(n>=t)return e;n++}if(s=s||new Set,s.has(e))return e;if(s.add(e),Ee(e))qn(e.value,t,n,s);else if(K(e))for(let r=0;r{qn(r,t,n,s)});else if(sf(e))for(const r in e)qn(e[r],t,n,s);return e}function Jf(e){rf(e)&&M("Do not use built-in directive ids as custom directive id: "+e)}function Yg(e,t){if(ke===null)return M("withDirectives can only be used inside render functions."),e;const n=io(ke)||ke.proxy,s=e.dirs||(e.dirs=[]);for(let r=0;r{e.isMounted=!0}),no(()=>{e.isUnmounting=!0}),e}const wt=[Function,Array],pa={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:wt,onEnter:wt,onAfterEnter:wt,onEnterCancelled:wt,onBeforeLeave:wt,onLeave:wt,onAfterLeave:wt,onLeaveCancelled:wt,onBeforeAppear:wt,onAppear:wt,onAfterAppear:wt,onAppearCancelled:wt},Jg={name:"BaseTransition",props:pa,setup(e,{slots:t}){const n=Je(),s=da();return()=>{const r=t.default&&eo(t.default(),!0);if(!r||!r.length)return;let i=r[0];if(r.length>1){let d=!1;for(const p of r)if(p.type!==Le){if(d){M(" can only be used on a single element or component. Use for lists.");break}i=p,d=!0}}const o=se(e),{mode:l}=o;if(l&&l!=="in-out"&&l!=="out-in"&&l!=="default"&&M(`invalid mode: ${l}`),s.isLeaving)return bo(i);const a=Tc(i);if(!a)return bo(i);const u=xs(a,o,s,n);is(a,u);const f=n.subTree,c=f&&Tc(f);if(c&&c.type!==Le&&!Pt(a,c)){const d=xs(c,o,s,n);if(is(c,d),l==="out-in")return s.isLeaving=!0,d.afterLeave=()=>{s.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},bo(i);l==="in-out"&&a.type!==Le&&(d.delayLeave=(p,g,E)=>{const S=Qf(s,c);S[String(c.key)]=c,p[hn]=()=>{g(),p[hn]=void 0,delete u.delayedLeave},u.delayedLeave=E})}return i}}},Xf=Jg;function Qf(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function xs(e,t,n,s){const{appear:r,mode:i,persisted:o=!1,onBeforeEnter:l,onEnter:a,onAfterEnter:u,onEnterCancelled:f,onBeforeLeave:c,onLeave:d,onAfterLeave:p,onLeaveCancelled:g,onBeforeAppear:E,onAppear:S,onAfterAppear:y,onAppearCancelled:v}=t,h=String(e.key),w=Qf(n,e),b=(C,A)=>{C&&At(C,s,9,A)},T=(C,A)=>{const x=A[1];b(C,A),K(C)?C.every(k=>k.length<=1)&&x():C.length<=1&&x()},O={mode:i,persisted:o,beforeEnter(C){let A=l;if(!n.isMounted)if(r)A=E||l;else return;C[hn]&&C[hn](!0);const x=w[h];x&&Pt(e,x)&&x.el[hn]&&x.el[hn](),b(A,[C])},enter(C){let A=a,x=u,k=f;if(!n.isMounted)if(r)A=S||a,x=y||u,k=v||f;else return;let R=!1;const V=C[Yr]=Y=>{R||(R=!0,Y?b(k,[C]):b(x,[C]),O.delayedLeave&&O.delayedLeave(),C[Yr]=void 0)};A?T(A,[C,V]):V()},leave(C,A){const x=String(e.key);if(C[Yr]&&C[Yr](!0),n.isUnmounting)return A();b(c,[C]);let k=!1;const R=C[hn]=V=>{k||(k=!0,A(),V?b(g,[C]):b(p,[C]),C[hn]=void 0,w[x]===e&&delete w[x])};w[x]=e,d?T(d,[C,R]):R()},clone(C){return xs(C,t,n,s)}};return O}function bo(e){if(Bs(e))return e=Ot(e),e.children=null,e}function Tc(e){return Bs(e)?e.component?e.component.subTree:e.children?e.children[0]:void 0:e}function is(e,t){e.shapeFlag&6&&e.component?is(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 eo(e,t=!1,n){let s=[],r=0;for(let i=0;i1)for(let i=0;i!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function Xg(e){Q(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:r=200,timeout:i,suspensible:o=!0,onError:l}=e;let a=null,u,f=0;const c=()=>(f++,a=null,d()),d=()=>{let p;return a||(p=a=t().catch(g=>{if(g=g instanceof Error?g:new Error(String(g)),l)return new Promise((E,S)=>{l(g,()=>E(c()),()=>S(g),f+1)});throw g}).then(g=>{if(p!==a&&a)return a;if(g||M("Async component loader resolved to undefined. If you are using retry(), make sure to return its return value."),g&&(g.__esModule||g[Symbol.toStringTag]==="Module")&&(g=g.default),g&&!me(g)&&!Q(g))throw new Error(`Invalid async component load result: ${g}`);return u=g,g}))};return js({name:"AsyncComponentWrapper",__asyncLoader:d,get __asyncResolved(){return u},setup(){const p=Fe;if(u)return()=>_o(u,p);const g=v=>{a=null,Fn(v,p,13,!s)};if(o&&p.suspense)return d().then(v=>()=>_o(v,p)).catch(v=>(g(v),()=>s?Oe(s,{error:v}):null));const E=Z(!1),S=Z(),y=Z(!!r);return r&&setTimeout(()=>{y.value=!1},r),i!=null&&setTimeout(()=>{if(!E.value&&!S.value){const v=new Error(`Async component timed out after ${i}ms.`);g(v),S.value=v}},i),d().then(()=>{E.value=!0,p.parent&&Bs(p.parent.vnode)&&(p.parent.effect.dirty=!0,Rr(p.parent.update))}).catch(v=>{g(v),S.value=v}),()=>{if(E.value&&u)return _o(u,p);if(S.value&&s)return Oe(s,{error:S.value});if(n&&!y.value)return Oe(n)}}})}function _o(e,t){const{ref:n,props:s,children:r,ce:i}=t.vnode,o=Oe(e,s,r);return o.ref=n,o.ce=i,delete t.vnode.ce,o}const Bs=e=>e.type.__isKeepAlive,Qg={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Je(),s=n.ctx,r=new Map,i=new Set;let o=null;n.__v_cache=r;const l=n.suspense,{renderer:{p:a,m:u,um:f,o:{createElement:c}}}=s,d=c("div");s.activate=(v,h,w,b,T)=>{const O=v.component;u(v,h,w,0,l),a(O.vnode,v,h,w,O,l,b,v.slotScopeIds,T),Ge(()=>{O.isDeactivated=!1,O.a&&bn(O.a);const C=v.props&&v.props.onVnodeMounted;C&&ut(C,O.parent,v)},l),Go(O)},s.deactivate=v=>{const h=v.component;u(v,d,null,1,l),Ge(()=>{h.da&&bn(h.da);const w=v.props&&v.props.onVnodeUnmounted;w&&ut(w,h.parent,v),h.isDeactivated=!0},l),Go(h)};function p(v){wo(v),f(v,n,l,!0)}function g(v){r.forEach((h,w)=>{const b=_r(h.type);b&&(!v||!v(b))&&E(w)})}function E(v){const h=r.get(v);!o||!Pt(h,o)?p(h):o&&wo(o),r.delete(v),i.delete(v)}ve(()=>[e.include,e.exclude],([v,h])=>{v&&g(w=>Xs(v,w)),h&&g(w=>!Xs(h,w))},{flush:"post",deep:!0});let S=null;const y=()=>{S!=null&&r.set(S,So(n.subTree))};return cs(y),Pr(y),no(()=>{r.forEach(v=>{const{subTree:h,suspense:w}=n,b=So(h);if(v.type===b.type&&v.key===b.key){wo(b);const T=b.component.da;T&&Ge(T,w);return}p(v)})}),()=>{if(S=null,!t.default)return null;const v=t.default(),h=v[0];if(v.length>1)return M("KeepAlive should contain exactly one component child."),o=null,v;if(!Rn(h)||!(h.shapeFlag&4)&&!(h.shapeFlag&128))return o=null,h;let w=So(h);const b=w.type,T=_r(es(w)?w.type.__asyncResolved||{}:b),{include:O,exclude:C,max:A}=e;if(O&&(!T||!Xs(O,T))||C&&T&&Xs(C,T))return o=w,h;const x=w.key==null?b:w.key,k=r.get(x);return w.el&&(w=Ot(w),h.shapeFlag&128&&(h.ssContent=w)),S=x,k?(w.el=k.el,w.component=k.component,w.transition&&is(w,w.transition),w.shapeFlag|=512,i.delete(x),i.add(x)):(i.add(x),A&&i.size>parseInt(A,10)&&E(i.values().next().value)),w.shapeFlag|=256,o=w,Kf(h.type)?h:w}}},Zg=Qg;function Xs(e,t){return K(e)?e.some(n=>Xs(n,t)):ne(e)?e.split(",").includes(t):om(e)?e.test(t):!1}function Zf(e,t){td(e,"a",t)}function ed(e,t){td(e,"da",t)}function td(e,t,n=Fe){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(to(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Bs(r.parent.vnode)&&ey(s,t,n,r),r=r.parent}}function ey(e,t,n,s){const r=to(t,e,s,!0);Ir(()=>{jl(s[t],r)},n)}function wo(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function So(e){return e.shapeFlag&128?e.ssContent:e}function to(e,t,n=Fe,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;Mn();const l=ls(n),a=At(t,n,e,o);return l(),$n(),a});return s?r.unshift(i):r.push(i),i}else{const r=Bt(Ji[e].replace(/ hook$/,""));M(`${r} 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 on=e=>(t,n=Fe)=>(!wa||e==="sp")&&to(e,(...s)=>t(...s),n),nd=on("bm"),cs=on("m"),sd=on("bu"),Pr=on("u"),no=on("bum"),Ir=on("um"),rd=on("sp"),id=on("rtg"),od=on("rtc");function ld(e,t=Fe){to("ec",e,t)}function ty(e,t,n,s){let r;const i=n&&n[s];if(K(e)||ne(e)){r=new Array(e.length);for(let o=0,l=e.length;ot(o,l,void 0,i&&i[l]));else{const o=Object.keys(e);r=new Array(o.length);for(let l=0,a=o.length;l{const i=s.fn(...r);return i&&(i.key=s.key),i}:s.fn)}return e}function sy(e,t,n={},s,r){if(ke.isCE||ke.parent&&es(ke.parent)&&ke.parent.isCE)return t!=="default"&&(n.name=t),Oe("slot",n,s&&s());let i=e[t];i&&i.length>1&&(M("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."),i=()=>[]),i&&i._c&&(i._d=!1),so();const o=i&&ad(i(n)),l=ya(Be,{key:n.key||o&&o.key||`_${t}`},o||(s?s():[]),o&&e._===1?64:-2);return!r&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),i&&i._c&&(i._d=!0),l}function ad(e){return e.some(t=>Rn(t)?!(t.type===Le||t.type===Be&&!ad(t.children)):!0)?e:null}function ry(e,t){const n={};if(!me(e))return M("v-on with no argument expects an object value."),n;for(const s in e)n[t&&/[A-Z]/.test(s)?`on:${s}`:Bt(s)]=e[s];return n}const Xo=e=>e?kd(e)?io(e)||e.proxy:Xo(e.parent):null,ts=ue(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>Kn(e.props),$attrs:e=>Kn(e.attrs),$slots:e=>Kn(e.slots),$refs:e=>Kn(e.refs),$parent:e=>Xo(e.parent),$root:e=>Xo(e.root),$emit:e=>e.emit,$options:e=>ma(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Rr(e.update)}),$nextTick:e=>e.n||(e.n=Ln.bind(e.proxy)),$watch:e=>Gg.bind(e)}),ha=e=>e==="_"||e==="$",Eo=(e,t)=>e!==ge&&!e.__isScriptSetup&&pe(e,t),nr={get({_:e},t){const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:a}=e;if(t==="__isVue")return!0;let u;if(t[0]!=="$"){const p=o[t];if(p!==void 0)switch(p){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(Eo(s,t))return o[t]=1,s[t];if(r!==ge&&pe(r,t))return o[t]=2,r[t];if((u=e.propsOptions[0])&&pe(u,t))return o[t]=3,i[t];if(n!==ge&&pe(n,t))return o[t]=4,n[t];Qo&&(o[t]=0)}}const f=ts[t];let c,d;if(f)return t==="$attrs"?(rt(e,"get",t),Ei()):t==="$slots"&&rt(e,"get",t),f(e);if((c=l.__cssModules)&&(c=c[t]))return c;if(n!==ge&&pe(n,t))return o[t]=4,n[t];if(d=a.config.globalProperties,pe(d,t))return d[t];ke&&(!ne(t)||t.indexOf("__v")!==0)&&(r!==ge&&ha(t[0])&&pe(r,t)?M(`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===ke&&M(`Property ${JSON.stringify(t)} was accessed during render but is not defined on instance.`))},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return Eo(r,t)?(r[t]=n,!0):r.__isScriptSetup&&pe(r,t)?(M(`Cannot mutate - - - + + + - +
+
diff --git a/06-scalable/404.html b/06-scalable/404.html index 7a48d29..9b6f814 100644 --- a/06-scalable/404.html +++ b/06-scalable/404.html @@ -7,15 +7,15 @@ - - - - + + + - +
+
diff --git a/06-scalable/assets/05-aosa-Nc6SwzyN.js b/06-scalable/assets/05-aosa-Nc6SwzyN.js new file mode 100644 index 0000000..3ce2d9a --- /dev/null +++ b/06-scalable/assets/05-aosa-Nc6SwzyN.js @@ -0,0 +1 @@ +const s="/sa2024/06-scalable/assets/05-aosa-CHolCvXF.jpg";export{s as _}; diff --git a/06-scalable/assets/05-cache-redis-cluster-9qPGnpqd.js b/06-scalable/assets/05-cache-redis-cluster-9qPGnpqd.js new file mode 100644 index 0000000..cd52a27 --- /dev/null +++ b/06-scalable/assets/05-cache-redis-cluster-9qPGnpqd.js @@ -0,0 +1 @@ +const s="/sa2024/06-scalable/assets/05-cache-redis-cluster-B8n1awY2.png";export{s as _}; diff --git a/06-scalable/assets/05-lb-simple-DXb4WkCm.js b/06-scalable/assets/05-lb-simple-DXb4WkCm.js new file mode 100644 index 0000000..5eeb0d5 --- /dev/null +++ b/06-scalable/assets/05-lb-simple-DXb4WkCm.js @@ -0,0 +1 @@ +const s="/sa2024/06-scalable/assets/05-lb-simple-C_LK4xk9.png";export{s as _}; diff --git a/06-scalable/assets/06-accessingData-wVYkcQtn.png b/06-scalable/assets/06-accessingData-wVYkcQtn.png new file mode 100644 index 0000000..c3edfa6 Binary files /dev/null and b/06-scalable/assets/06-accessingData-wVYkcQtn.png differ diff --git a/06-scalable/assets/06-collapseRequests-D910Xq-I.png b/06-scalable/assets/06-collapseRequests-D910Xq-I.png new file mode 100644 index 0000000..a7d6838 Binary files /dev/null and b/06-scalable/assets/06-collapseRequests-D910Xq-I.png differ diff --git a/06-scalable/assets/06-collapseRequestsSpatial-BIqOQLuk.png b/06-scalable/assets/06-collapseRequestsSpatial-BIqOQLuk.png new file mode 100644 index 0000000..339dd51 Binary files /dev/null and b/06-scalable/assets/06-collapseRequestsSpatial-BIqOQLuk.png differ diff --git a/06-scalable/assets/06-distributedCaching-DS3b0ZuU.png b/06-scalable/assets/06-distributedCaching-DS3b0ZuU.png new file mode 100644 index 0000000..d445895 Binary files /dev/null and b/06-scalable/assets/06-distributedCaching-DS3b0ZuU.png differ diff --git a/06-scalable/assets/06-globalCache2-BTWrTSpg.png b/06-scalable/assets/06-globalCache2-BTWrTSpg.png new file mode 100644 index 0000000..0032d2e Binary files /dev/null and b/06-scalable/assets/06-globalCache2-BTWrTSpg.png differ diff --git a/06-scalable/assets/06-imageHosting2-CBfkgHv4.png b/06-scalable/assets/06-imageHosting2-CBfkgHv4.png new file mode 100644 index 0000000..28f04d8 Binary files /dev/null and b/06-scalable/assets/06-imageHosting2-CBfkgHv4.png differ diff --git a/06-scalable/assets/06-imageHosting3-BLBYQWVx.png b/06-scalable/assets/06-imageHosting3-BLBYQWVx.png new file mode 100644 index 0000000..707c496 Binary files /dev/null and b/06-scalable/assets/06-imageHosting3-BLBYQWVx.png differ diff --git a/06-scalable/assets/06-imageHosting4-Csq5ZWZQ.png b/06-scalable/assets/06-imageHosting4-Csq5ZWZQ.png new file mode 100644 index 0000000..376a5aa Binary files /dev/null and b/06-scalable/assets/06-imageHosting4-Csq5ZWZQ.png differ diff --git a/06-scalable/assets/06-indexes-Dk76ubOp.jpeg b/06-scalable/assets/06-indexes-Dk76ubOp.jpeg new file mode 100644 index 0000000..d811d97 Binary files /dev/null and b/06-scalable/assets/06-indexes-Dk76ubOp.jpeg differ diff --git a/06-scalable/assets/06-loadBalancer-Cku_ebct.png b/06-scalable/assets/06-loadBalancer-Cku_ebct.png new file mode 100644 index 0000000..ce32ec4 Binary files /dev/null and b/06-scalable/assets/06-loadBalancer-Cku_ebct.png differ diff --git a/06-scalable/assets/06-multipleIndexes-BUg897Er.jpeg b/06-scalable/assets/06-multipleIndexes-BUg897Er.jpeg new file mode 100644 index 0000000..c093b5a Binary files /dev/null and b/06-scalable/assets/06-multipleIndexes-BUg897Er.jpeg differ diff --git a/06-scalable/assets/06-multipleLoadBalancers-CsF7ltIu.png b/06-scalable/assets/06-multipleLoadBalancers-CsF7ltIu.png new file mode 100644 index 0000000..b61b634 Binary files /dev/null and b/06-scalable/assets/06-multipleLoadBalancers-CsF7ltIu.png differ diff --git a/06-scalable/assets/06-overSimpleWeb-DbREwptZ.png b/06-scalable/assets/06-overSimpleWeb-DbREwptZ.png new file mode 100644 index 0000000..5589e3e Binary files /dev/null and b/06-scalable/assets/06-overSimpleWeb-DbREwptZ.png differ diff --git a/06-scalable/assets/06-queues-DFm5Z4zv.png b/06-scalable/assets/06-queues-DFm5Z4zv.png new file mode 100644 index 0000000..447c728 Binary files /dev/null and b/06-scalable/assets/06-queues-DFm5Z4zv.png differ diff --git a/06-scalable/assets/06-simpleWeb-CiPhs3sT.png b/06-scalable/assets/06-simpleWeb-CiPhs3sT.png new file mode 100644 index 0000000..8a985fa Binary files /dev/null and b/06-scalable/assets/06-simpleWeb-CiPhs3sT.png differ diff --git a/06-scalable/assets/06-synchronousRequest-D97pfZ_D.png b/06-scalable/assets/06-synchronousRequest-D97pfZ_D.png new file mode 100644 index 0000000..d9d5633 Binary files /dev/null and b/06-scalable/assets/06-synchronousRequest-D97pfZ_D.png differ diff --git a/06-scalable/assets/10-Bb6sorjN.js b/06-scalable/assets/10-Bb6sorjN.js new file mode 100644 index 0000000..7179273 --- /dev/null +++ b/06-scalable/assets/10-Bb6sorjN.js @@ -0,0 +1 @@ +import{o as r,c as a,k as s,q as i,s as n,A as o,e as t,a6 as l}from"./modules/vue-CyVBQAnX.js";import{I as _}from"./slidev/two-cols-BSLkXsP-.js";import{_ as c,af as e}from"./index-DK5cJv9W.js";import{p,u as m,f as d}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const u="/sa2024/06-scalable/assets/05-lb-SSvWQota.png",f=t("h1",null,"水平扩展",-1),h=t("p",null,[t("br"),t("br"),t("br")],-1),b=t("blockquote",null,[t("p",null,[l("负载平衡是一种计算机技术,用来在多个计算机、网络连接、CPU、磁盘驱动器或其他资源中分配负载,以达到最优化资源使用、最大化吞吐率、最小化响应时间、同时避免过载的目的。 使用带有负载平衡的多个服务器组件,取代单一的组件,可以通过冗余提高可靠性。负载平衡服务通常是由专用软件和硬件来完成。 "),t("br")])],-1),g=t("div",{style:{"text-align":"right"}},"https://zh.wikipedia.org/zh-cn/负载均衡",-1),x=t("p",null,[t("br"),t("br"),t("br"),t("br"),t("img",{src:u,class:"m-5 h-60"})],-1),k={__name:"10",setup(v){return p(e),m(),(P,z)=>(r(),a(_,i(n(o(d)(o(e),9))),{right:s(B=>[x]),default:s(()=>[f,h,b,g]),_:1},16))}},I=c(k,[["__file","/@slidev/slides/10.md"]]);export{I as default}; diff --git a/06-scalable/assets/11-CJ_sHooH.js b/06-scalable/assets/11-CJ_sHooH.js new file mode 100644 index 0000000..9b7a79d --- /dev/null +++ b/06-scalable/assets/11-CJ_sHooH.js @@ -0,0 +1 @@ +import{o as r,c as a,k as t,q as l,s as n,A as o,e as s}from"./modules/vue-CyVBQAnX.js";import{I as i}from"./slidev/two-cols-BSLkXsP-.js";import{_,ag as e}from"./index-DK5cJv9W.js";import{p as c,u as p,f as m}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const u="/sa2024/06-scalable/assets/05-nslookup-CzF82Wf7.png",d="/sa2024/06-scalable/assets/05-dnsrr-BK8pi5DW.png",f=s("h1",null,"DNS Round Robin",-1),h=s("img",{src:u,class:"m-5 h-40"},null,-1),g=s("ul",null,[s("li",null,"优点:简单"),s("li",null,"缺点:难以控制(DNS刷新延迟)")],-1),b=s("p",null,[s("br"),s("br"),s("img",{src:d,class:"m-5 h-60"})],-1),x={__name:"11",setup(k){return c(e),p(),(B,P)=>(r(),a(i,l(n(o(m)(o(e),10))),{right:t(v=>[b]),default:t(()=>[f,h,g]),_:1},16))}},z=_(x,[["__file","/@slidev/slides/11.md"]]);export{z as default}; diff --git a/06-scalable/assets/12-egZidWBU.js b/06-scalable/assets/12-egZidWBU.js new file mode 100644 index 0000000..198e5d9 --- /dev/null +++ b/06-scalable/assets/12-egZidWBU.js @@ -0,0 +1 @@ +import{o as e,c as o,k as r,q as n,s as c,A as s,e as a}from"./modules/vue-CyVBQAnX.js";import{I as _}from"./slidev/default-BXwXGoqN.js";import{_ as i,ah as t}from"./index-DK5cJv9W.js";import{p as m,u as p,f as l}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const d="/sa2024/06-scalable/assets/05-lb347-CHBPpRWG.png",f=a("h1",null,"L3/L4/L7 Load Balancing",-1),u=a("img",{src:d,class:"m-10 h-80"},null,-1),h={__name:"12",setup(x){return m(t),p(),(B,L)=>(e(),o(_,n(c(s(l)(s(t),11))),{default:r(()=>[f,u]),_:1},16))}},b=i(h,[["__file","/@slidev/slides/12.md"]]);export{b as default}; diff --git a/06-scalable/assets/13-lrBd95E6.js b/06-scalable/assets/13-lrBd95E6.js new file mode 100644 index 0000000..a53f0d1 --- /dev/null +++ b/06-scalable/assets/13-lrBd95E6.js @@ -0,0 +1 @@ +import{o as e,c as l,k as t,q as a,s as n,A as o,e as s}from"./modules/vue-CyVBQAnX.js";import{_}from"./05-lb-simple-DXb4WkCm.js";import{I as i}from"./slidev/two-cols-BSLkXsP-.js";import{_ as c,ai as r}from"./index-DK5cJv9W.js";import{p as m,u as p,f as u}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const d="/sa2024/06-scalable/assets/05-lb-l3-DBZvBmdt.png",f=s("h1",null,"L3 负载均衡",-1),h=s("br",null,null,-1),b=s("img",{src:_,class:"m-10 h-20"},null,-1),g=s("br",null,null,-1),x=s("ul",null,[s("li",null,"优点:可控"),s("li",null,"缺点:网络部署相对复杂")],-1),B=s("p",null,[s("br"),s("br"),s("br")],-1),v=s("img",{src:d,class:"m-20 h-60"},null,-1),P={__name:"13",setup(k){return m(r),p(),(C,I)=>(e(),l(i,a(n(o(u)(o(r),12))),{right:t(L=>[B,v]),default:t(()=>[f,h,b,g,x]),_:1},16))}},D=c(P,[["__file","/@slidev/slides/13.md"]]);export{D as default}; diff --git a/06-scalable/assets/14-CJWLMC2k.js b/06-scalable/assets/14-CJWLMC2k.js new file mode 100644 index 0000000..c421765 --- /dev/null +++ b/06-scalable/assets/14-CJWLMC2k.js @@ -0,0 +1 @@ +import{o as e,c as r,k as a,q as l,s as _,A as t,e as s}from"./modules/vue-CyVBQAnX.js";import{_ as n}from"./05-lb-simple-DXb4WkCm.js";import{I as c}from"./slidev/default-BXwXGoqN.js";import{_ as i,aj as o}from"./index-DK5cJv9W.js";import{p as m,u as p,f as u}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const d="/sa2024/06-scalable/assets/05-lb-l4-DfzXSXlQ.png",f=s("h1",null,"L4负载均衡",-1),h=s("br",null,null,-1),x=s("img",{src:n,class:"m-5 h-30"},null,-1),b=s("br",null,null,-1),g=s("img",{src:d,class:"m-5 h-30"},null,-1),k={__name:"14",setup(v){return m(o),p(),(B,P)=>(e(),r(c,l(_(t(u)(t(o),13))),{default:a(()=>[f,h,x,b,g]),_:1},16))}},X=i(k,[["__file","/@slidev/slides/14.md"]]);export{X as default}; diff --git a/06-scalable/assets/15-BGsIFWUc.js b/06-scalable/assets/15-BGsIFWUc.js new file mode 100644 index 0000000..fb4cf4b --- /dev/null +++ b/06-scalable/assets/15-BGsIFWUc.js @@ -0,0 +1 @@ +import{o as e,c as a,k as o,q as l,s as n,A as r,e as t}from"./modules/vue-CyVBQAnX.js";import{I as p}from"./slidev/two-cols-BSLkXsP-.js";import{_,ak as s}from"./index-DK5cJv9W.js";import{p as i,u as c,f as m}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const u="/sa2024/06-scalable/assets/05-haproxy-YJHp5RCO.png",d=t("h1",null,"HAProxy",-1),h=t("p",null,[t("small",null,"HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。 GitHub、Bitbucket、Stack Overflow、Reddit、Tumblr、Twitter和 Tuenti在内的知名网站,及亚马逊网络服务系统都使用了HAProxy。")],-1),f=t("p",null,[t("a",{href:"http://www.haproxy.org/",target:"_blank",rel:"noopener"},"http://www.haproxy.org/")],-1),x=t("p",null,[t("br"),t("br"),t("br")],-1),w=t("img",{src:u,class:"m-5 h-50"},null,-1),P={__name:"15",setup(b){return i(s),c(),(g,k)=>(e(),a(p,l(n(r(m)(r(s),14))),{right:o(y=>[x,w]),default:o(()=>[d,h,f]),_:1},16))}},B=_(P,[["__file","/@slidev/slides/15.md"]]);export{B as default}; diff --git a/06-scalable/assets/17-CSJsMqxi.js b/06-scalable/assets/17-CSJsMqxi.js new file mode 100644 index 0000000..a826cd1 --- /dev/null +++ b/06-scalable/assets/17-CSJsMqxi.js @@ -0,0 +1,9 @@ +import{o as l,c as t,k as i,q as o,s as r,A as a,e as s,a6 as e}from"./modules/vue-CyVBQAnX.js";import{I as p}from"./slidev/default-BXwXGoqN.js";import{_ as c,am as n}from"./index-DK5cJv9W.js";import{p as d,u as _,f as u}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const m="/sa2024/06-scalable/assets/05-exp-haproxy-CO-RA8Ix.png",f=s("h1",null,"L4 实验: HAProxy(TCP mode)",-1),h=s("img",{src:m,class:"m-5 h-30"},null,-1),b=s("p",null,[s("a",{href:"https://www.bilibili.com/video/BV1X7411S7yM?p=3",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV1X7411S7yM?p=3"),e(" (23:00)")],-1),k=s("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[s("code",{class:"language-"},[s("span",{class:"line"},[s("span",null,"defaults")]),e(` +`),s("span",{class:"line"},[s("span",null," mode tcp")]),e(` +`),s("span",{class:"line"},[s("span",null,"frontend lb-app-pi")]),e(` +`),s("span",{class:"line"},[s("span",null," bind *:8080")]),e(` +`),s("span",{class:"line"},[s("span",null," default_backend servers")]),e(` +`),s("span",{class:"line"},[s("span",null,"backend servers")]),e(` +`),s("span",{class:"line"},[s("span",null," balance roundrobin")]),e(` +`),s("span",{class:"line"},[s("span",null," server server1 localhost:8081")]),e(` +`),s("span",{class:"line"},[s("span",null," ...")])])],-1),v={__name:"17",setup(g){return d(n),_(),(x,w)=>(l(),t(p,o(r(a(u)(a(n),16))),{default:i(()=>[f,h,b,k]),_:1},16))}},A=c(v,[["__file","/@slidev/slides/17.md"]]);export{A as default}; diff --git a/06-scalable/assets/18-JUOzULrG.js b/06-scalable/assets/18-JUOzULrG.js new file mode 100644 index 0000000..82b2a55 --- /dev/null +++ b/06-scalable/assets/18-JUOzULrG.js @@ -0,0 +1 @@ +import{o as a,c as o,k as r,q as c,s as n,A as s,e}from"./modules/vue-CyVBQAnX.js";import{I as i}from"./slidev/default-BXwXGoqN.js";import{_,an as t}from"./index-DK5cJv9W.js";import{p as m,u as p,f as l}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const f="/sa2024/06-scalable/assets/05-cache-EhhiBFw-.png",d=e("h1",null,"Cache missing",-1),u=e("img",{src:f,class:"m-20 h-80"},null,-1),h={__name:"18",setup(x){return m(t),p(),(g,B)=>(a(),o(i,c(n(s(l)(s(t),17))),{default:r(()=>[d,u]),_:1},16))}},F=_(h,[["__file","/@slidev/slides/18.md"]]);export{F as default}; diff --git a/06-scalable/assets/19-BTy0XfgG.js b/06-scalable/assets/19-BTy0XfgG.js new file mode 100644 index 0000000..02ea9b1 --- /dev/null +++ b/06-scalable/assets/19-BTy0XfgG.js @@ -0,0 +1 @@ +import{o as a,c as o,k as r,q as c,s as n,A as s,e as t}from"./modules/vue-CyVBQAnX.js";import{I as _}from"./slidev/default-BXwXGoqN.js";import{_ as i,ao as e}from"./index-DK5cJv9W.js";import{p as m,u as p,f as l}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const f="/sa2024/06-scalable/assets/05-cache-server-Cin3ILZT.png",d=t("h1",null,"Cache Server",-1),u=t("img",{src:f,class:"m-20 h-80"},null,-1),h={__name:"19",setup(v){return m(e),p(),(x,C)=>(a(),o(_,c(n(s(l)(s(e),18))),{default:r(()=>[d,u]),_:1},16))}},L=i(h,[["__file","/@slidev/slides/19.md"]]);export{L as default}; diff --git a/06-scalable/assets/2-DydI_rMs.js b/06-scalable/assets/2-DydI_rMs.js new file mode 100644 index 0000000..1c95c3c --- /dev/null +++ b/06-scalable/assets/2-DydI_rMs.js @@ -0,0 +1 @@ +import{o as a,c as o,k as r,q as _,s as c,A as s,e}from"./modules/vue-CyVBQAnX.js";import{I as n}from"./slidev/default-BXwXGoqN.js";import{_ as m,a7 as t}from"./index-DK5cJv9W.js";import{p as i,u as l,f as p}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const f="/sa2024/06-scalable/assets/05-challenge-DwJJv_v8.png",d=e("h1",null,"CS/BS架构挑战",-1),u=e("img",{src:f,class:"m-10 h-80"},null,-1),h={__name:"2",setup(v){return i(t),l(),(x,g)=>(a(),o(n,_(c(s(p)(s(t),1))),{default:r(()=>[d,u]),_:1},16))}},w=m(h,[["__file","/@slidev/slides/2.md"]]);export{w as default}; diff --git a/06-scalable/assets/20-DGooopiy.js b/06-scalable/assets/20-DGooopiy.js new file mode 100644 index 0000000..f6f3619 --- /dev/null +++ b/06-scalable/assets/20-DGooopiy.js @@ -0,0 +1 @@ +import{o,c as r,k as a,q as n,s as c,A as e,e as t}from"./modules/vue-CyVBQAnX.js";import{I as i}from"./slidev/default-BXwXGoqN.js";import{_ as p,ap as s}from"./index-DK5cJv9W.js";import{p as l,u as _,f as m}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const f="/sa2024/06-scalable/assets/05-spring-cache-Cet2aHIV.png",u=t("h1",null,"Spring Caching",-1),h=t("img",{src:f,class:"m-5 h-80"},null,-1),d=t("p",null,[t("a",{href:"https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-features.html#boot-features-caching",target:"_blank",rel:"noopener"},"https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-features.html#boot-features-caching")],-1),g={__name:"20",setup(b){return l(s),_(),(x,k)=>(o(),r(i,n(c(e(m)(e(s),19))),{default:a(()=>[u,h,d]),_:1},16))}},S=p(g,[["__file","/@slidev/slides/20.md"]]);export{S as default}; diff --git a/06-scalable/assets/21-C9mQhzZV.js b/06-scalable/assets/21-C9mQhzZV.js new file mode 100644 index 0000000..f59fc49 --- /dev/null +++ b/06-scalable/assets/21-C9mQhzZV.js @@ -0,0 +1,11 @@ +import{_ as h}from"./slidev/CodeBlockWrapper-1GTzWYD_.js";import{o as n,c as k,k as a,l as r,m as p,q as o,s as c,A as t,e as s,a6 as i}from"./modules/vue-CyVBQAnX.js";import{I as d}from"./slidev/two-cols-BSLkXsP-.js";import{_ as g,aq as e}from"./index-DK5cJv9W.js";import{p as _,u as m,f as y}from"./slidev/context-DK7fZVI-.js";import"./modules/unplugin-icons-BeR8N7Ub.js";import"./modules/shiki-B34Zut0U.js";const A="/sa2024/06-scalable/assets/05-caching-846YJ8cZ.png",D=s("h1",null,"Caching",-1),f=s("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[s("code",{class:"language-java"},[s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"import"),s("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," org"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),s("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"springframework"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),s("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"cache"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),s("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"annotation"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),s("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Cacheable"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},";")]),i(` +`),s("span",{class:"line"}),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," @"),s("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"Cacheable"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),s("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"“pi"),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},")")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," public double calculatePi(double n) {")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," double pi = 0;")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," for (int i = 1; i < n; i++) {")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," pi += Math.pow(-1, i + 1) / (2 * i - 1);")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," }")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," return 4 * pi;")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," }")])])],-1),C=s("p",null,[s("br"),s("br"),s("br"),s("img",{src:A,class:"m-5 h-50"})],-1),u={__name:"21",setup(B){return _(e),m(),(E,b)=>{const l=h;return n(),k(d,o(c(t(y)(t(e),20))),{right:a(v=>[C]),default:a(()=>[D,r(l,p({},{ranges:[]}),{default:a(()=>[f]),_:1},16)]),_:1},16)}}},F=g(u,[["__file","/@slidev/slides/21.md"]]);export{F as default}; diff --git a/06-scalable/assets/22-DVLuSD-e.js b/06-scalable/assets/22-DVLuSD-e.js new file mode 100644 index 0000000..c4c1ad1 --- /dev/null +++ b/06-scalable/assets/22-DVLuSD-e.js @@ -0,0 +1 @@ +import{o,c as r,k as a,q as i,s as n,A as t,e as s}from"./modules/vue-CyVBQAnX.js";import{I as c}from"./slidev/default-BXwXGoqN.js";import{_ as l,ar as e}from"./index-DK5cJv9W.js";import{p as _,u as p,f as d}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const m="/sa2024/06-scalable/assets/05-cache-redis-BZh8cmdK.png",h=s("h1",null,"Spring Boot with Redis Cache",-1),u=s("br",null,null,-1),f=s("img",{src:m,class:"m-5 h-70"},null,-1),g=s("p",null,[s("a",{href:"https://www.bilibili.com/video/BV17g4y1871A?p=1",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV17g4y1871A?p=1")],-1),w=s("div",{style:{"text-align":"right"}},"sa-spring/spring-cache-redis ",-1),b={__name:"22",setup(B){return _(e),p(),(v,x)=>(o(),r(c,i(n(t(d)(t(e),21))),{default:a(()=>[h,u,f,g,w]),_:1},16))}},V=l(b,[["__file","/@slidev/slides/22.md"]]);export{V as default}; diff --git a/06-scalable/assets/23-d7924F0U.js b/06-scalable/assets/23-d7924F0U.js new file mode 100644 index 0000000..e7951e4 --- /dev/null +++ b/06-scalable/assets/23-d7924F0U.js @@ -0,0 +1 @@ +import{o as a,c as o,k as r,q as l,s as n,A as s,e as t,a6 as i}from"./modules/vue-CyVBQAnX.js";import{I as c}from"./slidev/default-BXwXGoqN.js";import{_,as as e}from"./index-DK5cJv9W.js";import{p as u,u as m,f as p}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const d="/sa2024/06-scalable/assets/05-cache-cluster-Ditv28-K.png",f=t("h1",null,"Cache Cluster",-1),h=t("ul",null,[t("li",null,"使用多个存储节点"),t("li",null,[i("数据分区/Data Partition? "),t("ul",null,[t("li",null,"哈希Hash Partitioning"),t("li",null,"一致性哈希Consistent Hashing")])])],-1),x=t("img",{src:d,class:"m-5 h-70"},null,-1),g={__name:"23",setup(C){return u(e),m(),(P,v)=>(a(),o(c,l(n(s(p)(s(e),22))),{default:r(()=>[f,h,x]),_:1},16))}},N=_(g,[["__file","/@slidev/slides/23.md"]]);export{N as default}; diff --git a/06-scalable/assets/26-CNlZZJ6y.js b/06-scalable/assets/26-CNlZZJ6y.js new file mode 100644 index 0000000..d582e16 --- /dev/null +++ b/06-scalable/assets/26-CNlZZJ6y.js @@ -0,0 +1,8 @@ +import{o as t,c as l,k as h,q as e,s as n,A as a,e as s,a6 as i}from"./modules/vue-CyVBQAnX.js";import{I as r}from"./slidev/two-cols-BSLkXsP-.js";import{_ as p,aC as k}from"./index-DK5cJv9W.js";import{p as d,u as g,f as y}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const o="/sa2024/06-scalable/assets/05-consistent-hashing-DuTq1ftT.png",A=s("h1",null,"Consistent Hashing",-1),c=s("p",null,"将Server标识与数据键映射到同一个值域空间",-1),C=s("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[s("code",{class:"language-python"},[s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"server-1"),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),s("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 3")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"server-2"),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),s("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 7")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"server-3"),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),s("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 11")]),i(` +`),s("span",{class:"line"}),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"testkey-1"),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),s("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 3")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"testkey-2"),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),s("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 4")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"testkey-3"),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),s("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 8")]),i(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"testkey-4"),s("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),s("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),s("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 12")])])],-1),B=s("p",null,[s("br"),s("br"),s("img",{src:o,class:"m-5 h-70"})],-1),_={__name:"26",setup(D){return d(k),g(),(f,m)=>(t(),l(r,e(n(a(y)(a(k),25))),{right:h(u=>[B]),default:h(()=>[A,c,C]),_:1},16))}},T=p(_,[["__file","/@slidev/slides/26.md"]]);export{T as default}; diff --git a/06-scalable/assets/28-57xUCQiz.js b/06-scalable/assets/28-57xUCQiz.js new file mode 100644 index 0000000..94f030e --- /dev/null +++ b/06-scalable/assets/28-57xUCQiz.js @@ -0,0 +1,2 @@ +import{_ as r}from"./slidev/CodeBlockWrapper-1GTzWYD_.js";import{o,c as l,k as t,l as n,m as c,q as d,s as h,A as e,e as s,a6 as _}from"./modules/vue-CyVBQAnX.js";import{I as p}from"./slidev/two-cols-BSLkXsP-.js";import{_ as k,aE as i}from"./index-DK5cJv9W.js";import{p as m,u,f as g}from"./slidev/context-DK7fZVI-.js";import"./modules/unplugin-icons-BeR8N7Ub.js";import"./modules/shiki-B34Zut0U.js";const f="/sa2024/06-scalable/assets/05-redis-create-auto-CF7_nNKX.png",y="/sa2024/06-scalable/assets/05-redis-download-BaUV66gY.png",A=s("h1",null,"Redis Cluster",-1),B=s("br",null,null,-1),C=s("p",null,"自动创建",-1),b=s("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[s("code",{class:"language-sh"},[s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"edis-5.0.8/utils/create-cluster>"),s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," ./create-cluster"),s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," start")]),_(` +`),s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"redis-5.0.8/utils/create-cluster>"),s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," ./create-cluster"),s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," create")])])],-1),v=s("img",{src:f,class:"m-5 h-40"},null,-1),x=s("br",null,null,-1),P=s("img",{src:y,class:"m-5 h-80"},null,-1),D=s("div",{style:{"text-align":"right"}},"https://redis.io/download#installation",-1),N={__name:"28",setup(V){return m(i),u(),(w,F)=>{const a=r;return o(),l(p,d(h(e(g)(e(i),27))),{right:t(I=>[x,P,D]),default:t(()=>[A,B,C,n(a,c({},{ranges:[]}),{default:t(()=>[b]),_:1},16),v]),_:1},16)}}},L=k(N,[["__file","/@slidev/slides/28.md"]]);export{L as default}; diff --git a/06-scalable/assets/29-C3Inqgya.js b/06-scalable/assets/29-C3Inqgya.js new file mode 100644 index 0000000..71cdcb5 --- /dev/null +++ b/06-scalable/assets/29-C3Inqgya.js @@ -0,0 +1 @@ +import{_ as o}from"./slidev/CodeBlockWrapper-1GTzWYD_.js";import{o as r,c as l,k as e,a6 as c,l as n,m as _,q as d,s as p,A as t,e as s}from"./modules/vue-CyVBQAnX.js";import{I as h}from"./slidev/two-cols-BSLkXsP-.js";import{_ as m,aF as a}from"./index-DK5cJv9W.js";import{p as f,u,f as g}from"./slidev/context-DK7fZVI-.js";import"./modules/unplugin-icons-BeR8N7Ub.js";import"./modules/shiki-B34Zut0U.js";const k="/sa2024/06-scalable/assets/05-redis-create-conf-ltYIXHfe.png",v="/sa2024/06-scalable/assets/05-redis-cluster-manual-xKehjmN2.png",x=s("h1",null,"Redis Cluster",-1),b=s("br",null,null,-1),y=s("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[s("code",{class:"language-bash"},[s("span",{class:"line"},[s("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"redis-server"),s("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," ./redis.conf")])])],-1),B=s("img",{src:k,class:"m-5 h-40"},null,-1),C=s("img",{src:v,class:"m-5 h-40"},null,-1),P=s("div",{style:{"text-align":"right"}},"https://redis.io/topics/cluster-tutorial",-1),A={__name:"29",setup(N){return f(a),u(),(I,V)=>{const i=o;return r(),l(h,d(p(t(g)(t(a),28))),{right:e(j=>[C,P]),default:e(()=>[x,b,c(" 手动创建 "),n(i,_({},{ranges:[]}),{default:e(()=>[y]),_:1},16),B]),_:1},16)}}},H=m(A,[["__file","/@slidev/slides/29.md"]]);export{H as default}; diff --git a/06-scalable/assets/3-2vUkJ0jS.js b/06-scalable/assets/3-2vUkJ0jS.js new file mode 100644 index 0000000..df99c87 --- /dev/null +++ b/06-scalable/assets/3-2vUkJ0jS.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as i,s as n,A as s,e as t,a6 as p}from"./modules/vue-CyVBQAnX.js";import{I as l}from"./slidev/default-BXwXGoqN.js";import{_,a8 as e}from"./index-DK5cJv9W.js";import{p as c,u as m,f as d}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const u="/sa2024/06-scalable/assets/05-pi-PZGyONFv.png",f=t("h1",null,"实验",-1),h=t("br",null,null,-1),b=t("p",null,"写个计算密集型(Compute-intensive)服务 sa-spring/app-pi",-1),v=t("img",{src:u,class:"m-20 h-40"},null,-1),w=t("p",null,[t("a",{href:"https://www.bilibili.com/video/BV1X7411S7yM?p=1",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV1X7411S7yM?p=1"),p(" (3:15)")],-1),x={__name:"3",setup(g){return c(e),m(),(B,k)=>(o(),a(l,i(n(s(d)(s(e),2))),{default:r(()=>[f,h,b,v,w]),_:1},16))}},S=_(x,[["__file","/@slidev/slides/3.md"]]);export{S as default}; diff --git a/06-scalable/assets/30-C-1029Hr.js b/06-scalable/assets/30-C-1029Hr.js new file mode 100644 index 0000000..b022e44 --- /dev/null +++ b/06-scalable/assets/30-C-1029Hr.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as n,s as _,A as t,e as s}from"./modules/vue-CyVBQAnX.js";import{I as l}from"./slidev/default-BXwXGoqN.js";import{_ as c,aG as e}from"./index-DK5cJv9W.js";import{p as i,u as m,f as p}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const d="/sa2024/06-scalable/assets/05-redis-hash-slots-DQSPPdvj.png",u=s("h1",null,"Redis Slots",-1),f=s("br",null,null,-1),h=s("img",{src:d,class:"m-5 h-80"},null,-1),x={__name:"30",setup(P){return i(e),m(),(v,g)=>(o(),a(l,n(_(t(p)(t(e),29))),{default:r(()=>[u,f,h]),_:1},16))}},C=c(x,[["__file","/@slidev/slides/30.md"]]);export{C as default}; diff --git a/06-scalable/assets/32-B1H73VS-.js b/06-scalable/assets/32-B1H73VS-.js new file mode 100644 index 0000000..209fba7 --- /dev/null +++ b/06-scalable/assets/32-B1H73VS-.js @@ -0,0 +1 @@ +import{o as a,c as n,k as o,a6 as e,q as c,s as i,A as r,e as s}from"./modules/vue-CyVBQAnX.js";import{I as p}from"./slidev/two-cols-BSLkXsP-.js";import{_ as l,aI as t}from"./index-DK5cJv9W.js";import{p as _,u as m,f}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const d="/sa2024/06-scalable/assets/05-session-Di7buRZv.png",u=s("h1",null,"Cookies and Sessions",-1),h=s("br",null,null,-1),g=s("p",null,[e("相关概念:Spring Bean Scope ("),s("a",{href:"https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/core.html#beans-factory-scopes",target:"_blank",rel:"noopener"},"https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/core.html#beans-factory-scopes"),e(")")],-1),k=s("p",null,[s("br"),s("br"),s("br"),s("img",{src:d,class:"m-5 h-70"})],-1),b={__name:"32",setup(x){return _(t),m(),(w,P)=>(a(),n(p,c(i(r(f)(r(t),31))),{right:o(v=>[k]),default:o(()=>[u,h,e(" 会话(session)是一种持久网络协议,在用户(或用户代理)端和服务器端之间创建关联,从而起到交换数据包的作用机制,session在网络协议中是非常重要的部分。在不包含会话层或者是无法长时间驻留会话层的传输协议中,会话的维持需要依靠在传输数据中的高级别程序。HTTP cookie就会被用来包含一些相关的信息,例如session ID,参数和权限信息等。 "),g]),_:1},16))}},C=l(b,[["__file","/@slidev/slides/32.md"]]);export{C as default}; diff --git a/06-scalable/assets/33-CcxmdYiR.js b/06-scalable/assets/33-CcxmdYiR.js new file mode 100644 index 0000000..fb2cfa8 --- /dev/null +++ b/06-scalable/assets/33-CcxmdYiR.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as n,s as _,A as t,e as s}from"./modules/vue-CyVBQAnX.js";import{I as c}from"./slidev/default-BXwXGoqN.js";import{_ as i,aJ as e}from"./index-DK5cJv9W.js";import{p as l,u as m,f as p}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const u="/sa2024/06-scalable/assets/05-session-cluster-DYYKMZqY.png",d=s("h1",null,"Session",-1),f=s("br",null,null,-1),h=s("img",{src:u,class:"m-5 h-80"},null,-1),x={__name:"33",setup(g){return l(e),m(),(k,v)=>(o(),a(c,n(_(t(p)(t(e),32))),{default:r(()=>[d,f,h]),_:1},16))}},C=i(x,[["__file","/@slidev/slides/33.md"]]);export{C as default}; diff --git a/06-scalable/assets/34-BLL7MgtW.js b/06-scalable/assets/34-BLL7MgtW.js new file mode 100644 index 0000000..22a72a5 --- /dev/null +++ b/06-scalable/assets/34-BLL7MgtW.js @@ -0,0 +1 @@ +import{o,c as a,k as n,q as r,s as i,A as t,e as s}from"./modules/vue-CyVBQAnX.js";import{I as c}from"./slidev/default-BXwXGoqN.js";import{_ as l,aK as e}from"./index-DK5cJv9W.js";import{p,u as _,f as m}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const d="/sa2024/06-scalable/assets/05-session-stickiness-C7HR9ZNC.png",f=s("h1",null,"Session Stickiness",-1),u=s("br",null,null,-1),h=s("img",{src:d,class:"m-5 h-80"},null,-1),w=s("p",null,[s("a",{href:"https://www.haproxy.com/blog/load-balancing-affinity-persistence-sticky-sessions-what-you-need-to-know/",target:"_blank",rel:"noopener"},"https://www.haproxy.com/blog/load-balancing-affinity-persistence-sticky-sessions-what-you-need-to-know/")],-1),k={__name:"34",setup(y){return p(e),_(),(g,b)=>(o(),a(c,r(i(t(m)(t(e),33))),{default:n(()=>[f,u,h,w]),_:1},16))}},S=l(k,[["__file","/@slidev/slides/34.md"]]);export{S as default}; diff --git a/06-scalable/assets/35-xvmXt75H.js b/06-scalable/assets/35-xvmXt75H.js new file mode 100644 index 0000000..c88cf4b --- /dev/null +++ b/06-scalable/assets/35-xvmXt75H.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as n,s as c,A as t,e as s}from"./modules/vue-CyVBQAnX.js";import{I as _}from"./slidev/default-BXwXGoqN.js";import{_ as l,aL as e}from"./index-DK5cJv9W.js";import{p as i,u as m,f as p}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const u="/sa2024/06-scalable/assets/05-tomcat-cluster-A2_PCDkn.png",d=s("h1",null,"Tomcat Cluster",-1),f=s("br",null,null,-1),h=s("img",{src:u,class:"m-5 h-80"},null,-1),x=s("p",null,"Session Replication /Web Farming",-1),g={__name:"35",setup(k){return i(e),m(),(C,P)=>(o(),a(_,n(c(t(p)(t(e),34))),{default:r(()=>[d,f,h,x]),_:1},16))}},I=l(g,[["__file","/@slidev/slides/35.md"]]);export{I as default}; diff --git a/06-scalable/assets/36-BHCG1g7O.js b/06-scalable/assets/36-BHCG1g7O.js new file mode 100644 index 0000000..caefc5c --- /dev/null +++ b/06-scalable/assets/36-BHCG1g7O.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as i,s as n,A as t,e as s,a6 as l}from"./modules/vue-CyVBQAnX.js";import{I as c}from"./slidev/default-BXwXGoqN.js";import{_,aM as e}from"./index-DK5cJv9W.js";import{p,u as d,f as m}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const u="/sa2024/06-scalable/assets/05-session-jdbc-idxYzz6G.png",f=s("h1",null,"Spring Session with JDBC",-1),h=s("br",null,null,-1),g=s("img",{src:u,class:"m-5 h-80"},null,-1),b=s("p",null,[s("a",{href:"https://www.bilibili.com/video/BV17g4y1871A?p=3",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV17g4y1871A?p=3"),l(" 6:40")],-1),w=s("div",{style:{"text-align":"right"}},"sa-spring/spring-session-jdbc",-1),x={__name:"36",setup(v){return p(e),d(),(B,k)=>(o(),a(c,i(n(t(m)(t(e),35))),{default:r(()=>[f,h,g,b,w]),_:1},16))}},C=_(x,[["__file","/@slidev/slides/36.md"]]);export{C as default}; diff --git a/06-scalable/assets/37-QUh0Pi45.js b/06-scalable/assets/37-QUh0Pi45.js new file mode 100644 index 0000000..d4581ee --- /dev/null +++ b/06-scalable/assets/37-QUh0Pi45.js @@ -0,0 +1 @@ +import{o,c as r,k as i,q as a,s as n,A as e,e as s,a6 as l}from"./modules/vue-CyVBQAnX.js";import{I as _}from"./slidev/default-BXwXGoqN.js";import{_ as p,aN as t}from"./index-DK5cJv9W.js";import{p as c,u as d,f as m}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const u="/sa2024/06-scalable/assets/05-session-redis-DYMGsWTE.png",f=s("h1",null,"Spring Session with Redis",-1),h=s("br",null,null,-1),g=s("img",{src:u,class:"m-5 h-80"},null,-1),w=s("p",null,[s("a",{href:"https://www.bilibili.com/video/BV17g4y1871A?p=4",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV17g4y1871A?p=4"),l(" (0:10)")],-1),b=s("div",{style:{"text-align":"right"}},"sa-spring/spring-session-redis",-1),x={__name:"37",setup(v){return c(t),d(),(B,k)=>(o(),r(_,a(n(e(m)(e(t),36))),{default:i(()=>[f,h,g,w,b]),_:1},16))}},S=p(x,[["__file","/@slidev/slides/37.md"]]);export{S as default}; diff --git a/06-scalable/assets/4-CLwCwhTe.js b/06-scalable/assets/4-CLwCwhTe.js new file mode 100644 index 0000000..7050b86 --- /dev/null +++ b/06-scalable/assets/4-CLwCwhTe.js @@ -0,0 +1 @@ +import{o as i,c as a,k as s,q as n,s as r,A as e,e as t}from"./modules/vue-CyVBQAnX.js";import{I as l}from"./slidev/two-cols-BSLkXsP-.js";import{_,a9 as o}from"./index-DK5cJv9W.js";import{p as c,u as d,f as p}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const m="/sa2024/06-scalable/assets/05-loadtesting-COkcLUc3.png",u=t("h1",null,"压力测试",-1),h=t("br",null,null,-1),f=t("blockquote",null,[t("p",null,"Load testing is the process of putting demand on a system and measuring its response.")],-1),g=t("br",null,null,-1),k=t("div",{style:{"text-align":"right"}},"- https://en.wikipedia.org/wiki/Load_testing",-1),x=t("img",{src:m,class:"m-20 h-40"},null,-1),b=t("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1X7411S7yM?p=1 12:50",-1),v={__name:"4",setup(w){return c(o),d(),(y,B)=>(i(),a(l,n(r(e(p)(e(o),3))),{right:s(L=>[x,b]),default:s(()=>[u,h,f,g,k]),_:1},16))}},V=_(v,[["__file","/@slidev/slides/4.md"]]);export{V as default}; diff --git a/06-scalable/assets/40-DljBf0a5.js b/06-scalable/assets/40-DljBf0a5.js new file mode 100644 index 0000000..3847523 --- /dev/null +++ b/06-scalable/assets/40-DljBf0a5.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as n,s as _,A as s,e}from"./modules/vue-CyVBQAnX.js";import{I as c}from"./slidev/default-BXwXGoqN.js";import{_ as i,aQ as t}from"./index-DK5cJv9W.js";import{p as m,u as p,f as l}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const f="/sa2024/06-scalable/assets/06-imageHosting2-CBfkgHv4.png",d=e("h3",null,"基本点1: 服务拆分",-1),u=e("img",{src:f,class:"m-10 h-70"},null,-1),g={__name:"40",setup(h){return m(t),p(),(x,k)=>(o(),a(c,n(_(s(l)(s(t),39))),{default:r(()=>[d,u]),_:1},16))}},I=i(g,[["__file","/@slidev/slides/40.md"]]);export{I as default}; diff --git a/06-scalable/assets/41-zIPptmwU.js b/06-scalable/assets/41-zIPptmwU.js new file mode 100644 index 0000000..5d7becc --- /dev/null +++ b/06-scalable/assets/41-zIPptmwU.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as n,s as _,A as s,e}from"./modules/vue-CyVBQAnX.js";import{I as c}from"./slidev/default-BXwXGoqN.js";import{_ as i,aR as t}from"./index-DK5cJv9W.js";import{p as m,u as p,f as l}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const f="/sa2024/06-scalable/assets/06-imageHosting3-BLBYQWVx.png",d=e("h3",null,"基本点2: 冗余",-1),u=e("img",{src:f,class:"m-10 h-70"},null,-1),h={__name:"41",setup(x){return m(t),p(),(g,B)=>(o(),a(c,n(_(s(l)(s(t),40))),{default:r(()=>[d,u]),_:1},16))}},L=i(h,[["__file","/@slidev/slides/41.md"]]);export{L as default}; diff --git a/06-scalable/assets/42-C2ooxU8o.js b/06-scalable/assets/42-C2ooxU8o.js new file mode 100644 index 0000000..de8f093 --- /dev/null +++ b/06-scalable/assets/42-C2ooxU8o.js @@ -0,0 +1 @@ +import{o,c as a,k as r,q as n,s as _,A as s,e}from"./modules/vue-CyVBQAnX.js";import{I as c}from"./slidev/default-BXwXGoqN.js";import{_ as i,aS as t}from"./index-DK5cJv9W.js";import{p as m,u as p,f as l}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const f="/sa2024/06-scalable/assets/06-imageHosting4-Csq5ZWZQ.png",d=e("h3",null,"基本点3: 分区",-1),u=e("img",{src:f,class:"m-10 h-70"},null,-1),h={__name:"42",setup(g){return m(t),p(),(x,k)=>(o(),a(c,n(_(s(l)(s(t),41))),{default:r(()=>[d,u]),_:1},16))}},I=i(h,[["__file","/@slidev/slides/42.md"]]);export{I as default}; diff --git a/06-scalable/assets/43-D6932mAT.js b/06-scalable/assets/43-D6932mAT.js new file mode 100644 index 0000000..82e2c18 --- /dev/null +++ b/06-scalable/assets/43-D6932mAT.js @@ -0,0 +1 @@ +import{o as a,c as o,k as r,q as c,s as n,A as t,e as s}from"./modules/vue-CyVBQAnX.js";import{I as _}from"./slidev/default-BXwXGoqN.js";import{_ as i,aT as e}from"./index-DK5cJv9W.js";import{p as l,u as m,f as p}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const d="/sa2024/06-scalable/assets/06-simpleWeb-CiPhs3sT.png",u="/sa2024/06-scalable/assets/06-overSimpleWeb-DbREwptZ.png",f="/sa2024/06-scalable/assets/06-accessingData-wVYkcQtn.png",h=s("h3",null,"可扩展数据访问",-1),g=s("img",{src:d,class:"m-10 h-20"},null,-1),b=s("img",{src:u,class:"m-10 h-20"},null,-1),x=s("img",{src:f,class:"m-10 h-40"},null,-1),k={__name:"43",setup(v){return l(e),m(),(P,w)=>(a(),o(_,c(n(t(p)(t(e),42))),{default:r(()=>[h,g,b,x]),_:1},16))}},R=i(k,[["__file","/@slidev/slides/43.md"]]);export{R as default}; diff --git a/06-scalable/assets/44-qjnEE3BK.js b/06-scalable/assets/44-qjnEE3BK.js new file mode 100644 index 0000000..35d305b --- /dev/null +++ b/06-scalable/assets/44-qjnEE3BK.js @@ -0,0 +1 @@ +import{o as e,c as r,k as t,q as c,s as i,A as a,e as s}from"./modules/vue-CyVBQAnX.js";import{I as n}from"./slidev/two-cols-BSLkXsP-.js";import{_,aU as o}from"./index-DK5cJv9W.js";import{p as l,u as m,f as p}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const d="/sa2024/06-scalable/assets/06-globalCache2-BTWrTSpg.png",u="/sa2024/06-scalable/assets/06-distributedCaching-DS3b0ZuU.png",f=s("h3",null,"基本方法1:缓存",-1),h=s("img",{src:d,class:"m-10 h-70"},null,-1),g=s("img",{src:u,class:"m-10 h-100"},null,-1),b={__name:"44",setup(x){return l(o),m(),(B,C)=>(e(),r(n,c(i(a(p)(a(o),43))),{right:t(P=>[g]),default:t(()=>[f,h]),_:1},16))}},U=_(b,[["__file","/@slidev/slides/44.md"]]);export{U as default}; diff --git a/06-scalable/assets/45-B_myPjXK.js b/06-scalable/assets/45-B_myPjXK.js new file mode 100644 index 0000000..9c1da9b --- /dev/null +++ b/06-scalable/assets/45-B_myPjXK.js @@ -0,0 +1 @@ +import{o,c as r,k as t,q as c,s as l,A as e,e as s}from"./modules/vue-CyVBQAnX.js";import{I as p}from"./slidev/two-cols-BSLkXsP-.js";import{_,aV as a}from"./index-DK5cJv9W.js";import{p as n,u as i,f as m}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const u="/sa2024/06-scalable/assets/06-collapseRequests-D910Xq-I.png",d="/sa2024/06-scalable/assets/06-collapseRequestsSpatial-BIqOQLuk.png",f=s("h3",null,"基本方法2:代理",-1),b=s("img",{src:u,class:"m-5 h-40"},null,-1),h=s("p",null,[s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("img",{src:d,class:"m-5 h-40"})],-1),g={__name:"45",setup(q){return n(a),i(),(x,k)=>(o(),r(p,c(l(e(m)(e(a),44))),{right:t(B=>[h]),default:t(()=>[f,b]),_:1},16))}},L=_(g,[["__file","/@slidev/slides/45.md"]]);export{L as default}; diff --git a/06-scalable/assets/46-DAcuDYXN.js b/06-scalable/assets/46-DAcuDYXN.js new file mode 100644 index 0000000..1315c70 --- /dev/null +++ b/06-scalable/assets/46-DAcuDYXN.js @@ -0,0 +1 @@ +import{o,c as a,k as t,q as c,s as _,A as e,e as s}from"./modules/vue-CyVBQAnX.js";import{I as i}from"./slidev/two-cols-BSLkXsP-.js";import{_ as l,aW as r}from"./index-DK5cJv9W.js";import{p as n,u as p,f as m}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const d="/sa2024/06-scalable/assets/06-indexes-Dk76ubOp.jpeg",u="/sa2024/06-scalable/assets/06-multipleIndexes-BUg897Er.jpeg",f=s("h3",null,"基本方法3:索引",-1),b=s("img",{src:d,class:"m-5 h-70"},null,-1),h=s("p",null,[s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("img",{src:u,class:"m-5 h-60"})],-1),g={__name:"46",setup(x){return n(r),p(),(k,B)=>(o(),a(i,c(_(e(m)(e(r),45))),{right:t(P=>[h]),default:t(()=>[f,b]),_:1},16))}},w=l(g,[["__file","/@slidev/slides/46.md"]]);export{w as default}; diff --git a/06-scalable/assets/47-DC__hqtJ.js b/06-scalable/assets/47-DC__hqtJ.js new file mode 100644 index 0000000..ed3b00a --- /dev/null +++ b/06-scalable/assets/47-DC__hqtJ.js @@ -0,0 +1 @@ +import{o as e,c as o,k as t,q as c,s as l,A as a,e as s}from"./modules/vue-CyVBQAnX.js";import{I as n}from"./slidev/two-cols-BSLkXsP-.js";import{_,aX as r}from"./index-DK5cJv9W.js";import{p as i,u as m,f as p}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const u="/sa2024/06-scalable/assets/06-loadBalancer-Cku_ebct.png",d="/sa2024/06-scalable/assets/06-multipleLoadBalancers-CsF7ltIu.png",f=s("h3",null,"基本方法4:负载均衡",-1),b=s("img",{src:u,class:"m-5 h-40"},null,-1),h=s("p",null,[s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("img",{src:d,class:"m-5 h-40"})],-1),g={__name:"47",setup(x){return i(r),m(),(B,k)=>(e(),o(n,c(l(a(p)(a(r),46))),{right:t(C=>[h]),default:t(()=>[f,b]),_:1},16))}},j=_(g,[["__file","/@slidev/slides/47.md"]]);export{j as default}; diff --git a/06-scalable/assets/48-CWdSS91k.js b/06-scalable/assets/48-CWdSS91k.js new file mode 100644 index 0000000..738fbbc --- /dev/null +++ b/06-scalable/assets/48-CWdSS91k.js @@ -0,0 +1 @@ +import{o,c as a,k as t,q as c,s as n,A as r,e as s}from"./modules/vue-CyVBQAnX.js";import{I as _}from"./slidev/two-cols-BSLkXsP-.js";import{_ as m,aY as e}from"./index-DK5cJv9W.js";import{p,u as i,f as l}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const u="/sa2024/06-scalable/assets/06-synchronousRequest-D97pfZ_D.png",f="/sa2024/06-scalable/assets/06-queues-DFm5Z4zv.png",d=s("h3",null,"基本方法5:队列",-1),h=s("img",{src:u,class:"m-5 h-70"},null,-1),b=s("p",null,[s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("img",{src:f,class:"m-5 h-70"})],-1),g={__name:"48",setup(x){return p(e),i(),(v,P)=>(o(),a(_,c(n(r(l)(r(e),47))),{right:t(k=>[b]),default:t(()=>[d,h]),_:1},16))}},C=m(g,[["__file","/@slidev/slides/48.md"]]);export{C as default}; diff --git a/06-scalable/assets/5-CiMNZNfe.js b/06-scalable/assets/5-CiMNZNfe.js new file mode 100644 index 0000000..6694f10 --- /dev/null +++ b/06-scalable/assets/5-CiMNZNfe.js @@ -0,0 +1 @@ +import{o as a,c as o,k as r,q as n,s as c,A as t,e as s}from"./modules/vue-CyVBQAnX.js";import{I as _}from"./slidev/default-BXwXGoqN.js";import{_ as l,aa as e}from"./index-DK5cJv9W.js";import{p as i,u as m,f as p}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const d="/sa2024/06-scalable/assets/05-scale-up-CnmLtcYa.png",u=s("h1",null,"扩展",-1),f=s("br",null,null,-1),h=s("img",{src:d,class:"m-20 h-50"},null,-1),x=s("div",{style:{"text-align":"center"}},"垂直扩展(Scale Up)",-1),g={__name:"5",setup(v){return i(e),m(),(k,B)=>(a(),o(_,n(c(t(p)(t(e),4))),{default:r(()=>[u,f,h,x]),_:1},16))}},L=l(g,[["__file","/@slidev/slides/5.md"]]);export{L as default}; diff --git a/06-scalable/assets/6-DIeakLb1.js b/06-scalable/assets/6-DIeakLb1.js new file mode 100644 index 0000000..1141fc9 --- /dev/null +++ b/06-scalable/assets/6-DIeakLb1.js @@ -0,0 +1 @@ +import{o as e,c as a,k as r,q as n,s as i,A as s,e as t}from"./modules/vue-CyVBQAnX.js";import{I as c}from"./slidev/default-BXwXGoqN.js";import{_ as l,ab as o}from"./index-DK5cJv9W.js";import{p as _,u as m,f as p}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const d="/sa2024/06-scalable/assets/05-virtualization-CBnZdy9Q.png",u=t("h1",null,"用虚拟化技术模拟实现",-1),f=t("br",null,null,-1),h=t("img",{src:d,class:"m-20 h-50"},null,-1),x=t("div",{style:{"text-align":"right"}},"https://docs.docker.com/install/",-1),g={__name:"6",setup(v){return _(o),m(),(k,B)=>(e(),a(c,n(i(s(p)(s(o),5))),{default:r(()=>[u,f,h,x]),_:1},16))}},I=l(g,[["__file","/@slidev/slides/6.md"]]);export{I as default}; diff --git a/06-scalable/assets/7-D_meNjs0.js b/06-scalable/assets/7-D_meNjs0.js new file mode 100644 index 0000000..1e239fe --- /dev/null +++ b/06-scalable/assets/7-D_meNjs0.js @@ -0,0 +1,10 @@ +import{_ as l}from"./slidev/CodeBlockWrapper-1GTzWYD_.js";import{o as e,c as n,k as a,l as r,m as p,q as d,s as g,A as t,e as i,a6 as s}from"./modules/vue-CyVBQAnX.js";import{I as o}from"./slidev/two-cols-BSLkXsP-.js";import{_ as c,ac as h}from"./index-DK5cJv9W.js";import{p as y,u as m,f as _}from"./slidev/context-DK7fZVI-.js";import"./modules/unplugin-icons-BeR8N7Ub.js";import"./modules/shiki-B34Zut0U.js";const f="/sa2024/06-scalable/assets/05-jib-uHYfMv6U.png",u=i("h1",null,"Containerization",-1),D=i("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[i("code",{class:"language-xml"},[i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"plugin"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"groupId"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),i("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"com.google.cloud.tools"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"artifactId"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),i("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"jib-maven-plugin"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"version"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),i("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"2.1.0"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"configuration"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"to"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),i("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"image"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),i("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"app-pi"),i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),s(` +`),i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")])])],-1),E=i("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[i("code",{class:"language-bash"},[i("span",{class:"line"},[i("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"mvn"),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," compile"),i("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," jib:dockerBuild")])])],-1),b=i("p",null,[i("br"),i("br"),i("br"),i("br"),i("img",{src:f,class:"m-5 h-50"})],-1),F={__name:"7",setup(v){return y(h),m(),(A,B)=>{const k=l;return e(),n(o,d(g(t(_)(t(h),6))),{right:a(C=>[b]),default:a(()=>[u,D,r(k,p({},{ranges:[]}),{default:a(()=>[E]),_:1},16)]),_:1},16)}}},T=c(F,[["__file","/@slidev/slides/7.md"]]);export{T as default}; diff --git a/06-scalable/assets/8-Cz8BW-DY.js b/06-scalable/assets/8-Cz8BW-DY.js new file mode 100644 index 0000000..65bf297 --- /dev/null +++ b/06-scalable/assets/8-Cz8BW-DY.js @@ -0,0 +1 @@ +import{o as a,c as r,k as t,q as i,s as l,A as e,e as s,a6 as n}from"./modules/vue-CyVBQAnX.js";import{I as c}from"./slidev/two-cols-BSLkXsP-.js";import{_ as p,ad as o}from"./index-DK5cJv9W.js";import{p as _,u as m,f as d}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const u="/sa2024/06-scalable/assets/05-gatling-CZlERI1R.png",f="/sa2024/06-scalable/assets/05-exp-up-CGk2RS4v.png",h=s("h1",null,"垂直扩展实验",-1),g=s("img",{src:u,class:"m-20 h-50"},null,-1),b=s("img",{src:f,class:"m-5 h-80"},null,-1),w=s("p",null,[s("a",{href:"https://www.bilibili.com/video/BV1X7411S7yM?p=2",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV1X7411S7yM?p=2"),n(" (20:40)")],-1),x={__name:"8",setup(v){return _(o),m(),(k,B)=>(a(),r(c,i(l(e(d)(e(o),7))),{right:t(C=>[b,w]),default:t(()=>[h,g]),_:1},16))}},I=p(x,[["__file","/@slidev/slides/8.md"]]);export{I as default}; diff --git a/06-scalable/assets/9-BwB95Zfl.js b/06-scalable/assets/9-BwB95Zfl.js new file mode 100644 index 0000000..a34a10a --- /dev/null +++ b/06-scalable/assets/9-BwB95Zfl.js @@ -0,0 +1 @@ +import{o as a,c as o,k as r,q as c,s as _,A as s,e}from"./modules/vue-CyVBQAnX.js";import{I as n}from"./slidev/default-BXwXGoqN.js";import{_ as l,ae as t}from"./index-DK5cJv9W.js";import{p as m,u as i,f as p}from"./slidev/context-DK7fZVI-.js";import"./modules/shiki-B34Zut0U.js";const u="/sa2024/06-scalable/assets/05-scale-out-C0l34FFD.png",f=e("h1",null,"垂直 vs. 水平扩展(Scale Out)",-1),d=e("img",{src:u,class:"m-5 h-80"},null,-1),h={__name:"9",setup(x){return m(t),i(),(v,g)=>(a(),o(n,c(_(s(p)(s(t),8))),{default:r(()=>[f,d]),_:1},16))}},I=l(h,[["__file","/@slidev/slides/9.md"]]);export{I as default}; diff --git a/06-scalable/assets/ClicksSlider-qq1Ub2AL.css b/06-scalable/assets/ClicksSlider-qq1Ub2AL.css new file mode 100644 index 0000000..ded5c92 --- /dev/null +++ b/06-scalable/assets/ClicksSlider-qq1Ub2AL.css @@ -0,0 +1 @@ +.range[data-v-e916140b]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}.range[data-v-e916140b]::-webkit-slider-thumb{-webkit-appearance:none;height:100%;width:var(--thumb-width, .5rem)}.range[data-v-e916140b]::-moz-range-thumb{height:100%;width:var(--thumb-width, .5rem)} diff --git a/06-scalable/assets/ContextMenu-DSnskk1a.css b/06-scalable/assets/ContextMenu-DSnskk1a.css new file mode 100644 index 0000000..b193adb --- /dev/null +++ b/06-scalable/assets/ContextMenu-DSnskk1a.css @@ -0,0 +1 @@ +.select-list[data-v-9e4a80e3]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-9e4a80e3]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-9e4a80e3]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-9e4a80e3]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-9e4a80e3]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}.autocomplete-list[data-v-a9c46306]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-a9c46306]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-a9c46306]{cursor:pointer}#slideshow[data-v-63954aac]{height:100%} diff --git a/06-scalable/assets/DrawingControls-BO6lw4N5.css b/06-scalable/assets/DrawingControls-BO6lw4N5.css deleted file mode 100644 index beec79d..0000000 --- a/06-scalable/assets/DrawingControls-BO6lw4N5.css +++ /dev/null @@ -1 +0,0 @@ -.resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper__popper{z-index:10000;top:0;left:0;outline:none}.v-popper__popper.v-popper__popper--hidden{visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s;pointer-events:none}.v-popper__popper.v-popper__popper--shown{visibility:visible;opacity:1;transition:opacity .15s}.v-popper__popper.v-popper__popper--skip-transition,.v-popper__popper.v-popper__popper--skip-transition>.v-popper__wrapper{transition:none!important}.v-popper__backdrop{position:absolute;top:0;left:0;width:100%;height:100%;display:none}.v-popper__inner{position:relative;box-sizing:border-box;overflow-y:auto}.v-popper__inner>div{position:relative;z-index:1;max-width:inherit;max-height:inherit}.v-popper__arrow-container{position:absolute;width:10px;height:10px}.v-popper__popper--arrow-overflow .v-popper__arrow-container,.v-popper__popper--no-positioning .v-popper__arrow-container{display:none}.v-popper__arrow-inner,.v-popper__arrow-outer{border-style:solid;position:absolute;top:0;left:0;width:0;height:0}.v-popper__arrow-inner{visibility:hidden;border-width:7px}.v-popper__arrow-outer{border-width:6px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{left:-2px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{left:-1px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer{border-bottom-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:0}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{border-top-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{top:-4px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{top:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{top:-1px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{border-left-width:0;border-left-color:transparent!important;border-top-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{left:-4px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{left:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer{border-right-width:0;border-top-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner{left:-2px}.v-popper--theme-tooltip .v-popper__inner{background:#000c;color:#fff;border-radius:6px;padding:7px 12px 6px}.v-popper--theme-tooltip .v-popper__arrow-outer{border-color:#000c}.v-popper--theme-dropdown .v-popper__inner{background:#fff;color:#000;border-radius:6px;border:1px solid #ddd;box-shadow:0 6px 30px #0000001a}.v-popper--theme-dropdown .v-popper__arrow-inner{visibility:visible;border-color:#fff}.v-popper--theme-dropdown .v-popper__arrow-outer{border-color:#ddd}.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/06-scalable/assets/DrawingControls-C5T1oZL5.css b/06-scalable/assets/DrawingControls-C5T1oZL5.css new file mode 100644 index 0000000..bf95bff --- /dev/null +++ b/06-scalable/assets/DrawingControls-C5T1oZL5.css @@ -0,0 +1 @@ +.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/06-scalable/assets/DrawingPreview-DJ7dOR_1.css b/06-scalable/assets/DrawingPreview-DJ7dOR_1.css new file mode 100644 index 0000000..d8ce4e2 --- /dev/null +++ b/06-scalable/assets/DrawingPreview-DJ7dOR_1.css @@ -0,0 +1 @@ +#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.disable-view-transition[data-v-1e2c950d] *{view-transition-name:none!important}.slidev-page[data-v-1e2c950d]{position:absolute;width:100%;height:100%} diff --git a/06-scalable/assets/SlidesShow-Do3DTZt5.css b/06-scalable/assets/SlidesShow-Do3DTZt5.css deleted file mode 100644 index 4ca12c5..0000000 --- a/06-scalable/assets/SlidesShow-Do3DTZt5.css +++ /dev/null @@ -1 +0,0 @@ -#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete-list[data-v-9ed224f5]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-9ed224f5]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-9ed224f5]{cursor:pointer}.select-list[data-v-38e64e7e]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-38e64e7e]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-38e64e7e]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-38e64e7e]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-38e64e7e]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}#slideshow[data-v-2fe83b23]{height:100%}#slideshow>div[data-v-2fe83b23]{position:absolute;height:100%;width:100%} diff --git a/06-scalable/assets/index-BVCbtGme.js b/06-scalable/assets/index-BVCbtGme.js deleted file mode 100644 index 4ba1915..0000000 --- a/06-scalable/assets/index-BVCbtGme.js +++ /dev/null @@ -1,54 +0,0 @@ -import{n as He,y as Wi,z as y,A as Vi,t as U,B as le,C as $e,D as qi,E as Yi,G as Ki,H as Gi,I as h,J as v,K as Zi,L as Xi,M as Ji,N as Qi,O as ce,P as pn,Q as ta,R as ea,d as ds,b as Ne,e as r,f as Fe,h as Kn,o as C,c as M,k as w,q as D,s as T,S as x,i as Ze,T as sa,U as na,V as ia,g as aa,l as be,m as we,W as Ks,X as ra,Y as la,Z as oa,_ as ca,$ as ha,a0 as ua,a1 as da,a2 as et,a3 as Gn,a4 as pa,a5 as ps,a6 as fa,a7 as ga,a8 as ma,r as _a,a9 as ka,aa as ya,u as va}from"./modules/vue-CoY6Ph6S.js";import{_ as ba,a as wa}from"./modules/unplugin-icons-DdL09wdV.js";import{T as xa}from"./modules/shiki-CNrqLFow.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const l of a.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&n(l)}).observe(document,{childList:!0,subtree:!0});function s(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function n(i){if(i.ep)return;i.ep=!0;const a=s(i);fetch(i.href,a)}})();function Ds(t,e={},s){for(const n in t){const i=t[n],a=s?`${s}:${n}`:n;typeof i=="object"&&i!==null?Ds(i,e,a):typeof i=="function"&&(e[a]=i)}return e}const $a={run:t=>t()},Ca=()=>$a,Zn=typeof console.createTask<"u"?console.createTask:Ca;function Aa(t,e){const s=e.shift(),n=Zn(s);return t.reduce((i,a)=>i.then(()=>n.run(()=>a(...e))),Promise.resolve())}function Sa(t,e){const s=e.shift(),n=Zn(s);return Promise.all(t.map(i=>n.run(()=>i(...e))))}function vs(t,e){for(const s of[...t])s(e)}class Ma{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,s,n={}){if(!e||typeof s!="function")return()=>{};const i=e;let a;for(;this._deprecatedHooks[e];)a=this._deprecatedHooks[e],e=a.to;if(a&&!n.allowDeprecated){let l=a.message;l||(l=`${i} hook has been deprecated`+(a.to?`, please use ${a.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(l)||(console.warn(l),this._deprecatedMessages.add(l))}if(!s.name)try{Object.defineProperty(s,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(s),()=>{s&&(this.removeHook(e,s),s=void 0)}}hookOnce(e,s){let n,i=(...a)=>(typeof n=="function"&&n(),n=void 0,i=void 0,s(...a));return n=this.hook(e,i),n}removeHook(e,s){if(this._hooks[e]){const n=this._hooks[e].indexOf(s);n!==-1&&this._hooks[e].splice(n,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,s){this._deprecatedHooks[e]=typeof s=="string"?{to:s}:s;const n=this._hooks[e]||[];delete this._hooks[e];for(const i of n)this.hook(e,i)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const s in e)this.deprecateHook(s,e[s])}addHooks(e){const s=Ds(e),n=Object.keys(s).map(i=>this.hook(i,s[i]));return()=>{for(const i of n.splice(0,n.length))i()}}removeHooks(e){const s=Ds(e);for(const n in s)this.removeHook(n,s[n])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...s){return s.unshift(e),this.callHookWith(Aa,e,...s)}callHookParallel(e,...s){return s.unshift(e),this.callHookWith(Sa,e,...s)}callHookWith(e,s,...n){const i=this._before||this._after?{name:s,args:n,context:{}}:void 0;this._before&&vs(this._before,i);const a=e(s in this._hooks?[...this._hooks[s]]:[],n);return a instanceof Promise?a.finally(()=>{this._after&&i&&vs(this._after,i)}):(this._after&&i&&vs(this._after,i),a)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const s=this._before.indexOf(e);s!==-1&&this._before.splice(s,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const s=this._after.indexOf(e);s!==-1&&this._after.splice(s,1)}}}}function Ea(){return new Ma}function Pa(t){return Array.isArray(t)?t:[t]}const Da=["title","titleTemplate","script","style","noscript"],Xe=["base","meta","link","style","script","noscript"],Ta=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],La=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],Xn=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],Ba=typeof window<"u";function Gs(t){let e=9;for(let s=0;s>>9)+65536).toString(16).substring(1,8).toLowerCase()}function fn(t){return t._h||Gs(t._d?t._d:`${t.tag}:${t.textContent||t.innerHTML||""}:${Object.entries(t.props).map(([e,s])=>`${e}:${String(s)}`).join(",")}`)}function Jn(t,e){const{props:s,tag:n}=t;if(La.includes(n))return n;if(n==="link"&&s.rel==="canonical")return"canonical";if(s.charset)return"charset";const i=["id"];n==="meta"&&i.push("name","property","http-equiv");for(const a of i)if(typeof s[a]<"u"){const l=String(s[a]);return e&&!e(l)?!1:`${n}:${a}:${l}`}return!1}function gn(t,e){return t==null?e||null:typeof t=="function"?t(e):t}async function Oa(t,e,s){const n={tag:t,props:await Qn(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(t)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(t))};return Xn.forEach(i=>{const a=typeof n.props[i]<"u"?n.props[i]:s[i];typeof a<"u"&&((!["innerHTML","textContent","children"].includes(i)||Da.includes(n.tag))&&(n[i==="children"?"innerHTML":i]=a),delete n.props[i])}),n.props.body&&(n.tagPosition="bodyClose",delete n.props.body),n.tag==="script"&&typeof n.innerHTML=="object"&&(n.innerHTML=JSON.stringify(n.innerHTML),n.props.type=n.props.type||"application/json"),Array.isArray(n.props.content)?n.props.content.map(i=>({...n,props:{...n.props,content:i}})):n}function Ia(t){return typeof t=="object"&&!Array.isArray(t)&&(t=Object.keys(t).filter(e=>t[e])),(Array.isArray(t)?t.join(" "):t).split(" ").filter(e=>e.trim()).filter(Boolean).join(" ")}async function Qn(t,e){for(const s of Object.keys(t)){if(s==="class"){t[s]=Ia(t[s]);continue}if(t[s]instanceof Promise&&(t[s]=await t[s]),!e&&!Xn.includes(s)){const n=String(t[s]),i=s.startsWith("data-");n==="true"||n===""?t[s]=i?"true":!0:t[s]||(i&&n==="false"?t[s]="false":delete t[s])}}return t}const Ha=10;async function Na(t){const e=[];return Object.entries(t.resolvedInput).filter(([s,n])=>typeof n<"u"&&Ta.includes(s)).forEach(([s,n])=>{const i=Pa(n);e.push(...i.map(a=>Oa(s,a,t)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((s,n)=>(s._e=t._i,t.mode&&(s._m=t.mode),s._p=(t._i<c&&c[u]||void 0,e):o=e[l],typeof o<"u"?(o||"").replace(/"/g,'\\"'):!1}let i=t;try{i=decodeURI(t)}catch{}return(i.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(l=>{const o=n(l.slice(1));typeof o=="string"&&(t=t.replace(new RegExp(`\\${l}(\\W|$)`,"g"),(c,u)=>`${o}${u}`).trim())}),t.includes(ae)&&(t.endsWith(ae)&&(t=t.slice(0,-ae.length).trim()),t.startsWith(ae)&&(t=t.slice(ae.length).trim()),t=t.replace(new RegExp(`\\${ae}\\s*\\${ae}`,"g"),ae),t=Je(t,{separator:s},s)),t}async function Ra(t){const e={tag:t.tagName.toLowerCase(),props:await Qn(t.getAttributeNames().reduce((s,n)=>({...s,[n]:t.getAttribute(n)}),{})),innerHTML:t.innerHTML};return e._d=Jn(e),e}async function ja(t,e={}){var d;const s=e.document||t.resolvedOptions.document;if(!s)return;const n={shouldRender:t.dirty,tags:[]};if(await t.hooks.callHook("dom:beforeRender",n),!n.shouldRender)return;const i=(await t.resolveTags()).map(p=>({tag:p,id:Xe.includes(p.tag)?fn(p):p.tag,shouldRender:!0}));let a=t._dom;if(!a){a={elMap:{htmlAttrs:s.documentElement,bodyAttrs:s.body}};for(const p of["body","head"]){const g=(d=s==null?void 0:s[p])==null?void 0:d.children;for(const f of[...g].filter(m=>Xe.includes(m.tagName.toLowerCase())))a.elMap[f.getAttribute("data-hid")||fn(await Ra(f))]=f}}a.pendingSideEffects={...a.sideEffects||{}},a.sideEffects={};function l(p,g,f){const m=`${p}:${g}`;a.sideEffects[m]=f,delete a.pendingSideEffects[m]}function o({id:p,$el:g,tag:f}){const m=f.tag.endsWith("Attrs");a.elMap[p]=g,m||(["textContent","innerHTML"].forEach(_=>{f[_]&&f[_]!==g[_]&&(g[_]=f[_])}),l(p,"el",()=>{a.elMap[p].remove(),delete a.elMap[p]})),Object.entries(f.props).forEach(([_,k])=>{const b=`attr:${_}`;if(_==="class")for(const A of(k||"").split(" ").filter(Boolean))m&&l(p,`${b}:${A}`,()=>g.classList.remove(A)),!g.classList.contains(A)&&g.classList.add(A);else g.getAttribute(_)!==k&&g.setAttribute(_,k===!0?"":String(k)),m&&l(p,b,()=>g.removeAttribute(_))})}const c=[],u={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const p of i){const{tag:g,shouldRender:f,id:m}=p;if(f){if(g.tag==="title"){s.title=g.textContent;continue}p.$el=p.$el||a.elMap[m],p.$el?o(p):Xe.includes(g.tag)&&c.push(p)}}for(const p of c){const g=p.tag.tagPosition||"head";p.$el=s.createElement(p.tag.tag),o(p),u[g]=u[g]||s.createDocumentFragment(),u[g].appendChild(p.$el)}for(const p of i)await t.hooks.callHook("dom:renderTag",p,s,l);u.head&&s.head.appendChild(u.head),u.bodyOpen&&s.body.insertBefore(u.bodyOpen,s.body.firstChild),u.bodyClose&&s.body.appendChild(u.bodyClose),Object.values(a.pendingSideEffects).forEach(p=>p()),t._dom=a,t.dirty=!1,await t.hooks.callHook("dom:rendered",{renders:i})}async function Ua(t,e={}){const s=e.delayFn||(n=>setTimeout(n,10));return t._domUpdatePromise=t._domUpdatePromise||new Promise(n=>s(async()=>{await ja(t,e),delete t._domUpdatePromise,n()}))}function za(t){return e=>{var n,i;const s=((i=(n=e.resolvedOptions.document)==null?void 0:n.head.querySelector('script[id="unhead:payload"]'))==null?void 0:i.innerHTML)||!1;return s&&e.push(JSON.parse(s)),{mode:"client",hooks:{"entries:updated":function(a){Ua(a,t)}}}}}const Wa=["templateParams","htmlAttrs","bodyAttrs"],Va={hooks:{"tag:normalise":function({tag:t}){["hid","vmid","key"].forEach(n=>{t.props[n]&&(t.key=t.props[n],delete t.props[n])});const s=Jn(t)||(t.key?`${t.tag}:${t.key}`:!1);s&&(t._d=s)},"tags:resolve":function(t){const e={};t.tags.forEach(n=>{const i=(n.key?`${n.tag}:${n.key}`:n._d)||n._p,a=e[i];if(a){let o=n==null?void 0:n.tagDuplicateStrategy;if(!o&&Wa.includes(n.tag)&&(o="merge"),o==="merge"){const c=a.props;["class","style"].forEach(u=>{c[u]&&(n.props[u]?(u==="style"&&!c[u].endsWith(";")&&(c[u]+=";"),n.props[u]=`${c[u]} ${n.props[u]}`):n.props[u]=c[u])}),e[i].props={...c,...n.props};return}else if(n._e===a._e){a._duped=a._duped||[],n._d=`${a._d}:${a._duped.length+1}`,a._duped.push(n);return}else if(ss(n)>ss(a))return}const l=Object.keys(n.props).length+(n.innerHTML?1:0)+(n.textContent?1:0);if(Xe.includes(n.tag)&&l===0){delete e[i];return}e[i]=n});const s=[];Object.values(e).forEach(n=>{const i=n._duped;delete n._duped,s.push(n),i&&s.push(...i)}),t.tags=s,t.tags=t.tags.filter(n=>!(n.tag==="meta"&&(n.props.name||n.props.property)&&!n.props.content))}}},qa={mode:"server",hooks:{"tags:resolve":function(t){const e={};t.tags.filter(s=>["titleTemplate","templateParams","title"].includes(s.tag)&&s._m==="server").forEach(s=>{e[s.tag]=s.tag.startsWith("title")?s.textContent:s.props}),Object.keys(e).length&&t.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},Ya=["script","link","bodyAttrs"];function Ka(t){const e={},s={};return Object.entries(t.props).forEach(([n,i])=>{n.startsWith("on")&&typeof i=="function"?(ti.includes(n)&&(e[n]=`this.dataset.${n} = true`),s[n]=i):e[n]=i}),{props:e,eventHandlers:s}}const Ga=t=>({hooks:{"tags:resolve":function(e){for(const s of e.tags)if(Ya.includes(s.tag)){const{props:n,eventHandlers:i}=Ka(s);s.props=n,Object.keys(i).length&&((s.props.src||s.props.href)&&(s.key=s.key||Gs(s.props.src||s.props.href)),s._eventHandlers=i)}},"dom:renderTag":function(e,s,n){if(!e.tag._eventHandlers)return;const i=e.tag.tag==="bodyAttrs"?s.defaultView:e.$el;Object.entries(e.tag._eventHandlers).forEach(([a,l])=>{const o=`${e.tag._d||e.tag._p}:${a}`,c=a.slice(2).toLowerCase(),u=`data-h-${c}`;if(n(e.id,o,()=>{}),e.$el.hasAttribute(u))return;e.$el.setAttribute(u,"");let d;const p=g=>{l(g),d==null||d.disconnect()};a in e.$el.dataset?p(new Event(a.replace("on",""))):ti.includes(a)&&typeof MutationObserver<"u"?(d=new MutationObserver(g=>{g.some(m=>m.attributeName===`data-${a}`)&&(p(new Event(a.replace("on",""))),d==null||d.disconnect())}),d.observe(e.$el,{attributes:!0})):i.addEventListener(c,p),n(e.id,o,()=>{d==null||d.disconnect(),i.removeEventListener(c,p),e.$el.removeAttribute(u)})})}}}),Za=["link","style","script","noscript"],Xa={hooks:{"tag:normalise":({tag:t})=>{t.key&&Za.includes(t.tag)&&(t.props["data-hid"]=t._h=Gs(t.key))}}},Ja={hooks:{"tags:resolve":t=>{const e=s=>{var n;return(n=t.tags.find(i=>i._d===s))==null?void 0:n._p};for(const{prefix:s,offset:n}of Fa)for(const i of t.tags.filter(a=>typeof a.tagPriority=="string"&&a.tagPriority.startsWith(s))){const a=e(i.tagPriority.replace(s,""));typeof a<"u"&&(i._p=a+n)}t.tags.sort((s,n)=>s._p-n._p).sort((s,n)=>ss(s)-ss(n))}}},Qa={meta:"content",link:"href",htmlAttrs:"lang"},tr=t=>({hooks:{"tags:resolve":e=>{var o;const{tags:s}=e,n=(o=s.find(c=>c.tag==="title"))==null?void 0:o.textContent,i=s.findIndex(c=>c.tag==="templateParams"),a=i!==-1?s[i].props:{},l=a.separator||"|";delete a.separator,a.pageTitle=Je(a.pageTitle||n||"",a,l);for(const c of s.filter(u=>u.processTemplateParams!==!1)){const u=Qa[c.tag];u&&typeof c.props[u]=="string"?c.props[u]=Je(c.props[u],a,l):(c.processTemplateParams===!0||["titleTemplate","title"].includes(c.tag))&&["innerHTML","textContent"].forEach(d=>{typeof c[d]=="string"&&(c[d]=Je(c[d],a,l))})}t._templateParams=a,t._separator=l,e.tags=s.filter(c=>c.tag!=="templateParams")}}}),er={hooks:{"tags:resolve":t=>{const{tags:e}=t;let s=e.findIndex(i=>i.tag==="titleTemplate");const n=e.findIndex(i=>i.tag==="title");if(n!==-1&&s!==-1){const i=gn(e[s].textContent,e[n].textContent);i!==null?e[n].textContent=i||e[n].textContent:delete e[n]}else if(s!==-1){const i=gn(e[s].textContent);i!==null&&(e[s].textContent=i,e[s].tag="title",s=-1)}s!==-1&&delete e[s],t.tags=e.filter(Boolean)}}},sr={hooks:{"tags:afterResolve":function(t){for(const e of t.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{o.dirty=!0,e.callHook("entries:updated",o)};let i=0,a=[];const l=[],o={plugins:l,dirty:!1,resolvedOptions:t,hooks:e,headEntries(){return a},use(c){const u=typeof c=="function"?c(o):c;(!u.key||!l.some(d=>d.key===u.key))&&(l.push(u),kn(u.mode,s)&&e.addHooks(u.hooks||{}))},push(c,u){u==null||delete u.head;const d={_i:i++,input:c,...u};return kn(d.mode,s)&&(a.push(d),n()),{dispose(){a=a.filter(p=>p._i!==d._i),e.callHook("entries:updated",o),n()},patch(p){a=a.map(g=>(g._i===d._i&&(g.input=d.input=p),g)),n()}}},async resolveTags(){const c={tags:[],entries:[...a]};await e.callHook("entries:resolve",c);for(const u of c.entries){const d=u.resolvedInput||u.input;if(u.resolvedInput=await(u.transform?u.transform(d):d),u.resolvedInput)for(const p of await Na(u)){const g={tag:p,entry:u,resolvedOptions:o.resolvedOptions};await e.callHook("tag:normalise",g),c.tags.push(g.tag)}}return await e.callHook("tags:beforeResolve",c),await e.callHook("tags:resolve",c),await e.callHook("tags:afterResolve",c),c.tags},ssr:s};return[Va,qa,Ga,Xa,Ja,tr,er,sr,...(t==null?void 0:t.plugins)||[]].forEach(c=>o.use(c)),o.hooks.callHook("init",o),o}function ar(){return ei}const rr=Wi.startsWith("3");function lr(t){return typeof t=="function"?t():y(t)}function ns(t,e=""){if(t instanceof Promise)return t;const s=lr(t);return!t||!s?s:Array.isArray(s)?s.map(n=>ns(n,e)):typeof s=="object"?Object.fromEntries(Object.entries(s).map(([n,i])=>n==="titleTemplate"||n.startsWith("on")?[n,y(i)]:[n,ns(i,n)])):s}const or={hooks:{"entries:resolve":function(t){for(const e of t.entries)e.resolvedInput=ns(e.input)}}},si="usehead";function cr(t){return{install(s){rr&&(s.config.globalProperties.$unhead=t,s.config.globalProperties.$head=t,s.provide(si,t))}}.install}function hr(t={}){t.domDelayFn=t.domDelayFn||(s=>He(()=>setTimeout(()=>s(),0)));const e=nr(t);return e.use(or),e.install=cr(e),e}const yn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},vn="__unhead_injection_handler__";function ur(){if(vn in yn)return yn[vn]();const t=Vi(si);return t||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),t||ar()}function dr(t,e={}){const s=e.head||ur();if(s)return s.ssr?s.push(t,e):pr(s,t,e)}function pr(t,e,s={}){const n=U(!1),i=U({});le(()=>{i.value=n.value?{}:ns(e)});const a=t.push(i.value,s);return $e(i,o=>{a.patch(o)}),Gi()&&(qi(()=>{a.dispose()}),Yi(()=>{n.value=!0}),Ki(()=>{n.value=!1})),a}function fr(...t){return mr(t).reduce((e,s)=>e+s,0)}function gr(t){return t=t??[],Array.isArray(t)?t:[t]}function mr(t){return gr(t).flat(1)}function _r(t){return t!=null}function kr(t,e){return Object.fromEntries(Object.entries(t).map(([s,n])=>e(s,n)).filter(_r))}const N={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:"dev",monacoTypesSource:"local",monacoTypesAdditionalPackages:[],download:!1,export:{},info:!1,highlighter:"shiki",lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},ni=N.aspectRatio??16/9,yr=N.canvasWidth??980,zg=Math.ceil(yr/ni),vr=h(()=>kr(N.themeConfig||{},(t,e)=>[`--slidev-theme-${t}`,e]));function ii(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function lt(t,e,s){Object.defineProperty(t,e,{value:s,writable:!0,enumerable:!1})}const fe=v({page:0,clicks:0});let br=[],wr=[];lt(fe,"$syncUp",!0);lt(fe,"$syncDown",!0);lt(fe,"$paused",!1);lt(fe,"$onSet",t=>br.push(t));lt(fe,"$onPatch",t=>wr.push(t));ii();lt(fe,"$patch",async()=>!1);function ai(t,e,s=!1){const n=[];let i=!1,a=!1,l,o;const c=v(e);function u(f){n.push(f)}function d(f,m){c[f]!==m&&(clearTimeout(l),i=!0,c[f]=m,l=setTimeout(()=>i=!1,0))}function p(f){i||(clearTimeout(o),a=!0,Object.entries(f).forEach(([m,_])=>{c[m]=_}),o=setTimeout(()=>a=!1,0))}function g(f){let m;s?s&&window.addEventListener("storage",k=>{k&&k.key===f&&k.newValue&&p(JSON.parse(k.newValue))}):(m=new BroadcastChannel(f),m.addEventListener("message",k=>p(k.data)));function _(){!s&&m&&!a?m.postMessage(Zi(c)):s&&!a&&window.localStorage.setItem(f,JSON.stringify(c)),i||n.forEach(k=>k(c))}if($e(c,_,{deep:!0,flush:"sync"}),s){const k=window.localStorage.getItem(f);k&&p(JSON.parse(k))}}return{init:g,onPatch:u,patch:d,state:c}}const{init:xr,onPatch:$r,patch:Se,state:Wg}=ai(fe,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),ge=v({});let Cr=[],Ar=[];lt(ge,"$syncUp",!0);lt(ge,"$syncDown",!0);lt(ge,"$paused",!1);lt(ge,"$onSet",t=>Cr.push(t));lt(ge,"$onPatch",t=>Ar.push(t));ii();lt(ge,"$patch",async()=>!1);const{init:Sr,onPatch:Mr,patch:ri,state:li}=ai(ge,{},!1),Er="modulepreload",Pr=function(t){return"/sa2024/06-scalable/"+t},bn={},Re=function(e,s,n){let i=Promise.resolve();if(s&&s.length>0){const a=document.getElementsByTagName("link");i=Promise.all(s.map(l=>{if(l=Pr(l),l in bn)return;bn[l]=!0;const o=l.endsWith(".css"),c=o?'[rel="stylesheet"]':"";if(!!n)for(let p=a.length-1;p>=0;p--){const g=a[p];if(g.href===l&&(!o||g.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${c}`))return;const d=document.createElement("link");if(d.rel=o?"stylesheet":Er,o||(d.as="script",d.crossOrigin=""),d.href=l,document.head.appendChild(d),o)return new Promise((p,g)=>{d.addEventListener("load",p),d.addEventListener("error",()=>g(new Error(`Unable to preload CSS for ${l}`)))})}))}return i.then(()=>e()).catch(a=>{const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=a,window.dispatchEvent(l),!l.defaultPrevented)throw a})},S=(t,e)=>{const s=t.__vccOpts||t;for(const[n,i]of e)s[n]=i;return s};function Vg(){const t=U(Date.now()),e=Xi({interval:1e3}),s=h(()=>{const i=(e.value-t.value)/1e3,a=Math.floor(i%60).toString().padStart(2,"0");return`${Math.floor(i/60).toString().padStart(2,"0")}:${a}`});function n(){t.value=e.value}return{timer:s,resetTimer:n}}function oi(t=5){const e=[],s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n=s.length;for(let i=0;ii.max||0))}}}function Ir(t){var i,a;if((i=t==null?void 0:t.meta)!=null&&i.__clicksContext)return t.meta.__clicksContext;const e=+((t==null?void 0:t.path)??Ts),s=h({get(){var o;const l=+(((o=se.value)==null?void 0:o.path)??Number.NaN);return!l||Number.isNaN(l)?0:l===e?xe.value:l>e?Ts:0},set(l){var c;+(((c=se.value)==null?void 0:c.path)??Number.NaN)===e&&(xe.value=l)}}),n=fi(s,(a=t==null?void 0:t.meta)==null?void 0:a.clicks);return t!=null&&t.meta&&(t.meta.__clicksContext=n),n}function Hr(t,e=0){var s;return fi(U(e),(s=t==null?void 0:t.meta)==null?void 0:s.clicks)}const Nr=Qi(Hr());function E(){const t=ce(hi),e=pn(t,"nav"),s=ce(Zs,Nr).value,n=pn(s,"current"),i=ce(ci),a=ce(ui),l=ce(di,{}),o=ce(Lr,void 0),c=ce(Tr,U(1));return{$slidev:t,$nav:e,$clicksContext:s,$clicks:n,$page:i,$route:o,$renderContext:a,$frontmatter:l,$scale:c}}function L(t){var i,a;ta(di,t);const{$slidev:e,$page:s}=E(),n=e.nav.rawRoutes.find(l=>l.path===String(s.value));if((a=(i=n==null?void 0:n.meta)==null?void 0:i.slide)!=null&&a.frontmatter){for(const l of Object.keys(n.meta.slide.frontmatter))l in t||delete n.meta.slide.frontmatter[l];Object.assign(n.meta.slide.frontmatter,t)}}function B(t,e){return{...ea(t,e===0?Or:pi),frontmatter:t}}function wn(t){return t.startsWith("/")?"/sa2024/06-scalable/"+t.slice(1):t}function Fr(t,e=!1){const s=t&&["#","rgb","hsl"].some(i=>t.indexOf(i)===0),n={background:s?t:void 0,color:t&&!s?"white":void 0,backgroundImage:s?void 0:t?e?`linear-gradient(#0005, #0008), url(${wn(t)})`:`url("${wn(t)}")`:void 0,backgroundRepeat:"no-repeat",backgroundPosition:"center",backgroundSize:"cover"};return n.background||delete n.background,n}const Rr={class:"my-auto w-full"},jr=ds({__name:"cover",props:{background:{default:""}},setup(t){E();const e=t,s=h(()=>Fr(e.background,!0));return(n,i)=>(C(),Ne("div",{class:"slidev-layout cover",style:Kn(s.value)},[r("div",Rr,[Fe(n.$slots,"default")])],4))}}),Ur=S(jr,[["__file","/opt/homebrew/lib/node_modules/@slidev/theme-default/layouts/cover.vue"]]),kt=v({theme:"default",layout:"cover"}),zr=v({layout:h(()=>kt.layout),transition:h(()=>kt.transition),class:h(()=>kt.class),clicks:h(()=>kt.clicks),name:h(()=>kt.name),preload:h(()=>kt.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:kt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),Wr=r("h1",null,"Software Architecture",-1),Vr=r("h2",null,"Scalable Web Architecture",-1),qr={__name:"1",setup(t){return L(kt),E(),(e,s)=>(C(),M(Ur,D(T(y(B)(y(kt),0))),{default:w(()=>[Wr,Vr]),_:1},16))}},Yr=S(qr,[["__file","/@slidev/slides/1.md"]]),Kr="/sa2024/06-scalable/assets/05-challenge-DwJJv_v8.png",Gr={},Zr={class:"slidev-layout default"};function Xr(t,e){return C(),Ne("div",Zr,[Fe(t.$slots,"default")])}const F=S(Gr,[["render",Xr],["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/default.vue"]]),yt=v({}),Jr=v({layout:h(()=>yt.layout),transition:h(()=>yt.transition),class:h(()=>yt.class),clicks:h(()=>yt.clicks),name:h(()=>yt.name),preload:h(()=>yt.preload),slide:{index:1,content:"",note:"",title:"CS/BS架构挑战",level:1,noteHTML:"",raw:"",frontmatter:yt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:11,id:1,no:2},__clicksContext:null,__preloaded:!1}),Qr=r("h1",null,"CS/BS架构挑战",-1),tl=r("img",{src:Kr,class:"m-10 h-80"},null,-1),el={__name:"2",setup(t){return L(yt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(yt),1))),{default:w(()=>[Qr,tl]),_:1},16))}},sl=S(el,[["__file","/@slidev/slides/2.md"]]),nl="/sa2024/06-scalable/assets/05-pi-PZGyONFv.png",vt=v({}),il=v({layout:h(()=>vt.layout),transition:h(()=>vt.transition),class:h(()=>vt.class),clicks:h(()=>vt.clicks),name:h(()=>vt.name),preload:h(()=>vt.preload),slide:{index:2,content:"",note:"",title:"实验",level:1,noteHTML:"",raw:"",frontmatter:vt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:18,id:2,no:3},__clicksContext:null,__preloaded:!1}),al=r("h1",null,"实验",-1),rl=r("br",null,null,-1),ll=r("p",null,"写个计算密集型(Compute-intensive)服务 sa-spring/app-pi",-1),ol=r("img",{src:nl,class:"m-20 h-40"},null,-1),cl=r("p",null,[r("a",{href:"https://www.bilibili.com/video/BV1X7411S7yM?p=1",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV1X7411S7yM?p=1"),x(" (3:15)")],-1),hl={__name:"3",setup(t){return L(vt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(vt),2))),{default:w(()=>[al,rl,ll,ol,cl]),_:1},16))}},ul=S(hl,[["__file","/@slidev/slides/3.md"]]),dl="/sa2024/06-scalable/assets/05-loadtesting-COkcLUc3.png",pl=ds({__name:"two-cols",props:{class:{type:String},layoutClass:{type:String}},setup(t){const e=t;return(s,n)=>(C(),Ne("div",{class:Ze(["slidev-layout two-columns w-full h-full grid grid-cols-2",e.layoutClass])},[r("div",{class:Ze(["col-left",e.class])},[Fe(s.$slots,"default")],2),r("div",{class:Ze(["col-right",e.class])},[Fe(s.$slots,"right")],2)],2))}}),ot=S(pl,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/two-cols.vue"]]),bt=v({layout:"two-cols"}),fl=v({layout:h(()=>bt.layout),transition:h(()=>bt.transition),class:h(()=>bt.class),clicks:h(()=>bt.clicks),name:h(()=>bt.name),preload:h(()=>bt.preload),slide:{index:3,content:"",note:"",title:"压力测试",level:1,noteHTML:"",raw:"",frontmatter:bt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:35,id:3,no:4},__clicksContext:null,__preloaded:!1}),gl=r("h1",null,"压力测试",-1),ml=r("br",null,null,-1),_l=r("blockquote",null,[r("p",null,"Load testing is the process of putting demand on a system and measuring its response.")],-1),kl=r("br",null,null,-1),yl=r("div",{style:{"text-align":"right"}},"- https://en.wikipedia.org/wiki/Load_testing",-1),vl=r("img",{src:dl,class:"m-20 h-40"},null,-1),bl=r("div",{style:{"text-align":"right"}},"https://www.bilibili.com/video/BV1X7411S7yM?p=1 12:50",-1),wl={__name:"4",setup(t){return L(bt),E(),(e,s)=>(C(),M(ot,D(T(y(B)(y(bt),3))),{right:w(n=>[vl,bl]),default:w(()=>[gl,ml,_l,kl,yl]),_:1},16))}},xl=S(wl,[["__file","/@slidev/slides/4.md"]]),$l="/sa2024/06-scalable/assets/05-scale-up-CnmLtcYa.png",wt=v({}),Cl=v({layout:h(()=>wt.layout),transition:h(()=>wt.transition),class:h(()=>wt.class),clicks:h(()=>wt.clicks),name:h(()=>wt.name),preload:h(()=>wt.preload),slide:{index:4,content:"",note:"",title:"扩展",level:1,noteHTML:"",raw:"",frontmatter:wt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:57,id:4,no:5},__clicksContext:null,__preloaded:!1}),Al=r("h1",null,"扩展",-1),Sl=r("br",null,null,-1),Ml=r("img",{src:$l,class:"m-20 h-50"},null,-1),El=r("div",{style:{"text-align":"center"}},"垂直扩展(Scale Up)",-1),Pl={__name:"5",setup(t){return L(wt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(wt),4))),{default:w(()=>[Al,Sl,Ml,El]),_:1},16))}},Dl=S(Pl,[["__file","/@slidev/slides/5.md"]]),Tl="/sa2024/06-scalable/assets/05-virtualization-CBnZdy9Q.png",xt=v({}),Ll=v({layout:h(()=>xt.layout),transition:h(()=>xt.transition),class:h(()=>xt.class),clicks:h(()=>xt.clicks),name:h(()=>xt.name),preload:h(()=>xt.preload),slide:{index:5,content:"",note:"",title:"用虚拟化技术模拟实现",level:1,noteHTML:"",raw:"",frontmatter:xt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:68,id:5,no:6},__clicksContext:null,__preloaded:!1}),Bl=r("h1",null,"用虚拟化技术模拟实现",-1),Ol=r("br",null,null,-1),Il=r("img",{src:Tl,class:"m-20 h-50"},null,-1),Hl=r("div",{style:{"text-align":"right"}},"https://docs.docker.com/install/",-1),Nl={__name:"6",setup(t){return L(xt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(xt),5))),{default:w(()=>[Bl,Ol,Il,Hl]),_:1},16))}},Fl=S(Nl,[["__file","/@slidev/slides/6.md"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function gi(t){return typeof t>"u"||t===null}function Rl(t){return typeof t=="object"&&t!==null}function jl(t){return Array.isArray(t)?t:gi(t)?[]:[t]}function Ul(t,e){var s,n,i,a;if(e)for(a=Object.keys(e),s=0,n=a.length;s=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),xo=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function $o(t){return!(t===null||!xo.test(t)||t[t.length-1]==="_")}function Co(t){var e,s;return e=t.replace(/_/g,"").toLowerCase(),s=e[0]==="-"?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?s===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:s*parseFloat(e,10)}var Ao=/^[-+]?[0-9]+e/;function So(t,e){var s;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Xs.isNegativeZero(t))return"-0.0";return s=t.toString(10),Ao.test(s)?s.replace("e",".e"):s}function Mo(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||Xs.isNegativeZero(t))}var Eo=new J("tag:yaml.org,2002:float",{kind:"scalar",resolve:$o,construct:Co,predicate:Mo,represent:So,defaultStyle:"lowercase"}),Po=ro.extend({implicit:[ho,go,wo,Eo]}),Do=Po,_i=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),ki=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function To(t){return t===null?!1:_i.exec(t)!==null||ki.exec(t)!==null}function Lo(t){var e,s,n,i,a,l,o,c=0,u=null,d,p,g;if(e=_i.exec(t),e===null&&(e=ki.exec(t)),e===null)throw new Error("Date resolve error");if(s=+e[1],n=+e[2]-1,i=+e[3],!e[4])return new Date(Date.UTC(s,n,i));if(a=+e[4],l=+e[5],o=+e[6],e[7]){for(c=e[7].slice(0,3);c.length<3;)c+="0";c=+c}return e[9]&&(d=+e[10],p=+(e[11]||0),u=(d*60+p)*6e4,e[9]==="-"&&(u=-u)),g=new Date(Date.UTC(s,n,i,a,l,o,c)),u&&g.setTime(g.getTime()-u),g}function Bo(t){return t.toISOString()}var Oo=new J("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:To,construct:Lo,instanceOf:Date,represent:Bo});function Io(t){return t==="<<"||t===null}var Ho=new J("tag:yaml.org,2002:merge",{kind:"scalar",resolve:Io}),Js=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function No(t){if(t===null)return!1;var e,s,n=0,i=t.length,a=Js;for(s=0;s64)){if(e<0)return!1;n+=6}return n%8===0}function Fo(t){var e,s,n=t.replace(/[\r\n=]/g,""),i=n.length,a=Js,l=0,o=[];for(e=0;e>16&255),o.push(l>>8&255),o.push(l&255)),l=l<<6|a.indexOf(n.charAt(e));return s=i%4*6,s===0?(o.push(l>>16&255),o.push(l>>8&255),o.push(l&255)):s===18?(o.push(l>>10&255),o.push(l>>2&255)):s===12&&o.push(l>>4&255),new Uint8Array(o)}function Ro(t){var e="",s=0,n,i,a=t.length,l=Js;for(n=0;n>18&63],e+=l[s>>12&63],e+=l[s>>6&63],e+=l[s&63]),s=(s<<8)+t[n];return i=a%3,i===0?(e+=l[s>>18&63],e+=l[s>>12&63],e+=l[s>>6&63],e+=l[s&63]):i===2?(e+=l[s>>10&63],e+=l[s>>4&63],e+=l[s<<2&63],e+=l[64]):i===1&&(e+=l[s>>2&63],e+=l[s<<4&63],e+=l[64],e+=l[64]),e}function jo(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}var Uo=new J("tag:yaml.org,2002:binary",{kind:"scalar",resolve:No,construct:Fo,predicate:jo,represent:Ro}),zo=Object.prototype.hasOwnProperty,Wo=Object.prototype.toString;function Vo(t){if(t===null)return!0;var e=[],s,n,i,a,l,o=t;for(s=0,n=o.length;sn<=t).sort((n,i)=>n-i)}const rc=["title"],lc=ds({__name:"CodeBlockWrapper",props:{ranges:{type:Array,default:()=>[]},finally:{type:[String,Number],default:"last"},startLine:{type:Number,default:1},lines:{type:Boolean,default:N.lineNumbers},at:{type:[String,Number],default:"+1"},maxHeight:{type:String,default:void 0}},setup(t){const e=t,{$clicksContext:s}=E(),n=U(),i=oi();sa(()=>{s.unregister(i)}),le(()=>{var c;(c=n.value)==null||c.classList.toggle("slidev-code-line-numbers",e.lines)}),na(()=>{var f;if(!s||s.disabled||!((f=e.ranges)!=null&&f.length))return;const{start:c,end:u,delta:d}=s.resolve(e.at,e.ranges.length-1);s.register(i,{max:u,delta:d});const p=h(()=>s.disabled?e.ranges.length-1:Math.max(0,s.current-c+1)),g=h(()=>e.finally==="last"?e.ranges.at(-1):e.finally.toString());le(()=>{if(!n.value)return;let m=e.ranges[p.value]??g.value;const _=m==="hide";n.value.classList.toggle(ye,_),_&&(m=e.ranges[p.value+1]??g.value);const b=n.value.querySelector(".shiki-dark")?Array.from(n.value.querySelectorAll(".shiki")):[n.value],A=e.startLine;for(const P of b){const z=Array.from(P.querySelectorAll("code > .line")),j=ac(z.length+A-1,m);if(z.forEach((W,ct)=>{const K=j.includes(ct+A);W.classList.toggle(Oe,!0),W.classList.toggle("highlighted",K),W.classList.toggle("dishonored",!K)}),e.maxHeight){const W=Array.from(P.querySelectorAll(".line.highlighted"));W.reduce((K,st)=>st.offsetHeight+K,0)>n.value.offsetHeight?W[0].scrollIntoView({behavior:"smooth",block:"start"}):W.length>0&&W[Math.round((W.length-1)/2)].scrollIntoView({behavior:"smooth",block:"center"})}}})});const{copied:a,copy:l}=ia();function o(){var u,d;const c=(d=(u=n.value)==null?void 0:u.querySelector(".slidev-code"))==null?void 0:d.textContent;c&&l(c)}return(c,u)=>{const d=ba,p=wa;return C(),Ne("div",{ref_key:"el",ref:n,class:Ze(["slidev-code-wrapper relative group",{"slidev-code-line-numbers":e.lines}]),style:Kn({"max-height":e.maxHeight,"overflow-y":e.maxHeight?"scroll":void 0,"--start":e.startLine})},[Fe(c.$slots,"default"),y(N).codeCopy?(C(),Ne("button",{key:0,class:"slidev-code-copy absolute top-0 right-0 transition opacity-0 group-hover:opacity-20 hover:!opacity-100",title:y(a)?"Copied":"Copy",onClick:u[0]||(u[0]=g=>o())},[y(a)?(C(),M(d,{key:0,class:"p-2 w-8 h-8"})):(C(),M(p,{key:1,class:"p-2 w-8 h-8"}))],8,rc)):aa("v-if",!0)],6)}}}),We=S(lc,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/builtin/CodeBlockWrapper.vue"]]),oc="/sa2024/06-scalable/assets/05-jib-uHYfMv6U.png",$t=v({layout:"two-cols"}),cc=v({layout:h(()=>$t.layout),transition:h(()=>$t.transition),class:h(()=>$t.class),clicks:h(()=>$t.clicks),name:h(()=>$t.name),preload:h(()=>$t.preload),slide:{index:6,content:"",note:"",title:"Containerization",level:1,noteHTML:"",raw:"",frontmatter:$t,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:76,id:6,no:7},__clicksContext:null,__preloaded:!1}),hc=r("h1",null,"Containerization",-1),uc=r("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[r("code",{class:"language-xml"},[r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"<"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"plugin"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"groupId"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"com.google.cloud.tools"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"artifactId"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"jib-maven-plugin"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"version"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"2.1.0"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"configuration"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"to"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," <"),r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"image"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},">"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"app-pi"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"")])])],-1),dc=r("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[r("code",{class:"language-bash"},[r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"mvn"),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," compile"),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," jib:dockerBuild")])])],-1),pc=r("p",null,[r("br"),r("br"),r("br"),r("br"),r("img",{src:oc,class:"m-5 h-50"})],-1),fc={__name:"7",setup(t){return L($t),E(),(e,s)=>{const n=We;return C(),M(ot,D(T(y(B)(y($t),6))),{right:w(i=>[pc]),default:w(()=>[hc,uc,be(n,we({},{ranges:[]}),{default:w(()=>[dc]),_:1},16)]),_:1},16)}}},gc=S(fc,[["__file","/@slidev/slides/7.md"]]),mc="/sa2024/06-scalable/assets/05-gatling-CZlERI1R.png",_c="/sa2024/06-scalable/assets/05-exp-up-CGk2RS4v.png",Ct=v({layout:"two-cols"}),kc=v({layout:h(()=>Ct.layout),transition:h(()=>Ct.transition),class:h(()=>Ct.class),clicks:h(()=>Ct.clicks),name:h(()=>Ct.name),preload:h(()=>Ct.preload),slide:{index:7,content:"",note:"",title:"垂直扩展实验",level:1,noteHTML:"",raw:"",frontmatter:Ct,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:106,id:7,no:8},__clicksContext:null,__preloaded:!1}),yc=r("h1",null,"垂直扩展实验",-1),vc=r("img",{src:mc,class:"m-20 h-50"},null,-1),bc=r("img",{src:_c,class:"m-5 h-80"},null,-1),wc=r("p",null,[r("a",{href:"https://www.bilibili.com/video/BV1X7411S7yM?p=2",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV1X7411S7yM?p=2"),x(" (20:40)")],-1),xc={__name:"8",setup(t){return L(Ct),E(),(e,s)=>(C(),M(ot,D(T(y(B)(y(Ct),7))),{right:w(n=>[bc,wc]),default:w(()=>[yc,vc]),_:1},16))}},$c=S(xc,[["__file","/@slidev/slides/8.md"]]),Cc="/sa2024/06-scalable/assets/05-scale-out-C0l34FFD.png",At=v({}),Ac=v({layout:h(()=>At.layout),transition:h(()=>At.transition),class:h(()=>At.class),clicks:h(()=>At.clicks),name:h(()=>At.name),preload:h(()=>At.preload),slide:{index:8,content:"",note:"",title:"垂直 vs. 水平扩展(Scale Out)",level:1,noteHTML:"",raw:"",frontmatter:At,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:120,id:8,no:9},__clicksContext:null,__preloaded:!1}),Sc=r("h1",null,"垂直 vs. 水平扩展(Scale Out)",-1),Mc=r("img",{src:Cc,class:"m-5 h-80"},null,-1),Ec={__name:"9",setup(t){return L(At),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(At),8))),{default:w(()=>[Sc,Mc]),_:1},16))}},Pc=S(Ec,[["__file","/@slidev/slides/9.md"]]),Dc="/sa2024/06-scalable/assets/05-lb-SSvWQota.png",St=v({layout:"two-cols"}),Tc=v({layout:h(()=>St.layout),transition:h(()=>St.transition),class:h(()=>St.class),clicks:h(()=>St.clicks),name:h(()=>St.name),preload:h(()=>St.preload),slide:{index:9,content:"",note:"",title:"水平扩展",level:1,noteHTML:"",raw:"",frontmatter:St,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:126,id:9,no:10},__clicksContext:null,__preloaded:!1}),Lc=r("h1",null,"水平扩展",-1),Bc=r("p",null,[r("br"),r("br"),r("br")],-1),Oc=r("blockquote",null,[r("p",null,[x("负载平衡是一种计算机技术,用来在多个计算机、网络连接、CPU、磁盘驱动器或其他资源中分配负载,以达到最优化资源使用、最大化吞吐率、最小化响应时间、同时避免过载的目的。 使用带有负载平衡的多个服务器组件,取代单一的组件,可以通过冗余提高可靠性。负载平衡服务通常是由专用软件和硬件来完成。 "),r("br")])],-1),Ic=r("div",{style:{"text-align":"right"}},"https://zh.wikipedia.org/zh-cn/负载均衡",-1),Hc=r("p",null,[r("br"),r("br"),r("br"),r("br"),r("img",{src:Dc,class:"m-5 h-60"})],-1),Nc={__name:"10",setup(t){return L(St),E(),(e,s)=>(C(),M(ot,D(T(y(B)(y(St),9))),{right:w(n=>[Hc]),default:w(()=>[Lc,Bc,Oc,Ic]),_:1},16))}},Fc=S(Nc,[["__file","/@slidev/slides/10.md"]]),Rc="/sa2024/06-scalable/assets/05-nslookup-CzF82Wf7.png",jc="/sa2024/06-scalable/assets/05-dnsrr-BK8pi5DW.png",Mt=v({layout:"two-cols"}),Uc=v({layout:h(()=>Mt.layout),transition:h(()=>Mt.transition),class:h(()=>Mt.class),clicks:h(()=>Mt.clicks),name:h(()=>Mt.name),preload:h(()=>Mt.preload),slide:{index:10,content:"",note:"",title:"DNS Round Robin",level:1,noteHTML:"",raw:"",frontmatter:Mt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:141,id:10,no:11},__clicksContext:null,__preloaded:!1}),zc=r("h1",null,"DNS Round Robin",-1),Wc=r("img",{src:Rc,class:"m-5 h-40"},null,-1),Vc=r("ul",null,[r("li",null,"优点:简单"),r("li",null,"缺点:难以控制(DNS刷新延迟)")],-1),qc=r("p",null,[r("br"),r("br"),r("img",{src:jc,class:"m-5 h-60"})],-1),Yc={__name:"11",setup(t){return L(Mt),E(),(e,s)=>(C(),M(ot,D(T(y(B)(y(Mt),10))),{right:w(n=>[qc]),default:w(()=>[zc,Wc,Vc]),_:1},16))}},Kc=S(Yc,[["__file","/@slidev/slides/11.md"]]),Gc="/sa2024/06-scalable/assets/05-lb347-CHBPpRWG.png",Et=v({}),Zc=v({layout:h(()=>Et.layout),transition:h(()=>Et.transition),class:h(()=>Et.class),clicks:h(()=>Et.clicks),name:h(()=>Et.name),preload:h(()=>Et.preload),slide:{index:11,content:"",note:"",title:"L3/L4/L7 Load Balancing",level:1,noteHTML:"",raw:"",frontmatter:Et,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:158,id:11,no:12},__clicksContext:null,__preloaded:!1}),Xc=r("h1",null,"L3/L4/L7 Load Balancing",-1),Jc=r("img",{src:Gc,class:"m-10 h-80"},null,-1),Qc={__name:"12",setup(t){return L(Et),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Et),11))),{default:w(()=>[Xc,Jc]),_:1},16))}},th=S(Qc,[["__file","/@slidev/slides/12.md"]]),yi="/sa2024/06-scalable/assets/05-lb-simple-C_LK4xk9.png",eh="/sa2024/06-scalable/assets/05-lb-l3-DBZvBmdt.png",Pt=v({layout:"two-cols"}),sh=v({layout:h(()=>Pt.layout),transition:h(()=>Pt.transition),class:h(()=>Pt.class),clicks:h(()=>Pt.clicks),name:h(()=>Pt.name),preload:h(()=>Pt.preload),slide:{index:12,content:"",note:"",title:"L3 负载均衡",level:1,noteHTML:"",raw:"",frontmatter:Pt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:165,id:12,no:13},__clicksContext:null,__preloaded:!1}),nh=r("h1",null,"L3 负载均衡",-1),ih=r("br",null,null,-1),ah=r("img",{src:yi,class:"m-10 h-20"},null,-1),rh=r("br",null,null,-1),lh=r("ul",null,[r("li",null,"优点:可控"),r("li",null,"缺点:网络部署相对复杂")],-1),oh=r("p",null,[r("br"),r("br"),r("br")],-1),ch=r("img",{src:eh,class:"m-20 h-60"},null,-1),hh={__name:"13",setup(t){return L(Pt),E(),(e,s)=>(C(),M(ot,D(T(y(B)(y(Pt),12))),{right:w(n=>[oh,ch]),default:w(()=>[nh,ih,ah,rh,lh]),_:1},16))}},uh=S(hh,[["__file","/@slidev/slides/13.md"]]),dh="/sa2024/06-scalable/assets/05-lb-l4-DfzXSXlQ.png",Dt=v({}),ph=v({layout:h(()=>Dt.layout),transition:h(()=>Dt.transition),class:h(()=>Dt.class),clicks:h(()=>Dt.clicks),name:h(()=>Dt.name),preload:h(()=>Dt.preload),slide:{index:13,content:"",note:"",title:"L4负载均衡",level:1,noteHTML:"",raw:"",frontmatter:Dt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:185,id:13,no:14},__clicksContext:null,__preloaded:!1}),fh=r("h1",null,"L4负载均衡",-1),gh=r("br",null,null,-1),mh=r("img",{src:yi,class:"m-5 h-30"},null,-1),_h=r("br",null,null,-1),kh=r("img",{src:dh,class:"m-5 h-30"},null,-1),yh={__name:"14",setup(t){return L(Dt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Dt),13))),{default:w(()=>[fh,gh,mh,_h,kh]),_:1},16))}},vh=S(yh,[["__file","/@slidev/slides/14.md"]]),bh="/sa2024/06-scalable/assets/05-haproxy-YJHp5RCO.png",Tt=v({layout:"two-cols"}),wh=v({layout:h(()=>Tt.layout),transition:h(()=>Tt.transition),class:h(()=>Tt.class),clicks:h(()=>Tt.clicks),name:h(()=>Tt.name),preload:h(()=>Tt.preload),slide:{index:14,content:"",note:"",title:"HAProxy",level:1,noteHTML:"",raw:"",frontmatter:Tt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:193,id:14,no:15},__clicksContext:null,__preloaded:!1}),xh=r("h1",null,"HAProxy",-1),$h=r("p",null,[r("small",null,"HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。 GitHub、Bitbucket、Stack Overflow、Reddit、Tumblr、Twitter和 Tuenti在内的知名网站,及亚马逊网络服务系统都使用了HAProxy。")],-1),Ch=r("p",null,[r("a",{href:"http://www.haproxy.org/",target:"_blank",rel:"noopener"},"http://www.haproxy.org/")],-1),Ah=r("p",null,[r("br"),r("br"),r("br")],-1),Sh=r("img",{src:bh,class:"m-5 h-50"},null,-1),Mh={__name:"15",setup(t){return L(Tt),E(),(e,s)=>(C(),M(ot,D(T(y(B)(y(Tt),14))),{right:w(n=>[Ah,Sh]),default:w(()=>[xh,$h,Ch]),_:1},16))}},Eh=S(Mh,[["__file","/@slidev/slides/15.md"]]),Lt=v({}),Ph=v({layout:h(()=>Lt.layout),transition:h(()=>Lt.transition),class:h(()=>Lt.class),clicks:h(()=>Lt.clicks),name:h(()=>Lt.name),preload:h(()=>Lt.preload),slide:{index:15,content:"",note:"",title:"HAProxy",level:1,noteHTML:"",raw:"",frontmatter:Lt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:211,id:15,no:16},__clicksContext:null,__preloaded:!1}),Dh=r("h1",null,"HAProxy",-1),Th=r("ul",null,[r("li",null,"HAProxy大量利用操作系统本身的功能特性,使得其在处理请求时能发挥极高的性能,通常情况下,HAProxy自身只占用15%的处理时间,剩余的85%都是在系统内核层完成的。"),r("li",null,"作者在2009年使用1.4版本进行了一次测试,单个HAProxy进程的处理能力突破了10万请求/秒,并轻松占满了10Gbps的网络带宽。"),r("li",null,"作为建议以单进程模式运行的程序,HAProxy对稳定性的要求是十分严苛的。按照作者的说法,HAProxy在十几年间从未出现过一个会导致其崩溃的BUG,HAProxy一旦成功启动,除非操作系统或硬件故障,否则就不会崩溃。")],-1),Lh={__name:"16",setup(t){return L(Lt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Lt),15))),{default:w(()=>[Dh,Th]),_:1},16))}},Bh=S(Lh,[["__file","/@slidev/slides/16.md"]]),Oh="/sa2024/06-scalable/assets/05-exp-haproxy-CO-RA8Ix.png",Bt=v({}),Ih=v({layout:h(()=>Bt.layout),transition:h(()=>Bt.transition),class:h(()=>Bt.class),clicks:h(()=>Bt.clicks),name:h(()=>Bt.name),preload:h(()=>Bt.preload),slide:{index:16,content:"",note:"",title:"L4 实验: HAProxy(TCP mode)",level:1,noteHTML:"",raw:"",frontmatter:Bt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:219,id:16,no:17},__clicksContext:null,__preloaded:!1}),Hh=r("h1",null,"L4 实验: HAProxy(TCP mode)",-1),Nh=r("img",{src:Oh,class:"m-5 h-30"},null,-1),Fh=r("p",null,[r("a",{href:"https://www.bilibili.com/video/BV1X7411S7yM?p=3",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV1X7411S7yM?p=3"),x(" (23:00)")],-1),Rh=r("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[r("code",{class:"language-"},[r("span",{class:"line"},[r("span",null,"defaults")]),x(` -`),r("span",{class:"line"},[r("span",null," mode tcp")]),x(` -`),r("span",{class:"line"},[r("span",null,"frontend lb-app-pi")]),x(` -`),r("span",{class:"line"},[r("span",null," bind *:8080")]),x(` -`),r("span",{class:"line"},[r("span",null," default_backend servers")]),x(` -`),r("span",{class:"line"},[r("span",null,"backend servers")]),x(` -`),r("span",{class:"line"},[r("span",null," balance roundrobin")]),x(` -`),r("span",{class:"line"},[r("span",null," server server1 localhost:8081")]),x(` -`),r("span",{class:"line"},[r("span",null," ...")])])],-1),jh={__name:"17",setup(t){return L(Bt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Bt),16))),{default:w(()=>[Hh,Nh,Fh,Rh]),_:1},16))}},Uh=S(jh,[["__file","/@slidev/slides/17.md"]]),zh="/sa2024/06-scalable/assets/05-cache-EhhiBFw-.png",Ot=v({}),Wh=v({layout:h(()=>Ot.layout),transition:h(()=>Ot.transition),class:h(()=>Ot.class),clicks:h(()=>Ot.clicks),name:h(()=>Ot.name),preload:h(()=>Ot.preload),slide:{index:17,content:"",note:"",title:"Cache missing",level:1,noteHTML:"",raw:"",frontmatter:Ot,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:241,id:17,no:18},__clicksContext:null,__preloaded:!1}),Vh=r("h1",null,"Cache missing",-1),qh=r("img",{src:zh,class:"m-20 h-80"},null,-1),Yh={__name:"18",setup(t){return L(Ot),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Ot),17))),{default:w(()=>[Vh,qh]),_:1},16))}},Kh=S(Yh,[["__file","/@slidev/slides/18.md"]]),Gh="/sa2024/06-scalable/assets/05-cache-server-Cin3ILZT.png",It=v({}),Zh=v({layout:h(()=>It.layout),transition:h(()=>It.transition),class:h(()=>It.class),clicks:h(()=>It.clicks),name:h(()=>It.name),preload:h(()=>It.preload),slide:{index:18,content:"",note:"",title:"Cache Server",level:1,noteHTML:"",raw:"",frontmatter:It,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:248,id:18,no:19},__clicksContext:null,__preloaded:!1}),Xh=r("h1",null,"Cache Server",-1),Jh=r("img",{src:Gh,class:"m-20 h-80"},null,-1),Qh={__name:"19",setup(t){return L(It),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(It),18))),{default:w(()=>[Xh,Jh]),_:1},16))}},tu=S(Qh,[["__file","/@slidev/slides/19.md"]]),eu="/sa2024/06-scalable/assets/05-spring-cache-Cet2aHIV.png",Ht=v({}),su=v({layout:h(()=>Ht.layout),transition:h(()=>Ht.transition),class:h(()=>Ht.class),clicks:h(()=>Ht.clicks),name:h(()=>Ht.name),preload:h(()=>Ht.preload),slide:{index:19,content:"",note:"",title:"Spring Caching",level:1,noteHTML:"",raw:"",frontmatter:Ht,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:255,id:19,no:20},__clicksContext:null,__preloaded:!1}),nu=r("h1",null,"Spring Caching",-1),iu=r("img",{src:eu,class:"m-5 h-80"},null,-1),au=r("p",null,[r("a",{href:"https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-features.html#boot-features-caching",target:"_blank",rel:"noopener"},"https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-features.html#boot-features-caching")],-1),ru={__name:"20",setup(t){return L(Ht),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Ht),19))),{default:w(()=>[nu,iu,au]),_:1},16))}},lu=S(ru,[["__file","/@slidev/slides/20.md"]]),ou="/sa2024/06-scalable/assets/05-caching-846YJ8cZ.png",Nt=v({layout:"two-cols"}),cu=v({layout:h(()=>Nt.layout),transition:h(()=>Nt.transition),class:h(()=>Nt.class),clicks:h(()=>Nt.clicks),name:h(()=>Nt.name),preload:h(()=>Nt.preload),slide:{index:20,content:"",note:"",title:"Caching",level:1,noteHTML:"",raw:"",frontmatter:Nt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:263,id:20,no:21},__clicksContext:null,__preloaded:!1}),hu=r("h1",null,"Caching",-1),uu=r("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[r("code",{class:"language-java"},[r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#4D9375","--shiki-light":"#1E754F"}},"import"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," org"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"springframework"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"cache"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"annotation"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"."),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"Cacheable"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},";")]),x(` -`),r("span",{class:"line"}),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," ")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," @"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"Cacheable"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"“pi"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},")")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," public double calculatePi(double n) {")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," double pi = 0;")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," for (int i = 1; i < n; i++) {")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," pi += Math.pow(-1, i + 1) / (2 * i - 1);")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," }")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," return 4 * pi;")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," }")])])],-1),du=r("p",null,[r("br"),r("br"),r("br"),r("img",{src:ou,class:"m-5 h-50"})],-1),pu={__name:"21",setup(t){return L(Nt),E(),(e,s)=>{const n=We;return C(),M(ot,D(T(y(B)(y(Nt),20))),{right:w(i=>[du]),default:w(()=>[hu,be(n,we({},{ranges:[]}),{default:w(()=>[uu]),_:1},16)]),_:1},16)}}},fu=S(pu,[["__file","/@slidev/slides/21.md"]]),gu="/sa2024/06-scalable/assets/05-cache-redis-BZh8cmdK.png",Ft=v({}),mu=v({layout:h(()=>Ft.layout),transition:h(()=>Ft.transition),class:h(()=>Ft.class),clicks:h(()=>Ft.clicks),name:h(()=>Ft.name),preload:h(()=>Ft.preload),slide:{index:21,content:"",note:"",title:"Spring Boot with Redis Cache",level:1,noteHTML:"",raw:"",frontmatter:Ft,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:289,id:21,no:22},__clicksContext:null,__preloaded:!1}),_u=r("h1",null,"Spring Boot with Redis Cache",-1),ku=r("br",null,null,-1),yu=r("img",{src:gu,class:"m-5 h-70"},null,-1),vu=r("p",null,[r("a",{href:"https://www.bilibili.com/video/BV17g4y1871A?p=1",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV17g4y1871A?p=1")],-1),bu=r("div",{style:{"text-align":"right"}},"sa-spring/spring-cache-redis ",-1),wu={__name:"22",setup(t){return L(Ft),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Ft),21))),{default:w(()=>[_u,ku,yu,vu,bu]),_:1},16))}},xu=S(wu,[["__file","/@slidev/slides/22.md"]]),$u="/sa2024/06-scalable/assets/05-cache-cluster-Ditv28-K.png",Rt=v({}),Cu=v({layout:h(()=>Rt.layout),transition:h(()=>Rt.transition),class:h(()=>Rt.class),clicks:h(()=>Rt.clicks),name:h(()=>Rt.name),preload:h(()=>Rt.preload),slide:{index:22,content:"",note:"",title:"Cache Cluster",level:1,noteHTML:"",raw:"",frontmatter:Rt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:302,id:22,no:23},__clicksContext:null,__preloaded:!1}),Au=r("h1",null,"Cache Cluster",-1),Su=r("ul",null,[r("li",null,"使用多个存储节点"),r("li",null,[x("数据分区/Data Partition? "),r("ul",null,[r("li",null,"哈希Hash Partitioning"),r("li",null,"一致性哈希Consistent Hashing")])])],-1),Mu=r("img",{src:$u,class:"m-5 h-70"},null,-1),Eu={__name:"23",setup(t){return L(Rt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Rt),22))),{default:w(()=>[Au,Su,Mu]),_:1},16))}},Pu=S(Eu,[["__file","/@slidev/slides/23.md"]]),jt=v({}),Du=v({layout:h(()=>jt.layout),transition:h(()=>jt.transition),class:h(()=>jt.class),clicks:h(()=>jt.clicks),name:h(()=>jt.name),preload:h(()=>jt.preload),slide:{index:23,content:"",note:"",title:"Hash Partitioning",level:1,noteHTML:"",raw:"",frontmatter:jt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:314,id:23,no:24},__clicksContext:null,__preloaded:!1}),Tu=r("h1",null,"Hash Partitioning",-1),Lu=r("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[r("code",{class:"language-python"},[r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},"def"),r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}}," set"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"key"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," value"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," servers"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"):")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," n "),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}}," len"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"servers"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," index "),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}}," hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"key"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," %"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," n")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," servers"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"["),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"index"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"]."),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"set"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}},"key"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},","),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," value"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")")])])],-1),Bu=r("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[r("code",{class:"language-python"},[r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#758575DD","--shiki-light":"#A0ADA0"}},"# base case # adding one node (3+1) # removing one node (3-1)")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},">>>"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," n "),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 3"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," >>>"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," n "),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 4"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," >>>"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," n "),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"="),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 2")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},">>>"),r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}}," hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"key1"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," %"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," n "),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},">>>"),r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}}," hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"key1"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," %"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," n "),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},">>>"),r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}}," hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"key1"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," %"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," n")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}},"1"),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 2"),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 0")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},">>>"),r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}}," hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"key2"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," %"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," n "),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},">>>"),r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}}," hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"key2"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," %"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," n "),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}},">>>"),r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}}," hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"key2"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},"'"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#CB7676","--shiki-light":"#AB5959"}}," %"),r("span",{style:{"--shiki-dark":"#DBD7CAEE","--shiki-light":"#393A34"}}," n")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}},"0"),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 1"),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 1")])])],-1),Ou={__name:"24",setup(t){return L(jt),E(),(e,s)=>{const n=We;return C(),M(F,D(T(y(B)(y(jt),23))),{default:w(()=>[Tu,be(n,we({},{ranges:[]}),{default:w(()=>[Lu]),_:1},16),be(n,we({},{ranges:[]}),{default:w(()=>[Bu]),_:1},16)]),_:1},16)}}},Iu=S(Ou,[["__file","/@slidev/slides/24.md"]]),Ut=v({}),Hu=v({layout:h(()=>Ut.layout),transition:h(()=>Ut.transition),class:h(()=>Ut.class),clicks:h(()=>Ut.clicks),name:h(()=>Ut.name),preload:h(()=>Ut.preload),slide:{index:24,content:"",note:"",title:"Consistent Hashing",level:1,noteHTML:"",raw:"",frontmatter:Ut,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:333,id:24,no:25},__clicksContext:null,__preloaded:!1}),Nu=r("h1",null,"Consistent Hashing",-1),Fu=r("p",null,"Consistent hashing is based on mapping each object to a point on the edge of a circle (or equivalently, mapping each object to a real angle). The system maps each available machine (or other storage bucket) to many pseudo-randomly distributed points on the edge of the same circle.",-1),Ru=r("div",{style:{"text-align":"right"}},"https://en.wikipedia.org/wiki/Consistent_hashing",-1),ju=r("p",null,"相关概念:Distributed hash table",-1),Uu=r("div",{style:{"text-align":"right"}},"https://en.wikipedia.org/wiki/Distributed_hash_table",-1),zu={__name:"25",setup(t){return L(Ut),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Ut),24))),{default:w(()=>[Nu,Fu,Ru,ju,Uu]),_:1},16))}},Wu=S(zu,[["__file","/@slidev/slides/25.md"]]),Vu="/sa2024/06-scalable/assets/05-consistent-hashing-DuTq1ftT.png",zt=v({layout:"two-cols"}),qu=v({layout:h(()=>zt.layout),transition:h(()=>zt.transition),class:h(()=>zt.class),clicks:h(()=>zt.clicks),name:h(()=>zt.name),preload:h(()=>zt.preload),slide:{index:25,content:"",note:"",title:"Consistent Hashing",level:1,noteHTML:"",raw:"",frontmatter:zt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:344,id:25,no:26},__clicksContext:null,__preloaded:!1}),Yu=r("h1",null,"Consistent Hashing",-1),Ku=r("p",null,"将Server标识与数据键映射到同一个值域空间",-1),Gu=r("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[r("code",{class:"language-python"},[r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"server-1"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 3")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"server-2"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 7")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"server-3"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 11")]),x(` -`),r("span",{class:"line"}),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"testkey-1"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 3")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"testkey-2"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 4")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"testkey-3"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 8")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#B8A965","--shiki-light":"#998418"}},"hash"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},"("),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}},"testkey-4"),r("span",{style:{"--shiki-dark":"#C98A7D99","--shiki-light":"#B5695999"}},'"'),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}},")"),r("span",{style:{"--shiki-dark":"#666666","--shiki-light":"#999999"}}," ="),r("span",{style:{"--shiki-dark":"#4C9A91","--shiki-light":"#2F798A"}}," 12")])])],-1),Zu=r("p",null,[r("br"),r("br"),r("img",{src:Vu,class:"m-5 h-70"})],-1),Xu={__name:"26",setup(t){return L(zt),E(),(e,s)=>(C(),M(ot,D(T(y(B)(y(zt),25))),{right:w(n=>[Zu]),default:w(()=>[Yu,Ku,Gu]),_:1},16))}},Ju=S(Xu,[["__file","/@slidev/slides/26.md"]]),vi="/sa2024/06-scalable/assets/05-cache-redis-cluster-B8n1awY2.png",Wt=v({}),Qu=v({layout:h(()=>Wt.layout),transition:h(()=>Wt.transition),class:h(()=>Wt.class),clicks:h(()=>Wt.clicks),name:h(()=>Wt.name),preload:h(()=>Wt.preload),slide:{index:26,content:"",note:"",title:"Spring Boot with Redis Cluster",level:1,noteHTML:"",raw:"",frontmatter:Wt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:368,id:26,no:27},__clicksContext:null,__preloaded:!1}),td=r("h1",null,"Spring Boot with Redis Cluster",-1),ed=r("br",null,null,-1),sd=r("img",{src:vi,class:"m-5 h-70"},null,-1),nd=r("p",null,[r("a",{href:"https://www.bilibili.com/video/BV17g4y1871A?p=2",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV17g4y1871A?p=2"),x(" 14:40")],-1),id={__name:"27",setup(t){return L(Wt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Wt),26))),{default:w(()=>[td,ed,sd,nd]),_:1},16))}},ad=S(id,[["__file","/@slidev/slides/27.md"]]),rd="/sa2024/06-scalable/assets/05-redis-create-auto-CF7_nNKX.png",ld="/sa2024/06-scalable/assets/05-redis-download-BaUV66gY.png",Vt=v({layout:"two-cols"}),od=v({layout:h(()=>Vt.layout),transition:h(()=>Vt.transition),class:h(()=>Vt.class),clicks:h(()=>Vt.clicks),name:h(()=>Vt.name),preload:h(()=>Vt.preload),slide:{index:27,content:"",note:"",title:"Redis Cluster",level:1,noteHTML:"",raw:"",frontmatter:Vt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:378,id:27,no:28},__clicksContext:null,__preloaded:!1}),cd=r("h1",null,"Redis Cluster",-1),hd=r("br",null,null,-1),ud=r("p",null,"自动创建",-1),dd=r("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[r("code",{class:"language-sh"},[r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"edis-5.0.8/utils/create-cluster>"),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," ./create-cluster"),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," start")]),x(` -`),r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"redis-5.0.8/utils/create-cluster>"),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," ./create-cluster"),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," create")])])],-1),pd=r("img",{src:rd,class:"m-5 h-40"},null,-1),fd=r("br",null,null,-1),gd=r("img",{src:ld,class:"m-5 h-80"},null,-1),md=r("div",{style:{"text-align":"right"}},"https://redis.io/download#installation",-1),_d={__name:"28",setup(t){return L(Vt),E(),(e,s)=>{const n=We;return C(),M(ot,D(T(y(B)(y(Vt),27))),{right:w(i=>[fd,gd,md]),default:w(()=>[cd,hd,ud,be(n,we({},{ranges:[]}),{default:w(()=>[dd]),_:1},16),pd]),_:1},16)}}},kd=S(_d,[["__file","/@slidev/slides/28.md"]]),yd="/sa2024/06-scalable/assets/05-redis-create-conf-ltYIXHfe.png",vd="/sa2024/06-scalable/assets/05-redis-cluster-manual-xKehjmN2.png",qt=v({layout:"two-cols"}),bd=v({layout:h(()=>qt.layout),transition:h(()=>qt.transition),class:h(()=>qt.class),clicks:h(()=>qt.clicks),name:h(()=>qt.name),preload:h(()=>qt.preload),slide:{index:28,content:"",note:"",title:"Redis Cluster",level:1,noteHTML:"",raw:"",frontmatter:qt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:403,id:28,no:29},__clicksContext:null,__preloaded:!1}),wd=r("h1",null,"Redis Cluster",-1),xd=r("br",null,null,-1),$d=r("pre",{class:"shiki shiki-themes vitesse-dark vitesse-light slidev-code",style:{"--shiki-dark":"#dbd7caee","--shiki-light":"#393a34","--shiki-dark-bg":"#121212","--shiki-light-bg":"#ffffff"}},[r("code",{class:"language-bash"},[r("span",{class:"line"},[r("span",{style:{"--shiki-dark":"#80A665","--shiki-light":"#59873A"}},"redis-server"),r("span",{style:{"--shiki-dark":"#C98A7D","--shiki-light":"#B56959"}}," ./redis.conf")])])],-1),Cd=r("img",{src:yd,class:"m-5 h-40"},null,-1),Ad=r("img",{src:vd,class:"m-5 h-40"},null,-1),Sd=r("div",{style:{"text-align":"right"}},"https://redis.io/topics/cluster-tutorial",-1),Md={__name:"29",setup(t){return L(qt),E(),(e,s)=>{const n=We;return C(),M(ot,D(T(y(B)(y(qt),28))),{right:w(i=>[Ad,Sd]),default:w(()=>[wd,xd,x(" 手动创建 "),be(n,we({},{ranges:[]}),{default:w(()=>[$d]),_:1},16),Cd]),_:1},16)}}},Ed=S(Md,[["__file","/@slidev/slides/29.md"]]),Pd="/sa2024/06-scalable/assets/05-redis-hash-slots-DQSPPdvj.png",Yt=v({}),Dd=v({layout:h(()=>Yt.layout),transition:h(()=>Yt.transition),class:h(()=>Yt.class),clicks:h(()=>Yt.clicks),name:h(()=>Yt.name),preload:h(()=>Yt.preload),slide:{index:29,content:"",note:"",title:"Redis Slots",level:1,noteHTML:"",raw:"",frontmatter:Yt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:426,id:29,no:30},__clicksContext:null,__preloaded:!1}),Td=r("h1",null,"Redis Slots",-1),Ld=r("br",null,null,-1),Bd=r("img",{src:Pd,class:"m-5 h-80"},null,-1),Od={__name:"30",setup(t){return L(Yt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Yt),29))),{default:w(()=>[Td,Ld,Bd]),_:1},16))}},Id=S(Od,[["__file","/@slidev/slides/30.md"]]),Kt=v({}),Hd=v({layout:h(()=>Kt.layout),transition:h(()=>Kt.transition),class:h(()=>Kt.class),clicks:h(()=>Kt.clicks),name:h(()=>Kt.name),preload:h(()=>Kt.preload),slide:{index:30,content:"",note:"",title:"Spring Boot with Redis Cluster",level:1,noteHTML:"",raw:"",frontmatter:Kt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:438,id:30,no:31},__clicksContext:null,__preloaded:!1}),Nd=r("h1",null,"Spring Boot with Redis Cluster",-1),Fd=r("br",null,null,-1),Rd=r("img",{src:vi,class:"m-5 h-80"},null,-1),jd=r("div",{style:{"text-align":"right"}},"sa-spring/spring-cache-redis-cluster",-1),Ud={__name:"31",setup(t){return L(Kt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Kt),30))),{default:w(()=>[Nd,Fd,Rd,jd]),_:1},16))}},zd=S(Ud,[["__file","/@slidev/slides/31.md"]]),Wd="/sa2024/06-scalable/assets/05-session-Di7buRZv.png",Gt=v({layout:"two-cols"}),Vd=v({layout:h(()=>Gt.layout),transition:h(()=>Gt.transition),class:h(()=>Gt.class),clicks:h(()=>Gt.clicks),name:h(()=>Gt.name),preload:h(()=>Gt.preload),slide:{index:31,content:"",note:"",title:"Cookies and Sessions",level:1,noteHTML:"",raw:"",frontmatter:Gt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:447,id:31,no:32},__clicksContext:null,__preloaded:!1}),qd=r("h1",null,"Cookies and Sessions",-1),Yd=r("br",null,null,-1),Kd=r("p",null,[x("相关概念:Spring Bean Scope ("),r("a",{href:"https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/core.html#beans-factory-scopes",target:"_blank",rel:"noopener"},"https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/core.html#beans-factory-scopes"),x(")")],-1),Gd=r("p",null,[r("br"),r("br"),r("br"),r("img",{src:Wd,class:"m-5 h-70"})],-1),Zd={__name:"32",setup(t){return L(Gt),E(),(e,s)=>(C(),M(ot,D(T(y(B)(y(Gt),31))),{right:w(n=>[Gd]),default:w(()=>[qd,Yd,x(" 会话(session)是一种持久网络协议,在用户(或用户代理)端和服务器端之间创建关联,从而起到交换数据包的作用机制,session在网络协议中是非常重要的部分。在不包含会话层或者是无法长时间驻留会话层的传输协议中,会话的维持需要依靠在传输数据中的高级别程序。HTTP cookie就会被用来包含一些相关的信息,例如session ID,参数和权限信息等。 "),Kd]),_:1},16))}},Xd=S(Zd,[["__file","/@slidev/slides/32.md"]]),Jd="/sa2024/06-scalable/assets/05-session-cluster-DYYKMZqY.png",Zt=v({}),Qd=v({layout:h(()=>Zt.layout),transition:h(()=>Zt.transition),class:h(()=>Zt.class),clicks:h(()=>Zt.clicks),name:h(()=>Zt.name),preload:h(()=>Zt.preload),slide:{index:32,content:"",note:"",title:"Session",level:1,noteHTML:"",raw:"",frontmatter:Zt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:464,id:32,no:33},__clicksContext:null,__preloaded:!1}),tp=r("h1",null,"Session",-1),ep=r("br",null,null,-1),sp=r("img",{src:Jd,class:"m-5 h-80"},null,-1),np={__name:"33",setup(t){return L(Zt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Zt),32))),{default:w(()=>[tp,ep,sp]),_:1},16))}},ip=S(np,[["__file","/@slidev/slides/33.md"]]),ap="/sa2024/06-scalable/assets/05-session-stickiness-C7HR9ZNC.png",Xt=v({}),rp=v({layout:h(()=>Xt.layout),transition:h(()=>Xt.transition),class:h(()=>Xt.class),clicks:h(()=>Xt.clicks),name:h(()=>Xt.name),preload:h(()=>Xt.preload),slide:{index:33,content:"",note:"",title:"Session Stickiness",level:1,noteHTML:"",raw:"",frontmatter:Xt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:473,id:33,no:34},__clicksContext:null,__preloaded:!1}),lp=r("h1",null,"Session Stickiness",-1),op=r("br",null,null,-1),cp=r("img",{src:ap,class:"m-5 h-80"},null,-1),hp=r("p",null,[r("a",{href:"https://www.haproxy.com/blog/load-balancing-affinity-persistence-sticky-sessions-what-you-need-to-know/",target:"_blank",rel:"noopener"},"https://www.haproxy.com/blog/load-balancing-affinity-persistence-sticky-sessions-what-you-need-to-know/")],-1),up={__name:"34",setup(t){return L(Xt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Xt),33))),{default:w(()=>[lp,op,cp,hp]),_:1},16))}},dp=S(up,[["__file","/@slidev/slides/34.md"]]),pp="/sa2024/06-scalable/assets/05-tomcat-cluster-A2_PCDkn.png",Jt=v({}),fp=v({layout:h(()=>Jt.layout),transition:h(()=>Jt.transition),class:h(()=>Jt.class),clicks:h(()=>Jt.clicks),name:h(()=>Jt.name),preload:h(()=>Jt.preload),slide:{index:34,content:"",note:"",title:"Tomcat Cluster",level:1,noteHTML:"",raw:"",frontmatter:Jt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:485,id:34,no:35},__clicksContext:null,__preloaded:!1}),gp=r("h1",null,"Tomcat Cluster",-1),mp=r("br",null,null,-1),_p=r("img",{src:pp,class:"m-5 h-80"},null,-1),kp=r("p",null,"Session Replication /Web Farming",-1),yp={__name:"35",setup(t){return L(Jt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Jt),34))),{default:w(()=>[gp,mp,_p,kp]),_:1},16))}},vp=S(yp,[["__file","/@slidev/slides/35.md"]]),bp="/sa2024/06-scalable/assets/05-session-jdbc-idxYzz6G.png",Qt=v({}),wp=v({layout:h(()=>Qt.layout),transition:h(()=>Qt.transition),class:h(()=>Qt.class),clicks:h(()=>Qt.clicks),name:h(()=>Qt.name),preload:h(()=>Qt.preload),slide:{index:35,content:"",note:"",title:"Spring Session with JDBC",level:1,noteHTML:"",raw:"",frontmatter:Qt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:496,id:35,no:36},__clicksContext:null,__preloaded:!1}),xp=r("h1",null,"Spring Session with JDBC",-1),$p=r("br",null,null,-1),Cp=r("img",{src:bp,class:"m-5 h-80"},null,-1),Ap=r("p",null,[r("a",{href:"https://www.bilibili.com/video/BV17g4y1871A?p=3",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV17g4y1871A?p=3"),x(" 6:40")],-1),Sp=r("div",{style:{"text-align":"right"}},"sa-spring/spring-session-jdbc",-1),Mp={__name:"36",setup(t){return L(Qt),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(Qt),35))),{default:w(()=>[xp,$p,Cp,Ap,Sp]),_:1},16))}},Ep=S(Mp,[["__file","/@slidev/slides/36.md"]]),Pp="/sa2024/06-scalable/assets/05-session-redis-DYMGsWTE.png",te=v({}),Dp=v({layout:h(()=>te.layout),transition:h(()=>te.transition),class:h(()=>te.class),clicks:h(()=>te.clicks),name:h(()=>te.name),preload:h(()=>te.preload),slide:{index:36,content:"",note:"",title:"Spring Session with Redis",level:1,noteHTML:"",raw:"",frontmatter:te,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:510,id:36,no:37},__clicksContext:null,__preloaded:!1}),Tp=r("h1",null,"Spring Session with Redis",-1),Lp=r("br",null,null,-1),Bp=r("img",{src:Pp,class:"m-5 h-80"},null,-1),Op=r("p",null,[r("a",{href:"https://www.bilibili.com/video/BV17g4y1871A?p=4",target:"_blank",rel:"noopener"},"https://www.bilibili.com/video/BV17g4y1871A?p=4"),x(" (0:10)")],-1),Ip=r("div",{style:{"text-align":"right"}},"sa-spring/spring-session-redis",-1),Hp={__name:"37",setup(t){return L(te),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(te),36))),{default:w(()=>[Tp,Lp,Bp,Op,Ip]),_:1},16))}},Np=S(Hp,[["__file","/@slidev/slides/37.md"]]),Fp="/sa2024/06-scalable/assets/05-aosa-CHolCvXF.jpg",ee=v({}),Rp=v({layout:h(()=>ee.layout),transition:h(()=>ee.transition),class:h(()=>ee.class),clicks:h(()=>ee.clicks),name:h(()=>ee.name),preload:h(()=>ee.preload),slide:{index:37,content:"",note:"",title:"Scalable Web Architecture and Distributed Systems",level:3,noteHTML:"",raw:"",frontmatter:ee,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:525,id:37,no:38},__clicksContext:null,__preloaded:!1}),jp=r("h3",null,"Scalable Web Architecture and Distributed Systems",-1),Up=r("br",null,null,-1),zp=r("img",{src:Fp,class:"m-5 h-70"},null,-1),Wp=r("div",{style:{"text-align":"right"}},"http://aosabook.org/en/distsys.html",-1),Vp={__name:"38",setup(t){return L(ee),E(),(e,s)=>(C(),M(F,D(T(y(B)(y(ee),37))),{default:w(()=>[jp,Up,zp,Wp]),_:1},16))}},qp=S(Vp,[["__file","/@slidev/slides/38.md"]]),G=[{path:"1",name:"page-1",component:Yr,meta:zr},{path:"2",name:"page-2",component:sl,meta:Jr},{path:"3",name:"page-3",component:ul,meta:il},{path:"4",name:"page-4",component:xl,meta:fl},{path:"5",name:"page-5",component:Dl,meta:Cl},{path:"6",name:"page-6",component:Fl,meta:Ll},{path:"7",name:"page-7",component:gc,meta:cc},{path:"8",name:"page-8",component:$c,meta:kc},{path:"9",name:"page-9",component:Pc,meta:Ac},{path:"10",name:"page-10",component:Fc,meta:Tc},{path:"11",name:"page-11",component:Kc,meta:Uc},{path:"12",name:"page-12",component:th,meta:Zc},{path:"13",name:"page-13",component:uh,meta:sh},{path:"14",name:"page-14",component:vh,meta:ph},{path:"15",name:"page-15",component:Eh,meta:wh},{path:"16",name:"page-16",component:Bh,meta:Ph},{path:"17",name:"page-17",component:Uh,meta:Ih},{path:"18",name:"page-18",component:Kh,meta:Wh},{path:"19",name:"page-19",component:tu,meta:Zh},{path:"20",name:"page-20",component:lu,meta:su},{path:"21",name:"page-21",component:fu,meta:cu},{path:"22",name:"page-22",component:xu,meta:mu},{path:"23",name:"page-23",component:Pu,meta:Cu},{path:"24",name:"page-24",component:Iu,meta:Du},{path:"25",name:"page-25",component:Wu,meta:Hu},{path:"26",name:"page-26",component:Ju,meta:qu},{path:"27",name:"page-27",component:ad,meta:Qu},{path:"28",name:"page-28",component:kd,meta:od},{path:"29",name:"page-29",component:Ed,meta:bd},{path:"30",name:"page-30",component:Id,meta:Dd},{path:"31",name:"page-31",component:zd,meta:Hd},{path:"32",name:"page-32",component:Xd,meta:Vd},{path:"33",name:"page-33",component:ip,meta:Qd},{path:"34",name:"page-34",component:dp,meta:rp},{path:"35",name:"page-35",component:vp,meta:fp},{path:"36",name:"page-36",component:Ep,meta:wp},{path:"37",name:"page-37",component:Np,meta:Dp},{path:"38",name:"page-38",component:qp,meta:Rp}].map(Ks),Yp=[].map(Ks),Qe=[{name:"play",path:"/",component:()=>Re(()=>import("./slidev/play-BVMXS2_7.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])),children:[...G,...Yp]},{name:"print",path:"/print",component:()=>Re(()=>import("./slidev/print-xoTYi0OT.js"),__vite__mapDeps([11,1,4,9,3,6,7,12]))},{path:"",redirect:{path:"/1"}},{path:"/:pathMatch(.*)",redirect:{path:"/1"}}];{let t=function(e){if(!N.remote||N.remote===e.query.password)return!0;if(N.remote&&e.query.password===void 0){const s=prompt("Enter password");if(N.remote===s)return!0}return e.params.no?{path:`/${e.params.no}`}:{path:""}};Qe.push({path:"/presenter/print",component:()=>Re(()=>import("./slidev/print-CXpQb0cT.js"),__vite__mapDeps([13,1,14,15,3,6,7]))}),Qe.push({name:"presenter",path:"/presenter/:no",component:()=>Re(()=>import("./slidev/presenter-DXOhcyNJ.js"),__vite__mapDeps([16,3,1,2,4,5,6,7,8,14,15,17,18,19])),beforeEnter:t}),Qe.push({path:"/presenter",redirect:{path:"/presenter/1"}})}const it=ra({history:la("/sa2024/06-scalable/"),routes:Qe}),bi=U(!1);function Kp(t,e,{mode:s="replace"}={}){return h({get(){const n=it.currentRoute.value.query[t];return n==null?e??null:Array.isArray(n)?n.filter(Boolean):n},set(n){He(()=>{it[y(s)]({query:{...it.currentRoute.value.query,[t]:n}})})}})}var Gp=Object.defineProperty,An=Object.getOwnPropertySymbols,Zp=Object.prototype.hasOwnProperty,Xp=Object.prototype.propertyIsEnumerable,Sn=(t,e,s)=>e in t?Gp(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,Bs=(t,e)=>{for(var s in e||(e={}))Zp.call(e,s)&&Sn(t,s,e[s]);if(An)for(var s of An(e))Xp.call(e,s)&&Sn(t,s,e[s]);return t},Jp=()=>({emit(t,...e){for(let s=0,n=this.events[t]||[],i=n.length;s{var n;this.events[t]=(n=this.events[t])==null?void 0:n.filter(i=>e!==i)}}});function Mn(t,e,s,n=i=>i){return t*n(.5-e*(.5-s))}function Qp(t){return[-t[0],-t[1]]}function pt(t,e){return[t[0]+e[0],t[1]+e[1]]}function rt(t,e){return[t[0]-e[0],t[1]-e[1]]}function dt(t,e){return[t[0]*e,t[1]*e]}function tf(t,e){return[t[0]/e,t[1]/e]}function Ee(t){return[t[1],-t[0]]}function En(t,e){return t[0]*e[0]+t[1]*e[1]}function ef(t,e){return t[0]===e[0]&&t[1]===e[1]}function sf(t){return Math.hypot(t[0],t[1])}function nf(t){return t[0]*t[0]+t[1]*t[1]}function Pn(t,e){return nf(rt(t,e))}function wi(t){return tf(t,sf(t))}function af(t,e){return Math.hypot(t[1]-e[1],t[0]-e[0])}function Pe(t,e,s){let n=Math.sin(s),i=Math.cos(s),a=t[0]-e[0],l=t[1]-e[1],o=a*i-l*n,c=a*n+l*i;return[o+e[0],c+e[1]]}function Os(t,e,s){return pt(t,dt(rt(e,t),s))}function Dn(t,e,s){return pt(t,dt(e,s))}var{min:ke,PI:rf}=Math,Tn=.275,De=rf+1e-4;function lf(t,e={}){let{size:s=16,smoothing:n=.5,thinning:i=.5,simulatePressure:a=!0,easing:l=O=>O,start:o={},end:c={},last:u=!1}=e,{cap:d=!0,easing:p=O=>O*(2-O)}=o,{cap:g=!0,easing:f=O=>--O*O*O+1}=c;if(t.length===0||s<=0)return[];let m=t[t.length-1].runningLength,_=o.taper===!1?0:o.taper===!0?Math.max(s,m):o.taper,k=c.taper===!1?0:c.taper===!0?Math.max(s,m):c.taper,b=Math.pow(s*n,2),A=[],P=[],z=t.slice(0,10).reduce((O,q)=>{let H=q.pressure;if(a){let R=ke(1,q.distance/s),_s=ke(1,1-R);H=ke(1,O+(_s-O)*(R*Tn))}return(O+H)/2},t[0].pressure),j=Mn(s,i,t[t.length-1].pressure,l),W,ct=t[0].vector,K=t[0].point,st=K,ft=K,gt=st,X=!1;for(let O=0;Ob)&&(A.push(ft),K=ft),gt=pt(H,dn),(O<=1||Pn(st,gt)>b)&&(P.push(gt),st=gt),z=q,ct=R}let I=t[0].point.slice(0,2),V=t.length>1?t[t.length-1].point.slice(0,2):pt(t[0].point,[1,1]),ne=[],ht=[];if(t.length===1){if(!(_||k)||u){let O=Dn(I,wi(Ee(rt(I,V))),-(W||j)),q=[];for(let H=1/13,R=H;R<=1;R+=H)q.push(Pe(O,I,De*2*R));return q}}else{if(!(_||k&&t.length===1))if(d)for(let q=1/13,H=q;H<=1;H+=q){let R=Pe(P[0],I,De*H);ne.push(R)}else{let q=rt(A[0],P[0]),H=dt(q,.5),R=dt(q,.51);ne.push(rt(I,H),rt(I,R),pt(I,R),pt(I,H))}let O=Ee(Qp(t[t.length-1].vector));if(k||_&&t.length===1)ht.push(V);else if(g){let q=Dn(V,O,j);for(let H=1/29,R=H;R<1;R+=H)ht.push(Pe(q,V,De*3*R))}else ht.push(pt(V,dt(O,j)),pt(V,dt(O,j*.99)),rt(V,dt(O,j*.99)),rt(V,dt(O,j)))}return A.concat(ht,P.reverse(),ne)}function of(t,e={}){var s;let{streamline:n=.5,size:i=16,last:a=!1}=e;if(t.length===0)return[];let l=.15+(1-n)*.85,o=Array.isArray(t[0])?t:t.map(({x:f,y:m,pressure:_=.5})=>[f,m,_]);if(o.length===2){let f=o[1];o=o.slice(0,-1);for(let m=1;m<5;m++)o.push(Os(o[0],f,m/4))}o.length===1&&(o=[...o,[...pt(o[0],[1,1]),...o[0].slice(2)]]);let c=[{point:[o[0][0],o[0][1]],pressure:o[0][2]>=0?o[0][2]:.25,vector:[1,1],distance:0,runningLength:0}],u=!1,d=0,p=c[0],g=o.length-1;for(let f=1;f=0?o[f][2]:.5,vector:wi(rt(p.point,m)),distance:_,runningLength:d},c.push(p)}return c[0].vector=((s=c[1])==null?void 0:s.vector)||[0,0],c}function cf(t,e={}){return lf(of(t,e),e)}function is(t,e){return t-e}function hf(t){return t<0?-1:1}function as(t){return[Math.abs(t),hf(t)]}function xi(){const t=()=>((1+Math.random())*65536|0).toString(16).substring(1);return`${t()+t()}-${t()}-${t()}-${t()}-${t()}${t()}${t()}`}var uf=2,_t=uf,Ce=class{constructor(t){this.drauu=t,this.event=void 0,this.point=void 0,this.start=void 0,this.el=null}onSelected(t){}onUnselected(){}onStart(t){}onMove(t){return!1}onEnd(t){}get brush(){return this.drauu.brush}get shiftPressed(){return this.drauu.shiftPressed}get altPressed(){return this.drauu.altPressed}get svgElement(){return this.drauu.el}getMousePosition(t){var e,s,n;const i=this.drauu.el,a=(e=this.drauu.options.coordinateScale)!=null?e:1,l=(s=this.drauu.options.offset)!=null?s:{x:0,y:0};if(this.drauu.options.coordinateTransform===!1){const o=this.drauu.el.getBoundingClientRect();return{x:(t.pageX-o.left+l.x)*a,y:(t.pageY-o.top+l.y)*a,pressure:t.pressure}}else{const o=this.drauu.svgPoint;o.x=t.clientX+l.x,o.y=t.clientY+l.y;const c=o.matrixTransform((n=i.getScreenCTM())==null?void 0:n.inverse());return{x:c.x*a,y:c.y*a,pressure:t.pressure}}}createElement(t,e){var s;const n=document.createElementNS("http://www.w3.org/2000/svg",t),i=e?Bs(Bs({},this.brush),e):this.brush;return n.setAttribute("fill",(s=i.fill)!=null?s:"transparent"),n.setAttribute("stroke",i.color),n.setAttribute("stroke-width",i.size.toString()),n.setAttribute("stroke-linecap","round"),i.dasharray&&n.setAttribute("stroke-dasharray",i.dasharray),n}attr(t,e){this.el.setAttribute(t,typeof e=="string"?e:e.toFixed(_t))}_setEvent(t){this.event=t,this.point=this.getMousePosition(t)}_eventDown(t){return this._setEvent(t),this.start=this.point,this.onStart(this.point)}_eventMove(t){return this._setEvent(t),this.onMove(this.point)}_eventUp(t){return this._setEvent(t),this.onEnd(this.point)}},df=class $i extends Ce{constructor(){super(...arguments),this.points=[]}onStart(e){return this.el=document.createElementNS("http://www.w3.org/2000/svg","path"),this.points=[e],this.attr("fill",this.brush.color),this.attr("d",this.getSvgData(this.points)),this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&this.points.push(e),this.attr("d",this.getSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!!e}getSvgData(e){return $i.getSvgData(e,this.brush)}static getSvgData(e,s){const n=cf(e,Bs({size:s.size,thinning:.9,simulatePressure:!1,start:{taper:5},end:{taper:5}},s.stylusOptions));if(!n.length)return"";const i=n.reduce((a,[l,o],c,u)=>{const[d,p]=u[(c+1)%u.length];return a.push(l,o,(l+d)/2,(o+p)/2),a},["M",...n[0],"Q"]);return i.push("Z"),i.map(a=>typeof a=="number"?a.toFixed(2):a).join(" ")}},pf=class extends Ce{onStart(t){return this.el=this.createElement("ellipse"),this.attr("cx",t.x),this.attr("cy",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=as(t.x-this.start.x),[n,i]=as(t.y-this.start.y);if(this.shiftPressed){const a=Math.min(e,n);e=a,n=a}if(this.altPressed)this.attr("cx",this.start.x),this.attr("cy",this.start.y),this.attr("rx",e),this.attr("ry",n);else{const[a,l]=[this.start.x,this.start.x+e*s].sort(is),[o,c]=[this.start.y,this.start.y+n*i].sort(is);this.attr("cx",(a+l)/2),this.attr("cy",(o+c)/2),this.attr("rx",(l-a)/2),this.attr("ry",(c-o)/2)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function Ci(t,e){const s=document.createElementNS("http://www.w3.org/2000/svg","defs"),n=document.createElementNS("http://www.w3.org/2000/svg","marker"),i=document.createElementNS("http://www.w3.org/2000/svg","path");return i.setAttribute("fill",e),n.setAttribute("id",t),n.setAttribute("viewBox","0 -5 10 10"),n.setAttribute("refX","5"),n.setAttribute("refY","0"),n.setAttribute("markerWidth","4"),n.setAttribute("markerHeight","4"),n.setAttribute("orient","auto"),i.setAttribute("d","M0,-5L10,0L0,5"),n.appendChild(i),s.appendChild(n),s}var ff=class extends Ce{onStart(t){if(this.el=this.createElement("line",{fill:"transparent"}),this.attr("x1",t.x),this.attr("y1",t.y),this.attr("x2",t.x),this.attr("y2",t.y),this.brush.arrowEnd){const e=xi(),s=document.createElementNS("http://www.w3.org/2000/svg","g");return s.append(Ci(e,this.brush.color)),s.append(this.el),this.attr("marker-end",`url(#${e})`),s}return this.el}onMove(t){if(!this.el)return!1;let{x:e,y:s}=t;if(this.shiftPressed){const n=t.x-this.start.x,i=t.y-this.start.y;if(i!==0){let a=n/i;a=Math.round(a),Math.abs(a)<=1?(e=this.start.x+i*a,s=this.start.y+i):(e=this.start.x+n,s=this.start.y)}}return this.altPressed?(this.attr("x1",this.start.x*2-e),this.attr("y1",this.start.y*2-s),this.attr("x2",e),this.attr("y2",s)):(this.attr("x1",this.start.x),this.attr("y1",this.start.y),this.attr("x2",e),this.attr("y2",s)),!0}onEnd(){const t=this.el;return this.el=null,!(!t||t.getTotalLength()<5)}},gf=class extends Ce{onStart(t){return this.el=this.createElement("rect"),this.brush.cornerRadius&&(this.attr("rx",this.brush.cornerRadius),this.attr("ry",this.brush.cornerRadius)),this.attr("x",t.x),this.attr("y",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=as(t.x-this.start.x),[n,i]=as(t.y-this.start.y);if(this.shiftPressed){const a=Math.min(e,n);e=a,n=a}if(this.altPressed)this.attr("x",this.start.x-e),this.attr("y",this.start.y-n),this.attr("width",e*2),this.attr("height",n*2);else{const[a,l]=[this.start.x,this.start.x+e*s].sort(is),[o,c]=[this.start.y,this.start.y+n*i].sort(is);this.attr("x",a),this.attr("y",o),this.attr("width",l-a),this.attr("height",c-o)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function mf(t,e){const s=t.x-e.x,n=t.y-e.y;return s*s+n*n}function _f(t,e,s){let n=e.x,i=e.y,a=s.x-n,l=s.y-i;if(a!==0||l!==0){const o=((t.x-n)*a+(t.y-i)*l)/(a*a+l*l);o>1?(n=s.x,i=s.y):o>0&&(n+=a*o,i+=l*o)}return a=t.x-n,l=t.y-i,a*a+l*l}function kf(t,e){let s=t[0];const n=[s];let i;for(let a=1,l=t.length;ae&&(n.push(i),s=i);return s!==i&&i&&n.push(i),n}function Is(t,e,s,n,i){let a=n,l=0;for(let o=e+1;oa&&(l=o,a=c)}a>n&&(l-e>1&&Is(t,e,l,n,i),i.push(t[l]),s-l>1&&Is(t,l,s,n,i))}function yf(t,e){const s=t.length-1,n=[t[0]];return Is(t,0,s,e,n),n.push(t[s]),n}function Ln(t,e,s=!1){if(t.length<=2)return t;const n=e!==void 0?e*e:1;return t=s?t:kf(t,n),t=yf(t,n),t}var vf=class he extends Ce{constructor(){super(...arguments),this.points=[],this.count=0}onStart(e){if(this.el=this.createElement("path",{fill:"transparent"}),this.points=[e],this.brush.arrowEnd){this.arrowId=xi();const s=Ci(this.arrowId,this.brush.color);this.el.appendChild(s)}return this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&(this.points.push(e),this.count+=1),this.count>5&&(this.points=Ln(this.points,1,!0),this.count=0),this.attr("d",he.toSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!(!e||(e.setAttribute("d",he.toSvgData(Ln(this.points,1,!0))),!e.getTotalLength()))}static line(e,s){const n=s.x-e.x,i=s.y-e.y;return{length:Math.sqrt(n**2+i**2),angle:Math.atan2(i,n)}}static controlPoint(e,s,n,i){const a=s||e,l=n||e,o=.2,c=he.line(a,l),u=c.angle+(i?Math.PI:0),d=c.length*o,p=e.x+Math.cos(u)*d,g=e.y+Math.sin(u)*d;return{x:p,y:g}}static bezierCommand(e,s,n){const i=he.controlPoint(n[s-1],n[s-2],e),a=he.controlPoint(e,n[s-1],n[s+1],!0);return`C ${i.x.toFixed(_t)},${i.y.toFixed(_t)} ${a.x.toFixed(_t)},${a.y.toFixed(_t)} ${e.x.toFixed(_t)},${e.y.toFixed(_t)}`}static toSvgData(e){return e.reduce((s,n,i,a)=>i===0?`M ${n.x.toFixed(_t)},${n.y.toFixed(_t)}`:`${s} ${he.bezierCommand(n,i,a)}`,"")}},bf=class extends Ce{constructor(){super(...arguments),this.pathSubFactor=20,this.pathFragments=[],this._erased=[]}onSelected(t){const e=(s,n)=>{if(s&&s.length)for(let i=0;it.forEach(e=>this.drauu._restoreNode(e)),redo:()=>t.forEach(e=>this.drauu._removeNode(e))}}checkAndEraseElement(){if(this.pathFragments.length)for(let t=0;t!this._erased.includes(t.element))),this._erased.length>0}lineLineIntersect(t,e){const s=t.x1,n=t.x2,i=e.x1,a=e.x2,l=t.y1,o=t.y2,c=e.y1,u=e.y2,d=(s-n)*(c-u)-(l-o)*(i-a),p=(s*o-l*n)*(i-a)-(s-n)*(i*u-c*a),g=(s*o-l*n)*(c-u)-(l-o)*(i*u-c*a),f=(m,_,k)=>m>=_&&m<=k?!0:m>=k&&m<=_;if(d===0)return!1;{const m={x:p/d,y:g/d};return f(m.x,s,n)&&f(m.y,l,o)&&f(m.x,i,a)&&f(m.y,c,u)}}};function wf(t){return{draw:new vf(t),stylus:new df(t),line:new ff(t),rectangle:new gf(t),ellipse:new pf(t),eraseLine:new bf(t)}}var xf=class{constructor(t={}){this.options=t,this.el=null,this.svgPoint=null,this.eventEl=null,this.shiftPressed=!1,this.altPressed=!1,this.drawing=!1,this._emitter=Jp(),this._originalPointerId=null,this._models=wf(this),this._opStack=[],this._opIndex=0,this._disposables=[],this._elements=[],this.options.brush||(this.options.brush={color:"black",size:3,mode:"stylus"}),t.el&&this.mount(t.el,t.eventTarget,t.window)}get model(){return this._models[this.mode]}get mounted(){return!!this.el}get mode(){return this.options.brush.mode||"stylus"}set mode(t){this._models[this.mode].onUnselected(),this.options.brush.mode=t,this.model.onSelected(this.el)}get brush(){return this.options.brush}set brush(t){this.options.brush=t}resolveSelector(t){return typeof t=="string"?document.querySelector(t):t||null}mount(t,e,s=window){if(this.el)throw new Error("[drauu] already mounted, unmount previous target first");if(this.el=this.resolveSelector(t),!this.el)throw new Error("[drauu] target element not found");if(this.el.tagName.toLocaleLowerCase()!=="svg")throw new Error("[drauu] can only mount to a SVG element");if(!this.el.createSVGPoint)throw new Error("[drauu] SVG element must be create by document.createElementNS('http://www.w3.org/2000/svg', 'svg')");this.svgPoint=this.el.createSVGPoint();const n=this.resolveSelector(e)||this.el,i=this.eventStart.bind(this),a=this.eventMove.bind(this),l=this.eventEnd.bind(this),o=this.eventKeyboard.bind(this);n.addEventListener("pointerdown",i,{passive:!1}),s.addEventListener("pointermove",a,{passive:!1}),s.addEventListener("pointerup",l,{passive:!1}),s.addEventListener("pointercancel",l,{passive:!1}),s.addEventListener("keydown",o,!1),s.addEventListener("keyup",o,!1),this._disposables.push(()=>{n.removeEventListener("pointerdown",i),s.removeEventListener("pointermove",a),s.removeEventListener("pointerup",l),s.removeEventListener("pointercancel",l),s.removeEventListener("keydown",o,!1),s.removeEventListener("keyup",o,!1)}),this._emitter.emit("mounted")}unmount(){this._disposables.forEach(t=>t()),this._disposables.length=0,this._elements.length=0,this.el=null,this._emitter.emit("unmounted")}on(t,e){return this._emitter.on(t,e)}undo(){return!this.canUndo()||this.drawing?!1:(this._opStack[--this._opIndex].undo(),this._emitter.emit("changed"),!0)}redo(){return!this.canRedo()||this.drawing?!1:(this._opStack[this._opIndex++].redo(),this._emitter.emit("changed"),!0)}canRedo(){return this._opIndex0}eventMove(t){!this.acceptsInput(t)||!this.drawing||this.model._eventMove(t)&&(t.stopPropagation(),t.preventDefault(),this._emitter.emit("changed"))}eventStart(t){this.acceptsInput(t)&&(t.stopPropagation(),t.preventDefault(),this._currentNode&&this.cancel(),this.drawing=!0,this._originalPointerId=t.pointerId,this._emitter.emit("start"),this._currentNode=this.model._eventDown(t),this._currentNode&&this.mode!=="eraseLine"&&this.el.appendChild(this._currentNode),this._emitter.emit("changed"))}eventEnd(t){if(!this.acceptsInput(t)||!this.drawing)return;const e=this.model._eventUp(t);if(!e)this.cancel();else if(e===!0){const s=this._currentNode;this._appendNode(s),this.commit({undo:()=>this._removeNode(s),redo:()=>this._restoreNode(s)})}else this.commit(e);this.drawing=!1,this._emitter.emit("end"),this._emitter.emit("changed"),this._originalPointerId=null}acceptsInput(t){return(!this.options.acceptsInputTypes||this.options.acceptsInputTypes.includes(t.pointerType))&&!(this._originalPointerId&&this._originalPointerId!==t.pointerId)}eventKeyboard(t){this.shiftPressed===t.shiftKey&&this.altPressed===t.altKey||(this.shiftPressed=t.shiftKey,this.altPressed=t.altKey,this.model.point&&this.model.onMove(this.model.point)&&this._emitter.emit("changed"))}commit(t){this._opStack.length=this._opIndex,this._opStack.push(t),this._opIndex++;const e=this._currentNode;this._currentNode=void 0,this._emitter.emit("committed",e)}clear(){this._opStack.length=0,this._opIndex=0,this.cancel(),this.el.innerHTML="",this._emitter.emit("changed")}cancel(){this._currentNode&&(this.el.removeChild(this._currentNode),this._currentNode=void 0,this._emitter.emit("canceled"))}dump(){return this.el.innerHTML}load(t){this.clear(),this.el.innerHTML=t}_appendNode(t){const e=this._elements.at(-1);e?e.after(t):this.el.append(t);const s=this._elements.push(t)-1;t.dataset.drauu_index=s.toString()}_removeNode(t){t.remove(),this._elements[+t.dataset.drauu_index]=null}_restoreNode(t){const e=+t.dataset.drauu_index;this._elements[e]=t;for(let s=e-1;s>=0;s--){const n=this._elements[s];if(n){n.after(t);return}}this.el.prepend(t)}};function $f(t){return new xf(t)}const Yg=U(!1),Kg=U(!1),Gg=U(!1),Cf=U(!1),Zg=U(!0),Xg=oa({xs:460,...pa}),Bn=ca(),Jg=ha(),Qg=h(()=>Bn.height.value-Bn.width.value/ni>120),tm=ua(ps?document.body:null),Hs=da(),Af=h(()=>{var t,e;return["INPUT","TEXTAREA"].includes(((t=Hs.value)==null?void 0:t.tagName)||"")||((e=Hs.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),em=h(()=>{var t;return["BUTTON","A"].includes(((t=Hs.value)==null?void 0:t.tagName)||"")});et("slidev-camera","default",{listenToStorageChanges:!1});et("slidev-mic","default",{listenToStorageChanges:!1});const sm=et("slidev-scale",0),nm=et("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),im=et("slidev-show-editor",!1,{listenToStorageChanges:!1}),am=et("slidev-editor-vertical",!1,{listenToStorageChanges:!1});et("slidev-editor-width",ps?window.innerWidth*.4:318,{listenToStorageChanges:!1});et("slidev-editor-height",ps?window.innerHeight*.4:300,{listenToStorageChanges:!1});const rs=et("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),Ye=et("slidev-presenter-layout",1,{listenToStorageChanges:!1});function rm(){Ye.value=Ye.value+1,Ye.value>2&&(Ye.value=1)}function lm(){rs.value=Math.min(2,rs.value+.1)}function om(){rs.value=Math.max(.5,rs.value-.1)}const cm=Gn(Cf),Ns=["#ff595e","#ffca3a","#8ac926","#1982c4","#6a4c93","#ffffff","#000000"],Fs=et("slidev-drawing-enabled",!1),hm=et("slidev-drawing-pinned",!1),Sf=U(!1),Mf=U(!1),Ef=U(!1),ls=U(!1),os=fa(et("slidev-drawing-brush",{color:Ns[0],size:4,mode:"stylus"})),On=U("stylus"),Ai=h(()=>N.drawings.syncAll||pe.value);let Ue=!1;const Te=h({get(){return On.value},set(t){On.value=t,t==="arrow"?(Z.mode="line",os.arrowEnd=!0):(Z.mode=t,os.arrowEnd=!1)}}),Pf=v({brush:os,acceptsInputTypes:h(()=>Fs.value&&(!N.drawings.presenterOnly||pe.value)?void 0:["pen"]),coordinateTransform:!1}),Z=Ks($f(Pf));function Df(){Z.clear(),Ai.value&&ri(Y.value,"")}function Qs(){var t;Mf.value=Z.canRedo(),Sf.value=Z.canUndo(),Ef.value=!!((t=Z.el)!=null&&t.children.length)}function Tf(t){Ue=!0;const e=li[t||Y.value];e!=null?Z.load(e):Z.clear(),Qs(),Ue=!1}Z.on("changed",()=>{if(Qs(),!Ue){const t=Z.dump(),e=Y.value;(li[e]||"")!==t&&Ai.value&&ri(e,Z.dump())}});Mr(t=>{Ue=!0,t[Y.value]!=null&&Z.load(t[Y.value]||""),Ue=!1,Qs()});He(()=>{$e(Y,()=>{Z.mounted&&Tf()},{immediate:!0})});Z.on("start",()=>ls.value=!0);Z.on("end",()=>ls.value=!1);window.addEventListener("keydown",t=>{if(!Fs.value||Af.value)return;const e=!t.ctrlKey&&!t.altKey&&!t.shiftKey&&!t.metaKey;let s=!0;t.code==="KeyZ"&&(t.ctrlKey||t.metaKey)?t.shiftKey?Z.redo():Z.undo():t.code==="Escape"?Fs.value=!1:t.code==="KeyL"&&e?Te.value="line":t.code==="KeyA"&&e?Te.value="arrow":t.code==="KeyS"&&e?Te.value="stylus":t.code==="KeyR"&&e?Te.value="rectangle":t.code==="KeyE"&&e?Te.value="ellipse":t.code==="KeyC"&&e?Df():t.code.startsWith("Digit")&&e&&+t.code[5]<=Ns.length?os.color=Ns[+t.code[5]-1]:s=!1,s&&(t.preventDefault(),t.stopPropagation())},!1);const Rs=U(0);He(()=>{it.afterEach(async()=>{await He(),Rs.value+=1})});const Si=U(0),fs=U(0),mt=h(()=>it.currentRoute.value),Lf=h(()=>mt.value.query.print!==void 0),Bf=h(()=>mt.value.query.print==="clicks"),um=h(()=>mt.value.query.embedded!==void 0),pe=h(()=>mt.value.path.startsWith("/presenter")),Of=h(()=>mt.value.path.startsWith("/notes")),If=h(()=>mt.value.query.password),dm=h(()=>!pe.value&&(!N.remote||If.value===N.remote)),In=Kp("clicks","0"),xe=h({get(){if(re.value.disabled)return Ts;let t=+(In.value||0);return Number.isNaN(t)&&(t=0),t},set(t){In.value=t.toString()}}),pm=h(()=>G.length),Hf=h(()=>mt.value.path),Y=h(()=>Number.parseInt(Hf.value.split(/\//g).slice(-1)[0])||1);h(()=>gs(Y.value));const se=h(()=>G.find(t=>t.path===`${Y.value}`)),fm=h(()=>{var t,e,s;return(s=(e=(t=se.value)==null?void 0:t.meta)==null?void 0:e.slide)==null?void 0:s.id});h(()=>{var t,e;return((e=(t=se.value)==null?void 0:t.meta)==null?void 0:e.layout)||(Y.value===1?"cover":"default")});const gm=h(()=>G.find(t=>t.path===`${Math.min(G.length,Y.value+1)}`)),Nf=h(()=>G.find(t=>t.path===`${Math.max(1,Y.value-1)}`)),re=h(()=>Ir(se.value)),tn=h(()=>re.value.current),ze=h(()=>re.value.total),mm=h(()=>Y.valueY.value>1||tn.value>0),Ff=h(()=>G.filter(t=>{var e,s;return(s=(e=t.meta)==null?void 0:e.slide)==null?void 0:s.title}).reduce((t,e)=>(an(t,e),t),[])),Rf=h(()=>rn(Ff.value,se.value));h(()=>ln(Rf.value));const km=h(()=>Vf(Si.value,se.value,Nf.value));$e(se,(t,e)=>{Si.value=Number(t==null?void 0:t.path)-Number(e==null?void 0:e.path)});async function Mi(){fs.value=1,ze.value<=xe.value?await en():xe.value+=1}async function Ei(){fs.value=-1,xe.value<=0?await sn():xe.value-=1}function gs(t){return pe.value?`/presenter/${t}`:`/${t}`}async function en(){fs.value=1,Y.value.3||a>75?s.value==="left"?Mi():Ei():(l/window.innerHeight>.4||l>200)&&(s.value==="down"?sn():en())}})}async function jf(){const{saveAs:t}=await Re(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),__vite__mapDeps([]));t(typeof N.download=="string"?N.download:N.exportFilename?`${N.exportFilename}.pdf`:"/sa2024/06-scalable/slidev-exported.pdf",`${N.title}.pdf`)}async function Uf(t){var e,s;if(t==null){const n=(s=(e=se.value)==null?void 0:e.meta)==null?void 0:s.slide;if(!n)return!1;t=`${n.filepath}:${n.start}`}return await fetch(`/__open-in-editor?file=${encodeURIComponent(t)}`),!0}function an(t,e,s=1){var i,a,l,o,c,u,d;const n=(a=(i=e.meta)==null?void 0:i.slide)==null?void 0:a.level;n&&n>s&&t.length>0?an(t[t.length-1].children,e,s+1):t.push({children:[],level:s,path:e.path,hideInToc:!!((c=(o=(l=e.meta)==null?void 0:l.slide)==null?void 0:o.frontmatter)!=null&&c.hideInToc),title:(d=(u=e.meta)==null?void 0:u.slide)==null?void 0:d.title})}function rn(t,e,s=!1,n){return t.map(i=>{const a={...i,active:i.path===(e==null?void 0:e.path),hasActiveParent:s};return a.children.length>0&&(a.children=rn(a.children,e,a.active||a.hasActiveParent,a)),n&&(a.active||a.activeParent)&&(n.activeParent=!0),a})}function ln(t,e=1){return t.filter(s=>!s.hideInToc).map(s=>({...s,children:ln(s.children,e+1)}))}const zf={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function Wf(t,e=!1){if(!t||(typeof t=="string"&&(t={name:t}),!t.name))return;let s=t.name.includes("|")?t.name:zf[t.name]||t.name;if(s.includes("|")){const[n,i]=s.split("|").map(a=>a.trim());s=e?i:n}if(s)return{...t,name:s}}function Vf(t,e,s){var i,a;let n=t>0?(i=s==null?void 0:s.meta)==null?void 0:i.transition:(a=e==null?void 0:e.meta)==null?void 0:a.transition;return n||(n=N.transition),Wf(n,t<0)}function qf(){const t=N.titleTemplate.replace("%s",N.title||"Slidev");dr({title:t,htmlAttrs:N.htmlAttrs}),xr(`${t} - shared`),Sr(`${t} - drawings`);const e=`${location.origin}_${oi()}`;function s(){Of.value||!pe.value&&!Br.includes(location.host.split(":")[0])||(pe.value?(Se("page",+Y.value),Se("clicks",re.value.current)):(Se("viewerPage",+Y.value),Se("viewerClicks",re.value.current)),Se("lastUpdate",{id:e,type:pe.value?"presenter":"viewer",time:new Date().getTime()}))}it.afterEach(s),$e(re,s),$r(n=>{var a;it.currentRoute.value.path.match(/^\/(\d+|presenter)\/?/)&&((a=n.lastUpdate)==null?void 0:a.type)==="presenter"&&(+n.page!=+Y.value||+re.value.current!=+n.clicks)&&(bi.value=!1,it.replace({path:gs(n.page),query:{...it.currentRoute.value.query,clicks:n.clicks||0}}))})}const Yf=ds({__name:"App",setup(t){return qf(),le(()=>{for(const[e,s]of Object.entries(vr.value))document.body.style.setProperty(e,s.toString())}),(e,s)=>{const n=_a("RouterView");return C(),M(n)}}}),Kf=S(Yf,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function Gf(t){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e),t.app.use(ka),t.app.use(xa)}function Pi(t,e,s){var n;return((n=t.instance)==null?void 0:n.$).provides[e]??s}function Zf(){return{install(t){t.directive("click",{name:"v-click",mounted(e,s){const n=ts(e,s,s.value);if(n==null)return;e.classList.toggle(Oe,!0);const i=Array.isArray(n.clicks)?n.clicks:[n.clicks,void 0];e.dataset.slidevClicksStart=String(i[0]),i[1]!=null&&(e.dataset.slidevClicksEnd=String(i[1])),le(()=>{const a=n.isActive.value,l=n.isCurrent.value,o=a&&!l;n.flagHide?(e.classList.toggle(n.flagFade?Me:ye,a),e.classList.toggle(bs,a)):e.classList.toggle(n.flagFade?Me:ye,!a),e.classList.toggle(ws,l),e.classList.toggle(xs,o)})},unmounted:Cs}),t.directive("after",{name:"v-after",mounted(e,s){const n=ts(e,s,s.value,!0);n!=null&&(e.classList.toggle(Oe,!0),le(()=>{const i=n.isActive.value,a=n.isCurrent.value,l=i&&!a;n.flagHide?(e.classList.toggle(n.flagFade?Me:ye,i),e.classList.toggle(bs,i)):e.classList.toggle(n.flagFade?Me:ye,!i),e.classList.toggle(ws,a),e.classList.toggle(xs,l)}))},unmounted:Cs}),t.directive("click-hide",{name:"v-click-hide",mounted(e,s){const n=ts(e,s,s.value,!1,!0);n!=null&&(e.classList.toggle(Oe,!0),le(()=>{const i=n.isActive.value,a=n.isCurrent.value,l=i&&!a;e.classList.toggle(n.flagFade?Me:ye,i),e.classList.toggle(bs,i),e.classList.toggle(ws,a),e.classList.toggle(xs,l)}))},unmounted:Cs})}}}function $s(t,e){return Array.isArray(t)?t[0]<=e&&e$s(c,a.current)),isCurrent:h(()=>Xf(c,a.current)),isShown:h(()=>i?!$s(c,a.current):$s(c,a.current)),flagFade:l,flagHide:i};return a.register(t,d),d}function Cs(t,e){var n;t.classList.toggle(Oe,!1);const s=(n=Pi(e,Zs))==null?void 0:n.value;s==null||s.unregister(t)}function Di(){return Math.floor(Math.random()*2**31)}class Jf{constructor(e){this.seed=e}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}}function js(t,e,s){if(t&&t.length){const[n,i]=e,a=Math.PI/180*s,l=Math.cos(a),o=Math.sin(a);for(const c of t){const[u,d]=c;c[0]=(u-n)*l-(d-i)*o+n,c[1]=(u-n)*o+(d-i)*l+i}}}function Qf(t,e,s){const n=[];t.forEach(i=>n.push(...i)),js(n,e,s)}function tg(t,e){return t[0]===e[0]&&t[1]===e[1]}function eg(t,e,s,n=1){const i=s,a=Math.max(e,.1),l=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,o=[0,0];if(i)for(const u of l)js(u,o,i);const c=sg(l,a,n);if(i){for(const u of l)js(u,o,-i);Qf(c,o,-i)}return c}function sg(t,e,s){const n=[];for(const u of t){const d=[...u];tg(d[0],d[d.length-1])||d.push([d[0][0],d[0][1]]),d.length>2&&n.push(d)}const i=[];e=Math.max(e,.1);const a=[];for(const u of n)for(let d=0;du.ymind.ymin?1:u.xd.x?1:u.ymax===d.ymax?0:(u.ymax-d.ymax)/Math.abs(u.ymax-d.ymax)),!a.length)return i;let l=[],o=a[0].ymin,c=0;for(;l.length||a.length;){if(a.length){let u=-1;for(let p=0;po);p++)u=p;a.splice(0,u+1).forEach(p=>{l.push({s:o,edge:p})})}if(l=l.filter(u=>!(u.edge.ymax<=o)),l.sort((u,d)=>u.edge.x===d.edge.x?0:(u.edge.x-d.edge.x)/Math.abs(u.edge.x-d.edge.x)),(s!==1||c%e===0)&&l.length>1)for(let u=0;u=l.length)break;const p=l[u].edge,g=l[d].edge;i.push([[Math.round(p.x),o],[Math.round(g.x),o]])}o+=s,l.forEach(u=>{u.edge.x=u.edge.x+s*u.edge.islope}),c++}return i}function Ve(t,e){var s;const n=e.hachureAngle+90;let i=e.hachureGap;i<0&&(i=e.strokeWidth*4),i=Math.round(Math.max(i,.1));let a=1;return e.roughness>=1&&(((s=e.randomizer)===null||s===void 0?void 0:s.next())||Math.random())>.7&&(a=i),eg(t,i,n,a||1)}class on{constructor(e){this.helper=e}fillPolygons(e,s){return this._fillPolygons(e,s)}_fillPolygons(e,s){const n=Ve(e,s);return{type:"fillSketch",ops:this.renderLines(n,s)}}renderLines(e,s){const n=[];for(const i of e)n.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],s));return n}}function ms(t){const e=t[0],s=t[1];return Math.sqrt(Math.pow(e[0]-s[0],2)+Math.pow(e[1]-s[1],2))}class ng extends on{fillPolygons(e,s){let n=s.hachureGap;n<0&&(n=s.strokeWidth*4),n=Math.max(n,.1);const i=Object.assign({},s,{hachureGap:n}),a=Ve(e,i),l=Math.PI/180*s.hachureAngle,o=[],c=n*.5*Math.cos(l),u=n*.5*Math.sin(l);for(const[p,g]of a)ms([p,g])&&o.push([[p[0]-c,p[1]+u],[...g]],[[p[0]+c,p[1]-u],[...g]]);return{type:"fillSketch",ops:this.renderLines(o,s)}}}class ig extends on{fillPolygons(e,s){const n=this._fillPolygons(e,s),i=Object.assign({},s,{hachureAngle:s.hachureAngle+90}),a=this._fillPolygons(e,i);return n.ops=n.ops.concat(a.ops),n}}class ag{constructor(e){this.helper=e}fillPolygons(e,s){s=Object.assign({},s,{hachureAngle:0});const n=Ve(e,s);return this.dotsOnLines(n,s)}dotsOnLines(e,s){const n=[];let i=s.hachureGap;i<0&&(i=s.strokeWidth*4),i=Math.max(i,.1);let a=s.fillWeight;a<0&&(a=s.strokeWidth/2);const l=i/4;for(const o of e){const c=ms(o),u=c/i,d=Math.ceil(u)-1,p=c-d*i,g=(o[0][0]+o[1][0])/2-i/4,f=Math.min(o[0][1],o[1][1]);for(let m=0;m{const o=ms(l),c=Math.floor(o/(n+i)),u=(o+i-c*(n+i))/2;let d=l[0],p=l[1];d[0]>p[0]&&(d=l[1],p=l[0]);const g=Math.atan((p[1]-d[1])/(p[0]-d[0]));for(let f=0;f{const l=ms(a),o=Math.round(l/(2*s));let c=a[0],u=a[1];c[0]>u[0]&&(c=a[1],u=a[0]);const d=Math.atan((u[1]-c[1])/(u[0]-c[0]));for(let p=0;pd%2?u+s:u+e);a.push({key:"C",data:c}),e=c[4],s=c[5];break}case"Q":a.push({key:"Q",data:[...o]}),e=o[2],s=o[3];break;case"q":{const c=o.map((u,d)=>d%2?u+s:u+e);a.push({key:"Q",data:c}),e=c[2],s=c[3];break}case"A":a.push({key:"A",data:[...o]}),e=o[5],s=o[6];break;case"a":e+=o[5],s+=o[6],a.push({key:"A",data:[o[0],o[1],o[2],o[3],o[4],e,s]});break;case"H":a.push({key:"H",data:[...o]}),e=o[0];break;case"h":e+=o[0],a.push({key:"H",data:[e]});break;case"V":a.push({key:"V",data:[...o]}),s=o[0];break;case"v":s+=o[0],a.push({key:"V",data:[s]});break;case"S":a.push({key:"S",data:[...o]}),e=o[2],s=o[3];break;case"s":{const c=o.map((u,d)=>d%2?u+s:u+e);a.push({key:"S",data:c}),e=c[2],s=c[3];break}case"T":a.push({key:"T",data:[...o]}),e=o[0],s=o[1];break;case"t":e+=o[0],s+=o[1],a.push({key:"T",data:[e,s]});break;case"Z":case"z":a.push({key:"Z",data:[]}),e=n,s=i;break}return a}function Bi(t){const e=[];let s="",n=0,i=0,a=0,l=0,o=0,c=0;for(const{key:u,data:d}of t){switch(u){case"M":e.push({key:"M",data:[...d]}),[n,i]=d,[a,l]=d;break;case"C":e.push({key:"C",data:[...d]}),n=d[4],i=d[5],o=d[2],c=d[3];break;case"L":e.push({key:"L",data:[...d]}),[n,i]=d;break;case"H":n=d[0],e.push({key:"L",data:[n,i]});break;case"V":i=d[0],e.push({key:"L",data:[n,i]});break;case"S":{let p=0,g=0;s==="C"||s==="S"?(p=n+(n-o),g=i+(i-c)):(p=n,g=i),e.push({key:"C",data:[p,g,...d]}),o=d[0],c=d[1],n=d[2],i=d[3];break}case"T":{const[p,g]=d;let f=0,m=0;s==="Q"||s==="T"?(f=n+(n-o),m=i+(i-c)):(f=n,m=i);const _=n+2*(f-n)/3,k=i+2*(m-i)/3,b=p+2*(f-p)/3,A=g+2*(m-g)/3;e.push({key:"C",data:[_,k,b,A,p,g]}),o=f,c=m,n=p,i=g;break}case"Q":{const[p,g,f,m]=d,_=n+2*(p-n)/3,k=i+2*(g-i)/3,b=f+2*(p-f)/3,A=m+2*(g-m)/3;e.push({key:"C",data:[_,k,b,A,f,m]}),o=p,c=g,n=f,i=m;break}case"A":{const p=Math.abs(d[0]),g=Math.abs(d[1]),f=d[2],m=d[3],_=d[4],k=d[5],b=d[6];p===0||g===0?(e.push({key:"C",data:[n,i,k,b,k,b]}),n=k,i=b):(n!==k||i!==b)&&(Oi(n,i,k,b,p,g,f,m,_).forEach(function(P){e.push({key:"C",data:P})}),n=k,i=b);break}case"Z":e.push({key:"Z",data:[]}),n=a,i=l;break}s=u}return e}function ug(t){return Math.PI*t/180}function Le(t,e,s){const n=t*Math.cos(s)-e*Math.sin(s),i=t*Math.sin(s)+e*Math.cos(s);return[n,i]}function Oi(t,e,s,n,i,a,l,o,c,u){const d=ug(l);let p=[],g=0,f=0,m=0,_=0;if(u)[g,f,m,_]=u;else{[t,e]=Le(t,e,-d),[s,n]=Le(s,n,-d);const X=(t-s)/2,I=(e-n)/2;let V=X*X/(i*i)+I*I/(a*a);V>1&&(V=Math.sqrt(V),i=V*i,a=V*a);const ne=o===c?-1:1,ht=i*i,O=a*a,q=ht*O-ht*I*I-O*X*X,H=ht*I*I+O*X*X,R=ne*Math.sqrt(Math.abs(q/H));m=R*i*I/a+(t+s)/2,_=R*-a*X/i+(e+n)/2,g=Math.asin(parseFloat(((e-_)/a).toFixed(9))),f=Math.asin(parseFloat(((n-_)/a).toFixed(9))),tf&&(g=g-Math.PI*2),!c&&f>g&&(f=f-Math.PI*2)}let k=f-g;if(Math.abs(k)>Math.PI*120/180){const X=f,I=s,V=n;c&&f>g?f=g+Math.PI*120/180*1:f=g+Math.PI*120/180*-1,s=m+i*Math.cos(f),n=_+a*Math.sin(f),p=Oi(s,n,I,V,i,a,l,0,c,[f,X,m,_])}k=f-g;const b=Math.cos(g),A=Math.sin(g),P=Math.cos(f),z=Math.sin(f),j=Math.tan(k/4),W=4/3*i*j,ct=4/3*a*j,K=[t,e],st=[t+W*A,e-ct*b],ft=[s+W*z,n-ct*P],gt=[s,n];if(st[0]=2*K[0]-st[0],st[1]=2*K[1]-st[1],u)return[st,ft,gt].concat(p);{p=[st,ft,gt].concat(p);const X=[];for(let I=0;I2){const i=[];for(let a=0;aMath.PI*2&&(f=0,m=Math.PI*2);const _=Math.PI*2/c.curveStepCount,k=Math.min(_/2,(m-f)/2),b=Un(k,u,d,p,g,f,m,1,c);if(!c.disableMultiStroke){const A=Un(k,u,d,p,g,f,m,1.5,c);b.push(...A)}return l&&(o?b.push(...oe(u,d,u+p*Math.cos(f),d+g*Math.sin(f),c),...oe(u,d,u+p*Math.cos(m),d+g*Math.sin(m),c)):b.push({op:"lineTo",data:[u,d]},{op:"lineTo",data:[u+p*Math.cos(f),d+g*Math.sin(f)]})),{type:"path",ops:b}}function Fn(t,e){const s=Bi(Li(cn(t))),n=[];let i=[0,0],a=[0,0];for(const{key:l,data:o}of s)switch(l){case"M":{a=[o[0],o[1]],i=[o[0],o[1]];break}case"L":n.push(...oe(a[0],a[1],o[0],o[1],e)),a=[o[0],o[1]];break;case"C":{const[c,u,d,p,g,f]=o;n.push(...kg(c,u,d,p,g,f,a,e)),a=[g,f];break}case"Z":n.push(...oe(a[0],a[1],i[0],i[1],e)),a=[i[0],i[1]];break}return{type:"path",ops:n}}function Ss(t,e){const s=[];for(const n of t)if(n.length){const i=e.maxRandomnessOffset||0,a=n.length;if(a>2){s.push({op:"move",data:[n[0][0]+$(i,e),n[0][1]+$(i,e)]});for(let l=1;lMath.PI*2&&(p=0,g=Math.PI*2);const f=(g-p)/l.curveStepCount,m=[];for(let _=p;_<=g;_=_+f)m.push([o+u*Math.cos(_),c+d*Math.sin(_)]);return m.push([o+u*Math.cos(g),c+d*Math.sin(g)]),m.push([o,c]),ve([m],l)}function gg(t,e){return $(t,e)}function mg(t,e,s){return cs(t,e,s)}function _g(t,e,s,n,i){return oe(t,e,s,n,i,!0)}function Rn(t){const e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function Ni(t){return t.randomizer||(t.randomizer=new Jf(t.seed||0)),t.randomizer.next()}function cs(t,e,s,n=1){return s.roughness*n*(Ni(s)*(e-t)+t)}function $(t,e,s=1){return cs(-t,t,e,s)}function oe(t,e,s,n,i,a=!1){const l=a?i.disableMultiStrokeFill:i.disableMultiStroke,o=Vs(t,e,s,n,i,!0,!1);if(l)return o;const c=Vs(t,e,s,n,i,!0,!0);return o.concat(c)}function Vs(t,e,s,n,i,a,l){const o=Math.pow(t-s,2)+Math.pow(e-n,2),c=Math.sqrt(o);let u=1;c<200?u=1:c>500?u=.4:u=-.0016668*c+1.233334;let d=i.maxRandomnessOffset||0;d*d*100>o&&(d=c/10);const p=d/2,g=.2+Ni(i)*.2;let f=i.bowing*i.maxRandomnessOffset*(n-e)/200,m=i.bowing*i.maxRandomnessOffset*(t-s)/200;f=$(f,i,u),m=$(m,i,u);const _=[],k=()=>$(p,i,u),b=()=>$(d,i,u),A=i.preserveVertices;return a&&(l?_.push({op:"move",data:[t+(A?0:k()),e+(A?0:k())]}):_.push({op:"move",data:[t+(A?0:$(d,i,u)),e+(A?0:$(d,i,u))]})),l?_.push({op:"bcurveTo",data:[f+t+(s-t)*g+k(),m+e+(n-e)*g+k(),f+t+2*(s-t)*g+k(),m+e+2*(n-e)*g+k(),s+(A?0:k()),n+(A?0:k())]}):_.push({op:"bcurveTo",data:[f+t+(s-t)*g+b(),m+e+(n-e)*g+b(),f+t+2*(s-t)*g+b(),m+e+2*(n-e)*g+b(),s+(A?0:b()),n+(A?0:b())]}),_}function Ge(t,e,s){if(!t.length)return[];const n=[];n.push([t[0][0]+$(e,s),t[0][1]+$(e,s)]),n.push([t[0][0]+$(e,s),t[0][1]+$(e,s)]);for(let i=1;i3){const a=[],l=1-s.curveTightness;i.push({op:"move",data:[t[1][0],t[1][1]]});for(let o=1;o+21&&i.push(a):i.push(a),i.push(t[e+3])}else{const l=t[e+0],o=t[e+1],c=t[e+2],u=t[e+3],d=ue(l,o,.5),p=ue(o,c,.5),g=ue(c,u,.5),f=ue(d,p,.5),m=ue(p,g,.5),_=ue(f,m,.5);qs([l,d,f,_],0,s,i),qs([_,m,g,u],0,s,i)}return i}function wg(t,e){return us(t,0,t.length,e)}function us(t,e,s,n,i){const a=i||[],l=t[e],o=t[s-1];let c=0,u=1;for(let d=e+1;dc&&(c=p,u=d)}return Math.sqrt(c)>n?(us(t,e,u+1,n,a),us(t,u,s,n,a)):(a.length||a.push(l),a.push(o)),a}function Ys(t,e=.15,s){const n=[],i=(t.length-1)/3;for(let a=0;a0?us(n,0,n.length,s):n}function xg(t,e,s){const n=cn(t),i=Bi(Li(n)),a=[];let l=[],o=[0,0],c=[];const u=()=>{c.length>=4&&l.push(...Ys(c,e)),c=[]},d=()=>{u(),l.length&&(a.push(l),l=[])};for(const{key:g,data:f}of i)switch(g){case"M":d(),o=[f[0],f[1]],l.push(o);break;case"L":u(),l.push([f[0],f[1]]);break;case"C":if(!c.length){const m=l.length?l[l.length-1]:o;c.push([m[0],m[1]])}c.push([f[0],f[1]]),c.push([f[2],f[3]]),c.push([f[4],f[5]]);break;case"Z":u(),l.push([o[0],o[1]]);break}if(d(),!s)return a;const p=[];for(const g of a){const f=wg(g,s);f.length&&p.push(f)}return p}const nt="none";class $g{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Di()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,s,n){return{shape:e,sets:s||[],options:n||this.defaultOptions}}line(e,s,n,i,a){const l=this._o(a);return this._d("line",[at(e,s,n,i,l)],l)}rectangle(e,s,n,i,a){const l=this._o(a),o=[],c=Ii(e,s,n,i,l);if(l.fill){const u=[[e,s],[e+n,s],[e+n,s+i],[e,s+i]];l.fillStyle==="solid"?o.push(Ss([u],l)):o.push(ve([u],l))}return l.stroke!==nt&&o.push(c),this._d("rectangle",o,l)}ellipse(e,s,n,i,a){const l=this._o(a),o=[],c=Hi(n,i,l),u=Ws(e,s,l,c);if(l.fill)if(l.fillStyle==="solid"){const d=Ws(e,s,l,c).opset;d.type="fillPath",o.push(d)}else o.push(ve([u.estimatedPoints],l));return l.stroke!==nt&&o.push(u.opset),this._d("ellipse",o,l)}circle(e,s,n,i){const a=this.ellipse(e,s,n,n,i);return a.shape="circle",a}linearPath(e,s){const n=this._o(s);return this._d("linearPath",[Ie(e,!1,n)],n)}arc(e,s,n,i,a,l,o=!1,c){const u=this._o(c),d=[],p=Nn(e,s,n,i,a,l,o,!0,u);if(o&&u.fill)if(u.fillStyle==="solid"){const g=Object.assign({},u);g.disableMultiStroke=!0;const f=Nn(e,s,n,i,a,l,!0,!1,g);f.type="fillPath",d.push(f)}else d.push(fg(e,s,n,i,a,l,u));return u.stroke!==nt&&d.push(p),this._d("arc",d,u)}curve(e,s){const n=this._o(s),i=[],a=Hn(e,n);if(n.fill&&n.fill!==nt)if(n.fillStyle==="solid"){const l=Hn(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(l.ops)})}else{const l=[],o=e;if(o.length){const u=typeof o[0][0]=="number"?[o]:o;for(const d of u)d.length<3?l.push(...d):d.length===3?l.push(...Ys(zn([d[0],d[0],d[1],d[2]]),10,(1+n.roughness)/2)):l.push(...Ys(zn(d),10,(1+n.roughness)/2))}l.length&&i.push(ve([l],n))}return n.stroke!==nt&&i.push(a),this._d("curve",i,n)}polygon(e,s){const n=this._o(s),i=[],a=Ie(e,!0,n);return n.fill&&(n.fillStyle==="solid"?i.push(Ss([e],n)):i.push(ve([e],n))),n.stroke!==nt&&i.push(a),this._d("polygon",i,n)}path(e,s){const n=this._o(s),i=[];if(!e)return this._d("path",i,n);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const a=n.fill&&n.fill!=="transparent"&&n.fill!==nt,l=n.stroke!==nt,o=!!(n.simplification&&n.simplification<1),c=o?4-4*(n.simplification||1):(1+n.roughness)/2,u=xg(e,1,c),d=Fn(e,n);if(a)if(n.fillStyle==="solid")if(u.length===1){const p=Fn(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(p.ops)})}else i.push(Ss(u,n));else i.push(ve(u,n));return l&&(o?u.forEach(p=>{i.push(Ie(p,!1,n))}):i.push(d)),this._d("path",i,n)}opsToPath(e,s){let n="";for(const i of e.ops){const a=typeof s=="number"&&s>=0?i.data.map(l=>+l.toFixed(s)):i.data;switch(i.op){case"move":n+=`M${a[0]} ${a[1]} `;break;case"bcurveTo":n+=`C${a[0]} ${a[1]}, ${a[2]} ${a[3]}, ${a[4]} ${a[5]} `;break;case"lineTo":n+=`L${a[0]} ${a[1]} `;break}}return n.trim()}toPaths(e){const s=e.sets||[],n=e.options||this.defaultOptions,i=[];for(const a of s){let l=null;switch(a.type){case"path":l={d:this.opsToPath(a),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:nt};break;case"fillPath":l={d:this.opsToPath(a),stroke:nt,strokeWidth:0,fill:n.fill||nt};break;case"fillSketch":l=this.fillSketch(a,n);break}l&&i.push(l)}return i}fillSketch(e,s){let n=s.fillWeight;return n<0&&(n=s.strokeWidth/2),{d:this.opsToPath(e),stroke:s.fill||nt,strokeWidth:n,fill:nt}}_mergedShape(e){return e.filter((s,n)=>n===0?!0:s.op!=="move")}}const Fi="http://www.w3.org/2000/svg",Cg=800;let Ms=null;function Ag(){return Ms||(Ms=new $g().defaultOptions),Ms}function Es(t,e,s){return{...Ag(),maxRandomnessOffset:2,roughness:t==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:t!=="double",disableMultiStrokeFill:!1,seed:e,...s}}function Sg(t){const e=t.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const s=e;if(s.length)switch(s.length){case 4:return[...s];case 1:return[s[0],s[0],s[0],s[0]];case 2:return[...s,...s];case 3:return[...s,s[1]];default:return[s[0],s[1],s[2],s[3]]}}}return[5,5,5,5]}function Mg(t,e,s,n,i,a){const l=[];let o=s.strokeWidth||2;const c=Sg(s),u=s.animate===void 0?!0:!!s.animate,d=s.iterations||2,p=s.rtl?1:0,g=Es("single",a,s);switch(s.type){case"underline":{const f=e.y+e.h+c[2];for(let m=p;mA.setAttribute(P,z);for(const A of f){const P=document.createElementNS(Fi,"path");if(b(P,"d",A),b(P,"fill","none"),b(P,"stroke",s.color||"currentColor"),b(P,"stroke-width",`${o}`),s.opacity!==void 0&&b(P,"style",`opacity:${s.opacity}`),u){const z=P.getTotalLength();m.push(z),k+=z}t.appendChild(P),_.push(P)}if(u){let A=0;for(let P=0;P<_.length;P++){const z=_[P],j=m[P],W=k?i*(j/k):0,ct=n+A,K=z.style;K.strokeDashoffset=`${j}`,K.strokeDasharray=`${j}`,K.animation=`rough-notation-dash ${W}ms ease-out ${ct}ms forwards`,A+=W}return Wn(i+n)}}return Wn(0)}function Wn(t){return new Promise(e=>setTimeout(e,t))}function Eg(t){const e=[];for(const s of t){let n="";for(const i of s.ops){const a=i.data;switch(i.op){case"move":n.trim()&&e.push(n.trim()),n=`M${a[0]} ${a[1]} `;break;case"bcurveTo":n+=`C${a[0]} ${a[1]}, ${a[2]} ${a[3]}, ${a[4]} ${a[5]} `;break;case"lineTo":n+=`L${a[0]} ${a[1]} `;break}}n.trim()&&e.push(n.trim())}return e}function Pg(){if(!window.__rno_kf_s){const t=window.__rno_kf_s=document.createElement("style");t.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(t)}}var Dg=Object.defineProperty,Tg=(t,e,s)=>e in t?Dg(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,ut=(t,e,s)=>(Tg(t,typeof e!="symbol"?e+"":e,s),s);class Lg{constructor(e,s){ut(this,"_state","unattached"),ut(this,"_config"),ut(this,"_resizing",!1),ut(this,"_ro"),ut(this,"_seed",Di()),ut(this,"_e"),ut(this,"_svg"),ut(this,"_lastSizes",[]),ut(this,"_animationDelay",0),ut(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),ut(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(s)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,s){this._config[e]!==s&&(this._config[e]=s,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){Pg();const e=this._svg=document.createElementNS(Fi,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const s=e.style;s.position="absolute",s.top="0",s.left="0",s.overflow="visible",s.pointerEvents="none",s.width="100px",s.height="100px";const n=this._config.type==="highlight";if(this._e.insertAdjacentElement(n?"beforebegin":"afterend",e),this._state="not-showing",n){const i=window.getComputedStyle(this._e).position;(!i||i==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const s of e)s.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let s=0;sMath.round(i)===Math.round(a);return n(e.x,s.x)&&n(e.y,s.y)&&n(e.w,s.w)&&n(e.h,s.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,s){let n=this._config;s&&(n=JSON.parse(JSON.stringify(this._config)),n.animate=!1);const i=this.rects();let a=0;i.forEach(u=>a+=u.w);const l=n.animationDuration||Cg;let o=0;const c=[];for(let u=0;uObject.assign(t,{type:"box"}),circle:t=>Object.assign(t,{type:"circle"}),underline:t=>Object.assign(t,{type:"underline"}),highlight:t=>Object.assign(t,{type:"highlight"}),"strike-through":t=>Object.assign(t,{type:"strike-through"}),"crossed-off":t=>Object.assign(t,{type:"crossed-off"}),bracket:t=>Object.assign(t,{type:"bracket"}),strike:t=>Object.assign(t,{type:"strike-through"}),cross:t=>Object.assign(t,{type:"crossed-off"}),crossed:t=>Object.assign(t,{type:"crossed-off"}),linethrough:t=>Object.assign(t,{type:"strike-through"}),"line-through":t=>Object.assign(t,{type:"strike-through"}),black:t=>tt(t,"text-black"),blue:t=>tt(t,"text-blue"),cyan:t=>tt(t,"text-cyan"),gray:t=>tt(t,"text-gray"),green:t=>tt(t,"text-green"),indigo:t=>tt(t,"text-indigo"),lime:t=>tt(t,"text-lime"),orange:t=>tt(t,"text-orange"),pink:t=>tt(t,"text-pink"),purple:t=>tt(t,"text-purple"),red:t=>tt(t,"text-red"),teal:t=>tt(t,"text-teal"),white:t=>tt(t,"text-white"),yellow:t=>tt(t,"text-yellow")},Og=[[/^delay-?(\d+)?$/,(t,e,s)=>{const n=(t[1]?Number.parseInt(t[1]):s)||300;return e.delay=n,e}],[/^(?:op|opacity)-?(\d+)?$/,(t,e,s)=>{const n=(t[1]?Number.parseInt(t[1]):s)||100;return e.opacity=n/100,e}]];function Ig(){return{install(t){t.directive("mark",{name:"v-mark",mounted:(e,s)=>{const n=h(()=>{const l=typeof s.value=="object"&&!Array.isArray(s.value)?{...s.value}:{at:s.value};let o={at:l.at};const c=Object.entries(s.modifiers).filter(([d,p])=>{if(Vn[d])return o=Vn[d](o,p),!1;for(const[g,f]of Og){const m=d.match(g);if(m)return o=f(m,o,p),!1}return!0});c.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",c);const u={...o,...l};return u.type||(u.type="underline"),u}),i=Bg(e,n.value),a=ts(e,s,n.value.at);if(!a){console.error("[Slidev] Invalid value for v-mark:",n.value.at);return}le(()=>{let l;n.value.class&&(i.class=n.value.class),n.value.color&&(i.color=n.value.color);const o=n.value.at;if(o===!0)l=!0;else if(o===!1)l=!1;else if(a)l=a.isActive.value;else{console.error("[Slidev] Invalid value for v-mark:",o);return}l!=null&&(l?i.show():i.hide())})}})}}}const qn=ya(),Ps=et("slidev-color-schema","auto"),Yn=h(()=>N.colorSchema!=="auto"),Ri=h({get(){return Yn.value?N.colorSchema==="dark":Ps.value==="auto"?qn.value:Ps.value==="dark"},set(t){Yn.value||(Ps.value=t===qn.value?"auto":t?"dark":"light")}}),vm=Gn(Ri);ps&&$e(Ri,t=>{const e=document.querySelector("html");e.classList.toggle("dark",t),e.classList.toggle("light",!t)},{immediate:!0});function Hg(t){const e=h(()=>t.value.path),s=h(()=>G.length),n=h(()=>Number.parseInt(e.value.split(/\//g).slice(-1)[0])||1),i=h(()=>gs(n.value)),a=h(()=>G.find(g=>g.path===`${n.value}`)??G.at(-1)??G[0]),l=h(()=>{var g,f,m;return(m=(f=(g=a.value)==null?void 0:g.meta)==null?void 0:f.slide)==null?void 0:m.id}),o=h(()=>{var g,f;return((f=(g=a.value)==null?void 0:g.meta)==null?void 0:f.layout)||(n.value===1?"cover":"default")}),c=h(()=>G.find(g=>g.path===`${Math.min(G.length,n.value+1)}`)),u=h(()=>G.filter(g=>{var f,m;return(m=(f=g.meta)==null?void 0:f.slide)==null?void 0:m.title}).reduce((g,f)=>(an(g,f),g),[])),d=h(()=>rn(u.value,a.value)),p=h(()=>ln(d.value));return{rawRoutes:G,route:t,path:e,total:s,clicksContext:re,clicks:tn,clicksTotal:ze,currentPage:n,currentPath:i,currentRoute:a,currentSlideId:l,currentLayout:o,nextRoute:c,rawTree:u,treeWithActiveStatuses:d,tree:p,go:nn,downloadPDF:jf,next:Mi,nextSlide:en,openInEditor:Uf,prev:Ei,prevSlide:sn}}function Ng(t){return{nav:Hg(t),configs:N,themeConfigs:h(()=>N.themeConfig)}}function Fg(){return{install(t){const e=v(Ng(mt));t.provide(ui,U("none")),t.provide(hi,e),t.provide(ci,h(()=>e.nav.currentPage))}}}const me=va(Kf);me.use(it);me.use(hr());me.use(Zf());me.use(Ig());me.use(Fg());Gf({app:me,router:it});me.mount("#app");export{Zg as $,dr as A,pm as B,Ts as C,Vg as D,re as E,se as F,mm as G,gm as H,xe as I,Wg as J,nm as K,Ye as L,Ir as M,fm as N,rs as O,lm as P,om as Q,Y as R,en as S,sn as T,Fs as U,vm as V,cm as W,Gg as X,nn as Y,Jg as Z,S as _,Yg as a,em as a0,Af as a1,tm as a2,fs as a3,Xg as a4,Hs as a5,If as a6,_m as a7,Yn as a8,Ri as a9,pe as aa,os as ab,dm as ac,rm as ad,jf as ae,bi as af,km as ag,Lr as ah,ci as ai,ui as aj,qg as ak,Zs as al,Te as am,Ns as an,Sf as ao,Mf as ap,Ef as aq,Df as ar,hm as as,Z as at,E as au,Tf as av,li as aw,Kg as b,N as c,im as d,Re as e,Lf as f,ls as g,um as h,Qg as i,sm as j,am as k,zg as l,yr as m,Mi as n,hi as o,Ei as p,Hg as q,Hr as r,Cf as s,ni as t,ym as u,mt as v,Bn as w,ac as x,G as y,Tr as z}; -function __vite__mapDeps(indexes) { - if (!__vite__mapDeps.viteFileDeps) { - __vite__mapDeps.viteFileDeps = ["assets/slidev/play-BVMXS2_7.js","assets/modules/vue-CoY6Ph6S.js","assets/slidev/SlidesShow-iloAA249.js","assets/modules/unplugin-icons-DdL09wdV.js","assets/slidev/bottom-DuU1WGzN.js","assets/slidev/DrawingPreview-CoeHpL4z.js","assets/modules/shiki-CNrqLFow.js","assets/modules/shiki-BSchMNmt.css","assets/SlidesShow-Do3DTZt5.css","assets/slidev/PrintStyle-VSqOxZ4_.js","assets/play-CoA43pdi.css","assets/slidev/print-xoTYi0OT.js","assets/print-Nssgrd1X.css","assets/slidev/print-CXpQb0cT.js","assets/slidev/NoteDisplay-B6Kn_NKF.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/presenter-DXOhcyNJ.js","assets/slidev/DrawingControls-Clq2DEFQ.js","assets/DrawingControls-BO6lw4N5.css","assets/presenter-BRsvFpoV.css"] - } - return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) -} diff --git a/06-scalable/assets/index-DK5cJv9W.js b/06-scalable/assets/index-DK5cJv9W.js new file mode 100644 index 0000000..1ab6a1f --- /dev/null +++ b/06-scalable/assets/index-DK5cJv9W.js @@ -0,0 +1,51 @@ +const __vite__fileDeps=["assets/slidev/1-D-8fczNX.js","assets/modules/vue-CyVBQAnX.js","assets/slidev/context-DK7fZVI-.js","assets/modules/shiki-B34Zut0U.js","assets/modules/shiki-BSchMNmt.css","assets/2-DydI_rMs.js","assets/slidev/default-BXwXGoqN.js","assets/3-2vUkJ0jS.js","assets/4-CLwCwhTe.js","assets/slidev/two-cols-BSLkXsP-.js","assets/5-CiMNZNfe.js","assets/6-DIeakLb1.js","assets/7-D_meNjs0.js","assets/slidev/CodeBlockWrapper-1GTzWYD_.js","assets/modules/unplugin-icons-BeR8N7Ub.js","assets/8-Cz8BW-DY.js","assets/9-BwB95Zfl.js","assets/10-Bb6sorjN.js","assets/11-CJ_sHooH.js","assets/12-egZidWBU.js","assets/13-lrBd95E6.js","assets/05-lb-simple-DXb4WkCm.js","assets/14-CJWLMC2k.js","assets/15-BGsIFWUc.js","assets/slidev/16-lQ05v3kc.js","assets/17-CSJsMqxi.js","assets/18-JUOzULrG.js","assets/19-BTy0XfgG.js","assets/20-DGooopiy.js","assets/21-C9mQhzZV.js","assets/22-DVLuSD-e.js","assets/23-d7924F0U.js","assets/slidev/24-D3cqyuIq.js","assets/slidev/25-DL01Wg1N.js","assets/26-CNlZZJ6y.js","assets/slidev/27-BLQr6AwT.js","assets/05-cache-redis-cluster-9qPGnpqd.js","assets/28-57xUCQiz.js","assets/29-C3Inqgya.js","assets/30-C-1029Hr.js","assets/slidev/31-BU_fKCv4.js","assets/32-B1H73VS-.js","assets/33-CcxmdYiR.js","assets/34-BLL7MgtW.js","assets/35-xvmXt75H.js","assets/36-BHCG1g7O.js","assets/37-QUh0Pi45.js","assets/slidev/38-UbEW50_Y.js","assets/05-aosa-Nc6SwzyN.js","assets/slidev/39-CSSO1rb5.js","assets/40-DljBf0a5.js","assets/41-zIPptmwU.js","assets/42-C2ooxU8o.js","assets/43-D6932mAT.js","assets/44-qjnEE3BK.js","assets/45-B_myPjXK.js","assets/46-DAcuDYXN.js","assets/47-DC__hqtJ.js","assets/48-CWdSS91k.js","assets/slidev/49-vtksxDoj.js","assets/slidev/entry-ZmiGPuuu.js","assets/slidev/overview-cmOPZJzU.js","assets/slidev/DrawingPreview-BOG5zJbl.js","assets/DrawingPreview-DJ7dOR_1.css","assets/slidev/IconButton-CJiyqaHF.js","assets/slidev/NoteDisplay-DSpNj69D.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/ClicksSlider-Cc8Z3SRY.js","assets/ClicksSlider-qq1Ub2AL.css","assets/slidev/notes-OINdQOdX.js","assets/slidev/presenter-CLD8XO3o.js","assets/slidev/ContextMenu-Bd5aCYUU.js","assets/ContextMenu-DSnskk1a.css","assets/slidev/DrawingControls-CbEhJrX5.js","assets/DrawingControls-C5T1oZL5.css","assets/presenter-D5oC5Gjj.css","assets/slidev/play-D4eYjzGv.js","assets/play-CoA43pdi.css"],__vite__mapDeps=i=>i.map(i=>__vite__fileDeps[i]); +import{t as $,y as c,n as Zt,z as _o,A as Bn,B as Ps,C as _t,D as Q,E as vo,G as wo,H as ko,I as Cs,J as v,K as bo,L as So,o as As,b as Mo,M as Wn,N as cn,O as Oo,P as To,Q as te,R as Ds,S as un,T as xs,U as Eo,d as Lo,r as $o,c as Po,V as Co,W as Ao,X as Do,Y as xo,Z as Io,_ as Ho,$ as Ro,a0 as jo,a1 as Fo,a2 as No,a3 as Vo,a4 as Uo,a5 as Bo,u as Wo}from"./modules/vue-CyVBQAnX.js";import{T as zo}from"./modules/shiki-B34Zut0U.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))s(o);new MutationObserver(o=>{for(const r of o)if(r.type==="childList")for(const i of r.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&s(i)}).observe(document,{childList:!0,subtree:!0});function n(o){const r={};return o.integrity&&(r.integrity=o.integrity),o.referrerPolicy&&(r.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?r.credentials="include":o.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function s(o){if(o.ep)return;o.ep=!0;const r=n(o);fetch(o.href,r)}})();function At(t,e,n){return Math.min(n,Math.max(e,t))}function qo(...t){return Jo(t).reduce((e,n)=>e+n,0)}function Ko(t){return t=t??[],Array.isArray(t)?t:[t]}function Jo(t){return Ko(t).flat(1)}function Wl(...t){let e,n,s;t.length===1?(e=0,s=1,[n]=t):[e,n,s=1]=t;const o=[];let r=e;for(;re(n,s)).filter(Go))}const H={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:!0,monacoTypesSource:"local",monacoTypesAdditionalPackages:[],monacoRunAdditionalDeps:[],download:!1,export:{},info:!1,highlighter:"shiki",twoslash:!0,lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},zl="build",Is=$(H.aspectRatio??16/9),Zo=$(H.canvasWidth??980),ql=c(()=>Math.ceil(Zo.value/Is.value)),Yo=c(()=>Qo(H.themeConfig||{},(t,e)=>[`--slidev-theme-${t}`,e]));function Ln(t,e={},n){for(const s in t){const o=t[s],r=n?`${n}:${s}`:s;typeof o=="object"&&o!==null?Ln(o,e,r):typeof o=="function"&&(e[r]=o)}return e}const Xo={run:t=>t()},er=()=>Xo,Hs=typeof console.createTask<"u"?console.createTask:er;function tr(t,e){const n=e.shift(),s=Hs(n);return t.reduce((o,r)=>o.then(()=>s.run(()=>r(...e))),Promise.resolve())}function nr(t,e){const n=e.shift(),s=Hs(n);return Promise.all(t.map(o=>s.run(()=>o(...e))))}function yn(t,e){for(const n of[...t])n(e)}class sr{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,n,s={}){if(!e||typeof n!="function")return()=>{};const o=e;let r;for(;this._deprecatedHooks[e];)r=this._deprecatedHooks[e],e=r.to;if(r&&!s.allowDeprecated){let i=r.message;i||(i=`${o} hook has been deprecated`+(r.to?`, please use ${r.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(i)||(console.warn(i),this._deprecatedMessages.add(i))}if(!n.name)try{Object.defineProperty(n,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(n),()=>{n&&(this.removeHook(e,n),n=void 0)}}hookOnce(e,n){let s,o=(...r)=>(typeof s=="function"&&s(),s=void 0,o=void 0,n(...r));return s=this.hook(e,o),s}removeHook(e,n){if(this._hooks[e]){const s=this._hooks[e].indexOf(n);s!==-1&&this._hooks[e].splice(s,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,n){this._deprecatedHooks[e]=typeof n=="string"?{to:n}:n;const s=this._hooks[e]||[];delete this._hooks[e];for(const o of s)this.hook(e,o)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const n in e)this.deprecateHook(n,e[n])}addHooks(e){const n=Ln(e),s=Object.keys(n).map(o=>this.hook(o,n[o]));return()=>{for(const o of s.splice(0,s.length))o()}}removeHooks(e){const n=Ln(e);for(const s in n)this.removeHook(s,n[s])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...n){return n.unshift(e),this.callHookWith(tr,e,...n)}callHookParallel(e,...n){return n.unshift(e),this.callHookWith(nr,e,...n)}callHookWith(e,n,...s){const o=this._before||this._after?{name:n,args:s,context:{}}:void 0;this._before&&yn(this._before,o);const r=e(n in this._hooks?[...this._hooks[n]]:[],s);return r instanceof Promise?r.finally(()=>{this._after&&o&&yn(this._after,o)}):(this._after&&o&&yn(this._after,o),r)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const n=this._before.indexOf(e);n!==-1&&this._before.splice(n,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const n=this._after.indexOf(e);n!==-1&&this._after.splice(n,1)}}}}function or(){return new sr}function rr(t){return Array.isArray(t)?t:[t]}const ir=["title","titleTemplate","script","style","noscript"],Bt=["base","meta","link","style","script","noscript"],ar=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],lr=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],Rs=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],cr=typeof window<"u";function zn(t){let e=9;for(let n=0;n>>9)+65536).toString(16).substring(1,8).toLowerCase()}function is(t){return t._h||zn(t._d?t._d:`${t.tag}:${t.textContent||t.innerHTML||""}:${Object.entries(t.props).map(([e,n])=>`${e}:${String(n)}`).join(",")}`)}function js(t,e){const{props:n,tag:s}=t;if(lr.includes(s))return s;if(s==="link"&&n.rel==="canonical")return"canonical";if(n.charset)return"charset";const o=["id"];s==="meta"&&o.push("name","property","http-equiv");for(const r of o)if(typeof n[r]<"u"){const i=String(n[r]);return e&&!e(i)?!1:`${s}:${r}:${i}`}return!1}function as(t,e){return t==null?e||null:typeof t=="function"?t(e):t}async function ur(t,e,n){const s={tag:t,props:await Fs(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(t)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(t))};return Rs.forEach(o=>{const r=typeof s.props[o]<"u"?s.props[o]:n[o];typeof r<"u"&&((!["innerHTML","textContent","children"].includes(o)||ir.includes(s.tag))&&(s[o==="children"?"innerHTML":o]=r),delete s.props[o])}),s.props.body&&(s.tagPosition="bodyClose",delete s.props.body),s.tag==="script"&&typeof s.innerHTML=="object"&&(s.innerHTML=JSON.stringify(s.innerHTML),s.props.type=s.props.type||"application/json"),Array.isArray(s.props.content)?s.props.content.map(o=>({...s,props:{...s.props,content:o}})):s}function fr(t,e){var s;const n=t==="class"?" ":";";return typeof e=="object"&&!Array.isArray(e)&&(e=Object.entries(e).filter(([,o])=>o).map(([o,r])=>t==="style"?`${o}:${r}`:o)),(s=Array.isArray(e)?e.join(n):e)==null?void 0:s.split(n).filter(o=>o.trim()).filter(Boolean).join(n)}async function Fs(t,e){for(const n of Object.keys(t)){if(["class","style"].includes(n)){t[n]=fr(n,t[n]);continue}if(t[n]instanceof Promise&&(t[n]=await t[n]),!e&&!Rs.includes(n)){const s=String(t[n]),o=n.startsWith("data-");s==="true"||s===""?t[n]=o?"true":!0:t[n]||(o&&s==="false"?t[n]="false":delete t[n])}}return t}const dr=10;async function hr(t){const e=[];return Object.entries(t.resolvedInput).filter(([n,s])=>typeof s<"u"&&ar.includes(n)).forEach(([n,s])=>{const o=rr(s);e.push(...o.map(r=>ur(n,r,t)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((n,s)=>(n._e=t._i,t.mode&&(n._m=t.mode),n._p=(t._i<l&&l[u]||void 0,e):a=e[i],typeof a<"u"?(a||"").replace(/"/g,'\\"'):!1}let o=t;try{o=decodeURI(t)}catch{}return(o.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(i=>{const a=s(i.slice(1));typeof a=="string"&&(t=t.replace(new RegExp(`\\${i}(\\W|$)`,"g"),(l,u)=>`${a}${u}`).trim())}),t.includes(ae)&&(t.endsWith(ae)&&(t=t.slice(0,-ae.length).trim()),t.startsWith(ae)&&(t=t.slice(ae.length).trim()),t=t.replace(new RegExp(`\\${ae}\\s*\\${ae}`,"g"),ae),t=Wt(t,{separator:n},n)),t}async function mr(t,e={}){var f;const n=e.document||t.resolvedOptions.document;if(!n||!t.dirty)return;const s={shouldRender:!0,tags:[]};if(await t.hooks.callHook("dom:beforeRender",s),!s.shouldRender)return;const o=(await t.resolveTags()).map(d=>({tag:d,id:Bt.includes(d.tag)?is(d):d.tag,shouldRender:!0}));let r=t._dom;if(!r){r={elMap:{htmlAttrs:n.documentElement,bodyAttrs:n.body}};for(const d of["body","head"]){const h=(f=n[d])==null?void 0:f.children,p=[];for(const m of[...h].filter(g=>Bt.includes(g.tagName.toLowerCase()))){const g={tag:m.tagName.toLowerCase(),props:await Fs(m.getAttributeNames().reduce((w,k)=>({...w,[k]:m.getAttribute(k)}),{})),innerHTML:m.innerHTML};let y=1,_=js(g);for(;_&&p.find(w=>w._d===_);)_=`${_}:${y++}`;g._d=_||void 0,p.push(g),r.elMap[m.getAttribute("data-hid")||is(g)]=m}}}r.pendingSideEffects={...r.sideEffects||{}},r.sideEffects={};function i(d,h,p){const m=`${d}:${h}`;r.sideEffects[m]=p,delete r.pendingSideEffects[m]}function a({id:d,$el:h,tag:p}){const m=p.tag.endsWith("Attrs");r.elMap[d]=h,m||(["textContent","innerHTML"].forEach(g=>{p[g]&&p[g]!==h[g]&&(h[g]=p[g])}),i(d,"el",()=>{var g;(g=r.elMap[d])==null||g.remove(),delete r.elMap[d]}));for(const[g,y]of Object.entries(p._eventHandlers||{}))h.getAttribute(`data-${g}`)!==""&&((p.tag==="bodyAttrs"?n.defaultView:h).addEventListener(g.replace("on",""),y.bind(h)),h.setAttribute(`data-${g}`,""));Object.entries(p.props).forEach(([g,y])=>{const _=`attr:${g}`;if(g==="class")for(const w of(y||"").split(" ").filter(Boolean))m&&i(d,`${_}:${w}`,()=>h.classList.remove(w)),!h.classList.contains(w)&&h.classList.add(w);else if(g==="style")for(const w of(y||"").split(";").filter(Boolean)){const[k,...S]=w.split(":").map(E=>E.trim());i(d,`${_}:${w}:${k}`,()=>{h.style.removeProperty(k)}),h.style.setProperty(k,S.join(":"))}else h.getAttribute(g)!==y&&h.setAttribute(g,y===!0?"":String(y)),m&&i(d,_,()=>h.removeAttribute(g))})}const l=[],u={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const d of o){const{tag:h,shouldRender:p,id:m}=d;if(p){if(h.tag==="title"){n.title=h.textContent;continue}d.$el=d.$el||r.elMap[m],d.$el?a(d):Bt.includes(h.tag)&&l.push(d)}}for(const d of l){const h=d.tag.tagPosition||"head";d.$el=n.createElement(d.tag.tag),a(d),u[h]=u[h]||n.createDocumentFragment(),u[h].appendChild(d.$el)}for(const d of o)await t.hooks.callHook("dom:renderTag",d,n,i);u.head&&n.head.appendChild(u.head),u.bodyOpen&&n.body.insertBefore(u.bodyOpen,n.body.firstChild),u.bodyClose&&n.body.appendChild(u.bodyClose),Object.values(r.pendingSideEffects).forEach(d=>d()),t._dom=r,t.dirty=!1,await t.hooks.callHook("dom:rendered",{renders:o})}async function gr(t,e={}){const n=e.delayFn||(s=>setTimeout(s,10));return t._domUpdatePromise=t._domUpdatePromise||new Promise(s=>n(async()=>{await mr(t,e),delete t._domUpdatePromise,s()}))}function yr(t){return e=>{var s,o;const n=((o=(s=e.resolvedOptions.document)==null?void 0:s.head.querySelector('script[id="unhead:payload"]'))==null?void 0:o.innerHTML)||!1;return n&&e.push(JSON.parse(n)),{mode:"client",hooks:{"entries:updated":function(r){gr(r,t)}}}}}const _r=["templateParams","htmlAttrs","bodyAttrs"],vr={hooks:{"tag:normalise":function({tag:t}){["hid","vmid","key"].forEach(s=>{t.props[s]&&(t.key=t.props[s],delete t.props[s])});const n=js(t)||(t.key?`${t.tag}:${t.key}`:!1);n&&(t._d=n)},"tags:resolve":function(t){const e={};t.tags.forEach(s=>{const o=(s.key?`${s.tag}:${s.key}`:s._d)||s._p,r=e[o];if(r){let a=s==null?void 0:s.tagDuplicateStrategy;if(!a&&_r.includes(s.tag)&&(a="merge"),a==="merge"){const l=r.props;["class","style"].forEach(u=>{l[u]&&(s.props[u]?(u==="style"&&!l[u].endsWith(";")&&(l[u]+=";"),s.props[u]=`${l[u]} ${s.props[u]}`):s.props[u]=l[u])}),e[o].props={...l,...s.props};return}else if(s._e===r._e){r._duped=r._duped||[],s._d=`${r._d}:${r._duped.length+1}`,r._duped.push(s);return}else if(Yt(s)>Yt(r))return}const i=Object.keys(s.props).length+(s.innerHTML?1:0)+(s.textContent?1:0);if(Bt.includes(s.tag)&&i===0){delete e[o];return}e[o]=s});const n=[];Object.values(e).forEach(s=>{const o=s._duped;delete s._duped,n.push(s),o&&n.push(...o)}),t.tags=n,t.tags=t.tags.filter(s=>!(s.tag==="meta"&&(s.props.name||s.props.property)&&!s.props.content))}}},wr={mode:"server",hooks:{"tags:resolve":function(t){const e={};t.tags.filter(n=>["titleTemplate","templateParams","title"].includes(n.tag)&&n._m==="server").forEach(n=>{e[n.tag]=n.tag.startsWith("title")?n.textContent:n.props}),Object.keys(e).length&&t.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},kr=["script","link","bodyAttrs"],br=t=>({hooks:{"tags:resolve":function(e){for(const n of e.tags.filter(s=>kr.includes(s.tag)))Object.entries(n.props).forEach(([s,o])=>{s.startsWith("on")&&typeof o=="function"&&(t.ssr&&us.includes(s)?n.props[s]=`this.dataset.${s}fired = true`:delete n.props[s],n._eventHandlers=n._eventHandlers||{},n._eventHandlers[s]=o)}),t.ssr&&n._eventHandlers&&(n.props.src||n.props.href)&&(n.key=n.key||zn(n.props.src||n.props.href))},"dom:renderTag":function({$el:e,tag:n}){var s,o;for(const r of Object.keys((e==null?void 0:e.dataset)||{}).filter(i=>us.some(a=>`${a}fired`===i))){const i=r.replace("fired","");(o=(s=n._eventHandlers)==null?void 0:s[i])==null||o.call(e,new Event(i.replace("on","")))}}}}),Sr=["link","style","script","noscript"],Mr={hooks:{"tag:normalise":({tag:t})=>{t.key&&Sr.includes(t.tag)&&(t.props["data-hid"]=t._h=zn(t.key))}}},Or={hooks:{"tags:resolve":t=>{const e=n=>{var s;return(s=t.tags.find(o=>o._d===n))==null?void 0:s._p};for(const{prefix:n,offset:s}of pr)for(const o of t.tags.filter(r=>typeof r.tagPriority=="string"&&r.tagPriority.startsWith(n))){const r=e(o.tagPriority.replace(n,""));typeof r<"u"&&(o._p=r+s)}t.tags.sort((n,s)=>n._p-s._p).sort((n,s)=>Yt(n)-Yt(s))}}},Tr={meta:"content",link:"href",htmlAttrs:"lang"},Er=t=>({hooks:{"tags:resolve":e=>{var a;const{tags:n}=e,s=(a=n.find(l=>l.tag==="title"))==null?void 0:a.textContent,o=n.findIndex(l=>l.tag==="templateParams"),r=o!==-1?n[o].props:{},i=r.separator||"|";delete r.separator,r.pageTitle=Wt(r.pageTitle||s||"",r,i);for(const l of n.filter(u=>u.processTemplateParams!==!1)){const u=Tr[l.tag];u&&typeof l.props[u]=="string"?l.props[u]=Wt(l.props[u],r,i):(l.processTemplateParams===!0||["titleTemplate","title"].includes(l.tag))&&["innerHTML","textContent"].forEach(f=>{typeof l[f]=="string"&&(l[f]=Wt(l[f],r,i))})}t._templateParams=r,t._separator=i,e.tags=n.filter(l=>l.tag!=="templateParams")}}}),Lr={hooks:{"tags:resolve":t=>{const{tags:e}=t;let n=e.findIndex(o=>o.tag==="titleTemplate");const s=e.findIndex(o=>o.tag==="title");if(s!==-1&&n!==-1){const o=as(e[n].textContent,e[s].textContent);o!==null?e[s].textContent=o||e[s].textContent:delete e[s]}else if(n!==-1){const o=as(e[n].textContent);o!==null&&(e[n].textContent=o,e[n].tag="title",n=-1)}n!==-1&&delete e[n],t.tags=e.filter(Boolean)}}},$r={hooks:{"tags:afterResolve":function(t){for(const e of t.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{a.dirty=!0,e.callHook("entries:updated",a)};let o=0,r=[];const i=[],a={plugins:i,dirty:!1,resolvedOptions:t,hooks:e,headEntries(){return r},use(l){const u=typeof l=="function"?l(a):l;(!u.key||!i.some(f=>f.key===u.key))&&(i.push(u),fs(u.mode,n)&&e.addHooks(u.hooks||{}))},push(l,u){u==null||delete u.head;const f={_i:o++,input:l,...u};return fs(f.mode,n)&&(r.push(f),s()),{dispose(){r=r.filter(d=>d._i!==f._i),e.callHook("entries:updated",a),s()},patch(d){r=r.map(h=>(h._i===f._i&&(h.input=f.input=d),h)),s()}}},async resolveTags(){const l={tags:[],entries:[...r]};await e.callHook("entries:resolve",l);for(const u of l.entries){const f=u.resolvedInput||u.input;if(u.resolvedInput=await(u.transform?u.transform(f):f),u.resolvedInput)for(const d of await hr(u)){const h={tag:d,entry:u,resolvedOptions:a.resolvedOptions};await e.callHook("tag:normalise",h),l.tags.push(h.tag)}}return await e.callHook("tags:beforeResolve",l),await e.callHook("tags:resolve",l),await e.callHook("tags:afterResolve",l),l.tags},ssr:n};return[vr,wr,br,Mr,Or,Er,Lr,$r,...(t==null?void 0:t.plugins)||[]].forEach(l=>a.use(l)),a.hooks.callHook("init",a),a}function Ar(){return Ns}const Dr=_o.startsWith("3");function xr(t){return typeof t=="function"?t():Bn(t)}function Xt(t,e=""){if(t instanceof Promise)return t;const n=xr(t);return!t||!n?n:Array.isArray(n)?n.map(s=>Xt(s,e)):typeof n=="object"?Object.fromEntries(Object.entries(n).map(([s,o])=>s==="titleTemplate"||s.startsWith("on")?[s,Bn(o)]:[s,Xt(o,s)])):n}const Ir={hooks:{"entries:resolve":function(t){for(const e of t.entries)e.resolvedInput=Xt(e.input)}}},Vs="usehead";function Hr(t){return{install(n){Dr&&(n.config.globalProperties.$unhead=t,n.config.globalProperties.$head=t,n.provide(Vs,t))}}.install}function Rr(t={}){t.domDelayFn=t.domDelayFn||(n=>Zt(()=>setTimeout(()=>n(),0)));const e=Pr(t);return e.use(Ir),e.install=Hr(e),e}const ds=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},hs="__unhead_injection_handler__";function jr(){if(hs in ds)return ds[hs]();const t=Ps(Vs);return t||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),t||Ar()}function Fr(t,e={}){const n=e.head||jr();if(n)return n.ssr?n.push(t,e):Nr(n,t,e)}function Nr(t,e,n={}){const s=$(!1),o=$({});_t(()=>{o.value=s.value?{}:Xt(e)});const r=t.push(o.value,n);return Q(o,a=>{r.patch(a)}),Cs()&&(vo(()=>{r.dispose()}),wo(()=>{s.value=!0}),ko(()=>{s.value=!1})),r}function Us(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function Z(t,e,n){Object.defineProperty(t,e,{value:n,writable:!0,enumerable:!1})}const ct=v({page:0,clicks:0});let Vr=[],Ur=[];Z(ct,"$syncUp",!0);Z(ct,"$syncDown",!0);Z(ct,"$paused",!1);Z(ct,"$onSet",t=>Vr.push(t));Z(ct,"$onPatch",t=>Ur.push(t));Us();Z(ct,"$patch",async()=>!1);function Bs(t,e,n=!1){const s=[];let o=!1,r=!1,i,a;const l=v(e);function u(p){s.push(p)}function f(p,m){l[p]!==m&&(clearTimeout(i),o=!0,l[p]=m,i=setTimeout(()=>o=!1,0))}function d(p){o||(clearTimeout(a),r=!0,Object.entries(p).forEach(([m,g])=>{l[m]=g}),a=setTimeout(()=>r=!1,0))}function h(p){let m;n?n&&window.addEventListener("storage",y=>{y&&y.key===p&&y.newValue&&d(JSON.parse(y.newValue))}):(m=new BroadcastChannel(p),m.addEventListener("message",y=>d(y.data)));function g(){!n&&m&&!r?m.postMessage(bo(l)):n&&!r&&window.localStorage.setItem(p,JSON.stringify(l)),o||s.forEach(y=>y(l))}if(Q(l,g,{deep:!0,flush:"sync"}),n){const y=window.localStorage.getItem(p);y&&d(JSON.parse(y))}}return{init:h,onPatch:u,patch:f,state:l}}const{init:Br,onPatch:Wr,patch:St,state:Kl}=Bs(ct,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),ut=v({});let zr=[],qr=[];Z(ut,"$syncUp",!0);Z(ut,"$syncDown",!0);Z(ut,"$paused",!1);Z(ut,"$onSet",t=>zr.push(t));Z(ut,"$onPatch",t=>qr.push(t));Us();Z(ut,"$patch",async()=>!1);const{init:Kr,onPatch:Jl,patch:Gl,state:Ql}=Bs(ut,{},!1),fn="$$slidev-clicks-context",qn="$$slidev-page",Ws="$$slidev-slide-element",Jr="$$slidev-slide-scale",Gr="$$slidev-context",Zl="$$slidev-route",Kn="$$slidev-render-context",Yl="$$slidev-active",Qr="$$slidev-fontmatter",Zr="$$slidev-slide-zoom",zt="slidev-vclick-target",Mt="slidev-vclick-hidden",Ot="slidev-vclick-fade",_n="slidev-vclick-hidden-explicitly",vn="slidev-vclick-current",wn="slidev-vclick-prior",$n=999999,Yr=["localhost","127.0.0.1"],Xr=["clicks","clicksStart","disabled","hide","hideInToc","layout","level","preload","routeAlias","src","title","transition","zoom","dragPos"],Xl=[...Xr,"theme","titleTemplate","info","author","keywords","presenter","download","exportFilename","export","highlighter","lineNumbers","monaco","monacoTypesSource","monacoTypesAdditionalPackages","monacoRunAdditionalDeps","remoteAssets","selectable","record","colorSchema","routerMode","aspectRatio","canvasWidth","themeConfig","favicon","plantUmlServer","fonts","defaults","drawings","htmlAttrs","mdc","contextMenu"],zs=$(!1),Jn=Symbol.for("yaml.alias"),ei=Symbol.for("yaml.document"),lt=Symbol.for("yaml.map"),qs=Symbol.for("yaml.pair"),Gn=Symbol.for("yaml.scalar"),Ht=Symbol.for("yaml.seq"),re=Symbol.for("yaml.node.type"),wt=t=>!!t&&typeof t=="object"&&t[re]===Jn,dn=t=>!!t&&typeof t=="object"&&t[re]===ei,Ks=t=>!!t&&typeof t=="object"&&t[re]===lt,U=t=>!!t&&typeof t=="object"&&t[re]===qs,N=t=>!!t&&typeof t=="object"&&t[re]===Gn,Qn=t=>!!t&&typeof t=="object"&&t[re]===Ht;function J(t){if(t&&typeof t=="object")switch(t[re]){case lt:case Ht:return!0}return!1}function q(t){if(t&&typeof t=="object")switch(t[re]){case Jn:case lt:case Gn:case Ht:return!0}return!1}const ti=t=>(N(t)||J(t))&&!!t.anchor,rt=Symbol("break visit"),ni=Symbol("skip children"),$t=Symbol("remove node");function Dt(t,e){const n=si(e);dn(t)?pt(null,t.contents,n,Object.freeze([t]))===$t&&(t.contents=null):pt(null,t,n,Object.freeze([]))}Dt.BREAK=rt;Dt.SKIP=ni;Dt.REMOVE=$t;function pt(t,e,n,s){const o=oi(t,e,n,s);if(q(o)||U(o))return ri(t,s,o),pt(t,o,n,s);if(typeof o!="symbol"){if(J(e)){s=Object.freeze(s.concat(e));for(let r=0;ree(s,String(o),n));if(t&&typeof t.toJSON=="function"){if(!n||!ti(t))return t.toJSON(e,n);const s={aliasCount:0,count:1,res:void 0};n.anchors.set(t,s),n.onCreate=r=>{s.res=r,delete n.onCreate};const o=t.toJSON(e,n);return n.onCreate&&n.onCreate(o),o}return typeof t=="bigint"&&!(n!=null&&n.keep)?Number(t):t}class Zn{constructor(e){Object.defineProperty(this,re,{value:e})}clone(){const e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:n,maxAliasCount:s,onAnchor:o,reviver:r}={}){if(!dn(e))throw new TypeError("A document argument is required");const i={anchors:new Map,doc:e,keep:!0,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof s=="number"?s:100},a=ee(this,"",i);if(typeof o=="function")for(const{count:l,res:u}of i.anchors.values())o(u,l);return typeof r=="function"?Lt(r,{"":a},"",a):a}}class ii extends Zn{constructor(e){super(Jn),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e){let n;return Dt(e,{Node:(s,o)=>{if(o===this)return Dt.BREAK;o.anchor===this.source&&(n=o)}}),n}toJSON(e,n){if(!n)return{source:this.source};const{anchors:s,doc:o,maxAliasCount:r}=n,i=this.resolve(o);if(!i){const l=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(l)}let a=s.get(i);if(a||(ee(i,null,n),a=s.get(i)),!a||a.res===void 0){const l="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(l)}if(r>=0&&(a.count+=1,a.aliasCount===0&&(a.aliasCount=qt(o,i,s)),a.count*a.aliasCount>r)){const l="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(l)}return a.res}toString(e,n,s){const o=`*${this.source}`;if(e){if(Js(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){const r=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(r)}if(e.implicitKey)return`${o} `}return o}}function qt(t,e,n){if(wt(e)){const s=e.resolve(t),o=n&&s&&n.get(s);return o?o.count*o.aliasCount:0}else if(J(e)){let s=0;for(const o of e.items){const r=qt(t,o,n);r>s&&(s=r)}return s}else if(U(e)){const s=qt(t,e.key,n),o=qt(t,e.value,n);return Math.max(s,o)}return 1}const Gs=t=>!t||typeof t!="function"&&typeof t!="object";class j extends Zn{constructor(e){super(Gn),this.value=e}toJSON(e,n){return n!=null&&n.keep?this.value:ee(this.value,e,n)}toString(){return String(this.value)}}j.BLOCK_FOLDED="BLOCK_FOLDED";j.BLOCK_LITERAL="BLOCK_LITERAL";j.PLAIN="PLAIN";j.QUOTE_DOUBLE="QUOTE_DOUBLE";j.QUOTE_SINGLE="QUOTE_SINGLE";const ai="tag:yaml.org,2002:";function li(t,e,n){if(e){const s=n.filter(r=>r.tag===e),o=s.find(r=>!r.format)??s[0];if(!o)throw new Error(`Tag ${e} not found`);return o}return n.find(s=>{var o;return((o=s.identify)==null?void 0:o.call(s,t))&&!s.format})}function en(t,e,n){var d,h,p;if(dn(t)&&(t=t.contents),q(t))return t;if(U(t)){const m=(h=(d=n.schema[lt]).createNode)==null?void 0:h.call(d,n.schema,null,n);return m.items.push(t),m}(t instanceof String||t instanceof Number||t instanceof Boolean||typeof BigInt<"u"&&t instanceof BigInt)&&(t=t.valueOf());const{aliasDuplicateObjects:s,onAnchor:o,onTagObj:r,schema:i,sourceObjects:a}=n;let l;if(s&&t&&typeof t=="object"){if(l=a.get(t),l)return l.anchor||(l.anchor=o(t)),new ii(l.anchor);l={anchor:null,node:null},a.set(t,l)}e!=null&&e.startsWith("!!")&&(e=ai+e.slice(2));let u=li(t,e,i.tags);if(!u){if(t&&typeof t.toJSON=="function"&&(t=t.toJSON()),!t||typeof t!="object"){const m=new j(t);return l&&(l.node=m),m}u=t instanceof Map?i[lt]:Symbol.iterator in Object(t)?i[Ht]:i[lt]}r&&(r(u),delete n.onTagObj);const f=u!=null&&u.createNode?u.createNode(n.schema,t,n):typeof((p=u==null?void 0:u.nodeClass)==null?void 0:p.from)=="function"?u.nodeClass.from(n.schema,t,n):new j(t);return e?f.tag=e:u.default||(f.tag=u.tag),l&&(l.node=f),f}function ps(t,e,n){let s=n;for(let o=e.length-1;o>=0;--o){const r=e[o];if(typeof r=="number"&&Number.isInteger(r)&&r>=0){const i=[];i[r]=s,s=i}else s=new Map([[r,s]])}return en(s,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:t,sourceObjects:new Map})}const ci=t=>t==null||typeof t=="object"&&!!t[Symbol.iterator]().next().done;class Yn extends Zn{constructor(e,n){super(e),Object.defineProperty(this,"schema",{value:n,configurable:!0,enumerable:!1,writable:!0})}clone(e){const n=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(n.schema=e),n.items=n.items.map(s=>q(s)||U(s)?s.clone(e):s),this.range&&(n.range=this.range.slice()),n}addIn(e,n){if(ci(e))this.add(n);else{const[s,...o]=e,r=this.get(s,!0);if(J(r))r.addIn(o,n);else if(r===void 0&&this.schema)this.set(s,ps(this.schema,o,n));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${o}`)}}deleteIn(e){const[n,...s]=e;if(s.length===0)return this.delete(n);const o=this.get(n,!0);if(J(o))return o.deleteIn(s);throw new Error(`Expected YAML collection at ${n}. Remaining path: ${s}`)}getIn(e,n){const[s,...o]=e,r=this.get(s,!0);return o.length===0?!n&&N(r)?r.value:r:J(r)?r.getIn(o,n):void 0}hasAllNullValues(e){return this.items.every(n=>{if(!U(n))return!1;const s=n.value;return s==null||e&&N(s)&&s.value==null&&!s.commentBefore&&!s.comment&&!s.tag})}hasIn(e){const[n,...s]=e;if(s.length===0)return this.has(n);const o=this.get(n,!0);return J(o)?o.hasIn(s):!1}setIn(e,n){const[s,...o]=e;if(o.length===0)this.set(s,n);else{const r=this.get(s,!0);if(J(r))r.setIn(o,n);else if(r===void 0&&this.schema)this.set(s,ps(this.schema,o,n));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${o}`)}}}Yn.maxFlowStringSingleLineLength=60;const ui=t=>t.replace(/^(?!$)(?: $)?/gm,"#");function xt(t,e){return/^\n+$/.test(t)?t.substring(1):e?t.replace(/^(?! *$)/gm,e):t}const mt=(t,e,n)=>t.endsWith(` +`)?xt(n,e):n.includes(` +`)?` +`+xt(n,e):(t.endsWith(" ")?"":" ")+n,Qs="flow",Pn="block",Kt="quoted";function hn(t,e,n="flow",{indentAtStart:s,lineWidth:o=80,minContentWidth:r=20,onFold:i,onOverflow:a}={}){if(!o||o<0)return t;const l=Math.max(1+r,1+o-e.length);if(t.length<=l)return t;const u=[],f={};let d=o-e.length;typeof s=="number"&&(s>o-Math.max(2,r)?u.push(0):d=o-s);let h,p,m=!1,g=-1,y=-1,_=-1;n===Pn&&(g=ms(t,g,e.length),g!==-1&&(d=g+l));for(let k;k=t[g+=1];){if(n===Kt&&k==="\\"){switch(y=g,t[g+1]){case"x":g+=3;break;case"u":g+=5;break;case"U":g+=9;break;default:g+=1}_=g}if(k===` +`)n===Pn&&(g=ms(t,g,e.length)),d=g+e.length+l,h=void 0;else{if(k===" "&&p&&p!==" "&&p!==` +`&&p!==" "){const S=t[g+1];S&&S!==" "&&S!==` +`&&S!==" "&&(h=g)}if(g>=d)if(h)u.push(h),d=h+l,h=void 0;else if(n===Kt){for(;p===" "||p===" ";)p=k,k=t[g+=1],m=!0;const S=g>_+1?g-2:y-1;if(f[S])return t;u.push(S),f[S]=!0,d=S+l,h=void 0}else m=!0}p=k}if(m&&a&&a(),u.length===0)return t;i&&i();let w=t.slice(0,u[0]);for(let k=0;k({indentAtStart:e?t.indent.length:t.indentAtStart,lineWidth:t.options.lineWidth,minContentWidth:t.options.minContentWidth}),mn=t=>/^(%|---|\.\.\.)/m.test(t);function fi(t,e,n){if(!e||e<0)return!1;const s=e-n,o=t.length;if(o<=s)return!1;for(let r=0,i=0;rs)return!0;if(i=r+1,o-i<=s)return!1}return!0}function Pt(t,e){const n=JSON.stringify(t);if(e.options.doubleQuotedAsJSON)return n;const{implicitKey:s}=e,o=e.options.doubleQuotedMinMultiLineLength,r=e.indent||(mn(t)?" ":"");let i="",a=0;for(let l=0,u=n[l];u;u=n[++l])if(u===" "&&n[l+1]==="\\"&&n[l+2]==="n"&&(i+=n.slice(a,l)+"\\ ",l+=1,a=l,u="\\"),u==="\\")switch(n[l+1]){case"u":{i+=n.slice(a,l);const f=n.substr(l+2,4);switch(f){case"0000":i+="\\0";break;case"0007":i+="\\a";break;case"000b":i+="\\v";break;case"001b":i+="\\e";break;case"0085":i+="\\N";break;case"00a0":i+="\\_";break;case"2028":i+="\\L";break;case"2029":i+="\\P";break;default:f.substr(0,2)==="00"?i+="\\x"+f.substr(2):i+=n.substr(l,6)}l+=5,a=l+1}break;case"n":if(s||n[l+2]==='"'||n.length +`;let d,h;for(h=n.length;h>0;--h){const T=n[h-1];if(T!==` +`&&T!==" "&&T!==" ")break}let p=n.substring(h);const m=p.indexOf(` +`);m===-1?d="-":n===p||m!==p.length-1?(d="+",r&&r()):d="",p&&(n=n.slice(0,-p.length),p[p.length-1]===` +`&&(p=p.slice(0,-1)),p=p.replace(An,`$&${u}`));let g=!1,y,_=-1;for(y=0;y")+(g?u?"2":"1":"")+d;if(t&&(S+=" "+a(t.replace(/ ?[\r\n]+/g," ")),o&&o()),f)return n=n.replace(/\n+/g,`$&${u}`),`${S} +${u}${w}${n}${p}`;n=n.replace(/\n+/g,` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${u}`);const E=hn(`${w}${n}${p}`,u,Pn,pn(s,!0));return`${S} +${u}${E}`}function di(t,e,n,s){const{type:o,value:r}=t,{actualString:i,implicitKey:a,indent:l,indentStep:u,inFlow:f}=e;if(a&&r.includes(` +`)||f&&/[[\]{},]/.test(r))return gt(r,e);if(!r||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(r))return a||f||!r.includes(` +`)?gt(r,e):Jt(t,e,n,s);if(!a&&!f&&o!==j.PLAIN&&r.includes(` +`))return Jt(t,e,n,s);if(mn(r)){if(l==="")return e.forceBlockIndent=!0,Jt(t,e,n,s);if(a&&l===u)return gt(r,e)}const d=r.replace(/\n+/g,`$& +${l}`);if(i){const h=g=>{var y;return g.default&&g.tag!=="tag:yaml.org,2002:str"&&((y=g.test)==null?void 0:y.test(d))},{compat:p,tags:m}=e.doc.schema;if(m.some(h)||p!=null&&p.some(h))return gt(r,e)}return a?d:hn(d,l,Qs,pn(e,!1))}function hi(t,e,n,s){const{implicitKey:o,inFlow:r}=e,i=typeof t.value=="string"?t:Object.assign({},t,{value:String(t.value)});let{type:a}=t;a!==j.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(i.value)&&(a=j.QUOTE_DOUBLE);const l=f=>{switch(f){case j.BLOCK_FOLDED:case j.BLOCK_LITERAL:return o||r?gt(i.value,e):Jt(i,e,n,s);case j.QUOTE_DOUBLE:return Pt(i.value,e);case j.QUOTE_SINGLE:return Cn(i.value,e);case j.PLAIN:return di(i,e,n,s);default:return null}};let u=l(a);if(u===null){const{defaultKeyType:f,defaultStringType:d}=e.options,h=o&&f||d;if(u=l(h),u===null)throw new Error(`Unsupported default string type ${h}`)}return u}function pi(t,e){const n=Object.assign({blockQuote:!0,commentString:ui,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},t.schema.toStringOptions,e);let s;switch(n.collectionStyle){case"block":s=!1;break;case"flow":s=!0;break;default:s=null}return{anchors:new Set,doc:t,flowCollectionPadding:n.flowCollectionPadding?" ":"",indent:"",indentStep:typeof n.indent=="number"?" ".repeat(n.indent):" ",inFlow:s,options:n}}function mi(t,e){var o;if(e.tag){const r=t.filter(i=>i.tag===e.tag);if(r.length>0)return r.find(i=>i.format===e.format)??r[0]}let n,s;if(N(e)){s=e.value;const r=t.filter(i=>{var a;return(a=i.identify)==null?void 0:a.call(i,s)});n=r.find(i=>i.format===e.format)??r.find(i=>!i.format)}else s=e,n=t.find(r=>r.nodeClass&&s instanceof r.nodeClass);if(!n){const r=((o=s==null?void 0:s.constructor)==null?void 0:o.name)??typeof s;throw new Error(`Tag not resolved for ${r} value`)}return n}function gi(t,e,{anchors:n,doc:s}){if(!s.directives)return"";const o=[],r=(N(t)||J(t))&&t.anchor;r&&Js(r)&&(n.add(r),o.push(`&${r}`));const i=t.tag?t.tag:e.default?null:e.tag;return i&&o.push(s.directives.tagString(i)),o.join(" ")}function tn(t,e,n,s){var l;if(U(t))return t.toString(e,n,s);if(wt(t)){if(e.doc.directives)return t.toString(e);if((l=e.resolvedAliases)!=null&&l.has(t))throw new TypeError("Cannot stringify circular structure without alias nodes");e.resolvedAliases?e.resolvedAliases.add(t):e.resolvedAliases=new Set([t]),t=t.resolve(e.doc)}let o;const r=q(t)?t:e.doc.createNode(t,{onTagObj:u=>o=u});o||(o=mi(e.doc.schema.tags,r));const i=gi(r,o,e);i.length>0&&(e.indentAtStart=(e.indentAtStart??0)+i.length+1);const a=typeof o.stringify=="function"?o.stringify(r,e,n,s):N(r)?hi(r,e,n,s):r.toString(e,n,s);return i?N(r)||a[0]==="{"||a[0]==="["?`${i} ${a}`:`${i} +${e.indent}${a}`:a}function yi({key:t,value:e},n,s,o){const{allNullValues:r,doc:i,indent:a,indentStep:l,options:{commentString:u,indentSeq:f,simpleKeys:d}}=n;let h=q(t)&&t.comment||null;if(d){if(h)throw new Error("With simple keys, key nodes cannot have comments");if(J(t)){const P="With simple keys, collection cannot be used as a key value";throw new Error(P)}}let p=!d&&(!t||h&&e==null&&!n.inFlow||J(t)||(N(t)?t.type===j.BLOCK_FOLDED||t.type===j.BLOCK_LITERAL:typeof t=="object"));n=Object.assign({},n,{allNullValues:!1,implicitKey:!p&&(d||!r),indent:a+l});let m=!1,g=!1,y=tn(t,n,()=>m=!0,()=>g=!0);if(!p&&!n.inFlow&&y.length>1024){if(d)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");p=!0}if(n.inFlow){if(r||e==null)return m&&s&&s(),y===""?"?":p?`? ${y}`:y}else if(r&&!d||e==null&&p)return y=`? ${y}`,h&&!m?y+=mt(y,n.indent,u(h)):g&&o&&o(),y;m&&(h=null),p?(h&&(y+=mt(y,n.indent,u(h))),y=`? ${y} +${a}:`):(y=`${y}:`,h&&(y+=mt(y,n.indent,u(h))));let _,w,k;q(e)?(_=!!e.spaceBefore,w=e.commentBefore,k=e.comment):(_=!1,w=null,k=null,e&&typeof e=="object"&&(e=i.createNode(e))),n.implicitKey=!1,!p&&!h&&N(e)&&(n.indentAtStart=y.length+1),g=!1,!f&&l.length>=2&&!n.inFlow&&!p&&Qn(e)&&!e.flow&&!e.tag&&!e.anchor&&(n.indent=n.indent.substring(2));let S=!1;const E=tn(e,n,()=>S=!0,()=>g=!0);let T=" ";if(h||_||w){if(T=_?` +`:"",w){const P=u(w);T+=` +${xt(P,n.indent)}`}E===""&&!n.inFlow?T===` +`&&(T=` + +`):T+=` +${n.indent}`}else if(!p&&J(e)){const P=E[0],C=E.indexOf(` +`),x=C!==-1,V=n.inFlow??e.flow??e.items.length===0;if(x||!V){let ne=!1;if(x&&(P==="&"||P==="!")){let L=E.indexOf(" ");P==="&"&&L!==-1&&Lt===gs||N(t)&&t.value===gs&&(!t.type||t.type===j.PLAIN);function kn(t,e,n){const s=t&&wt(n)?n.resolve(t.doc):n;if(!Ks(s))throw new Error("Merge sources must be maps or map aliases");const o=s.toJSON(null,t,Map);for(const[r,i]of o)e instanceof Map?e.has(r)||e.set(r,i):e instanceof Set?e.add(r):Object.prototype.hasOwnProperty.call(e,r)||Object.defineProperty(e,r,{value:i,writable:!0,enumerable:!0,configurable:!0});return e}function wi(t,e,n){if(e===null)return"";if(typeof e!="object")return String(e);if(q(t)&&(n!=null&&n.doc)){const s=pi(n.doc,{});s.anchors=new Set;for(const r of n.anchors.keys())s.anchors.add(r.anchor);s.inFlow=!0,s.inStringifyKey=!0;const o=t.toString(s);if(!n.mapKeyWarned){let r=JSON.stringify(o);r.length>40&&(r=r.substring(0,36)+'..."'),_i(n.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${r}. Set mapAsMap: true to use object keys.`),n.mapKeyWarned=!0}return o}return JSON.stringify(e)}function Xn(t,e,n){const s=en(t,void 0,n),o=en(e,void 0,n);return new ie(s,o)}class ie{constructor(e,n=null){Object.defineProperty(this,re,{value:qs}),this.key=e,this.value=n}clone(e){let{key:n,value:s}=this;return q(n)&&(n=n.clone(e)),q(s)&&(s=s.clone(e)),new ie(n,s)}toJSON(e,n){const s=n!=null&&n.mapAsMap?new Map:{};return Zs(n,s,this)}toString(e,n,s){return e!=null&&e.doc?yi(this,e,n,s):JSON.stringify(this)}}function Ys(t,e,n){return(e.inFlow??t.flow?bi:ki)(t,e,n)}function ki({comment:t,items:e},n,{blockItemPrefix:s,flowChars:o,itemIndent:r,onChompKeep:i,onComment:a}){const{indent:l,options:{commentString:u}}=n,f=Object.assign({},n,{indent:r,type:null});let d=!1;const h=[];for(let m=0;my=null,()=>d=!0);y&&(_+=mt(_,r,u(y))),d&&y&&(d=!1),h.push(s+_)}let p;if(h.length===0)p=o.start+o.end;else{p=h[0];for(let m=1;my=null);mf||_.includes(` +`))&&(u=!0),d.push(_),f=d.length}const{start:h,end:p}=n;if(d.length===0)return h+p;if(!u){const m=d.reduce((g,y)=>g+y.length+2,2);u=e.options.lineWidth>0&&m>e.options.lineWidth}if(u){let m=h;for(const g of d)m+=g?` +${r}${o}${g}`:` +`;return`${m} +${o}${p}`}else return`${h}${i}${d.join(" ")}${i}${p}`}function nn({indent:t,options:{commentString:e}},n,s,o){if(s&&o&&(s=s.replace(/^\n+/,"")),s){const r=xt(e(s),t);n.push(r.trimStart())}}function at(t,e){const n=N(e)?e.value:e;for(const s of t)if(U(s)&&(s.key===e||s.key===n||N(s.key)&&s.key.value===n))return s}class dt extends Yn{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(lt,e),this.items=[]}static from(e,n,s){const{keepUndefined:o,replacer:r}=s,i=new this(e),a=(l,u)=>{if(typeof r=="function")u=r.call(n,l,u);else if(Array.isArray(r)&&!r.includes(l))return;(u!==void 0||o)&&i.items.push(Xn(l,u,s))};if(n instanceof Map)for(const[l,u]of n)a(l,u);else if(n&&typeof n=="object")for(const l of Object.keys(n))a(l,n[l]);return typeof e.sortMapEntries=="function"&&i.items.sort(e.sortMapEntries),i}add(e,n){var i;let s;U(e)?s=e:!e||typeof e!="object"||!("key"in e)?s=new ie(e,e==null?void 0:e.value):s=new ie(e.key,e.value);const o=at(this.items,s.key),r=(i=this.schema)==null?void 0:i.sortMapEntries;if(o){if(!n)throw new Error(`Key ${s.key} already set`);N(o.value)&&Gs(s.value)?o.value.value=s.value:o.value=s.value}else if(r){const a=this.items.findIndex(l=>r(s,l)<0);a===-1?this.items.push(s):this.items.splice(a,0,s)}else this.items.push(s)}delete(e){const n=at(this.items,e);return n?this.items.splice(this.items.indexOf(n),1).length>0:!1}get(e,n){const s=at(this.items,e),o=s==null?void 0:s.value;return(!n&&N(o)?o.value:o)??void 0}has(e){return!!at(this.items,e)}set(e,n){this.add(new ie(e,n),!0)}toJSON(e,n,s){const o=s?new s:n!=null&&n.mapAsMap?new Map:{};n!=null&&n.onCreate&&n.onCreate(o);for(const r of this.items)Zs(n,o,r);return o}toString(e,n,s){if(!e)return JSON.stringify(this);for(const o of this.items)if(!U(o))throw new Error(`Map items must all be pairs; found ${JSON.stringify(o)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),Ys(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:s,onComment:n})}}class Xs extends Yn{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(Ht,e),this.items=[]}add(e){this.items.push(e)}delete(e){const n=jt(e);return typeof n!="number"?!1:this.items.splice(n,1).length>0}get(e,n){const s=jt(e);if(typeof s!="number")return;const o=this.items[s];return!n&&N(o)?o.value:o}has(e){const n=jt(e);return typeof n=="number"&&n=0?e:null}function Si(t,e,n){const{replacer:s}=n,o=new Xs(t);o.tag="tag:yaml.org,2002:pairs";let r=0;if(e&&Symbol.iterator in Object(e))for(let i of e){typeof s=="function"&&(i=s.call(e,String(r++),i));let a,l;if(Array.isArray(i))if(i.length===2)a=i[0],l=i[1];else throw new TypeError(`Expected [key, value] tuple: ${i}`);else if(i&&i instanceof Object){const u=Object.keys(i);if(u.length===1)a=u[0],l=i[a];else throw new TypeError(`Expected tuple with one key, not ${u.length} keys`)}else a=i;o.items.push(Xn(a,l,n))}return o}class es extends Xs{constructor(){super(),this.add=dt.prototype.add.bind(this),this.delete=dt.prototype.delete.bind(this),this.get=dt.prototype.get.bind(this),this.has=dt.prototype.has.bind(this),this.set=dt.prototype.set.bind(this),this.tag=es.tag}toJSON(e,n){if(!n)return super.toJSON(e);const s=new Map;n!=null&&n.onCreate&&n.onCreate(s);for(const o of this.items){let r,i;if(U(o)?(r=ee(o.key,"",n),i=ee(o.value,r,n)):r=ee(o,"",n),s.has(r))throw new Error("Ordered maps must not include duplicate keys");s.set(r,i)}return s}static from(e,n,s){const o=Si(e,n,s),r=new this;return r.items=o.items,r}}es.tag="tag:yaml.org,2002:omap";class ts extends dt{constructor(e){super(e),this.tag=ts.tag}add(e){let n;U(e)?n=e:e&&typeof e=="object"&&"key"in e&&"value"in e&&e.value===null?n=new ie(e.key,null):n=new ie(e,null),at(this.items,n.key)||this.items.push(n)}get(e,n){const s=at(this.items,e);return!n&&U(s)?N(s.key)?s.key.value:s.key:s}set(e,n){if(typeof n!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof n}`);const s=at(this.items,e);s&&!n?this.items.splice(this.items.indexOf(s),1):!s&&n&&this.items.push(new ie(e))}toJSON(e,n){return super.toJSON(e,n,Set)}toString(e,n,s){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),n,s);throw new Error("Set items must all have null values")}static from(e,n,s){const{replacer:o}=s,r=new this(e);if(n&&Symbol.iterator in Object(n))for(let i of n)typeof o=="function"&&(i=o.call(n,i,i)),r.items.push(Xn(i,null,s));return r}}ts.tag="tag:yaml.org,2002:set";function Mi(t){return Array.from(new Set(t))}function ys(...t){let e,n,s;t.length===1?(e=0,s=1,[n]=t):[e,n,s=1]=t;const o=[];let r=e;for(;rs<=t).sort((s,o)=>s-o)}function ec(){const t=$(Date.now()),e=So({interval:1e3}),n=c(()=>{const o=(e.value-t.value)/1e3,r=Math.floor(o%60).toString().padStart(2,"0");return`${Math.floor(o/60).toString().padStart(2,"0")}:${r}`});function s(){t.value=e.value}return{timer:n,resetTimer:s}}function ns(t=5){const e=[],n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",s=n.length;for(let o=0;o0){const r=document.getElementsByTagName("link"),i=document.querySelector("meta[property=csp-nonce]"),a=(i==null?void 0:i.nonce)||(i==null?void 0:i.getAttribute("nonce"));o=Promise.all(n.map(l=>{if(l=Ei(l),l in _s)return;_s[l]=!0;const u=l.endsWith(".css"),f=u?'[rel="stylesheet"]':"";if(!!s)for(let p=r.length-1;p>=0;p--){const m=r[p];if(m.href===l&&(!u||m.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${f}`))return;const h=document.createElement("link");if(h.rel=u?"stylesheet":Ti,u||(h.as="script",h.crossOrigin=""),h.href=l,a&&h.setAttribute("nonce",a),document.head.appendChild(h),u)return new Promise((p,m)=>{h.addEventListener("load",p),h.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${l}`)))})}))}return o.then(()=>e()).catch(r=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=r,window.dispatchEvent(i),!i.defaultPrevented)throw r})},eo=(t,e)=>{const n=t.__vccOpts||t;for(const[s,o]of e)n[s]=o;return n},Li={},$i={class:"px-4 py-10 text-center text-red-700 dark:text-red-500 font-bold font-mono"};function Pi(t,e){return As(),Mo("div",$i," An error occurred on this slide. Check the terminal for more information. ")}const Ci=eo(Li,[["render",Pi],["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/error.vue"]]),O=Object.freeze(Object.defineProperty({__proto__:null,default:Ci},Symbol.toStringTag,{value:"Module"})),ue=v({theme:"default",layout:"cover"}),Ai=v({layout:c(()=>ue.layout),transition:c(()=>ue.transition),class:c(()=>ue.class),clicks:c(()=>ue.clicks),name:c(()=>ue.name),preload:c(()=>ue.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:ue,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),fe=v({}),Di=v({layout:c(()=>fe.layout),transition:c(()=>fe.transition),class:c(()=>fe.class),clicks:c(()=>fe.clicks),name:c(()=>fe.name),preload:c(()=>fe.preload),slide:{index:1,content:"",note:"",title:"CS/BS架构挑战",level:1,noteHTML:"",raw:"",frontmatter:fe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:11,id:1,no:2},__clicksContext:null,__preloaded:!1}),de=v({}),xi=v({layout:c(()=>de.layout),transition:c(()=>de.transition),class:c(()=>de.class),clicks:c(()=>de.clicks),name:c(()=>de.name),preload:c(()=>de.preload),slide:{index:2,content:"",note:"",title:"实验",level:1,noteHTML:"",raw:"",frontmatter:de,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:18,id:2,no:3},__clicksContext:null,__preloaded:!1}),he=v({layout:"two-cols"}),Ii=v({layout:c(()=>he.layout),transition:c(()=>he.transition),class:c(()=>he.class),clicks:c(()=>he.clicks),name:c(()=>he.name),preload:c(()=>he.preload),slide:{index:3,content:"",note:"",title:"压力测试",level:1,noteHTML:"",raw:"",frontmatter:he,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:35,id:3,no:4},__clicksContext:null,__preloaded:!1}),pe=v({}),Hi=v({layout:c(()=>pe.layout),transition:c(()=>pe.transition),class:c(()=>pe.class),clicks:c(()=>pe.clicks),name:c(()=>pe.name),preload:c(()=>pe.preload),slide:{index:4,content:"",note:"",title:"扩展",level:1,noteHTML:"",raw:"",frontmatter:pe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:57,id:4,no:5},__clicksContext:null,__preloaded:!1}),me=v({}),Ri=v({layout:c(()=>me.layout),transition:c(()=>me.transition),class:c(()=>me.class),clicks:c(()=>me.clicks),name:c(()=>me.name),preload:c(()=>me.preload),slide:{index:5,content:"",note:"",title:"用虚拟化技术模拟实现",level:1,noteHTML:"",raw:"",frontmatter:me,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:68,id:5,no:6},__clicksContext:null,__preloaded:!1}),ge=v({layout:"two-cols"}),ji=v({layout:c(()=>ge.layout),transition:c(()=>ge.transition),class:c(()=>ge.class),clicks:c(()=>ge.clicks),name:c(()=>ge.name),preload:c(()=>ge.preload),slide:{index:6,content:"",note:"",title:"Containerization",level:1,noteHTML:"",raw:"",frontmatter:ge,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:76,id:6,no:7},__clicksContext:null,__preloaded:!1}),ye=v({layout:"two-cols"}),Fi=v({layout:c(()=>ye.layout),transition:c(()=>ye.transition),class:c(()=>ye.class),clicks:c(()=>ye.clicks),name:c(()=>ye.name),preload:c(()=>ye.preload),slide:{index:7,content:"",note:"",title:"垂直扩展实验",level:1,noteHTML:"",raw:"",frontmatter:ye,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:106,id:7,no:8},__clicksContext:null,__preloaded:!1}),_e=v({}),Ni=v({layout:c(()=>_e.layout),transition:c(()=>_e.transition),class:c(()=>_e.class),clicks:c(()=>_e.clicks),name:c(()=>_e.name),preload:c(()=>_e.preload),slide:{index:8,content:"",note:"",title:"垂直 vs. 水平扩展(Scale Out)",level:1,noteHTML:"",raw:"",frontmatter:_e,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:120,id:8,no:9},__clicksContext:null,__preloaded:!1}),ve=v({layout:"two-cols"}),Vi=v({layout:c(()=>ve.layout),transition:c(()=>ve.transition),class:c(()=>ve.class),clicks:c(()=>ve.clicks),name:c(()=>ve.name),preload:c(()=>ve.preload),slide:{index:9,content:"",note:"",title:"水平扩展",level:1,noteHTML:"",raw:"",frontmatter:ve,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:126,id:9,no:10},__clicksContext:null,__preloaded:!1}),we=v({layout:"two-cols"}),Ui=v({layout:c(()=>we.layout),transition:c(()=>we.transition),class:c(()=>we.class),clicks:c(()=>we.clicks),name:c(()=>we.name),preload:c(()=>we.preload),slide:{index:10,content:"",note:"",title:"DNS Round Robin",level:1,noteHTML:"",raw:"",frontmatter:we,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:141,id:10,no:11},__clicksContext:null,__preloaded:!1}),ke=v({}),Bi=v({layout:c(()=>ke.layout),transition:c(()=>ke.transition),class:c(()=>ke.class),clicks:c(()=>ke.clicks),name:c(()=>ke.name),preload:c(()=>ke.preload),slide:{index:11,content:"",note:"",title:"L3/L4/L7 Load Balancing",level:1,noteHTML:"",raw:"",frontmatter:ke,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:158,id:11,no:12},__clicksContext:null,__preloaded:!1}),be=v({layout:"two-cols"}),Wi=v({layout:c(()=>be.layout),transition:c(()=>be.transition),class:c(()=>be.class),clicks:c(()=>be.clicks),name:c(()=>be.name),preload:c(()=>be.preload),slide:{index:12,content:"",note:"",title:"L3 负载均衡",level:1,noteHTML:"",raw:"",frontmatter:be,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:165,id:12,no:13},__clicksContext:null,__preloaded:!1}),Se=v({}),zi=v({layout:c(()=>Se.layout),transition:c(()=>Se.transition),class:c(()=>Se.class),clicks:c(()=>Se.clicks),name:c(()=>Se.name),preload:c(()=>Se.preload),slide:{index:13,content:"",note:"",title:"L4负载均衡",level:1,noteHTML:"",raw:"",frontmatter:Se,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:185,id:13,no:14},__clicksContext:null,__preloaded:!1}),Me=v({layout:"two-cols"}),qi=v({layout:c(()=>Me.layout),transition:c(()=>Me.transition),class:c(()=>Me.class),clicks:c(()=>Me.clicks),name:c(()=>Me.name),preload:c(()=>Me.preload),slide:{index:14,content:"",note:"",title:"HAProxy",level:1,noteHTML:"",raw:"",frontmatter:Me,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:193,id:14,no:15},__clicksContext:null,__preloaded:!1}),Oe=v({}),Ki=v({layout:c(()=>Oe.layout),transition:c(()=>Oe.transition),class:c(()=>Oe.class),clicks:c(()=>Oe.clicks),name:c(()=>Oe.name),preload:c(()=>Oe.preload),slide:{index:15,content:"",note:"",title:"HAProxy",level:1,noteHTML:"",raw:"",frontmatter:Oe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:211,id:15,no:16},__clicksContext:null,__preloaded:!1}),Te=v({}),Ji=v({layout:c(()=>Te.layout),transition:c(()=>Te.transition),class:c(()=>Te.class),clicks:c(()=>Te.clicks),name:c(()=>Te.name),preload:c(()=>Te.preload),slide:{index:16,content:"",note:"",title:"L4 实验: HAProxy(TCP mode)",level:1,noteHTML:"",raw:"",frontmatter:Te,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:219,id:16,no:17},__clicksContext:null,__preloaded:!1}),Ee=v({}),Gi=v({layout:c(()=>Ee.layout),transition:c(()=>Ee.transition),class:c(()=>Ee.class),clicks:c(()=>Ee.clicks),name:c(()=>Ee.name),preload:c(()=>Ee.preload),slide:{index:17,content:"",note:"",title:"Cache missing",level:1,noteHTML:"",raw:"",frontmatter:Ee,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:241,id:17,no:18},__clicksContext:null,__preloaded:!1}),Le=v({}),Qi=v({layout:c(()=>Le.layout),transition:c(()=>Le.transition),class:c(()=>Le.class),clicks:c(()=>Le.clicks),name:c(()=>Le.name),preload:c(()=>Le.preload),slide:{index:18,content:"",note:"",title:"Cache Server",level:1,noteHTML:"",raw:"",frontmatter:Le,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:248,id:18,no:19},__clicksContext:null,__preloaded:!1}),$e=v({}),Zi=v({layout:c(()=>$e.layout),transition:c(()=>$e.transition),class:c(()=>$e.class),clicks:c(()=>$e.clicks),name:c(()=>$e.name),preload:c(()=>$e.preload),slide:{index:19,content:"",note:"",title:"Spring Caching",level:1,noteHTML:"",raw:"",frontmatter:$e,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:255,id:19,no:20},__clicksContext:null,__preloaded:!1}),Pe=v({layout:"two-cols"}),Yi=v({layout:c(()=>Pe.layout),transition:c(()=>Pe.transition),class:c(()=>Pe.class),clicks:c(()=>Pe.clicks),name:c(()=>Pe.name),preload:c(()=>Pe.preload),slide:{index:20,content:"",note:"",title:"Caching",level:1,noteHTML:"",raw:"",frontmatter:Pe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:263,id:20,no:21},__clicksContext:null,__preloaded:!1}),Ce=v({}),Xi=v({layout:c(()=>Ce.layout),transition:c(()=>Ce.transition),class:c(()=>Ce.class),clicks:c(()=>Ce.clicks),name:c(()=>Ce.name),preload:c(()=>Ce.preload),slide:{index:21,content:"",note:"",title:"Spring Boot with Redis Cache",level:1,noteHTML:"",raw:"",frontmatter:Ce,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:289,id:21,no:22},__clicksContext:null,__preloaded:!1}),Ae=v({}),ea=v({layout:c(()=>Ae.layout),transition:c(()=>Ae.transition),class:c(()=>Ae.class),clicks:c(()=>Ae.clicks),name:c(()=>Ae.name),preload:c(()=>Ae.preload),slide:{index:22,content:"",note:"",title:"Cache Cluster",level:1,noteHTML:"",raw:"",frontmatter:Ae,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:302,id:22,no:23},__clicksContext:null,__preloaded:!1}),De=v({}),ta=v({layout:c(()=>De.layout),transition:c(()=>De.transition),class:c(()=>De.class),clicks:c(()=>De.clicks),name:c(()=>De.name),preload:c(()=>De.preload),slide:{index:23,content:"",note:"",title:"Hash Partitioning",level:1,noteHTML:"",raw:"",frontmatter:De,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:314,id:23,no:24},__clicksContext:null,__preloaded:!1}),xe=v({}),na=v({layout:c(()=>xe.layout),transition:c(()=>xe.transition),class:c(()=>xe.class),clicks:c(()=>xe.clicks),name:c(()=>xe.name),preload:c(()=>xe.preload),slide:{index:24,content:"",note:"",title:"Consistent Hashing",level:1,noteHTML:"",raw:"",frontmatter:xe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:333,id:24,no:25},__clicksContext:null,__preloaded:!1}),Ie=v({layout:"two-cols"}),sa=v({layout:c(()=>Ie.layout),transition:c(()=>Ie.transition),class:c(()=>Ie.class),clicks:c(()=>Ie.clicks),name:c(()=>Ie.name),preload:c(()=>Ie.preload),slide:{index:25,content:"",note:"",title:"Consistent Hashing",level:1,noteHTML:"",raw:"",frontmatter:Ie,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:344,id:25,no:26},__clicksContext:null,__preloaded:!1}),He=v({}),oa=v({layout:c(()=>He.layout),transition:c(()=>He.transition),class:c(()=>He.class),clicks:c(()=>He.clicks),name:c(()=>He.name),preload:c(()=>He.preload),slide:{index:26,content:"",note:"",title:"Spring Boot with Redis Cluster",level:1,noteHTML:"",raw:"",frontmatter:He,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:368,id:26,no:27},__clicksContext:null,__preloaded:!1}),Re=v({layout:"two-cols"}),ra=v({layout:c(()=>Re.layout),transition:c(()=>Re.transition),class:c(()=>Re.class),clicks:c(()=>Re.clicks),name:c(()=>Re.name),preload:c(()=>Re.preload),slide:{index:27,content:"",note:"",title:"Redis Cluster",level:1,noteHTML:"",raw:"",frontmatter:Re,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:378,id:27,no:28},__clicksContext:null,__preloaded:!1}),je=v({layout:"two-cols"}),ia=v({layout:c(()=>je.layout),transition:c(()=>je.transition),class:c(()=>je.class),clicks:c(()=>je.clicks),name:c(()=>je.name),preload:c(()=>je.preload),slide:{index:28,content:"",note:"",title:"Redis Cluster",level:1,noteHTML:"",raw:"",frontmatter:je,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:403,id:28,no:29},__clicksContext:null,__preloaded:!1}),Fe=v({}),aa=v({layout:c(()=>Fe.layout),transition:c(()=>Fe.transition),class:c(()=>Fe.class),clicks:c(()=>Fe.clicks),name:c(()=>Fe.name),preload:c(()=>Fe.preload),slide:{index:29,content:"",note:"",title:"Redis Slots",level:1,noteHTML:"",raw:"",frontmatter:Fe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:426,id:29,no:30},__clicksContext:null,__preloaded:!1}),Ne=v({}),la=v({layout:c(()=>Ne.layout),transition:c(()=>Ne.transition),class:c(()=>Ne.class),clicks:c(()=>Ne.clicks),name:c(()=>Ne.name),preload:c(()=>Ne.preload),slide:{index:30,content:"",note:"",title:"Spring Boot with Redis Cluster",level:1,noteHTML:"",raw:"",frontmatter:Ne,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:438,id:30,no:31},__clicksContext:null,__preloaded:!1}),Ve=v({layout:"two-cols"}),ca=v({layout:c(()=>Ve.layout),transition:c(()=>Ve.transition),class:c(()=>Ve.class),clicks:c(()=>Ve.clicks),name:c(()=>Ve.name),preload:c(()=>Ve.preload),slide:{index:31,content:"",note:"",title:"Cookies and Sessions",level:1,noteHTML:"",raw:"",frontmatter:Ve,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:447,id:31,no:32},__clicksContext:null,__preloaded:!1}),Ue=v({}),ua=v({layout:c(()=>Ue.layout),transition:c(()=>Ue.transition),class:c(()=>Ue.class),clicks:c(()=>Ue.clicks),name:c(()=>Ue.name),preload:c(()=>Ue.preload),slide:{index:32,content:"",note:"",title:"Session",level:1,noteHTML:"",raw:"",frontmatter:Ue,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:464,id:32,no:33},__clicksContext:null,__preloaded:!1}),Be=v({}),fa=v({layout:c(()=>Be.layout),transition:c(()=>Be.transition),class:c(()=>Be.class),clicks:c(()=>Be.clicks),name:c(()=>Be.name),preload:c(()=>Be.preload),slide:{index:33,content:"",note:"",title:"Session Stickiness",level:1,noteHTML:"",raw:"",frontmatter:Be,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:473,id:33,no:34},__clicksContext:null,__preloaded:!1}),We=v({}),da=v({layout:c(()=>We.layout),transition:c(()=>We.transition),class:c(()=>We.class),clicks:c(()=>We.clicks),name:c(()=>We.name),preload:c(()=>We.preload),slide:{index:34,content:"",note:"",title:"Tomcat Cluster",level:1,noteHTML:"",raw:"",frontmatter:We,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:485,id:34,no:35},__clicksContext:null,__preloaded:!1}),ze=v({}),ha=v({layout:c(()=>ze.layout),transition:c(()=>ze.transition),class:c(()=>ze.class),clicks:c(()=>ze.clicks),name:c(()=>ze.name),preload:c(()=>ze.preload),slide:{index:35,content:"",note:"",title:"Spring Session with JDBC",level:1,noteHTML:"",raw:"",frontmatter:ze,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:496,id:35,no:36},__clicksContext:null,__preloaded:!1}),qe=v({}),pa=v({layout:c(()=>qe.layout),transition:c(()=>qe.transition),class:c(()=>qe.class),clicks:c(()=>qe.clicks),name:c(()=>qe.name),preload:c(()=>qe.preload),slide:{index:36,content:"",note:"",title:"Spring Session with Redis",level:1,noteHTML:"",raw:"",frontmatter:qe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:510,id:36,no:37},__clicksContext:null,__preloaded:!1}),Ke=v({}),ma=v({layout:c(()=>Ke.layout),transition:c(()=>Ke.transition),class:c(()=>Ke.class),clicks:c(()=>Ke.clicks),name:c(()=>Ke.name),preload:c(()=>Ke.preload),slide:{index:37,content:"",note:"",title:"Scalable Web Architecture and Distributed Systems",level:3,noteHTML:"",raw:"",frontmatter:Ke,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:525,id:37,no:38},__clicksContext:null,__preloaded:!1}),Je=v({}),ga=v({layout:c(()=>Je.layout),transition:c(()=>Je.transition),class:c(()=>Je.class),clicks:c(()=>Je.clicks),name:c(()=>Je.name),preload:c(()=>Je.preload),slide:{index:38,content:"",note:"",title:"系统要求",level:3,noteHTML:"",raw:"",frontmatter:Je,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:534,id:38,no:39},__clicksContext:null,__preloaded:!1}),Ge=v({}),ya=v({layout:c(()=>Ge.layout),transition:c(()=>Ge.transition),class:c(()=>Ge.class),clicks:c(()=>Ge.clicks),name:c(()=>Ge.name),preload:c(()=>Ge.preload),slide:{index:39,content:"",note:"",title:"基本点1: 服务拆分",level:3,noteHTML:"",raw:"",frontmatter:Ge,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:547,id:39,no:40},__clicksContext:null,__preloaded:!1}),Qe=v({}),_a=v({layout:c(()=>Qe.layout),transition:c(()=>Qe.transition),class:c(()=>Qe.class),clicks:c(()=>Qe.clicks),name:c(()=>Qe.name),preload:c(()=>Qe.preload),slide:{index:40,content:"",note:"",title:"基本点2: 冗余",level:3,noteHTML:"",raw:"",frontmatter:Qe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:553,id:40,no:41},__clicksContext:null,__preloaded:!1}),Ze=v({}),va=v({layout:c(()=>Ze.layout),transition:c(()=>Ze.transition),class:c(()=>Ze.class),clicks:c(()=>Ze.clicks),name:c(()=>Ze.name),preload:c(()=>Ze.preload),slide:{index:41,content:"",note:"",title:"基本点3: 分区",level:3,noteHTML:"",raw:"",frontmatter:Ze,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:559,id:41,no:42},__clicksContext:null,__preloaded:!1}),Ye=v({}),wa=v({layout:c(()=>Ye.layout),transition:c(()=>Ye.transition),class:c(()=>Ye.class),clicks:c(()=>Ye.clicks),name:c(()=>Ye.name),preload:c(()=>Ye.preload),slide:{index:42,content:"",note:"",title:"可扩展数据访问",level:3,noteHTML:"",raw:"",frontmatter:Ye,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:566,id:42,no:43},__clicksContext:null,__preloaded:!1}),Xe=v({layout:"two-cols"}),ka=v({layout:c(()=>Xe.layout),transition:c(()=>Xe.transition),class:c(()=>Xe.class),clicks:c(()=>Xe.clicks),name:c(()=>Xe.name),preload:c(()=>Xe.preload),slide:{index:43,content:"",note:"",title:"基本方法1:缓存",level:3,noteHTML:"",raw:"",frontmatter:Xe,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:575,id:43,no:44},__clicksContext:null,__preloaded:!1}),et=v({layout:"two-cols"}),ba=v({layout:c(()=>et.layout),transition:c(()=>et.transition),class:c(()=>et.class),clicks:c(()=>et.clicks),name:c(()=>et.name),preload:c(()=>et.preload),slide:{index:44,content:"",note:"",title:"基本方法2:代理",level:3,noteHTML:"",raw:"",frontmatter:et,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:589,id:44,no:45},__clicksContext:null,__preloaded:!1}),tt=v({layout:"two-cols"}),Sa=v({layout:c(()=>tt.layout),transition:c(()=>tt.transition),class:c(()=>tt.class),clicks:c(()=>tt.clicks),name:c(()=>tt.name),preload:c(()=>tt.preload),slide:{index:45,content:"",note:"",title:"基本方法3:索引",level:3,noteHTML:"",raw:"",frontmatter:tt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:602,id:45,no:46},__clicksContext:null,__preloaded:!1}),nt=v({layout:"two-cols"}),Ma=v({layout:c(()=>nt.layout),transition:c(()=>nt.transition),class:c(()=>nt.class),clicks:c(()=>nt.clicks),name:c(()=>nt.name),preload:c(()=>nt.preload),slide:{index:46,content:"",note:"",title:"基本方法4:负载均衡",level:3,noteHTML:"",raw:"",frontmatter:nt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:616,id:46,no:47},__clicksContext:null,__preloaded:!1}),st=v({layout:"two-cols"}),Oa=v({layout:c(()=>st.layout),transition:c(()=>st.transition),class:c(()=>st.class),clicks:c(()=>st.clicks),name:c(()=>st.name),preload:c(()=>st.preload),slide:{index:47,content:"",note:"",title:"基本方法5:队列",level:3,noteHTML:"",raw:"",frontmatter:st,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:630,id:47,no:48},__clicksContext:null,__preloaded:!1}),ot=v({}),Ta=v({layout:c(()=>ot.layout),transition:c(()=>ot.transition),class:c(()=>ot.class),clicks:c(()=>ot.clicks),name:c(()=>ot.name),preload:c(()=>ot.preload),slide:{index:48,content:"",note:"",title:"结论",level:3,noteHTML:"",raw:"",frontmatter:ot,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/06-scalable.md",start:645,id:48,no:49},__clicksContext:null,__preloaded:!1}),Ea=[{no:1,meta:Ai,component:async()=>{try{return await b(()=>import("./slidev/1-D-8fczNX.js"),__vite__mapDeps([0,1,2,3,4]))}catch(t){return console.error("Failed to load slide 1:",t),O}}},{no:2,meta:Di,component:async()=>{try{return await b(()=>import("./2-DydI_rMs.js"),__vite__mapDeps([5,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 2:",t),O}}},{no:3,meta:xi,component:async()=>{try{return await b(()=>import("./3-2vUkJ0jS.js"),__vite__mapDeps([7,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 3:",t),O}}},{no:4,meta:Ii,component:async()=>{try{return await b(()=>import("./4-CLwCwhTe.js"),__vite__mapDeps([8,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 4:",t),O}}},{no:5,meta:Hi,component:async()=>{try{return await b(()=>import("./5-CiMNZNfe.js"),__vite__mapDeps([10,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 5:",t),O}}},{no:6,meta:Ri,component:async()=>{try{return await b(()=>import("./6-DIeakLb1.js"),__vite__mapDeps([11,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 6:",t),O}}},{no:7,meta:ji,component:async()=>{try{return await b(()=>import("./7-D_meNjs0.js"),__vite__mapDeps([12,13,14,1,2,9,3,4]))}catch(t){return console.error("Failed to load slide 7:",t),O}}},{no:8,meta:Fi,component:async()=>{try{return await b(()=>import("./8-Cz8BW-DY.js"),__vite__mapDeps([15,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 8:",t),O}}},{no:9,meta:Ni,component:async()=>{try{return await b(()=>import("./9-BwB95Zfl.js"),__vite__mapDeps([16,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 9:",t),O}}},{no:10,meta:Vi,component:async()=>{try{return await b(()=>import("./10-Bb6sorjN.js"),__vite__mapDeps([17,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 10:",t),O}}},{no:11,meta:Ui,component:async()=>{try{return await b(()=>import("./11-CJ_sHooH.js"),__vite__mapDeps([18,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 11:",t),O}}},{no:12,meta:Bi,component:async()=>{try{return await b(()=>import("./12-egZidWBU.js"),__vite__mapDeps([19,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 12:",t),O}}},{no:13,meta:Wi,component:async()=>{try{return await b(()=>import("./13-lrBd95E6.js"),__vite__mapDeps([20,1,21,9,2,3,4]))}catch(t){return console.error("Failed to load slide 13:",t),O}}},{no:14,meta:zi,component:async()=>{try{return await b(()=>import("./14-CJWLMC2k.js"),__vite__mapDeps([22,1,21,6,2,3,4]))}catch(t){return console.error("Failed to load slide 14:",t),O}}},{no:15,meta:qi,component:async()=>{try{return await b(()=>import("./15-BGsIFWUc.js"),__vite__mapDeps([23,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 15:",t),O}}},{no:16,meta:Ki,component:async()=>{try{return await b(()=>import("./slidev/16-lQ05v3kc.js"),__vite__mapDeps([24,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 16:",t),O}}},{no:17,meta:Ji,component:async()=>{try{return await b(()=>import("./17-CSJsMqxi.js"),__vite__mapDeps([25,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 17:",t),O}}},{no:18,meta:Gi,component:async()=>{try{return await b(()=>import("./18-JUOzULrG.js"),__vite__mapDeps([26,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 18:",t),O}}},{no:19,meta:Qi,component:async()=>{try{return await b(()=>import("./19-BTy0XfgG.js"),__vite__mapDeps([27,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 19:",t),O}}},{no:20,meta:Zi,component:async()=>{try{return await b(()=>import("./20-DGooopiy.js"),__vite__mapDeps([28,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 20:",t),O}}},{no:21,meta:Yi,component:async()=>{try{return await b(()=>import("./21-C9mQhzZV.js"),__vite__mapDeps([29,13,14,1,2,9,3,4]))}catch(t){return console.error("Failed to load slide 21:",t),O}}},{no:22,meta:Xi,component:async()=>{try{return await b(()=>import("./22-DVLuSD-e.js"),__vite__mapDeps([30,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 22:",t),O}}},{no:23,meta:ea,component:async()=>{try{return await b(()=>import("./23-d7924F0U.js"),__vite__mapDeps([31,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 23:",t),O}}},{no:24,meta:ta,component:async()=>{try{return await b(()=>import("./slidev/24-D3cqyuIq.js"),__vite__mapDeps([32,13,14,1,2,6,3,4]))}catch(t){return console.error("Failed to load slide 24:",t),O}}},{no:25,meta:na,component:async()=>{try{return await b(()=>import("./slidev/25-DL01Wg1N.js"),__vite__mapDeps([33,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 25:",t),O}}},{no:26,meta:sa,component:async()=>{try{return await b(()=>import("./26-CNlZZJ6y.js"),__vite__mapDeps([34,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 26:",t),O}}},{no:27,meta:oa,component:async()=>{try{return await b(()=>import("./slidev/27-BLQr6AwT.js"),__vite__mapDeps([35,1,36,6,2,3,4]))}catch(t){return console.error("Failed to load slide 27:",t),O}}},{no:28,meta:ra,component:async()=>{try{return await b(()=>import("./28-57xUCQiz.js"),__vite__mapDeps([37,13,14,1,2,9,3,4]))}catch(t){return console.error("Failed to load slide 28:",t),O}}},{no:29,meta:ia,component:async()=>{try{return await b(()=>import("./29-C3Inqgya.js"),__vite__mapDeps([38,13,14,1,2,9,3,4]))}catch(t){return console.error("Failed to load slide 29:",t),O}}},{no:30,meta:aa,component:async()=>{try{return await b(()=>import("./30-C-1029Hr.js"),__vite__mapDeps([39,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 30:",t),O}}},{no:31,meta:la,component:async()=>{try{return await b(()=>import("./slidev/31-BU_fKCv4.js"),__vite__mapDeps([40,1,36,6,2,3,4]))}catch(t){return console.error("Failed to load slide 31:",t),O}}},{no:32,meta:ca,component:async()=>{try{return await b(()=>import("./32-B1H73VS-.js"),__vite__mapDeps([41,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 32:",t),O}}},{no:33,meta:ua,component:async()=>{try{return await b(()=>import("./33-CcxmdYiR.js"),__vite__mapDeps([42,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 33:",t),O}}},{no:34,meta:fa,component:async()=>{try{return await b(()=>import("./34-BLL7MgtW.js"),__vite__mapDeps([43,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 34:",t),O}}},{no:35,meta:da,component:async()=>{try{return await b(()=>import("./35-xvmXt75H.js"),__vite__mapDeps([44,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 35:",t),O}}},{no:36,meta:ha,component:async()=>{try{return await b(()=>import("./36-BHCG1g7O.js"),__vite__mapDeps([45,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 36:",t),O}}},{no:37,meta:pa,component:async()=>{try{return await b(()=>import("./37-QUh0Pi45.js"),__vite__mapDeps([46,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 37:",t),O}}},{no:38,meta:ma,component:async()=>{try{return await b(()=>import("./slidev/38-UbEW50_Y.js"),__vite__mapDeps([47,1,48,6,2,3,4]))}catch(t){return console.error("Failed to load slide 38:",t),O}}},{no:39,meta:ga,component:async()=>{try{return await b(()=>import("./slidev/39-CSSO1rb5.js"),__vite__mapDeps([49,1,48,6,2,3,4]))}catch(t){return console.error("Failed to load slide 39:",t),O}}},{no:40,meta:ya,component:async()=>{try{return await b(()=>import("./40-DljBf0a5.js"),__vite__mapDeps([50,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 40:",t),O}}},{no:41,meta:_a,component:async()=>{try{return await b(()=>import("./41-zIPptmwU.js"),__vite__mapDeps([51,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 41:",t),O}}},{no:42,meta:va,component:async()=>{try{return await b(()=>import("./42-C2ooxU8o.js"),__vite__mapDeps([52,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 42:",t),O}}},{no:43,meta:wa,component:async()=>{try{return await b(()=>import("./43-D6932mAT.js"),__vite__mapDeps([53,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 43:",t),O}}},{no:44,meta:ka,component:async()=>{try{return await b(()=>import("./44-qjnEE3BK.js"),__vite__mapDeps([54,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 44:",t),O}}},{no:45,meta:ba,component:async()=>{try{return await b(()=>import("./45-B_myPjXK.js"),__vite__mapDeps([55,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 45:",t),O}}},{no:46,meta:Sa,component:async()=>{try{return await b(()=>import("./46-DAcuDYXN.js"),__vite__mapDeps([56,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 46:",t),O}}},{no:47,meta:Ma,component:async()=>{try{return await b(()=>import("./47-DC__hqtJ.js"),__vite__mapDeps([57,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 47:",t),O}}},{no:48,meta:Oa,component:async()=>{try{return await b(()=>import("./48-CWdSS91k.js"),__vite__mapDeps([58,1,9,2,3,4]))}catch(t){return console.error("Failed to load slide 48:",t),O}}},{no:49,meta:Ta,component:async()=>{try{return await b(()=>import("./slidev/49-vtksxDoj.js"),__vite__mapDeps([59,1,6,2,3,4]))}catch(t){return console.error("Failed to load slide 49:",t),O}}}],oe=Wn(Ea);function It(t){return oe.value.find(e=>{var n;return e.no===+t||((n=e.meta.slide)==null?void 0:n.frontmatter.routeAlias)===t})}function yt(t,e){var s;(typeof t=="number"||typeof t=="string")&&(t=It(t));const n=((s=t.meta.slide)==null?void 0:s.frontmatter.routeAlias)??t.no;return e?`/presenter/${n}`:`/${n}`}function La(t,e,{mode:n="replace"}={}){const s=cn();return c({get(){const o=s.currentRoute.value.query[t];return o==null?e??null:Array.isArray(o)?o.filter(Boolean):o},set(o){Zt(()=>{(s.currentRoute.value.query[t]??(e==null?void 0:e.toString()))!==o.toString()&&s[Bn(n)]({query:{...s.currentRoute.value.query,[t]:`${o}`===e?void 0:o}})})}})}const Dn=$(0);function $a(t){return t===!1||t==="false"?null:t==null||t===!0||t==="true"?"+1":Array.isArray(t)?[+t[0],+t[1]]:typeof t=="string"&&"+-".includes(t[0])?t:+t}function to(t,e=0,n){const s={get current(){return At(+t.value,e,s.total)},set current(o){t.value=At(+o,e,s.total)},clicksStart:e,relativeOffsets:new Map,maxMap:Oo(new Map),onMounted(){},calculateSince(o,r=1){let i,a,l;if(typeof o=="string"){const u=s.currentOffset,f=+o;i=u+f,a=u+f+r-1,l=f+r-1}else i=o,a=o+r-1,l=0;return{start:i,end:+Number.POSITIVE_INFINITY,max:a,delta:l,isCurrent:c(()=>s.current===i),isActive:c(()=>s.current>=i)}},calculateRange([o,r]){let i,a,l;return typeof o=="string"?(i=s.currentOffset+ +o,l=+o):(i=o,l=0),typeof r=="string"?(a=i+ +r,l+=+r):a=r,{start:i,end:a,max:a,delta:l,isCurrent:c(()=>s.current===i),isActive:c(()=>i<=s.current&&s.currentH.colorSchema!=="auto"),no=c({get(){return ws.value?H.colorSchema==="dark":bn.value==="auto"?vs.value:bn.value==="dark"},set(t){ws.value||(bn.value=t===vs.value?"auto":t?"dark":"light")}}),nc=Ds(no);un&&Q(no,t=>{const e=document.querySelector("html");e.classList.toggle("dark",t),e.classList.toggle("light",!t)},{immediate:!0});const Ca={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function Aa(t,e=!1){if(!t||(typeof t=="string"&&(t={name:t}),!t.name))return;let n=t.name.includes("|")?t.name:Ca[t.name]||t.name;if(n.includes("|")){const[s,o]=n.split("|").map(r=>r.trim());n=e?o:s}if(n)return{...t,name:n}}function Da(t,e,n){var o,r;let s=t>0?(o=n==null?void 0:n.meta)==null?void 0:o.transition:(r=e==null?void 0:e.meta)==null?void 0:r.transition;return s||(s=H.transition),Aa(s,t<0)}function so(t,e,n=1){var o,r,i,a,l,u,f,d,h;const s=(r=(o=e.meta)==null?void 0:o.slide)==null?void 0:r.level;s&&s>n&&t.length>0?so(t[t.length-1].children,e,n+1):t.push({no:e.no,children:[],level:n,path:yt(((a=(i=e.meta.slide)==null?void 0:i.frontmatter)==null?void 0:a.routeAlias)??e.no,!1),hideInToc:!!((f=(u=(l=e.meta)==null?void 0:l.slide)==null?void 0:u.frontmatter)!=null&&f.hideInToc),title:(h=(d=e.meta)==null?void 0:d.slide)==null?void 0:h.title})}function oo(t,e,n=!1,s,o){return t.map(r=>{const i={...r,active:r.no===(o==null?void 0:o.value),hasActiveParent:n};return i.children.length>0&&(i.children=oo(i.children,e,i.active||i.hasActiveParent,i,o)),s&&(i.active||i.activeParent)&&(s.activeParent=!0),i})}function ro(t,e=1){return t.filter(n=>!n.hideInToc).map(n=>({...n,children:ro(n.children,e+1)}))}function xa(t,e,n){const s=c(()=>t.value.filter(r=>{var i,a;return(a=(i=r.meta)==null?void 0:i.slide)==null?void 0:a.title}).reduce((r,i)=>(so(r,i),r),[])),o=c(()=>oo(s.value,n.value,void 0,void 0,e));return c(()=>ro(o.value))}function Ia(t,e,n=$(0),s,o,r){const i=c(()=>oe.value.length),a=$(0),l=$(0),u=c(()=>yt(t.value,s.value)),f=c(()=>t.value.no),d=c(()=>{var F;return((F=t.value.meta)==null?void 0:F.layout)||(f.value===1?"cover":"default")}),h=c(()=>e.value.current),p=c(()=>e.value.clicksStart),m=c(()=>e.value.total),g=c(()=>oe.value[Math.min(oe.value.length,f.value+1)-1]),y=c(()=>oe.value[Math.max(1,f.value-1)-1]),_=c(()=>f.valuef.value>1||h.value>0),k=c(()=>Da(a.value,t.value,y.value));Q(t,(F,I)=>{a.value=F.no-I.no});async function S(F){return!1}const E=xa(oe,f,t);async function T(){l.value=1,m.value<=n.value?await C():n.value+=1}async function P(){l.value=-1,n.value<=p.value?await x():n.value-=1}async function C(){l.value=1,f.value{const t=cn(),e=c(()=>t.currentRoute.value),n=c(()=>(t.currentRoute.value.query,new URLSearchParams(location.search))),s=c(()=>n.value.has("print")),o=c(()=>n.value.get("print")==="clicks"),r=c(()=>n.value.has("embedded")),i=c(()=>e.value.name==="play"),a=c(()=>e.value.name==="presenter"),l=c(()=>e.value.name==="notes"),u=c(()=>!a.value&&(!H.remote||n.value.get("password")===H.remote)),f=Eo(i,a),d=c(()=>{var _;return f.value?((_=It(e.value.params.no))==null?void 0:_.no)??1:1}),h=c(()=>oe.value[d.value-1]),p=La("clicks","0"),m=c(()=>y(h.value)),g=c({get(){let _=+(p.value||0);return Number.isNaN(_)&&(_=0),_},set(_){p.value=_.toString()}});function y(_){var S,E;if((S=_==null?void 0:_.meta)!=null&&S.__clicksContext)return _.meta.__clicksContext;const w=_.no,k=to(c({get(){return d.value===w?Math.max(+(p.value??0),k.clicksStart):d.value>w?$n:k.clicksStart},set(T){d.value===w&&(p.value=At(T,k.clicksStart,k.total).toString())}}),((E=_==null?void 0:_.meta.slide)==null?void 0:E.frontmatter.clicksStart)??0,_==null?void 0:_.meta.clicks);return k.onMounted=()=>{d.value===w&&(p.value=At(+p.value,k.clicksStart,k.total).toString())},_!=null&&_.meta&&(_.meta.__clicksContext=k),k}return{router:t,currentRoute:e,isPrintMode:s,isPrintWithClicks:o,isEmbedded:r,isPlaying:i,isPresenter:a,isNotesViewer:l,isPresenterAvailable:u,hasPrimarySlide:f,currentSlideNo:d,currentSlideRoute:h,clicksContext:m,queryClicksRaw:p,queryClicks:g,getPrimaryClicks:y}}),xn=xs(()=>{const t=Ha(),e=cn(),n=Ia(t.currentSlideRoute,t.clicksContext,t.queryClicks,t.isPresenter,t.isPrintMode,e);return Q([n.total,t.currentRoute],async()=>{t.hasPrimarySlide.value&&!It(t.currentRoute.value.params.no)&&await n.goLast()},{flush:"pre",immediate:!0}),{...n,...t}}),Ra=[];function ja(){const t=Cs().appContext.app,e=v({nav:xn(),configs:H,themeConfigs:c(()=>H.themeConfig)});t.provide(Kn,$("none")),t.provide(Gr,e),t.provide(qn,c(()=>e.nav.currentSlideNo)),t.provide(fn,Wn(Pa()));for(const d of Ra)d();const n=H.titleTemplate.replace("%s",H.title||"Slidev"),{clicksContext:s,currentSlideNo:o,hasPrimarySlide:r,isNotesViewer:i,isPresenter:a}=xn();Fr({title:n,htmlAttrs:H.htmlAttrs}),Br(`${n} - shared`),Kr(`${n} - drawings`);const l=`${location.origin}_${ns()}`;function u(){i.value||!a.value&&!Yr.includes(location.host.split(":")[0])||(a.value?(St("page",+o.value),St("clicks",s.value.current)):(St("viewerPage",+o.value),St("viewerClicks",s.value.current)),St("lastUpdate",{id:l,type:a.value?"presenter":"viewer",time:new Date().getTime()}))}const f=cn();f.afterEach(u),Q(s,u),Wr(d=>{var h;r.value&&((h=d.lastUpdate)==null?void 0:h.type)==="presenter"&&(+d.page!=+o.value||+s.value.current!=+d.clicks)&&(zs.value=!1,f.replace({path:yt(d.page,a.value),query:{...f.currentRoute.value.query,clicks:d.clicks||0}}))})}const Fa=Lo({__name:"App",setup(t){return ja(),_t(()=>{for(const[e,n]of Object.entries(Yo.value))document.body.style.setProperty(e,n.toString())}),(e,n)=>{const s=$o("RouterView");return As(),Po(s)}}}),Na=eo(Fa,[["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function sc(t,e=""){var o,r;const n=["slidev-page",e],s=(r=(o=t==null?void 0:t.meta)==null?void 0:o.slide)==null?void 0:r.no;return s!=null&&n.push(`slidev-page-${s}`),n.filter(Boolean).join(" ")}async function oc(){const{saveAs:t}=await b(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),[]);t(typeof H.download=="string"?H.download:H.exportFilename?`${H.exportFilename}.pdf`:"/sa2024/06-scalable/slidev-exported.pdf",`${H.title}.pdf`)}function vt(t,e,n){var s;return((s=t.instance)==null?void 0:s.$).provides[e]??n}function Va(){return{install(t){t.directive("click",{name:"v-click",mounted(e,n){const s=Gt(e,n,n.value);s!=null&&(e.classList.toggle(zt,!0),e.dataset.slidevClicksStart=String(s.start),Number.isFinite(s.end)&&(e.dataset.slidevClicksEnd=String(s.end)),e.watchStopHandle=_t(()=>{const o=s.isActive.value,r=s.isCurrent.value,i=o&&!r;s.flagHide?(e.classList.toggle(s.flagFade?Ot:Mt,o),e.classList.toggle(_n,o)):e.classList.toggle(s.flagFade?Ot:Mt,!o),e.classList.toggle(vn,r),e.classList.toggle(wn,i)}))},unmounted:Sn}),t.directive("after",{name:"v-after",mounted(e,n){const s=Gt(e,n,"+0");s!=null&&(e.classList.toggle(zt,!0),e.watchStopHandle=_t(()=>{const o=s.isActive.value,r=s.isCurrent.value,i=o&&!r;s.flagHide?(e.classList.toggle(s.flagFade?Ot:Mt,o),e.classList.toggle(_n,o)):e.classList.toggle(s.flagFade?Ot:Mt,!o),e.classList.toggle(vn,r),e.classList.toggle(wn,i)}))},unmounted:Sn}),t.directive("click-hide",{name:"v-click-hide",mounted(e,n){const s=Gt(e,n,n.value,!0);s!=null&&(e.classList.toggle(zt,!0),e.watchStopHandle=_t(()=>{const o=s.isActive.value,r=s.isCurrent.value,i=o&&!r;e.classList.toggle(s.flagFade?Ot:Mt,o),e.classList.toggle(_n,o),e.classList.toggle(vn,r),e.classList.toggle(wn,i)}))},unmounted:Sn})}}}const io=new Map;function Gt(t,e,n,s=!1){var h;const o=(h=vt(e,fn))==null?void 0:h.value;if(!t||!o)return null;const r=s||e.modifiers.hide!==!1&&e.modifiers.hide!=null,i=e.modifiers.fade!==!1&&e.modifiers.fade!=null,a=$a(n),l=o.calculate(a);if(!l)return null;o.register(t,l);const u=c(()=>r?!l.isActive.value:l.isActive.value),f=c(()=>u.value?"shown":Number.isFinite(l.end)?o.currents.push(...o)),In(s,e,n)}function Wa(t,e){return t[0]===e[0]&&t[1]===e[1]}function za(t,e,n,s=1){const o=n,r=Math.max(e,.1),i=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,a=[0,0];if(o)for(const u of i)In(u,a,o);const l=qa(i,r,s);if(o){for(const u of i)In(u,a,-o);Ba(l,a,-o)}return l}function qa(t,e,n){const s=[];for(const u of t){const f=[...u];Wa(f[0],f[f.length-1])||f.push([f[0][0],f[0][1]]),f.length>2&&s.push(f)}const o=[];e=Math.max(e,.1);const r=[];for(const u of s)for(let f=0;fu.yminf.ymin?1:u.xf.x?1:u.ymax===f.ymax?0:(u.ymax-f.ymax)/Math.abs(u.ymax-f.ymax)),!r.length)return o;let i=[],a=r[0].ymin,l=0;for(;i.length||r.length;){if(r.length){let u=-1;for(let d=0;da);d++)u=d;r.splice(0,u+1).forEach(d=>{i.push({s:a,edge:d})})}if(i=i.filter(u=>!(u.edge.ymax<=a)),i.sort((u,f)=>u.edge.x===f.edge.x?0:(u.edge.x-f.edge.x)/Math.abs(u.edge.x-f.edge.x)),(n!==1||l%e===0)&&i.length>1)for(let u=0;u=i.length)break;const d=i[u].edge,h=i[f].edge;o.push([[Math.round(d.x),a],[Math.round(h.x),a]])}a+=n,i.forEach(u=>{u.edge.x=u.edge.x+n*u.edge.islope}),l++}return o}function Rt(t,e){var n;const s=e.hachureAngle+90;let o=e.hachureGap;o<0&&(o=e.strokeWidth*4),o=Math.round(Math.max(o,.1));let r=1;return e.roughness>=1&&(((n=e.randomizer)===null||n===void 0?void 0:n.next())||Math.random())>.7&&(r=o),za(t,o,s,r||1)}class ss{constructor(e){this.helper=e}fillPolygons(e,n){return this._fillPolygons(e,n)}_fillPolygons(e,n){const s=Rt(e,n);return{type:"fillSketch",ops:this.renderLines(s,n)}}renderLines(e,n){const s=[];for(const o of e)s.push(...this.helper.doubleLineOps(o[0][0],o[0][1],o[1][0],o[1][1],n));return s}}function gn(t){const e=t[0],n=t[1];return Math.sqrt(Math.pow(e[0]-n[0],2)+Math.pow(e[1]-n[1],2))}class Ka extends ss{fillPolygons(e,n){let s=n.hachureGap;s<0&&(s=n.strokeWidth*4),s=Math.max(s,.1);const o=Object.assign({},n,{hachureGap:s}),r=Rt(e,o),i=Math.PI/180*n.hachureAngle,a=[],l=s*.5*Math.cos(i),u=s*.5*Math.sin(i);for(const[d,h]of r)gn([d,h])&&a.push([[d[0]-l,d[1]+u],[...h]],[[d[0]+l,d[1]-u],[...h]]);return{type:"fillSketch",ops:this.renderLines(a,n)}}}class Ja extends ss{fillPolygons(e,n){const s=this._fillPolygons(e,n),o=Object.assign({},n,{hachureAngle:n.hachureAngle+90}),r=this._fillPolygons(e,o);return s.ops=s.ops.concat(r.ops),s}}class Ga{constructor(e){this.helper=e}fillPolygons(e,n){n=Object.assign({},n,{hachureAngle:0});const s=Rt(e,n);return this.dotsOnLines(s,n)}dotsOnLines(e,n){const s=[];let o=n.hachureGap;o<0&&(o=n.strokeWidth*4),o=Math.max(o,.1);let r=n.fillWeight;r<0&&(r=n.strokeWidth/2);const i=o/4;for(const a of e){const l=gn(a),u=l/o,f=Math.ceil(u)-1,d=l-f*o,h=(a[0][0]+a[1][0])/2-o/4,p=Math.min(a[0][1],a[1][1]);for(let m=0;m{const a=gn(i),l=Math.floor(a/(s+o)),u=(a+o-l*(s+o))/2;let f=i[0],d=i[1];f[0]>d[0]&&(f=i[1],d=i[0]);const h=Math.atan((d[1]-f[1])/(d[0]-f[0]));for(let p=0;p{const i=gn(r),a=Math.round(i/(2*n));let l=r[0],u=r[1];l[0]>u[0]&&(l=r[1],u=r[0]);const f=Math.atan((u[1]-l[1])/(u[0]-l[0]));for(let d=0;df%2?u+n:u+e);r.push({key:"C",data:l}),e=l[4],n=l[5];break}case"Q":r.push({key:"Q",data:[...a]}),e=a[2],n=a[3];break;case"q":{const l=a.map((u,f)=>f%2?u+n:u+e);r.push({key:"Q",data:l}),e=l[2],n=l[3];break}case"A":r.push({key:"A",data:[...a]}),e=a[5],n=a[6];break;case"a":e+=a[5],n+=a[6],r.push({key:"A",data:[a[0],a[1],a[2],a[3],a[4],e,n]});break;case"H":r.push({key:"H",data:[...a]}),e=a[0];break;case"h":e+=a[0],r.push({key:"H",data:[e]});break;case"V":r.push({key:"V",data:[...a]}),n=a[0];break;case"v":n+=a[0],r.push({key:"V",data:[n]});break;case"S":r.push({key:"S",data:[...a]}),e=a[2],n=a[3];break;case"s":{const l=a.map((u,f)=>f%2?u+n:u+e);r.push({key:"S",data:l}),e=l[2],n=l[3];break}case"T":r.push({key:"T",data:[...a]}),e=a[0],n=a[1];break;case"t":e+=a[0],n+=a[1],r.push({key:"T",data:[e,n]});break;case"Z":case"z":r.push({key:"Z",data:[]}),e=s,n=o;break}return r}function uo(t){const e=[];let n="",s=0,o=0,r=0,i=0,a=0,l=0;for(const{key:u,data:f}of t){switch(u){case"M":e.push({key:"M",data:[...f]}),[s,o]=f,[r,i]=f;break;case"C":e.push({key:"C",data:[...f]}),s=f[4],o=f[5],a=f[2],l=f[3];break;case"L":e.push({key:"L",data:[...f]}),[s,o]=f;break;case"H":s=f[0],e.push({key:"L",data:[s,o]});break;case"V":o=f[0],e.push({key:"L",data:[s,o]});break;case"S":{let d=0,h=0;n==="C"||n==="S"?(d=s+(s-a),h=o+(o-l)):(d=s,h=o),e.push({key:"C",data:[d,h,...f]}),a=f[0],l=f[1],s=f[2],o=f[3];break}case"T":{const[d,h]=f;let p=0,m=0;n==="Q"||n==="T"?(p=s+(s-a),m=o+(o-l)):(p=s,m=o);const g=s+2*(p-s)/3,y=o+2*(m-o)/3,_=d+2*(p-d)/3,w=h+2*(m-h)/3;e.push({key:"C",data:[g,y,_,w,d,h]}),a=p,l=m,s=d,o=h;break}case"Q":{const[d,h,p,m]=f,g=s+2*(d-s)/3,y=o+2*(h-o)/3,_=p+2*(d-p)/3,w=m+2*(h-m)/3;e.push({key:"C",data:[g,y,_,w,p,m]}),a=d,l=h,s=p,o=m;break}case"A":{const d=Math.abs(f[0]),h=Math.abs(f[1]),p=f[2],m=f[3],g=f[4],y=f[5],_=f[6];d===0||h===0?(e.push({key:"C",data:[s,o,y,_,y,_]}),s=y,o=_):(s!==y||o!==_)&&(fo(s,o,y,_,d,h,p,m,g).forEach(function(k){e.push({key:"C",data:k})}),s=y,o=_);break}case"Z":e.push({key:"Z",data:[]}),s=r,o=i;break}n=u}return e}function tl(t){return Math.PI*t/180}function Tt(t,e,n){const s=t*Math.cos(n)-e*Math.sin(n),o=t*Math.sin(n)+e*Math.cos(n);return[s,o]}function fo(t,e,n,s,o,r,i,a,l,u){const f=tl(i);let d=[],h=0,p=0,m=0,g=0;if(u)[h,p,m,g]=u;else{[t,e]=Tt(t,e,-f),[n,s]=Tt(n,s,-f);const L=(t-n)/2,A=(e-s)/2;let R=L*L/(o*o)+A*A/(r*r);R>1&&(R=Math.sqrt(R),o=R*o,r=R*r);const F=a===l?-1:1,I=o*o,se=r*r,B=I*se-I*A*A-se*L*L,Y=I*A*A+se*L*L,D=F*Math.sqrt(Math.abs(B/Y));m=D*o*A/r+(t+n)/2,g=D*-r*L/o+(e+s)/2,h=Math.asin(parseFloat(((e-g)/r).toFixed(9))),p=Math.asin(parseFloat(((s-g)/r).toFixed(9))),tp&&(h=h-Math.PI*2),!l&&p>h&&(p=p-Math.PI*2)}let y=p-h;if(Math.abs(y)>Math.PI*120/180){const L=p,A=n,R=s;l&&p>h?p=h+Math.PI*120/180*1:p=h+Math.PI*120/180*-1,n=m+o*Math.cos(p),s=g+r*Math.sin(p),d=fo(n,s,A,R,o,r,i,0,l,[p,L,m,g])}y=p-h;const _=Math.cos(h),w=Math.sin(h),k=Math.cos(p),S=Math.sin(p),E=Math.tan(y/4),T=4/3*o*E,P=4/3*r*E,C=[t,e],x=[t+T*w,e-P*_],V=[n+T*S,s-P*k],ne=[n,s];if(x[0]=2*C[0]-x[0],x[1]=2*C[1]-x[1],u)return[x,V,ne].concat(d);{d=[x,V,ne].concat(d);const L=[];for(let A=0;A2){const o=[];for(let r=0;rMath.PI*2&&(p=0,m=Math.PI*2);const g=Math.PI*2/l.curveStepCount,y=Math.min(g/2,(m-p)/2),_=Ts(y,u,f,d,h,p,m,1,l);if(!l.disableMultiStroke){const w=Ts(y,u,f,d,h,p,m,1.5,l);_.push(...w)}return i&&(a?_.push(...le(u,f,u+d*Math.cos(p),f+h*Math.sin(p),l),...le(u,f,u+d*Math.cos(m),f+h*Math.sin(m),l)):_.push({op:"lineTo",data:[u,f]},{op:"lineTo",data:[u+d*Math.cos(p),f+h*Math.sin(p)]})),{type:"path",ops:_}}function Ss(t,e){const n=uo(co(os(t))),s=[];let o=[0,0],r=[0,0];for(const{key:i,data:a}of n)switch(i){case"M":{r=[a[0],a[1]],o=[a[0],a[1]];break}case"L":s.push(...le(r[0],r[1],a[0],a[1],e)),r=[a[0],a[1]];break;case"C":{const[l,u,f,d,h,p]=a;s.push(...ll(l,u,f,d,h,p,r,e)),r=[h,p];break}case"Z":s.push(...le(r[0],r[1],o[0],o[1],e)),r=[o[0],o[1]];break}return{type:"path",ops:s}}function On(t,e){const n=[];for(const s of t)if(s.length){const o=e.maxRandomnessOffset||0,r=s.length;if(r>2){n.push({op:"move",data:[s[0][0]+M(o,e),s[0][1]+M(o,e)]});for(let i=1;iMath.PI*2&&(d=0,h=Math.PI*2);const p=(h-d)/i.curveStepCount,m=[];for(let g=d;g<=h;g=g+p)m.push([a+u*Math.cos(g),l+f*Math.sin(g)]);return m.push([a+u*Math.cos(h),l+f*Math.sin(h)]),m.push([a,l]),ht([m],i)}function rl(t,e){return M(t,e)}function il(t,e,n){return sn(t,e,n)}function al(t,e,n,s,o){return le(t,e,n,s,o,!0)}function Ms(t){const e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function mo(t){return t.randomizer||(t.randomizer=new Ua(t.seed||0)),t.randomizer.next()}function sn(t,e,n,s=1){return n.roughness*s*(mo(n)*(e-t)+t)}function M(t,e,n=1){return sn(-t,t,e,n)}function le(t,e,n,s,o,r=!1){const i=r?o.disableMultiStrokeFill:o.disableMultiStroke,a=Fn(t,e,n,s,o,!0,!1);if(i)return a;const l=Fn(t,e,n,s,o,!0,!0);return a.concat(l)}function Fn(t,e,n,s,o,r,i){const a=Math.pow(t-n,2)+Math.pow(e-s,2),l=Math.sqrt(a);let u=1;l<200?u=1:l>500?u=.4:u=-.0016668*l+1.233334;let f=o.maxRandomnessOffset||0;f*f*100>a&&(f=l/10);const d=f/2,h=.2+mo(o)*.2;let p=o.bowing*o.maxRandomnessOffset*(s-e)/200,m=o.bowing*o.maxRandomnessOffset*(t-n)/200;p=M(p,o,u),m=M(m,o,u);const g=[],y=()=>M(d,o,u),_=()=>M(f,o,u),w=o.preserveVertices;return r&&(i?g.push({op:"move",data:[t+(w?0:y()),e+(w?0:y())]}):g.push({op:"move",data:[t+(w?0:M(f,o,u)),e+(w?0:M(f,o,u))]})),i?g.push({op:"bcurveTo",data:[p+t+(n-t)*h+y(),m+e+(s-e)*h+y(),p+t+2*(n-t)*h+y(),m+e+2*(s-e)*h+y(),n+(w?0:y()),s+(w?0:y())]}):g.push({op:"bcurveTo",data:[p+t+(n-t)*h+_(),m+e+(s-e)*h+_(),p+t+2*(n-t)*h+_(),m+e+2*(s-e)*h+_(),n+(w?0:_()),s+(w?0:_())]}),g}function Nt(t,e,n){if(!t.length)return[];const s=[];s.push([t[0][0]+M(e,n),t[0][1]+M(e,n)]),s.push([t[0][0]+M(e,n),t[0][1]+M(e,n)]);for(let o=1;o3){const r=[],i=1-n.curveTightness;o.push({op:"move",data:[t[1][0],t[1][1]]});for(let a=1;a+21&&o.push(r):o.push(r),o.push(t[e+3])}else{const i=t[e+0],a=t[e+1],l=t[e+2],u=t[e+3],f=it(i,a,.5),d=it(a,l,.5),h=it(l,u,.5),p=it(f,d,.5),m=it(d,h,.5),g=it(p,m,.5);Nn([i,f,p,g],0,n,o),Nn([g,m,h,u],0,n,o)}return o}function dl(t,e){return rn(t,0,t.length,e)}function rn(t,e,n,s,o){const r=o||[],i=t[e],a=t[n-1];let l=0,u=1;for(let f=e+1;fl&&(l=d,u=f)}return Math.sqrt(l)>s?(rn(t,e,u+1,s,r),rn(t,u,n,s,r)):(r.length||r.push(i),r.push(a)),r}function Vn(t,e=.15,n){const s=[],o=(t.length-1)/3;for(let r=0;r0?rn(s,0,s.length,n):s}function hl(t,e,n){const s=os(t),o=uo(co(s)),r=[];let i=[],a=[0,0],l=[];const u=()=>{l.length>=4&&i.push(...Vn(l,e)),l=[]},f=()=>{u(),i.length&&(r.push(i),i=[])};for(const{key:h,data:p}of o)switch(h){case"M":f(),a=[p[0],p[1]],i.push(a);break;case"L":u(),i.push([p[0],p[1]]);break;case"C":if(!l.length){const m=i.length?i[i.length-1]:a;l.push([m[0],m[1]])}l.push([p[0],p[1]]),l.push([p[2],p[3]]),l.push([p[4],p[5]]);break;case"Z":u(),i.push([a[0],a[1]]);break}if(f(),!n)return r;const d=[];for(const h of r){const p=dl(h,n);p.length&&d.push(p)}return d}const K="none";class pl{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return ao()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,n,s){return{shape:e,sets:n||[],options:s||this.defaultOptions}}line(e,n,s,o,r){const i=this._o(r);return this._d("line",[G(e,n,s,o,i)],i)}rectangle(e,n,s,o,r){const i=this._o(r),a=[],l=ho(e,n,s,o,i);if(i.fill){const u=[[e,n],[e+s,n],[e+s,n+o],[e,n+o]];i.fillStyle==="solid"?a.push(On([u],i)):a.push(ht([u],i))}return i.stroke!==K&&a.push(l),this._d("rectangle",a,i)}ellipse(e,n,s,o,r){const i=this._o(r),a=[],l=po(s,o,i),u=jn(e,n,i,l);if(i.fill)if(i.fillStyle==="solid"){const f=jn(e,n,i,l).opset;f.type="fillPath",a.push(f)}else a.push(ht([u.estimatedPoints],i));return i.stroke!==K&&a.push(u.opset),this._d("ellipse",a,i)}circle(e,n,s,o){const r=this.ellipse(e,n,s,s,o);return r.shape="circle",r}linearPath(e,n){const s=this._o(n);return this._d("linearPath",[Ct(e,!1,s)],s)}arc(e,n,s,o,r,i,a=!1,l){const u=this._o(l),f=[],d=bs(e,n,s,o,r,i,a,!0,u);if(a&&u.fill)if(u.fillStyle==="solid"){const h=Object.assign({},u);h.disableMultiStroke=!0;const p=bs(e,n,s,o,r,i,!0,!1,h);p.type="fillPath",f.push(p)}else f.push(ol(e,n,s,o,r,i,u));return u.stroke!==K&&f.push(d),this._d("arc",f,u)}curve(e,n){const s=this._o(n),o=[],r=ks(e,s);if(s.fill&&s.fill!==K)if(s.fillStyle==="solid"){const i=ks(e,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));o.push({type:"fillPath",ops:this._mergedShape(i.ops)})}else{const i=[],a=e;if(a.length){const u=typeof a[0][0]=="number"?[a]:a;for(const f of u)f.length<3?i.push(...f):f.length===3?i.push(...Vn(Es([f[0],f[0],f[1],f[2]]),10,(1+s.roughness)/2)):i.push(...Vn(Es(f),10,(1+s.roughness)/2))}i.length&&o.push(ht([i],s))}return s.stroke!==K&&o.push(r),this._d("curve",o,s)}polygon(e,n){const s=this._o(n),o=[],r=Ct(e,!0,s);return s.fill&&(s.fillStyle==="solid"?o.push(On([e],s)):o.push(ht([e],s))),s.stroke!==K&&o.push(r),this._d("polygon",o,s)}path(e,n){const s=this._o(n),o=[];if(!e)return this._d("path",o,s);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const r=s.fill&&s.fill!=="transparent"&&s.fill!==K,i=s.stroke!==K,a=!!(s.simplification&&s.simplification<1),l=a?4-4*(s.simplification||1):(1+s.roughness)/2,u=hl(e,1,l),f=Ss(e,s);if(r)if(s.fillStyle==="solid")if(u.length===1){const d=Ss(e,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));o.push({type:"fillPath",ops:this._mergedShape(d.ops)})}else o.push(On(u,s));else o.push(ht(u,s));return i&&(a?u.forEach(d=>{o.push(Ct(d,!1,s))}):o.push(f)),this._d("path",o,s)}opsToPath(e,n){let s="";for(const o of e.ops){const r=typeof n=="number"&&n>=0?o.data.map(i=>+i.toFixed(n)):o.data;switch(o.op){case"move":s+=`M${r[0]} ${r[1]} `;break;case"bcurveTo":s+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":s+=`L${r[0]} ${r[1]} `;break}}return s.trim()}toPaths(e){const n=e.sets||[],s=e.options||this.defaultOptions,o=[];for(const r of n){let i=null;switch(r.type){case"path":i={d:this.opsToPath(r),stroke:s.stroke,strokeWidth:s.strokeWidth,fill:K};break;case"fillPath":i={d:this.opsToPath(r),stroke:K,strokeWidth:0,fill:s.fill||K};break;case"fillSketch":i=this.fillSketch(r,s);break}i&&o.push(i)}return o}fillSketch(e,n){let s=n.fillWeight;return s<0&&(s=n.strokeWidth/2),{d:this.opsToPath(e),stroke:n.fill||K,strokeWidth:s,fill:K}}_mergedShape(e){return e.filter((n,s)=>s===0?!0:n.op!=="move")}}const go="http://www.w3.org/2000/svg",ml=800;let Tn=null;function gl(){return Tn||(Tn=new pl().defaultOptions),Tn}function En(t,e,n){return{...gl(),maxRandomnessOffset:2,roughness:t==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:t!=="double",disableMultiStrokeFill:!1,seed:e,...n}}function yl(t){const e=t.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const n=e;if(n.length)switch(n.length){case 4:return[...n];case 1:return[n[0],n[0],n[0],n[0]];case 2:return[...n,...n];case 3:return[...n,n[1]];default:return[n[0],n[1],n[2],n[3]]}}}return[5,5,5,5]}function _l(t,e,n,s,o,r){const i=[];let a=n.strokeWidth||2;const l=yl(n),u=n.animate===void 0?!0:!!n.animate,f=n.iterations||2,d=n.rtl?1:0,h=En("single",r,n);switch(n.type){case"underline":{const p=e.y+e.h+l[2];for(let m=d;mw.setAttribute(k,S);for(const w of p){const k=document.createElementNS(go,"path");if(_(k,"d",w),_(k,"fill","none"),_(k,"stroke",n.color||"currentColor"),_(k,"stroke-width",`${a}`),n.opacity!==void 0&&_(k,"style",`opacity:${n.opacity}`),u){const S=k.getTotalLength();m.push(S),y+=S}t.appendChild(k),g.push(k)}if(u){let w=0;for(let k=0;ksetTimeout(e,t))}function vl(t){const e=[];for(const n of t){let s="";for(const o of n.ops){const r=o.data;switch(o.op){case"move":s.trim()&&e.push(s.trim()),s=`M${r[0]} ${r[1]} `;break;case"bcurveTo":s+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":s+=`L${r[0]} ${r[1]} `;break}}s.trim()&&e.push(s.trim())}return e}function wl(){if(!window.__rno_kf_s){const t=window.__rno_kf_s=document.createElement("style");t.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(t)}}var kl=Object.defineProperty,bl=(t,e,n)=>e in t?kl(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,X=(t,e,n)=>(bl(t,typeof e!="symbol"?e+"":e,n),n);class Sl{constructor(e,n){X(this,"_state","unattached"),X(this,"_config"),X(this,"_resizing",!1),X(this,"_ro"),X(this,"_seed",ao()),X(this,"_e"),X(this,"_svg"),X(this,"_lastSizes",[]),X(this,"_animationDelay",0),X(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),X(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(n)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,n){this._config[e]!==n&&(this._config[e]=n,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){wl();const e=this._svg=document.createElementNS(go,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const n=e.style;n.position="absolute",n.top="0",n.left="0",n.overflow="visible",n.pointerEvents="none",n.width="100px",n.height="100px";const s=this._config.type==="highlight";if(this._e.insertAdjacentElement(s?"beforebegin":"afterend",e),this._state="not-showing",s){const o=window.getComputedStyle(this._e).position;(!o||o==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const n of e)n.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let n=0;nMath.round(o)===Math.round(r);return s(e.x,n.x)&&s(e.y,n.y)&&s(e.w,n.w)&&s(e.h,n.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,n){let s=this._config;n&&(s=JSON.parse(JSON.stringify(this._config)),s.animate=!1);const o=this.rects();let r=0;o.forEach(u=>r+=u.w);const i=s.animationDuration||ml;let a=0;const l=[];for(let u=0;uObject.assign(t,{type:"box"}),circle:t=>Object.assign(t,{type:"circle"}),underline:t=>Object.assign(t,{type:"underline"}),highlight:t=>Object.assign(t,{type:"highlight"}),"strike-through":t=>Object.assign(t,{type:"strike-through"}),"crossed-off":t=>Object.assign(t,{type:"crossed-off"}),bracket:t=>Object.assign(t,{type:"bracket"}),strike:t=>Object.assign(t,{type:"strike-through"}),cross:t=>Object.assign(t,{type:"crossed-off"}),crossed:t=>Object.assign(t,{type:"crossed-off"}),linethrough:t=>Object.assign(t,{type:"strike-through"}),"line-through":t=>Object.assign(t,{type:"strike-through"}),black:t=>z(t,"text-black"),blue:t=>z(t,"text-blue"),cyan:t=>z(t,"text-cyan"),gray:t=>z(t,"text-gray"),green:t=>z(t,"text-green"),indigo:t=>z(t,"text-indigo"),lime:t=>z(t,"text-lime"),orange:t=>z(t,"text-orange"),pink:t=>z(t,"text-pink"),purple:t=>z(t,"text-purple"),red:t=>z(t,"text-red"),teal:t=>z(t,"text-teal"),white:t=>z(t,"text-white"),yellow:t=>z(t,"text-yellow")},Ol=[[/^delay-?(\d+)?$/,(t,e,n)=>{const s=(t[1]?Number.parseInt(t[1]):n)||300;return e.delay=s,e}],[/^(?:op|opacity)-?(\d+)?$/,(t,e,n)=>{const s=(t[1]?Number.parseInt(t[1]):n)||100;return e.opacity=s/100,e}]];function Tl(){return{install(t){t.directive("mark",{name:"v-mark",mounted:(e,n)=>{const s=c(()=>{const i=typeof n.value=="object"&&!Array.isArray(n.value)?{...n.value}:{at:n.value};let a={at:i.at};const l=Object.entries(n.modifiers).filter(([f,d])=>{if($s[f])return a=$s[f](a,d),!1;for(const[h,p]of Ol){const m=f.match(h);if(m)return a=p(m,a,d),!1}return!0});l.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",l);const u={...a,...i};return u.type||(u.type="underline"),u}),o=Ml(e,s.value),r=Gt(e,n,s.value.at);if(!r){o.show();return}e.watchStopHandle=_t(()=>{let i;s.value.class&&(o.class=s.value.class),s.value.color&&(o.color=s.value.color);const a=s.value.at;a===!0?i=!0:a===!1?i=!1:i=r.isActive.value,i!=null&&(i?o.show():o.hide())})},unmounted:e=>{var n;(n=e.watchStopHandle)==null||n.call(e)}})}}}const rc=$(!1),ic=$(!1),ac=$(!1),El=$(!1),lc=$(!0),cc=Co({xs:460,...Ho}),an=Ao(),uc=Do(),fc=c(()=>an.height.value-an.width.value/Is.value>120),dc=xo(un?document.body:null),Un=Io(),hc=c(()=>{var t,e;return["INPUT","TEXTAREA"].includes(((t=Un.value)==null?void 0:t.tagName)||"")||((e=Un.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),pc=c(()=>{var t;return["BUTTON","A"].includes(((t=Un.value)==null?void 0:t.tagName)||"")});te("slidev-camera","default",{listenToStorageChanges:!1});te("slidev-mic","default",{listenToStorageChanges:!1});const Ll=te("slidev-scale",0),mc=te("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),$l=te("slidev-show-editor",!1,{listenToStorageChanges:!1}),Pl=te("slidev-editor-vertical",!1,{listenToStorageChanges:!1}),Cl=te("slidev-editor-width",un?window.innerWidth*.4:318,{listenToStorageChanges:!1}),Al=te("slidev-editor-height",un?window.innerHeight*.4:300,{listenToStorageChanges:!1}),Vt=Wn(null),ln=te("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),Ut=te("slidev-presenter-layout",1,{listenToStorageChanges:!1});function gc(){Ut.value=Ut.value+1,Ut.value>2&&(Ut.value=1)}function yc(){ln.value=Math.min(2,ln.value+.1)}function _c(){ln.value=Math.max(.5,ln.value-.1)}const vc=Ds(El);function Dl(t=Ps(Ws,$())){const e=Ro(t),n=Q([$l,Pl,Cl,Al,Ll,an.width,an.height],()=>{setTimeout(e.update,300)},{flush:"post",immediate:!0});return{...e,stop:n}}function xl(t){return()=>{}}function Il(t,e,n){var Y;function s(D){return t?vt(t,D):No(D)}const o=s(Kn),r=s(Qr)??{},i=s(qn),a=c(()=>xl(i.value)),l=s(Jr)??$(1),u=s(Zr)??$(1),{left:f,top:d,stop:h}=Dl(s(Ws)??$()),p=["slide","presenter"].includes(o.value);let m=t?"directive":"prop",g=ns(),y;if(Array.isArray(e)?y=e:typeof e=="string"&&e.includes(",")?y=e.split(",").map(Number):e!=null&&(m="frontmatter",g=`${e}`,e=(Y=r==null?void 0:r.dragPos)==null?void 0:Y[g],y=e==null?void 0:e.split(",").map(Number)),m!=="frontmatter"&&!n)throw new Error("[Slidev] Can not identify the source position of the v-drag element, please provide an explicit `id` prop.");const _=[h],w=e!=null&&!Number.isFinite(y==null?void 0:y[3]);y??(y=[Number.NaN,Number.NaN,0]);const k=$(y[2]),S=$(y[0]+y[2]/2),E=$(y[4]??0),T=c(()=>E.value*Math.PI/180),P=c(()=>Math.sin(T.value)),C=c(()=>Math.cos(T.value)),x=$(),V=$({left:0,top:0,width:0,height:0}),ne=$(0);function L(){const D=x.value.getBoundingClientRect();V.value={left:D.left/u.value,top:D.top/u.value,width:D.width/u.value,height:D.height/u.value},ne.value=(V.value.width+V.value.height)/l.value/(Math.abs(P.value)+Math.abs(C.value))-k.value}_.push(Q(k,L,{flush:"post"}));const A=$(y[3]??0),R=c({get:()=>(w?ne.value:A.value)||0,set:D=>!w&&(A.value=D)}),F=$(y[1]),I=c({get:()=>F.value+R.value/2,set:D=>F.value=D-R.value/2}),se=c(()=>Number.isFinite(S.value)?{position:"absolute",zIndex:100,left:`${S.value-k.value/2}px`,top:`${I.value-R.value/2}px`,width:`${k.value}px`,height:w?void 0:`${R.value}px`,transformOrigin:"center center",transform:`rotate(${E.value}deg)`}:{position:"absolute",zIndex:100});_.push(Q([S,I,k,R,E],([D,ce,kt,bt,rs])=>{let ft=[D-kt/2,ce-bt/2,kt].map(Math.round).join();w?ft+=m==="directive"?",NaN":",_":ft+=`,${Math.round(bt)}`,Math.round(rs)!==0&&(ft+=`,${Math.round(rs)}`),m==="directive"&&(ft=`[${ft}]`),a.value(g,ft,m,n)}));const B={id:g,dataSource:m,markdownSource:n,zoom:u,autoHeight:w,x0:S,y0:I,width:k,height:R,rotate:E,container:x,containerStyle:se,watchStopHandles:_,dragging:c(()=>Vt.value===B),mounted(){p&&(L(),e||setTimeout(()=>{L(),S.value=(V.value.left+V.value.width/2-f.value)/l.value,I.value=(V.value.top-d.value)/l.value,k.value=V.value.width/l.value,R.value=V.value.height/l.value},100))},unmounted(){p&&B.stopDragging()},startDragging(){L(),Vt.value=B},stopDragging(){Vt.value===B&&(Vt.value=null)}};return _.push(jo(x,D=>{const ce=document.querySelector("#drag-control-container");ce&&D.target&&ce.contains(D.target)||B.stopDragging()}),Q(Fo(),D=>{D||B.stopDragging()})),B}function Hl(){return{install(t){t.directive("drag",{name:"v-drag",created(e,n,s){var r;const o=Il(n,n.value,(r=s.props)==null?void 0:r.markdownSource);s.props&&(s.props={...s.props},delete s.props.markdownSource),o.container.value=e,e.draggingState=o,e.dataset.dragId=o.id,o.watchStopHandles.push(Q(o.containerStyle,i=>{for(const[a,l]of Object.entries(i))l&&(e.style[a]=l)},{immediate:!0})),e.addEventListener("dblclick",o.startDragging)},mounted(e){e.draggingState.mounted()},unmounted(e){const n=e.draggingState;n.unmounted(),e.removeEventListener("dblclick",n.startDragging),n.watchStopHandles.forEach(s=>s())}})}}}function Rl(){return{install(t){const e=Vo();t.directive("motion",{name:"v-motion",mounted(n,s,o,r){var k,S,E;const i=vt(s,fn),a=vt(s,qn),l=vt(s,Kn),{currentPage:u,clicks:f,isPrintMode:d}=xn(),h=o.props={...o.props},p={...h.initial,...(k=h.variants)==null?void 0:k["slidev-initial"]},m={...h.enter,...(S=h.variants)==null?void 0:S["slidev-enter"]},g={...h.leave,...(E=h.variants)==null?void 0:E["slidev-leave"]};delete h.initial,delete h.enter,delete h.leave;const y=`${ns()}-`,_=[];for(const T of Object.keys(h))if(T.startsWith("click-")){const P=T.slice(6),C=P.includes("-")?P.split("-").map(Number):+P,x=y+P;_.push({id:x,at:C,variant:{...h[T]},info:i==null?void 0:i.value.calculate(C)}),delete h[T]}_.sort((T,P)=>(Array.isArray(T.at)?T.at[0]:T.at)-(Array.isArray(P.at)?P.at[0]:P.at)),e.created(n,s,o,r),e.mounted(n,s,o,r);const w=n.motionInstance;w.clickIds=_.map(T=>T.id),w.set(p),w.watchStopHandle=Q([a,u,f].filter(Boolean),()=>{var P;const T=((P=io.get(n))==null?void 0:P.visibilityState.value)??"shown";if(!(i!=null&&i.value)||!["slide","presenter"].includes((l==null?void 0:l.value)??"")){const C={...p,...m};for(const{variant:x}of _)Object.assign(C,x);w.set(C)}else if(d.value||(a==null?void 0:a.value)===u.value)if(T==="shown"){const C={...p,...m};for(const{variant:x,info:V}of _)(!V||V.isActive.value)&&Object.assign(C,x);d.value?w.set(C):w.apply(C)}else w.apply(T==="before"?p:g);else w.apply(((a==null?void 0:a.value)??-1)>u.value?p:g)},{immediate:!0})},unmounted(n){n.motionInstance.watchStopHandle()}})}}}const jl=[];function Fl(){const t=[];{let e=function(n){if(!H.remote||H.remote===n.query.password)return!0;if(H.remote&&n.query.password===void 0){const s=prompt("Enter password");if(H.remote===s)return!0}return n.params.no?{path:`/${n.params.no}`}:{path:""}};t.push({name:"entry",path:"/entry",component:()=>b(()=>import("./slidev/entry-ZmiGPuuu.js"),__vite__mapDeps([60,14,1,3,4]))},{name:"overview",path:"/overview",component:()=>b(()=>import("./slidev/overview-cmOPZJzU.js"),__vite__mapDeps([61,14,1,62,63,64,65,66,67,68,3,4]))},{name:"notes",path:"/notes",component:()=>b(()=>import("./slidev/notes-OINdQOdX.js"),__vite__mapDeps([69,14,1,65,66,64,3,4])),beforeEnter:e},{name:"presenter",path:"/presenter/:no",component:()=>b(()=>import("./slidev/presenter-CLD8XO3o.js"),__vite__mapDeps([70,14,1,71,62,63,64,2,3,4,72,65,66,73,74,67,68,75])),beforeEnter:e},{path:"/presenter",redirect:{path:"/presenter/1"}})}return t.push({name:"play",path:"/:no",component:()=>b(()=>import("./slidev/play-D4eYjzGv.js"),__vite__mapDeps([76,1,71,62,63,14,64,2,3,4,72,77]))},{path:"",redirect:{path:"/1"}}),jl.reduce((e,n)=>n(e),t)}const Nl=[];async function Vl(t){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e);const n=Uo({history:Bo("/sa2024/06-scalable/"),routes:Fl()});t.use(n),t.use(Rr()),t.use(Va()),t.use(Tl()),t.use(Hl()),t.use(Rl()),t.use(zo,{container:"#twoslash-container"});const s={app:t,router:n};Zt(()=>{n.afterEach(async()=>{await Zt(),Dn.value+=1})});for(const o of Nl)await o(s)}const yo=Wo(Na);Vl(yo);yo.mount("#app");export{Kn as $,b as A,an as B,$n as C,Ll as D,Pl as E,oe as F,Vt as G,vc as H,ac as I,uc as J,oc as K,lc as L,pc as M,hc as N,zl as O,cc as P,Un as Q,gc as R,It as S,Jr as T,Dl as U,zs as V,Is as W,Ws as X,Zl as Y,qn as Z,eo as _,xn as a,Yl as a0,fn as a1,Zr as a2,Ql as a3,Gl as a4,Jl as a5,ue as a6,fe as a7,de as a8,he as a9,Mt as aA,tc as aB,Ie as aC,He as aD,Re as aE,je as aF,Fe as aG,Ne as aH,Ve as aI,Ue as aJ,Be as aK,We as aL,ze as aM,qe as aN,Ke as aO,Je as aP,Ge as aQ,Qe as aR,Ze as aS,Ye as aT,Xe as aU,et as aV,tt as aW,nt as aX,st as aY,ot as aZ,pe as aa,me as ab,ge as ac,ye as ad,_e as ae,ve as af,we as ag,ke as ah,be as ai,Se as aj,Me as ak,Oe as al,Te as am,Ee as an,Le as ao,$e as ap,Pe as aq,Ce as ar,Ae as as,De as at,xe as au,Gr as av,Qr as aw,Xl as ax,Xr as ay,ns as az,Pa as b,H as c,no as d,sc as e,dc as f,yt as g,ec as h,ws as i,mc as j,El as k,ln as l,yc as m,_c as n,At as o,Ut as p,rc as q,Wl as r,Kl as s,nc as t,Fr as u,ic as v,Zo as w,ql as x,fc as y,$l as z}; diff --git a/06-scalable/assets/index-NaUmuXUz.css b/06-scalable/assets/index-NaUmuXUz.css new file mode 100644 index 0000000..cd5ee9f --- /dev/null +++ b/06-scalable/assets/index-NaUmuXUz.css @@ -0,0 +1 @@ +*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border-main=""],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main,[bg-main=""]{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main,.dark [bg-main=""]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.hover\:bg-active:hover,[hover\:bg-active=""]:hover{background-color:#9ca3af1a}.dark .text-main{--un-text-opacity:1;color:rgb(221 221 221 / var(--un-text-opacity))}.text-main{--un-text-opacity:1;color:rgb(24 24 24 / var(--un-text-opacity))}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .slidev-code-dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:13px}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.i-svg-spinners-90-ring-with-bg{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z' opacity='.25'/%3E%3Cpath fill='currentColor' d='M10.14,1.16a11,11,0,0,0-9,8.92A1.59,1.59,0,0,0,2.46,12,1.52,1.52,0,0,0,4.11,10.7a8,8,0,0,1,6.66-6.61A1.42,1.42,0,0,0,12,2.69h0A1.57,1.57,0,0,0,10.14,1.16Z'%3E%3CanimateTransform attributeName='transform' dur='0.75s' repeatCount='indefinite' type='rotate' values='0 12 12;360 12 12'/%3E%3C/path%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1em;height:1em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none,[pointer-events-none=""]{pointer-events:none}.absolute,[absolute=""]{position:absolute}.fixed,[fixed=""]{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-110\%,[left-110\%=""]{left:110%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5,[right-5=""]{right:1.25rem}.top-0{top:0}.top-1\/2,.top-50\%,[top-50\%=""]{top:50%}.-top-15px{top:-15px}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-100{z-index:100}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-cols-\[35px_1fr\]{grid-template-columns:35px 1fr}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-rows-\[auto_max-content\]{grid-template-rows:auto max-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-1{margin:.25rem}.m-10{margin:2.5rem}.m-20{margin:5rem}.m-5{margin:1.25rem}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.my1{margin-top:.25rem;margin-bottom:.25rem}.my4{margin-top:1rem;margin-bottom:1rem}.my5{margin-top:1.25rem;margin-bottom:1.25rem}.mb-4{margin-bottom:1rem}.mb2{margin-bottom:.5rem}.ml--4{margin-left:-1rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr--3,[mr--3=""]{margin-right:-.75rem}.mr--8{margin-right:-2rem}.mr-1,.mr1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-0\.5{margin-top:.125rem}.mt-1,.mt1{margin-top:.25rem}.mt-2,[mt-2=""]{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.aspect-ratio-initial{aspect-ratio:initial}.h-\[40px\],.h-40px{height:40px}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-100{height:25rem}.h-20{height:5rem}.h-22px{height:22px}.h-2px{height:2px}.h-30{height:7.5rem}.h-3px{height:3px}.h-40{height:10rem}.h-5,.h5,[h5=""]{height:1.25rem}.h-50{height:12.5rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-70{height:17.5rem}.h-8,[h-8=""]{height:2rem}.h-80{height:20rem}.h-9,[h-9=""]{height:2.25rem}.h-full,[h-full=""]{height:100%}.h-max{height:max-content}.h-screen{height:100vh}.h1{height:.25rem}.max-h-full{max-height:100%}.max-w-150{max-width:37.5rem}.max-w-250,[max-w-250=""]{max-width:62.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-h-50,[min-h-50=""]{min-height:12.5rem}.min-w-16{min-width:4rem}.min-w-40{min-width:10rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-\[40px\]{width:40px}.w-0{width:0}.w-13{width:3.25rem}.w-1px{width:1px}.w-200{width:50rem}.w-22px{width:22px}.w-250,[w-250=""]{width:62.5rem}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-7{width:1.75rem}.w-8,[w-8=""]{width:2rem}.w-9,[w-9=""]{width:2.25rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.w-screen{width:100vw}.w1{width:.25rem}.flex,[flex=""],[flex~="~"]{display:flex}.flex-1,[flex-1=""]{flex:1 1 0%}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-y--50\%,[translate-y--50\%=""]{--un-translate-y:-50%;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in 1s linear 1}.animate-duration-100{animation-duration:.1s}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.important\:\[\&_\*\]\:select-none *{-webkit-user-select:none!important;user-select:none!important}.select-none,[select-none=""]{-webkit-user-select:none;user-select:none}[select-none~="default:"]:default{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-after-page{break-after:page}.items-end{align-items:flex-end}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.justify-items-start{justify-items:start}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4,[gap-4=""]{gap:1rem}.gap-5{gap:1.25rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""],[overflow-hidden=""]{overflow:hidden}.of-scroll{overflow:scroll}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap,.ws-nowrap,[ws-nowrap=""]{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border=""],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border-t=""],[border~=t]{border-top-width:1px}.b-dark{--un-border-opacity:1;border-color:rgb(34 34 34 / var(--un-border-opacity))}.border-gray,.dark .dark\:b-gray-400{--un-border-opacity:1;border-color:rgb(156 163 175 / var(--un-border-opacity))}.border-gray-300\/50{border-color:#d1d5db80}.dark .dark\:border-gray-500{--un-border-opacity:1;border-color:rgb(107 114 128 / var(--un-border-opacity))}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded],[rounded=""]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full,[rounded-full=""]{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-lb{border-bottom-left-radius:.25rem}.rounded-tl{border-top-left-radius:.25rem}.b-dashed{border-style:dashed}.\!border-none{border-style:none!important}[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray,[hover\:op100~="bg-gray:5"]{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.dark .dark\:bg-gray-800{--un-bg-opacity:1;background-color:rgb(31 41 55 / var(--un-bg-opacity))}.bg-gray\:10{background-color:#9ca3af1a}.bg-gray\:5{background-color:#9ca3af0d}.bg-gray\/20{background-color:#9ca3af33}.bg-teal-500{--un-bg-opacity:1;background-color:rgb(20 184 166 / var(--un-bg-opacity))}.bg-transparent,[bg-transparent~=","],[bg-transparent~="{"],[bg-transparent~="&&"],[bg-transparent~="text.value"]{background-color:transparent}[bg-transparent~="!valid.value"]{background-color:transparent!important}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.hover\:bg-gray\/20:hover{background-color:#9ca3af33}[bg-transparent~="placeholder:"]::placeholder{background-color:transparent}.bg-opacity-30{--un-bg-opacity:.3}.\!bg-opacity-75,.bg-opacity-75\!{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.dark .dark\:stroke-black{--un-stroke-opacity:1;stroke:rgb(0 0 0 / var(--un-stroke-opacity))}.stroke-white{--un-stroke-opacity:1;stroke:rgb(255 255 255 / var(--un-stroke-opacity))}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2,.p2,[p2=""]{padding:.5rem}.\!p-4{padding:1rem!important}.p3{padding:.75rem}.p4{padding:1rem}.px,.px-4,.px4,[p~=x-4],[px=""]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2,[px2=""]{padding-left:.5rem;padding-right:.5rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px1{padding-left:.25rem;padding-right:.25rem}.px3{padding-left:.75rem;padding-right:.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3,.py3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py0\.5{padding-top:.125rem;padding-bottom:.125rem}.py1\.5{padding-top:.375rem;padding-bottom:.375rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-0{padding-left:0}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.pt5{padding-top:1.25rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3em{font-size:3em}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg,[text-lg=""]{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}[text-sm~="default:"]:default{font-size:.875rem;line-height:1.25rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.dark .dark\:text-red-500{--un-text-opacity:1;color:rgb(239 68 68 / var(--un-text-opacity))}.text-red-700{--un-text-opacity:1;color:rgb(185 28 28 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}.important-text-op-50,.text-opacity-50\!{--un-text-opacity:.5 !important}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.font-mono,[font-mono=""]{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.tab{-moz-tab-size:4;-o-tab-size:4;tab-size:4}[tab~="1032"]{-moz-tab-size:1032;-o-tab-size:1032;tab-size:1032}[tab~="2"]{-moz-tab-size:2;-o-tab-size:2;tab-size:2}[tab~="default:"]:default{-moz-tab-size:4;-o-tab-size:4;tab-size:4}.\!opacity-0,.important\:op0{opacity:0!important}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""],.group:hover .group-hover\:op100{opacity:1}.op15{opacity:.15}.op20,.group:hover .group-hover\:opacity-20{opacity:.2}.op25,.opacity-25,[op25=""]{opacity:.25}.op30{opacity:.3}.op35{opacity:.35}.op40,.opacity-40{opacity:.4}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80,.group:hover .group-hover\:op80{opacity:.8}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.hover\:op100:hover,[hover~=op100]:hover{opacity:1}.hover\:\!opacity-100:hover{opacity:1!important}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-xl,[shadow-xl=""]{--un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none,[outline-none=""]{outline:2px solid transparent;outline-offset:2px}.backdrop-blur,.backdrop-blur-8,[backdrop-blur-8=""]{--un-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition,[transition=""]{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300,[duration-300=""]{transition-duration:.3s}.duration-400,[duration-400=""]{transition-duration:.4s}.duration-500{transition-duration:.5s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.view-transition-name{view-transition-name:name}@media (max-width: 767.9px){.lt-md\:hidden{display:none}.lt-md\:flex-col{flex-direction:column}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}}.shiki-magic-move-container{position:relative;white-space:pre}.shiki-magic-move-line-number{opacity:.3;-webkit-user-select:none;user-select:none}.shiki-magic-move-item{display:inline-block;transition:color var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-move,.shiki-magic-move-enter-active,.shiki-magic-move-leave-active{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-container-resize,.shiki-magic-move-container-restyle{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease");transition-delay:calc(var(--smm-duration, .5s) * var(--smm-delay-container, 1))}.shiki-magic-move-move{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-move, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-enter-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-enter, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-leave-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-leave, 1)) + var(--smm-stagger, 0))}.shiki-magic-move-enter-from,.shiki-magic-move-leave-to{opacity:0}br.shiki-magic-move-leave-active{display:none} diff --git a/06-scalable/assets/index-O-AvbMSf.css b/06-scalable/assets/index-O-AvbMSf.css deleted file mode 100644 index fb9b078..0000000 --- a/06-scalable/assets/index-O-AvbMSf.css +++ /dev/null @@ -1 +0,0 @@ -.slidev-layout.end[data-v-e7ce0abf]{display:grid;height:100%;-webkit-user-select:none;user-select:none;place-content:center;--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity));text-align:center;font-size:1.25rem;line-height:1.75rem;--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity));--un-text-opacity:.85;letter-spacing:.1em}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media print{.print-container{width:100%}}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 640px){@media print{.print-container{max-width:640px}}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 768px){@media print{.print-container{max-width:768px}}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1024px){@media print{.print-container{max-width:1024px}}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1280px){@media print{.print-container{max-width:1280px}}}@media (min-width: 1536px){.container{max-width:1536px}}@media (min-width: 1536px){@media print{.print-container{max-width:1536px}}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .line.dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}div[widgetid=messageoverlay]{transform:translateY(calc(100% * (var(--slidev-slide-scale) - 1)))}.slidev-monaco-container{position:relative;margin:var(--slidev-code-margin);padding:var(--slidev-code-padding);line-height:var(--slidev-code-line-height);border-radius:var(--slidev-code-radius);background:var(--slidev-code-background)}.slidev-monaco-container .monaco-editor{--monaco-monospace-font: var(--slidev-code-font-family);--vscode-editor-background: var(--slidev-code-background);--vscode-editorGutter-background: var(--slidev-code-background)}.slidev-monaco-container .monaco-editor a,.slidev-monaco-container .monaco-editor a:hover{border-bottom:none}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:calc(13px * var(--slidev-slide-scale, 1))}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute,[absolute=""]{position:absolute}.fixed{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5{right:1.25rem}.top-0{top:0}.top-1\/2{top:50%}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-1{margin:.25rem}.m-10{margin:2.5rem}.m-20{margin:5rem}.m-4{margin:1rem}.m-5{margin:1.25rem}.m-auto{margin:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.mb-10{margin-bottom:2.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.aspect-ratio-initial{aspect-ratio:initial}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-20{height:5rem}.h-22px{height:22px}.h-30{height:7.5rem}.h-3px{height:3px}.h-40{height:10rem}.h-40px{height:40px}.h-5,.h5,[h5=""]{height:1.25rem}.h-50{height:12.5rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-70{height:17.5rem}.h-8{height:2rem}.h-80{height:20rem}.h-full,[h-full=""]{height:100%}.h1{height:.25rem}.h2{height:.5rem}.max-w-150{max-width:37.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-w-16{min-width:4rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-1px{width:1px}.w-22px{width:22px}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.flex,[flex=""],[flex~="~"]{display:flex}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-0{--un-translate-x:0;--un-translate-y:0;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-inside-avoid-page{break-inside:avoid-page}.break-after-page{break-after:page}.place-content-center{place-content:center}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4{gap:1rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""]{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border~=t]{border-top-width:1px}.border-gray-300\/50{border-color:#d1d5db80}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.\!border-none{border-style:none!important}.bg-black,[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray\/20{background-color:#9ca3af33}.bg-transparent{background-color:transparent}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.\!bg-opacity-75{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2{padding:.5rem}.\!p-4{padding:1rem!important}.px,.px-4,.px4,[p~=x-4]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2{padding-left:.5rem;padding-right:.5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-4{padding-top:1rem;padding-bottom:1rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}.text-opacity-85{--un-text-opacity:.85}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""]{opacity:1}.op20,.group:hover .group-hover\:opacity-20{opacity:.2}.op30{opacity:.3}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80{opacity:.8}.\!opacity-0{opacity:0!important}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.opacity-25{opacity:.25}.opacity-40{opacity:.4}[hover~=op100]:hover{opacity:1}.hover\:\!opacity-100:hover{opacity:1!important}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@media (max-width: 767.9px){.lt-md\:hidden{display:none}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}} diff --git a/06-scalable/assets/modules/shiki-B34Zut0U.js b/06-scalable/assets/modules/shiki-B34Zut0U.js new file mode 100644 index 0000000..3050b78 --- /dev/null +++ b/06-scalable/assets/modules/shiki-B34Zut0U.js @@ -0,0 +1 @@ +import{d as xe,p as Vt,a as Wt,n as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-CyVBQAnX.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),jt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Vt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};Wt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T,Nt as t}; diff --git a/06-scalable/assets/modules/shiki-CNrqLFow.js b/06-scalable/assets/modules/shiki-CNrqLFow.js deleted file mode 100644 index dc5b489..0000000 --- a/06-scalable/assets/modules/shiki-CNrqLFow.js +++ /dev/null @@ -1 +0,0 @@ -import{d as xe,n as Vt,p as Wt,a as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-CoY6Ph6S.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),Vt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Wt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};jt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T}; diff --git a/06-scalable/assets/modules/unplugin-icons-BeR8N7Ub.js b/06-scalable/assets/modules/unplugin-icons-BeR8N7Ub.js new file mode 100644 index 0000000..3e7684f --- /dev/null +++ b/06-scalable/assets/modules/unplugin-icons-BeR8N7Ub.js @@ -0,0 +1 @@ +import{o as e,b as o,e as n}from"./vue-CyVBQAnX.js";const s={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},l=n("path",{fill:"currentColor",d:"M200 32h-36.26a47.92 47.92 0 0 0-71.48 0H56a16 16 0 0 0-16 16v168a16 16 0 0 0 16 16h144a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16m-72 0a32 32 0 0 1 32 32H96a32 32 0 0 1 32-32m72 184H56V48h26.75A47.93 47.93 0 0 0 80 64v8a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-8a47.93 47.93 0 0 0-2.75-16H200Z"},null,-1),_=[l];function i(t,c){return e(),o("svg",s,[..._])}const Bn={name:"ph-clipboard",render:i},h={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M173.66 98.34a8 8 0 0 1 0 11.32l-56 56a8 8 0 0 1-11.32 0l-24-24a8 8 0 0 1 11.32-11.32L112 148.69l50.34-50.35a8 8 0 0 1 11.32 0M232 128A104 104 0 1 1 128 24a104.11 104.11 0 0 1 104 104m-16 0a88 88 0 1 0-88 88a88.1 88.1 0 0 0 88-88"},null,-1),a=[r];function d(t,c){return e(),o("svg",h,[...a])}const Vn={name:"ph-check-circle",render:d},u={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),m=[v];function $(t,c){return e(),o("svg",u,[...m])}const bn={name:"carbon-list-boxes",render:$},p={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g=n("path",{fill:"currentColor",d:"M26 2H8a2 2 0 0 0-2 2v4H4v2h2v5H4v2h2v5H4v2h2v4a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2m0 26H8v-4h2v-2H8v-5h2v-2H8v-5h2V8H8V4h18Z"},null,-1),f=n("path",{fill:"currentColor",d:"M14 8h8v2h-8zm0 7h8v2h-8zm0 7h8v2h-8z"},null,-1),L=[g,f];function w(t,c){return e(),o("svg",p,[...L])}const Zn={name:"carbon-catalog",render:w},x={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),z=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),H=[M,z];function C(t,c){return e(),o("svg",x,[...H])}const An={name:"carbon-user-speaker",render:C},B={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},V=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),b=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),Z=[V,b];function A(t,c){return e(),o("svg",B,[...Z])}const kn={name:"carbon-presentation-file",render:A},k={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),j=[y];function D(t,c){return e(),o("svg",k,[...j])}const yn={name:"carbon-pen",render:D},E={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q=n("path",{fill:"currentColor",d:"m20.17 19l-2.59 2.59L19 23l4-4l-4-4l-1.42 1.41zm-8.34 0l2.59-2.59L13 15l-4 4l4 4l1.42-1.41z"},null,-1),F=n("circle",{cx:"9",cy:"8",r:"1",fill:"currentColor"},null,-1),I=n("circle",{cx:"6",cy:"8",r:"1",fill:"currentColor"},null,-1),N=n("path",{fill:"currentColor",d:"M28 4H4c-1.103 0-2 .898-2 2v20c0 1.103.897 2 2 2h24c1.103 0 2-.897 2-2V6c0-1.102-.897-2-2-2m0 2v4H4V6zM4 26V12h24v14z"},null,-1),S=[q,F,I,N];function G(t,c){return e(),o("svg",E,[...S])}const jn={name:"carbon-cics-program",render:G},J={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),O=[K];function U(t,c){return e(),o("svg",J,[...O])}const Dn={name:"carbon-sun",render:U},P={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Q=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),R=[Q];function T(t,c){return e(),o("svg",P,[...R])}const En={name:"carbon-moon",render:T},W={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},X=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),Y=[X];function n1(t,c){return e(),o("svg",W,[...Y])}const qn={name:"carbon-cursor1",render:n1},e1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},o1=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),t1=n("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),c1=[o1,t1];function s1(t,c){return e(),o("svg",e1,[...c1])}const Fn={name:"carbon-zoom-out",render:s1},l1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},_1=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),i1=n("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),h1=[_1,i1];function r1(t,c){return e(),o("svg",l1,[...h1])}const In={name:"carbon-zoom-in",render:r1},a1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},d1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),u1=[d1];function v1(t,c){return e(),o("svg",a1,[...u1])}const Nn={name:"carbon-maximize",render:v1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},$1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),p1=[$1];function g1(t,c){return e(),o("svg",m1,[...p1])}const Sn={name:"carbon-minimize",render:g1},f1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},L1=n("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),w1=[L1];function x1(t,c){return e(),o("svg",f1,[...w1])}const Gn={name:"carbon-renew",render:x1},M1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},z1=n("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),H1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),C1=[z1,H1];function B1(t,c){return e(),o("svg",M1,[...C1])}const Jn={name:"carbon-time",render:B1},V1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),Z1=[b1];function A1(t,c){return e(),o("svg",V1,[...Z1])}const Kn={name:"carbon-arrow-left",render:A1},k1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),j1=[y1];function D1(t,c){return e(),o("svg",k1,[...j1])}const On={name:"carbon-arrow-right",render:D1},E1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q1=n("path",{fill:"currentColor",d:"M16 4L6 14l1.41 1.41L15 7.83V28h2V7.83l7.59 7.58L26 14z"},null,-1),F1=[q1];function I1(t,c){return e(),o("svg",E1,[...F1])}const Un={name:"carbon-arrow-up",render:I1},N1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},S1=n("path",{fill:"currentColor",d:"M24.59 16.59L17 24.17V4h-2v20.17l-7.59-7.58L6 18l10 10l10-10z"},null,-1),G1=[S1];function J1(t,c){return e(),o("svg",N1,[...G1])}const Pn={name:"carbon-arrow-down",render:J1},K1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},O1=n("path",{d:"M29.537 13.76l-3.297-3.297a1.586 1.586 0 0 0-2.24 0L10 24.467V30h5.533l14.004-14a1.586 1.586 0 0 0 0-2.24zM14.704 28H12v-2.704l9.44-9.441l2.705 2.704zM25.56 17.145l-2.704-2.704l2.267-2.267l2.704 2.704z",fill:"currentColor"},null,-1),U1=n("path",{d:"M11 17h2v-7h3V8H8v2h3v7z",fill:"currentColor"},null,-1),P1=n("path",{d:"M8 20H4V4h16v4h2V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4z",fill:"currentColor"},null,-1),Q1=[O1,U1,P1];function R1(t,c){return e(),o("svg",K1,[...Q1])}const Qn={name:"carbon-text-annotation-toggle",render:R1},T1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},W1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),X1=[W1];function Y1(t,c){return e(),o("svg",T1,[...X1])}const Rn={name:"carbon-apps",render:Y1},n2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},e2=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),o2=[e2];function t2(t,c){return e(),o("svg",n2,[...o2])}const Tn={name:"carbon-settings-adjust",render:t2},c2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},s2=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),l2=n("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),_2=[s2,l2];function i2(t,c){return e(),o("svg",c2,[..._2])}const Wn={name:"carbon-information",render:i2},h2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},r2=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),a2=[r2];function d2(t,c){return e(),o("svg",h2,[...a2])}const Xn={name:"carbon-download",render:d2},u2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v2=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),m2=[v2];function $2(t,c){return e(),o("svg",u2,[...m2])}const Yn={name:"carbon-template",render:$2},p2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},g2=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0l-51.31-51.31a8 8 0 0 0-13 2.46l-17.82 46.41a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85l-46.41 17.82a8 8 0 0 0-2.46 13l51.31 51.31a8 8 0 0 1 0 11.34",opacity:".2"}),n("path",{d:"M168 132.69L214.08 115l.33-.13a16 16 0 0 0-1.41-29.8L52.92 32.8A15.95 15.95 0 0 0 32.8 52.92L85.07 213a15.82 15.82 0 0 0 14.41 11h.78a15.84 15.84 0 0 0 14.61-9.59l.13-.33L132.69 168L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63ZM195.31 208L144 156.69a16 16 0 0 0-26 4.93c0 .11-.09.22-.13.32l-17.65 46L48 48l159.85 52.2l-45.95 17.64l-.32.13a16 16 0 0 0-4.93 26L208 195.31Z"})],-1),f2=[g2];function L2(t,c){return e(),o("svg",p2,[...f2])}const ne={name:"ph-cursor-duotone",render:L2},w2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},x2=n("path",{fill:"currentColor",d:"m220.49 207.8l-12.69 12.69a12 12 0 0 1-17 0l-56.57-56.57L115 214.08l-.13.33a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-.33.13l-50.16 19.27l56.57 56.56a12 12 0 0 1 0 16.97"},null,-1),M2=[x2];function z2(t,c){return e(),o("svg",w2,[...M2])}const ee={name:"ph-cursor-fill",render:z2},H2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C2=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),B2=[C2];function V2(t,c){return e(),o("svg",H2,[...B2])}const oe={name:"carbon-checkmark",render:V2},b2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Z2=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),A2=[Z2];function k2(t,c){return e(),o("svg",b2,[...A2])}const te={name:"carbon-close",render:k2},y2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},j2=n("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),D2=n("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),E2=[j2,D2];function q2(t,c){return e(),o("svg",y2,[...E2])}const ce={name:"carbon-close-outline",render:q2},F2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},I2=n("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),N2=[I2];function S2(t,c){return e(),o("svg",F2,[...N2])}const se={name:"carbon-error",render:S2},G2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},J2=n("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),K2=[J2];function O2(t,c){return e(),o("svg",G2,[...K2])}const le={name:"carbon-pin",render:O2},U2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},P2=n("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),Q2=[P2];function R2(t,c){return e(),o("svg",U2,[...Q2])}const _e={name:"carbon-pin-filled",render:R2},T2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},W2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),X2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),Y2=[W2,X2];function nn(t,c){return e(),o("svg",T2,[...Y2])}const ie={name:"carbon-trash-can",render:nn},en={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},on=n("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),tn=[on];function cn(t,c){return e(),o("svg",en,[...tn])}const he={name:"carbon-redo",render:cn},sn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},ln=n("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),_n=[ln];function hn(t,c){return e(),o("svg",sn,[..._n])}const re={name:"carbon-undo",render:hn},rn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},an=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),dn=[an];function un(t,c){return e(),o("svg",rn,[...dn])}const ae={name:"carbon-erase",render:un},vn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},mn=n("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),$n=[mn];function pn(t,c){return e(),o("svg",vn,[...$n])}const de={name:"carbon-checkbox",render:pn},gn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},fn=n("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),Ln=[fn];function wn(t,c){return e(),o("svg",gn,[...Ln])}const ue={name:"carbon-radio-button",render:wn},xn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Mn=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),zn=[Mn];function Hn(t,c){return e(),o("svg",xn,[...zn])}const ve={name:"carbon-arrow-up-right",render:Hn};export{te as A,ve as B,ue as C,de as D,ae as E,re as F,he as G,ie as H,Un as I,_e as J,le as K,se as L,ce as M,Vn as N,Bn as O,kn as _,An as a,Zn as b,bn as c,En as d,Dn as e,jn as f,yn as g,In as h,Fn as i,Sn as j,Nn as k,Jn as l,Gn as m,qn as n,Kn as o,On as p,Pn as q,Qn as r,Rn as s,oe as t,ee as u,ne as v,Tn as w,Yn as x,Xn as y,Wn as z}; diff --git a/06-scalable/assets/modules/unplugin-icons-DdL09wdV.js b/06-scalable/assets/modules/unplugin-icons-DdL09wdV.js deleted file mode 100644 index 34c0f8e..0000000 --- a/06-scalable/assets/modules/unplugin-icons-DdL09wdV.js +++ /dev/null @@ -1 +0,0 @@ -import{o as e,b as o,e as n}from"./vue-CoY6Ph6S.js";const c={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},_=n("path",{fill:"currentColor",d:"M200 32h-36.26a47.92 47.92 0 0 0-71.48 0H56a16 16 0 0 0-16 16v168a16 16 0 0 0 16 16h144a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16m-72 0a32 32 0 0 1 32 32H96a32 32 0 0 1 32-32m72 184H56V48h26.75A47.93 47.93 0 0 0 80 64v8a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-8a47.93 47.93 0 0 0-2.75-16H200Z"},null,-1),i=[_];function l(t,s){return e(),o("svg",c,[...i])}const nn={name:"ph-clipboard",render:l},h={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M173.66 98.34a8 8 0 0 1 0 11.32l-56 56a8 8 0 0 1-11.32 0l-24-24a8 8 0 0 1 11.32-11.32L112 148.69l50.34-50.35a8 8 0 0 1 11.32 0M232 128A104 104 0 1 1 128 24a104.11 104.11 0 0 1 104 104m-16 0a88 88 0 1 0-88 88a88.1 88.1 0 0 0 88-88"},null,-1),a=[r];function d(t,s){return e(),o("svg",h,[...a])}const en={name:"ph-check-circle",render:d},u={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},m=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),v=[m];function $(t,s){return e(),o("svg",u,[...v])}const on={name:"carbon-list-boxes",render:$},p={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),L=[g];function f(t,s){return e(),o("svg",p,[...L])}const tn={name:"carbon-close",render:f},w={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},x=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),M=[x];function z(t,s){return e(),o("svg",w,[...M])}const sn={name:"carbon-settings-adjust",render:z},H={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),b=n("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),B=[C,b];function V(t,s){return e(),o("svg",H,[...B])}const cn={name:"carbon-information",render:V},Z={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),k=[A];function j(t,s){return e(),o("svg",Z,[...k])}const _n={name:"carbon-download",render:j},y={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),E=[q];function S(t,s){return e(),o("svg",y,[...E])}const ln={name:"carbon-template",render:S},D={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},F=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),G=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),I=[F,G];function J(t,s){return e(),o("svg",D,[...I])}const hn={name:"carbon-user-speaker",render:J},N={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),O=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),P=[K,O];function Q(t,s){return e(),o("svg",N,[...P])}const rn={name:"carbon-presentation-file",render:Q},R={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},T=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),U=[T];function W(t,s){return e(),o("svg",R,[...U])}const an={name:"carbon-pen",render:W},X={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},Y=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0L140 164a8 8 0 0 0-13 2.46l-19.46 44.77a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85L166.45 127a8 8 0 0 0-2.45 13l49.67 49.67a8 8 0 0 1-.01 11.33",opacity:".2"}),n("path",{d:"m169.64 134.33l44.77-19.46a16 16 0 0 0-1.41-29.8L52.92 32.8A16 16 0 0 0 32.8 52.92L85.07 213a15.83 15.83 0 0 0 14.41 11h.78a15.83 15.83 0 0 0 14.61-9.59l19.46-44.77L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63Zm-69.48 73.76l.06-.05Zm95.15-.09l-49.67-49.67a16 16 0 0 0-26 4.94l-19.42 44.65L48 48l159.87 52.21l-44.64 19.41a16 16 0 0 0-4.94 26L208 195.31Z"})],-1),n1=[Y];function e1(t,s){return e(),o("svg",X,[...n1])}const dn={name:"ph-cursor-duotone",render:e1},o1={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},t1=n("path",{fill:"currentColor",d:"M219.31 192a16 16 0 0 1 0 22.63l-4.68 4.68a16 16 0 0 1-22.63 0l-55.25-55.24l-21.88 50.34a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-50.34 21.88Z"},null,-1),s1=[t1];function c1(t,s){return e(),o("svg",o1,[...s1])}const un={name:"ph-cursor-fill",render:c1},_1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},i1=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),l1=[i1];function h1(t,s){return e(),o("svg",_1,[...l1])}const mn={name:"carbon-sun",render:h1},r1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},a1=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),d1=[a1];function u1(t,s){return e(),o("svg",r1,[...d1])}const vn={name:"carbon-moon",render:u1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),$1=[v1];function p1(t,s){return e(),o("svg",m1,[...$1])}const $n={name:"carbon-apps",render:p1},g1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},L1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),f1=[L1];function w1(t,s){return e(),o("svg",g1,[...f1])}const pn={name:"carbon-arrow-right",render:w1},x1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),z1=[M1];function H1(t,s){return e(),o("svg",x1,[...z1])}const gn={name:"carbon-arrow-left",render:H1},C1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),B1=[b1];function V1(t,s){return e(),o("svg",C1,[...B1])}const Ln={name:"carbon-maximize",render:V1},Z1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),k1=[A1];function j1(t,s){return e(),o("svg",Z1,[...k1])}const fn={name:"carbon-minimize",render:j1},y1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q1=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),E1=[q1];function S1(t,s){return e(),o("svg",y1,[...E1])}const wn={name:"carbon-checkmark",render:S1},D1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},F1=n("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),G1=[F1];function I1(t,s){return e(),o("svg",D1,[...G1])}const xn={name:"carbon-renew",render:I1},J1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},N1=n("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),K1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),O1=[N1,K1];function P1(t,s){return e(),o("svg",J1,[...O1])}const Mn={name:"carbon-time",render:P1},Q1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},R1=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),T1=n("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),U1=[R1,T1];function W1(t,s){return e(),o("svg",Q1,[...U1])}const zn={name:"carbon-zoom-out",render:W1},X1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Y1=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),n2=n("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),e2=[Y1,n2];function o2(t,s){return e(),o("svg",X1,[...e2])}const Hn={name:"carbon-zoom-in",render:o2},t2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},s2=n("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),c2=n("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),_2=[s2,c2];function i2(t,s){return e(),o("svg",t2,[..._2])}const Cn={name:"carbon-close-outline",render:i2},l2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},h2=n("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),r2=[h2];function a2(t,s){return e(),o("svg",l2,[...r2])}const bn={name:"carbon-error",render:a2},d2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},u2=n("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),m2=[u2];function v2(t,s){return e(),o("svg",d2,[...m2])}const Bn={name:"carbon-pin",render:v2},$2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},p2=n("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),g2=[p2];function L2(t,s){return e(),o("svg",$2,[...g2])}const Vn={name:"carbon-pin-filled",render:L2},f2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},w2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),x2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),M2=[w2,x2];function z2(t,s){return e(),o("svg",f2,[...M2])}const Zn={name:"carbon-trash-can",render:z2},H2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C2=n("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),b2=[C2];function B2(t,s){return e(),o("svg",H2,[...b2])}const An={name:"carbon-redo",render:B2},V2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Z2=n("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),A2=[Z2];function k2(t,s){return e(),o("svg",V2,[...A2])}const kn={name:"carbon-undo",render:k2},j2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y2=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),q2=[y2];function E2(t,s){return e(),o("svg",j2,[...q2])}const jn={name:"carbon-erase",render:E2},S2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},D2=n("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),F2=[D2];function G2(t,s){return e(),o("svg",S2,[...F2])}const yn={name:"carbon-checkbox",render:G2},I2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},J2=n("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),N2=[J2];function K2(t,s){return e(),o("svg",I2,[...N2])}const qn={name:"carbon-radio-button",render:K2},O2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},P2=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),Q2=[P2];function R2(t,s){return e(),o("svg",O2,[...Q2])}const En={name:"carbon-arrow-up-right",render:R2},T2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},U2=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),W2=[U2];function X2(t,s){return e(),o("svg",T2,[...W2])}const Sn={name:"carbon-cursor1",render:X2};export{qn as A,yn as B,jn as C,kn as D,An as E,Zn as F,Vn as G,Bn as H,bn as I,Cn as J,en as _,nn as a,Sn as b,Hn as c,zn as d,Mn as e,xn as f,tn as g,on as h,wn as i,fn as j,Ln as k,gn as l,pn as m,vn as n,mn as o,un as p,dn as q,an as r,sn as s,$n as t,rn as u,hn as v,ln as w,_n as x,cn as y,En as z}; diff --git a/06-scalable/assets/modules/vue-CoY6Ph6S.js b/06-scalable/assets/modules/vue-CoY6Ph6S.js deleted file mode 100644 index b3b3c07..0000000 --- a/06-scalable/assets/modules/vue-CoY6Ph6S.js +++ /dev/null @@ -1,62 +0,0 @@ -/** -* vue v3.4.21 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/function We(e,t){const n=new Set(e.split(","));return t?s=>n.has(s.toLowerCase()):s=>n.has(s)}const ge=Object.freeze({}),ms=Object.freeze([]),Ve=()=>{},li=()=>!1,In=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),yi=e=>e.startsWith("onUpdate:"),ue=Object.assign,jl=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},im=Object.prototype.hasOwnProperty,pe=(e,t)=>im.call(e,t),K=Array.isArray,Jn=e=>Ls(e)==="[object Map]",Fs=e=>Ls(e)==="[object Set]",oc=e=>Ls(e)==="[object Date]",om=e=>Ls(e)==="[object RegExp]",Q=e=>typeof e=="function",ne=e=>typeof e=="string",$t=e=>typeof e=="symbol",me=e=>e!==null&&typeof e=="object",Ki=e=>(me(e)||Q(e))&&Q(e.then)&&Q(e.catch),nf=Object.prototype.toString,Ls=e=>nf.call(e),Bl=e=>Ls(e).slice(8,-1),sf=e=>Ls(e)==="[object Object]",Hl=e=>ne(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Sn=We(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),rf=We("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),qi=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},lm=/-(\w)/g,Pe=qi(e=>e.replace(lm,(t,n)=>n?n.toUpperCase():"")),am=/\B([A-Z])/g,et=qi(e=>e.replace(am,"-$1").toLowerCase()),Wt=qi(e=>e.charAt(0).toUpperCase()+e.slice(1)),Bt=qi(e=>e?`on${Wt(e)}`:""),Ft=(e,t)=>!Object.is(e,t),bn=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},dr=e=>{const t=parseFloat(e);return isNaN(t)?e:t},bi=e=>{const t=ne(e)?Number(e):NaN;return isNaN(t)?e:t};let lc;const of=()=>lc||(lc=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}),Ut={1:"TEXT",2:"CLASS",4:"STYLE",8:"PROPS",16:"FULL_PROPS",32:"NEED_HYDRATION",64:"STABLE_FRAGMENT",128:"KEYED_FRAGMENT",256:"UNKEYED_FRAGMENT",512:"NEED_PATCH",1024:"DYNAMIC_SLOTS",2048:"DEV_ROOT_FRAGMENT",[-1]:"HOISTED",[-2]:"BAIL"},cm={1:"STABLE",2:"DYNAMIC",3:"FORWARDED"},um="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error",fm=We(um),ac=2;function dm(e,t=0,n=e.length){let s=e.split(/(\r?\n)/);const r=s.filter((l,a)=>a%2===1);s=s.filter((l,a)=>a%2===0);let i=0;const o=[];for(let l=0;l=t){for(let a=l-ac;a<=l+ac||n>i;a++){if(a<0||a>=s.length)continue;const u=a+1;o.push(`${u}${" ".repeat(Math.max(3-String(u).length,0))}| ${s[a]}`);const f=s[a].length,c=r[a]&&r[a].length||0;if(a===l){const d=t-(i-(f+c)),p=Math.max(1,n>i?f-d:n-t);o.push(" | "+" ".repeat(d)+"^".repeat(p))}else if(a>l){if(n>i){const d=Math.max(Math.min(n-i,f),1);o.push(" | "+"^".repeat(d))}i+=f+c}}break}return o.join(` -`)}function Ds(e){if(K(e)){const t={};for(let n=0;n{if(n){const s=n.split(hm);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function gm(e){let t="";if(!e||ne(e))return t;for(const n in e){const s=e[n],r=n.startsWith("--")?n:et(n);(ne(s)||typeof s=="number")&&(t+=`${r}:${s};`)}return t}function Vs(e){let t="";if(ne(e))t=e;else if(K(e))for(let n=0;nss(n,t))}const Om=e=>ne(e)?e:e==null?"":K(e)||me(e)&&(e.toString===nf||!Q(e.toString))?JSON.stringify(e,df,2):String(e),df=(e,t)=>t&&t.__v_isRef?df(e,t.value):Jn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[go(s,i)+" =>"]=r,n),{})}:Fs(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>go(n))}:$t(t)?go(t):me(t)&&!K(t)&&!sf(t)?String(t):t,go=(e,t="")=>{var n;return $t(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};function zt(e,...t){console.warn(`[Vue warn] ${e}`,...t)}let gt;class ql{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=gt,!t&>&&(this.index=(gt.scopes||(gt.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=gt;try{return gt=this,t()}finally{gt=n}}else zt("cannot run an inactive effect scope.")}on(){gt=this}off(){gt=this.parent}stop(t){if(this._active){let n,s;for(n=0,s=this.effects.length;n=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),$n()}return this._dirtyLevel>=4}set dirty(t){this._dirtyLevel=t?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=En,n=Xn;try{return En=!0,Xn=this,this._runnings++,uc(this),this.fn()}finally{fc(this),this._runnings--,Xn=n,En=t}}stop(){var t;this.active&&(uc(this),fc(this),(t=this.onStop)==null||t.call(this),this.active=!1)}}function Nm(e){return e.value}function uc(e){e._trackId++,e._depsLength=0}function fc(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{n.dirty&&n.run()});t&&(ue(n,t),t.scope&&pf(n,t.scope)),(!t||!t.lazy)&&n.run();const s=n.run.bind(n);return s.effect=n,s}function Pm(e){e.effect.stop()}let En=!0,Uo=0;const gf=[];function Mn(){gf.push(En),En=!1}function $n(){const e=gf.pop();En=e===void 0?!0:e}function zl(){Uo++}function Gl(){for(Uo--;!Uo&&Ko.length;)Ko.shift()()}function yf(e,t,n){var s;if(t.get(e)!==e._trackId){t.set(e,e._trackId);const r=e.deps[e._depsLength];r!==t?(r&&mf(r,e),e.deps[e._depsLength++]=t):e._depsLength++,(s=e.onTrack)==null||s.call(e,ue({effect:e},n))}}const Ko=[];function vf(e,t,n){var s;zl();for(const r of e.keys()){let i;r._dirtyLevel{const n=new Map;return n.cleanup=e,n.computed=t,n},_i=new WeakMap,Qn=Symbol("iterate"),qo=Symbol("Map key iterate");function rt(e,t,n){if(En&&Xn){let s=_i.get(e);s||_i.set(e,s=new Map);let r=s.get(n);r||s.set(n,r=bf(()=>s.delete(n))),yf(Xn,r,{target:e,type:t,key:n})}}function Kt(e,t,n,s,r,i){const o=_i.get(e);if(!o)return;let l=[];if(t==="clear")l=[...o.values()];else if(n==="length"&&K(e)){const a=Number(s);o.forEach((u,f)=>{(f==="length"||!$t(f)&&f>=a)&&l.push(u)})}else switch(n!==void 0&&l.push(o.get(n)),t){case"add":K(e)?Hl(n)&&l.push(o.get("length")):(l.push(o.get(Qn)),Jn(e)&&l.push(o.get(qo)));break;case"delete":K(e)||(l.push(o.get(Qn)),Jn(e)&&l.push(o.get(qo)));break;case"set":Jn(e)&&l.push(o.get(Qn));break}zl();for(const a of l)a&&vf(a,4,{target:e,type:t,key:n,newValue:s,oldValue:r,oldTarget:i});Gl()}function Im(e,t){var n;return(n=_i.get(e))==null?void 0:n.get(t)}const Mm=We("__proto__,__v_isRef,__isVue"),_f=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter($t)),dc=$m();function $m(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const s=se(this);for(let i=0,o=this.length;i{e[t]=function(...n){Mn(),zl();const s=se(this)[t].apply(this,n);return Gl(),$n(),s}}),e}function Fm(e){const t=se(this);return rt(t,"has",e),t.hasOwnProperty(e)}class wf{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?Of:Af:i?xf:Cf).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=K(t);if(!r){if(o&&pe(dc,n))return Reflect.get(dc,n,s);if(n==="hasOwnProperty")return Fm}const l=Reflect.get(t,n,s);return($t(n)?_f.has(n):Mm(n))||(r||rt(t,"get",n),i)?l:Ee(l)?o&&Hl(n)?l:l.value:me(l)?r?dt(l):lt(l):l}}class Sf extends wf{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];if(!this._isShallow){const a=rn(i);if(!Cn(s)&&!rn(s)&&(i=se(i),s=se(s)),!K(t)&&Ee(i)&&!Ee(s))return a?!1:(i.value=s,!0)}const o=K(t)&&Hl(n)?Number(n)e,Wi=e=>Reflect.getPrototypeOf(e);function Ur(e,t,n=!1,s=!1){e=e.__v_raw;const r=se(e),i=se(t);n||(Ft(t,i)&&rt(r,"get",t),rt(r,"get",i));const{has:o}=Wi(r),l=s?Yl:n?Ql:hr;if(o.call(r,t))return l(e.get(t));if(o.call(r,i))return l(e.get(i));e!==r&&e.get(t)}function Kr(e,t=!1){const n=this.__v_raw,s=se(n),r=se(e);return t||(Ft(e,r)&&rt(s,"has",e),rt(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function qr(e,t=!1){return e=e.__v_raw,!t&&rt(se(e),"iterate",Qn),Reflect.get(e,"size",e)}function pc(e){e=se(e);const t=se(this);return Wi(t).has.call(t,e)||(t.add(e),Kt(t,"add",e,e)),this}function hc(e,t){t=se(t);const n=se(this),{has:s,get:r}=Wi(n);let i=s.call(n,e);i?Tf(n,s,e):(e=se(e),i=s.call(n,e));const o=r.call(n,e);return n.set(e,t),i?Ft(t,o)&&Kt(n,"set",e,t,o):Kt(n,"add",e,t),this}function mc(e){const t=se(this),{has:n,get:s}=Wi(t);let r=n.call(t,e);r?Tf(t,n,e):(e=se(e),r=n.call(t,e));const i=s?s.call(t,e):void 0,o=t.delete(e);return r&&Kt(t,"delete",e,void 0,i),o}function gc(){const e=se(this),t=e.size!==0,n=Jn(e)?new Map(e):new Set(e),s=e.clear();return t&&Kt(e,"clear",void 0,void 0,n),s}function Wr(e,t){return function(s,r){const i=this,o=i.__v_raw,l=se(o),a=t?Yl:e?Ql:hr;return!e&&rt(l,"iterate",Qn),o.forEach((u,f)=>s.call(r,a(u),a(f),i))}}function zr(e,t,n){return function(...s){const r=this.__v_raw,i=se(r),o=Jn(i),l=e==="entries"||e===Symbol.iterator&&o,a=e==="keys"&&o,u=r[e](...s),f=n?Yl:t?Ql:hr;return!t&&rt(i,"iterate",a?qo:Qn),{next(){const{value:c,done:d}=u.next();return d?{value:c,done:d}:{value:l?[f(c[0]),f(c[1])]:f(c),done:d}},[Symbol.iterator](){return this}}}}function an(e){return function(...t){{const n=t[0]?`on key "${t[0]}" `:"";zt(`${Wt(e)} operation ${n}failed: target is readonly.`,se(this))}return e==="delete"?!1:e==="clear"?void 0:this}}function Bm(){const e={get(i){return Ur(this,i)},get size(){return qr(this)},has:Kr,add:pc,set:hc,delete:mc,clear:gc,forEach:Wr(!1,!1)},t={get(i){return Ur(this,i,!1,!0)},get size(){return qr(this)},has:Kr,add:pc,set:hc,delete:mc,clear:gc,forEach:Wr(!1,!0)},n={get(i){return Ur(this,i,!0)},get size(){return qr(this,!0)},has(i){return Kr.call(this,i,!0)},add:an("add"),set:an("set"),delete:an("delete"),clear:an("clear"),forEach:Wr(!0,!1)},s={get(i){return Ur(this,i,!0,!0)},get size(){return qr(this,!0)},has(i){return Kr.call(this,i,!0)},add:an("add"),set:an("set"),delete:an("delete"),clear:an("clear"),forEach:Wr(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=zr(i,!1,!1),n[i]=zr(i,!0,!1),t[i]=zr(i,!1,!0),s[i]=zr(i,!0,!0)}),[e,n,t,s]}const[Hm,Um,Km,qm]=Bm();function zi(e,t){const n=t?e?qm:Km:e?Um:Hm;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(pe(n,r)&&r in s?n:s,r,i)}const Wm={get:zi(!1,!1)},zm={get:zi(!1,!0)},Gm={get:zi(!0,!1)},Ym={get:zi(!0,!0)};function Tf(e,t,n){const s=se(n);if(s!==n&&t.call(e,s)){const r=Bl(e);zt(`Reactive ${r} contains both the raw and reactive versions of the same object${r==="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 Cf=new WeakMap,xf=new WeakMap,Af=new WeakMap,Of=new WeakMap;function Jm(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Xm(e){return e.__v_skip||!Object.isExtensible(e)?0:Jm(Bl(e))}function lt(e){return rn(e)?e:Gi(e,!1,Lm,Wm,Cf)}function Jl(e){return Gi(e,!1,Vm,zm,xf)}function dt(e){return Gi(e,!0,Dm,Gm,Af)}function Kn(e){return Gi(e,!0,jm,Ym,Of)}function Gi(e,t,n,s,r){if(!me(e))return zt(`value cannot be made reactive: ${String(e)}`),e;if(e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=Xm(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function Tn(e){return rn(e)?Tn(e.__v_raw):!!(e&&e.__v_isReactive)}function rn(e){return!!(e&&e.__v_isReadonly)}function Cn(e){return!!(e&&e.__v_isShallow)}function pr(e){return Tn(e)||rn(e)}function se(e){const t=e&&e.__v_raw;return t?se(t):e}function Xl(e){return Object.isExtensible(e)&&vi(e,"__v_skip",!0),e}const hr=e=>me(e)?lt(e):e,Ql=e=>me(e)?dt(e):e,Qm="Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free";class Rf{constructor(t,n,s,r){this.getter=t,this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Cs(()=>t(this._value),()=>gs(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=s}get value(){const t=se(this);return(!t._cacheable||t.effect.dirty)&&Ft(t._value,t._value=t.effect.run())&&gs(t,4),Zl(t),t.effect._dirtyLevel>=2&&(this._warnRecursive&&zt(Qm,` - -getter: `,this.getter),gs(t,2)),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function Zm(e,t,n=!1){let s,r;const i=Q(e);i?(s=e,r=()=>{zt("Write operation failed: computed value is readonly")}):(s=e.get,r=e.set);const o=new Rf(s,r,i||!r,n);return t&&!n&&(o.effect.onTrack=t.onTrack,o.effect.onTrigger=t.onTrigger),o}function Zl(e){var t;En&&Xn&&(e=se(e),yf(Xn,(t=e.dep)!=null?t:e.dep=bf(()=>e.dep=void 0,e instanceof Rf?e:void 0),{target:e,type:"get",key:"value"}))}function gs(e,t=4,n){e=se(e);const s=e.dep;s&&vf(s,t,{target:e,type:"set",key:"value",newValue:n})}function Ee(e){return!!(e&&e.__v_isRef===!0)}function Z(e){return Nf(e,!1)}function ys(e){return Nf(e,!0)}function Nf(e,t){return Ee(e)?e:new eg(e,t)}class eg{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:se(t),this._value=n?t:hr(t)}get value(){return Zl(this),this._value}set value(t){const n=this.__v_isShallow||Cn(t)||rn(t);t=n?t:se(t),Ft(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:hr(t),gs(this,4,t))}}function tg(e){gs(e,4,e.value)}function nt(e){return Ee(e)?e.value:e}function ng(e){return Q(e)?e():nt(e)}const sg={get:(e,t,n)=>nt(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return Ee(r)&&!Ee(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function ea(e){return Tn(e)?e:new Proxy(e,sg)}class rg{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:s}=t(()=>Zl(this),()=>gs(this));this._get=n,this._set=s}get value(){return this._get()}set value(t){this._set(t)}}function Yi(e){return new rg(e)}function kf(e){pr(e)||zt("toRefs() expects a reactive object but received a plain one.");const t=K(e)?new Array(e.length):{};for(const n in e)t[n]=If(e,n);return t}class ig{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,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 Im(se(this._object),this._key)}}class og{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Pf(e,t,n){return Ee(e)?e:Q(e)?new og(e):me(e)&&arguments.length>1?If(e,t,n):Z(e)}function If(e,t,n){const s=e[t];return Ee(s)?s:new ig(e,t,n)}const lg={GET:"get",HAS:"has",ITERATE:"iterate"},ag={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},Zn=[];function Zs(e){Zn.push(e)}function er(){Zn.pop()}function M(e,...t){Mn();const n=Zn.length?Zn[Zn.length-1].component:null,s=n&&n.appContext.config.warnHandler,r=cg();if(s)qt(s,n,11,[e+t.map(i=>{var o,l;return(l=(o=i.toString)==null?void 0:o.call(i))!=null?l:JSON.stringify(i)}).join(""),n&&n.proxy,r.map(({vnode:i})=>`at <${oo(n,i.type)}>`).join(` -`),r]);else{const i=[`[Vue warn]: ${e}`,...t];r.length&&i.push(` -`,...ug(r)),console.warn(...i)}$n()}function cg(){let e=Zn[Zn.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 s=e.component&&e.component.parent;e=s&&s.vnode}return t}function ug(e){const t=[];return e.forEach((n,s)=>{t.push(...s===0?[]:[` -`],...fg(n))}),t}function fg({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",s=e.component?e.component.parent==null:!1,r=` at <${oo(e.component,e.type,s)}`,i=">"+n;return e.props?[r,...dg(e.props),i]:[r+i]}function dg(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(s=>{t.push(...Mf(s,e[s]))}),n.length>3&&t.push(" ..."),t}function Mf(e,t,n){return ne(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:Ee(t)?(t=Mf(e,se(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):Q(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=se(t),n?t:[`${e}=`,t])}function ta(e,t){e!==void 0&&(typeof e!="number"?M(`${t} is not a valid number - got ${JSON.stringify(e)}.`):isNaN(e)&&M(`${t} is NaN - the duration expression might be incorrect.`))}const pg={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",WATCH_GETTER:2,2:"WATCH_GETTER",WATCH_CALLBACK:3,3:"WATCH_CALLBACK",WATCH_CLEANUP:4,4:"WATCH_CLEANUP",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER"},Ji={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 qt(e,t,n,s){try{return s?e(...s):e()}catch(r){Fn(r,t,n)}}function At(e,t,n,s){if(Q(e)){const i=qt(e,t,n,s);return i&&Ki(i)&&i.catch(o=>{Fn(o,t,n)}),i}const r=[];for(let i=0;i>>1,r=tt[s],i=yr(r);iHt&&tt.splice(t,1)}function gr(e){K(e)?vs.push(...e):(!en||!en.includes(e,e.allowRecurse?pn+1:pn))&&vs.push(e),Ff()}function yc(e,t,n=mr?Ht+1:0){for(t=t||new Map;nyr(n)-yr(s));if(vs.length=0,en){en.push(...t);return}for(en=t,e=e||new Map,pn=0;pne.id==null?1/0:e.id,vg=(e,t)=>{const n=yr(e)-yr(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Lf(e){Wo=!1,mr=!0,e=e||new Map,tt.sort(vg);const t=n=>sa(e,n);try{for(Ht=0;Htmg){const s=t.ownerInstance,r=s&&_r(s.type);return Fn(`Maximum recursive updates exceeded${r?` in component <${r}>`:""}. 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 xn=!1;const hs=new Set;of().__VUE_HMR_RUNTIME__={createRecord:yo(Df),rerender:yo(wg),reload:yo(Sg)};const rs=new Map;function bg(e){const t=e.type.__hmrId;let n=rs.get(t);n||(Df(t,e.type),n=rs.get(t)),n.instances.add(e)}function _g(e){rs.get(e.type.__hmrId).instances.delete(e)}function Df(e,t){return rs.has(e)?!1:(rs.set(e,{initialDef:tr(t),instances:new Set}),!0)}function tr(e){return $d(e)?e.__vccOpts:e}function wg(e,t){const n=rs.get(e);n&&(n.initialDef.render=t,[...n.instances].forEach(s=>{t&&(s.render=t,tr(s.type).render=t),s.renderCache=[],xn=!0,s.effect.dirty=!0,s.update(),xn=!1}))}function Sg(e,t){const n=rs.get(e);if(!n)return;t=tr(t),vc(n.initialDef,t);const s=[...n.instances];for(const r of s){const i=tr(r.type);hs.has(i)||(i!==n.initialDef&&vc(i,t),hs.add(i)),r.appContext.propsCache.delete(r.type),r.appContext.emitsCache.delete(r.type),r.appContext.optionsCache.delete(r.type),r.ceReload?(hs.add(i),r.ceReload(t.styles),hs.delete(i)):r.parent?(r.parent.effect.dirty=!0,Rr(r.parent.update)):r.appContext.reload?r.appContext.reload():typeof window<"u"?window.location.reload():console.warn("[HMR] Root or manually mounted instance modified. Full reload required.")}gr(()=>{for(const r of s)hs.delete(tr(r.type))})}function vc(e,t){ue(e,t);for(const n in e)n!=="__file"&&!(n in t)&&delete e[n]}function yo(e){return(t,n)=>{try{return e(t,n)}catch(s){console.error(s),console.warn("[HMR] Something went wrong during Vue component hot-reload. Full reload required.")}}}let kt,Js=[],zo=!1;function Nr(e,...t){kt?kt.emit(e,...t):zo||Js.push({event:e,args:t})}function ra(e,t){var n,s;kt=e,kt?(kt.enabled=!0,Js.forEach(({event:r,args:i})=>kt.emit(r,...i)),Js=[]):typeof window<"u"&&window.HTMLElement&&!((s=(n=window.navigator)==null?void 0:n.userAgent)!=null&&s.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(i=>{ra(i,t)}),setTimeout(()=>{kt||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,zo=!0,Js=[])},3e3)):(zo=!0,Js=[])}function Eg(e,t){Nr("app:init",e,t,{Fragment:Be,Text:On,Comment:Le,Static:An})}function Tg(e){Nr("app:unmount",e)}const Go=ia("component:added"),Vf=ia("component:updated"),Cg=ia("component:removed"),xg=e=>{kt&&typeof kt.cleanupBuffer=="function"&&!kt.cleanupBuffer(e)&&Cg(e)};function ia(e){return t=>{Nr(e,t.appContext.app,t.uid,t.parent?t.parent.uid:void 0,t)}}const Ag=jf("perf:start"),Og=jf("perf:end");function jf(e){return(t,n,s)=>{Nr(e,t.appContext.app,t.uid,t,n,s)}}function Rg(e,t,n){Nr("component:emit",e.appContext.app,e,t,n)}function Ng(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||ge;{const{emitsOptions:f,propsOptions:[c]}=e;if(f)if(!(t in f))(!c||!(Bt(t)in c))&&M(`Component emitted event "${t}" but it is neither declared in the emits option nor as an "${Bt(t)}" prop.`);else{const d=f[t];Q(d)&&(d(...n)||M(`Invalid event arguments: event validation failed for event "${t}".`))}}let r=n;const i=t.startsWith("update:"),o=i&&t.slice(7);if(o&&o in s){const f=`${o==="modelValue"?"model":o}Modifiers`,{number:c,trim:d}=s[f]||ge;d&&(r=n.map(p=>ne(p)?p.trim():p)),c&&(r=n.map(dr))}Rg(e,t,r);{const f=t.toLowerCase();f!==t&&s[Bt(f)]&&M(`Event "${f}" is emitted in component ${oo(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 "${et(t)}" instead of "${t}".`)}let l,a=s[l=Bt(t)]||s[l=Bt(Pe(t))];!a&&i&&(a=s[l=Bt(et(t))]),a&&At(a,e,6,r);const u=s[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,At(u,e,6,r)}}function Bf(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!Q(e)){const a=u=>{const f=Bf(u,t,!0);f&&(l=!0,ue(o,f))};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!i&&!l?(me(e)&&s.set(e,null),null):(K(i)?i.forEach(a=>o[a]=null):ue(o,i),me(e)&&s.set(e,o),o)}function Xi(e,t){return!e||!In(t)?!1:(t=t.slice(2).replace(/Once$/,""),pe(e,t[0].toLowerCase()+t.slice(1))||pe(e,et(t))||pe(e,t))}let ke=null,Qi=null;function Si(e){const t=ke;return ke=e,Qi=e&&e.type.__scopeId||null,t}function kg(e){Qi=e}function Pg(){Qi=null}const Ig=e=>oa;function oa(e,t=ke,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&sl(-1);const i=Si(t);let o;try{o=e(...r)}finally{Si(i),s._d&&sl(1)}return Vf(t),o};return s._n=!0,s._c=!0,s._d=!0,s}let Yo=!1;function Ei(){Yo=!0}function vo(e){const{type:t,vnode:n,proxy:s,withProxy:r,props:i,propsOptions:[o],slots:l,attrs:a,emit:u,render:f,renderCache:c,data:d,setupState:p,ctx:g,inheritAttrs:E}=e;let S,y;const v=Si(e);Yo=!1;try{if(n.shapeFlag&4){const b=r||s,T=p.__isScriptSetup?new Proxy(b,{get(O,C,A){return M(`Property '${String(C)}' was accessed via 'this'. Avoid using 'this' in templates.`),Reflect.get(O,C,A)}}):b;S=vt(f.call(T,b,c,i,p,d,g)),y=a}else{const b=t;a===i&&Ei(),S=vt(b.length>1?b(i,{get attrs(){return Ei(),a},slots:l,emit:u}):b(i,null)),y=t.props?a:Mg(a)}}catch(b){sr.length=0,Fn(b,e,1),S=Oe(Le)}let h=S,w;if(S.patchFlag>0&&S.patchFlag&2048&&([h,w]=Hf(S)),y&&E!==!1){const b=Object.keys(y),{shapeFlag:T}=h;if(b.length){if(T&7)o&&b.some(yi)&&(y=$g(y,o)),h=Ot(h,y);else if(!Yo&&h.type!==Le){const O=Object.keys(a),C=[],A=[];for(let x=0,k=O.length;x renders non-element root node that cannot be animated."),h.transition=n.transition),w?w(h):S=h,Si(v),S}const Hf=e=>{const t=e.children,n=e.dynamicChildren,s=Zi(t,!1);if(s){if(s.patchFlag>0&&s.patchFlag&2048)return Hf(s)}else return[e,void 0];const r=t.indexOf(s),i=n?n.indexOf(s):-1,o=l=>{t[r]=l,n&&(i>-1?n[i]=l:l.patchFlag>0&&(e.dynamicChildren=[...n,l]))};return[vt(s),o]};function Zi(e,t=!0){let n;for(let s=0;s0&&n.patchFlag&2048)return Zi(n.children)}}else return}return n}const Mg=e=>{let t;for(const n in e)(n==="class"||n==="style"||In(n))&&((t||(t={}))[n]=e[n]);return t},$g=(e,t)=>{const n={};for(const s in e)(!yi(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n},bc=e=>e.shapeFlag&7||e.type===Le;function Fg(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:a}=t,u=i.emitsOptions;if((r||l)&&xn||t.dirs||t.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return s?_c(s,o,u):!!o;if(a&8){const f=t.dynamicProps;for(let c=0;ce.__isSuspense;let Jo=0;const jg={name:"Suspense",__isSuspense:!0,process(e,t,n,s,r,i,o,l,a,u){if(e==null)Hg(t,n,s,r,i,o,l,a,u);else{if(i&&i.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}Ug(e,t,n,s,r,o,l,a,u)}},hydrate:Kg,create:ua,normalize:qg},Bg=jg;function vr(e,t){const n=e.props&&e.props[t];Q(n)&&n()}function Hg(e,t,n,s,r,i,o,l,a){const{p:u,o:{createElement:f}}=a,c=f("div"),d=e.suspense=ua(e,r,s,t,c,n,i,o,l,a);u(null,d.pendingBranch=e.ssContent,c,null,s,d,i,o),d.deps>0?(vr(e,"onPending"),vr(e,"onFallback"),u(null,e.ssFallback,t,n,s,null,i,o),bs(d,e.ssFallback)):d.resolve(!1,!0)}function Ug(e,t,n,s,r,i,o,l,{p:a,um:u,o:{createElement:f}}){const c=t.suspense=e.suspense;c.vnode=t,t.el=e.el;const d=t.ssContent,p=t.ssFallback,{activeBranch:g,pendingBranch:E,isInFallback:S,isHydrating:y}=c;if(E)c.pendingBranch=d,Pt(d,E)?(a(E,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():S&&(y||(a(g,p,n,s,r,null,i,o,l),bs(c,p)))):(c.pendingId=Jo++,y?(c.isHydrating=!1,c.activeBranch=E):u(E,r,c),c.deps=0,c.effects.length=0,c.hiddenContainer=f("div"),S?(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():(a(g,p,n,s,r,null,i,o,l),bs(c,p))):g&&Pt(d,g)?(a(g,d,n,s,r,c,i,o,l),c.resolve(!0)):(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0&&c.resolve()));else if(g&&Pt(d,g))a(g,d,n,s,r,c,i,o,l),bs(c,d);else if(vr(t,"onPending"),c.pendingBranch=d,d.shapeFlag&512?c.pendingId=d.component.suspenseId:c.pendingId=Jo++,a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0)c.resolve();else{const{timeout:v,pendingId:h}=c;v>0?setTimeout(()=>{c.pendingId===h&&c.fallback(p)},v):v===0&&c.fallback(p)}}let Sc=!1;function ua(e,t,n,s,r,i,o,l,a,u,f=!1){Sc||(Sc=!0,console[console.info?"info":"log"](" is an experimental feature and its API will likely change."));const{p:c,m:d,um:p,n:g,o:{parentNode:E,remove:S}}=u;let y;const v=Wg(e);v&&t!=null&&t.pendingBranch&&(y=t.pendingId,t.deps++);const h=e.props?bi(e.props.timeout):void 0;ta(h,"Suspense timeout");const w=i,b={vnode:e,parent:t,parentComponent:n,namespace:o,container:s,hiddenContainer:r,deps:0,pendingId:Jo++,timeout:typeof h=="number"?h:-1,activeBranch:null,pendingBranch:null,isInFallback:!f,isHydrating:f,isUnmounted:!1,effects:[],resolve(T=!1,O=!1){{if(!T&&!b.pendingBranch)throw new Error("suspense.resolve() is called without a pending branch.");if(b.isUnmounted)throw new Error("suspense.resolve() is called on an already unmounted suspense boundary.")}const{vnode:C,activeBranch:A,pendingBranch:x,pendingId:k,effects:R,parentComponent:V,container:Y}=b;let ee=!1;b.isHydrating?b.isHydrating=!1:T||(ee=A&&x.transition&&x.transition.mode==="out-in",ee&&(A.transition.afterLeave=()=>{k===b.pendingId&&(d(x,Y,i===w?g(A):i,0),gr(R))}),A&&(E(A.el)!==b.hiddenContainer&&(i=g(A)),p(A,V,b,!0)),ee||d(x,Y,i,0)),bs(b,x),b.pendingBranch=null,b.isInFallback=!1;let B=b.parent,G=!1;for(;B;){if(B.pendingBranch){B.effects.push(...R),G=!0;break}B=B.parent}!G&&!ee&&gr(R),b.effects=[],v&&t&&t.pendingBranch&&y===t.pendingId&&(t.deps--,t.deps===0&&!O&&t.resolve()),vr(C,"onResolve")},fallback(T){if(!b.pendingBranch)return;const{vnode:O,activeBranch:C,parentComponent:A,container:x,namespace:k}=b;vr(O,"onFallback");const R=g(C),V=()=>{b.isInFallback&&(c(null,T,x,R,A,null,k,l,a),bs(b,T))},Y=T.transition&&T.transition.mode==="out-in";Y&&(C.transition.afterLeave=V),b.isInFallback=!0,p(C,A,null,!0),Y||V()},move(T,O,C){b.activeBranch&&d(b.activeBranch,T,O,C),b.container=T},next(){return b.activeBranch&&g(b.activeBranch)},registerDep(T,O){const C=!!b.pendingBranch;C&&b.deps++;const A=T.vnode.el;T.asyncDep.catch(x=>{Fn(x,T,0)}).then(x=>{if(T.isUnmounted||b.isUnmounted||b.pendingId!==T.suspenseId)return;T.asyncResolved=!0;const{vnode:k}=T;Zs(k),al(T,x,!1),A&&(k.el=A);const R=!A&&T.subTree.el;O(T,k,E(A||T.subTree.el),A?null:g(T.subTree),b,o,a),R&&S(R),la(T,k.el),er(),C&&--b.deps===0&&b.resolve()})},unmount(T,O){b.isUnmounted=!0,b.activeBranch&&p(b.activeBranch,n,T,O),b.pendingBranch&&p(b.pendingBranch,n,T,O)}};return b}function Kg(e,t,n,s,r,i,o,l,a){const u=t.suspense=ua(t,s,n,e.parentNode,document.createElement("div"),null,r,i,o,l,!0),f=a(e,u.pendingBranch=t.ssContent,n,u,i,o);return u.deps===0&&u.resolve(!1,!0),f}function qg(e){const{shapeFlag:t,children:n}=e,s=t&32;e.ssContent=Ec(s?n.default:n),e.ssFallback=s?Ec(n.fallback):Oe(Le)}function Ec(e){let t;if(Q(e)){const n=os&&e._c;n&&(e._d=!1,so()),e=e(),n&&(e._d=!0,t=pt,Cd())}if(K(e)){const n=Zi(e);!n&&e.filter(s=>s!==aa).length>0&&M(" slots expect a single root node."),e=n}return e=vt(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function qf(e,t){t&&t.pendingBranch?K(e)?t.effects.push(...e):t.effects.push(e):gr(e)}function bs(e,t){e.activeBranch=t;const{vnode:n,parentComponent:s}=e;let r=t.el;for(;!r&&t.component;)t=t.component.subTree,r=t.el;n.el=r,s&&s.subTree===n&&(s.vnode.el=r,la(s,r))}function Wg(e){var t;return((t=e.props)==null?void 0:t.suspensible)!=null&&e.props.suspensible!==!1}const Wf=Symbol.for("v-scx"),zg=()=>{{const e=Ct(Wf);return e||M("Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build."),e}};function fa(e,t){return kr(e,null,t)}function zf(e,t){return kr(e,null,ue({},t,{flush:"post"}))}function Gf(e,t){return kr(e,null,ue({},t,{flush:"sync"}))}const Gr={};function ve(e,t,n){return Q(t)||M("`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."),kr(e,t,n)}function kr(e,t,{immediate:n,deep:s,flush:r,once:i,onTrack:o,onTrigger:l}=ge){if(t&&i){const T=t;t=(...O)=>{T(...O),b()}}s!==void 0&&typeof s=="number"&&M('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&&M('watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.'),s!==void 0&&M('watch() "deep" option is only respected when using the watch(source, callback, options?) signature.'),i!==void 0&&M('watch() "once" option is only respected when using the watch(source, callback, options?) signature.'));const a=T=>{M("Invalid watch source: ",T,"A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.")},u=Fe,f=T=>s===!0?T:qn(T,s===!1?1:void 0);let c,d=!1,p=!1;if(Ee(e)?(c=()=>e.value,d=Cn(e)):Tn(e)?(c=()=>f(e),d=!0):K(e)?(p=!0,d=e.some(T=>Tn(T)||Cn(T)),c=()=>e.map(T=>{if(Ee(T))return T.value;if(Tn(T))return f(T);if(Q(T))return qt(T,u,2);a(T)})):Q(e)?t?c=()=>qt(e,u,2):c=()=>(g&&g(),At(e,u,3,[E])):(c=Ve,a(e)),t&&s){const T=c;c=()=>qn(T())}let g,E=T=>{g=h.onStop=()=>{qt(T,u,4),g=h.onStop=void 0}},S=p?new Array(e.length).fill(Gr):Gr;const y=()=>{if(!(!h.active||!h.dirty))if(t){const T=h.run();(s||d||(p?T.some((O,C)=>Ft(O,S[C])):Ft(T,S)))&&(g&&g(),At(t,u,3,[T,S===Gr?void 0:p&&S[0]===Gr?[]:S,E]),S=T)}else h.run()};y.allowRecurse=!!t;let v;r==="sync"?v=y:r==="post"?v=()=>Ge(y,u&&u.suspense):(y.pre=!0,u&&(y.id=u.uid),v=()=>Rr(y));const h=new Cs(c,Ve,v),w=Wl(),b=()=>{h.stop(),w&&jl(w.effects,h)};return h.onTrack=o,h.onTrigger=l,t?n?y():S=h.run():r==="post"?Ge(h.run.bind(h),u&&u.suspense):h.run(),b}function Gg(e,t,n){const s=this.proxy,r=ne(e)?e.includes(".")?Yf(s,e):()=>s[e]:e.bind(s,s);let i;Q(t)?i=t:(i=t.handler,n=t);const o=ls(this),l=kr(r,i.bind(s),n);return o(),l}function Yf(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r0){if(n>=t)return e;n++}if(s=s||new Set,s.has(e))return e;if(s.add(e),Ee(e))qn(e.value,t,n,s);else if(K(e))for(let r=0;r{qn(r,t,n,s)});else if(sf(e))for(const r in e)qn(e[r],t,n,s);return e}function Jf(e){rf(e)&&M("Do not use built-in directive ids as custom directive id: "+e)}function Yg(e,t){if(ke===null)return M("withDirectives can only be used inside render functions."),e;const n=io(ke)||ke.proxy,s=e.dirs||(e.dirs=[]);for(let r=0;r{e.isMounted=!0}),no(()=>{e.isUnmounting=!0}),e}const wt=[Function,Array],pa={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:wt,onEnter:wt,onAfterEnter:wt,onEnterCancelled:wt,onBeforeLeave:wt,onLeave:wt,onAfterLeave:wt,onLeaveCancelled:wt,onBeforeAppear:wt,onAppear:wt,onAfterAppear:wt,onAppearCancelled:wt},Jg={name:"BaseTransition",props:pa,setup(e,{slots:t}){const n=Je(),s=da();return()=>{const r=t.default&&eo(t.default(),!0);if(!r||!r.length)return;let i=r[0];if(r.length>1){let d=!1;for(const p of r)if(p.type!==Le){if(d){M(" can only be used on a single element or component. Use for lists.");break}i=p,d=!0}}const o=se(e),{mode:l}=o;if(l&&l!=="in-out"&&l!=="out-in"&&l!=="default"&&M(`invalid mode: ${l}`),s.isLeaving)return bo(i);const a=Tc(i);if(!a)return bo(i);const u=xs(a,o,s,n);is(a,u);const f=n.subTree,c=f&&Tc(f);if(c&&c.type!==Le&&!Pt(a,c)){const d=xs(c,o,s,n);if(is(c,d),l==="out-in")return s.isLeaving=!0,d.afterLeave=()=>{s.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},bo(i);l==="in-out"&&a.type!==Le&&(d.delayLeave=(p,g,E)=>{const S=Qf(s,c);S[String(c.key)]=c,p[hn]=()=>{g(),p[hn]=void 0,delete u.delayedLeave},u.delayedLeave=E})}return i}}},Xf=Jg;function Qf(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function xs(e,t,n,s){const{appear:r,mode:i,persisted:o=!1,onBeforeEnter:l,onEnter:a,onAfterEnter:u,onEnterCancelled:f,onBeforeLeave:c,onLeave:d,onAfterLeave:p,onLeaveCancelled:g,onBeforeAppear:E,onAppear:S,onAfterAppear:y,onAppearCancelled:v}=t,h=String(e.key),w=Qf(n,e),b=(C,A)=>{C&&At(C,s,9,A)},T=(C,A)=>{const x=A[1];b(C,A),K(C)?C.every(k=>k.length<=1)&&x():C.length<=1&&x()},O={mode:i,persisted:o,beforeEnter(C){let A=l;if(!n.isMounted)if(r)A=E||l;else return;C[hn]&&C[hn](!0);const x=w[h];x&&Pt(e,x)&&x.el[hn]&&x.el[hn](),b(A,[C])},enter(C){let A=a,x=u,k=f;if(!n.isMounted)if(r)A=S||a,x=y||u,k=v||f;else return;let R=!1;const V=C[Yr]=Y=>{R||(R=!0,Y?b(k,[C]):b(x,[C]),O.delayedLeave&&O.delayedLeave(),C[Yr]=void 0)};A?T(A,[C,V]):V()},leave(C,A){const x=String(e.key);if(C[Yr]&&C[Yr](!0),n.isUnmounting)return A();b(c,[C]);let k=!1;const R=C[hn]=V=>{k||(k=!0,A(),V?b(g,[C]):b(p,[C]),C[hn]=void 0,w[x]===e&&delete w[x])};w[x]=e,d?T(d,[C,R]):R()},clone(C){return xs(C,t,n,s)}};return O}function bo(e){if(Bs(e))return e=Ot(e),e.children=null,e}function Tc(e){return Bs(e)?e.component?e.component.subTree:e.children?e.children[0]:void 0:e}function is(e,t){e.shapeFlag&6&&e.component?is(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 eo(e,t=!1,n){let s=[],r=0;for(let i=0;i1)for(let i=0;i!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function Xg(e){Q(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:r=200,timeout:i,suspensible:o=!0,onError:l}=e;let a=null,u,f=0;const c=()=>(f++,a=null,d()),d=()=>{let p;return a||(p=a=t().catch(g=>{if(g=g instanceof Error?g:new Error(String(g)),l)return new Promise((E,S)=>{l(g,()=>E(c()),()=>S(g),f+1)});throw g}).then(g=>{if(p!==a&&a)return a;if(g||M("Async component loader resolved to undefined. If you are using retry(), make sure to return its return value."),g&&(g.__esModule||g[Symbol.toStringTag]==="Module")&&(g=g.default),g&&!me(g)&&!Q(g))throw new Error(`Invalid async component load result: ${g}`);return u=g,g}))};return js({name:"AsyncComponentWrapper",__asyncLoader:d,get __asyncResolved(){return u},setup(){const p=Fe;if(u)return()=>_o(u,p);const g=v=>{a=null,Fn(v,p,13,!s)};if(o&&p.suspense)return d().then(v=>()=>_o(v,p)).catch(v=>(g(v),()=>s?Oe(s,{error:v}):null));const E=Z(!1),S=Z(),y=Z(!!r);return r&&setTimeout(()=>{y.value=!1},r),i!=null&&setTimeout(()=>{if(!E.value&&!S.value){const v=new Error(`Async component timed out after ${i}ms.`);g(v),S.value=v}},i),d().then(()=>{E.value=!0,p.parent&&Bs(p.parent.vnode)&&(p.parent.effect.dirty=!0,Rr(p.parent.update))}).catch(v=>{g(v),S.value=v}),()=>{if(E.value&&u)return _o(u,p);if(S.value&&s)return Oe(s,{error:S.value});if(n&&!y.value)return Oe(n)}}})}function _o(e,t){const{ref:n,props:s,children:r,ce:i}=t.vnode,o=Oe(e,s,r);return o.ref=n,o.ce=i,delete t.vnode.ce,o}const Bs=e=>e.type.__isKeepAlive,Qg={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Je(),s=n.ctx,r=new Map,i=new Set;let o=null;n.__v_cache=r;const l=n.suspense,{renderer:{p:a,m:u,um:f,o:{createElement:c}}}=s,d=c("div");s.activate=(v,h,w,b,T)=>{const O=v.component;u(v,h,w,0,l),a(O.vnode,v,h,w,O,l,b,v.slotScopeIds,T),Ge(()=>{O.isDeactivated=!1,O.a&&bn(O.a);const C=v.props&&v.props.onVnodeMounted;C&&ut(C,O.parent,v)},l),Go(O)},s.deactivate=v=>{const h=v.component;u(v,d,null,1,l),Ge(()=>{h.da&&bn(h.da);const w=v.props&&v.props.onVnodeUnmounted;w&&ut(w,h.parent,v),h.isDeactivated=!0},l),Go(h)};function p(v){wo(v),f(v,n,l,!0)}function g(v){r.forEach((h,w)=>{const b=_r(h.type);b&&(!v||!v(b))&&E(w)})}function E(v){const h=r.get(v);!o||!Pt(h,o)?p(h):o&&wo(o),r.delete(v),i.delete(v)}ve(()=>[e.include,e.exclude],([v,h])=>{v&&g(w=>Xs(v,w)),h&&g(w=>!Xs(h,w))},{flush:"post",deep:!0});let S=null;const y=()=>{S!=null&&r.set(S,So(n.subTree))};return cs(y),Pr(y),no(()=>{r.forEach(v=>{const{subTree:h,suspense:w}=n,b=So(h);if(v.type===b.type&&v.key===b.key){wo(b);const T=b.component.da;T&&Ge(T,w);return}p(v)})}),()=>{if(S=null,!t.default)return null;const v=t.default(),h=v[0];if(v.length>1)return M("KeepAlive should contain exactly one component child."),o=null,v;if(!Rn(h)||!(h.shapeFlag&4)&&!(h.shapeFlag&128))return o=null,h;let w=So(h);const b=w.type,T=_r(es(w)?w.type.__asyncResolved||{}:b),{include:O,exclude:C,max:A}=e;if(O&&(!T||!Xs(O,T))||C&&T&&Xs(C,T))return o=w,h;const x=w.key==null?b:w.key,k=r.get(x);return w.el&&(w=Ot(w),h.shapeFlag&128&&(h.ssContent=w)),S=x,k?(w.el=k.el,w.component=k.component,w.transition&&is(w,w.transition),w.shapeFlag|=512,i.delete(x),i.add(x)):(i.add(x),A&&i.size>parseInt(A,10)&&E(i.values().next().value)),w.shapeFlag|=256,o=w,Kf(h.type)?h:w}}},Zg=Qg;function Xs(e,t){return K(e)?e.some(n=>Xs(n,t)):ne(e)?e.split(",").includes(t):om(e)?e.test(t):!1}function Zf(e,t){td(e,"a",t)}function ed(e,t){td(e,"da",t)}function td(e,t,n=Fe){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(to(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Bs(r.parent.vnode)&&ey(s,t,n,r),r=r.parent}}function ey(e,t,n,s){const r=to(t,e,s,!0);Ir(()=>{jl(s[t],r)},n)}function wo(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function So(e){return e.shapeFlag&128?e.ssContent:e}function to(e,t,n=Fe,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;Mn();const l=ls(n),a=At(t,n,e,o);return l(),$n(),a});return s?r.unshift(i):r.push(i),i}else{const r=Bt(Ji[e].replace(/ hook$/,""));M(`${r} 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 on=e=>(t,n=Fe)=>(!wa||e==="sp")&&to(e,(...s)=>t(...s),n),nd=on("bm"),cs=on("m"),sd=on("bu"),Pr=on("u"),no=on("bum"),Ir=on("um"),rd=on("sp"),id=on("rtg"),od=on("rtc");function ld(e,t=Fe){to("ec",e,t)}function ty(e,t,n,s){let r;const i=n&&n[s];if(K(e)||ne(e)){r=new Array(e.length);for(let o=0,l=e.length;ot(o,l,void 0,i&&i[l]));else{const o=Object.keys(e);r=new Array(o.length);for(let l=0,a=o.length;l{const i=s.fn(...r);return i&&(i.key=s.key),i}:s.fn)}return e}function sy(e,t,n={},s,r){if(ke.isCE||ke.parent&&es(ke.parent)&&ke.parent.isCE)return t!=="default"&&(n.name=t),Oe("slot",n,s&&s());let i=e[t];i&&i.length>1&&(M("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."),i=()=>[]),i&&i._c&&(i._d=!1),so();const o=i&&ad(i(n)),l=ya(Be,{key:n.key||o&&o.key||`_${t}`},o||(s?s():[]),o&&e._===1?64:-2);return!r&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),i&&i._c&&(i._d=!0),l}function ad(e){return e.some(t=>Rn(t)?!(t.type===Le||t.type===Be&&!ad(t.children)):!0)?e:null}function ry(e,t){const n={};if(!me(e))return M("v-on with no argument expects an object value."),n;for(const s in e)n[t&&/[A-Z]/.test(s)?`on:${s}`:Bt(s)]=e[s];return n}const Xo=e=>e?kd(e)?io(e)||e.proxy:Xo(e.parent):null,ts=ue(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>Kn(e.props),$attrs:e=>Kn(e.attrs),$slots:e=>Kn(e.slots),$refs:e=>Kn(e.refs),$parent:e=>Xo(e.parent),$root:e=>Xo(e.root),$emit:e=>e.emit,$options:e=>ma(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Rr(e.update)}),$nextTick:e=>e.n||(e.n=Ln.bind(e.proxy)),$watch:e=>Gg.bind(e)}),ha=e=>e==="_"||e==="$",Eo=(e,t)=>e!==ge&&!e.__isScriptSetup&&pe(e,t),nr={get({_:e},t){const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:a}=e;if(t==="__isVue")return!0;let u;if(t[0]!=="$"){const p=o[t];if(p!==void 0)switch(p){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(Eo(s,t))return o[t]=1,s[t];if(r!==ge&&pe(r,t))return o[t]=2,r[t];if((u=e.propsOptions[0])&&pe(u,t))return o[t]=3,i[t];if(n!==ge&&pe(n,t))return o[t]=4,n[t];Qo&&(o[t]=0)}}const f=ts[t];let c,d;if(f)return t==="$attrs"?(rt(e,"get",t),Ei()):t==="$slots"&&rt(e,"get",t),f(e);if((c=l.__cssModules)&&(c=c[t]))return c;if(n!==ge&&pe(n,t))return o[t]=4,n[t];if(d=a.config.globalProperties,pe(d,t))return d[t];ke&&(!ne(t)||t.indexOf("__v")!==0)&&(r!==ge&&ha(t[0])&&pe(r,t)?M(`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===ke&&M(`Property ${JSON.stringify(t)} was accessed during render but is not defined on instance.`))},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return Eo(r,t)?(r[t]=n,!0):r.__isScriptSetup&&pe(r,t)?(M(`Cannot mutate - - - + + + - +
+
diff --git a/404.html b/404.html index a40b4c7..3dca41b 100644 --- a/404.html +++ b/404.html @@ -7,14 +7,15 @@ - - - + + + - +
+
diff --git a/assets/ClicksSlider-qq1Ub2AL.css b/assets/ClicksSlider-qq1Ub2AL.css new file mode 100644 index 0000000..ded5c92 --- /dev/null +++ b/assets/ClicksSlider-qq1Ub2AL.css @@ -0,0 +1 @@ +.range[data-v-e916140b]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}.range[data-v-e916140b]::-webkit-slider-thumb{-webkit-appearance:none;height:100%;width:var(--thumb-width, .5rem)}.range[data-v-e916140b]::-moz-range-thumb{height:100%;width:var(--thumb-width, .5rem)} diff --git a/assets/ContextMenu-DSnskk1a.css b/assets/ContextMenu-DSnskk1a.css new file mode 100644 index 0000000..b193adb --- /dev/null +++ b/assets/ContextMenu-DSnskk1a.css @@ -0,0 +1 @@ +.select-list[data-v-9e4a80e3]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-9e4a80e3]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-9e4a80e3]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-9e4a80e3]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-9e4a80e3]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}.autocomplete-list[data-v-a9c46306]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-a9c46306]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-a9c46306]{cursor:pointer}#slideshow[data-v-63954aac]{height:100%} diff --git a/assets/DrawingControls-BO6lw4N5.css b/assets/DrawingControls-BO6lw4N5.css deleted file mode 100644 index beec79d..0000000 --- a/assets/DrawingControls-BO6lw4N5.css +++ /dev/null @@ -1 +0,0 @@ -.resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper__popper{z-index:10000;top:0;left:0;outline:none}.v-popper__popper.v-popper__popper--hidden{visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s;pointer-events:none}.v-popper__popper.v-popper__popper--shown{visibility:visible;opacity:1;transition:opacity .15s}.v-popper__popper.v-popper__popper--skip-transition,.v-popper__popper.v-popper__popper--skip-transition>.v-popper__wrapper{transition:none!important}.v-popper__backdrop{position:absolute;top:0;left:0;width:100%;height:100%;display:none}.v-popper__inner{position:relative;box-sizing:border-box;overflow-y:auto}.v-popper__inner>div{position:relative;z-index:1;max-width:inherit;max-height:inherit}.v-popper__arrow-container{position:absolute;width:10px;height:10px}.v-popper__popper--arrow-overflow .v-popper__arrow-container,.v-popper__popper--no-positioning .v-popper__arrow-container{display:none}.v-popper__arrow-inner,.v-popper__arrow-outer{border-style:solid;position:absolute;top:0;left:0;width:0;height:0}.v-popper__arrow-inner{visibility:hidden;border-width:7px}.v-popper__arrow-outer{border-width:6px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{left:-2px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{left:-1px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer{border-bottom-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:0}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{border-top-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{top:-4px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{top:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{top:-1px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{border-left-width:0;border-left-color:transparent!important;border-top-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{left:-4px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{left:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer{border-right-width:0;border-top-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner{left:-2px}.v-popper--theme-tooltip .v-popper__inner{background:#000c;color:#fff;border-radius:6px;padding:7px 12px 6px}.v-popper--theme-tooltip .v-popper__arrow-outer{border-color:#000c}.v-popper--theme-dropdown .v-popper__inner{background:#fff;color:#000;border-radius:6px;border:1px solid #ddd;box-shadow:0 6px 30px #0000001a}.v-popper--theme-dropdown .v-popper__arrow-inner{visibility:visible;border-color:#fff}.v-popper--theme-dropdown .v-popper__arrow-outer{border-color:#ddd}.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/assets/DrawingControls-C5T1oZL5.css b/assets/DrawingControls-C5T1oZL5.css new file mode 100644 index 0000000..bf95bff --- /dev/null +++ b/assets/DrawingControls-C5T1oZL5.css @@ -0,0 +1 @@ +.v-popper--theme-menu .v-popper__arrow-inner{border-color:#9ca3af33} diff --git a/assets/DrawingPreview-DJ7dOR_1.css b/assets/DrawingPreview-DJ7dOR_1.css new file mode 100644 index 0000000..d8ce4e2 --- /dev/null +++ b/assets/DrawingPreview-DJ7dOR_1.css @@ -0,0 +1 @@ +#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.disable-view-transition[data-v-1e2c950d] *{view-transition-name:none!important}.slidev-page[data-v-1e2c950d]{position:absolute;width:100%;height:100%} diff --git a/assets/SlidesShow-Do3DTZt5.css b/assets/SlidesShow-Do3DTZt5.css deleted file mode 100644 index 4ca12c5..0000000 --- a/assets/SlidesShow-Do3DTZt5.css +++ /dev/null @@ -1 +0,0 @@ -#slide-container{position:relative;break-after:page;overflow:hidden}#slide-content{position:relative;position:absolute;left:50%;top:50%;overflow:hidden;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark #slide-content{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete-list[data-v-9ed224f5]{margin-top:.25rem;--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));overflow:auto;max-height:calc(100vh - 100px)}.dark .autocomplete-list[data-v-9ed224f5]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.autocomplete[data-v-9ed224f5]{cursor:pointer}.select-list[data-v-38e64e7e]{padding-top:.5rem;padding-bottom:.5rem}.item[data-v-38e64e7e]{display:flex;cursor:default;white-space:nowrap;border-radius:.25rem;padding:.25rem 1rem}.item svg[data-v-38e64e7e]{margin-top:auto;margin-bottom:auto;margin-right:.25rem;margin-left:-.5rem}.item[data-v-38e64e7e]:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1}.title[data-v-38e64e7e]{padding:.25rem 1.75rem;font-size:.75rem;line-height:1rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5}#slideshow[data-v-2fe83b23]{height:100%}#slideshow>div[data-v-2fe83b23]{position:absolute;height:100%;width:100%} diff --git a/assets/index-0UP5rxbt.js b/assets/index-0UP5rxbt.js deleted file mode 100644 index c22c14f..0000000 --- a/assets/index-0UP5rxbt.js +++ /dev/null @@ -1,7 +0,0 @@ -import{n as Nt,y as Dn,z as mt,A as jn,t as E,B as wt,C as St,D as Fn,E as zn,G as Wn,H as qn,I as v,J as rt,K as Vn,L as Un,M as Bn,N as Kn,O as ft,P as fs,Q as Gn,R as Zn,d as Ge,b as Vs,e as b,f as Ae,h as Xn,o as zt,c as Ze,k as Le,q as Us,s as Bs,i as ye,S as Jn,T as Xe,U as Qn,V as Yn,W as ti,X as ei,Y as si,Z as ni,_ as ii,$ as j,a0 as Ks,a1 as ri,a2 as ue,a3 as oi,a4 as ai,a5 as li,r as ci,a6 as ui,a7 as hi,u as fi}from"./modules/vue-CnJIpJLC.js";import{T as di}from"./modules/shiki-BgDwwTVx.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const r of i)if(r.type==="childList")for(const a of r.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&n(a)}).observe(document,{childList:!0,subtree:!0});function s(i){const r={};return i.integrity&&(r.integrity=i.integrity),i.referrerPolicy&&(r.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?r.credentials="include":i.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function n(i){if(i.ep)return;i.ep=!0;const r=s(i);fetch(i.href,r)}})();function $e(t,e={},s){for(const n in t){const i=t[n],r=s?`${s}:${n}`:n;typeof i=="object"&&i!==null?$e(i,e,r):typeof i=="function"&&(e[r]=i)}return e}const pi={run:t=>t()},gi=()=>pi,Gs=typeof console.createTask<"u"?console.createTask:gi;function mi(t,e){const s=e.shift(),n=Gs(s);return t.reduce((i,r)=>i.then(()=>n.run(()=>r(...e))),Promise.resolve())}function vi(t,e){const s=e.shift(),n=Gs(s);return Promise.all(t.map(i=>n.run(()=>i(...e))))}function _e(t,e){for(const s of[...t])s(e)}class yi{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,s,n={}){if(!e||typeof s!="function")return()=>{};const i=e;let r;for(;this._deprecatedHooks[e];)r=this._deprecatedHooks[e],e=r.to;if(r&&!n.allowDeprecated){let a=r.message;a||(a=`${i} hook has been deprecated`+(r.to?`, please use ${r.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(a)||(console.warn(a),this._deprecatedMessages.add(a))}if(!s.name)try{Object.defineProperty(s,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(s),()=>{s&&(this.removeHook(e,s),s=void 0)}}hookOnce(e,s){let n,i=(...r)=>(typeof n=="function"&&n(),n=void 0,i=void 0,s(...r));return n=this.hook(e,i),n}removeHook(e,s){if(this._hooks[e]){const n=this._hooks[e].indexOf(s);n!==-1&&this._hooks[e].splice(n,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,s){this._deprecatedHooks[e]=typeof s=="string"?{to:s}:s;const n=this._hooks[e]||[];delete this._hooks[e];for(const i of n)this.hook(e,i)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const s in e)this.deprecateHook(s,e[s])}addHooks(e){const s=$e(e),n=Object.keys(s).map(i=>this.hook(i,s[i]));return()=>{for(const i of n.splice(0,n.length))i()}}removeHooks(e){const s=$e(e);for(const n in s)this.removeHook(n,s[n])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...s){return s.unshift(e),this.callHookWith(mi,e,...s)}callHookParallel(e,...s){return s.unshift(e),this.callHookWith(vi,e,...s)}callHookWith(e,s,...n){const i=this._before||this._after?{name:s,args:n,context:{}}:void 0;this._before&&_e(this._before,i);const r=e(s in this._hooks?[...this._hooks[s]]:[],n);return r instanceof Promise?r.finally(()=>{this._after&&i&&_e(this._after,i)}):(this._after&&i&&_e(this._after,i),r)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const s=this._before.indexOf(e);s!==-1&&this._before.splice(s,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const s=this._after.indexOf(e);s!==-1&&this._after.splice(s,1)}}}}function _i(){return new yi}function bi(t){return Array.isArray(t)?t:[t]}const ki=["title","titleTemplate","script","style","noscript"],Gt=["base","meta","link","style","script","noscript"],wi=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],Mi=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],Zs=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],Si=typeof window<"u";function Je(t){let e=9;for(let s=0;s>>9)+65536).toString(16).substring(1,8).toLowerCase()}function ds(t){return t._h||Je(t._d?t._d:`${t.tag}:${t.textContent||t.innerHTML||""}:${Object.entries(t.props).map(([e,s])=>`${e}:${String(s)}`).join(",")}`)}function Xs(t,e){const{props:s,tag:n}=t;if(Mi.includes(n))return n;if(n==="link"&&s.rel==="canonical")return"canonical";if(s.charset)return"charset";const i=["id"];n==="meta"&&i.push("name","property","http-equiv");for(const r of i)if(typeof s[r]<"u"){const a=String(s[r]);return e&&!e(a)?!1:`${n}:${r}:${a}`}return!1}function ps(t,e){return t==null?e||null:typeof t=="function"?t(e):t}async function xi(t,e,s){const n={tag:t,props:await Js(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(t)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(t))};return Zs.forEach(i=>{const r=typeof n.props[i]<"u"?n.props[i]:s[i];typeof r<"u"&&((!["innerHTML","textContent","children"].includes(i)||ki.includes(n.tag))&&(n[i==="children"?"innerHTML":i]=r),delete n.props[i])}),n.props.body&&(n.tagPosition="bodyClose",delete n.props.body),n.tag==="script"&&typeof n.innerHTML=="object"&&(n.innerHTML=JSON.stringify(n.innerHTML),n.props.type=n.props.type||"application/json"),Array.isArray(n.props.content)?n.props.content.map(i=>({...n,props:{...n.props,content:i}})):n}function Pi(t){return typeof t=="object"&&!Array.isArray(t)&&(t=Object.keys(t).filter(e=>t[e])),(Array.isArray(t)?t.join(" "):t).split(" ").filter(e=>e.trim()).filter(Boolean).join(" ")}async function Js(t,e){for(const s of Object.keys(t)){if(s==="class"){t[s]=Pi(t[s]);continue}if(t[s]instanceof Promise&&(t[s]=await t[s]),!e&&!Zs.includes(s)){const n=String(t[s]),i=s.startsWith("data-");n==="true"||n===""?t[s]=i?"true":!0:t[s]||(i&&n==="false"?t[s]="false":delete t[s])}}return t}const Ci=10;async function Ti(t){const e=[];return Object.entries(t.resolvedInput).filter(([s,n])=>typeof n<"u"&&wi.includes(s)).forEach(([s,n])=>{const i=bi(n);e.push(...i.map(r=>xi(s,r,t)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((s,n)=>(s._e=t._i,t.mode&&(s._m=t.mode),s._p=(t._i<l&&l[c]||void 0,e):o=e[a],typeof o<"u"?(o||"").replace(/"/g,'\\"'):!1}let i=t;try{i=decodeURI(t)}catch{}return(i.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(a=>{const o=n(a.slice(1));typeof o=="string"&&(t=t.replace(new RegExp(`\\${a}(\\W|$)`,"g"),(l,c)=>`${o}${c}`).trim())}),t.includes(ct)&&(t.endsWith(ct)&&(t=t.slice(0,-ct.length).trim()),t.startsWith(ct)&&(t=t.slice(ct.length).trim()),t=t.replace(new RegExp(`\\${ct}\\s*\\${ct}`,"g"),ct),t=Zt(t,{separator:s},s)),t}async function Ai(t){const e={tag:t.tagName.toLowerCase(),props:await Js(t.getAttributeNames().reduce((s,n)=>({...s,[n]:t.getAttribute(n)}),{})),innerHTML:t.innerHTML};return e._d=Xs(e),e}async function Li(t,e={}){var u;const s=e.document||t.resolvedOptions.document;if(!s)return;const n={shouldRender:t.dirty,tags:[]};if(await t.hooks.callHook("dom:beforeRender",n),!n.shouldRender)return;const i=(await t.resolveTags()).map(h=>({tag:h,id:Gt.includes(h.tag)?ds(h):h.tag,shouldRender:!0}));let r=t._dom;if(!r){r={elMap:{htmlAttrs:s.documentElement,bodyAttrs:s.body}};for(const h of["body","head"]){const d=(u=s==null?void 0:s[h])==null?void 0:u.children;for(const f of[...d].filter(p=>Gt.includes(p.tagName.toLowerCase())))r.elMap[f.getAttribute("data-hid")||ds(await Ai(f))]=f}}r.pendingSideEffects={...r.sideEffects||{}},r.sideEffects={};function a(h,d,f){const p=`${h}:${d}`;r.sideEffects[p]=f,delete r.pendingSideEffects[p]}function o({id:h,$el:d,tag:f}){const p=f.tag.endsWith("Attrs");r.elMap[h]=d,p||(["textContent","innerHTML"].forEach(g=>{f[g]&&f[g]!==d[g]&&(d[g]=f[g])}),a(h,"el",()=>{r.elMap[h].remove(),delete r.elMap[h]})),Object.entries(f.props).forEach(([g,m])=>{const y=`attr:${g}`;if(g==="class")for(const k of(m||"").split(" ").filter(Boolean))p&&a(h,`${y}:${k}`,()=>d.classList.remove(k)),!d.classList.contains(k)&&d.classList.add(k);else d.getAttribute(g)!==m&&d.setAttribute(g,m===!0?"":String(m)),p&&a(h,y,()=>d.removeAttribute(g))})}const l=[],c={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const h of i){const{tag:d,shouldRender:f,id:p}=h;if(f){if(d.tag==="title"){s.title=d.textContent;continue}h.$el=h.$el||r.elMap[p],h.$el?o(h):Gt.includes(d.tag)&&l.push(h)}}for(const h of l){const d=h.tag.tagPosition||"head";h.$el=s.createElement(h.tag.tag),o(h),c[d]=c[d]||s.createDocumentFragment(),c[d].appendChild(h.$el)}for(const h of i)await t.hooks.callHook("dom:renderTag",h,s,a);c.head&&s.head.appendChild(c.head),c.bodyOpen&&s.body.insertBefore(c.bodyOpen,s.body.firstChild),c.bodyClose&&s.body.appendChild(c.bodyClose),Object.values(r.pendingSideEffects).forEach(h=>h()),t._dom=r,t.dirty=!1,await t.hooks.callHook("dom:rendered",{renders:i})}async function $i(t,e={}){const s=e.delayFn||(n=>setTimeout(n,10));return t._domUpdatePromise=t._domUpdatePromise||new Promise(n=>s(async()=>{await Li(t,e),delete t._domUpdatePromise,n()}))}function Oi(t){return e=>{var n,i;const s=((i=(n=e.resolvedOptions.document)==null?void 0:n.head.querySelector('script[id="unhead:payload"]'))==null?void 0:i.innerHTML)||!1;return s&&e.push(JSON.parse(s)),{mode:"client",hooks:{"entries:updated":function(r){$i(r,t)}}}}}const Ii=["templateParams","htmlAttrs","bodyAttrs"],Ri={hooks:{"tag:normalise":function({tag:t}){["hid","vmid","key"].forEach(n=>{t.props[n]&&(t.key=t.props[n],delete t.props[n])});const s=Xs(t)||(t.key?`${t.tag}:${t.key}`:!1);s&&(t._d=s)},"tags:resolve":function(t){const e={};t.tags.forEach(n=>{const i=(n.key?`${n.tag}:${n.key}`:n._d)||n._p,r=e[i];if(r){let o=n==null?void 0:n.tagDuplicateStrategy;if(!o&&Ii.includes(n.tag)&&(o="merge"),o==="merge"){const l=r.props;["class","style"].forEach(c=>{l[c]&&(n.props[c]?(c==="style"&&!l[c].endsWith(";")&&(l[c]+=";"),n.props[c]=`${l[c]} ${n.props[c]}`):n.props[c]=l[c])}),e[i].props={...l,...n.props};return}else if(n._e===r._e){r._duped=r._duped||[],n._d=`${r._d}:${r._duped.length+1}`,r._duped.push(n);return}else if(te(n)>te(r))return}const a=Object.keys(n.props).length+(n.innerHTML?1:0)+(n.textContent?1:0);if(Gt.includes(n.tag)&&a===0){delete e[i];return}e[i]=n});const s=[];Object.values(e).forEach(n=>{const i=n._duped;delete n._duped,s.push(n),i&&s.push(...i)}),t.tags=s,t.tags=t.tags.filter(n=>!(n.tag==="meta"&&(n.props.name||n.props.property)&&!n.props.content))}}},Hi={mode:"server",hooks:{"tags:resolve":function(t){const e={};t.tags.filter(s=>["titleTemplate","templateParams","title"].includes(s.tag)&&s._m==="server").forEach(s=>{e[s.tag]=s.tag.startsWith("title")?s.textContent:s.props}),Object.keys(e).length&&t.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},Ni=["script","link","bodyAttrs"];function Di(t){const e={},s={};return Object.entries(t.props).forEach(([n,i])=>{n.startsWith("on")&&typeof i=="function"?(Qs.includes(n)&&(e[n]=`this.dataset.${n} = true`),s[n]=i):e[n]=i}),{props:e,eventHandlers:s}}const ji=t=>({hooks:{"tags:resolve":function(e){for(const s of e.tags)if(Ni.includes(s.tag)){const{props:n,eventHandlers:i}=Di(s);s.props=n,Object.keys(i).length&&((s.props.src||s.props.href)&&(s.key=s.key||Je(s.props.src||s.props.href)),s._eventHandlers=i)}},"dom:renderTag":function(e,s,n){if(!e.tag._eventHandlers)return;const i=e.tag.tag==="bodyAttrs"?s.defaultView:e.$el;Object.entries(e.tag._eventHandlers).forEach(([r,a])=>{const o=`${e.tag._d||e.tag._p}:${r}`,l=r.slice(2).toLowerCase(),c=`data-h-${l}`;if(n(e.id,o,()=>{}),e.$el.hasAttribute(c))return;e.$el.setAttribute(c,"");let u;const h=d=>{a(d),u==null||u.disconnect()};r in e.$el.dataset?h(new Event(r.replace("on",""))):Qs.includes(r)&&typeof MutationObserver<"u"?(u=new MutationObserver(d=>{d.some(p=>p.attributeName===`data-${r}`)&&(h(new Event(r.replace("on",""))),u==null||u.disconnect())}),u.observe(e.$el,{attributes:!0})):i.addEventListener(l,h),n(e.id,o,()=>{u==null||u.disconnect(),i.removeEventListener(l,h),e.$el.removeAttribute(c)})})}}}),Fi=["link","style","script","noscript"],zi={hooks:{"tag:normalise":({tag:t})=>{t.key&&Fi.includes(t.tag)&&(t.props["data-hid"]=t._h=Je(t.key))}}},Wi={hooks:{"tags:resolve":t=>{const e=s=>{var n;return(n=t.tags.find(i=>i._d===s))==null?void 0:n._p};for(const{prefix:s,offset:n}of Ei)for(const i of t.tags.filter(r=>typeof r.tagPriority=="string"&&r.tagPriority.startsWith(s))){const r=e(i.tagPriority.replace(s,""));typeof r<"u"&&(i._p=r+n)}t.tags.sort((s,n)=>s._p-n._p).sort((s,n)=>te(s)-te(n))}}},qi={meta:"content",link:"href",htmlAttrs:"lang"},Vi=t=>({hooks:{"tags:resolve":e=>{var o;const{tags:s}=e,n=(o=s.find(l=>l.tag==="title"))==null?void 0:o.textContent,i=s.findIndex(l=>l.tag==="templateParams"),r=i!==-1?s[i].props:{},a=r.separator||"|";delete r.separator,r.pageTitle=Zt(r.pageTitle||n||"",r,a);for(const l of s.filter(c=>c.processTemplateParams!==!1)){const c=qi[l.tag];c&&typeof l.props[c]=="string"?l.props[c]=Zt(l.props[c],r,a):(l.processTemplateParams===!0||["titleTemplate","title"].includes(l.tag))&&["innerHTML","textContent"].forEach(u=>{typeof l[u]=="string"&&(l[u]=Zt(l[u],r,a))})}t._templateParams=r,t._separator=a,e.tags=s.filter(l=>l.tag!=="templateParams")}}}),Ui={hooks:{"tags:resolve":t=>{const{tags:e}=t;let s=e.findIndex(i=>i.tag==="titleTemplate");const n=e.findIndex(i=>i.tag==="title");if(n!==-1&&s!==-1){const i=ps(e[s].textContent,e[n].textContent);i!==null?e[n].textContent=i||e[n].textContent:delete e[n]}else if(s!==-1){const i=ps(e[s].textContent);i!==null&&(e[s].textContent=i,e[s].tag="title",s=-1)}s!==-1&&delete e[s],t.tags=e.filter(Boolean)}}},Bi={hooks:{"tags:afterResolve":function(t){for(const e of t.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{o.dirty=!0,e.callHook("entries:updated",o)};let i=0,r=[];const a=[],o={plugins:a,dirty:!1,resolvedOptions:t,hooks:e,headEntries(){return r},use(l){const c=typeof l=="function"?l(o):l;(!c.key||!a.some(u=>u.key===c.key))&&(a.push(c),vs(c.mode,s)&&e.addHooks(c.hooks||{}))},push(l,c){c==null||delete c.head;const u={_i:i++,input:l,...c};return vs(u.mode,s)&&(r.push(u),n()),{dispose(){r=r.filter(h=>h._i!==u._i),e.callHook("entries:updated",o),n()},patch(h){r=r.map(d=>(d._i===u._i&&(d.input=u.input=h),d)),n()}}},async resolveTags(){const l={tags:[],entries:[...r]};await e.callHook("entries:resolve",l);for(const c of l.entries){const u=c.resolvedInput||c.input;if(c.resolvedInput=await(c.transform?c.transform(u):u),c.resolvedInput)for(const h of await Ti(c)){const d={tag:h,entry:c,resolvedOptions:o.resolvedOptions};await e.callHook("tag:normalise",d),l.tags.push(d.tag)}}return await e.callHook("tags:beforeResolve",l),await e.callHook("tags:resolve",l),await e.callHook("tags:afterResolve",l),l.tags},ssr:s};return[Ri,Hi,ji,zi,Wi,Vi,Ui,Bi,...(t==null?void 0:t.plugins)||[]].forEach(l=>o.use(l)),o.hooks.callHook("init",o),o}function Zi(){return Ys}const Xi=Dn.startsWith("3");function Ji(t){return typeof t=="function"?t():mt(t)}function ee(t,e=""){if(t instanceof Promise)return t;const s=Ji(t);return!t||!s?s:Array.isArray(s)?s.map(n=>ee(n,e)):typeof s=="object"?Object.fromEntries(Object.entries(s).map(([n,i])=>n==="titleTemplate"||n.startsWith("on")?[n,mt(i)]:[n,ee(i,n)])):s}const Qi={hooks:{"entries:resolve":function(t){for(const e of t.entries)e.resolvedInput=ee(e.input)}}},tn="usehead";function Yi(t){return{install(s){Xi&&(s.config.globalProperties.$unhead=t,s.config.globalProperties.$head=t,s.provide(tn,t))}}.install}function tr(t={}){t.domDelayFn=t.domDelayFn||(s=>Nt(()=>setTimeout(()=>s(),0)));const e=Ki(t);return e.use(Qi),e.install=Yi(e),e}const ys=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},_s="__unhead_injection_handler__";function er(){if(_s in ys)return ys[_s]();const t=jn(tn);return t||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),t||Zi()}function sr(t,e={}){const s=e.head||er();if(s)return s.ssr?s.push(t,e):nr(s,t,e)}function nr(t,e,s={}){const n=E(!1),i=E({});wt(()=>{i.value=n.value?{}:ee(e)});const r=t.push(i.value,s);return St(i,o=>{r.patch(o)}),qn()&&(Fn(()=>{r.dispose()}),zn(()=>{n.value=!0}),Wn(()=>{n.value=!1})),r}function ir(...t){return or(t).reduce((e,s)=>e+s,0)}function rr(t){return t=t??[],Array.isArray(t)?t:[t]}function or(t){return rr(t).flat(1)}function ar(t){return t!=null}function lr(t,e){return Object.fromEntries(Object.entries(t).map(([s,n])=>e(s,n)).filter(ar))}const C={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:"dev",monacoTypesSource:"local",monacoTypesAdditionalPackages:[],download:!1,export:{},info:!1,highlighter:"shiki",lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},en=C.aspectRatio??16/9,cr=C.canvasWidth??980,Va=Math.ceil(cr/en),ur=v(()=>lr(C.themeConfig||{},(t,e)=>[`--slidev-theme-${t}`,e]));function sn(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function U(t,e,s){Object.defineProperty(t,e,{value:s,writable:!0,enumerable:!1})}const vt=rt({page:0,clicks:0});let hr=[],fr=[];U(vt,"$syncUp",!0);U(vt,"$syncDown",!0);U(vt,"$paused",!1);U(vt,"$onSet",t=>hr.push(t));U(vt,"$onPatch",t=>fr.push(t));sn();U(vt,"$patch",async()=>!1);function nn(t,e,s=!1){const n=[];let i=!1,r=!1,a,o;const l=rt(e);function c(f){n.push(f)}function u(f,p){l[f]!==p&&(clearTimeout(a),i=!0,l[f]=p,a=setTimeout(()=>i=!1,0))}function h(f){i||(clearTimeout(o),r=!0,Object.entries(f).forEach(([p,g])=>{l[p]=g}),o=setTimeout(()=>r=!1,0))}function d(f){let p;s?s&&window.addEventListener("storage",m=>{m&&m.key===f&&m.newValue&&h(JSON.parse(m.newValue))}):(p=new BroadcastChannel(f),p.addEventListener("message",m=>h(m.data)));function g(){!s&&p&&!r?p.postMessage(Vn(l)):s&&!r&&window.localStorage.setItem(f,JSON.stringify(l)),i||n.forEach(m=>m(l))}if(St(l,g,{deep:!0,flush:"sync"}),s){const m=window.localStorage.getItem(f);m&&h(JSON.parse(m))}}return{init:d,onPatch:c,patch:u,state:l}}const{init:dr,onPatch:pr,patch:Ct,state:Ua}=nn(vt,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),yt=rt({});let gr=[],mr=[];U(yt,"$syncUp",!0);U(yt,"$syncDown",!0);U(yt,"$paused",!1);U(yt,"$onSet",t=>gr.push(t));U(yt,"$onPatch",t=>mr.push(t));sn();U(yt,"$patch",async()=>!1);const{init:vr,onPatch:yr,patch:rn,state:on}=nn(yt,{},!1),_r="modulepreload",br=function(t){return"/sa2024/"+t},bs={},Dt=function(e,s,n){let i=Promise.resolve();if(s&&s.length>0){const r=document.getElementsByTagName("link");i=Promise.all(s.map(a=>{if(a=br(a),a in bs)return;bs[a]=!0;const o=a.endsWith(".css"),l=o?'[rel="stylesheet"]':"";if(!!n)for(let h=r.length-1;h>=0;h--){const d=r[h];if(d.href===a&&(!o||d.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${a}"]${l}`))return;const u=document.createElement("link");if(u.rel=o?"stylesheet":_r,o||(u.as="script",u.crossOrigin=""),u.href=a,document.head.appendChild(u),o)return new Promise((h,d)=>{u.addEventListener("load",h),u.addEventListener("error",()=>d(new Error(`Unable to preload CSS for ${a}`)))})}))}return i.then(()=>e()).catch(r=>{const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=r,window.dispatchEvent(a),!a.defaultPrevented)throw r})},Wt=(t,e)=>{const s=t.__vccOpts||t;for(const[n,i]of e)s[n]=i;return s};function Ba(){const t=E(Date.now()),e=Un({interval:1e3}),s=v(()=>{const i=(e.value-t.value)/1e3,r=Math.floor(i%60).toString().padStart(2,"0");return`${Math.floor(i/60).toString().padStart(2,"0")}:${r}`});function n(){t.value=e.value}return{timer:s,resetTimer:n}}function kr(t=5){const e=[],s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n=s.length;for(let i=0;ii.max||0))}}}function Cr(t){var i,r;if((i=t==null?void 0:t.meta)!=null&&i.__clicksContext)return t.meta.__clicksContext;const e=+((t==null?void 0:t.path)??Oe),s=v({get(){var o;const a=+(((o=it.value)==null?void 0:o.path)??Number.NaN);return!a||Number.isNaN(a)?0:a===e?Mt.value:a>e?Oe:0},set(a){var l;+(((l=it.value)==null?void 0:l.path)??Number.NaN)===e&&(Mt.value=a)}}),n=fn(s,(r=t==null?void 0:t.meta)==null?void 0:r.clicks);return t!=null&&t.meta&&(t.meta.__clicksContext=n),n}function Tr(t,e=0){var s;return fn(E(e),(s=t==null?void 0:t.meta)==null?void 0:s.clicks)}const Er=Kn(Tr());function he(){const t=ft(ln),e=fs(t,"nav"),s=ft(Qe,Er).value,n=fs(s,"current"),i=ft(an),r=ft(cn),a=ft(un,{}),o=ft(Sr,void 0),l=ft(Mr,E(1));return{$slidev:t,$nav:e,$clicksContext:s,$clicks:n,$page:i,$route:o,$renderContext:r,$frontmatter:a,$scale:l}}function dn(t){var i,r;Gn(un,t);const{$slidev:e,$page:s}=he(),n=e.nav.rawRoutes.find(a=>a.path===String(s.value));if((r=(i=n==null?void 0:n.meta)==null?void 0:i.slide)!=null&&r.frontmatter){for(const a of Object.keys(n.meta.slide.frontmatter))a in t||delete n.meta.slide.frontmatter[a];Object.assign(n.meta.slide.frontmatter,t)}}function pn(t,e){return{...Zn(t,e===0?Pr:hn),frontmatter:t}}function ks(t){return t.startsWith("/")?"/sa2024/"+t.slice(1):t}function Ar(t,e=!1){const s=t&&["#","rgb","hsl"].some(i=>t.indexOf(i)===0),n={background:s?t:void 0,color:t&&!s?"white":void 0,backgroundImage:s?void 0:t?e?`linear-gradient(#0005, #0008), url(${ks(t)})`:`url("${ks(t)}")`:void 0,backgroundRepeat:"no-repeat",backgroundPosition:"center",backgroundSize:"cover"};return n.background||delete n.background,n}const Lr={class:"my-auto w-full"},$r=Ge({__name:"cover",props:{background:{default:""}},setup(t){he();const e=t,s=v(()=>Ar(e.background,!0));return(n,i)=>(zt(),Vs("div",{class:"slidev-layout cover",style:Xn(s.value)},[b("div",Lr,[Ae(n.$slots,"default")])],4))}}),Or=Wt($r,[["__file","/opt/homebrew/lib/node_modules/@slidev/theme-default/layouts/cover.vue"]]),st=rt({theme:"default",layout:"cover"}),Ir=rt({layout:v(()=>st.layout),transition:v(()=>st.transition),class:v(()=>st.class),clicks:v(()=>st.clicks),name:v(()=>st.name),preload:v(()=>st.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:st,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/index.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),Rr=b("h1",null,"Software Architecture",-1),Hr=b("h3",null,"Explained with Spring",-1),Nr={__name:"1",setup(t){return dn(st),he(),(e,s)=>(zt(),Ze(Or,Us(Bs(mt(pn)(mt(st),0))),{default:Le(()=>[Rr,Hr]),_:1},16))}},Dr=Wt(Nr,[["__file","/@slidev/slides/1.md"]]),jr=Ge({__name:"two-cols",props:{class:{type:String},layoutClass:{type:String}},setup(t){const e=t;return(s,n)=>(zt(),Vs("div",{class:ye(["slidev-layout two-columns w-full h-full grid grid-cols-2",e.layoutClass])},[b("div",{class:ye(["col-left",e.class])},[Ae(s.$slots,"default")],2),b("div",{class:ye(["col-right",e.class])},[Ae(s.$slots,"right")],2)],2))}}),Fr=Wt(jr,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/two-cols.vue"]]),nt=rt({layout:"two-cols"}),zr=rt({layout:v(()=>nt.layout),transition:v(()=>nt.transition),class:v(()=>nt.class),clicks:v(()=>nt.clicks),name:v(()=>nt.name),preload:v(()=>nt.preload),slide:{index:1,content:"",note:"",title:"Introduction",level:1,noteHTML:"",raw:"",frontmatter:nt,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/index.md",start:11,id:1,no:2},__clicksContext:null,__preloaded:!1}),Wr=b("h1",null,"Introduction",-1),qr=b("p",null,"This is a course of software architecture, which use spring frameworks to explain some essential architecture styles for software systems.",-1),Vr=b("h2",null,"Agenda",-1),Ur=b("ul",null,[b("li",null,[Jn("Software Architecture Basics "),b("ul",null,[b("li",null,[b("a",{href:"01-overview",target:"_blank",rel:"noopener"},"Overview")]),b("li",null,[b("a",{href:"02-components",target:"_blank",rel:"noopener"},"Components and Spring IoC Container")]),b("li",null,[b("a",{href:"03-layered",target:"_blank",rel:"noopener"},"Layered Systems")]),b("li",null,[b("a",{href:"04-mvc",target:"_blank",rel:"noopener"},"CS/BS with Spring MVC")])])])],-1),Br=b("ul",null,[b("li",null,[b("p",null,"Architecting Distributed Systems"),b("ul",null,[b("li",null,[b("a",{href:"05-restful",target:"_blank",rel:"noopener"},"REST and Spring HATEOAS")]),b("li",null,[b("a",{href:"06-scalable",target:"_blank",rel:"noopener"},"Scalable Web Architecture")]),b("li",null,[b("a",{href:"07-microservices",target:"_blank",rel:"noopener"},"Microservices with Spring Cloud")]),b("li",null,[b("a",{href:"08-serverless",target:"_blank",rel:"noopener"},"Serverless")]),b("li",null,[b("a",{href:"09-cloud",target:"_blank",rel:"noopener"},"Cloud Computing")])])]),b("li",null,[b("p",null,"Data-Centric Architectures"),b("ul",null,[b("li",null,[b("a",{href:"10-pipefilter",target:"_blank",rel:"noopener"},"Pipes-and-Filters with Spring Batch")]),b("li",null,[b("a",{href:"11-messagedriven",target:"_blank",rel:"noopener"},"Message/Event-driven Architecture")]),b("li",null,[b("a",{href:"12-integration",target:"_blank",rel:"noopener"},"Integration with Spring")]),b("li",null,[b("a",{href:"13-responsive",target:"_blank",rel:"noopener"},"Resposive System Design with Reactor")])])])],-1),Kr={__name:"2",setup(t){return dn(nt),he(),(e,s)=>(zt(),Ze(Fr,Us(Bs(mt(pn)(mt(nt),1))),{right:Le(n=>[Br]),default:Le(()=>[Wr,qr,Vr,Ur]),_:1},16))}},Gr=Wt(Kr,[["__file","/@slidev/slides/2.md"]]),I=[{path:"1",name:"page-1",component:Dr,meta:Ir},{path:"2",name:"page-2",component:Gr,meta:zr}].map(Xe),Zr=[].map(Xe),Jt=[{name:"play",path:"/",component:()=>Dt(()=>import("./slidev/play-D87gof42.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])),children:[...I,...Zr]},{name:"print",path:"/print",component:()=>Dt(()=>import("./slidev/print-Bc06WnZk.js"),__vite__mapDeps([11,1,4,9,6,7,12]))},{path:"",redirect:{path:"/1"}},{path:"/:pathMatch(.*)",redirect:{path:"/1"}}];{let t=function(e){if(!C.remote||C.remote===e.query.password)return!0;if(C.remote&&e.query.password===void 0){const s=prompt("Enter password");if(C.remote===s)return!0}return e.params.no?{path:`/${e.params.no}`}:{path:""}};Jt.push({path:"/presenter/print",component:()=>Dt(()=>import("./slidev/print-powiT1-3.js"),__vite__mapDeps([13,1,14,15,6,7]))}),Jt.push({name:"presenter",path:"/presenter/:no",component:()=>Dt(()=>import("./slidev/presenter-B7tplmEd.js"),__vite__mapDeps([16,3,1,2,4,5,6,7,8,14,15,17,18,19])),beforeEnter:t}),Jt.push({path:"/presenter",redirect:{path:"/presenter/1"}})}const z=Qn({history:Yn("/sa2024/"),routes:Jt}),gn=E(!1);function Xr(t,e,{mode:s="replace"}={}){return v({get(){const n=z.currentRoute.value.query[t];return n==null?e??null:Array.isArray(n)?n.filter(Boolean):n},set(n){Nt(()=>{z[mt(s)]({query:{...z.currentRoute.value.query,[t]:n}})})}})}var Jr=Object.defineProperty,ws=Object.getOwnPropertySymbols,Qr=Object.prototype.hasOwnProperty,Yr=Object.prototype.propertyIsEnumerable,Ms=(t,e,s)=>e in t?Jr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,Ie=(t,e)=>{for(var s in e||(e={}))Qr.call(e,s)&&Ms(t,s,e[s]);if(ws)for(var s of ws(e))Yr.call(e,s)&&Ms(t,s,e[s]);return t},to=()=>({emit(t,...e){for(let s=0,n=this.events[t]||[],i=n.length;s{var n;this.events[t]=(n=this.events[t])==null?void 0:n.filter(i=>e!==i)}}});function Ss(t,e,s,n=i=>i){return t*n(.5-e*(.5-s))}function eo(t){return[-t[0],-t[1]]}function X(t,e){return[t[0]+e[0],t[1]+e[1]]}function V(t,e){return[t[0]-e[0],t[1]-e[1]]}function Z(t,e){return[t[0]*e,t[1]*e]}function so(t,e){return[t[0]/e,t[1]/e]}function At(t){return[t[1],-t[0]]}function xs(t,e){return t[0]*e[0]+t[1]*e[1]}function no(t,e){return t[0]===e[0]&&t[1]===e[1]}function io(t){return Math.hypot(t[0],t[1])}function ro(t){return t[0]*t[0]+t[1]*t[1]}function Ps(t,e){return ro(V(t,e))}function mn(t){return so(t,io(t))}function oo(t,e){return Math.hypot(t[1]-e[1],t[0]-e[0])}function Lt(t,e,s){let n=Math.sin(s),i=Math.cos(s),r=t[0]-e[0],a=t[1]-e[1],o=r*i-a*n,l=r*n+a*i;return[o+e[0],l+e[1]]}function Re(t,e,s){return X(t,Z(V(e,t),s))}function Cs(t,e,s){return X(t,Z(e,s))}var{min:bt,PI:ao}=Math,Ts=.275,$t=ao+1e-4;function lo(t,e={}){let{size:s=16,smoothing:n=.5,thinning:i=.5,simulatePressure:r=!0,easing:a=w=>w,start:o={},end:l={},last:c=!1}=e,{cap:u=!0,easing:h=w=>w*(2-w)}=o,{cap:d=!0,easing:f=w=>--w*w*w+1}=l;if(t.length===0||s<=0)return[];let p=t[t.length-1].runningLength,g=o.taper===!1?0:o.taper===!0?Math.max(s,p):o.taper,m=l.taper===!1?0:l.taper===!0?Math.max(s,p):l.taper,y=Math.pow(s*n,2),k=[],M=[],O=t.slice(0,10).reduce((w,L)=>{let x=L.pressure;if(r){let P=bt(1,L.distance/s),ge=bt(1,1-P);x=bt(1,w+(ge-w)*(P*Ts))}return(w+x)/2},t[0].pressure),T=Ss(s,i,t[t.length-1].pressure,a),tt,ot=t[0].vector,W=t[0].point,B=W,J=W,Q=B,H=!1;for(let w=0;wy)&&(k.push(J),W=J),Q=X(x,hs),(w<=1||Ps(B,Q)>y)&&(M.push(Q),B=Q),O=L,ot=P}let S=t[0].point.slice(0,2),A=t.length>1?t[t.length-1].point.slice(0,2):X(t[0].point,[1,1]),at=[],K=[];if(t.length===1){if(!(g||m)||c){let w=Cs(S,mn(At(V(S,A))),-(tt||T)),L=[];for(let x=1/13,P=x;P<=1;P+=x)L.push(Lt(w,S,$t*2*P));return L}}else{if(!(g||m&&t.length===1))if(u)for(let L=1/13,x=L;x<=1;x+=L){let P=Lt(M[0],S,$t*x);at.push(P)}else{let L=V(k[0],M[0]),x=Z(L,.5),P=Z(L,.51);at.push(V(S,x),V(S,P),X(S,P),X(S,x))}let w=At(eo(t[t.length-1].vector));if(m||g&&t.length===1)K.push(A);else if(d){let L=Cs(A,w,T);for(let x=1/29,P=x;P<1;P+=x)K.push(Lt(L,A,$t*3*P))}else K.push(X(A,Z(w,T)),X(A,Z(w,T*.99)),V(A,Z(w,T*.99)),V(A,Z(w,T)))}return k.concat(K,M.reverse(),at)}function co(t,e={}){var s;let{streamline:n=.5,size:i=16,last:r=!1}=e;if(t.length===0)return[];let a=.15+(1-n)*.85,o=Array.isArray(t[0])?t:t.map(({x:f,y:p,pressure:g=.5})=>[f,p,g]);if(o.length===2){let f=o[1];o=o.slice(0,-1);for(let p=1;p<5;p++)o.push(Re(o[0],f,p/4))}o.length===1&&(o=[...o,[...X(o[0],[1,1]),...o[0].slice(2)]]);let l=[{point:[o[0][0],o[0][1]],pressure:o[0][2]>=0?o[0][2]:.25,vector:[1,1],distance:0,runningLength:0}],c=!1,u=0,h=l[0],d=o.length-1;for(let f=1;f=0?o[f][2]:.5,vector:mn(V(h.point,p)),distance:g,runningLength:u},l.push(h)}return l[0].vector=((s=l[1])==null?void 0:s.vector)||[0,0],l}function uo(t,e={}){return lo(co(t,e),e)}function se(t,e){return t-e}function ho(t){return t<0?-1:1}function ne(t){return[Math.abs(t),ho(t)]}function vn(){const t=()=>((1+Math.random())*65536|0).toString(16).substring(1);return`${t()+t()}-${t()}-${t()}-${t()}-${t()}${t()}${t()}`}var fo=2,et=fo,xt=class{constructor(t){this.drauu=t,this.event=void 0,this.point=void 0,this.start=void 0,this.el=null}onSelected(t){}onUnselected(){}onStart(t){}onMove(t){return!1}onEnd(t){}get brush(){return this.drauu.brush}get shiftPressed(){return this.drauu.shiftPressed}get altPressed(){return this.drauu.altPressed}get svgElement(){return this.drauu.el}getMousePosition(t){var e,s,n;const i=this.drauu.el,r=(e=this.drauu.options.coordinateScale)!=null?e:1,a=(s=this.drauu.options.offset)!=null?s:{x:0,y:0};if(this.drauu.options.coordinateTransform===!1){const o=this.drauu.el.getBoundingClientRect();return{x:(t.pageX-o.left+a.x)*r,y:(t.pageY-o.top+a.y)*r,pressure:t.pressure}}else{const o=this.drauu.svgPoint;o.x=t.clientX+a.x,o.y=t.clientY+a.y;const l=o.matrixTransform((n=i.getScreenCTM())==null?void 0:n.inverse());return{x:l.x*r,y:l.y*r,pressure:t.pressure}}}createElement(t,e){var s;const n=document.createElementNS("http://www.w3.org/2000/svg",t),i=e?Ie(Ie({},this.brush),e):this.brush;return n.setAttribute("fill",(s=i.fill)!=null?s:"transparent"),n.setAttribute("stroke",i.color),n.setAttribute("stroke-width",i.size.toString()),n.setAttribute("stroke-linecap","round"),i.dasharray&&n.setAttribute("stroke-dasharray",i.dasharray),n}attr(t,e){this.el.setAttribute(t,typeof e=="string"?e:e.toFixed(et))}_setEvent(t){this.event=t,this.point=this.getMousePosition(t)}_eventDown(t){return this._setEvent(t),this.start=this.point,this.onStart(this.point)}_eventMove(t){return this._setEvent(t),this.onMove(this.point)}_eventUp(t){return this._setEvent(t),this.onEnd(this.point)}},po=class yn extends xt{constructor(){super(...arguments),this.points=[]}onStart(e){return this.el=document.createElementNS("http://www.w3.org/2000/svg","path"),this.points=[e],this.attr("fill",this.brush.color),this.attr("d",this.getSvgData(this.points)),this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&this.points.push(e),this.attr("d",this.getSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!!e}getSvgData(e){return yn.getSvgData(e,this.brush)}static getSvgData(e,s){const n=uo(e,Ie({size:s.size,thinning:.9,simulatePressure:!1,start:{taper:5},end:{taper:5}},s.stylusOptions));if(!n.length)return"";const i=n.reduce((r,[a,o],l,c)=>{const[u,h]=c[(l+1)%c.length];return r.push(a,o,(a+u)/2,(o+h)/2),r},["M",...n[0],"Q"]);return i.push("Z"),i.map(r=>typeof r=="number"?r.toFixed(2):r).join(" ")}},go=class extends xt{onStart(t){return this.el=this.createElement("ellipse"),this.attr("cx",t.x),this.attr("cy",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=ne(t.x-this.start.x),[n,i]=ne(t.y-this.start.y);if(this.shiftPressed){const r=Math.min(e,n);e=r,n=r}if(this.altPressed)this.attr("cx",this.start.x),this.attr("cy",this.start.y),this.attr("rx",e),this.attr("ry",n);else{const[r,a]=[this.start.x,this.start.x+e*s].sort(se),[o,l]=[this.start.y,this.start.y+n*i].sort(se);this.attr("cx",(r+a)/2),this.attr("cy",(o+l)/2),this.attr("rx",(a-r)/2),this.attr("ry",(l-o)/2)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function _n(t,e){const s=document.createElementNS("http://www.w3.org/2000/svg","defs"),n=document.createElementNS("http://www.w3.org/2000/svg","marker"),i=document.createElementNS("http://www.w3.org/2000/svg","path");return i.setAttribute("fill",e),n.setAttribute("id",t),n.setAttribute("viewBox","0 -5 10 10"),n.setAttribute("refX","5"),n.setAttribute("refY","0"),n.setAttribute("markerWidth","4"),n.setAttribute("markerHeight","4"),n.setAttribute("orient","auto"),i.setAttribute("d","M0,-5L10,0L0,5"),n.appendChild(i),s.appendChild(n),s}var mo=class extends xt{onStart(t){if(this.el=this.createElement("line",{fill:"transparent"}),this.attr("x1",t.x),this.attr("y1",t.y),this.attr("x2",t.x),this.attr("y2",t.y),this.brush.arrowEnd){const e=vn(),s=document.createElementNS("http://www.w3.org/2000/svg","g");return s.append(_n(e,this.brush.color)),s.append(this.el),this.attr("marker-end",`url(#${e})`),s}return this.el}onMove(t){if(!this.el)return!1;let{x:e,y:s}=t;if(this.shiftPressed){const n=t.x-this.start.x,i=t.y-this.start.y;if(i!==0){let r=n/i;r=Math.round(r),Math.abs(r)<=1?(e=this.start.x+i*r,s=this.start.y+i):(e=this.start.x+n,s=this.start.y)}}return this.altPressed?(this.attr("x1",this.start.x*2-e),this.attr("y1",this.start.y*2-s),this.attr("x2",e),this.attr("y2",s)):(this.attr("x1",this.start.x),this.attr("y1",this.start.y),this.attr("x2",e),this.attr("y2",s)),!0}onEnd(){const t=this.el;return this.el=null,!(!t||t.getTotalLength()<5)}},vo=class extends xt{onStart(t){return this.el=this.createElement("rect"),this.brush.cornerRadius&&(this.attr("rx",this.brush.cornerRadius),this.attr("ry",this.brush.cornerRadius)),this.attr("x",t.x),this.attr("y",t.y),this.el}onMove(t){if(!this.el||!this.start)return!1;let[e,s]=ne(t.x-this.start.x),[n,i]=ne(t.y-this.start.y);if(this.shiftPressed){const r=Math.min(e,n);e=r,n=r}if(this.altPressed)this.attr("x",this.start.x-e),this.attr("y",this.start.y-n),this.attr("width",e*2),this.attr("height",n*2);else{const[r,a]=[this.start.x,this.start.x+e*s].sort(se),[o,l]=[this.start.y,this.start.y+n*i].sort(se);this.attr("x",r),this.attr("y",o),this.attr("width",a-r),this.attr("height",l-o)}return!0}onEnd(){const t=this.el;return this.el=null,!(!t||!t.getTotalLength())}};function yo(t,e){const s=t.x-e.x,n=t.y-e.y;return s*s+n*n}function _o(t,e,s){let n=e.x,i=e.y,r=s.x-n,a=s.y-i;if(r!==0||a!==0){const o=((t.x-n)*r+(t.y-i)*a)/(r*r+a*a);o>1?(n=s.x,i=s.y):o>0&&(n+=r*o,i+=a*o)}return r=t.x-n,a=t.y-i,r*r+a*a}function bo(t,e){let s=t[0];const n=[s];let i;for(let r=1,a=t.length;re&&(n.push(i),s=i);return s!==i&&i&&n.push(i),n}function He(t,e,s,n,i){let r=n,a=0;for(let o=e+1;or&&(a=o,r=l)}r>n&&(a-e>1&&He(t,e,a,n,i),i.push(t[a]),s-a>1&&He(t,a,s,n,i))}function ko(t,e){const s=t.length-1,n=[t[0]];return He(t,0,s,e,n),n.push(t[s]),n}function Es(t,e,s=!1){if(t.length<=2)return t;const n=e!==void 0?e*e:1;return t=s?t:bo(t,n),t=ko(t,n),t}var wo=class dt extends xt{constructor(){super(...arguments),this.points=[],this.count=0}onStart(e){if(this.el=this.createElement("path",{fill:"transparent"}),this.points=[e],this.brush.arrowEnd){this.arrowId=vn();const s=_n(this.arrowId,this.brush.color);this.el.appendChild(s)}return this.el}onMove(e){return this.el||this.onStart(e),this.points[this.points.length-1]!==e&&(this.points.push(e),this.count+=1),this.count>5&&(this.points=Es(this.points,1,!0),this.count=0),this.attr("d",dt.toSvgData(this.points)),!0}onEnd(){const e=this.el;return this.el=null,!(!e||(e.setAttribute("d",dt.toSvgData(Es(this.points,1,!0))),!e.getTotalLength()))}static line(e,s){const n=s.x-e.x,i=s.y-e.y;return{length:Math.sqrt(n**2+i**2),angle:Math.atan2(i,n)}}static controlPoint(e,s,n,i){const r=s||e,a=n||e,o=.2,l=dt.line(r,a),c=l.angle+(i?Math.PI:0),u=l.length*o,h=e.x+Math.cos(c)*u,d=e.y+Math.sin(c)*u;return{x:h,y:d}}static bezierCommand(e,s,n){const i=dt.controlPoint(n[s-1],n[s-2],e),r=dt.controlPoint(e,n[s-1],n[s+1],!0);return`C ${i.x.toFixed(et)},${i.y.toFixed(et)} ${r.x.toFixed(et)},${r.y.toFixed(et)} ${e.x.toFixed(et)},${e.y.toFixed(et)}`}static toSvgData(e){return e.reduce((s,n,i,r)=>i===0?`M ${n.x.toFixed(et)},${n.y.toFixed(et)}`:`${s} ${dt.bezierCommand(n,i,r)}`,"")}},Mo=class extends xt{constructor(){super(...arguments),this.pathSubFactor=20,this.pathFragments=[],this._erased=[]}onSelected(t){const e=(s,n)=>{if(s&&s.length)for(let i=0;it.forEach(e=>this.drauu._restoreNode(e)),redo:()=>t.forEach(e=>this.drauu._removeNode(e))}}checkAndEraseElement(){if(this.pathFragments.length)for(let t=0;t!this._erased.includes(t.element))),this._erased.length>0}lineLineIntersect(t,e){const s=t.x1,n=t.x2,i=e.x1,r=e.x2,a=t.y1,o=t.y2,l=e.y1,c=e.y2,u=(s-n)*(l-c)-(a-o)*(i-r),h=(s*o-a*n)*(i-r)-(s-n)*(i*c-l*r),d=(s*o-a*n)*(l-c)-(a-o)*(i*c-l*r),f=(p,g,m)=>p>=g&&p<=m?!0:p>=m&&p<=g;if(u===0)return!1;{const p={x:h/u,y:d/u};return f(p.x,s,n)&&f(p.y,a,o)&&f(p.x,i,r)&&f(p.y,l,c)}}};function So(t){return{draw:new wo(t),stylus:new po(t),line:new mo(t),rectangle:new vo(t),ellipse:new go(t),eraseLine:new Mo(t)}}var xo=class{constructor(t={}){this.options=t,this.el=null,this.svgPoint=null,this.eventEl=null,this.shiftPressed=!1,this.altPressed=!1,this.drawing=!1,this._emitter=to(),this._originalPointerId=null,this._models=So(this),this._opStack=[],this._opIndex=0,this._disposables=[],this._elements=[],this.options.brush||(this.options.brush={color:"black",size:3,mode:"stylus"}),t.el&&this.mount(t.el,t.eventTarget,t.window)}get model(){return this._models[this.mode]}get mounted(){return!!this.el}get mode(){return this.options.brush.mode||"stylus"}set mode(t){this._models[this.mode].onUnselected(),this.options.brush.mode=t,this.model.onSelected(this.el)}get brush(){return this.options.brush}set brush(t){this.options.brush=t}resolveSelector(t){return typeof t=="string"?document.querySelector(t):t||null}mount(t,e,s=window){if(this.el)throw new Error("[drauu] already mounted, unmount previous target first");if(this.el=this.resolveSelector(t),!this.el)throw new Error("[drauu] target element not found");if(this.el.tagName.toLocaleLowerCase()!=="svg")throw new Error("[drauu] can only mount to a SVG element");if(!this.el.createSVGPoint)throw new Error("[drauu] SVG element must be create by document.createElementNS('http://www.w3.org/2000/svg', 'svg')");this.svgPoint=this.el.createSVGPoint();const n=this.resolveSelector(e)||this.el,i=this.eventStart.bind(this),r=this.eventMove.bind(this),a=this.eventEnd.bind(this),o=this.eventKeyboard.bind(this);n.addEventListener("pointerdown",i,{passive:!1}),s.addEventListener("pointermove",r,{passive:!1}),s.addEventListener("pointerup",a,{passive:!1}),s.addEventListener("pointercancel",a,{passive:!1}),s.addEventListener("keydown",o,!1),s.addEventListener("keyup",o,!1),this._disposables.push(()=>{n.removeEventListener("pointerdown",i),s.removeEventListener("pointermove",r),s.removeEventListener("pointerup",a),s.removeEventListener("pointercancel",a),s.removeEventListener("keydown",o,!1),s.removeEventListener("keyup",o,!1)}),this._emitter.emit("mounted")}unmount(){this._disposables.forEach(t=>t()),this._disposables.length=0,this._elements.length=0,this.el=null,this._emitter.emit("unmounted")}on(t,e){return this._emitter.on(t,e)}undo(){return!this.canUndo()||this.drawing?!1:(this._opStack[--this._opIndex].undo(),this._emitter.emit("changed"),!0)}redo(){return!this.canRedo()||this.drawing?!1:(this._opStack[this._opIndex++].redo(),this._emitter.emit("changed"),!0)}canRedo(){return this._opIndex0}eventMove(t){!this.acceptsInput(t)||!this.drawing||this.model._eventMove(t)&&(t.stopPropagation(),t.preventDefault(),this._emitter.emit("changed"))}eventStart(t){this.acceptsInput(t)&&(t.stopPropagation(),t.preventDefault(),this._currentNode&&this.cancel(),this.drawing=!0,this._originalPointerId=t.pointerId,this._emitter.emit("start"),this._currentNode=this.model._eventDown(t),this._currentNode&&this.mode!=="eraseLine"&&this.el.appendChild(this._currentNode),this._emitter.emit("changed"))}eventEnd(t){if(!this.acceptsInput(t)||!this.drawing)return;const e=this.model._eventUp(t);if(!e)this.cancel();else if(e===!0){const s=this._currentNode;this._appendNode(s),this.commit({undo:()=>this._removeNode(s),redo:()=>this._restoreNode(s)})}else this.commit(e);this.drawing=!1,this._emitter.emit("end"),this._emitter.emit("changed"),this._originalPointerId=null}acceptsInput(t){return(!this.options.acceptsInputTypes||this.options.acceptsInputTypes.includes(t.pointerType))&&!(this._originalPointerId&&this._originalPointerId!==t.pointerId)}eventKeyboard(t){this.shiftPressed===t.shiftKey&&this.altPressed===t.altKey||(this.shiftPressed=t.shiftKey,this.altPressed=t.altKey,this.model.point&&this.model.onMove(this.model.point)&&this._emitter.emit("changed"))}commit(t){this._opStack.length=this._opIndex,this._opStack.push(t),this._opIndex++;const e=this._currentNode;this._currentNode=void 0,this._emitter.emit("committed",e)}clear(){this._opStack.length=0,this._opIndex=0,this.cancel(),this.el.innerHTML="",this._emitter.emit("changed")}cancel(){this._currentNode&&(this.el.removeChild(this._currentNode),this._currentNode=void 0,this._emitter.emit("canceled"))}dump(){return this.el.innerHTML}load(t){this.clear(),this.el.innerHTML=t}_appendNode(t){const e=this._elements.at(-1);e?e.after(t):this.el.append(t);const s=this._elements.push(t)-1;t.dataset.drauu_index=s.toString()}_removeNode(t){t.remove(),this._elements[+t.dataset.drauu_index]=null}_restoreNode(t){const e=+t.dataset.drauu_index;this._elements[e]=t;for(let s=e-1;s>=0;s--){const n=this._elements[s];if(n){n.after(t);return}}this.el.prepend(t)}};function Po(t){return new xo(t)}const Ga=E(!1),Za=E(!1),Xa=E(!1),Co=E(!1),Ja=E(!0),Qa=ti({xs:460,...ri}),As=ei(),Ya=si(),tl=v(()=>As.height.value-As.width.value/en>120),el=ni(ue?document.body:null),Ne=ii(),To=v(()=>{var t,e;return["INPUT","TEXTAREA"].includes(((t=Ne.value)==null?void 0:t.tagName)||"")||((e=Ne.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),sl=v(()=>{var t;return["BUTTON","A"].includes(((t=Ne.value)==null?void 0:t.tagName)||"")});j("slidev-camera","default",{listenToStorageChanges:!1});j("slidev-mic","default",{listenToStorageChanges:!1});const nl=j("slidev-scale",0),il=j("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),rl=j("slidev-show-editor",!1,{listenToStorageChanges:!1}),ol=j("slidev-editor-vertical",!1,{listenToStorageChanges:!1});j("slidev-editor-width",ue?window.innerWidth*.4:318,{listenToStorageChanges:!1});j("slidev-editor-height",ue?window.innerHeight*.4:300,{listenToStorageChanges:!1});const ie=j("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),Ut=j("slidev-presenter-layout",1,{listenToStorageChanges:!1});function al(){Ut.value=Ut.value+1,Ut.value>2&&(Ut.value=1)}function ll(){ie.value=Math.min(2,ie.value+.1)}function cl(){ie.value=Math.max(.5,ie.value-.1)}const ul=Ks(Co),De=["#ff595e","#ffca3a","#8ac926","#1982c4","#6a4c93","#ffffff","#000000"],je=j("slidev-drawing-enabled",!1),hl=j("slidev-drawing-pinned",!1),Eo=E(!1),Ao=E(!1),Lo=E(!1),re=E(!1),oe=oi(j("slidev-drawing-brush",{color:De[0],size:4,mode:"stylus"})),Ls=E("stylus"),bn=v(()=>C.drawings.syncAll||gt.value);let jt=!1;const Ot=v({get(){return Ls.value},set(t){Ls.value=t,t==="arrow"?(R.mode="line",oe.arrowEnd=!0):(R.mode=t,oe.arrowEnd=!1)}}),$o=rt({brush:oe,acceptsInputTypes:v(()=>je.value&&(!C.drawings.presenterOnly||gt.value)?void 0:["pen"]),coordinateTransform:!1}),R=Xe(Po($o));function Oo(){R.clear(),bn.value&&rn($.value,"")}function Ye(){var t;Ao.value=R.canRedo(),Eo.value=R.canUndo(),Lo.value=!!((t=R.el)!=null&&t.children.length)}function Io(t){jt=!0;const e=on[t||$.value];e!=null?R.load(e):R.clear(),Ye(),jt=!1}R.on("changed",()=>{if(Ye(),!jt){const t=R.dump(),e=$.value;(on[e]||"")!==t&&bn.value&&rn(e,R.dump())}});yr(t=>{jt=!0,t[$.value]!=null&&R.load(t[$.value]||""),jt=!1,Ye()});Nt(()=>{St($,()=>{R.mounted&&Io()},{immediate:!0})});R.on("start",()=>re.value=!0);R.on("end",()=>re.value=!1);window.addEventListener("keydown",t=>{if(!je.value||To.value)return;const e=!t.ctrlKey&&!t.altKey&&!t.shiftKey&&!t.metaKey;let s=!0;t.code==="KeyZ"&&(t.ctrlKey||t.metaKey)?t.shiftKey?R.redo():R.undo():t.code==="Escape"?je.value=!1:t.code==="KeyL"&&e?Ot.value="line":t.code==="KeyA"&&e?Ot.value="arrow":t.code==="KeyS"&&e?Ot.value="stylus":t.code==="KeyR"&&e?Ot.value="rectangle":t.code==="KeyE"&&e?Ot.value="ellipse":t.code==="KeyC"&&e?Oo():t.code.startsWith("Digit")&&e&&+t.code[5]<=De.length?oe.color=De[+t.code[5]-1]:s=!1,s&&(t.preventDefault(),t.stopPropagation())},!1);const Fe=E(0);Nt(()=>{z.afterEach(async()=>{await Nt(),Fe.value+=1})});const kn=E(0),fe=E(0),Y=v(()=>z.currentRoute.value),Ro=v(()=>Y.value.query.print!==void 0),Ho=v(()=>Y.value.query.print==="clicks"),fl=v(()=>Y.value.query.embedded!==void 0),gt=v(()=>Y.value.path.startsWith("/presenter")),No=v(()=>Y.value.path.startsWith("/notes")),Do=v(()=>Y.value.query.password),dl=v(()=>!gt.value&&(!C.remote||Do.value===C.remote)),$s=Xr("clicks","0"),Mt=v({get(){if(ut.value.disabled)return Oe;let t=+($s.value||0);return Number.isNaN(t)&&(t=0),t},set(t){$s.value=t.toString()}}),pl=v(()=>I.length),jo=v(()=>Y.value.path),$=v(()=>Number.parseInt(jo.value.split(/\//g).slice(-1)[0])||1);v(()=>de($.value));const it=v(()=>I.find(t=>t.path===`${$.value}`)),gl=v(()=>{var t,e,s;return(s=(e=(t=it.value)==null?void 0:t.meta)==null?void 0:e.slide)==null?void 0:s.id});v(()=>{var t,e;return((e=(t=it.value)==null?void 0:t.meta)==null?void 0:e.layout)||($.value===1?"cover":"default")});const ml=v(()=>I.find(t=>t.path===`${Math.min(I.length,$.value+1)}`)),Fo=v(()=>I.find(t=>t.path===`${Math.max(1,$.value-1)}`)),ut=v(()=>Cr(it.value)),ts=v(()=>ut.value.current),Ft=v(()=>ut.value.total),vl=v(()=>$.value$.value>1||ts.value>0),zo=v(()=>I.filter(t=>{var e,s;return(s=(e=t.meta)==null?void 0:e.slide)==null?void 0:s.title}).reduce((t,e)=>(is(t,e),t),[])),Wo=v(()=>rs(zo.value,it.value));v(()=>os(Wo.value));const _l=v(()=>Ko(kn.value,it.value,Fo.value));St(it,(t,e)=>{kn.value=Number(t==null?void 0:t.path)-Number(e==null?void 0:e.path)});async function wn(){fe.value=1,Ft.value<=Mt.value?await es():Mt.value+=1}async function Mn(){fe.value=-1,Mt.value<=0?await ss():Mt.value-=1}function de(t){return gt.value?`/presenter/${t}`:`/${t}`}async function es(){fe.value=1,$.value.3||r>75?s.value==="left"?wn():Mn():(a/window.innerHeight>.4||a>200)&&(s.value==="down"?ss():es())}})}async function qo(){const{saveAs:t}=await Dt(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),__vite__mapDeps([]));t(typeof C.download=="string"?C.download:C.exportFilename?`${C.exportFilename}.pdf`:"/sa2024/slidev-exported.pdf",`${C.title}.pdf`)}async function Vo(t){var e,s;if(t==null){const n=(s=(e=it.value)==null?void 0:e.meta)==null?void 0:s.slide;if(!n)return!1;t=`${n.filepath}:${n.start}`}return await fetch(`/__open-in-editor?file=${encodeURIComponent(t)}`),!0}function is(t,e,s=1){var i,r,a,o,l,c,u;const n=(r=(i=e.meta)==null?void 0:i.slide)==null?void 0:r.level;n&&n>s&&t.length>0?is(t[t.length-1].children,e,s+1):t.push({children:[],level:s,path:e.path,hideInToc:!!((l=(o=(a=e.meta)==null?void 0:a.slide)==null?void 0:o.frontmatter)!=null&&l.hideInToc),title:(u=(c=e.meta)==null?void 0:c.slide)==null?void 0:u.title})}function rs(t,e,s=!1,n){return t.map(i=>{const r={...i,active:i.path===(e==null?void 0:e.path),hasActiveParent:s};return r.children.length>0&&(r.children=rs(r.children,e,r.active||r.hasActiveParent,r)),n&&(r.active||r.activeParent)&&(n.activeParent=!0),r})}function os(t,e=1){return t.filter(s=>!s.hideInToc).map(s=>({...s,children:os(s.children,e+1)}))}const Uo={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function Bo(t,e=!1){if(!t||(typeof t=="string"&&(t={name:t}),!t.name))return;let s=t.name.includes("|")?t.name:Uo[t.name]||t.name;if(s.includes("|")){const[n,i]=s.split("|").map(r=>r.trim());s=e?i:n}if(s)return{...t,name:s}}function Ko(t,e,s){var i,r;let n=t>0?(i=s==null?void 0:s.meta)==null?void 0:i.transition:(r=e==null?void 0:e.meta)==null?void 0:r.transition;return n||(n=C.transition),Bo(n,t<0)}function Go(){const t=C.titleTemplate.replace("%s",C.title||"Slidev");sr({title:t,htmlAttrs:C.htmlAttrs}),dr(`${t} - shared`),vr(`${t} - drawings`);const e=`${location.origin}_${kr()}`;function s(){No.value||!gt.value&&!xr.includes(location.host.split(":")[0])||(gt.value?(Ct("page",+$.value),Ct("clicks",ut.value.current)):(Ct("viewerPage",+$.value),Ct("viewerClicks",ut.value.current)),Ct("lastUpdate",{id:e,type:gt.value?"presenter":"viewer",time:new Date().getTime()}))}z.afterEach(s),St(ut,s),pr(n=>{var r;z.currentRoute.value.path.match(/^\/(\d+|presenter)\/?/)&&((r=n.lastUpdate)==null?void 0:r.type)==="presenter"&&(+n.page!=+$.value||+ut.value.current!=+n.clicks)&&(gn.value=!1,z.replace({path:de(n.page),query:{...z.currentRoute.value.query,clicks:n.clicks||0}}))})}const Zo=Ge({__name:"App",setup(t){return Go(),wt(()=>{for(const[e,s]of Object.entries(ur.value))document.body.style.setProperty(e,s.toString())}),(e,s)=>{const n=ci("RouterView");return zt(),Ze(n)}}}),Xo=Wt(Zo,[["__file","/opt/homebrew/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function Jo(t){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e),t.app.use(ui),t.app.use(di)}function Sn(t,e,s){var n;return((n=t.instance)==null?void 0:n.$).provides[e]??s}function Qo(){return{install(t){t.directive("click",{name:"v-click",mounted(e,s){const n=Qt(e,s,s.value);if(n==null)return;e.classList.toggle(Xt,!0);const i=Array.isArray(n.clicks)?n.clicks:[n.clicks,void 0];e.dataset.slidevClicksStart=String(i[0]),i[1]!=null&&(e.dataset.slidevClicksEnd=String(i[1])),wt(()=>{const r=n.isActive.value,a=n.isCurrent.value,o=r&&!a;n.flagHide?(e.classList.toggle(n.flagFade?Et:Tt,r),e.classList.toggle(be,r)):e.classList.toggle(n.flagFade?Et:Tt,!r),e.classList.toggle(ke,a),e.classList.toggle(we,o)})},unmounted:Se}),t.directive("after",{name:"v-after",mounted(e,s){const n=Qt(e,s,s.value,!0);n!=null&&(e.classList.toggle(Xt,!0),wt(()=>{const i=n.isActive.value,r=n.isCurrent.value,a=i&&!r;n.flagHide?(e.classList.toggle(n.flagFade?Et:Tt,i),e.classList.toggle(be,i)):e.classList.toggle(n.flagFade?Et:Tt,!i),e.classList.toggle(ke,r),e.classList.toggle(we,a)}))},unmounted:Se}),t.directive("click-hide",{name:"v-click-hide",mounted(e,s){const n=Qt(e,s,s.value,!1,!0);n!=null&&(e.classList.toggle(Xt,!0),wt(()=>{const i=n.isActive.value,r=n.isCurrent.value,a=i&&!r;e.classList.toggle(n.flagFade?Et:Tt,i),e.classList.toggle(be,i),e.classList.toggle(ke,r),e.classList.toggle(we,a)}))},unmounted:Se})}}}function Me(t,e){return Array.isArray(t)?t[0]<=e&&eMe(l,r.current)),isCurrent:v(()=>Yo(l,r.current)),isShown:v(()=>i?!Me(l,r.current):Me(l,r.current)),flagFade:a,flagHide:i};return r.register(t,u),u}function Se(t,e){var n;t.classList.toggle(Xt,!1);const s=(n=Sn(e,Qe))==null?void 0:n.value;s==null||s.unregister(t)}function xn(){return Math.floor(Math.random()*2**31)}class ta{constructor(e){this.seed=e}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}}function ze(t,e,s){if(t&&t.length){const[n,i]=e,r=Math.PI/180*s,a=Math.cos(r),o=Math.sin(r);for(const l of t){const[c,u]=l;l[0]=(c-n)*a-(u-i)*o+n,l[1]=(c-n)*o+(u-i)*a+i}}}function ea(t,e,s){const n=[];t.forEach(i=>n.push(...i)),ze(n,e,s)}function sa(t,e){return t[0]===e[0]&&t[1]===e[1]}function na(t,e,s,n=1){const i=s,r=Math.max(e,.1),a=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,o=[0,0];if(i)for(const c of a)ze(c,o,i);const l=ia(a,r,n);if(i){for(const c of a)ze(c,o,-i);ea(l,o,-i)}return l}function ia(t,e,s){const n=[];for(const c of t){const u=[...c];sa(u[0],u[u.length-1])||u.push([u[0][0],u[0][1]]),u.length>2&&n.push(u)}const i=[];e=Math.max(e,.1);const r=[];for(const c of n)for(let u=0;uc.yminu.ymin?1:c.xu.x?1:c.ymax===u.ymax?0:(c.ymax-u.ymax)/Math.abs(c.ymax-u.ymax)),!r.length)return i;let a=[],o=r[0].ymin,l=0;for(;a.length||r.length;){if(r.length){let c=-1;for(let h=0;ho);h++)c=h;r.splice(0,c+1).forEach(h=>{a.push({s:o,edge:h})})}if(a=a.filter(c=>!(c.edge.ymax<=o)),a.sort((c,u)=>c.edge.x===u.edge.x?0:(c.edge.x-u.edge.x)/Math.abs(c.edge.x-u.edge.x)),(s!==1||l%e===0)&&a.length>1)for(let c=0;c=a.length)break;const h=a[c].edge,d=a[u].edge;i.push([[Math.round(h.x),o],[Math.round(d.x),o]])}o+=s,a.forEach(c=>{c.edge.x=c.edge.x+s*c.edge.islope}),l++}return i}function qt(t,e){var s;const n=e.hachureAngle+90;let i=e.hachureGap;i<0&&(i=e.strokeWidth*4),i=Math.round(Math.max(i,.1));let r=1;return e.roughness>=1&&(((s=e.randomizer)===null||s===void 0?void 0:s.next())||Math.random())>.7&&(r=i),na(t,i,n,r||1)}class as{constructor(e){this.helper=e}fillPolygons(e,s){return this._fillPolygons(e,s)}_fillPolygons(e,s){const n=qt(e,s);return{type:"fillSketch",ops:this.renderLines(n,s)}}renderLines(e,s){const n=[];for(const i of e)n.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],s));return n}}function pe(t){const e=t[0],s=t[1];return Math.sqrt(Math.pow(e[0]-s[0],2)+Math.pow(e[1]-s[1],2))}class ra extends as{fillPolygons(e,s){let n=s.hachureGap;n<0&&(n=s.strokeWidth*4),n=Math.max(n,.1);const i=Object.assign({},s,{hachureGap:n}),r=qt(e,i),a=Math.PI/180*s.hachureAngle,o=[],l=n*.5*Math.cos(a),c=n*.5*Math.sin(a);for(const[h,d]of r)pe([h,d])&&o.push([[h[0]-l,h[1]+c],[...d]],[[h[0]+l,h[1]-c],[...d]]);return{type:"fillSketch",ops:this.renderLines(o,s)}}}class oa extends as{fillPolygons(e,s){const n=this._fillPolygons(e,s),i=Object.assign({},s,{hachureAngle:s.hachureAngle+90}),r=this._fillPolygons(e,i);return n.ops=n.ops.concat(r.ops),n}}class aa{constructor(e){this.helper=e}fillPolygons(e,s){s=Object.assign({},s,{hachureAngle:0});const n=qt(e,s);return this.dotsOnLines(n,s)}dotsOnLines(e,s){const n=[];let i=s.hachureGap;i<0&&(i=s.strokeWidth*4),i=Math.max(i,.1);let r=s.fillWeight;r<0&&(r=s.strokeWidth/2);const a=i/4;for(const o of e){const l=pe(o),c=l/i,u=Math.ceil(c)-1,h=l-u*i,d=(o[0][0]+o[1][0])/2-i/4,f=Math.min(o[0][1],o[1][1]);for(let p=0;p{const o=pe(a),l=Math.floor(o/(n+i)),c=(o+i-l*(n+i))/2;let u=a[0],h=a[1];u[0]>h[0]&&(u=a[1],h=a[0]);const d=Math.atan((h[1]-u[1])/(h[0]-u[0]));for(let f=0;f{const a=pe(r),o=Math.round(a/(2*s));let l=r[0],c=r[1];l[0]>c[0]&&(l=r[1],c=r[0]);const u=Math.atan((c[1]-l[1])/(c[0]-l[0]));for(let h=0;hu%2?c+s:c+e);r.push({key:"C",data:l}),e=l[4],s=l[5];break}case"Q":r.push({key:"Q",data:[...o]}),e=o[2],s=o[3];break;case"q":{const l=o.map((c,u)=>u%2?c+s:c+e);r.push({key:"Q",data:l}),e=l[2],s=l[3];break}case"A":r.push({key:"A",data:[...o]}),e=o[5],s=o[6];break;case"a":e+=o[5],s+=o[6],r.push({key:"A",data:[o[0],o[1],o[2],o[3],o[4],e,s]});break;case"H":r.push({key:"H",data:[...o]}),e=o[0];break;case"h":e+=o[0],r.push({key:"H",data:[e]});break;case"V":r.push({key:"V",data:[...o]}),s=o[0];break;case"v":s+=o[0],r.push({key:"V",data:[s]});break;case"S":r.push({key:"S",data:[...o]}),e=o[2],s=o[3];break;case"s":{const l=o.map((c,u)=>u%2?c+s:c+e);r.push({key:"S",data:l}),e=l[2],s=l[3];break}case"T":r.push({key:"T",data:[...o]}),e=o[0],s=o[1];break;case"t":e+=o[0],s+=o[1],r.push({key:"T",data:[e,s]});break;case"Z":case"z":r.push({key:"Z",data:[]}),e=n,s=i;break}return r}function Tn(t){const e=[];let s="",n=0,i=0,r=0,a=0,o=0,l=0;for(const{key:c,data:u}of t){switch(c){case"M":e.push({key:"M",data:[...u]}),[n,i]=u,[r,a]=u;break;case"C":e.push({key:"C",data:[...u]}),n=u[4],i=u[5],o=u[2],l=u[3];break;case"L":e.push({key:"L",data:[...u]}),[n,i]=u;break;case"H":n=u[0],e.push({key:"L",data:[n,i]});break;case"V":i=u[0],e.push({key:"L",data:[n,i]});break;case"S":{let h=0,d=0;s==="C"||s==="S"?(h=n+(n-o),d=i+(i-l)):(h=n,d=i),e.push({key:"C",data:[h,d,...u]}),o=u[0],l=u[1],n=u[2],i=u[3];break}case"T":{const[h,d]=u;let f=0,p=0;s==="Q"||s==="T"?(f=n+(n-o),p=i+(i-l)):(f=n,p=i);const g=n+2*(f-n)/3,m=i+2*(p-i)/3,y=h+2*(f-h)/3,k=d+2*(p-d)/3;e.push({key:"C",data:[g,m,y,k,h,d]}),o=f,l=p,n=h,i=d;break}case"Q":{const[h,d,f,p]=u,g=n+2*(h-n)/3,m=i+2*(d-i)/3,y=f+2*(h-f)/3,k=p+2*(d-p)/3;e.push({key:"C",data:[g,m,y,k,f,p]}),o=h,l=d,n=f,i=p;break}case"A":{const h=Math.abs(u[0]),d=Math.abs(u[1]),f=u[2],p=u[3],g=u[4],m=u[5],y=u[6];h===0||d===0?(e.push({key:"C",data:[n,i,m,y,m,y]}),n=m,i=y):(n!==m||i!==y)&&(En(n,i,m,y,h,d,f,p,g).forEach(function(M){e.push({key:"C",data:M})}),n=m,i=y);break}case"Z":e.push({key:"Z",data:[]}),n=r,i=a;break}s=c}return e}function da(t){return Math.PI*t/180}function It(t,e,s){const n=t*Math.cos(s)-e*Math.sin(s),i=t*Math.sin(s)+e*Math.cos(s);return[n,i]}function En(t,e,s,n,i,r,a,o,l,c){const u=da(a);let h=[],d=0,f=0,p=0,g=0;if(c)[d,f,p,g]=c;else{[t,e]=It(t,e,-u),[s,n]=It(s,n,-u);const H=(t-s)/2,S=(e-n)/2;let A=H*H/(i*i)+S*S/(r*r);A>1&&(A=Math.sqrt(A),i=A*i,r=A*r);const at=o===l?-1:1,K=i*i,w=r*r,L=K*w-K*S*S-w*H*H,x=K*S*S+w*H*H,P=at*Math.sqrt(Math.abs(L/x));p=P*i*S/r+(t+s)/2,g=P*-r*H/i+(e+n)/2,d=Math.asin(parseFloat(((e-g)/r).toFixed(9))),f=Math.asin(parseFloat(((n-g)/r).toFixed(9))),tf&&(d=d-Math.PI*2),!l&&f>d&&(f=f-Math.PI*2)}let m=f-d;if(Math.abs(m)>Math.PI*120/180){const H=f,S=s,A=n;l&&f>d?f=d+Math.PI*120/180*1:f=d+Math.PI*120/180*-1,s=p+i*Math.cos(f),n=g+r*Math.sin(f),h=En(s,n,S,A,i,r,a,0,l,[f,H,p,g])}m=f-d;const y=Math.cos(d),k=Math.sin(d),M=Math.cos(f),O=Math.sin(f),T=Math.tan(m/4),tt=4/3*i*T,ot=4/3*r*T,W=[t,e],B=[t+tt*k,e-ot*y],J=[s+tt*O,n-ot*M],Q=[s,n];if(B[0]=2*W[0]-B[0],B[1]=2*W[1]-B[1],c)return[B,J,Q].concat(h);{h=[B,J,Q].concat(h);const H=[];for(let S=0;S2){const i=[];for(let r=0;rMath.PI*2&&(f=0,p=Math.PI*2);const g=Math.PI*2/l.curveStepCount,m=Math.min(g/2,(p-f)/2),y=Ds(m,c,u,h,d,f,p,1,l);if(!l.disableMultiStroke){const k=Ds(m,c,u,h,d,f,p,1.5,l);y.push(...k)}return a&&(o?y.push(...ht(c,u,c+h*Math.cos(f),u+d*Math.sin(f),l),...ht(c,u,c+h*Math.cos(p),u+d*Math.sin(p),l)):y.push({op:"lineTo",data:[c,u]},{op:"lineTo",data:[c+h*Math.cos(f),u+d*Math.sin(f)]})),{type:"path",ops:y}}function Rs(t,e){const s=Tn(Cn(ls(t))),n=[];let i=[0,0],r=[0,0];for(const{key:a,data:o}of s)switch(a){case"M":{r=[o[0],o[1]],i=[o[0],o[1]];break}case"L":n.push(...ht(r[0],r[1],o[0],o[1],e)),r=[o[0],o[1]];break;case"C":{const[l,c,u,h,d,f]=o;n.push(...ba(l,c,u,h,d,f,r,e)),r=[d,f];break}case"Z":n.push(...ht(r[0],r[1],i[0],i[1],e)),r=[i[0],i[1]];break}return{type:"path",ops:n}}function Pe(t,e){const s=[];for(const n of t)if(n.length){const i=e.maxRandomnessOffset||0,r=n.length;if(r>2){s.push({op:"move",data:[n[0][0]+_(i,e),n[0][1]+_(i,e)]});for(let a=1;aMath.PI*2&&(h=0,d=Math.PI*2);const f=(d-h)/a.curveStepCount,p=[];for(let g=h;g<=d;g=g+f)p.push([o+c*Math.cos(g),l+u*Math.sin(g)]);return p.push([o+c*Math.cos(d),l+u*Math.sin(d)]),p.push([o,l]),kt([p],a)}function va(t,e){return _(t,e)}function ya(t,e,s){return ae(t,e,s)}function _a(t,e,s,n,i){return ht(t,e,s,n,i,!0)}function Hs(t){const e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function $n(t){return t.randomizer||(t.randomizer=new ta(t.seed||0)),t.randomizer.next()}function ae(t,e,s,n=1){return s.roughness*n*($n(s)*(e-t)+t)}function _(t,e,s=1){return ae(-t,t,e,s)}function ht(t,e,s,n,i,r=!1){const a=r?i.disableMultiStrokeFill:i.disableMultiStroke,o=Ue(t,e,s,n,i,!0,!1);if(a)return o;const l=Ue(t,e,s,n,i,!0,!0);return o.concat(l)}function Ue(t,e,s,n,i,r,a){const o=Math.pow(t-s,2)+Math.pow(e-n,2),l=Math.sqrt(o);let c=1;l<200?c=1:l>500?c=.4:c=-.0016668*l+1.233334;let u=i.maxRandomnessOffset||0;u*u*100>o&&(u=l/10);const h=u/2,d=.2+$n(i)*.2;let f=i.bowing*i.maxRandomnessOffset*(n-e)/200,p=i.bowing*i.maxRandomnessOffset*(t-s)/200;f=_(f,i,c),p=_(p,i,c);const g=[],m=()=>_(h,i,c),y=()=>_(u,i,c),k=i.preserveVertices;return r&&(a?g.push({op:"move",data:[t+(k?0:m()),e+(k?0:m())]}):g.push({op:"move",data:[t+(k?0:_(u,i,c)),e+(k?0:_(u,i,c))]})),a?g.push({op:"bcurveTo",data:[f+t+(s-t)*d+m(),p+e+(n-e)*d+m(),f+t+2*(s-t)*d+m(),p+e+2*(n-e)*d+m(),s+(k?0:m()),n+(k?0:m())]}):g.push({op:"bcurveTo",data:[f+t+(s-t)*d+y(),p+e+(n-e)*d+y(),f+t+2*(s-t)*d+y(),p+e+2*(n-e)*d+y(),s+(k?0:y()),n+(k?0:y())]}),g}function Kt(t,e,s){if(!t.length)return[];const n=[];n.push([t[0][0]+_(e,s),t[0][1]+_(e,s)]),n.push([t[0][0]+_(e,s),t[0][1]+_(e,s)]);for(let i=1;i3){const r=[],a=1-s.curveTightness;i.push({op:"move",data:[t[1][0],t[1][1]]});for(let o=1;o+21&&i.push(r):i.push(r),i.push(t[e+3])}else{const a=t[e+0],o=t[e+1],l=t[e+2],c=t[e+3],u=pt(a,o,.5),h=pt(o,l,.5),d=pt(l,c,.5),f=pt(u,h,.5),p=pt(h,d,.5),g=pt(f,p,.5);Be([a,u,f,g],0,s,i),Be([g,p,d,c],0,s,i)}return i}function Sa(t,e){return ce(t,0,t.length,e)}function ce(t,e,s,n,i){const r=i||[],a=t[e],o=t[s-1];let l=0,c=1;for(let u=e+1;ul&&(l=h,c=u)}return Math.sqrt(l)>n?(ce(t,e,c+1,n,r),ce(t,c,s,n,r)):(r.length||r.push(a),r.push(o)),r}function Ke(t,e=.15,s){const n=[],i=(t.length-1)/3;for(let r=0;r0?ce(n,0,n.length,s):n}function xa(t,e,s){const n=ls(t),i=Tn(Cn(n)),r=[];let a=[],o=[0,0],l=[];const c=()=>{l.length>=4&&a.push(...Ke(l,e)),l=[]},u=()=>{c(),a.length&&(r.push(a),a=[])};for(const{key:d,data:f}of i)switch(d){case"M":u(),o=[f[0],f[1]],a.push(o);break;case"L":c(),a.push([f[0],f[1]]);break;case"C":if(!l.length){const p=a.length?a[a.length-1]:o;l.push([p[0],p[1]])}l.push([f[0],f[1]]),l.push([f[2],f[3]]),l.push([f[4],f[5]]);break;case"Z":c(),a.push([o[0],o[1]]);break}if(u(),!s)return r;const h=[];for(const d of r){const f=Sa(d,s);f.length&&h.push(f)}return h}const F="none";class Pa{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return xn()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,s,n){return{shape:e,sets:s||[],options:n||this.defaultOptions}}line(e,s,n,i,r){const a=this._o(r);return this._d("line",[q(e,s,n,i,a)],a)}rectangle(e,s,n,i,r){const a=this._o(r),o=[],l=An(e,s,n,i,a);if(a.fill){const c=[[e,s],[e+n,s],[e+n,s+i],[e,s+i]];a.fillStyle==="solid"?o.push(Pe([c],a)):o.push(kt([c],a))}return a.stroke!==F&&o.push(l),this._d("rectangle",o,a)}ellipse(e,s,n,i,r){const a=this._o(r),o=[],l=Ln(n,i,a),c=Ve(e,s,a,l);if(a.fill)if(a.fillStyle==="solid"){const u=Ve(e,s,a,l).opset;u.type="fillPath",o.push(u)}else o.push(kt([c.estimatedPoints],a));return a.stroke!==F&&o.push(c.opset),this._d("ellipse",o,a)}circle(e,s,n,i){const r=this.ellipse(e,s,n,n,i);return r.shape="circle",r}linearPath(e,s){const n=this._o(s);return this._d("linearPath",[Ht(e,!1,n)],n)}arc(e,s,n,i,r,a,o=!1,l){const c=this._o(l),u=[],h=Is(e,s,n,i,r,a,o,!0,c);if(o&&c.fill)if(c.fillStyle==="solid"){const d=Object.assign({},c);d.disableMultiStroke=!0;const f=Is(e,s,n,i,r,a,!0,!1,d);f.type="fillPath",u.push(f)}else u.push(ma(e,s,n,i,r,a,c));return c.stroke!==F&&u.push(h),this._d("arc",u,c)}curve(e,s){const n=this._o(s),i=[],r=Os(e,n);if(n.fill&&n.fill!==F)if(n.fillStyle==="solid"){const a=Os(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(a.ops)})}else{const a=[],o=e;if(o.length){const c=typeof o[0][0]=="number"?[o]:o;for(const u of c)u.length<3?a.push(...u):u.length===3?a.push(...Ke(js([u[0],u[0],u[1],u[2]]),10,(1+n.roughness)/2)):a.push(...Ke(js(u),10,(1+n.roughness)/2))}a.length&&i.push(kt([a],n))}return n.stroke!==F&&i.push(r),this._d("curve",i,n)}polygon(e,s){const n=this._o(s),i=[],r=Ht(e,!0,n);return n.fill&&(n.fillStyle==="solid"?i.push(Pe([e],n)):i.push(kt([e],n))),n.stroke!==F&&i.push(r),this._d("polygon",i,n)}path(e,s){const n=this._o(s),i=[];if(!e)return this._d("path",i,n);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const r=n.fill&&n.fill!=="transparent"&&n.fill!==F,a=n.stroke!==F,o=!!(n.simplification&&n.simplification<1),l=o?4-4*(n.simplification||1):(1+n.roughness)/2,c=xa(e,1,l),u=Rs(e,n);if(r)if(n.fillStyle==="solid")if(c.length===1){const h=Rs(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(h.ops)})}else i.push(Pe(c,n));else i.push(kt(c,n));return a&&(o?c.forEach(h=>{i.push(Ht(h,!1,n))}):i.push(u)),this._d("path",i,n)}opsToPath(e,s){let n="";for(const i of e.ops){const r=typeof s=="number"&&s>=0?i.data.map(a=>+a.toFixed(s)):i.data;switch(i.op){case"move":n+=`M${r[0]} ${r[1]} `;break;case"bcurveTo":n+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":n+=`L${r[0]} ${r[1]} `;break}}return n.trim()}toPaths(e){const s=e.sets||[],n=e.options||this.defaultOptions,i=[];for(const r of s){let a=null;switch(r.type){case"path":a={d:this.opsToPath(r),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:F};break;case"fillPath":a={d:this.opsToPath(r),stroke:F,strokeWidth:0,fill:n.fill||F};break;case"fillSketch":a=this.fillSketch(r,n);break}a&&i.push(a)}return i}fillSketch(e,s){let n=s.fillWeight;return n<0&&(n=s.strokeWidth/2),{d:this.opsToPath(e),stroke:s.fill||F,strokeWidth:n,fill:F}}_mergedShape(e){return e.filter((s,n)=>n===0?!0:s.op!=="move")}}const On="http://www.w3.org/2000/svg",Ca=800;let Ce=null;function Ta(){return Ce||(Ce=new Pa().defaultOptions),Ce}function Te(t,e,s){return{...Ta(),maxRandomnessOffset:2,roughness:t==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:t!=="double",disableMultiStrokeFill:!1,seed:e,...s}}function Ea(t){const e=t.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const s=e;if(s.length)switch(s.length){case 4:return[...s];case 1:return[s[0],s[0],s[0],s[0]];case 2:return[...s,...s];case 3:return[...s,s[1]];default:return[s[0],s[1],s[2],s[3]]}}}return[5,5,5,5]}function Aa(t,e,s,n,i,r){const a=[];let o=s.strokeWidth||2;const l=Ea(s),c=s.animate===void 0?!0:!!s.animate,u=s.iterations||2,h=s.rtl?1:0,d=Te("single",r,s);switch(s.type){case"underline":{const f=e.y+e.h+l[2];for(let p=h;pk.setAttribute(M,O);for(const k of f){const M=document.createElementNS(On,"path");if(y(M,"d",k),y(M,"fill","none"),y(M,"stroke",s.color||"currentColor"),y(M,"stroke-width",`${o}`),s.opacity!==void 0&&y(M,"style",`opacity:${s.opacity}`),c){const O=M.getTotalLength();p.push(O),m+=O}t.appendChild(M),g.push(M)}if(c){let k=0;for(let M=0;MsetTimeout(e,t))}function La(t){const e=[];for(const s of t){let n="";for(const i of s.ops){const r=i.data;switch(i.op){case"move":n.trim()&&e.push(n.trim()),n=`M${r[0]} ${r[1]} `;break;case"bcurveTo":n+=`C${r[0]} ${r[1]}, ${r[2]} ${r[3]}, ${r[4]} ${r[5]} `;break;case"lineTo":n+=`L${r[0]} ${r[1]} `;break}}n.trim()&&e.push(n.trim())}return e}function $a(){if(!window.__rno_kf_s){const t=window.__rno_kf_s=document.createElement("style");t.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(t)}}var Oa=Object.defineProperty,Ia=(t,e,s)=>e in t?Oa(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,G=(t,e,s)=>(Ia(t,typeof e!="symbol"?e+"":e,s),s);class Ra{constructor(e,s){G(this,"_state","unattached"),G(this,"_config"),G(this,"_resizing",!1),G(this,"_ro"),G(this,"_seed",xn()),G(this,"_e"),G(this,"_svg"),G(this,"_lastSizes",[]),G(this,"_animationDelay",0),G(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),G(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(s)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,s){this._config[e]!==s&&(this._config[e]=s,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){$a();const e=this._svg=document.createElementNS(On,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const s=e.style;s.position="absolute",s.top="0",s.left="0",s.overflow="visible",s.pointerEvents="none",s.width="100px",s.height="100px";const n=this._config.type==="highlight";if(this._e.insertAdjacentElement(n?"beforebegin":"afterend",e),this._state="not-showing",n){const i=window.getComputedStyle(this._e).position;(!i||i==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const s of e)s.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let s=0;sMath.round(i)===Math.round(r);return n(e.x,s.x)&&n(e.y,s.y)&&n(e.w,s.w)&&n(e.h,s.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,s){let n=this._config;s&&(n=JSON.parse(JSON.stringify(this._config)),n.animate=!1);const i=this.rects();let r=0;i.forEach(c=>r+=c.w);const a=n.animationDuration||Ca;let o=0;const l=[];for(let c=0;cObject.assign(t,{type:"box"}),circle:t=>Object.assign(t,{type:"circle"}),underline:t=>Object.assign(t,{type:"underline"}),highlight:t=>Object.assign(t,{type:"highlight"}),"strike-through":t=>Object.assign(t,{type:"strike-through"}),"crossed-off":t=>Object.assign(t,{type:"crossed-off"}),bracket:t=>Object.assign(t,{type:"bracket"}),strike:t=>Object.assign(t,{type:"strike-through"}),cross:t=>Object.assign(t,{type:"crossed-off"}),crossed:t=>Object.assign(t,{type:"crossed-off"}),linethrough:t=>Object.assign(t,{type:"strike-through"}),"line-through":t=>Object.assign(t,{type:"strike-through"}),black:t=>D(t,"text-black"),blue:t=>D(t,"text-blue"),cyan:t=>D(t,"text-cyan"),gray:t=>D(t,"text-gray"),green:t=>D(t,"text-green"),indigo:t=>D(t,"text-indigo"),lime:t=>D(t,"text-lime"),orange:t=>D(t,"text-orange"),pink:t=>D(t,"text-pink"),purple:t=>D(t,"text-purple"),red:t=>D(t,"text-red"),teal:t=>D(t,"text-teal"),white:t=>D(t,"text-white"),yellow:t=>D(t,"text-yellow")},Na=[[/^delay-?(\d+)?$/,(t,e,s)=>{const n=(t[1]?Number.parseInt(t[1]):s)||300;return e.delay=n,e}],[/^(?:op|opacity)-?(\d+)?$/,(t,e,s)=>{const n=(t[1]?Number.parseInt(t[1]):s)||100;return e.opacity=n/100,e}]];function Da(){return{install(t){t.directive("mark",{name:"v-mark",mounted:(e,s)=>{const n=v(()=>{const a=typeof s.value=="object"&&!Array.isArray(s.value)?{...s.value}:{at:s.value};let o={at:a.at};const l=Object.entries(s.modifiers).filter(([u,h])=>{if(zs[u])return o=zs[u](o,h),!1;for(const[d,f]of Na){const p=u.match(d);if(p)return o=f(p,o,h),!1}return!0});l.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",l);const c={...o,...a};return c.type||(c.type="underline"),c}),i=Ha(e,n.value),r=Qt(e,s,n.value.at);if(!r){console.error("[Slidev] Invalid value for v-mark:",n.value.at);return}wt(()=>{let a;n.value.class&&(i.class=n.value.class),n.value.color&&(i.color=n.value.color);const o=n.value.at;if(o===!0)a=!0;else if(o===!1)a=!1;else if(r)a=r.isActive.value;else{console.error("[Slidev] Invalid value for v-mark:",o);return}a!=null&&(a?i.show():i.hide())})}})}}}const Ws=hi(),Ee=j("slidev-color-schema","auto"),qs=v(()=>C.colorSchema!=="auto"),In=v({get(){return qs.value?C.colorSchema==="dark":Ee.value==="auto"?Ws.value:Ee.value==="dark"},set(t){qs.value||(Ee.value=t===Ws.value?"auto":t?"dark":"light")}}),kl=Ks(In);ue&&St(In,t=>{const e=document.querySelector("html");e.classList.toggle("dark",t),e.classList.toggle("light",!t)},{immediate:!0});function ja(t){const e=v(()=>t.value.path),s=v(()=>I.length),n=v(()=>Number.parseInt(e.value.split(/\//g).slice(-1)[0])||1),i=v(()=>de(n.value)),r=v(()=>I.find(d=>d.path===`${n.value}`)??I.at(-1)??I[0]),a=v(()=>{var d,f,p;return(p=(f=(d=r.value)==null?void 0:d.meta)==null?void 0:f.slide)==null?void 0:p.id}),o=v(()=>{var d,f;return((f=(d=r.value)==null?void 0:d.meta)==null?void 0:f.layout)||(n.value===1?"cover":"default")}),l=v(()=>I.find(d=>d.path===`${Math.min(I.length,n.value+1)}`)),c=v(()=>I.filter(d=>{var f,p;return(p=(f=d.meta)==null?void 0:f.slide)==null?void 0:p.title}).reduce((d,f)=>(is(d,f),d),[])),u=v(()=>rs(c.value,r.value)),h=v(()=>os(u.value));return{rawRoutes:I,route:t,path:e,total:s,clicksContext:ut,clicks:ts,clicksTotal:Ft,currentPage:n,currentPath:i,currentRoute:r,currentSlideId:a,currentLayout:o,nextRoute:l,rawTree:c,treeWithActiveStatuses:u,tree:h,go:ns,downloadPDF:qo,next:wn,nextSlide:es,openInEditor:Vo,prev:Mn,prevSlide:ss}}function Fa(t){return{nav:ja(t),configs:C,themeConfigs:v(()=>C.themeConfig)}}function za(){return{install(t){const e=rt(Fa(Y));t.provide(cn,E("none")),t.provide(ln,e),t.provide(an,v(()=>e.nav.currentPage))}}}const _t=fi(Xo);_t.use(z);_t.use(tr());_t.use(Qo());_t.use(Da());_t.use(za());Jo({app:_t,router:z});_t.mount("#app");export{sl as $,pl as A,Ba as B,Oe as C,ut as D,it as E,vl as F,ml as G,Mt as H,Ua as I,il as J,Ut as K,Cr as L,gl as M,ie as N,ll as O,cl as P,$ as Q,es as R,ss as S,je as T,kl as U,ul as V,Xa as W,ns as X,Ya as Y,Ja as Z,Wt as _,Ga as a,To as a0,el as a1,fe as a2,Qa as a3,Ne as a4,Do as a5,yl as a6,qs as a7,In as a8,gt as a9,oe as aa,dl as ab,al as ac,qo as ad,gn as ae,_l as af,Sr as ag,an as ah,cn as ai,Ka as aj,Qe as ak,Ot as al,De as am,Eo as an,Ao as ao,Lo as ap,Oo as aq,hl as ar,R as as,he as at,Io as au,on as av,Za as b,C as c,rl as d,Dt as e,Ro as f,re as g,fl as h,tl as i,nl as j,ol as k,Va as l,cr as m,wn as n,ln as o,Mn as p,ja as q,Tr as r,Co as s,en as t,bl as u,Y as v,As as w,I as x,Mr as y,sr as z}; -function __vite__mapDeps(indexes) { - if (!__vite__mapDeps.viteFileDeps) { - __vite__mapDeps.viteFileDeps = ["assets/slidev/play-D87gof42.js","assets/modules/vue-CnJIpJLC.js","assets/slidev/SlidesShow-Bc-56y-v.js","assets/modules/unplugin-icons-Bc68jzww.js","assets/slidev/bottom-CwK4VNiR.js","assets/slidev/DrawingPreview-DNd3rGY4.js","assets/modules/shiki-BgDwwTVx.js","assets/modules/shiki-BSchMNmt.css","assets/SlidesShow-Do3DTZt5.css","assets/slidev/PrintStyle-CjilrGsc.js","assets/play-CoA43pdi.css","assets/slidev/print-Bc06WnZk.js","assets/print-Nssgrd1X.css","assets/slidev/print-powiT1-3.js","assets/slidev/NoteDisplay-DLlvXHBg.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/presenter-B7tplmEd.js","assets/slidev/DrawingControls-CnfnWO5l.js","assets/DrawingControls-BO6lw4N5.css","assets/presenter-BRsvFpoV.css"] - } - return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) -} diff --git a/assets/index-CHghrhH4.css b/assets/index-CHghrhH4.css new file mode 100644 index 0000000..0c21073 --- /dev/null +++ b/assets/index-CHghrhH4.css @@ -0,0 +1 @@ +*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border-main=""],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main,[bg-main=""]{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main,.dark [bg-main=""]{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.hover\:bg-active:hover,[hover\:bg-active=""]:hover{background-color:#9ca3af1a}.dark .text-main{--un-text-opacity:1;color:rgb(221 221 221 / var(--un-text-opacity))}.text-main{--un-text-opacity:1;color:rgb(24 24 24 / var(--un-text-opacity))}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .slidev-code-dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:13px}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.i-svg-spinners-90-ring-with-bg{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z' opacity='.25'/%3E%3Cpath fill='currentColor' d='M10.14,1.16a11,11,0,0,0-9,8.92A1.59,1.59,0,0,0,2.46,12,1.52,1.52,0,0,0,4.11,10.7a8,8,0,0,1,6.66-6.61A1.42,1.42,0,0,0,12,2.69h0A1.57,1.57,0,0,0,10.14,1.16Z'%3E%3CanimateTransform attributeName='transform' dur='0.75s' repeatCount='indefinite' type='rotate' values='0 12 12;360 12 12'/%3E%3C/path%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1em;height:1em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none,[pointer-events-none=""]{pointer-events:none}.absolute,[absolute=""]{position:absolute}.fixed,[fixed=""]{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-110\%,[left-110\%=""]{left:110%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5,[right-5=""]{right:1.25rem}.top-0{top:0}.top-1\/2,.top-50\%,[top-50\%=""]{top:50%}.-top-15px{top:-15px}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-100{z-index:100}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-cols-\[35px_1fr\]{grid-template-columns:35px 1fr}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-rows-\[auto_max-content\]{grid-template-rows:auto max-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-1{margin:.25rem}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.my1{margin-top:.25rem;margin-bottom:.25rem}.my4{margin-top:1rem;margin-bottom:1rem}.my5{margin-top:1.25rem;margin-bottom:1.25rem}.mb-4{margin-bottom:1rem}.mb2{margin-bottom:.5rem}.ml--4{margin-left:-1rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr--3,[mr--3=""]{margin-right:-.75rem}.mr--8{margin-right:-2rem}.mr-1,.mr1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-0\.5{margin-top:.125rem}.mt-1,.mt1{margin-top:.25rem}.mt-2,[mt-2=""]{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.aspect-ratio-initial{aspect-ratio:initial}.h-\[40px\],.h-40px{height:40px}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-22px{height:22px}.h-2px{height:2px}.h-3px{height:3px}.h-40{height:10rem}.h-5,.h5,[h5=""]{height:1.25rem}.h-6{height:1.5rem}.h-8,[h-8=""]{height:2rem}.h-9,[h-9=""]{height:2.25rem}.h-full,[h-full=""]{height:100%}.h-max{height:max-content}.h-screen{height:100vh}.h1{height:.25rem}.max-h-full{max-height:100%}.max-w-150{max-width:37.5rem}.max-w-250,[max-w-250=""]{max-width:62.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-h-50,[min-h-50=""]{min-height:12.5rem}.min-w-16{min-width:4rem}.min-w-40{min-width:10rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-\[40px\]{width:40px}.w-0{width:0}.w-13{width:3.25rem}.w-1px{width:1px}.w-200{width:50rem}.w-22px{width:22px}.w-250,[w-250=""]{width:62.5rem}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-7{width:1.75rem}.w-8,[w-8=""]{width:2rem}.w-9,[w-9=""]{width:2.25rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.w-screen{width:100vw}.w1{width:.25rem}.flex,[flex=""],[flex~="~"]{display:flex}.flex-1,[flex-1=""]{flex:1 1 0%}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-y--50\%,[translate-y--50\%=""]{--un-translate-y:-50%;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in 1s linear 1}.animate-duration-100{animation-duration:.1s}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.important\:\[\&_\*\]\:select-none *{-webkit-user-select:none!important;user-select:none!important}.select-none,[select-none=""]{-webkit-user-select:none;user-select:none}[select-none~="default:"]:default{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-after-page{break-after:page}.items-end{align-items:flex-end}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.justify-items-start{justify-items:start}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4,[gap-4=""]{gap:1rem}.gap-5{gap:1.25rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""],[overflow-hidden=""]{overflow:hidden}.of-scroll{overflow:scroll}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap,.ws-nowrap,[ws-nowrap=""]{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border=""],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border-t=""],[border~=t]{border-top-width:1px}.b-dark{--un-border-opacity:1;border-color:rgb(34 34 34 / var(--un-border-opacity))}.border-gray,.dark .dark\:b-gray-400{--un-border-opacity:1;border-color:rgb(156 163 175 / var(--un-border-opacity))}.border-gray-300\/50{border-color:#d1d5db80}.dark .dark\:border-gray-500{--un-border-opacity:1;border-color:rgb(107 114 128 / var(--un-border-opacity))}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded],[rounded=""]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full,[rounded-full=""]{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-lb{border-bottom-left-radius:.25rem}.rounded-tl{border-top-left-radius:.25rem}.b-dashed{border-style:dashed}.\!border-none{border-style:none!important}[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray,[hover\:op100~="bg-gray:5"]{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.dark .dark\:bg-gray-800{--un-bg-opacity:1;background-color:rgb(31 41 55 / var(--un-bg-opacity))}.bg-gray\:10{background-color:#9ca3af1a}.bg-gray\:5{background-color:#9ca3af0d}.bg-gray\/20{background-color:#9ca3af33}.bg-teal-500{--un-bg-opacity:1;background-color:rgb(20 184 166 / var(--un-bg-opacity))}.bg-transparent,[bg-transparent~=","],[bg-transparent~="{"],[bg-transparent~="&&"],[bg-transparent~="text.value"]{background-color:transparent}[bg-transparent~="!valid.value"]{background-color:transparent!important}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.hover\:bg-gray\/20:hover{background-color:#9ca3af33}[bg-transparent~="placeholder:"]::placeholder{background-color:transparent}.bg-opacity-30{--un-bg-opacity:.3}.\!bg-opacity-75,.bg-opacity-75\!{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.dark .dark\:stroke-black{--un-stroke-opacity:1;stroke:rgb(0 0 0 / var(--un-stroke-opacity))}.stroke-white{--un-stroke-opacity:1;stroke:rgb(255 255 255 / var(--un-stroke-opacity))}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2,.p2,[p2=""]{padding:.5rem}.\!p-4{padding:1rem!important}.p3{padding:.75rem}.p4{padding:1rem}.px,.px-4,.px4,[p~=x-4],[px=""]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2,[px2=""]{padding-left:.5rem;padding-right:.5rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px1{padding-left:.25rem;padding-right:.25rem}.px3{padding-left:.75rem;padding-right:.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3,.py3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py0\.5{padding-top:.125rem;padding-bottom:.125rem}.py1\.5{padding-top:.375rem;padding-bottom:.375rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-0{padding-left:0}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.pt5{padding-top:1.25rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3em{font-size:3em}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg,[text-lg=""]{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}[text-sm~="default:"]:default{font-size:.875rem;line-height:1.25rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.dark .dark\:text-red-500{--un-text-opacity:1;color:rgb(239 68 68 / var(--un-text-opacity))}.text-red-700{--un-text-opacity:1;color:rgb(185 28 28 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}.important-text-op-50,.text-opacity-50\!{--un-text-opacity:.5 !important}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.font-mono,[font-mono=""]{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.tab{-moz-tab-size:4;-o-tab-size:4;tab-size:4}[tab~="1032"]{-moz-tab-size:1032;-o-tab-size:1032;tab-size:1032}[tab~="2"]{-moz-tab-size:2;-o-tab-size:2;tab-size:2}[tab~="default:"]:default{-moz-tab-size:4;-o-tab-size:4;tab-size:4}.\!opacity-0,.important\:op0{opacity:0!important}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""],.group:hover .group-hover\:op100{opacity:1}.op15{opacity:.15}.op20{opacity:.2}.op25,.opacity-25,[op25=""]{opacity:.25}.op30{opacity:.3}.op35{opacity:.35}.op40,.opacity-40{opacity:.4}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80,.group:hover .group-hover\:op80{opacity:.8}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.hover\:op100:hover,[hover~=op100]:hover,.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.shadow-xl,[shadow-xl=""]{--un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none,[outline-none=""]{outline:2px solid transparent;outline-offset:2px}.backdrop-blur,.backdrop-blur-8,[backdrop-blur-8=""]{--un-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition,[transition=""]{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300,[duration-300=""]{transition-duration:.3s}.duration-400,[duration-400=""]{transition-duration:.4s}.duration-500{transition-duration:.5s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.view-transition-name{view-transition-name:name}@media (max-width: 767.9px){.lt-md\:hidden{display:none}.lt-md\:flex-col{flex-direction:column}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}}.shiki-magic-move-container{position:relative;white-space:pre}.shiki-magic-move-line-number{opacity:.3;-webkit-user-select:none;user-select:none}.shiki-magic-move-item{display:inline-block;transition:color var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-move,.shiki-magic-move-enter-active,.shiki-magic-move-leave-active{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease")}.shiki-magic-move-container-resize,.shiki-magic-move-container-restyle{transition:all var(--smm-duration, .5s) var(--smm-easing, "ease");transition-delay:calc(var(--smm-duration, .5s) * var(--smm-delay-container, 1))}.shiki-magic-move-move{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-move, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-enter-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-enter, 1)) + var(--smm-stagger, 0));z-index:1}.shiki-magic-move-leave-active{transition-delay:calc(calc(var(--smm-duration, .5s) * var(--smm-delay-leave, 1)) + var(--smm-stagger, 0))}.shiki-magic-move-enter-from,.shiki-magic-move-leave-to{opacity:0}br.shiki-magic-move-leave-active{display:none} diff --git a/assets/index-CeWrdQst.css b/assets/index-CeWrdQst.css deleted file mode 100644 index a705131..0000000 --- a/assets/index-CeWrdQst.css +++ /dev/null @@ -1 +0,0 @@ -.slidev-layout.end[data-v-e7ce0abf]{display:grid;height:100%;-webkit-user-select:none;user-select:none;place-content:center;--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity));text-align:center;font-size:1.25rem;line-height:1.75rem;--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity));--un-text-opacity:.85;letter-spacing:.1em}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.prose :where(h1,h2,h3,h4,h5,h6):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-headings);font-weight:600;line-height:1.25}.prose :where(a):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links);text-decoration:underline;font-weight:500}.prose :where(a code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-links)}.prose :where(p,ul,ol,pre):not(:where(.not-prose,.not-prose *)){margin:1em 0;line-height:1.75}.prose :where(blockquote):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding-left:1em;font-style:italic;border-left:.25em solid var(--un-prose-borders)}.prose :where(h1):not(:where(.not-prose,.not-prose *)){margin:1rem 0;font-size:2.25em}.prose :where(h2):not(:where(.not-prose,.not-prose *)){margin:1.75em 0 .5em;font-size:1.75em}.prose :where(h3):not(:where(.not-prose,.not-prose *)){margin:1.5em 0 .5em;font-size:1.375em}.prose :where(h4):not(:where(.not-prose,.not-prose *)){margin:1em 0;font-size:1.125em}.prose :where(img,video):not(:where(.not-prose,.not-prose *)){max-width:100%}.prose :where(figure,picture):not(:where(.not-prose,.not-prose *)){margin:1em 0}.prose :where(figcaption):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-captions);font-size:.875em}.prose :where(code):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);font-size:.875em;font-weight:600;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):before,.prose :where(:not(pre)>code):not(:where(.not-prose,.not-prose *)):after{content:"`"}.prose :where(pre):not(:where(.not-prose,.not-prose *)){padding:1.25rem 1.5rem;overflow-x:auto;border-radius:.375rem}.prose :where(pre,code):not(:where(.not-prose,.not-prose *)){white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;hyphens:none;background:transparent}.prose :where(pre code):not(:where(.not-prose,.not-prose *)){font-weight:inherit}.prose :where(ol,ul):not(:where(.not-prose,.not-prose *)){padding-left:1.25em}.prose :where(ol):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ol[type=A]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where(.not-prose,.not-prose *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where(.not-prose,.not-prose *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where(.not-prose,.not-prose *)){list-style-type:decimal}.prose :where(ul):not(:where(.not-prose,.not-prose *)){list-style-type:disc}.prose :where(ol>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(ul>li):not(:where(.not-prose,.not-prose *))::marker,.prose :where(summary):not(:where(.not-prose,.not-prose *))::marker{color:var(--un-prose-lists)}.prose :where(hr):not(:where(.not-prose,.not-prose *)){margin:2em 0;border:1px solid var(--un-prose-hr)}.prose :where(table):not(:where(.not-prose,.not-prose *)){display:block;margin:1em 0;border-collapse:collapse;overflow-x:auto}.prose :where(tr):not(:where(.not-prose,.not-prose *)):nth-child(2n){background:var(--un-prose-bg-soft)}.prose :where(td,th):not(:where(.not-prose,.not-prose *)){border:1px solid var(--un-prose-borders);padding:.625em 1em}.prose :where(abbr):not(:where(.not-prose,.not-prose *)){cursor:help}.prose :where(kbd):not(:where(.not-prose,.not-prose *)){color:var(--un-prose-code);border:1px solid;padding:.25rem .5rem;font-size:.875em;border-radius:.25rem}.prose :where(details):not(:where(.not-prose,.not-prose *)){margin:1em 0;padding:1.25rem 1.5rem;background:var(--un-prose-bg-soft)}.prose :where(summary):not(:where(.not-prose,.not-prose *)){cursor:pointer;font-weight:600}.prose{color:var(--un-prose-body);max-width:65ch}.container{width:100%}.border-main,.dark .dark\:border-main,.dark [border~="dark:main"],.dark [dark\:border~=main],[border~=main]{border-color:#9ca3af33}.border-primary,.hover\:border-primary:hover{border-color:var(--slidev-theme-primary)}.bg-active{background-color:#9ca3af1a}.bg-main{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity))}.dark .bg-main{--un-bg-opacity:1;background-color:rgb(18 18 18 / var(--un-bg-opacity))}.bg-primary{background-color:var(--slidev-theme-primary)}.text-primary,[text-primary=""]{color:var(--slidev-theme-primary)}@media print{.print-container{width:100%}}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 640px){@media print{.print-container{max-width:640px}}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 768px){@media print{.print-container{max-width:768px}}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1024px){@media print{.print-container{max-width:1024px}}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1280px){@media print{.print-container{max-width:1280px}}}@media (min-width: 1536px){.container{max-width:1536px}}@media (min-width: 1536px){@media print{.print-container{max-width:1536px}}}:root{--slidev-code-background: #f5f5f5;--slidev-code-foreground: #1b1b1b;--slidev-code-font-family: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--slidev-code-padding: 8px;--slidev-code-font-size: 12px;--slidev-code-line-height: 18px;--slidev-code-radius: 4px;--slidev-code-margin: 4px 0;--slidev-theme-primary: #3ab9d5;--slidev-transition-duration: .5s;--slidev-slide-container-background: black;--slidev-controls-foreground: white}html.dark{--slidev-code-background: #1b1b1b;--slidev-code-foreground: #eee}html,body,#app,#page-root{padding:0;margin:0;width:100%;height:100vh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;font-family:Avenir Next,Nunito Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}html{background:transparent}.slidev-icon-btn{aspect-ratio:1;display:inline-block;-webkit-user-select:none;user-select:none;outline:none;cursor:pointer;border-radius:.25rem;padding:.25rem;vertical-align:middle;opacity:.75;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width: 768px){.slidev-icon-btn{padding:.5rem}}.slidev-icon-btn:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.1;opacity:1}.slidev-icon-btn.shallow{opacity:.3}.slidev-icon-btn.active{opacity:1}.slidev-icon-btn.disabled{opacity:.25;pointer-events:none}.slidev-vclick-target{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-duration:.1s}.slidev-vclick-hidden{opacity:0!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.slidev-vclick-fade{opacity:.5}.slidev-icon{display:inline-block;vertical-align:sub;line-height:1em}.slidev-page{position:relative;top:0;left:0;right:0;width:100%}.slidev-note-with-clicks .slidev-note-fade{color:#888888ab}.slidev-note-click-mark{-webkit-user-select:none;user-select:none;font-size:.7em;display:inline-flex;align-items:center;border-width:1px;border-color:transparent;border-radius:.25rem;background-color:#a78bfa1a;padding-left:.25rem;padding-right:.25rem;--un-text-opacity:1;color:rgb(167 139 250 / var(--un-text-opacity));font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-note-click-mark.slidev-note-click-mark-active{border-width:1px;--un-border-opacity:1;border-color:rgb(167 139 250 / var(--un-border-opacity))}.slidev-note-click-mark.slidev-note-click-mark-past{filter:saturate(0);opacity:.5}.slidev-note-click-mark.slidev-note-click-mark-future{opacity:.5}.slidev-note-click-mark:before{content:"";display:inline-block;--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 32 32' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:1.2em;height:1.2em;opacity:.8}.slidev-note-click-mark:after{content:attr(data-clicks);display:inline-block;transform:translateY(.1em)}.rough-annotation{transform:scale(calc(1 / var(--slidev-slide-scale)))}html.dark:root{color-scheme:dark}html.dark .shiki{color:var(--shiki-dark, inherit);--twoslash-popup-bg: var(--shiki-dark-bg, inherit)}html.dark .shiki span{color:var(--shiki-dark)}html:not(.dark) .shiki{color:var(--shiki-light, inherit);--twoslash-popup-bg: var(--shiki-light-bg, inherit)}html:not(.dark) .shiki span{color:var(--shiki-light)}.twoslash-meta-line.twoslash-popover-line{margin-top:-10px}.slidev-code-wrapper{margin:var(--slidev-code-margin)!important;scroll-padding:var(--slidev-code-padding)}.slidev-code-wrapper:-webkit-scrollbar{width:0px}.slidev-code{font-family:var(--slidev-code-font-family)!important;padding:var(--slidev-code-padding)!important;font-size:var(--slidev-code-font-size)!important;line-height:var(--slidev-code-line-height)!important;border-radius:var(--slidev-code-radius)!important;background:var(--slidev-code-background);overflow:auto}.slidev-code .line.dishonored{opacity:.3;pointer-events:none}.slidev-code-line-numbers .slidev-code code{counter-reset:step;counter-increment:step calc(var(--start, 1) - 1)}.slidev-code-line-numbers .slidev-code code .line:before{content:counter(step);counter-increment:step;display:inline-block;text-align:right;margin-right:1.5rem;width:1rem;--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.dark .slidev-code-line-numbers .slidev-code code .line:before{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity))}.slidev-layout :not(pre)>code{font-size:.9em;background:var(--slidev-code-background);border-radius:var(--slidev-code-radius);padding:.125rem .375rem;font-weight:300}.slidev-layout :not(pre)>code:before{margin-right:-.08em}.katex,.katex :after,.katex :before{border-color:currentColor}.CodeMirror pre.CodeMirror-placeholder{opacity:.4}.slidev-katex-wrapper .mord.dishonored{opacity:.3}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active,.slide-up-enter-active,.slide-up-leave-active,.slide-down-enter-active,.slide-down-leave-active{transition:all var(--slidev-transition-duration) ease}.slide-left-enter-from,.slide-right-leave-to{transform:translate(100%)}.slide-left-leave-to,.slide-right-enter-from{transform:translate(-100%)}.slide-up-enter-from,.slide-down-leave-to{transform:translateY(100%)}.slide-up-leave-to,.slide-down-enter-from{transform:translateY(-100%)}.fade-enter-active,.fade-leave-active{transition:opacity var(--slidev-transition-duration) ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-out-leave-active{transition:opacity calc(var(--slidev-transition-duration) * .6) ease-out}.fade-out-enter-active{transition:opacity calc(var(--slidev-transition-duration) * .8) ease-in;transition-delay:calc(var(--slidev-transition-duration) * .6)}.fade-out-enter-from,.fade-out-leave-to{opacity:0}div[widgetid=messageoverlay]{transform:translateY(calc(100% * (var(--slidev-slide-scale) - 1)))}.slidev-monaco-container{position:relative;margin:var(--slidev-code-margin);padding:var(--slidev-code-padding);line-height:var(--slidev-code-line-height);border-radius:var(--slidev-code-radius);background:var(--slidev-code-background)}.slidev-monaco-container .monaco-editor{--monaco-monospace-font: var(--slidev-code-font-family);--vscode-editor-background: var(--slidev-code-background);--vscode-editorGutter-background: var(--slidev-code-background)}.slidev-monaco-container .monaco-editor a,.slidev-monaco-container .monaco-editor a:hover{border-bottom:none}.slidev-layout{height:100%;padding:2.5rem 3.5rem;font-size:1.1rem}.slidev-layout pre,.slidev-layout code{-webkit-user-select:text;user-select:text}.slidev-layout code{font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1{margin-bottom:1rem;font-size:2.25rem;line-height:2.5rem}.slidev-layout h6{padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout p{margin-top:1rem;margin-bottom:1rem;line-height:1.5rem}.slidev-layout ul{list-style:square}.slidev-layout ol{list-style:decimal}.slidev-layout li{line-height:1.8em}.slidev-layout blockquote{background:var(--slidev-code-background);color:var(--slidev-code-foreground);border-left-width:1px;border-color:var(--slidev-theme-primary);border-radius:.25rem;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem}.slidev-layout blockquote>*{margin-top:0;margin-bottom:0}.slidev-layout table{width:100%}.slidev-layout tr{border-bottom-width:1px;border-color:#9ca3af33}.slidev-layout th{text-align:left;font-weight:400}.slidev-layout a{border-bottom-width:1px;border-color:currentColor;border-style:dashed}.slidev-layout a:hover{border-style:solid;color:var(--slidev-theme-primary)}.slidev-layout td,.slidev-layout th{padding:.75rem .5rem}.slidev-layout b,.slidev-layout strong{font-weight:600}.slidev-layout kbd{border-width:1px;border-bottom-width:2px;border-color:#9ca3af33;border-radius:.25rem;--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity));--un-bg-opacity:.05;padding:.125rem .25rem;font-size:.75rem;line-height:1rem;font-family:Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.slidev-layout h1,[dir=ltr] h1,.slidev-layout [dir=ltr] h1,.slidev-layout h6,[dir=ltr] h6,.slidev-layout [dir=ltr] h6{margin-left:-.05em;margin-right:0}.slidev-layout li,[dir=ltr] li,.slidev-layout [dir=ltr] li{margin-left:1.1em;margin-right:0;padding-left:.2em;padding-right:0}[dir=rtl] h1,.slidev-layout [dir=rtl] h1,[dir=rtl] h6,.slidev-layout [dir=rtl] h6{margin-right:-.05em;margin-left:0}[dir=rtl] li,.slidev-layout [dir=rtl] li{margin-right:1.1em;margin-left:0;padding-right:.2em;padding-left:0}.slidev-layout h1+p{margin-top:-.5rem;margin-bottom:1rem;opacity:.5}.slidev-layout p+h2,.slidev-layout ul+h2,.slidev-layout table+h2{margin-top:2.5rem}.slidev-layout h1{margin-bottom:1rem;margin-left:-.05em;font-size:2.25rem;line-height:2.5rem}.slidev-layout h2{font-size:1.875rem;line-height:2.25rem}.slidev-layout h3{font-size:1.5rem;line-height:2rem}.slidev-layout h4{font-size:1.25rem;line-height:1.75rem}.slidev-layout h5{font-size:1rem;line-height:1.5rem}.slidev-layout h6{margin-left:-.05em;padding-top:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.slidev-layout h6:not(.opacity-100){opacity:.4}.slidev-layout.cover,.slidev-layout.intro{display:grid;height:100%}.slidev-layout.cover h1,.slidev-layout.intro h1{font-size:3.75rem;line-height:1;line-height:5rem}.slidev-layout.fact{display:grid;height:100%;text-align:center}.slidev-layout.fact h1{font-size:6rem;line-height:1;font-weight:700}.slidev-layout.fact h1+p{font-size:1.5rem;line-height:2rem;font-weight:700}.slidev-layout.statement{display:grid;height:100%;text-align:center}.slidev-layout.statement h1{font-size:3.75rem;line-height:1;font-weight:700}.slidev-layout.quote{display:grid;height:100%}.slidev-layout.quote h1+p{margin-top:.5rem}.slidev-layout.section h1{font-size:3.75rem;line-height:1;font-weight:500;line-height:5rem}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}:root{--cm-scheme: light;--cm-foreground: #6e6e6e;--cm-background: #f4f4f4;--cm-comment: #a8a8a8;--cm-string: #555555;--cm-literal: #333333;--cm-keyword: #000000;--cm-function: #4f4f4f;--cm-deleted: #333333;--cm-class: #333333;--cm-builtin: #757575;--cm-property: #333333;--cm-namespace: #4f4f4f;--cm-punctuation: #ababab;--cm-decorator: var(--cm-class);--cm-operator: var(--cm-punctuation);--cm-number: var(--cm-literal);--cm-boolean: var(--cm-literal);--cm-variable: var(--cm-literal);--cm-constant: var(--cm-literal);--cm-symbol: var(--cm-literal);--cm-interpolation: var(--cm-literal);--cm-selector: var(--cm-keyword);--cm-keyword-control: var(--cm-keyword);--cm-regex: var(--cm-string);--cm-json-property: var(--cm-property);--cm-inline-background: var(--cm-background);--cm-comment-style: italic;--cm-url-decoration: underline;--cm-line-number: #a5a5a5;--cm-line-number-gutter: #333333;--cm-line-highlight-background: #eeeeee;--cm-selection-background: #aaaaaa;--cm-marker-color: var(--cm-foreground);--cm-marker-opacity: .4;--cm-marker-font-size: .8em;--cm-font-size: 1em;--cm-line-height: 1.5em;--cm-font-family: monospace;--cm-inline-font-size: var(--cm-font-size);--cm-block-font-size: var(--cm-font-size);--cm-tab-size: 2;--cm-block-padding-x: 1em;--cm-block-padding-y: 1em;--cm-block-margin-x: 0;--cm-block-margin-y: .5em;--cm-block-radius: .3em;--cm-inline-padding-x: .3em;--cm-inline-padding-y: .1em;--cm-inline-radius: .3em}.cm-s-vars.CodeMirror{background-color:var(--cm-background);color:var(--cm-foreground)}.cm-s-vars .CodeMirror-gutters{background:var(--cm-line-number-gutter);color:var(--cm-line-number);border:none}.cm-s-vars .CodeMirror-guttermarker,.cm-s-vars .CodeMirror-guttermarker-subtle,.cm-s-vars .CodeMirror-linenumber{color:var(--cm-line-number)}.cm-s-vars div.CodeMirror-selected,.cm-s-vars.CodeMirror-focused div.CodeMirror-selected{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::selection,.cm-s-vars .CodeMirror-line>span::selection,.cm-s-vars .CodeMirror-line>span>span::selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-line::-moz-selection,.cm-s-vars .CodeMirror-line>span::-moz-selection,.cm-s-vars .CodeMirror-line>span>span::-moz-selection{background:var(--cm-selection-background)}.cm-s-vars .CodeMirror-activeline-background{background:var(--cm-line-highlight-background)}.cm-s-vars .cm-keyword{color:var(--cm-keyword)}.cm-s-vars .cm-variable,.cm-s-vars .cm-variable-2,.cm-s-vars .cm-variable-3,.cm-s-vars .cm-type{color:var(--cm-variable)}.cm-s-vars .cm-builtin{color:var(--cm-builtin)}.cm-s-vars .cm-atom{color:var(--cm-literal)}.cm-s-vars .cm-number{color:var(--cm-number)}.cm-s-vars .cm-def{color:var(--cm-decorator)}.cm-s-vars .cm-string,.cm-s-vars .cm-string-2{color:var(--cm-string)}.cm-s-vars .cm-comment{color:var(--cm-comment)}.cm-s-vars .cm-tag{color:var(--cm-builtin)}.cm-s-vars .cm-meta{color:var(--cm-namespace)}.cm-s-vars .cm-attribute,.cm-s-vars .cm-property{color:var(--cm-property)}.cm-s-vars .cm-qualifier{color:var(--cm-keyword)}.cm-s-vars .cm-error{color:var(--prism-deleted)}.cm-s-vars .cm-operator,.cm-s-vars .cm-bracket{color:var(--cm-punctuation)}.cm-s-vars .CodeMirror-matchingbracket{text-decoration:underline}.cm-s-vars .CodeMirror-cursor{border-left:1px solid currentColor}:root{--cm-scheme: var(--prism-scheme);--cm-foreground: var(--prism-foreground);--cm-background: var(--prism-background);--cm-comment: var(--prism-comment);--cm-string: var(--prism-string);--cm-literal: var(--prism-literal);--cm-keyword: var(--prism-keyword);--cm-function: var(--prism-function);--cm-deleted: var(--prism-deleted);--cm-class: var(--prism-class);--cm-builtin: var(--prism-builtin);--cm-property: var(--prism-property);--cm-namespace: var(--prism-namespace);--cm-punctuation: var(--prism-punctuation);--cm-decorator: var(--prism-decorator);--cm-operator: var(--prism-operator);--cm-number: var(--prism-number);--cm-boolean: var(--prism-boolean);--cm-variable: var(--prism-variable);--cm-constant: var(--prism-constant);--cm-symbol: var(--prism-symbol);--cm-interpolation: var(--prism-interpolation);--cm-selector: var(--prism-selector);--cm-keyword-control: var(--prism-keyword-control);--cm-regex: var(--prism-regex);--cm-json-property: var(--prism-json-property);--cm-inline-background: var(--prism-inline-background);--cm-comment-style: var(--prism-comment-style);--cm-url-decoration: var(--prism-url-decoration);--cm-line-number: var(--prism-line-number);--cm-line-number-gutter: var(--prism-line-number-gutter);--cm-line-highlight-background: var(--prism-line-highlight-background);--cm-selection-background: var(--prism-selection-background);--cm-marker-color: var(--prism-marker-color);--cm-marker-opacity: var(--prism-marker-opacity);--cm-marker-font-size: var(--prism-marker-font-size);--cm-font-size: var(--prism-font-size);--cm-line-height: var(--prism-line-height);--cm-font-family: var(--prism-font-family);--cm-inline-font-size: var(--prism-inline-font-size);--cm-block-font-size: var(--prism-block-font-size);--cm-tab-size: var(--prism-tab-size);--cm-block-padding-x: var(--prism-block-padding-x);--cm-block-padding-y: var(--prism-block-padding-y);--cm-block-margin-x: var(--prism-block-margin-x);--cm-block-margin-y: var(--prism-block-margin-y);--cm-block-radius: var(--prism-block-radius);--cm-inline-padding-x: var(--prism-inline-padding-x);--cm-inline-padding-y: var(--prism-inline-padding-y);--cm-inline-radius: var(--prism-inline-radius)}:root{--prism-font-family: var(--slidev-code-font-family);--prism-background: var(--slidev-code-background)}html:not(.dark){--prism-foreground: #393a34;--prism-comment: #a0ada0;--prism-string: #b56959;--prism-literal: #2f8a89;--prism-number: #296aa3;--prism-keyword: #1c6b48;--prism-function: #6c7834;--prism-boolean: #1c6b48;--prism-constant: #a65e2b;--prism-deleted: #a14f55;--prism-class: #2993a3;--prism-builtin: #ab5959;--prism-property: #b58451;--prism-namespace: #b05a78;--prism-punctuation: #8e8f8b;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #698c96}html.dark{--prism-foreground: #d4cfbf;--prism-comment: #758575;--prism-string: #d48372;--prism-literal: #429988;--prism-keyword: #4d9375;--prism-boolean: #1c6b48;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #a1b567;--prism-deleted: #a14f55;--prism-class: #54b1bf;--prism-builtin: #e0a569;--prism-property: #dd8e6e;--prism-namespace: #db889a;--prism-punctuation: #858585;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444}:root{--twoslash-popup-bg: var(--slidev-code-background);--twoslash-popup-color: var(--slidev-code-foreground);--twoslash-docs-color: inherit;--twoslash-docs-font: inherit;--twoslash-code-font: "Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--twoslash-underline-color: #8888;--twoslash-border-color: #8888;--twoslash-cursor-color: var(--slidev-theme-primary);--twoslash-matched-color: var(--slidev-theme-primary)}.twoslash-popup-container{font-size:calc(13px * var(--slidev-slide-scale, 1))}.twoslash-popup-container .twoslash-popup-code{font-size:.85em}.twoslash-floating .twoslash-popup-docs-tags .twoslash-popup-docs-tag-name{color:inherit;opacity:.5}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute,[absolute=""]{position:absolute}.fixed{position:fixed}.relative,[relative=""]{position:relative}.inset-0,[inset-0=""]{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-4{right:1rem}.right-5{right:1.25rem}.top-0{top:0}.top-1\/2{top:50%}.-top-20{top:-5rem}.top-4{top:1rem}.top-5{top:1.25rem}.-z-1{z-index:-1}.z-1,[z-1=""]{z-index:1}.z-10,[z-10=""]{z-index:10}.z-20{z-index:20}.grid{display:grid}.grid-cols-\[1fr_max-content\]{grid-template-columns:1fr max-content}.grid-rows-\[1fr_max-content\]{grid-template-rows:1fr max-content}.grid-rows-\[1fr_min-content\]{grid-template-rows:1fr min-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m-1{margin:.25rem}.m-4{margin:1rem}.m-auto{margin:auto}.children\:my-auto>*,.my-auto{margin-top:auto;margin-bottom:auto}.mb-10{margin-bottom:2.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-0{margin-left:0}.-ml-2{margin-left:-.5rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.ms{margin-inline-start:1rem}.-mt-0\.5{margin-top:-.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.aspect-ratio-initial{aspect-ratio:initial}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-0\.7{height:.175rem}.h-22px{height:22px}.h-3px{height:3px}.h-40px{height:40px}.h-5,.h5,[h5=""]{height:1.25rem}.h-6{height:1.5rem}.h-full,[h-full=""]{height:100%}.h1{height:.25rem}.h2{height:.5rem}.max-w-150{max-width:37.5rem}.max-w-90,[max-w-90=""]{max-width:22.5rem}.max-w-full{max-width:100%}.min-w-16{min-width:4rem}.min-w-90,[min-w-90=""]{min-width:22.5rem}.w-1px{width:1px}.w-22px{width:22px}.w-4,[w-4=""]{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-90,[w-90=""]{width:22.5rem}.w-full,[w-full=""]{width:100%}.flex,[flex=""],[flex~="~"]{display:flex}.flex-auto,[flex-auto=""]{flex:1 1 auto}.flex-none{flex:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.translate-0{--un-translate-x:0;--un-translate-y:0;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.-rotate-45{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:-45deg;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-102{--un-scale-x:1.02;--un-scale-y:1.02;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.scale-85{--un-scale-x:.85;--un-scale-y:.85;transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.cursor-default{cursor:default}.cursor-pointer,[cursor-pointer=""]{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.resize-none{resize:none}.break-inside-avoid-page{break-inside:avoid-page}.break-after-page{break-after:page}.place-content-center{place-content:center}.items-center,[items-center=""]{align-items:center}.justify-center,[justify-center=""]{justify-content:center}.gap-2,[flex~=gap-2]{gap:.5rem}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-4{gap:1rem}.gap-x-8{column-gap:2rem}.gap-y-4{row-gap:1rem}.of-auto,.overflow-auto{overflow:auto}.of-hidden,.overflow-hidden,[of-hidden=""]{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.b,.border,.dark .dark\:border,.dark [dark\:border~="~"],[border~="~"]{border-width:1px}[border~="0"]{border-width:0px}.border-2{border-width:2px}[border~=y]{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-t,[border~=t]{border-top-width:1px}.border-gray-300\/50{border-color:#d1d5db80}.border-transparent,[border~=transparent]{border-color:transparent}.border-white{--un-border-opacity:1;border-color:rgb(255 255 255 / var(--un-border-opacity))}.rounded,[border~=rounded]{border-radius:.25rem}.rounded-1\/2{border-radius:50%}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.\!border-none{border-style:none!important}.bg-black,[bg~=black]{--un-bg-opacity:1;background-color:rgb(0 0 0 / var(--un-bg-opacity))}.bg-current{background-color:currentColor}.bg-gray\/20{background-color:#9ca3af33}.bg-transparent{background-color:transparent}.hover\:bg-gray-400:hover{--un-bg-opacity:1;background-color:rgb(156 163 175 / var(--un-bg-opacity))}.\!bg-opacity-75{--un-bg-opacity:.75 !important}[bg~=opacity-80]{--un-bg-opacity:.8}.hover\:bg-opacity-10:hover{--un-bg-opacity:.1}[stroke-width~="1"]{stroke-width:1px}[stroke-width~="2"]{stroke-width:2px}[stroke-width~="3"]{stroke-width:3px}.p-1{padding:.25rem}.p-16{padding:4rem}.p-2{padding:.5rem}.\!p-4{padding:1rem!important}.px,.px-4,.px4,[p~=x-4]{padding-left:1rem;padding-right:1rem}.py-2,[p~=y-2]{padding-top:.5rem;padding-bottom:.5rem}.px-2,.px2{padding-left:.5rem;padding-right:.5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-1,.py1{padding-top:.25rem;padding-bottom:.25rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-4{padding-top:1rem;padding-bottom:1rem}[p~=l-1]{padding-left:.25rem}[p~=r-2]{padding-right:.5rem}.pt-\.5,[p~="t-0.5"]{padding-top:.125rem}.pb2{padding-bottom:.5rem}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.text-center{text-align:center}.text-right,[text-right=""]{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm,[text-sm=""],[text~=sm]{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs,[text-xs=""]{font-size:.75rem;line-height:1rem}.text-\$slidev-controls-foreground{color:var(--slidev-controls-foreground)}.text-black{--un-text-opacity:1;color:rgb(0 0 0 / var(--un-text-opacity))}.text-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}.\!text-current{color:currentColor!important}.text-cyan{--un-text-opacity:1;color:rgb(34 211 238 / var(--un-text-opacity))}.text-gray,.text-gray-400{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity))}.text-green{--un-text-opacity:1;color:rgb(74 222 128 / var(--un-text-opacity))}.text-green-500{--un-text-opacity:1;color:rgb(34 197 94 / var(--un-text-opacity))}.text-indigo{--un-text-opacity:1;color:rgb(129 140 248 / var(--un-text-opacity))}.text-lime{--un-text-opacity:1;color:rgb(163 230 53 / var(--un-text-opacity))}.text-orange{--un-text-opacity:1;color:rgb(251 146 60 / var(--un-text-opacity))}.text-pink{--un-text-opacity:1;color:rgb(244 114 182 / var(--un-text-opacity))}.text-purple{--un-text-opacity:1;color:rgb(192 132 252 / var(--un-text-opacity))}.text-red,.text-red-400{--un-text-opacity:1;color:rgb(248 113 113 / var(--un-text-opacity))}.text-teal{--un-text-opacity:1;color:rgb(45 212 191 / var(--un-text-opacity))}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity))}.text-yellow{--un-text-opacity:1;color:rgb(250 204 21 / var(--un-text-opacity))}.text-opacity-85{--un-text-opacity:.85}.font-bold,[font-bold=""]{font-weight:700}.leading-2{line-height:.5rem}.tracking-widest{letter-spacing:.1em}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.op0,.opacity-0,[op0=""]{opacity:0}.op100,[op100=""]{opacity:1}.op20{opacity:.2}.op30{opacity:.3}.op50,.opacity-50,[op50=""]{opacity:.5}.op80,.opacity-80{opacity:.8}.\!opacity-0{opacity:0!important}.opacity-10{opacity:.1}.\!opacity-100{opacity:1!important}.opacity-25{opacity:.25}.opacity-40{opacity:.4}[hover~=op100]:hover,.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.shadow,[shadow~="~"]{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.\!backdrop-blur-0px{--un-backdrop-blur:blur(0px) !important;-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important;backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)!important}.backdrop-blur-5px{--un-backdrop-blur:blur(5px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@media (max-width: 767.9px){.lt-md\:hidden{display:none}}@media (min-width: 1024px){.lg\:m-2{margin:.5rem}.lg\:gap-1{gap:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-4{padding:1rem}} diff --git a/assets/index-DzKdcfdM.js b/assets/index-DzKdcfdM.js new file mode 100644 index 0000000..fd2b1b5 --- /dev/null +++ b/assets/index-DzKdcfdM.js @@ -0,0 +1,51 @@ +const __vite__fileDeps=["assets/slidev/1-BnBH_Ut6.js","assets/modules/vue-BeRk5K_R.js","assets/slidev/context-B3nm4ubA.js","assets/modules/shiki-DYdhqpMF.js","assets/modules/shiki-BSchMNmt.css","assets/slidev/2-Ckd0K9NJ.js","assets/slidev/entry-CKFTiWa6.js","assets/modules/unplugin-icons-DSU1Mbun.js","assets/slidev/overview-BB_84WVF.js","assets/slidev/DrawingPreview-Bmb4p__3.js","assets/DrawingPreview-DJ7dOR_1.css","assets/slidev/IconButton-CUT4OjmU.js","assets/slidev/NoteDisplay-BC7pymlx.js","assets/NoteDisplay-C6AkVv8T.css","assets/slidev/ClicksSlider-BsCAZ8JI.js","assets/ClicksSlider-qq1Ub2AL.css","assets/slidev/notes-B60u_QOj.js","assets/slidev/presenter-CnnG5HWp.js","assets/slidev/ContextMenu-BLzLgP19.js","assets/ContextMenu-DSnskk1a.css","assets/slidev/DrawingControls-Cg1iC9rP.js","assets/DrawingControls-C5T1oZL5.css","assets/presenter-D5oC5Gjj.css","assets/slidev/play-CJ9_ka8j.js","assets/play-CoA43pdi.css"],__vite__mapDeps=i=>i.map(i=>__vite__fileDeps[i]); +import{t as P,y as w,n as nt,z as _n,A as Jt,B as Ns,C as Me,D as K,E as Mn,G as On,H as Pn,I as Hs,J as ae,K as An,L as Tn,o as Rs,b as En,M as Gt,N as pt,O as $n,P as Cn,Q as Y,R as Ds,S as gt,T as Fs,U as Ln,d as jn,r as In,c as Nn,V as Hn,W as Rn,X as Dn,Y as Fn,Z as Bn,_ as Wn,$ as zn,a0 as Vn,a1 as qn,a2 as xn,a3 as Un,a4 as Kn,a5 as Jn,u as Gn}from"./modules/vue-BeRk5K_R.js";import{T as Qn}from"./modules/shiki-DYdhqpMF.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const o of i)if(o.type==="childList")for(const r of o.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&n(r)}).observe(document,{childList:!0,subtree:!0});function t(i){const o={};return i.integrity&&(o.integrity=i.integrity),i.referrerPolicy&&(o.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?o.credentials="include":i.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function n(i){if(i.ep)return;i.ep=!0;const o=t(i);fetch(i.href,o)}})();function De(s,e,t){return Math.min(t,Math.max(e,s))}function Zn(...s){return Xn(s).reduce((e,t)=>e+t,0)}function Yn(s){return s=s??[],Array.isArray(s)?s:[s]}function Xn(s){return Yn(s).flat(1)}function ta(...s){let e,t,n;s.length===1?(e=0,n=1,[t]=s):[e,t,n=1]=s;const i=[];let o=e;for(;oe(t,n)).filter(ei))}const j={theme:"default",title:"Software Architecture",titleTemplate:"%s - Slidev",addons:[],remoteAssets:!1,monaco:!0,monacoTypesSource:"local",monacoTypesAdditionalPackages:[],monacoRunAdditionalDeps:[],download:!1,export:{},info:!1,highlighter:"shiki",twoslash:!0,lineNumbers:!1,colorSchema:"auto",routerMode:"history",aspectRatio:1.7777777777777777,canvasWidth:980,exportFilename:"",selectable:!1,themeConfig:{},fonts:{sans:['"Avenir Next"','"Nunito Sans"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto",'"Helvetica Neue"',"Arial",'"Noto Sans"',"sans-serif",'"Apple Color Emoji"','"Segoe UI Emoji"','"Segoe UI Symbol"','"Noto Color Emoji"'],serif:["ui-serif","Georgia","Cambria",'"Times New Roman"',"Times","serif"],mono:['"Fira Code"',"ui-monospace","SFMono-Regular","Menlo","Monaco","Consolas",'"Liberation Mono"','"Courier New"',"monospace"],webfonts:["Avenir Next","Nunito Sans","Fira Code"],provider:"google",local:["Avenir Next"],italic:!1,weights:["200","400","600"]},favicon:"https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png",drawings:{enabled:!0,persist:!1,presenterOnly:!1,syncAll:!0},plantUmlServer:"https://www.plantuml.com/plantuml",codeCopy:!0,record:"dev",css:"unocss",presenter:!0,htmlAttrs:{},editor:!0,layout:"cover"},sa="build",Bs=P(j.aspectRatio??16/9),si=P(j.canvasWidth??980),na=w(()=>Math.ceil(si.value/Bs.value)),ni=w(()=>ti(j.themeConfig||{},(s,e)=>[`--slidev-theme-${s}`,e]));function jt(s,e={},t){for(const n in s){const i=s[n],o=t?`${t}:${n}`:n;typeof i=="object"&&i!==null?jt(i,e,o):typeof i=="function"&&(e[o]=i)}return e}const ii={run:s=>s()},oi=()=>ii,Ws=typeof console.createTask<"u"?console.createTask:oi;function ri(s,e){const t=e.shift(),n=Ws(t);return s.reduce((i,o)=>i.then(()=>n.run(()=>o(...e))),Promise.resolve())}function ai(s,e){const t=e.shift(),n=Ws(t);return Promise.all(s.map(i=>n.run(()=>i(...e))))}function St(s,e){for(const t of[...s])t(e)}class li{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,t,n={}){if(!e||typeof t!="function")return()=>{};const i=e;let o;for(;this._deprecatedHooks[e];)o=this._deprecatedHooks[e],e=o.to;if(o&&!n.allowDeprecated){let r=o.message;r||(r=`${i} hook has been deprecated`+(o.to?`, please use ${o.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(r)||(console.warn(r),this._deprecatedMessages.add(r))}if(!t.name)try{Object.defineProperty(t,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(t),()=>{t&&(this.removeHook(e,t),t=void 0)}}hookOnce(e,t){let n,i=(...o)=>(typeof n=="function"&&n(),n=void 0,i=void 0,t(...o));return n=this.hook(e,i),n}removeHook(e,t){if(this._hooks[e]){const n=this._hooks[e].indexOf(t);n!==-1&&this._hooks[e].splice(n,1),this._hooks[e].length===0&&delete this._hooks[e]}}deprecateHook(e,t){this._deprecatedHooks[e]=typeof t=="string"?{to:t}:t;const n=this._hooks[e]||[];delete this._hooks[e];for(const i of n)this.hook(e,i)}deprecateHooks(e){Object.assign(this._deprecatedHooks,e);for(const t in e)this.deprecateHook(t,e[t])}addHooks(e){const t=jt(e),n=Object.keys(t).map(i=>this.hook(i,t[i]));return()=>{for(const i of n.splice(0,n.length))i()}}removeHooks(e){const t=jt(e);for(const n in t)this.removeHook(n,t[n])}removeAllHooks(){for(const e in this._hooks)delete this._hooks[e]}callHook(e,...t){return t.unshift(e),this.callHookWith(ri,e,...t)}callHookParallel(e,...t){return t.unshift(e),this.callHookWith(ai,e,...t)}callHookWith(e,t,...n){const i=this._before||this._after?{name:t,args:n,context:{}}:void 0;this._before&&St(this._before,i);const o=e(t in this._hooks?[...this._hooks[t]]:[],n);return o instanceof Promise?o.finally(()=>{this._after&&i&&St(this._after,i)}):(this._after&&i&&St(this._after,i),o)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const t=this._before.indexOf(e);t!==-1&&this._before.splice(t,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const t=this._after.indexOf(e);t!==-1&&this._after.splice(t,1)}}}}function ci(){return new li}function ui(s){return Array.isArray(s)?s:[s]}const fi=["title","titleTemplate","script","style","noscript"],Ge=["base","meta","link","style","script","noscript"],hi=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],di=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],zs=["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"],pi=typeof window<"u";function Qt(s){let e=9;for(let t=0;t>>9)+65536).toString(16).substring(1,8).toLowerCase()}function fs(s){return s._h||Qt(s._d?s._d:`${s.tag}:${s.textContent||s.innerHTML||""}:${Object.entries(s.props).map(([e,t])=>`${e}:${String(t)}`).join(",")}`)}function Vs(s,e){const{props:t,tag:n}=s;if(di.includes(n))return n;if(n==="link"&&t.rel==="canonical")return"canonical";if(t.charset)return"charset";const i=["id"];n==="meta"&&i.push("name","property","http-equiv");for(const o of i)if(typeof t[o]<"u"){const r=String(t[o]);return e&&!e(r)?!1:`${n}:${o}:${r}`}return!1}function hs(s,e){return s==null?e||null:typeof s=="function"?s(e):s}async function gi(s,e,t){const n={tag:s,props:await qs(typeof e=="object"&&typeof e!="function"&&!(e instanceof Promise)?{...e}:{[["script","noscript","style"].includes(s)?"innerHTML":"textContent"]:e},["templateParams","titleTemplate"].includes(s))};return zs.forEach(i=>{const o=typeof n.props[i]<"u"?n.props[i]:t[i];typeof o<"u"&&((!["innerHTML","textContent","children"].includes(i)||fi.includes(n.tag))&&(n[i==="children"?"innerHTML":i]=o),delete n.props[i])}),n.props.body&&(n.tagPosition="bodyClose",delete n.props.body),n.tag==="script"&&typeof n.innerHTML=="object"&&(n.innerHTML=JSON.stringify(n.innerHTML),n.props.type=n.props.type||"application/json"),Array.isArray(n.props.content)?n.props.content.map(i=>({...n,props:{...n.props,content:i}})):n}function mi(s,e){var n;const t=s==="class"?" ":";";return typeof e=="object"&&!Array.isArray(e)&&(e=Object.entries(e).filter(([,i])=>i).map(([i,o])=>s==="style"?`${i}:${o}`:i)),(n=Array.isArray(e)?e.join(t):e)==null?void 0:n.split(t).filter(i=>i.trim()).filter(Boolean).join(t)}async function qs(s,e){for(const t of Object.keys(s)){if(["class","style"].includes(t)){s[t]=mi(t,s[t]);continue}if(s[t]instanceof Promise&&(s[t]=await s[t]),!e&&!zs.includes(t)){const n=String(s[t]),i=t.startsWith("data-");n==="true"||n===""?s[t]=i?"true":!0:s[t]||(i&&n==="false"?s[t]="false":delete s[t])}}return s}const yi=10;async function vi(s){const e=[];return Object.entries(s.resolvedInput).filter(([t,n])=>typeof n<"u"&&hi.includes(t)).forEach(([t,n])=>{const i=ui(n);e.push(...i.map(o=>gi(t,o,s)).flat())}),(await Promise.all(e)).flat().filter(Boolean).map((t,n)=>(t._e=s._i,s.mode&&(t._m=s.mode),t._p=(s._i<l&&l[c]||void 0,e):a=e[r],typeof a<"u"?(a||"").replace(/"/g,'\\"'):!1}let i=s;try{i=decodeURI(s)}catch{}return(i.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(r=>{const a=n(r.slice(1));typeof a=="string"&&(s=s.replace(new RegExp(`\\${r}(\\W|$)`,"g"),(l,c)=>`${a}${c}`).trim())}),s.includes(ie)&&(s.endsWith(ie)&&(s=s.slice(0,-ie.length).trim()),s.startsWith(ie)&&(s=s.slice(ie.length).trim()),s=s.replace(new RegExp(`\\${ie}\\s*\\${ie}`,"g"),ie),s=Qe(s,{separator:t},t)),s}async function wi(s,e={}){var u;const t=e.document||s.resolvedOptions.document;if(!t||!s.dirty)return;const n={shouldRender:!0,tags:[]};if(await s.hooks.callHook("dom:beforeRender",n),!n.shouldRender)return;const i=(await s.resolveTags()).map(f=>({tag:f,id:Ge.includes(f.tag)?fs(f):f.tag,shouldRender:!0}));let o=s._dom;if(!o){o={elMap:{htmlAttrs:t.documentElement,bodyAttrs:t.body}};for(const f of["body","head"]){const h=(u=t[f])==null?void 0:u.children,d=[];for(const p of[...h].filter(g=>Ge.includes(g.tagName.toLowerCase()))){const g={tag:p.tagName.toLowerCase(),props:await qs(p.getAttributeNames().reduce((v,b)=>({...v,[b]:p.getAttribute(b)}),{})),innerHTML:p.innerHTML};let m=1,y=Vs(g);for(;y&&d.find(v=>v._d===y);)y=`${y}:${m++}`;g._d=y||void 0,d.push(g),o.elMap[p.getAttribute("data-hid")||fs(g)]=p}}}o.pendingSideEffects={...o.sideEffects||{}},o.sideEffects={};function r(f,h,d){const p=`${f}:${h}`;o.sideEffects[p]=d,delete o.pendingSideEffects[p]}function a({id:f,$el:h,tag:d}){const p=d.tag.endsWith("Attrs");o.elMap[f]=h,p||(["textContent","innerHTML"].forEach(g=>{d[g]&&d[g]!==h[g]&&(h[g]=d[g])}),r(f,"el",()=>{var g;(g=o.elMap[f])==null||g.remove(),delete o.elMap[f]}));for(const[g,m]of Object.entries(d._eventHandlers||{}))h.getAttribute(`data-${g}`)!==""&&((d.tag==="bodyAttrs"?t.defaultView:h).addEventListener(g.replace("on",""),m.bind(h)),h.setAttribute(`data-${g}`,""));Object.entries(d.props).forEach(([g,m])=>{const y=`attr:${g}`;if(g==="class")for(const v of(m||"").split(" ").filter(Boolean))p&&r(f,`${y}:${v}`,()=>h.classList.remove(v)),!h.classList.contains(v)&&h.classList.add(v);else if(g==="style")for(const v of(m||"").split(";").filter(Boolean)){const[b,...k]=v.split(":").map(M=>M.trim());r(f,`${y}:${v}:${b}`,()=>{h.style.removeProperty(b)}),h.style.setProperty(b,k.join(":"))}else h.getAttribute(g)!==m&&h.setAttribute(g,m===!0?"":String(m)),p&&r(f,y,()=>h.removeAttribute(g))})}const l=[],c={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const f of i){const{tag:h,shouldRender:d,id:p}=f;if(d){if(h.tag==="title"){t.title=h.textContent;continue}f.$el=f.$el||o.elMap[p],f.$el?a(f):Ge.includes(h.tag)&&l.push(f)}}for(const f of l){const h=f.tag.tagPosition||"head";f.$el=t.createElement(f.tag.tag),a(f),c[h]=c[h]||t.createDocumentFragment(),c[h].appendChild(f.$el)}for(const f of i)await s.hooks.callHook("dom:renderTag",f,t,r);c.head&&t.head.appendChild(c.head),c.bodyOpen&&t.body.insertBefore(c.bodyOpen,t.body.firstChild),c.bodyClose&&t.body.appendChild(c.bodyClose),Object.values(o.pendingSideEffects).forEach(f=>f()),s._dom=o,s.dirty=!1,await s.hooks.callHook("dom:rendered",{renders:i})}async function ki(s,e={}){const t=e.delayFn||(n=>setTimeout(n,10));return s._domUpdatePromise=s._domUpdatePromise||new Promise(n=>t(async()=>{await wi(s,e),delete s._domUpdatePromise,n()}))}function Si(s){return e=>{var n,i;const t=((i=(n=e.resolvedOptions.document)==null?void 0:n.head.querySelector('script[id="unhead:payload"]'))==null?void 0:i.innerHTML)||!1;return t&&e.push(JSON.parse(t)),{mode:"client",hooks:{"entries:updated":function(o){ki(o,s)}}}}}const _i=["templateParams","htmlAttrs","bodyAttrs"],Mi={hooks:{"tag:normalise":function({tag:s}){["hid","vmid","key"].forEach(n=>{s.props[n]&&(s.key=s.props[n],delete s.props[n])});const t=Vs(s)||(s.key?`${s.tag}:${s.key}`:!1);t&&(s._d=t)},"tags:resolve":function(s){const e={};s.tags.forEach(n=>{const i=(n.key?`${n.tag}:${n.key}`:n._d)||n._p,o=e[i];if(o){let a=n==null?void 0:n.tagDuplicateStrategy;if(!a&&_i.includes(n.tag)&&(a="merge"),a==="merge"){const l=o.props;["class","style"].forEach(c=>{l[c]&&(n.props[c]?(c==="style"&&!l[c].endsWith(";")&&(l[c]+=";"),n.props[c]=`${l[c]} ${n.props[c]}`):n.props[c]=l[c])}),e[i].props={...l,...n.props};return}else if(n._e===o._e){o._duped=o._duped||[],n._d=`${o._d}:${o._duped.length+1}`,o._duped.push(n);return}else if(it(n)>it(o))return}const r=Object.keys(n.props).length+(n.innerHTML?1:0)+(n.textContent?1:0);if(Ge.includes(n.tag)&&r===0){delete e[i];return}e[i]=n});const t=[];Object.values(e).forEach(n=>{const i=n._duped;delete n._duped,t.push(n),i&&t.push(...i)}),s.tags=t,s.tags=s.tags.filter(n=>!(n.tag==="meta"&&(n.props.name||n.props.property)&&!n.props.content))}}},Oi={mode:"server",hooks:{"tags:resolve":function(s){const e={};s.tags.filter(t=>["titleTemplate","templateParams","title"].includes(t.tag)&&t._m==="server").forEach(t=>{e[t.tag]=t.tag.startsWith("title")?t.textContent:t.props}),Object.keys(e).length&&s.tags.push({tag:"script",innerHTML:JSON.stringify(e),props:{id:"unhead:payload",type:"application/json"}})}}},Pi=["script","link","bodyAttrs"],Ai=s=>({hooks:{"tags:resolve":function(e){for(const t of e.tags.filter(n=>Pi.includes(n.tag)))Object.entries(t.props).forEach(([n,i])=>{n.startsWith("on")&&typeof i=="function"&&(s.ssr&&gs.includes(n)?t.props[n]=`this.dataset.${n}fired = true`:delete t.props[n],t._eventHandlers=t._eventHandlers||{},t._eventHandlers[n]=i)}),s.ssr&&t._eventHandlers&&(t.props.src||t.props.href)&&(t.key=t.key||Qt(t.props.src||t.props.href))},"dom:renderTag":function({$el:e,tag:t}){var n,i;for(const o of Object.keys((e==null?void 0:e.dataset)||{}).filter(r=>gs.some(a=>`${a}fired`===r))){const r=o.replace("fired","");(i=(n=t._eventHandlers)==null?void 0:n[r])==null||i.call(e,new Event(r.replace("on","")))}}}}),Ti=["link","style","script","noscript"],Ei={hooks:{"tag:normalise":({tag:s})=>{s.key&&Ti.includes(s.tag)&&(s.props["data-hid"]=s._h=Qt(s.key))}}},$i={hooks:{"tags:resolve":s=>{const e=t=>{var n;return(n=s.tags.find(i=>i._d===t))==null?void 0:n._p};for(const{prefix:t,offset:n}of bi)for(const i of s.tags.filter(o=>typeof o.tagPriority=="string"&&o.tagPriority.startsWith(t))){const o=e(i.tagPriority.replace(t,""));typeof o<"u"&&(i._p=o+n)}s.tags.sort((t,n)=>t._p-n._p).sort((t,n)=>it(t)-it(n))}}},Ci={meta:"content",link:"href",htmlAttrs:"lang"},Li=s=>({hooks:{"tags:resolve":e=>{var a;const{tags:t}=e,n=(a=t.find(l=>l.tag==="title"))==null?void 0:a.textContent,i=t.findIndex(l=>l.tag==="templateParams"),o=i!==-1?t[i].props:{},r=o.separator||"|";delete o.separator,o.pageTitle=Qe(o.pageTitle||n||"",o,r);for(const l of t.filter(c=>c.processTemplateParams!==!1)){const c=Ci[l.tag];c&&typeof l.props[c]=="string"?l.props[c]=Qe(l.props[c],o,r):(l.processTemplateParams===!0||["titleTemplate","title"].includes(l.tag))&&["innerHTML","textContent"].forEach(u=>{typeof l[u]=="string"&&(l[u]=Qe(l[u],o,r))})}s._templateParams=o,s._separator=r,e.tags=t.filter(l=>l.tag!=="templateParams")}}}),ji={hooks:{"tags:resolve":s=>{const{tags:e}=s;let t=e.findIndex(i=>i.tag==="titleTemplate");const n=e.findIndex(i=>i.tag==="title");if(n!==-1&&t!==-1){const i=hs(e[t].textContent,e[n].textContent);i!==null?e[n].textContent=i||e[n].textContent:delete e[n]}else if(t!==-1){const i=hs(e[t].textContent);i!==null&&(e[t].textContent=i,e[t].tag="title",t=-1)}t!==-1&&delete e[t],s.tags=e.filter(Boolean)}}},Ii={hooks:{"tags:afterResolve":function(s){for(const e of s.tags)typeof e.innerHTML=="string"&&(e.innerHTML&&["application/ld+json","application/json"].includes(e.props.type)?e.innerHTML=e.innerHTML.replace(/{a.dirty=!0,e.callHook("entries:updated",a)};let i=0,o=[];const r=[],a={plugins:r,dirty:!1,resolvedOptions:s,hooks:e,headEntries(){return o},use(l){const c=typeof l=="function"?l(a):l;(!c.key||!r.some(u=>u.key===c.key))&&(r.push(c),ms(c.mode,t)&&e.addHooks(c.hooks||{}))},push(l,c){c==null||delete c.head;const u={_i:i++,input:l,...c};return ms(u.mode,t)&&(o.push(u),n()),{dispose(){o=o.filter(f=>f._i!==u._i),e.callHook("entries:updated",a),n()},patch(f){o=o.map(h=>(h._i===u._i&&(h.input=u.input=f),h)),n()}}},async resolveTags(){const l={tags:[],entries:[...o]};await e.callHook("entries:resolve",l);for(const c of l.entries){const u=c.resolvedInput||c.input;if(c.resolvedInput=await(c.transform?c.transform(u):u),c.resolvedInput)for(const f of await vi(c)){const h={tag:f,entry:c,resolvedOptions:a.resolvedOptions};await e.callHook("tag:normalise",h),l.tags.push(h.tag)}}return await e.callHook("tags:beforeResolve",l),await e.callHook("tags:resolve",l),await e.callHook("tags:afterResolve",l),l.tags},ssr:t};return[Mi,Oi,Ai,Ei,$i,Li,ji,Ii,...(s==null?void 0:s.plugins)||[]].forEach(l=>a.use(l)),a.hooks.callHook("init",a),a}function Ri(){return xs}const Di=_n.startsWith("3");function Fi(s){return typeof s=="function"?s():Jt(s)}function ot(s,e=""){if(s instanceof Promise)return s;const t=Fi(s);return!s||!t?t:Array.isArray(t)?t.map(n=>ot(n,e)):typeof t=="object"?Object.fromEntries(Object.entries(t).map(([n,i])=>n==="titleTemplate"||n.startsWith("on")?[n,Jt(i)]:[n,ot(i,n)])):t}const Bi={hooks:{"entries:resolve":function(s){for(const e of s.entries)e.resolvedInput=ot(e.input)}}},Us="usehead";function Wi(s){return{install(t){Di&&(t.config.globalProperties.$unhead=s,t.config.globalProperties.$head=s,t.provide(Us,s))}}.install}function zi(s={}){s.domDelayFn=s.domDelayFn||(t=>nt(()=>setTimeout(()=>t(),0)));const e=Ni(s);return e.use(Bi),e.install=Wi(e),e}const ys=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},vs="__unhead_injection_handler__";function Vi(){if(vs in ys)return ys[vs]();const s=Ns(Us);return s||console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results."),s||Ri()}function qi(s,e={}){const t=e.head||Vi();if(t)return t.ssr?t.push(s,e):xi(t,s,e)}function xi(s,e,t={}){const n=P(!1),i=P({});Me(()=>{i.value=n.value?{}:ot(e)});const o=s.push(i.value,t);return K(i,a=>{o.patch(a)}),Hs()&&(Mn(()=>{o.dispose()}),On(()=>{n.value=!0}),Pn(()=>{n.value=!1})),o}function Ks(){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}function J(s,e,t){Object.defineProperty(s,e,{value:t,writable:!0,enumerable:!1})}const ge=ae({page:0,clicks:0});let Ui=[],Ki=[];J(ge,"$syncUp",!0);J(ge,"$syncDown",!0);J(ge,"$paused",!1);J(ge,"$onSet",s=>Ui.push(s));J(ge,"$onPatch",s=>Ki.push(s));Ks();J(ge,"$patch",async()=>!1);function Js(s,e,t=!1){const n=[];let i=!1,o=!1,r,a;const l=ae(e);function c(d){n.push(d)}function u(d,p){l[d]!==p&&(clearTimeout(r),i=!0,l[d]=p,r=setTimeout(()=>i=!1,0))}function f(d){i||(clearTimeout(a),o=!0,Object.entries(d).forEach(([p,g])=>{l[p]=g}),a=setTimeout(()=>o=!1,0))}function h(d){let p;t?t&&window.addEventListener("storage",m=>{m&&m.key===d&&m.newValue&&f(JSON.parse(m.newValue))}):(p=new BroadcastChannel(d),p.addEventListener("message",m=>f(m.data)));function g(){!t&&p&&!o?p.postMessage(An(l)):t&&!o&&window.localStorage.setItem(d,JSON.stringify(l)),i||n.forEach(m=>m(l))}if(K(l,g,{deep:!0,flush:"sync"}),t){const m=window.localStorage.getItem(d);m&&f(JSON.parse(m))}}return{init:h,onPatch:c,patch:u,state:l}}const{init:Ji,onPatch:Gi,patch:Ee,state:ia}=Js(ge,{page:1,clicks:0,viewerPage:1,viewerClicks:0}),me=ae({});let Qi=[],Zi=[];J(me,"$syncUp",!0);J(me,"$syncDown",!0);J(me,"$paused",!1);J(me,"$onSet",s=>Qi.push(s));J(me,"$onPatch",s=>Zi.push(s));Ks();J(me,"$patch",async()=>!1);const{init:Yi,onPatch:oa,patch:ra,state:aa}=Js(me,{},!1),mt="$$slidev-clicks-context",Zt="$$slidev-page",Gs="$$slidev-slide-element",Xi="$$slidev-slide-scale",eo="$$slidev-context",la="$$slidev-route",Yt="$$slidev-render-context",ca="$$slidev-active",to="$$slidev-fontmatter",so="$$slidev-slide-zoom",Ze="slidev-vclick-target",$e="slidev-vclick-hidden",Ce="slidev-vclick-fade",_t="slidev-vclick-hidden-explicitly",Mt="slidev-vclick-current",Ot="slidev-vclick-prior",It=999999,no=["localhost","127.0.0.1"],io=["clicks","clicksStart","disabled","hide","hideInToc","layout","level","preload","routeAlias","src","title","transition","zoom","dragPos"],ua=[...io,"theme","titleTemplate","info","author","keywords","presenter","download","exportFilename","export","highlighter","lineNumbers","monaco","monacoTypesSource","monacoTypesAdditionalPackages","monacoRunAdditionalDeps","remoteAssets","selectable","record","colorSchema","routerMode","aspectRatio","canvasWidth","themeConfig","favicon","plantUmlServer","fonts","defaults","drawings","htmlAttrs","mdc","contextMenu"],Qs=P(!1),Xt=Symbol.for("yaml.alias"),oo=Symbol.for("yaml.document"),pe=Symbol.for("yaml.map"),Zs=Symbol.for("yaml.pair"),es=Symbol.for("yaml.scalar"),ze=Symbol.for("yaml.seq"),se=Symbol.for("yaml.node.type"),Pe=s=>!!s&&typeof s=="object"&&s[se]===Xt,yt=s=>!!s&&typeof s=="object"&&s[se]===oo,Ys=s=>!!s&&typeof s=="object"&&s[se]===pe,F=s=>!!s&&typeof s=="object"&&s[se]===Zs,R=s=>!!s&&typeof s=="object"&&s[se]===es,ts=s=>!!s&&typeof s=="object"&&s[se]===ze;function x(s){if(s&&typeof s=="object")switch(s[se]){case pe:case ze:return!0}return!1}function V(s){if(s&&typeof s=="object")switch(s[se]){case Xt:case pe:case es:case ze:return!0}return!1}const ro=s=>(R(s)||x(s))&&!!s.anchor,fe=Symbol("break visit"),ao=Symbol("skip children"),Ne=Symbol("remove node");function Fe(s,e){const t=lo(e);yt(s)?we(null,s.contents,t,Object.freeze([s]))===Ne&&(s.contents=null):we(null,s,t,Object.freeze([]))}Fe.BREAK=fe;Fe.SKIP=ao;Fe.REMOVE=Ne;function we(s,e,t,n){const i=co(s,e,t,n);if(V(i)||F(i))return uo(s,n,i),we(s,i,t,n);if(typeof i!="symbol"){if(x(e)){n=Object.freeze(n.concat(e));for(let o=0;oZ(n,String(i),t));if(s&&typeof s.toJSON=="function"){if(!t||!ro(s))return s.toJSON(e,t);const n={aliasCount:0,count:1,res:void 0};t.anchors.set(s,n),t.onCreate=o=>{n.res=o,delete t.onCreate};const i=s.toJSON(e,t);return t.onCreate&&t.onCreate(i),i}return typeof s=="bigint"&&!(t!=null&&t.keep)?Number(s):s}class ss{constructor(e){Object.defineProperty(this,se,{value:e})}clone(){const e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:t,maxAliasCount:n,onAnchor:i,reviver:o}={}){if(!yt(e))throw new TypeError("A document argument is required");const r={anchors:new Map,doc:e,keep:!0,mapAsMap:t===!0,mapKeyWarned:!1,maxAliasCount:typeof n=="number"?n:100},a=Z(this,"",r);if(typeof i=="function")for(const{count:l,res:c}of r.anchors.values())i(c,l);return typeof o=="function"?Ie(o,{"":a},"",a):a}}class fo extends ss{constructor(e){super(Xt),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e){let t;return Fe(e,{Node:(n,i)=>{if(i===this)return Fe.BREAK;i.anchor===this.source&&(t=i)}}),t}toJSON(e,t){if(!t)return{source:this.source};const{anchors:n,doc:i,maxAliasCount:o}=t,r=this.resolve(i);if(!r){const l=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(l)}let a=n.get(r);if(a||(Z(r,null,t),a=n.get(r)),!a||a.res===void 0){const l="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(l)}if(o>=0&&(a.count+=1,a.aliasCount===0&&(a.aliasCount=Ye(i,r,n)),a.count*a.aliasCount>o)){const l="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(l)}return a.res}toString(e,t,n){const i=`*${this.source}`;if(e){if(Xs(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){const o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(e.implicitKey)return`${i} `}return i}}function Ye(s,e,t){if(Pe(e)){const n=e.resolve(s),i=t&&n&&t.get(n);return i?i.count*i.aliasCount:0}else if(x(e)){let n=0;for(const i of e.items){const o=Ye(s,i,t);o>n&&(n=o)}return n}else if(F(e)){const n=Ye(s,e.key,t),i=Ye(s,e.value,t);return Math.max(n,i)}return 1}const en=s=>!s||typeof s!="function"&&typeof s!="object";class N extends ss{constructor(e){super(es),this.value=e}toJSON(e,t){return t!=null&&t.keep?this.value:Z(this.value,e,t)}toString(){return String(this.value)}}N.BLOCK_FOLDED="BLOCK_FOLDED";N.BLOCK_LITERAL="BLOCK_LITERAL";N.PLAIN="PLAIN";N.QUOTE_DOUBLE="QUOTE_DOUBLE";N.QUOTE_SINGLE="QUOTE_SINGLE";const ho="tag:yaml.org,2002:";function po(s,e,t){if(e){const n=t.filter(o=>o.tag===e),i=n.find(o=>!o.format)??n[0];if(!i)throw new Error(`Tag ${e} not found`);return i}return t.find(n=>{var i;return((i=n.identify)==null?void 0:i.call(n,s))&&!n.format})}function rt(s,e,t){var f,h,d;if(yt(s)&&(s=s.contents),V(s))return s;if(F(s)){const p=(h=(f=t.schema[pe]).createNode)==null?void 0:h.call(f,t.schema,null,t);return p.items.push(s),p}(s instanceof String||s instanceof Number||s instanceof Boolean||typeof BigInt<"u"&&s instanceof BigInt)&&(s=s.valueOf());const{aliasDuplicateObjects:n,onAnchor:i,onTagObj:o,schema:r,sourceObjects:a}=t;let l;if(n&&s&&typeof s=="object"){if(l=a.get(s),l)return l.anchor||(l.anchor=i(s)),new fo(l.anchor);l={anchor:null,node:null},a.set(s,l)}e!=null&&e.startsWith("!!")&&(e=ho+e.slice(2));let c=po(s,e,r.tags);if(!c){if(s&&typeof s.toJSON=="function"&&(s=s.toJSON()),!s||typeof s!="object"){const p=new N(s);return l&&(l.node=p),p}c=s instanceof Map?r[pe]:Symbol.iterator in Object(s)?r[ze]:r[pe]}o&&(o(c),delete t.onTagObj);const u=c!=null&&c.createNode?c.createNode(t.schema,s,t):typeof((d=c==null?void 0:c.nodeClass)==null?void 0:d.from)=="function"?c.nodeClass.from(t.schema,s,t):new N(s);return e?u.tag=e:c.default||(u.tag=c.tag),l&&(l.node=u),u}function bs(s,e,t){let n=t;for(let i=e.length-1;i>=0;--i){const o=e[i];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){const r=[];r[o]=n,n=r}else n=new Map([[o,n]])}return rt(n,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:s,sourceObjects:new Map})}const go=s=>s==null||typeof s=="object"&&!!s[Symbol.iterator]().next().done;class ns extends ss{constructor(e,t){super(e),Object.defineProperty(this,"schema",{value:t,configurable:!0,enumerable:!1,writable:!0})}clone(e){const t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(t.schema=e),t.items=t.items.map(n=>V(n)||F(n)?n.clone(e):n),this.range&&(t.range=this.range.slice()),t}addIn(e,t){if(go(e))this.add(t);else{const[n,...i]=e,o=this.get(n,!0);if(x(o))o.addIn(i,t);else if(o===void 0&&this.schema)this.set(n,bs(this.schema,i,t));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${i}`)}}deleteIn(e){const[t,...n]=e;if(n.length===0)return this.delete(t);const i=this.get(t,!0);if(x(i))return i.deleteIn(n);throw new Error(`Expected YAML collection at ${t}. Remaining path: ${n}`)}getIn(e,t){const[n,...i]=e,o=this.get(n,!0);return i.length===0?!t&&R(o)?o.value:o:x(o)?o.getIn(i,t):void 0}hasAllNullValues(e){return this.items.every(t=>{if(!F(t))return!1;const n=t.value;return n==null||e&&R(n)&&n.value==null&&!n.commentBefore&&!n.comment&&!n.tag})}hasIn(e){const[t,...n]=e;if(n.length===0)return this.has(t);const i=this.get(t,!0);return x(i)?i.hasIn(n):!1}setIn(e,t){const[n,...i]=e;if(i.length===0)this.set(n,t);else{const o=this.get(n,!0);if(x(o))o.setIn(i,t);else if(o===void 0&&this.schema)this.set(n,bs(this.schema,i,t));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${i}`)}}}ns.maxFlowStringSingleLineLength=60;const mo=s=>s.replace(/^(?!$)(?: $)?/gm,"#");function Be(s,e){return/^\n+$/.test(s)?s.substring(1):e?s.replace(/^(?! *$)/gm,e):s}const ke=(s,e,t)=>s.endsWith(` +`)?Be(t,e):t.includes(` +`)?` +`+Be(t,e):(s.endsWith(" ")?"":" ")+t,tn="flow",Nt="block",Xe="quoted";function vt(s,e,t="flow",{indentAtStart:n,lineWidth:i=80,minContentWidth:o=20,onFold:r,onOverflow:a}={}){if(!i||i<0)return s;const l=Math.max(1+o,1+i-e.length);if(s.length<=l)return s;const c=[],u={};let f=i-e.length;typeof n=="number"&&(n>i-Math.max(2,o)?c.push(0):f=i-n);let h,d,p=!1,g=-1,m=-1,y=-1;t===Nt&&(g=ws(s,g,e.length),g!==-1&&(f=g+l));for(let b;b=s[g+=1];){if(t===Xe&&b==="\\"){switch(m=g,s[g+1]){case"x":g+=3;break;case"u":g+=5;break;case"U":g+=9;break;default:g+=1}y=g}if(b===` +`)t===Nt&&(g=ws(s,g,e.length)),f=g+e.length+l,h=void 0;else{if(b===" "&&d&&d!==" "&&d!==` +`&&d!==" "){const k=s[g+1];k&&k!==" "&&k!==` +`&&k!==" "&&(h=g)}if(g>=f)if(h)c.push(h),f=h+l,h=void 0;else if(t===Xe){for(;d===" "||d===" ";)d=b,b=s[g+=1],p=!0;const k=g>y+1?g-2:m-1;if(u[k])return s;c.push(k),u[k]=!0,f=k+l,h=void 0}else p=!0}d=b}if(p&&a&&a(),c.length===0)return s;r&&r();let v=s.slice(0,c[0]);for(let b=0;b({indentAtStart:e?s.indent.length:s.indentAtStart,lineWidth:s.options.lineWidth,minContentWidth:s.options.minContentWidth}),wt=s=>/^(%|---|\.\.\.)/m.test(s);function yo(s,e,t){if(!e||e<0)return!1;const n=e-t,i=s.length;if(i<=n)return!1;for(let o=0,r=0;on)return!0;if(r=o+1,i-r<=n)return!1}return!0}function He(s,e){const t=JSON.stringify(s);if(e.options.doubleQuotedAsJSON)return t;const{implicitKey:n}=e,i=e.options.doubleQuotedMinMultiLineLength,o=e.indent||(wt(s)?" ":"");let r="",a=0;for(let l=0,c=t[l];c;c=t[++l])if(c===" "&&t[l+1]==="\\"&&t[l+2]==="n"&&(r+=t.slice(a,l)+"\\ ",l+=1,a=l,c="\\"),c==="\\")switch(t[l+1]){case"u":{r+=t.slice(a,l);const u=t.substr(l+2,4);switch(u){case"0000":r+="\\0";break;case"0007":r+="\\a";break;case"000b":r+="\\v";break;case"001b":r+="\\e";break;case"0085":r+="\\N";break;case"00a0":r+="\\_";break;case"2028":r+="\\L";break;case"2029":r+="\\P";break;default:u.substr(0,2)==="00"?r+="\\x"+u.substr(2):r+=t.substr(l,6)}l+=5,a=l+1}break;case"n":if(n||t[l+2]==='"'||t.length +`;let f,h;for(h=t.length;h>0;--h){const _=t[h-1];if(_!==` +`&&_!==" "&&_!==" ")break}let d=t.substring(h);const p=d.indexOf(` +`);p===-1?f="-":t===d||p!==d.length-1?(f="+",o&&o()):f="",d&&(t=t.slice(0,-d.length),d[d.length-1]===` +`&&(d=d.slice(0,-1)),d=d.replace(Rt,`$&${c}`));let g=!1,m,y=-1;for(m=0;m")+(g?c?"2":"1":"")+f;if(s&&(k+=" "+a(s.replace(/ ?[\r\n]+/g," ")),i&&i()),u)return t=t.replace(/\n+/g,`$&${c}`),`${k} +${c}${v}${t}${d}`;t=t.replace(/\n+/g,` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${c}`);const M=vt(`${v}${t}${d}`,c,Nt,bt(n,!0));return`${k} +${c}${M}`}function vo(s,e,t,n){const{type:i,value:o}=s,{actualString:r,implicitKey:a,indent:l,indentStep:c,inFlow:u}=e;if(a&&o.includes(` +`)||u&&/[[\]{},]/.test(o))return Se(o,e);if(!o||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return a||u||!o.includes(` +`)?Se(o,e):et(s,e,t,n);if(!a&&!u&&i!==N.PLAIN&&o.includes(` +`))return et(s,e,t,n);if(wt(o)){if(l==="")return e.forceBlockIndent=!0,et(s,e,t,n);if(a&&l===c)return Se(o,e)}const f=o.replace(/\n+/g,`$& +${l}`);if(r){const h=g=>{var m;return g.default&&g.tag!=="tag:yaml.org,2002:str"&&((m=g.test)==null?void 0:m.test(f))},{compat:d,tags:p}=e.doc.schema;if(p.some(h)||d!=null&&d.some(h))return Se(o,e)}return a?f:vt(f,l,tn,bt(e,!1))}function bo(s,e,t,n){const{implicitKey:i,inFlow:o}=e,r=typeof s.value=="string"?s:Object.assign({},s,{value:String(s.value)});let{type:a}=s;a!==N.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(r.value)&&(a=N.QUOTE_DOUBLE);const l=u=>{switch(u){case N.BLOCK_FOLDED:case N.BLOCK_LITERAL:return i||o?Se(r.value,e):et(r,e,t,n);case N.QUOTE_DOUBLE:return He(r.value,e);case N.QUOTE_SINGLE:return Ht(r.value,e);case N.PLAIN:return vo(r,e,t,n);default:return null}};let c=l(a);if(c===null){const{defaultKeyType:u,defaultStringType:f}=e.options,h=i&&u||f;if(c=l(h),c===null)throw new Error(`Unsupported default string type ${h}`)}return c}function wo(s,e){const t=Object.assign({blockQuote:!0,commentString:mo,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},s.schema.toStringOptions,e);let n;switch(t.collectionStyle){case"block":n=!1;break;case"flow":n=!0;break;default:n=null}return{anchors:new Set,doc:s,flowCollectionPadding:t.flowCollectionPadding?" ":"",indent:"",indentStep:typeof t.indent=="number"?" ".repeat(t.indent):" ",inFlow:n,options:t}}function ko(s,e){var i;if(e.tag){const o=s.filter(r=>r.tag===e.tag);if(o.length>0)return o.find(r=>r.format===e.format)??o[0]}let t,n;if(R(e)){n=e.value;const o=s.filter(r=>{var a;return(a=r.identify)==null?void 0:a.call(r,n)});t=o.find(r=>r.format===e.format)??o.find(r=>!r.format)}else n=e,t=s.find(o=>o.nodeClass&&n instanceof o.nodeClass);if(!t){const o=((i=n==null?void 0:n.constructor)==null?void 0:i.name)??typeof n;throw new Error(`Tag not resolved for ${o} value`)}return t}function So(s,e,{anchors:t,doc:n}){if(!n.directives)return"";const i=[],o=(R(s)||x(s))&&s.anchor;o&&Xs(o)&&(t.add(o),i.push(`&${o}`));const r=s.tag?s.tag:e.default?null:e.tag;return r&&i.push(n.directives.tagString(r)),i.join(" ")}function at(s,e,t,n){var l;if(F(s))return s.toString(e,t,n);if(Pe(s)){if(e.doc.directives)return s.toString(e);if((l=e.resolvedAliases)!=null&&l.has(s))throw new TypeError("Cannot stringify circular structure without alias nodes");e.resolvedAliases?e.resolvedAliases.add(s):e.resolvedAliases=new Set([s]),s=s.resolve(e.doc)}let i;const o=V(s)?s:e.doc.createNode(s,{onTagObj:c=>i=c});i||(i=ko(e.doc.schema.tags,o));const r=So(o,i,e);r.length>0&&(e.indentAtStart=(e.indentAtStart??0)+r.length+1);const a=typeof i.stringify=="function"?i.stringify(o,e,t,n):R(o)?bo(o,e,t,n):o.toString(e,t,n);return r?R(o)||a[0]==="{"||a[0]==="["?`${r} ${a}`:`${r} +${e.indent}${a}`:a}function _o({key:s,value:e},t,n,i){const{allNullValues:o,doc:r,indent:a,indentStep:l,options:{commentString:c,indentSeq:u,simpleKeys:f}}=t;let h=V(s)&&s.comment||null;if(f){if(h)throw new Error("With simple keys, key nodes cannot have comments");if(x(s)){const A="With simple keys, collection cannot be used as a key value";throw new Error(A)}}let d=!f&&(!s||h&&e==null&&!t.inFlow||x(s)||(R(s)?s.type===N.BLOCK_FOLDED||s.type===N.BLOCK_LITERAL:typeof s=="object"));t=Object.assign({},t,{allNullValues:!1,implicitKey:!d&&(f||!o),indent:a+l});let p=!1,g=!1,m=at(s,t,()=>p=!0,()=>g=!0);if(!d&&!t.inFlow&&m.length>1024){if(f)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");d=!0}if(t.inFlow){if(o||e==null)return p&&n&&n(),m===""?"?":d?`? ${m}`:m}else if(o&&!f||e==null&&d)return m=`? ${m}`,h&&!p?m+=ke(m,t.indent,c(h)):g&&i&&i(),m;p&&(h=null),d?(h&&(m+=ke(m,t.indent,c(h))),m=`? ${m} +${a}:`):(m=`${m}:`,h&&(m+=ke(m,t.indent,c(h))));let y,v,b;V(e)?(y=!!e.spaceBefore,v=e.commentBefore,b=e.comment):(y=!1,v=null,b=null,e&&typeof e=="object"&&(e=r.createNode(e))),t.implicitKey=!1,!d&&!h&&R(e)&&(t.indentAtStart=m.length+1),g=!1,!u&&l.length>=2&&!t.inFlow&&!d&&ts(e)&&!e.flow&&!e.tag&&!e.anchor&&(t.indent=t.indent.substring(2));let k=!1;const M=at(e,t,()=>k=!0,()=>g=!0);let _=" ";if(h||y||v){if(_=y?` +`:"",v){const A=c(v);_+=` +${Be(A,t.indent)}`}M===""&&!t.inFlow?_===` +`&&(_=` + +`):_+=` +${t.indent}`}else if(!d&&x(e)){const A=M[0],T=M.indexOf(` +`),C=T!==-1,D=t.inFlow??e.flow??e.items.length===0;if(C||!D){let X=!1;if(C&&(A==="&"||A==="!")){let O=M.indexOf(" ");A==="&"&&O!==-1&&Os===ks||R(s)&&s.value===ks&&(!s.type||s.type===N.PLAIN);function Pt(s,e,t){const n=s&&Pe(t)?t.resolve(s.doc):t;if(!Ys(n))throw new Error("Merge sources must be maps or map aliases");const i=n.toJSON(null,s,Map);for(const[o,r]of i)e instanceof Map?e.has(o)||e.set(o,r):e instanceof Set?e.add(o):Object.prototype.hasOwnProperty.call(e,o)||Object.defineProperty(e,o,{value:r,writable:!0,enumerable:!0,configurable:!0});return e}function Po(s,e,t){if(e===null)return"";if(typeof e!="object")return String(e);if(V(s)&&(t!=null&&t.doc)){const n=wo(t.doc,{});n.anchors=new Set;for(const o of t.anchors.keys())n.anchors.add(o.anchor);n.inFlow=!0,n.inStringifyKey=!0;const i=s.toString(n);if(!t.mapKeyWarned){let o=JSON.stringify(i);o.length>40&&(o=o.substring(0,36)+'..."'),Mo(t.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),t.mapKeyWarned=!0}return i}return JSON.stringify(e)}function is(s,e,t){const n=rt(s,void 0,t),i=rt(e,void 0,t);return new ne(n,i)}class ne{constructor(e,t=null){Object.defineProperty(this,se,{value:Zs}),this.key=e,this.value=t}clone(e){let{key:t,value:n}=this;return V(t)&&(t=t.clone(e)),V(n)&&(n=n.clone(e)),new ne(t,n)}toJSON(e,t){const n=t!=null&&t.mapAsMap?new Map:{};return sn(t,n,this)}toString(e,t,n){return e!=null&&e.doc?_o(this,e,t,n):JSON.stringify(this)}}function nn(s,e,t){return(e.inFlow??s.flow?To:Ao)(s,e,t)}function Ao({comment:s,items:e},t,{blockItemPrefix:n,flowChars:i,itemIndent:o,onChompKeep:r,onComment:a}){const{indent:l,options:{commentString:c}}=t,u=Object.assign({},t,{indent:o,type:null});let f=!1;const h=[];for(let p=0;pm=null,()=>f=!0);m&&(y+=ke(y,o,c(m))),f&&m&&(f=!1),h.push(n+y)}let d;if(h.length===0)d=i.start+i.end;else{d=h[0];for(let p=1;pm=null);pu||y.includes(` +`))&&(c=!0),f.push(y),u=f.length}const{start:h,end:d}=t;if(f.length===0)return h+d;if(!c){const p=f.reduce((g,m)=>g+m.length+2,2);c=e.options.lineWidth>0&&p>e.options.lineWidth}if(c){let p=h;for(const g of f)p+=g?` +${o}${i}${g}`:` +`;return`${p} +${i}${d}`}else return`${h}${r}${f.join(" ")}${r}${d}`}function lt({indent:s,options:{commentString:e}},t,n,i){if(n&&i&&(n=n.replace(/^\n+/,"")),n){const o=Be(e(n),s);t.push(o.trimStart())}}function de(s,e){const t=R(e)?e.value:e;for(const n of s)if(F(n)&&(n.key===e||n.key===t||R(n.key)&&n.key.value===t))return n}class ve extends ns{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(pe,e),this.items=[]}static from(e,t,n){const{keepUndefined:i,replacer:o}=n,r=new this(e),a=(l,c)=>{if(typeof o=="function")c=o.call(t,l,c);else if(Array.isArray(o)&&!o.includes(l))return;(c!==void 0||i)&&r.items.push(is(l,c,n))};if(t instanceof Map)for(const[l,c]of t)a(l,c);else if(t&&typeof t=="object")for(const l of Object.keys(t))a(l,t[l]);return typeof e.sortMapEntries=="function"&&r.items.sort(e.sortMapEntries),r}add(e,t){var r;let n;F(e)?n=e:!e||typeof e!="object"||!("key"in e)?n=new ne(e,e==null?void 0:e.value):n=new ne(e.key,e.value);const i=de(this.items,n.key),o=(r=this.schema)==null?void 0:r.sortMapEntries;if(i){if(!t)throw new Error(`Key ${n.key} already set`);R(i.value)&&en(n.value)?i.value.value=n.value:i.value=n.value}else if(o){const a=this.items.findIndex(l=>o(n,l)<0);a===-1?this.items.push(n):this.items.splice(a,0,n)}else this.items.push(n)}delete(e){const t=de(this.items,e);return t?this.items.splice(this.items.indexOf(t),1).length>0:!1}get(e,t){const n=de(this.items,e),i=n==null?void 0:n.value;return(!t&&R(i)?i.value:i)??void 0}has(e){return!!de(this.items,e)}set(e,t){this.add(new ne(e,t),!0)}toJSON(e,t,n){const i=n?new n:t!=null&&t.mapAsMap?new Map:{};t!=null&&t.onCreate&&t.onCreate(i);for(const o of this.items)sn(t,i,o);return i}toString(e,t,n){if(!e)return JSON.stringify(this);for(const i of this.items)if(!F(i))throw new Error(`Map items must all be pairs; found ${JSON.stringify(i)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),nn(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:n,onComment:t})}}class on extends ns{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(ze,e),this.items=[]}add(e){this.items.push(e)}delete(e){const t=qe(e);return typeof t!="number"?!1:this.items.splice(t,1).length>0}get(e,t){const n=qe(e);if(typeof n!="number")return;const i=this.items[n];return!t&&R(i)?i.value:i}has(e){const t=qe(e);return typeof t=="number"&&t=0?e:null}function Eo(s,e,t){const{replacer:n}=t,i=new on(s);i.tag="tag:yaml.org,2002:pairs";let o=0;if(e&&Symbol.iterator in Object(e))for(let r of e){typeof n=="function"&&(r=n.call(e,String(o++),r));let a,l;if(Array.isArray(r))if(r.length===2)a=r[0],l=r[1];else throw new TypeError(`Expected [key, value] tuple: ${r}`);else if(r&&r instanceof Object){const c=Object.keys(r);if(c.length===1)a=c[0],l=r[a];else throw new TypeError(`Expected tuple with one key, not ${c.length} keys`)}else a=r;i.items.push(is(a,l,t))}return i}class os extends on{constructor(){super(),this.add=ve.prototype.add.bind(this),this.delete=ve.prototype.delete.bind(this),this.get=ve.prototype.get.bind(this),this.has=ve.prototype.has.bind(this),this.set=ve.prototype.set.bind(this),this.tag=os.tag}toJSON(e,t){if(!t)return super.toJSON(e);const n=new Map;t!=null&&t.onCreate&&t.onCreate(n);for(const i of this.items){let o,r;if(F(i)?(o=Z(i.key,"",t),r=Z(i.value,o,t)):o=Z(i,"",t),n.has(o))throw new Error("Ordered maps must not include duplicate keys");n.set(o,r)}return n}static from(e,t,n){const i=Eo(e,t,n),o=new this;return o.items=i.items,o}}os.tag="tag:yaml.org,2002:omap";class rs extends ve{constructor(e){super(e),this.tag=rs.tag}add(e){let t;F(e)?t=e:e&&typeof e=="object"&&"key"in e&&"value"in e&&e.value===null?t=new ne(e.key,null):t=new ne(e,null),de(this.items,t.key)||this.items.push(t)}get(e,t){const n=de(this.items,e);return!t&&F(n)?R(n.key)?n.key.value:n.key:n}set(e,t){if(typeof t!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof t}`);const n=de(this.items,e);n&&!t?this.items.splice(this.items.indexOf(n),1):!n&&t&&this.items.push(new ne(e))}toJSON(e,t){return super.toJSON(e,t,Set)}toString(e,t,n){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),t,n);throw new Error("Set items must all have null values")}static from(e,t,n){const{replacer:i}=n,o=new this(e);if(t&&Symbol.iterator in Object(t))for(let r of t)typeof i=="function"&&(r=i.call(t,r,r)),o.items.push(is(r,null,n));return o}}rs.tag="tag:yaml.org,2002:set";function fa(){const s=P(Date.now()),e=Tn({interval:1e3}),t=w(()=>{const i=(e.value-s.value)/1e3,o=Math.floor(i%60).toString().padStart(2,"0");return`${Math.floor(i/60).toString().padStart(2,"0")}:${o}`});function n(){s.value=e.value}return{timer:t,resetTimer:n}}function as(s=5){const e=[],t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",n=t.length;for(let i=0;i0){const o=document.getElementsByTagName("link"),r=document.querySelector("meta[property=csp-nonce]"),a=(r==null?void 0:r.nonce)||(r==null?void 0:r.getAttribute("nonce"));i=Promise.all(t.map(l=>{if(l=Co(l),l in Ss)return;Ss[l]=!0;const c=l.endsWith(".css"),u=c?'[rel="stylesheet"]':"";if(!!n)for(let d=o.length-1;d>=0;d--){const p=o[d];if(p.href===l&&(!c||p.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${u}`))return;const h=document.createElement("link");if(h.rel=c?"stylesheet":$o,c||(h.as="script",h.crossOrigin=""),h.href=l,a&&h.setAttribute("nonce",a),document.head.appendChild(h),c)return new Promise((d,p)=>{h.addEventListener("load",d),h.addEventListener("error",()=>p(new Error(`Unable to preload CSS for ${l}`)))})}))}return i.then(()=>e()).catch(o=>{const r=new Event("vite:preloadError",{cancelable:!0});if(r.payload=o,window.dispatchEvent(r),!r.defaultPrevented)throw o})},rn=(s,e)=>{const t=s.__vccOpts||s;for(const[n,i]of e)t[n]=i;return t},Lo={},jo={class:"px-4 py-10 text-center text-red-700 dark:text-red-500 font-bold font-mono"};function Io(s,e){return Rs(),En("div",jo," An error occurred on this slide. Check the terminal for more information. ")}const No=rn(Lo,[["render",Io],["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/layouts/error.vue"]]),_s=Object.freeze(Object.defineProperty({__proto__:null,default:No},Symbol.toStringTag,{value:"Module"})),ce=ae({theme:"default",layout:"cover"}),Ho=ae({layout:w(()=>ce.layout),transition:w(()=>ce.transition),class:w(()=>ce.class),clicks:w(()=>ce.clicks),name:w(()=>ce.name),preload:w(()=>ce.preload),slide:{index:0,content:"",note:"",title:"Software Architecture",level:1,noteHTML:"",raw:"",frontmatter:ce,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/index.md",start:0,id:0,no:1},__clicksContext:null,__preloaded:!1}),ue=ae({layout:"two-cols"}),Ro=ae({layout:w(()=>ue.layout),transition:w(()=>ue.transition),class:w(()=>ue.class),clicks:w(()=>ue.clicks),name:w(()=>ue.name),preload:w(()=>ue.preload),slide:{index:1,content:"",note:"",title:"Introduction",level:1,noteHTML:"",raw:"",frontmatter:ue,filepath:"/Users/chun/Develop/software-architecture-explained-with-spring/index.md",start:11,id:1,no:2},__clicksContext:null,__preloaded:!1}),Do=[{no:1,meta:Ho,component:async()=>{try{return await oe(()=>import("./slidev/1-BnBH_Ut6.js"),__vite__mapDeps([0,1,2,3,4]))}catch(s){return console.error("Failed to load slide 1:",s),_s}}},{no:2,meta:Ro,component:async()=>{try{return await oe(()=>import("./slidev/2-Ckd0K9NJ.js"),__vite__mapDeps([5,1,2,3,4]))}catch(s){return console.error("Failed to load slide 2:",s),_s}}}],te=Gt(Do);function We(s){return te.value.find(e=>{var t;return e.no===+s||((t=e.meta.slide)==null?void 0:t.frontmatter.routeAlias)===s})}function _e(s,e){var n;(typeof s=="number"||typeof s=="string")&&(s=We(s));const t=((n=s.meta.slide)==null?void 0:n.frontmatter.routeAlias)??s.no;return e?`/presenter/${t}`:`/${t}`}function Fo(s,e,{mode:t="replace"}={}){const n=pt();return w({get(){const i=n.currentRoute.value.query[s];return i==null?e??null:Array.isArray(i)?i.filter(Boolean):i},set(i){nt(()=>{(n.currentRoute.value.query[s]??(e==null?void 0:e.toString()))!==i.toString()&&n[Jt(t)]({query:{...n.currentRoute.value.query,[s]:`${i}`===e?void 0:i}})})}})}const Dt=P(0);function Bo(s){return s===!1||s==="false"?null:s==null||s===!0||s==="true"?"+1":Array.isArray(s)?[+s[0],+s[1]]:typeof s=="string"&&"+-".includes(s[0])?s:+s}function an(s,e=0,t){const n={get current(){return De(+s.value,e,n.total)},set current(i){s.value=De(+i,e,n.total)},clicksStart:e,relativeOffsets:new Map,maxMap:$n(new Map),onMounted(){},calculateSince(i,o=1){let r,a,l;if(typeof i=="string"){const c=n.currentOffset,u=+i;r=c+u,a=c+u+o-1,l=u+o-1}else r=i,a=i+o-1,l=0;return{start:r,end:+Number.POSITIVE_INFINITY,max:a,delta:l,isCurrent:w(()=>n.current===r),isActive:w(()=>n.current>=r)}},calculateRange([i,o]){let r,a,l;return typeof i=="string"?(r=n.currentOffset+ +i,l=+i):(r=i,l=0),typeof o=="string"?(a=r+ +o,l+=+o):a=o,{start:r,end:a,max:a,delta:l,isCurrent:w(()=>n.current===r),isActive:w(()=>r<=n.current&&n.currentj.colorSchema!=="auto"),ln=w({get(){return Os.value?j.colorSchema==="dark":At.value==="auto"?Ms.value:At.value==="dark"},set(s){Os.value||(At.value=s===Ms.value?"auto":s?"dark":"light")}}),ha=Ds(ln);gt&&K(ln,s=>{const e=document.querySelector("html");e.classList.toggle("dark",s),e.classList.toggle("light",!s)},{immediate:!0});const zo={"slide-left":"slide-left | slide-right","slide-right":"slide-right | slide-left","slide-up":"slide-up | slide-down","slide-down":"slide-down | slide-up"};function Vo(s,e=!1){if(!s||(typeof s=="string"&&(s={name:s}),!s.name))return;let t=s.name.includes("|")?s.name:zo[s.name]||s.name;if(t.includes("|")){const[n,i]=t.split("|").map(o=>o.trim());t=e?i:n}if(t)return{...s,name:t}}function qo(s,e,t){var i,o;let n=s>0?(i=t==null?void 0:t.meta)==null?void 0:i.transition:(o=e==null?void 0:e.meta)==null?void 0:o.transition;return n||(n=j.transition),Vo(n,s<0)}function cn(s,e,t=1){var i,o,r,a,l,c,u,f,h;const n=(o=(i=e.meta)==null?void 0:i.slide)==null?void 0:o.level;n&&n>t&&s.length>0?cn(s[s.length-1].children,e,t+1):s.push({no:e.no,children:[],level:t,path:_e(((a=(r=e.meta.slide)==null?void 0:r.frontmatter)==null?void 0:a.routeAlias)??e.no,!1),hideInToc:!!((u=(c=(l=e.meta)==null?void 0:l.slide)==null?void 0:c.frontmatter)!=null&&u.hideInToc),title:(h=(f=e.meta)==null?void 0:f.slide)==null?void 0:h.title})}function un(s,e,t=!1,n,i){return s.map(o=>{const r={...o,active:o.no===(i==null?void 0:i.value),hasActiveParent:t};return r.children.length>0&&(r.children=un(r.children,e,r.active||r.hasActiveParent,r,i)),n&&(r.active||r.activeParent)&&(n.activeParent=!0),r})}function fn(s,e=1){return s.filter(t=>!t.hideInToc).map(t=>({...t,children:fn(t.children,e+1)}))}function xo(s,e,t){const n=w(()=>s.value.filter(o=>{var r,a;return(a=(r=o.meta)==null?void 0:r.slide)==null?void 0:a.title}).reduce((o,r)=>(cn(o,r),o),[])),i=w(()=>un(n.value,t.value,void 0,void 0,e));return w(()=>fn(i.value))}function Uo(s,e,t=P(0),n,i,o){const r=w(()=>te.value.length),a=P(0),l=P(0),c=w(()=>_e(s.value,n.value)),u=w(()=>s.value.no),f=w(()=>{var H;return((H=s.value.meta)==null?void 0:H.layout)||(u.value===1?"cover":"default")}),h=w(()=>e.value.current),d=w(()=>e.value.clicksStart),p=w(()=>e.value.total),g=w(()=>te.value[Math.min(te.value.length,u.value+1)-1]),m=w(()=>te.value[Math.max(1,u.value-1)-1]),y=w(()=>u.valueu.value>1||h.value>0),b=w(()=>qo(a.value,s.value,m.value));K(s,(H,L)=>{a.value=H.no-L.no});async function k(H){return!1}const M=xo(te,u,s);async function _(){l.value=1,p.value<=t.value?await T():t.value+=1}async function A(){l.value=-1,t.value<=d.value?await C():t.value-=1}async function T(){l.value=1,u.value{const s=pt(),e=w(()=>s.currentRoute.value),t=w(()=>(s.currentRoute.value.query,new URLSearchParams(location.search))),n=w(()=>t.value.has("print")),i=w(()=>t.value.get("print")==="clicks"),o=w(()=>t.value.has("embedded")),r=w(()=>e.value.name==="play"),a=w(()=>e.value.name==="presenter"),l=w(()=>e.value.name==="notes"),c=w(()=>!a.value&&(!j.remote||t.value.get("password")===j.remote)),u=Ln(r,a),f=w(()=>{var y;return u.value?((y=We(e.value.params.no))==null?void 0:y.no)??1:1}),h=w(()=>te.value[f.value-1]),d=Fo("clicks","0"),p=w(()=>m(h.value)),g=w({get(){let y=+(d.value||0);return Number.isNaN(y)&&(y=0),y},set(y){d.value=y.toString()}});function m(y){var k,M;if((k=y==null?void 0:y.meta)!=null&&k.__clicksContext)return y.meta.__clicksContext;const v=y.no,b=an(w({get(){return f.value===v?Math.max(+(d.value??0),b.clicksStart):f.value>v?It:b.clicksStart},set(_){f.value===v&&(d.value=De(_,b.clicksStart,b.total).toString())}}),((M=y==null?void 0:y.meta.slide)==null?void 0:M.frontmatter.clicksStart)??0,y==null?void 0:y.meta.clicks);return b.onMounted=()=>{f.value===v&&(d.value=De(+d.value,b.clicksStart,b.total).toString())},y!=null&&y.meta&&(y.meta.__clicksContext=b),b}return{router:s,currentRoute:e,isPrintMode:n,isPrintWithClicks:i,isEmbedded:o,isPlaying:r,isPresenter:a,isNotesViewer:l,isPresenterAvailable:c,hasPrimarySlide:u,currentSlideNo:f,currentSlideRoute:h,clicksContext:p,queryClicksRaw:d,queryClicks:g,getPrimaryClicks:m}}),Ft=Fs(()=>{const s=Ko(),e=pt(),t=Uo(s.currentSlideRoute,s.clicksContext,s.queryClicks,s.isPresenter,s.isPrintMode,e);return K([t.total,s.currentRoute],async()=>{s.hasPrimarySlide.value&&!We(s.currentRoute.value.params.no)&&await t.goLast()},{flush:"pre",immediate:!0}),{...t,...s}}),Jo=[];function Go(){const s=Hs().appContext.app,e=ae({nav:Ft(),configs:j,themeConfigs:w(()=>j.themeConfig)});s.provide(Yt,P("none")),s.provide(eo,e),s.provide(Zt,w(()=>e.nav.currentSlideNo)),s.provide(mt,Gt(Wo()));for(const f of Jo)f();const t=j.titleTemplate.replace("%s",j.title||"Slidev"),{clicksContext:n,currentSlideNo:i,hasPrimarySlide:o,isNotesViewer:r,isPresenter:a}=Ft();qi({title:t,htmlAttrs:j.htmlAttrs}),Ji(`${t} - shared`),Yi(`${t} - drawings`);const l=`${location.origin}_${as()}`;function c(){r.value||!a.value&&!no.includes(location.host.split(":")[0])||(a.value?(Ee("page",+i.value),Ee("clicks",n.value.current)):(Ee("viewerPage",+i.value),Ee("viewerClicks",n.value.current)),Ee("lastUpdate",{id:l,type:a.value?"presenter":"viewer",time:new Date().getTime()}))}const u=pt();u.afterEach(c),K(n,c),Gi(f=>{var h;o.value&&((h=f.lastUpdate)==null?void 0:h.type)==="presenter"&&(+f.page!=+i.value||+n.value.current!=+f.clicks)&&(Qs.value=!1,u.replace({path:_e(f.page,a.value),query:{...u.currentRoute.value.query,clicks:f.clicks||0}}))})}const Qo=jn({__name:"App",setup(s){return Go(),Me(()=>{for(const[e,t]of Object.entries(ni.value))document.body.style.setProperty(e,t.toString())}),(e,t)=>{const n=In("RouterView");return Rs(),Nn(n)}}}),Zo=rn(Qo,[["__file","/usr/local/lib/node_modules/@slidev/cli/node_modules/@slidev/client/App.vue"]]);function da(s,e=""){var i,o;const t=["slidev-page",e],n=(o=(i=s==null?void 0:s.meta)==null?void 0:i.slide)==null?void 0:o.no;return n!=null&&t.push(`slidev-page-${n}`),t.filter(Boolean).join(" ")}async function pa(){const{saveAs:s}=await oe(()=>import("./modules/file-saver-CvNQQnEe.js").then(e=>e.F),[]);s(typeof j.download=="string"?j.download:j.exportFilename?`${j.exportFilename}.pdf`:"/sa2024/slidev-exported.pdf",`${j.title}.pdf`)}function Oe(s,e,t){var n;return((n=s.instance)==null?void 0:n.$).provides[e]??t}function Yo(){return{install(s){s.directive("click",{name:"v-click",mounted(e,t){const n=tt(e,t,t.value);n!=null&&(e.classList.toggle(Ze,!0),e.dataset.slidevClicksStart=String(n.start),Number.isFinite(n.end)&&(e.dataset.slidevClicksEnd=String(n.end)),e.watchStopHandle=Me(()=>{const i=n.isActive.value,o=n.isCurrent.value,r=i&&!o;n.flagHide?(e.classList.toggle(n.flagFade?Ce:$e,i),e.classList.toggle(_t,i)):e.classList.toggle(n.flagFade?Ce:$e,!i),e.classList.toggle(Mt,o),e.classList.toggle(Ot,r)}))},unmounted:Tt}),s.directive("after",{name:"v-after",mounted(e,t){const n=tt(e,t,"+0");n!=null&&(e.classList.toggle(Ze,!0),e.watchStopHandle=Me(()=>{const i=n.isActive.value,o=n.isCurrent.value,r=i&&!o;n.flagHide?(e.classList.toggle(n.flagFade?Ce:$e,i),e.classList.toggle(_t,i)):e.classList.toggle(n.flagFade?Ce:$e,!i),e.classList.toggle(Mt,o),e.classList.toggle(Ot,r)}))},unmounted:Tt}),s.directive("click-hide",{name:"v-click-hide",mounted(e,t){const n=tt(e,t,t.value,!0);n!=null&&(e.classList.toggle(Ze,!0),e.watchStopHandle=Me(()=>{const i=n.isActive.value,o=n.isCurrent.value,r=i&&!o;e.classList.toggle(n.flagFade?Ce:$e,i),e.classList.toggle(_t,i),e.classList.toggle(Mt,o),e.classList.toggle(Ot,r)}))},unmounted:Tt})}}}const hn=new Map;function tt(s,e,t,n=!1){var h;const i=(h=Oe(e,mt))==null?void 0:h.value;if(!s||!i)return null;const o=n||e.modifiers.hide!==!1&&e.modifiers.hide!=null,r=e.modifiers.fade!==!1&&e.modifiers.fade!=null,a=Bo(t),l=i.calculate(a);if(!l)return null;i.register(s,l);const c=w(()=>o?!l.isActive.value:l.isActive.value),u=w(()=>c.value?"shown":Number.isFinite(l.end)?i.currentn.push(...i)),Bt(n,e,t)}function tr(s,e){return s[0]===e[0]&&s[1]===e[1]}function sr(s,e,t,n=1){const i=t,o=Math.max(e,.1),r=s[0]&&s[0][0]&&typeof s[0][0]=="number"?[s]:s,a=[0,0];if(i)for(const c of r)Bt(c,a,i);const l=nr(r,o,n);if(i){for(const c of r)Bt(c,a,-i);er(l,a,-i)}return l}function nr(s,e,t){const n=[];for(const c of s){const u=[...c];tr(u[0],u[u.length-1])||u.push([u[0][0],u[0][1]]),u.length>2&&n.push(u)}const i=[];e=Math.max(e,.1);const o=[];for(const c of n)for(let u=0;uc.yminu.ymin?1:c.xu.x?1:c.ymax===u.ymax?0:(c.ymax-u.ymax)/Math.abs(c.ymax-u.ymax)),!o.length)return i;let r=[],a=o[0].ymin,l=0;for(;r.length||o.length;){if(o.length){let c=-1;for(let f=0;fa);f++)c=f;o.splice(0,c+1).forEach(f=>{r.push({s:a,edge:f})})}if(r=r.filter(c=>!(c.edge.ymax<=a)),r.sort((c,u)=>c.edge.x===u.edge.x?0:(c.edge.x-u.edge.x)/Math.abs(c.edge.x-u.edge.x)),(t!==1||l%e===0)&&r.length>1)for(let c=0;c=r.length)break;const f=r[c].edge,h=r[u].edge;i.push([[Math.round(f.x),a],[Math.round(h.x),a]])}a+=t,r.forEach(c=>{c.edge.x=c.edge.x+t*c.edge.islope}),l++}return i}function Ve(s,e){var t;const n=e.hachureAngle+90;let i=e.hachureGap;i<0&&(i=e.strokeWidth*4),i=Math.round(Math.max(i,.1));let o=1;return e.roughness>=1&&(((t=e.randomizer)===null||t===void 0?void 0:t.next())||Math.random())>.7&&(o=i),sr(s,i,n,o||1)}class ls{constructor(e){this.helper=e}fillPolygons(e,t){return this._fillPolygons(e,t)}_fillPolygons(e,t){const n=Ve(e,t);return{type:"fillSketch",ops:this.renderLines(n,t)}}renderLines(e,t){const n=[];for(const i of e)n.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],t));return n}}function kt(s){const e=s[0],t=s[1];return Math.sqrt(Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2))}class ir extends ls{fillPolygons(e,t){let n=t.hachureGap;n<0&&(n=t.strokeWidth*4),n=Math.max(n,.1);const i=Object.assign({},t,{hachureGap:n}),o=Ve(e,i),r=Math.PI/180*t.hachureAngle,a=[],l=n*.5*Math.cos(r),c=n*.5*Math.sin(r);for(const[f,h]of o)kt([f,h])&&a.push([[f[0]-l,f[1]+c],[...h]],[[f[0]+l,f[1]-c],[...h]]);return{type:"fillSketch",ops:this.renderLines(a,t)}}}class or extends ls{fillPolygons(e,t){const n=this._fillPolygons(e,t),i=Object.assign({},t,{hachureAngle:t.hachureAngle+90}),o=this._fillPolygons(e,i);return n.ops=n.ops.concat(o.ops),n}}class rr{constructor(e){this.helper=e}fillPolygons(e,t){t=Object.assign({},t,{hachureAngle:0});const n=Ve(e,t);return this.dotsOnLines(n,t)}dotsOnLines(e,t){const n=[];let i=t.hachureGap;i<0&&(i=t.strokeWidth*4),i=Math.max(i,.1);let o=t.fillWeight;o<0&&(o=t.strokeWidth/2);const r=i/4;for(const a of e){const l=kt(a),c=l/i,u=Math.ceil(c)-1,f=l-u*i,h=(a[0][0]+a[1][0])/2-i/4,d=Math.min(a[0][1],a[1][1]);for(let p=0;p{const a=kt(r),l=Math.floor(a/(n+i)),c=(a+i-l*(n+i))/2;let u=r[0],f=r[1];u[0]>f[0]&&(u=r[1],f=r[0]);const h=Math.atan((f[1]-u[1])/(f[0]-u[0]));for(let d=0;d{const r=kt(o),a=Math.round(r/(2*t));let l=o[0],c=o[1];l[0]>c[0]&&(l=o[1],c=o[0]);const u=Math.atan((c[1]-l[1])/(c[0]-l[0]));for(let f=0;fu%2?c+t:c+e);o.push({key:"C",data:l}),e=l[4],t=l[5];break}case"Q":o.push({key:"Q",data:[...a]}),e=a[2],t=a[3];break;case"q":{const l=a.map((c,u)=>u%2?c+t:c+e);o.push({key:"Q",data:l}),e=l[2],t=l[3];break}case"A":o.push({key:"A",data:[...a]}),e=a[5],t=a[6];break;case"a":e+=a[5],t+=a[6],o.push({key:"A",data:[a[0],a[1],a[2],a[3],a[4],e,t]});break;case"H":o.push({key:"H",data:[...a]}),e=a[0];break;case"h":e+=a[0],o.push({key:"H",data:[e]});break;case"V":o.push({key:"V",data:[...a]}),t=a[0];break;case"v":t+=a[0],o.push({key:"V",data:[t]});break;case"S":o.push({key:"S",data:[...a]}),e=a[2],t=a[3];break;case"s":{const l=a.map((c,u)=>u%2?c+t:c+e);o.push({key:"S",data:l}),e=l[2],t=l[3];break}case"T":o.push({key:"T",data:[...a]}),e=a[0],t=a[1];break;case"t":e+=a[0],t+=a[1],o.push({key:"T",data:[e,t]});break;case"Z":case"z":o.push({key:"Z",data:[]}),e=n,t=i;break}return o}function mn(s){const e=[];let t="",n=0,i=0,o=0,r=0,a=0,l=0;for(const{key:c,data:u}of s){switch(c){case"M":e.push({key:"M",data:[...u]}),[n,i]=u,[o,r]=u;break;case"C":e.push({key:"C",data:[...u]}),n=u[4],i=u[5],a=u[2],l=u[3];break;case"L":e.push({key:"L",data:[...u]}),[n,i]=u;break;case"H":n=u[0],e.push({key:"L",data:[n,i]});break;case"V":i=u[0],e.push({key:"L",data:[n,i]});break;case"S":{let f=0,h=0;t==="C"||t==="S"?(f=n+(n-a),h=i+(i-l)):(f=n,h=i),e.push({key:"C",data:[f,h,...u]}),a=u[0],l=u[1],n=u[2],i=u[3];break}case"T":{const[f,h]=u;let d=0,p=0;t==="Q"||t==="T"?(d=n+(n-a),p=i+(i-l)):(d=n,p=i);const g=n+2*(d-n)/3,m=i+2*(p-i)/3,y=f+2*(d-f)/3,v=h+2*(p-h)/3;e.push({key:"C",data:[g,m,y,v,f,h]}),a=d,l=p,n=f,i=h;break}case"Q":{const[f,h,d,p]=u,g=n+2*(f-n)/3,m=i+2*(h-i)/3,y=d+2*(f-d)/3,v=p+2*(h-p)/3;e.push({key:"C",data:[g,m,y,v,d,p]}),a=f,l=h,n=d,i=p;break}case"A":{const f=Math.abs(u[0]),h=Math.abs(u[1]),d=u[2],p=u[3],g=u[4],m=u[5],y=u[6];f===0||h===0?(e.push({key:"C",data:[n,i,m,y,m,y]}),n=m,i=y):(n!==m||i!==y)&&(yn(n,i,m,y,f,h,d,p,g).forEach(function(b){e.push({key:"C",data:b})}),n=m,i=y);break}case"Z":e.push({key:"Z",data:[]}),n=o,i=r;break}t=c}return e}function hr(s){return Math.PI*s/180}function Le(s,e,t){const n=s*Math.cos(t)-e*Math.sin(t),i=s*Math.sin(t)+e*Math.cos(t);return[n,i]}function yn(s,e,t,n,i,o,r,a,l,c){const u=hr(r);let f=[],h=0,d=0,p=0,g=0;if(c)[h,d,p,g]=c;else{[s,e]=Le(s,e,-u),[t,n]=Le(t,n,-u);const O=(s-t)/2,E=(e-n)/2;let I=O*O/(i*i)+E*E/(o*o);I>1&&(I=Math.sqrt(I),i=I*i,o=I*o);const H=a===l?-1:1,L=i*i,ee=o*o,B=L*ee-L*E*E-ee*O*O,G=L*E*E+ee*O*O,$=H*Math.sqrt(Math.abs(B/G));p=$*i*E/o+(s+t)/2,g=$*-o*O/i+(e+n)/2,h=Math.asin(parseFloat(((e-g)/o).toFixed(9))),d=Math.asin(parseFloat(((n-g)/o).toFixed(9))),sd&&(h=h-Math.PI*2),!l&&d>h&&(d=d-Math.PI*2)}let m=d-h;if(Math.abs(m)>Math.PI*120/180){const O=d,E=t,I=n;l&&d>h?d=h+Math.PI*120/180*1:d=h+Math.PI*120/180*-1,t=p+i*Math.cos(d),n=g+o*Math.sin(d),f=yn(t,n,E,I,i,o,r,0,l,[d,O,p,g])}m=d-h;const y=Math.cos(h),v=Math.sin(h),b=Math.cos(d),k=Math.sin(d),M=Math.tan(m/4),_=4/3*i*M,A=4/3*o*M,T=[s,e],C=[s+_*v,e-A*y],D=[t+_*k,n-A*b],X=[t,n];if(C[0]=2*T[0]-C[0],C[1]=2*T[1]-C[1],c)return[C,D,X].concat(f);{f=[C,D,X].concat(f);const O=[];for(let E=0;E2){const i=[];for(let o=0;oMath.PI*2&&(d=0,p=Math.PI*2);const g=Math.PI*2/l.curveStepCount,m=Math.min(g/2,(p-d)/2),y=Cs(m,c,u,f,h,d,p,1,l);if(!l.disableMultiStroke){const v=Cs(m,c,u,f,h,d,p,1.5,l);y.push(...v)}return r&&(a?y.push(...re(c,u,c+f*Math.cos(d),u+h*Math.sin(d),l),...re(c,u,c+f*Math.cos(p),u+h*Math.sin(p),l)):y.push({op:"lineTo",data:[c,u]},{op:"lineTo",data:[c+f*Math.cos(d),u+h*Math.sin(d)]})),{type:"path",ops:y}}function Ts(s,e){const t=mn(gn(cs(s))),n=[];let i=[0,0],o=[0,0];for(const{key:r,data:a}of t)switch(r){case"M":{o=[a[0],a[1]],i=[a[0],a[1]];break}case"L":n.push(...re(o[0],o[1],a[0],a[1],e)),o=[a[0],a[1]];break;case"C":{const[l,c,u,f,h,d]=a;n.push(...br(l,c,u,f,h,d,o,e)),o=[h,d];break}case"Z":n.push(...re(o[0],o[1],i[0],i[1],e)),o=[i[0],i[1]];break}return{type:"path",ops:n}}function $t(s,e){const t=[];for(const n of s)if(n.length){const i=e.maxRandomnessOffset||0,o=n.length;if(o>2){t.push({op:"move",data:[n[0][0]+S(i,e),n[0][1]+S(i,e)]});for(let r=1;rMath.PI*2&&(f=0,h=Math.PI*2);const d=(h-f)/r.curveStepCount,p=[];for(let g=f;g<=h;g=g+d)p.push([a+c*Math.cos(g),l+u*Math.sin(g)]);return p.push([a+c*Math.cos(h),l+u*Math.sin(h)]),p.push([a,l]),be([p],r)}function mr(s,e){return S(s,e)}function yr(s,e,t){return ct(s,e,t)}function vr(s,e,t,n,i){return re(s,e,t,n,i,!0)}function Es(s){const e=Object.assign({},s);return e.randomizer=void 0,s.seed&&(e.seed=s.seed+1),e}function wn(s){return s.randomizer||(s.randomizer=new Xo(s.seed||0)),s.randomizer.next()}function ct(s,e,t,n=1){return t.roughness*n*(wn(t)*(e-s)+s)}function S(s,e,t=1){return ct(-s,s,e,t)}function re(s,e,t,n,i,o=!1){const r=o?i.disableMultiStrokeFill:i.disableMultiStroke,a=qt(s,e,t,n,i,!0,!1);if(r)return a;const l=qt(s,e,t,n,i,!0,!0);return a.concat(l)}function qt(s,e,t,n,i,o,r){const a=Math.pow(s-t,2)+Math.pow(e-n,2),l=Math.sqrt(a);let c=1;l<200?c=1:l>500?c=.4:c=-.0016668*l+1.233334;let u=i.maxRandomnessOffset||0;u*u*100>a&&(u=l/10);const f=u/2,h=.2+wn(i)*.2;let d=i.bowing*i.maxRandomnessOffset*(n-e)/200,p=i.bowing*i.maxRandomnessOffset*(s-t)/200;d=S(d,i,c),p=S(p,i,c);const g=[],m=()=>S(f,i,c),y=()=>S(u,i,c),v=i.preserveVertices;return o&&(r?g.push({op:"move",data:[s+(v?0:m()),e+(v?0:m())]}):g.push({op:"move",data:[s+(v?0:S(u,i,c)),e+(v?0:S(u,i,c))]})),r?g.push({op:"bcurveTo",data:[d+s+(t-s)*h+m(),p+e+(n-e)*h+m(),d+s+2*(t-s)*h+m(),p+e+2*(n-e)*h+m(),t+(v?0:m()),n+(v?0:m())]}):g.push({op:"bcurveTo",data:[d+s+(t-s)*h+y(),p+e+(n-e)*h+y(),d+s+2*(t-s)*h+y(),p+e+2*(n-e)*h+y(),t+(v?0:y()),n+(v?0:y())]}),g}function Ue(s,e,t){if(!s.length)return[];const n=[];n.push([s[0][0]+S(e,t),s[0][1]+S(e,t)]),n.push([s[0][0]+S(e,t),s[0][1]+S(e,t)]);for(let i=1;i3){const o=[],r=1-t.curveTightness;i.push({op:"move",data:[s[1][0],s[1][1]]});for(let a=1;a+21&&i.push(o):i.push(o),i.push(s[e+3])}else{const r=s[e+0],a=s[e+1],l=s[e+2],c=s[e+3],u=he(r,a,.5),f=he(a,l,.5),h=he(l,c,.5),d=he(u,f,.5),p=he(f,h,.5),g=he(d,p,.5);xt([r,u,d,g],0,t,i),xt([g,p,h,c],0,t,i)}return i}function _r(s,e){return ft(s,0,s.length,e)}function ft(s,e,t,n,i){const o=i||[],r=s[e],a=s[t-1];let l=0,c=1;for(let u=e+1;ul&&(l=f,c=u)}return Math.sqrt(l)>n?(ft(s,e,c+1,n,o),ft(s,c,t,n,o)):(o.length||o.push(r),o.push(a)),o}function Ut(s,e=.15,t){const n=[],i=(s.length-1)/3;for(let o=0;o0?ft(n,0,n.length,t):n}function Mr(s,e,t){const n=cs(s),i=mn(gn(n)),o=[];let r=[],a=[0,0],l=[];const c=()=>{l.length>=4&&r.push(...Ut(l,e)),l=[]},u=()=>{c(),r.length&&(o.push(r),r=[])};for(const{key:h,data:d}of i)switch(h){case"M":u(),a=[d[0],d[1]],r.push(a);break;case"L":c(),r.push([d[0],d[1]]);break;case"C":if(!l.length){const p=r.length?r[r.length-1]:a;l.push([p[0],p[1]])}l.push([d[0],d[1]]),l.push([d[2],d[3]]),l.push([d[4],d[5]]);break;case"Z":c(),r.push([a[0],a[1]]);break}if(u(),!t)return o;const f=[];for(const h of o){const d=_r(h,t);d.length&&f.push(d)}return f}const q="none";class Or{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return dn()}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,t,n){return{shape:e,sets:t||[],options:n||this.defaultOptions}}line(e,t,n,i,o){const r=this._o(o);return this._d("line",[U(e,t,n,i,r)],r)}rectangle(e,t,n,i,o){const r=this._o(o),a=[],l=vn(e,t,n,i,r);if(r.fill){const c=[[e,t],[e+n,t],[e+n,t+i],[e,t+i]];r.fillStyle==="solid"?a.push($t([c],r)):a.push(be([c],r))}return r.stroke!==q&&a.push(l),this._d("rectangle",a,r)}ellipse(e,t,n,i,o){const r=this._o(o),a=[],l=bn(n,i,r),c=Vt(e,t,r,l);if(r.fill)if(r.fillStyle==="solid"){const u=Vt(e,t,r,l).opset;u.type="fillPath",a.push(u)}else a.push(be([c.estimatedPoints],r));return r.stroke!==q&&a.push(c.opset),this._d("ellipse",a,r)}circle(e,t,n,i){const o=this.ellipse(e,t,n,n,i);return o.shape="circle",o}linearPath(e,t){const n=this._o(t);return this._d("linearPath",[Re(e,!1,n)],n)}arc(e,t,n,i,o,r,a=!1,l){const c=this._o(l),u=[],f=As(e,t,n,i,o,r,a,!0,c);if(a&&c.fill)if(c.fillStyle==="solid"){const h=Object.assign({},c);h.disableMultiStroke=!0;const d=As(e,t,n,i,o,r,!0,!1,h);d.type="fillPath",u.push(d)}else u.push(gr(e,t,n,i,o,r,c));return c.stroke!==q&&u.push(f),this._d("arc",u,c)}curve(e,t){const n=this._o(t),i=[],o=Ps(e,n);if(n.fill&&n.fill!==q)if(n.fillStyle==="solid"){const r=Ps(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(r.ops)})}else{const r=[],a=e;if(a.length){const c=typeof a[0][0]=="number"?[a]:a;for(const u of c)u.length<3?r.push(...u):u.length===3?r.push(...Ut(Ls([u[0],u[0],u[1],u[2]]),10,(1+n.roughness)/2)):r.push(...Ut(Ls(u),10,(1+n.roughness)/2))}r.length&&i.push(be([r],n))}return n.stroke!==q&&i.push(o),this._d("curve",i,n)}polygon(e,t){const n=this._o(t),i=[],o=Re(e,!0,n);return n.fill&&(n.fillStyle==="solid"?i.push($t([e],n)):i.push(be([e],n))),n.stroke!==q&&i.push(o),this._d("polygon",i,n)}path(e,t){const n=this._o(t),i=[];if(!e)return this._d("path",i,n);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const o=n.fill&&n.fill!=="transparent"&&n.fill!==q,r=n.stroke!==q,a=!!(n.simplification&&n.simplification<1),l=a?4-4*(n.simplification||1):(1+n.roughness)/2,c=Mr(e,1,l),u=Ts(e,n);if(o)if(n.fillStyle==="solid")if(c.length===1){const f=Ts(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(f.ops)})}else i.push($t(c,n));else i.push(be(c,n));return r&&(a?c.forEach(f=>{i.push(Re(f,!1,n))}):i.push(u)),this._d("path",i,n)}opsToPath(e,t){let n="";for(const i of e.ops){const o=typeof t=="number"&&t>=0?i.data.map(r=>+r.toFixed(t)):i.data;switch(i.op){case"move":n+=`M${o[0]} ${o[1]} `;break;case"bcurveTo":n+=`C${o[0]} ${o[1]}, ${o[2]} ${o[3]}, ${o[4]} ${o[5]} `;break;case"lineTo":n+=`L${o[0]} ${o[1]} `;break}}return n.trim()}toPaths(e){const t=e.sets||[],n=e.options||this.defaultOptions,i=[];for(const o of t){let r=null;switch(o.type){case"path":r={d:this.opsToPath(o),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:q};break;case"fillPath":r={d:this.opsToPath(o),stroke:q,strokeWidth:0,fill:n.fill||q};break;case"fillSketch":r=this.fillSketch(o,n);break}r&&i.push(r)}return i}fillSketch(e,t){let n=t.fillWeight;return n<0&&(n=t.strokeWidth/2),{d:this.opsToPath(e),stroke:t.fill||q,strokeWidth:n,fill:q}}_mergedShape(e){return e.filter((t,n)=>n===0?!0:t.op!=="move")}}const kn="http://www.w3.org/2000/svg",Pr=800;let Ct=null;function Ar(){return Ct||(Ct=new Or().defaultOptions),Ct}function Lt(s,e,t){return{...Ar(),maxRandomnessOffset:2,roughness:s==="highlight"?3:1.5,bowing:1,stroke:"#000",strokeWidth:1.5,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,disableMultiStroke:s!=="double",disableMultiStrokeFill:!1,seed:e,...t}}function Tr(s){const e=s.padding;if(e||e===0){if(typeof e=="number")return[e,e,e,e];if(Array.isArray(e)){const t=e;if(t.length)switch(t.length){case 4:return[...t];case 1:return[t[0],t[0],t[0],t[0]];case 2:return[...t,...t];case 3:return[...t,t[1]];default:return[t[0],t[1],t[2],t[3]]}}}return[5,5,5,5]}function Er(s,e,t,n,i,o){const r=[];let a=t.strokeWidth||2;const l=Tr(t),c=t.animate===void 0?!0:!!t.animate,u=t.iterations||2,f=t.rtl?1:0,h=Lt("single",o,t);switch(t.type){case"underline":{const d=e.y+e.h+l[2];for(let p=f;pv.setAttribute(b,k);for(const v of d){const b=document.createElementNS(kn,"path");if(y(b,"d",v),y(b,"fill","none"),y(b,"stroke",t.color||"currentColor"),y(b,"stroke-width",`${a}`),t.opacity!==void 0&&y(b,"style",`opacity:${t.opacity}`),c){const k=b.getTotalLength();p.push(k),m+=k}s.appendChild(b),g.push(b)}if(c){let v=0;for(let b=0;bsetTimeout(e,s))}function $r(s){const e=[];for(const t of s){let n="";for(const i of t.ops){const o=i.data;switch(i.op){case"move":n.trim()&&e.push(n.trim()),n=`M${o[0]} ${o[1]} `;break;case"bcurveTo":n+=`C${o[0]} ${o[1]}, ${o[2]} ${o[3]}, ${o[4]} ${o[5]} `;break;case"lineTo":n+=`L${o[0]} ${o[1]} `;break}}n.trim()&&e.push(n.trim())}return e}function Cr(){if(!window.__rno_kf_s){const s=window.__rno_kf_s=document.createElement("style");s.textContent="@keyframes rough-notation-dash { to { stroke-dashoffset: 0; } }",document.head.appendChild(s)}}var Lr=Object.defineProperty,jr=(s,e,t)=>e in s?Lr(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t,Q=(s,e,t)=>(jr(s,typeof e!="symbol"?e+"":e,t),t);class Ir{constructor(e,t){Q(this,"_state","unattached"),Q(this,"_config"),Q(this,"_resizing",!1),Q(this,"_ro"),Q(this,"_seed",dn()),Q(this,"_e"),Q(this,"_svg"),Q(this,"_lastSizes",[]),Q(this,"_animationDelay",0),Q(this,"_resizeListener",()=>{this._resizing||(this._resizing=!0,setTimeout(()=>{this._resizing=!1,this._state==="showing"&&this.haveRectsChanged()&&this.show()},400))}),Q(this,"pendingRefresh"),this._e=e,this._config=JSON.parse(JSON.stringify(t)),this.attach()}getConfig(e){return this._config[e]}setConfig(e,t){this._config[e]!==t&&(this._config[e]=t,this.refresh())}get animate(){return this._config.animate}set animate(e){this._config.animate=e}get animationDuration(){return this._config.animationDuration}set animationDuration(e){this._config.animationDuration=e}get iterations(){return this._config.iterations}set iterations(e){this._config.iterations=e}get color(){return this._config.color}set color(e){this._config.color!==e&&(this._config.color=e,this.refresh())}get class(){return this._config.class}set class(e){this._config.class!==e&&(this._config.class=e,this._svg&&this._svg.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" ")))}get strokeWidth(){return this._config.strokeWidth}set strokeWidth(e){this._config.strokeWidth!==e&&(this._config.strokeWidth=e,this.refresh())}get padding(){return this._config.padding}set padding(e){this._config.padding!==e&&(this._config.padding=e,this.refresh())}attach(){if(this._state==="unattached"&&this._e.parentElement){Cr();const e=this._svg=document.createElementNS(kn,"svg");e.setAttribute("class",["rough-annotation",this._config.class||""].filter(Boolean).join(" "));const t=e.style;t.position="absolute",t.top="0",t.left="0",t.overflow="visible",t.pointerEvents="none",t.width="100px",t.height="100px";const n=this._config.type==="highlight";if(this._e.insertAdjacentElement(n?"beforebegin":"afterend",e),this._state="not-showing",n){const i=window.getComputedStyle(this._e).position;(!i||i==="static")&&(this._e.style.position="relative")}this.attachListeners()}}detachListeners(){window.removeEventListener("resize",this._resizeListener),this._ro&&this._ro.unobserve(this._e)}attachListeners(){this.detachListeners(),window.addEventListener("resize",this._resizeListener,{passive:!0}),!this._ro&&"ResizeObserver"in window&&(this._ro=new window.ResizeObserver(e=>{for(const t of e)t.contentRect&&this._resizeListener()})),this._ro&&this._ro.observe(this._e)}haveRectsChanged(){if(this._lastSizes.length){const e=this.rects();if(e.length===this._lastSizes.length){for(let t=0;tMath.round(i)===Math.round(o);return n(e.x,t.x)&&n(e.y,t.y)&&n(e.w,t.w)&&n(e.h,t.h)}isShowing(){return this._state!=="not-showing"}refresh(){this.isShowing()&&!this.pendingRefresh&&(this.pendingRefresh=Promise.resolve().then(()=>{this.isShowing()&&this.show(),delete this.pendingRefresh}))}async show(){switch(this._state){case"unattached":break;case"showing":this.hide(),this._svg&&await this.render(this._svg,!0);break;case"not-showing":this.attach(),this._svg&&await this.render(this._svg,!1);break}}hide(){if(this._svg)for(;this._svg.lastChild;)this._svg.removeChild(this._svg.lastChild);this._state="not-showing"}remove(){this._svg&&this._svg.parentElement&&this._svg.parentElement.removeChild(this._svg),this._svg=void 0,this._state="unattached",this.detachListeners()}async render(e,t){let n=this._config;t&&(n=JSON.parse(JSON.stringify(this._config)),n.animate=!1);const i=this.rects();let o=0;i.forEach(c=>o+=c.w);const r=n.animationDuration||Pr;let a=0;const l=[];for(let c=0;cObject.assign(s,{type:"box"}),circle:s=>Object.assign(s,{type:"circle"}),underline:s=>Object.assign(s,{type:"underline"}),highlight:s=>Object.assign(s,{type:"highlight"}),"strike-through":s=>Object.assign(s,{type:"strike-through"}),"crossed-off":s=>Object.assign(s,{type:"crossed-off"}),bracket:s=>Object.assign(s,{type:"bracket"}),strike:s=>Object.assign(s,{type:"strike-through"}),cross:s=>Object.assign(s,{type:"crossed-off"}),crossed:s=>Object.assign(s,{type:"crossed-off"}),linethrough:s=>Object.assign(s,{type:"strike-through"}),"line-through":s=>Object.assign(s,{type:"strike-through"}),black:s=>z(s,"text-black"),blue:s=>z(s,"text-blue"),cyan:s=>z(s,"text-cyan"),gray:s=>z(s,"text-gray"),green:s=>z(s,"text-green"),indigo:s=>z(s,"text-indigo"),lime:s=>z(s,"text-lime"),orange:s=>z(s,"text-orange"),pink:s=>z(s,"text-pink"),purple:s=>z(s,"text-purple"),red:s=>z(s,"text-red"),teal:s=>z(s,"text-teal"),white:s=>z(s,"text-white"),yellow:s=>z(s,"text-yellow")},Hr=[[/^delay-?(\d+)?$/,(s,e,t)=>{const n=(s[1]?Number.parseInt(s[1]):t)||300;return e.delay=n,e}],[/^(?:op|opacity)-?(\d+)?$/,(s,e,t)=>{const n=(s[1]?Number.parseInt(s[1]):t)||100;return e.opacity=n/100,e}]];function Rr(){return{install(s){s.directive("mark",{name:"v-mark",mounted:(e,t)=>{const n=w(()=>{const r=typeof t.value=="object"&&!Array.isArray(t.value)?{...t.value}:{at:t.value};let a={at:r.at};const l=Object.entries(t.modifiers).filter(([u,f])=>{if(Is[u])return a=Is[u](a,f),!1;for(const[h,d]of Hr){const p=u.match(h);if(p)return a=d(p,a,f),!1}return!0});l.length&&console.warn("[Slidev] Invalid modifiers for v-mark:",l);const c={...a,...r};return c.type||(c.type="underline"),c}),i=Nr(e,n.value),o=tt(e,t,n.value.at);if(!o){i.show();return}e.watchStopHandle=Me(()=>{let r;n.value.class&&(i.class=n.value.class),n.value.color&&(i.color=n.value.color);const a=n.value.at;a===!0?r=!0:a===!1?r=!1:r=o.isActive.value,r!=null&&(r?i.show():i.hide())})},unmounted:e=>{var t;(t=e.watchStopHandle)==null||t.call(e)}})}}}const ga=P(!1),ma=P(!1),ya=P(!1),Dr=P(!1),va=P(!0),ba=Hn({xs:460,...Wn}),ht=Rn(),wa=Dn(),ka=w(()=>ht.height.value-ht.width.value/Bs.value>120),Sa=Fn(gt?document.body:null),Kt=Bn(),_a=w(()=>{var s,e;return["INPUT","TEXTAREA"].includes(((s=Kt.value)==null?void 0:s.tagName)||"")||((e=Kt.value)==null?void 0:e.classList.contains("CodeMirror-code"))}),Ma=w(()=>{var s;return["BUTTON","A"].includes(((s=Kt.value)==null?void 0:s.tagName)||"")});Y("slidev-camera","default",{listenToStorageChanges:!1});Y("slidev-mic","default",{listenToStorageChanges:!1});const Fr=Y("slidev-scale",0),Oa=Y("slidev-presenter-cursor",!0,{listenToStorageChanges:!1}),Br=Y("slidev-show-editor",!1,{listenToStorageChanges:!1}),Wr=Y("slidev-editor-vertical",!1,{listenToStorageChanges:!1}),zr=Y("slidev-editor-width",gt?window.innerWidth*.4:318,{listenToStorageChanges:!1}),Vr=Y("slidev-editor-height",gt?window.innerHeight*.4:300,{listenToStorageChanges:!1}),Ke=Gt(null),dt=Y("slidev-presenter-font-size",1,{listenToStorageChanges:!1}),Je=Y("slidev-presenter-layout",1,{listenToStorageChanges:!1});function Pa(){Je.value=Je.value+1,Je.value>2&&(Je.value=1)}function Aa(){dt.value=Math.min(2,dt.value+.1)}function Ta(){dt.value=Math.max(.5,dt.value-.1)}const Ea=Ds(Dr);function qr(s=Ns(Gs,P())){const e=zn(s),t=K([Br,Wr,zr,Vr,Fr,ht.width,ht.height],()=>{setTimeout(e.update,300)},{flush:"post",immediate:!0});return{...e,stop:t}}function xr(s){return()=>{}}function Ur(s,e,t){var G;function n($){return s?Oe(s,$):xn($)}const i=n(Yt),o=n(to)??{},r=n(Zt),a=w(()=>xr(r.value)),l=n(Xi)??P(1),c=n(so)??P(1),{left:u,top:f,stop:h}=qr(n(Gs)??P()),d=["slide","presenter"].includes(i.value);let p=s?"directive":"prop",g=as(),m;if(Array.isArray(e)?m=e:typeof e=="string"&&e.includes(",")?m=e.split(",").map(Number):e!=null&&(p="frontmatter",g=`${e}`,e=(G=o==null?void 0:o.dragPos)==null?void 0:G[g],m=e==null?void 0:e.split(",").map(Number)),p!=="frontmatter"&&!t)throw new Error("[Slidev] Can not identify the source position of the v-drag element, please provide an explicit `id` prop.");const y=[h],v=e!=null&&!Number.isFinite(m==null?void 0:m[3]);m??(m=[Number.NaN,Number.NaN,0]);const b=P(m[2]),k=P(m[0]+m[2]/2),M=P(m[4]??0),_=w(()=>M.value*Math.PI/180),A=w(()=>Math.sin(_.value)),T=w(()=>Math.cos(_.value)),C=P(),D=P({left:0,top:0,width:0,height:0}),X=P(0);function O(){const $=C.value.getBoundingClientRect();D.value={left:$.left/c.value,top:$.top/c.value,width:$.width/c.value,height:$.height/c.value},X.value=(D.value.width+D.value.height)/l.value/(Math.abs(A.value)+Math.abs(T.value))-b.value}y.push(K(b,O,{flush:"post"}));const E=P(m[3]??0),I=w({get:()=>(v?X.value:E.value)||0,set:$=>!v&&(E.value=$)}),H=P(m[1]),L=w({get:()=>H.value+I.value/2,set:$=>H.value=$-I.value/2}),ee=w(()=>Number.isFinite(k.value)?{position:"absolute",zIndex:100,left:`${k.value-b.value/2}px`,top:`${L.value-I.value/2}px`,width:`${b.value}px`,height:v?void 0:`${I.value}px`,transformOrigin:"center center",transform:`rotate(${M.value}deg)`}:{position:"absolute",zIndex:100});y.push(K([k,L,b,I,M],([$,le,Ae,Te,us])=>{let ye=[$-Ae/2,le-Te/2,Ae].map(Math.round).join();v?ye+=p==="directive"?",NaN":",_":ye+=`,${Math.round(Te)}`,Math.round(us)!==0&&(ye+=`,${Math.round(us)}`),p==="directive"&&(ye=`[${ye}]`),a.value(g,ye,p,t)}));const B={id:g,dataSource:p,markdownSource:t,zoom:c,autoHeight:v,x0:k,y0:L,width:b,height:I,rotate:M,container:C,containerStyle:ee,watchStopHandles:y,dragging:w(()=>Ke.value===B),mounted(){d&&(O(),e||setTimeout(()=>{O(),k.value=(D.value.left+D.value.width/2-u.value)/l.value,L.value=(D.value.top-f.value)/l.value,b.value=D.value.width/l.value,I.value=D.value.height/l.value},100))},unmounted(){d&&B.stopDragging()},startDragging(){O(),Ke.value=B},stopDragging(){Ke.value===B&&(Ke.value=null)}};return y.push(Vn(C,$=>{const le=document.querySelector("#drag-control-container");le&&$.target&&le.contains($.target)||B.stopDragging()}),K(qn(),$=>{$||B.stopDragging()})),B}function Kr(){return{install(s){s.directive("drag",{name:"v-drag",created(e,t,n){var o;const i=Ur(t,t.value,(o=n.props)==null?void 0:o.markdownSource);n.props&&(n.props={...n.props},delete n.props.markdownSource),i.container.value=e,e.draggingState=i,e.dataset.dragId=i.id,i.watchStopHandles.push(K(i.containerStyle,r=>{for(const[a,l]of Object.entries(r))l&&(e.style[a]=l)},{immediate:!0})),e.addEventListener("dblclick",i.startDragging)},mounted(e){e.draggingState.mounted()},unmounted(e){const t=e.draggingState;t.unmounted(),e.removeEventListener("dblclick",t.startDragging),t.watchStopHandles.forEach(n=>n())}})}}}function Jr(){return{install(s){const e=Un();s.directive("motion",{name:"v-motion",mounted(t,n,i,o){var b,k,M;const r=Oe(n,mt),a=Oe(n,Zt),l=Oe(n,Yt),{currentPage:c,clicks:u,isPrintMode:f}=Ft(),h=i.props={...i.props},d={...h.initial,...(b=h.variants)==null?void 0:b["slidev-initial"]},p={...h.enter,...(k=h.variants)==null?void 0:k["slidev-enter"]},g={...h.leave,...(M=h.variants)==null?void 0:M["slidev-leave"]};delete h.initial,delete h.enter,delete h.leave;const m=`${as()}-`,y=[];for(const _ of Object.keys(h))if(_.startsWith("click-")){const A=_.slice(6),T=A.includes("-")?A.split("-").map(Number):+A,C=m+A;y.push({id:C,at:T,variant:{...h[_]},info:r==null?void 0:r.value.calculate(T)}),delete h[_]}y.sort((_,A)=>(Array.isArray(_.at)?_.at[0]:_.at)-(Array.isArray(A.at)?A.at[0]:A.at)),e.created(t,n,i,o),e.mounted(t,n,i,o);const v=t.motionInstance;v.clickIds=y.map(_=>_.id),v.set(d),v.watchStopHandle=K([a,c,u].filter(Boolean),()=>{var A;const _=((A=hn.get(t))==null?void 0:A.visibilityState.value)??"shown";if(!(r!=null&&r.value)||!["slide","presenter"].includes((l==null?void 0:l.value)??"")){const T={...d,...p};for(const{variant:C}of y)Object.assign(T,C);v.set(T)}else if(f.value||(a==null?void 0:a.value)===c.value)if(_==="shown"){const T={...d,...p};for(const{variant:C,info:D}of y)(!D||D.isActive.value)&&Object.assign(T,C);f.value?v.set(T):v.apply(T)}else v.apply(_==="before"?d:g);else v.apply(((a==null?void 0:a.value)??-1)>c.value?d:g)},{immediate:!0})},unmounted(t){t.motionInstance.watchStopHandle()}})}}}const Gr=[];function Qr(){const s=[];{let e=function(t){if(!j.remote||j.remote===t.query.password)return!0;if(j.remote&&t.query.password===void 0){const n=prompt("Enter password");if(j.remote===n)return!0}return t.params.no?{path:`/${t.params.no}`}:{path:""}};s.push({name:"entry",path:"/entry",component:()=>oe(()=>import("./slidev/entry-CKFTiWa6.js"),__vite__mapDeps([6,7,1,3,4]))},{name:"overview",path:"/overview",component:()=>oe(()=>import("./slidev/overview-BB_84WVF.js"),__vite__mapDeps([8,7,1,9,10,11,12,13,14,15,3,4]))},{name:"notes",path:"/notes",component:()=>oe(()=>import("./slidev/notes-B60u_QOj.js"),__vite__mapDeps([16,7,1,12,13,11,3,4])),beforeEnter:e},{name:"presenter",path:"/presenter/:no",component:()=>oe(()=>import("./slidev/presenter-CnnG5HWp.js"),__vite__mapDeps([17,7,1,18,9,10,11,2,3,4,19,12,13,20,21,14,15,22])),beforeEnter:e},{path:"/presenter",redirect:{path:"/presenter/1"}})}return s.push({name:"play",path:"/:no",component:()=>oe(()=>import("./slidev/play-CJ9_ka8j.js"),__vite__mapDeps([23,1,18,9,10,7,11,2,3,4,19,24]))},{path:"",redirect:{path:"/1"}}),Gr.reduce((e,t)=>t(e),s)}const Zr=[];async function Yr(s){function e(){document.documentElement.style.setProperty("--vh",`${window.innerHeight*.01}px`)}e(),window.addEventListener("resize",e);const t=Kn({history:Jn("/sa2024/"),routes:Qr()});s.use(t),s.use(zi()),s.use(Yo()),s.use(Rr()),s.use(Kr()),s.use(Jr()),s.use(Qn,{container:"#twoslash-container"});const n={app:s,router:t};nt(()=>{t.afterEach(async()=>{await nt(),Dt.value+=1})});for(const i of Zr)await i(n)}const Sn=Gn(Zo);Yr(Sn);Sn.mount("#app");export{Yt as $,oe as A,ht as B,It as C,Fr as D,Wr as E,te as F,Ke as G,Ea as H,ya as I,wa as J,pa as K,va as L,Ma as M,_a as N,sa as O,ba as P,Kt as Q,Pa as R,We as S,Xi as T,qr as U,Qs as V,Bs as W,Gs as X,la as Y,Zt as Z,rn as _,Ft as a,ca as a0,mt as a1,so as a2,aa as a3,ra as a4,oa as a5,ce as a6,ue as a7,eo as a8,to as a9,ua as aa,io as ab,Wo as b,j as c,ln as d,da as e,Sa as f,_e as g,fa as h,Os as i,Oa as j,Dr as k,dt as l,Aa as m,Ta as n,De as o,Je as p,ga as q,ta as r,ia as s,ha as t,qi as u,ma as v,si as w,na as x,ka as y,Br as z}; diff --git a/assets/modules/shiki-BgDwwTVx.js b/assets/modules/shiki-BgDwwTVx.js deleted file mode 100644 index 869d7f4..0000000 --- a/assets/modules/shiki-BgDwwTVx.js +++ /dev/null @@ -1 +0,0 @@ -import{d as xe,n as Vt,p as Wt,a as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-CnJIpJLC.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),Vt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Wt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};jt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T}; diff --git a/assets/modules/shiki-DYdhqpMF.js b/assets/modules/shiki-DYdhqpMF.js new file mode 100644 index 0000000..aa1586d --- /dev/null +++ b/assets/modules/shiki-DYdhqpMF.js @@ -0,0 +1 @@ +import{d as xe,p as Vt,a as Wt,n as jt,o as I,c as be,w as qt,r as ne,b as se,e as K,F as Gt,f as me,g as je,h as Oe,i as Re,j as Yt,k as ge,l as ht,m as ut,q as Xt,s as Ut,t as Le,u as Kt,v as Zt,x as Qt}from"./vue-BeRk5K_R.js";const Jt=["top","right","bottom","left"],qe=["start","end"],Ge=Jt.reduce((e,t)=>e.concat(t,t+"-"+qe[0],t+"-"+qe[1]),[]),re=Math.min,U=Math.max,eo={left:"right",right:"left",bottom:"top",top:"bottom"},to={start:"end",end:"start"};function Me(e,t,o){return U(e,re(t,o))}function Z(e,t){return typeof e=="function"?e(t):e}function B(e){return e.split("-")[0]}function L(e){return e.split("-")[1]}function ft(e){return e==="x"?"y":"x"}function De(e){return e==="y"?"height":"width"}function ce(e){return["top","bottom"].includes(B(e))?"y":"x"}function Fe(e){return ft(ce(e))}function mt(e,t,o){o===void 0&&(o=!1);const i=L(e),n=Fe(e),s=De(n);let r=n==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ve(r)),[r,ve(r)]}function oo(e){const t=ve(e);return[we(e),t,we(t)]}function we(e){return e.replace(/start|end/g,t=>to[t])}function io(e,t,o){const i=["left","right"],n=["right","left"],s=["top","bottom"],r=["bottom","top"];switch(e){case"top":case"bottom":return o?t?n:i:t?i:n;case"left":case"right":return t?s:r;default:return[]}}function no(e,t,o,i){const n=L(e);let s=io(B(e),o==="start",i);return n&&(s=s.map(r=>r+"-"+n),t&&(s=s.concat(s.map(we)))),s}function ve(e){return e.replace(/left|right|bottom|top/g,t=>eo[t])}function so(e){return{top:0,right:0,bottom:0,left:0,...e}}function gt(e){return typeof e!="number"?so(e):{top:e,right:e,bottom:e,left:e}}function ee(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function Ye(e,t,o){let{reference:i,floating:n}=e;const s=ce(t),r=Fe(t),a=De(r),l=B(t),d=s==="y",f=i.x+i.width/2-n.width/2,c=i.y+i.height/2-n.height/2,u=i[a]/2-n[a]/2;let p;switch(l){case"top":p={x:f,y:i.y-n.height};break;case"bottom":p={x:f,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:c};break;case"left":p={x:i.x-n.width,y:c};break;default:p={x:i.x,y:i.y}}switch(L(t)){case"start":p[r]-=u*(o&&d?-1:1);break;case"end":p[r]+=u*(o&&d?-1:1);break}return p}const ro=async(e,t,o)=>{const{placement:i="bottom",strategy:n="absolute",middleware:s=[],platform:r}=o,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let d=await r.getElementRects({reference:e,floating:t,strategy:n}),{x:f,y:c}=Ye(d,i,l),u=i,p={},h=0;for(let v=0;v({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:n,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:d,padding:f=0}=Z(e,t)||{};if(d==null)return{};const c=gt(f),u={x:o,y:i},p=Fe(n),h=De(p),v=await r.getDimensions(d),y=p==="y",m=y?"top":"left",g=y?"bottom":"right",$=y?"clientHeight":"clientWidth",x=s.reference[h]+s.reference[p]-u[p]-s.floating[h],_=u[p]-s.reference[p],b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(d));let T=b?b[$]:0;(!T||!await(r.isElement==null?void 0:r.isElement(b)))&&(T=a.floating[$]||s.floating[h]);const O=x/2-_/2,N=T/2-v[h]/2-1,S=re(c[m],N),k=re(c[g],N),P=S,Y=T-v[h]-k,C=T/2-v[h]/2+O,H=Me(P,C,Y),E=!l.arrow&&L(n)!=null&&C!==H&&s.reference[h]/2-(CL(n)===e),...o.filter(n=>L(n)!==e)]:o.filter(n=>B(n)===n)).filter(n=>e?L(n)===e||(t?we(n)!==n:!1):!0)}const po=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,i,n;const{rects:s,middlewareData:r,placement:a,platform:l,elements:d}=t,{crossAxis:f=!1,alignment:c,allowedPlacements:u=Ge,autoAlignment:p=!0,...h}=Z(e,t),v=c!==void 0||u===Ge?lo(c||null,p,u):u,y=await Te(t,h),m=((o=r.autoPlacement)==null?void 0:o.index)||0,g=v[m];if(g==null)return{};const $=mt(g,s,await(l.isRTL==null?void 0:l.isRTL(d.floating)));if(a!==g)return{reset:{placement:v[0]}};const x=[y[B(g)],y[$[0]],y[$[1]]],_=[...((i=r.autoPlacement)==null?void 0:i.overflows)||[],{placement:g,overflows:x}],b=v[m+1];if(b)return{data:{index:m+1,overflows:_},reset:{placement:b}};const T=_.map(S=>{const k=L(S.placement);return[S.placement,k&&f?S.overflows.slice(0,2).reduce((P,Y)=>P+Y,0):S.overflows[0],S.overflows]}).sort((S,k)=>S[1]-k[1]),N=((n=T.filter(S=>S[2].slice(0,L(S[0])?2:3).every(k=>k<=0))[0])==null?void 0:n[0])||T[0][0];return N!==a?{data:{index:m+1,overflows:_},reset:{placement:N}}:{}}}},co=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:n,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:d}=t,{mainAxis:f=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:v=!0,...y}=Z(e,t);if((o=s.arrow)!=null&&o.alignmentOffset)return{};const m=B(n),g=B(a)===a,$=await(l.isRTL==null?void 0:l.isRTL(d.floating)),x=u||(g||!v?[ve(a)]:oo(a));!u&&h!=="none"&&x.push(...no(a,v,h,$));const _=[a,...x],b=await Te(t,y),T=[];let O=((i=s.flip)==null?void 0:i.overflows)||[];if(f&&T.push(b[m]),c){const P=mt(n,r,$);T.push(b[P[0]],b[P[1]])}if(O=[...O,{placement:n,overflows:T}],!T.every(P=>P<=0)){var N,S;const P=(((N=s.flip)==null?void 0:N.index)||0)+1,Y=_[P];if(Y)return{data:{index:P,overflows:O},reset:{placement:Y}};let C=(S=O.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:S.placement;if(!C)switch(p){case"bestFit":{var k;const H=(k=O.map(E=>[E.placement,E.overflows.filter(F=>F>0).reduce((F,It)=>F+It,0)]).sort((E,F)=>E[1]-F[1])[0])==null?void 0:k[0];H&&(C=H);break}case"initialPlacement":C=a;break}if(n!==C)return{reset:{placement:C}}}return{}}}};async function ho(e,t){const{placement:o,platform:i,elements:n}=e,s=await(i.isRTL==null?void 0:i.isRTL(n.floating)),r=B(o),a=L(o),l=ce(o)==="y",d=["left","top"].includes(r)?-1:1,f=s&&l?-1:1,c=Z(t,e);let{mainAxis:u,crossAxis:p,alignmentAxis:h}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...c};return a&&typeof h=="number"&&(p=a==="end"?h*-1:h),l?{x:p*f,y:u*d}:{x:u*d,y:p*f}}const uo=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:n,y:s,placement:r,middlewareData:a}=t,l=await ho(t,e);return r===((o=a.offset)==null?void 0:o.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:n+l.x,y:s+l.y,data:{...l,placement:r}}}}},fo=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:n}=t,{mainAxis:s=!0,crossAxis:r=!1,limiter:a={fn:y=>{let{x:m,y:g}=y;return{x:m,y:g}}},...l}=Z(e,t),d={x:o,y:i},f=await Te(t,l),c=ce(B(n)),u=ft(c);let p=d[u],h=d[c];if(s){const y=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=p+f[y],$=p-f[m];p=Me(g,p,$)}if(r){const y=c==="y"?"top":"left",m=c==="y"?"bottom":"right",g=h+f[y],$=h-f[m];h=Me(g,h,$)}const v=a.fn({...t,[u]:p,[c]:h});return{...v,data:{x:v.x-o,y:v.y-i}}}}},mo=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:o,rects:i,platform:n,elements:s}=t,{apply:r=()=>{},...a}=Z(e,t),l=await Te(t,a),d=B(o),f=L(o),c=ce(o)==="y",{width:u,height:p}=i.floating;let h,v;d==="top"||d==="bottom"?(h=d,v=f===(await(n.isRTL==null?void 0:n.isRTL(s.floating))?"start":"end")?"left":"right"):(v=d,h=f==="end"?"top":"bottom");const y=p-l[h],m=u-l[v],g=!t.middlewareData.shift;let $=y,x=m;if(c){const b=u-l.left-l.right;x=f||g?re(m,b):b}else{const b=p-l.top-l.bottom;$=f||g?re(y,b):b}if(g&&!f){const b=U(l.left,0),T=U(l.right,0),O=U(l.top,0),N=U(l.bottom,0);c?x=u-2*(b!==0||T!==0?b+T:U(l.left,l.right)):$=p-2*(O!==0||N!==0?O+N:U(l.top,l.bottom))}await r({...t,availableWidth:x,availableHeight:$});const _=await n.getDimensions(s.floating);return u!==_.width||p!==_.height?{reset:{rects:!0}}:{}}}};function A(e){var t;return((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function R(e){return A(e).getComputedStyle(e)}const Xe=Math.min,te=Math.max,ye=Math.round;function wt(e){const t=R(e);let o=parseFloat(t.width),i=parseFloat(t.height);const n=e.offsetWidth,s=e.offsetHeight,r=ye(o)!==n||ye(i)!==s;return r&&(o=n,i=s),{width:o,height:i,fallback:r}}function j(e){return yt(e)?(e.nodeName||"").toLowerCase():""}let he;function vt(){if(he)return he;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(he=e.brands.map(t=>t.brand+"/"+t.version).join(" "),he):navigator.userAgent}function D(e){return e instanceof A(e).HTMLElement}function q(e){return e instanceof A(e).Element}function yt(e){return e instanceof A(e).Node}function Ue(e){if(typeof ShadowRoot>"u")return!1;const t=A(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Se(e){const{overflow:t,overflowX:o,overflowY:i,display:n}=R(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!["inline","contents"].includes(n)}function go(e){return["table","td","th"].includes(j(e))}function Ie(e){const t=/firefox/i.test(vt()),o=R(e),i=o.backdropFilter||o.WebkitBackdropFilter;return o.transform!=="none"||o.perspective!=="none"||(i?i!=="none":!1)||t&&o.willChange==="filter"||t&&(o.filter?o.filter!=="none":!1)||["transform","perspective"].some(n=>o.willChange.includes(n))||["paint","layout","strict","content"].some(n=>{const s=o.contain;return s!=null?s.includes(n):!1})}function $t(){return!/^((?!chrome|android).)*safari/i.test(vt())}function Ve(e){return["html","body","#document"].includes(j(e))}function _t(e){return q(e)?e:e.contextElement}const xt={x:1,y:1};function Q(e){const t=_t(e);if(!D(t))return xt;const o=t.getBoundingClientRect(),{width:i,height:n,fallback:s}=wt(t);let r=(s?ye(o.width):o.width)/i,a=(s?ye(o.height):o.height)/n;return(!r||!Number.isFinite(r))&&(r=1),(!a||!Number.isFinite(a))&&(a=1),{x:r,y:a}}function ae(e,t,o,i){var n,s;t===void 0&&(t=!1),o===void 0&&(o=!1);const r=e.getBoundingClientRect(),a=_t(e);let l=xt;t&&(i?q(i)&&(l=Q(i)):l=Q(e));const d=a?A(a):window,f=!$t()&&o;let c=(r.left+(f&&((n=d.visualViewport)==null?void 0:n.offsetLeft)||0))/l.x,u=(r.top+(f&&((s=d.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,p=r.width/l.x,h=r.height/l.y;if(a){const v=A(a),y=i&&q(i)?A(i):i;let m=v.frameElement;for(;m&&i&&y!==v;){const g=Q(m),$=m.getBoundingClientRect(),x=getComputedStyle(m);$.x+=(m.clientLeft+parseFloat(x.paddingLeft))*g.x,$.y+=(m.clientTop+parseFloat(x.paddingTop))*g.y,c*=g.x,u*=g.y,p*=g.x,h*=g.y,c+=$.x,u+=$.y,m=A(m).frameElement}}return{width:p,height:h,top:u,right:c+p,bottom:u+h,left:c,x:c,y:u}}function G(e){return((yt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Pe(e){return q(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wo(e){let{rect:t,offsetParent:o,strategy:i}=e;const n=D(o),s=G(o);if(o===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((n||!n&&i!=="fixed")&&((j(o)!=="body"||Se(s))&&(r=Pe(o)),D(o))){const d=ae(o);a=Q(o),l.x=d.x+o.clientLeft,l.y=d.y+o.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}}function bt(e){return ae(G(e)).left+Pe(e).scrollLeft}function vo(e){const t=G(e),o=Pe(e),i=e.ownerDocument.body,n=te(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),s=te(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let r=-o.scrollLeft+bt(e);const a=-o.scrollTop;return R(i).direction==="rtl"&&(r+=te(t.clientWidth,i.clientWidth)-n),{width:n,height:s,x:r,y:a}}function le(e){if(j(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Ue(e)&&e.host||G(e);return Ue(t)?t.host:t}function Tt(e){const t=le(e);return Ve(t)?t.ownerDocument.body:D(t)&&Se(t)?t:Tt(t)}function $e(e,t){var o;t===void 0&&(t=[]);const i=Tt(e),n=i===((o=e.ownerDocument)==null?void 0:o.body),s=A(i);return n?t.concat(s,s.visualViewport||[],Se(i)?i:[]):t.concat(i,$e(i))}function yo(e,t){const o=A(e),i=G(e),n=o.visualViewport;let s=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){s=n.width,r=n.height;const d=$t();(d||!d&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:s,height:r,x:a,y:l}}function $o(e,t){const o=ae(e,!0,t==="fixed"),i=o.top+e.clientTop,n=o.left+e.clientLeft,s=D(e)?Q(e):{x:1,y:1},r=e.clientWidth*s.x,a=e.clientHeight*s.y,l=n*s.x,d=i*s.y;return{width:r,height:a,x:l,y:d}}function Ke(e,t,o){return t==="viewport"?ee(yo(e,o)):q(t)?ee($o(t,o)):ee(vo(G(e)))}function _o(e,t){const o=t.get(e);if(o)return o;let i=$e(e).filter(a=>q(a)&&j(a)!=="body"),n=null;const s=R(e).position==="fixed";let r=s?le(e):e;for(;q(r)&&!Ve(r);){const a=R(r),l=Ie(r);(s?!l&&!n:!l&&a.position==="static"&&!!n&&["absolute","fixed"].includes(n.position))?i=i.filter(f=>f!==r):n=a,r=le(r)}return t.set(e,i),i}function xo(e){let{element:t,boundary:o,rootBoundary:i,strategy:n}=e;const r=[...o==="clippingAncestors"?_o(t,this._c):[].concat(o),i],a=r[0],l=r.reduce((d,f)=>{const c=Ke(t,f,n);return d.top=te(c.top,d.top),d.right=Xe(c.right,d.right),d.bottom=Xe(c.bottom,d.bottom),d.left=te(c.left,d.left),d},Ke(t,a,n));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bo(e){return D(e)?wt(e):e.getBoundingClientRect()}function Ze(e){return!D(e)||R(e).position==="fixed"?null:e.offsetParent}function To(e){let t=le(e);for(;D(t)&&!Ve(t);){if(Ie(t))return t;t=le(t)}return null}function Qe(e){const t=A(e);let o=Ze(e);for(;o&&go(o)&&R(o).position==="static";)o=Ze(o);return o&&(j(o)==="html"||j(o)==="body"&&R(o).position==="static"&&!Ie(o))?t:o||To(e)||t}function So(e,t,o){const i=D(t),n=G(t),s=ae(e,!0,o==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(i||!i&&o!=="fixed")if((j(t)!=="body"||Se(n))&&(r=Pe(t)),D(t)){const l=ae(t,!0);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop}else n&&(a.x=bt(n));return{x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const Po={getClippingRect:xo,convertOffsetParentRelativeRectToViewportRelativeRect:wo,isElement:q,getDimensions:bo,getOffsetParent:Qe,getDocumentElement:G,getScale:Q,async getElementRects(e){let{reference:t,floating:o,strategy:i}=e;const n=this.getOffsetParent||Qe,s=this.getDimensions;return{reference:So(t,await n(o),i),floating:{x:0,y:0,...await s(o)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>R(e).direction==="rtl"},Co=(e,t,o)=>{const i=new Map,n={platform:Po,...o},s={...n.platform,_c:i};return ro(e,t,{...n,platform:s})};function St(e,t){for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(typeof t[o]=="object"&&e[o]?St(e[o],t[o]):e[o]=t[o])}const M={disabled:!1,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:!1,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:!0,flip:!0,shift:!0,overflowPadding:0,arrowPadding:0,arrowOverflow:!0,autoHideOnMousedown:!1,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:!1,html:!1,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:!0,autoHide:!0},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function de(e,t){let o=M.themes[e]||{},i;do i=o[t],typeof i>"u"?o.$extend?o=M.themes[o.$extend]||{}:(o=null,i=M[t]):o=null;while(o);return i}function Ao(e){const t=[e];let o=M.themes[e]||{};do o.$extend&&!o.$resetCss?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t.map(i=>`v-popper--theme-${i}`)}function Je(e){const t=[e];let o=M.themes[e]||{};do o.$extend?(t.push(o.$extend),o=M.themes[o.$extend]||{}):o=null;while(o);return t}let J=!1;if(typeof window<"u"){J=!1;try{const e=Object.defineProperty({},"passive",{get(){J=!0}});window.addEventListener("test",null,e)}catch{}}let Pt=!1;typeof window<"u"&&typeof navigator<"u"&&(Pt=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const Ct=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),et={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},tt={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function ot(e,t){const o=e.indexOf(t);o!==-1&&e.splice(o,1)}function Ne(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e)}))}const z=[];let X=null;const it={};function nt(e){let t=it[e];return t||(t=it[e]=[]),t}let He=function(){};typeof window<"u"&&(He=window.Element);function w(e){return function(t){return de(t.theme,e)}}const ke="__floating-vue__popper",At=()=>xe({name:"VPopper",provide(){return{[ke]:{parentPopper:this}}},inject:{[ke]:{default:null}},props:{theme:{type:String,required:!0},targetNodes:{type:Function,required:!0},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:!0},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:w("disabled")},positioningDisabled:{type:Boolean,default:w("positioningDisabled")},placement:{type:String,default:w("placement"),validator:e=>Ct.includes(e)},delay:{type:[String,Number,Object],default:w("delay")},distance:{type:[Number,String],default:w("distance")},skidding:{type:[Number,String],default:w("skidding")},triggers:{type:Array,default:w("triggers")},showTriggers:{type:[Array,Function],default:w("showTriggers")},hideTriggers:{type:[Array,Function],default:w("hideTriggers")},popperTriggers:{type:Array,default:w("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:w("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:w("popperHideTriggers")},container:{type:[String,Object,He,Boolean],default:w("container")},boundary:{type:[String,He],default:w("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:w("strategy")},autoHide:{type:[Boolean,Function],default:w("autoHide")},handleResize:{type:Boolean,default:w("handleResize")},instantMove:{type:Boolean,default:w("instantMove")},eagerMount:{type:Boolean,default:w("eagerMount")},popperClass:{type:[String,Array,Object],default:w("popperClass")},computeTransformOrigin:{type:Boolean,default:w("computeTransformOrigin")},autoMinSize:{type:Boolean,default:w("autoMinSize")},autoSize:{type:[Boolean,String],default:w("autoSize")},autoMaxSize:{type:Boolean,default:w("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:w("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:w("preventOverflow")},overflowPadding:{type:[Number,String],default:w("overflowPadding")},arrowPadding:{type:[Number,String],default:w("arrowPadding")},arrowOverflow:{type:Boolean,default:w("arrowOverflow")},flip:{type:Boolean,default:w("flip")},shift:{type:Boolean,default:w("shift")},shiftCrossAxis:{type:Boolean,default:w("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:w("noAutoFocus")},disposeTimeout:{type:Number,default:w("disposeTimeout")}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},data(){return{isShown:!1,isMounted:!1,skipTransition:!1,classes:{showFrom:!1,showTo:!1,hideFrom:!1,hideTo:!0},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:!0,pendingHide:!1,containsGlobalTarget:!1,isDisposed:!0,mouseDownContains:!1}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return{popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return(e=this[ke])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init()},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition())},triggers:{handler:"$_refreshListeners",deep:!0},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.")},mounted(){this.init(),this.$_detachPopperNode()},activated(){this.$_autoShowHide()},deactivated(){this.hide()},beforeUnmount(){this.dispose()},methods:{show({event:e=null,skipDelay:t=!1,force:o=!1}={}){var i,n;(i=this.parentPopper)!=null&&i.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=!1,(o||!this.disabled)&&(((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=!0,requestAnimationFrame(()=>{this.$_showFrameLocked=!1})),this.$emit("update:shown",!0))},hide({event:e=null,skipDelay:t=!1}={}){var o;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=!0;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null)},1e3));return}((o=this.parentPopper)==null?void 0:o.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=!1,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",!1)}},init(){var e;this.isDisposed&&(this.isDisposed=!1,this.isMounted=!1,this.$_events=[],this.$_preventShow=!1,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show())},dispose(){this.isDisposed||(this.isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.$_detachPopperNode(),this.isMounted=!1,this.isShown=!1,this.$_updateParentShownChildren(!1),this.$_swapTargetAttrs("data-original-title","title"))},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"))},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(uo({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(po({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(fo({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(co({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(ao({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:i,rects:n,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return i.startsWith("top")||i.startsWith("bottom")?r=Math.abs(a)>n.reference.width/2:r=Math.abs(a)>n.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const i=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:n,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return{};let l,d;return s.startsWith("top")||s.startsWith("bottom")?l=n.reference.width:d=n.reference.height,this.$_innerNode.style[i==="min"?"minWidth":i==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[i==="min"?"minHeight":i==="max"?"maxHeight":"height"]=d!=null?`${d}px`:null,{data:{skip:!0},reset:{rects:!0}}}})}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(mo({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:i,availableHeight:n})=>{this.$_innerNode.style.maxWidth=i!=null?`${i}px`:null,this.$_innerNode.style.maxHeight=n!=null?`${n}px`:null}})));const o=await Co(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:o.x,y:o.y,placement:o.placement,strategy:o.strategy,arrow:{...o.middlewareData.arrow,...o.middlewareData.arrowOverflow}})},$_scheduleShow(e,t=!1){if(this.$_updateParentShownChildren(!0),this.$_hideInProgress=!1,clearTimeout(this.$_scheduleTimer),X&&this.instantMove&&X.instantMove&&X!==this.parentPopper){X.$_applyHide(!0),this.$_applyShow(!0);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"))},$_scheduleHide(e,t=!1){if(this.shownChildren.size>0){this.pendingHide=!0;return}this.$_updateParentShownChildren(!1),this.$_hideInProgress=!0,clearTimeout(this.$_scheduleTimer),this.isShown&&(X=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"))},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=!1){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Ne(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...$e(this.$_referenceNode),...$e(this.$_popperNode)],"scroll",()=>{this.$_computePosition()}))},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),o=this.$_popperNode.querySelector(".v-popper__wrapper"),i=o.parentNode.getBoundingClientRect(),n=t.x+t.width/2-(i.left+o.offsetLeft),s=t.y+t.height/2-(i.top+o.offsetTop);this.result.transformOrigin=`${n}px ${s}px`}this.isShown=!0,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let o=0;o0){this.pendingHide=!0,this.$_hideInProgress=!1;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,ot(z,this),z.length===0&&document.body.classList.remove("v-popper--some-open");for(const o of Je(this.theme)){const i=nt(o);ot(i,this),i.length===0&&document.body.classList.remove(`v-popper--some-open--${o}`)}X===this&&(X=null),this.isShown=!1,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=!1)},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=!1,this.classes.showTo=!1,this.classes.hideFrom=!0,this.classes.hideTo=!1,await Ne(),this.classes.hideFrom=!1,this.classes.hideTo=!0},$_autoShowHide(){this.shown?this.show():this.hide()},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===!1&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=!0},$_addEventListeners(){const e=o=>{this.isShown&&!this.$_hideInProgress||(o.usedByTooltip=!0,!this.$_preventShow&&this.show({event:o}))};this.$_registerTriggerListeners(this.$_targetNodes,et,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],et,this.popperTriggers,this.popperShowTriggers,e);const t=o=>{o.usedByTooltip||this.hide({event:o})};this.$_registerTriggerListeners(this.$_targetNodes,tt,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],tt,this.popperTriggers,this.popperHideTriggers,t)},$_registerEventListeners(e,t,o){this.$_events.push({targetNodes:e,eventType:t,handler:o}),e.forEach(i=>i.addEventListener(t,o,J?{passive:!0}:void 0))},$_registerTriggerListeners(e,t,o,i,n){let s=o;i!=null&&(s=typeof i=="function"?i(s):i),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,n)})},$_removeEventListeners(e){const t=[];this.$_events.forEach(o=>{const{targetNodes:i,eventType:n,handler:s}=o;!e||e===n?i.forEach(r=>r.removeEventListener(n,s)):t.push(o)}),this.$_events=t},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners())},$_handleGlobalClose(e,t=!1){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=!0,setTimeout(()=>{this.$_preventShow=!1},300)))},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode)},$_swapTargetAttrs(e,t){for(const o of this.$_targetNodes){const i=o.getAttribute(e);i&&(o.removeAttribute(e),o.setAttribute(t,i))}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const o in e){const i=e[o];i==null?t.removeAttribute(o):t.setAttribute(o,i)}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(oe>=e.left&&oe<=e.right&&ie>=e.top&&ie<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),o=oe-V,i=ie-W,n=t.left+t.width/2-V+(t.top+t.height/2)-W+t.width+t.height,s=V+o*n,r=W+i*n;return ue(V,W,s,r,t.left,t.top,t.left,t.bottom)||ue(V,W,s,r,t.left,t.top,t.right,t.top)||ue(V,W,s,r,t.right,t.top,t.right,t.bottom)||ue(V,W,s,r,t.left,t.bottom,t.right,t.bottom)}return!1}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(Pt){const e=J?{passive:!0,capture:!0}:!0;document.addEventListener("touchstart",t=>st(t,!0),e),document.addEventListener("touchend",t=>rt(t,!0),e)}else window.addEventListener("mousedown",e=>st(e,!1),!0),window.addEventListener("click",e=>rt(e,!1),!0);window.addEventListener("resize",Nt)}function st(e,t){if(M.autoHideOnMousedown)Ot(e,t);else for(let o=0;o=0;i--){const n=z[i];try{const s=n.containsGlobalTarget=n.mouseDownContains||n.popperNode().contains(e.target);n.pendingHide=!1,requestAnimationFrame(()=>{if(n.pendingHide=!1,!o[n.randomId]&&at(n,s,e)){if(n.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=n.parentPopper;for(;a;)o[a.randomId]=!0,a=a.parentPopper;return}let r=n.parentPopper;for(;r&&at(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper}})}catch{}}}function at(e,t,o){return o.closeAllPopover||o.closePopover&&t||Oo(e,o)&&!t}function Oo(e,t){if(typeof e.autoHide=="function"){const o=e.autoHide(t);return e.lastAutoHide=o,o}return e.autoHide}function Nt(){for(let e=0;e{V=oe,W=ie,oe=e.clientX,ie=e.clientY},J?{passive:!0}:void 0);function ue(e,t,o,i,n,s,r,a){const l=((r-n)*(t-s)-(a-s)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t)),d=((o-e)*(t-s)-(i-t)*(e-n))/((a-s)*(o-e)-(r-n)*(i-t));return l>=0&&l<=1&&d>=0&&d<=1}const No={extends:At()},Ce=(e,t)=>{const o=e.__vccOpts||e;for(const[i,n]of t)o[i]=n;return o};function ko(e,t,o,i,n,s){return I(),se("div",{ref:"reference",class:Re(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[me(e.$slots,"default",Xt(Ut(e.slotData)))],2)}const zo=Ce(No,[["render",ko]]);function Lo(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var o=e.indexOf("Trident/");if(o>0){var i=e.indexOf("rv:");return parseInt(e.substring(i+3,e.indexOf(".",i)),10)}var n=e.indexOf("Edge/");return n>0?parseInt(e.substring(n+5,e.indexOf(".",n)),10):-1}let fe;function Ee(){Ee.init||(Ee.init=!0,fe=Lo()!==-1)}var Ae={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},emits:["notify"],mounted(){Ee(),jt(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize()});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",fe&&this.$el.appendChild(e),e.data="about:blank",fe||this.$el.appendChild(e)},beforeUnmount(){this.removeResizeHandlers()},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!fe&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};const Mo=qt();Vt("data-v-b329ee4c");const Ho={class:"resize-observer",tabindex:"-1"};Wt();const Eo=Mo((e,t,o,i,n,s)=>(I(),be("div",Ho)));Ae.render=Eo;Ae.__scopeId="data-v-b329ee4c";Ae.__file="src/components/ResizeObserver.vue";const kt=(e="theme")=>({computed:{themeClass(){return Ao(this[e])}}}),Bo=xe({name:"VPopperContent",components:{ResizeObserver:Ae},mixins:[kt()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),Ro=["id","aria-hidden","tabindex","data-popper-placement"],Do={ref:"inner",class:"v-popper__inner"},Fo=K("div",{class:"v-popper__arrow-outer"},null,-1),Io=K("div",{class:"v-popper__arrow-inner"},null,-1),Vo=[Fo,Io];function Wo(e,t,o,i,n,s){const r=ne("ResizeObserver");return I(),se("div",{id:e.popperId,ref:"popover",class:Re(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Oe(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Yt(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[K("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),K("div",{class:"v-popper__wrapper",style:Oe(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[K("div",Do,[e.mounted?(I(),se(Gt,{key:0},[K("div",null,[me(e.$slots,"default")]),e.handleResize?(I(),be(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):je("",!0)],64)):je("",!0)],512),K("div",{ref:"arrow",class:"v-popper__arrow-container",style:Oe(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},Vo,4)],4)],46,Ro)}const zt=Ce(Bo,[["render",Wo]]),Lt={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Be=function(){};typeof window<"u"&&(Be=window.Element);const jo=xe({name:"VPopperWrapper",components:{Popper:zo,PopperContent:zt},mixins:[Lt,kt("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:!1},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Be,Boolean],default:void 0},boundary:{type:[String,Be],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>!0,hide:()=>!0,"update:shown":e=>!0,"apply-show":()=>!0,"apply-hide":()=>!0,"close-group":()=>!0,"close-directive":()=>!0,"auto-hide":()=>!0,resize:()=>!0},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function qo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,show:p,hide:h,handleResize:v,onResize:y,classes:m,result:g})=>[me(e.$slots,"default",{shown:d,show:p,hide:h}),ht(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":v,classes:m,result:g,onHide:h,onResize:y},{default:ge(()=>[me(e.$slots,"popper",{shown:d,hide:h})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const We=Ce(jo,[["render",qo]]),Go={...We,name:"VDropdown",vPopperTheme:"dropdown"},Mt={...We,name:"VMenu",vPopperTheme:"menu"},Yo={...We,name:"VTooltip",vPopperTheme:"tooltip"},Xo=xe({name:"VTooltipDirective",components:{Popper:At(),PopperContent:zt},mixins:[Lt],inheritAttrs:!1,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>de(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>de(e.theme,"loadingContent")},targetNodes:{type:Function,required:!0}},data(){return{asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(!0)},immediate:!0},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize()}},created(){this.$_fetchId=0},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=!0;const t=++this.$_fetchId,o=this.content(this);o.then?o.then(i=>this.onResult(t,i)):this.onResult(t,o)}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=!1,this.asyncContent=t)},onShow(){this.$_isShown=!0,this.fetchContent()},onHide(){this.$_isShown=!1}}}),Uo=["innerHTML"],Ko=["textContent"];function Zo(e,t,o,i,n,s){const r=ne("PopperContent"),a=ne("Popper");return I(),be(a,ut({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:d,shouldMountContent:f,skipTransition:c,autoHide:u,hide:p,handleResize:h,onResize:v,classes:y,result:m})=>[ht(r,{ref:"popperContent",class:Re({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:d,mounted:f,"skip-transition":c,"auto-hide":u,"handle-resize":h,classes:y,result:m,onHide:p,onResize:v},{default:ge(()=>[e.html?(I(),se("div",{key:0,innerHTML:e.finalContent},null,8,Uo)):(I(),se("div",{key:1,textContent:Qt(e.finalContent)},null,8,Ko))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const Qo=Ce(Xo,[["render",Zo]]),Ht="v-popper--has-tooltip";function Jo(e,t){let o=e.placement;if(!o&&t)for(const i of Ct)t[i]&&(o=i);return o||(o=de(e.theme||"tooltip","placement")),o}function Et(e,t,o){let i;const n=typeof t;return n==="string"?i={content:t}:t&&n==="object"?i=t:i={content:!1},i.placement=Jo(i,o),i.targetNodes=()=>[e],i.referenceNode=()=>e,i}let ze,pe,ei=0;function ti(){if(ze)return;pe=Le([]),ze=Kt({name:"VTooltipDirectiveApp",setup(){return{directives:pe}},render(){return this.directives.map(t=>Zt(Qo,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:!0}});const e=document.createElement("div");document.body.appendChild(e),ze.mount(e)}function oi(e,t,o){ti();const i=Le(Et(e,t,o)),n=Le(!1),s={id:ei++,options:i,shown:n};return pe.value.push(s),e.classList&&e.classList.add(Ht),e.$_popper={options:i,item:s,show(){n.value=!0},hide(){n.value=!1}}}function Bt(e){if(e.$_popper){const t=pe.value.indexOf(e.$_popper.item);t!==-1&&pe.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget}e.classList&&e.classList.remove(Ht)}function lt(e,{value:t,modifiers:o}){const i=Et(e,t,o);if(!i.content||de(i.theme||"tooltip","disabled"))Bt(e);else{let n;e.$_popper?(n=e.$_popper,n.options.value=i):n=oi(e,t,o),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?n.show():n.hide())}}const ii={beforeMount:lt,updated:lt,beforeUnmount(e){Bt(e)}};function dt(e){e.addEventListener("mousedown",_e),e.addEventListener("click",_e),e.addEventListener("touchstart",Rt,J?{passive:!0}:!1)}function pt(e){e.removeEventListener("mousedown",_e),e.removeEventListener("click",_e),e.removeEventListener("touchstart",Rt),e.removeEventListener("touchend",Dt),e.removeEventListener("touchcancel",Ft)}function _e(e){const t=e.currentTarget;e.closePopover=!t.$_vclosepopover_touch,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}function Rt(e){if(e.changedTouches.length===1){const t=e.currentTarget;t.$_vclosepopover_touch=!0;const o=e.changedTouches[0];t.$_vclosepopover_touchPoint=o,t.addEventListener("touchend",Dt),t.addEventListener("touchcancel",Ft)}}function Dt(e){const t=e.currentTarget;if(t.$_vclosepopover_touch=!1,e.changedTouches.length===1){const o=e.changedTouches[0],i=t.$_vclosepopover_touchPoint;e.closePopover=Math.abs(o.screenY-i.screenY)<20&&Math.abs(o.screenX-i.screenX)<20,e.closeAllPopover=t.$_closePopoverModifiers&&!!t.$_closePopoverModifiers.all}}function Ft(e){const t=e.currentTarget;t.$_vclosepopover_touch=!1}const ni={beforeMount(e,{value:t,modifiers:o}){e.$_closePopoverModifiers=o,(typeof t>"u"||t)&&dt(e)},updated(e,{value:t,oldValue:o,modifiers:i}){e.$_closePopoverModifiers=i,t!==o&&(typeof t>"u"||t?dt(e):pt(e))},beforeUnmount(e){pt(e)}},li=Mt;function si(e,t={}){e.$_vTooltipInstalled||(e.$_vTooltipInstalled=!0,St(M,t),e.directive("tooltip",ii),e.directive("close-popper",ni),e.component("VTooltip",Yo),e.component("VDropdown",Go),e.component("VMenu",Mt))}const ri={version:"5.2.2",install:si,options:M},ct=typeof navigator<"u"&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),di={install:(e,t={})=>{typeof window<"u"&&window.addEventListener("click",o=>{o.composedPath().some(n=>{var s,r,a,l;return((r=(s=n==null?void 0:n.classList)==null?void 0:s.contains)==null?void 0:r.call(s,"vp-code-group"))||((l=(a=n==null?void 0:n.classList)==null?void 0:a.contains)==null?void 0:l.call(a,"tabs"))})&&Nt()},{passive:!0}),e.use(ri,{...t,themes:{twoslash:{$extend:"dropdown",triggers:ct?["touch"]:["hover","touch"],popperTriggers:ct?["touch"]:["hover","touch"],placement:"bottom-start",overflowPadding:10,delay:0,handleResize:!1,autoHide:!0,instantMove:!0,flip:!1,arrowPadding:8,autoBoundaryMaxSize:!0},"twoslash-query":{$extend:"twoslash",triggers:["click"],popperTriggers:["click"],autoHide:!1},"twoslash-completion":{$extend:"twoslash-query",triggers:["click"],popperTriggers:["click"],autoHide:!1,distance:0,arrowOverflow:!0},...t.theme}})}};export{li as L,di as T,Nt as t}; diff --git a/assets/modules/unplugin-icons-Bc68jzww.js b/assets/modules/unplugin-icons-Bc68jzww.js deleted file mode 100644 index eea4df7..0000000 --- a/assets/modules/unplugin-icons-Bc68jzww.js +++ /dev/null @@ -1 +0,0 @@ -import{o as e,b as o,e as n}from"./vue-CnJIpJLC.js";const c={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},_=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),i=[_];function l(t,s){return e(),o("svg",c,[...i])}const P2={name:"carbon-list-boxes",render:l},h={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),a=[r];function d(t,s){return e(),o("svg",h,[...a])}const Q2={name:"carbon-close",render:d},u={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},m=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),v=[m];function $(t,s){return e(),o("svg",u,[...v])}const R2={name:"carbon-settings-adjust",render:$},p={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),L=n("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),f=[g,L];function w(t,s){return e(),o("svg",p,[...f])}const T2={name:"carbon-information",render:w},x={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),z=[M];function C(t,s){return e(),o("svg",x,[...z])}const U2={name:"carbon-download",render:C},H={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),B=[b];function V(t,s){return e(),o("svg",H,[...B])}const W2={name:"carbon-template",render:V},Z={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),k=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),j=[A,k];function y(t,s){return e(),o("svg",Z,[...j])}const X2={name:"carbon-user-speaker",render:y},q={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},E=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),S=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),D=[E,S];function F(t,s){return e(),o("svg",q,[...D])}const Y2={name:"carbon-presentation-file",render:F},G={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},N=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),I=[N];function J(t,s){return e(),o("svg",G,[...I])}const nn={name:"carbon-pen",render:J},K={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},O=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0L140 164a8 8 0 0 0-13 2.46l-19.46 44.77a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85L166.45 127a8 8 0 0 0-2.45 13l49.67 49.67a8 8 0 0 1-.01 11.33",opacity:".2"}),n("path",{d:"m169.64 134.33l44.77-19.46a16 16 0 0 0-1.41-29.8L52.92 32.8A16 16 0 0 0 32.8 52.92L85.07 213a15.83 15.83 0 0 0 14.41 11h.78a15.83 15.83 0 0 0 14.61-9.59l19.46-44.77L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63Zm-69.48 73.76l.06-.05Zm95.15-.09l-49.67-49.67a16 16 0 0 0-26 4.94l-19.42 44.65L48 48l159.87 52.21l-44.64 19.41a16 16 0 0 0-4.94 26L208 195.31Z"})],-1),P=[O];function Q(t,s){return e(),o("svg",K,[...P])}const en={name:"ph-cursor-duotone",render:Q},R={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},T=n("path",{fill:"currentColor",d:"M219.31 192a16 16 0 0 1 0 22.63l-4.68 4.68a16 16 0 0 1-22.63 0l-55.25-55.24l-21.88 50.34a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-50.34 21.88Z"},null,-1),U=[T];function W(t,s){return e(),o("svg",R,[...U])}const on={name:"ph-cursor-fill",render:W},X={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Y=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),n1=[Y];function e1(t,s){return e(),o("svg",X,[...n1])}const tn={name:"carbon-sun",render:e1},o1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},t1=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),s1=[t1];function c1(t,s){return e(),o("svg",o1,[...s1])}const sn={name:"carbon-moon",render:c1},_1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},i1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),l1=[i1];function h1(t,s){return e(),o("svg",_1,[...l1])}const cn={name:"carbon-apps",render:h1},r1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},a1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),d1=[a1];function u1(t,s){return e(),o("svg",r1,[...d1])}const _n={name:"carbon-arrow-right",render:u1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},v1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),$1=[v1];function p1(t,s){return e(),o("svg",m1,[...$1])}const ln={name:"carbon-arrow-left",render:p1},g1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},L1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),f1=[L1];function w1(t,s){return e(),o("svg",g1,[...f1])}const hn={name:"carbon-maximize",render:w1},x1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},M1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),z1=[M1];function C1(t,s){return e(),o("svg",x1,[...z1])}const rn={name:"carbon-minimize",render:C1},H1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},b1=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),B1=[b1];function V1(t,s){return e(),o("svg",H1,[...B1])}const an={name:"carbon-checkmark",render:V1},Z1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A1=n("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),k1=[A1];function j1(t,s){return e(),o("svg",Z1,[...k1])}const dn={name:"carbon-renew",render:j1},y1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q1=n("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),E1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),S1=[q1,E1];function D1(t,s){return e(),o("svg",y1,[...S1])}const un={name:"carbon-time",render:D1},F1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},G1=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),N1=n("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),I1=[G1,N1];function J1(t,s){return e(),o("svg",F1,[...I1])}const mn={name:"carbon-zoom-out",render:J1},K1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},O1=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),P1=n("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),Q1=[O1,P1];function R1(t,s){return e(),o("svg",K1,[...Q1])}const vn={name:"carbon-zoom-in",render:R1},T1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},U1=n("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),W1=n("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),X1=[U1,W1];function Y1(t,s){return e(),o("svg",T1,[...X1])}const $n={name:"carbon-close-outline",render:Y1},n2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},e2=n("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),o2=[e2];function t2(t,s){return e(),o("svg",n2,[...o2])}const pn={name:"carbon-error",render:t2},s2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},c2=n("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),_2=[c2];function i2(t,s){return e(),o("svg",s2,[..._2])}const gn={name:"carbon-pin",render:i2},l2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},h2=n("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),r2=[h2];function a2(t,s){return e(),o("svg",l2,[...r2])}const Ln={name:"carbon-pin-filled",render:a2},d2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},u2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),m2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),v2=[u2,m2];function $2(t,s){return e(),o("svg",d2,[...v2])}const fn={name:"carbon-trash-can",render:$2},p2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g2=n("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),L2=[g2];function f2(t,s){return e(),o("svg",p2,[...L2])}const wn={name:"carbon-redo",render:f2},w2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},x2=n("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),M2=[x2];function z2(t,s){return e(),o("svg",w2,[...M2])}const xn={name:"carbon-undo",render:z2},C2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},H2=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),b2=[H2];function B2(t,s){return e(),o("svg",C2,[...b2])}const Mn={name:"carbon-erase",render:B2},V2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Z2=n("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),A2=[Z2];function k2(t,s){return e(),o("svg",V2,[...A2])}const zn={name:"carbon-checkbox",render:k2},j2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y2=n("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),q2=[y2];function E2(t,s){return e(),o("svg",j2,[...q2])}const Cn={name:"carbon-radio-button",render:E2},S2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},D2=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),F2=[D2];function G2(t,s){return e(),o("svg",S2,[...F2])}const Hn={name:"carbon-arrow-up-right",render:G2},N2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},I2=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),J2=[I2];function K2(t,s){return e(),o("svg",N2,[...J2])}const bn={name:"carbon-cursor1",render:K2};export{Mn as A,xn as B,wn as C,fn as D,Ln as E,gn as F,pn as G,$n as H,bn as _,vn as a,mn as b,un as c,dn as d,Q2 as e,P2 as f,an as g,rn as h,hn as i,ln as j,_n as k,sn as l,tn as m,on as n,en as o,nn as p,R2 as q,cn as r,Y2 as s,X2 as t,W2 as u,U2 as v,T2 as w,Hn as x,Cn as y,zn as z}; diff --git a/assets/modules/unplugin-icons-DSU1Mbun.js b/assets/modules/unplugin-icons-DSU1Mbun.js new file mode 100644 index 0000000..7025cf2 --- /dev/null +++ b/assets/modules/unplugin-icons-DSU1Mbun.js @@ -0,0 +1 @@ +import{o as e,b as o,e as n}from"./vue-BeRk5K_R.js";const s={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},l=n("path",{fill:"currentColor",d:"M16 8h14v2H16zm0 14h14v2H16zm-6-8H4a2.002 2.002 0 0 1-2-2V6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2M4 6v6h6.001L10 6zm6 22H4a2.002 2.002 0 0 1-2-2v-6a2.002 2.002 0 0 1 2-2h6a2.002 2.002 0 0 1 2 2v6a2.002 2.002 0 0 1-2 2m-6-8v6h6.001L10 20z"},null,-1),_=[l];function i(t,c){return e(),o("svg",s,[..._])}const Ln={name:"carbon-list-boxes",render:i},h={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},r=n("path",{fill:"currentColor",d:"M26 2H8a2 2 0 0 0-2 2v4H4v2h2v5H4v2h2v5H4v2h2v4a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2m0 26H8v-4h2v-2H8v-5h2v-2H8v-5h2V8H8V4h18Z"},null,-1),a=n("path",{fill:"currentColor",d:"M14 8h8v2h-8zm0 7h8v2h-8zm0 7h8v2h-8z"},null,-1),d=[r,a];function u(t,c){return e(),o("svg",h,[...d])}const fn={name:"carbon-catalog",render:u},v={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},m=n("path",{fill:"currentColor",d:"M29.415 19L27.7 17.285A2.97 2.97 0 0 0 28 16a3 3 0 1 0-3 3a2.97 2.97 0 0 0 1.286-.3L28 20.414V28h-6v-3a7.008 7.008 0 0 0-7-7H9a7.008 7.008 0 0 0-7 7v5h28v-9.586A1.988 1.988 0 0 0 29.415 19M4 25a5.006 5.006 0 0 1 5-5h6a5.006 5.006 0 0 1 5 5v3H4Z"},null,-1),$=n("path",{fill:"currentColor",d:"M12 4a5 5 0 1 1-5 5a5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7a7 7 0 0 0-7-7"},null,-1),p=[m,$];function g(t,c){return e(),o("svg",v,[...p])}const wn={name:"carbon-user-speaker",render:g},L={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},f=n("path",{fill:"currentColor",d:"M15 10h2v8h-2zm5 4h2v4h-2zm-10-2h2v6h-2z"},null,-1),w=n("path",{fill:"currentColor",d:"M25 4h-8V2h-2v2H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8v6h-4v2h10v-2h-4v-6h8a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2m0 16H7V6h18Z"},null,-1),x=[f,w];function M(t,c){return e(),o("svg",L,[...x])}const xn={name:"carbon-presentation-file",render:M},z={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C=n("path",{fill:"currentColor",d:"M27.307 6.107L30 3.414L28.586 2l-2.693 2.693L24.8 3.6a1.933 1.933 0 0 0-2.8 0l-18 18V28h6.4l18-18a1.933 1.933 0 0 0 0-2.8ZM9.6 26H6v-3.6L23.4 5L27 8.6ZM9 11.586L16.586 4L18 5.414L10.414 13z"},null,-1),H=[C];function B(t,c){return e(),o("svg",z,[...H])}const Mn={name:"carbon-pen",render:B},b={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},V=n("path",{fill:"currentColor",d:"m20.17 19l-2.59 2.59L19 23l4-4l-4-4l-1.42 1.41zm-8.34 0l2.59-2.59L13 15l-4 4l4 4l1.42-1.41z"},null,-1),Z=n("circle",{cx:"9",cy:"8",r:"1",fill:"currentColor"},null,-1),A=n("circle",{cx:"6",cy:"8",r:"1",fill:"currentColor"},null,-1),k=n("path",{fill:"currentColor",d:"M28 4H4c-1.103 0-2 .898-2 2v20c0 1.103.897 2 2 2h24c1.103 0 2-.897 2-2V6c0-1.102-.897-2-2-2m0 2v4H4V6zM4 26V12h24v14z"},null,-1),y=[V,Z,A,k];function j(t,c){return e(),o("svg",b,[...y])}const zn={name:"carbon-cics-program",render:j},D={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},q=n("path",{fill:"currentColor",d:"M16 12.005a4 4 0 1 1-4 4a4.005 4.005 0 0 1 4-4m0-2a6 6 0 1 0 6 6a6 6 0 0 0-6-6M5.394 6.813L6.81 5.399l3.505 3.506L8.9 10.319zM2 15.005h5v2H2zm3.394 10.193L8.9 21.692l1.414 1.414l-3.505 3.506zM15 25.005h2v5h-2zm6.687-1.9l1.414-1.414l3.506 3.506l-1.414 1.414zm3.313-8.1h5v2h-5zm-3.313-6.101l3.506-3.506l1.414 1.414l-3.506 3.506zM15 2.005h2v5h-2z"},null,-1),I=[q];function E(t,c){return e(),o("svg",D,[...I])}const Cn={name:"carbon-sun",render:E},S={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},F=n("path",{fill:"currentColor",d:"M13.503 5.414a15.076 15.076 0 0 0 11.593 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3"},null,-1),G=[F];function J(t,c){return e(),o("svg",S,[...G])}const Hn={name:"carbon-moon",render:J},K={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},N=n("path",{fill:"currentColor",d:"M23 28a1 1 0 0 1-.71-.29l-6.13-6.14l-3.33 5a1 1 0 0 1-1 .44a1 1 0 0 1-.81-.7l-6-20A1 1 0 0 1 6.29 5l20 6a1 1 0 0 1 .7.81a1 1 0 0 1-.44 1l-5 3.33l6.14 6.13a1 1 0 0 1 0 1.42l-4 4A1 1 0 0 1 23 28m0-2.41L25.59 23l-7.16-7.15l5.25-3.5L7.49 7.49l4.86 16.19l3.5-5.25Z"},null,-1),U=[N];function O(t,c){return e(),o("svg",K,[...U])}const Bn={name:"carbon-cursor1",render:O},P={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Q=n("path",{fill:"currentColor",d:"M8 12h10v2H8z"},null,-1),R=n("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),T=[Q,R];function W(t,c){return e(),o("svg",P,[...T])}const bn={name:"carbon-zoom-out",render:W},X={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Y=n("path",{fill:"currentColor",d:"M18 12h-4V8h-2v4H8v2h4v4h2v-4h4z"},null,-1),n1=n("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),e1=[Y,n1];function o1(t,c){return e(),o("svg",X,[...e1])}const Vn={name:"carbon-zoom-in",render:o1},t1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},c1=n("path",{fill:"currentColor",d:"M20 2v2h6.586L18 12.582L19.414 14L28 5.414V12h2V2zm-6 17.416L12.592 18L4 26.586V20H2v10h10v-2H5.414z"},null,-1),s1=[c1];function l1(t,c){return e(),o("svg",t1,[...s1])}const Zn={name:"carbon-maximize",render:l1},_1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},i1=n("path",{fill:"currentColor",d:"M4 18v2h6.586L2 28.582L3.414 30L12 21.414V28h2V18zM30 3.416L28.592 2L20 10.586V4h-2v10h10v-2h-6.586z"},null,-1),h1=[i1];function r1(t,c){return e(),o("svg",_1,[...h1])}const An={name:"carbon-minimize",render:r1},a1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},d1=n("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),u1=[d1];function v1(t,c){return e(),o("svg",a1,[...u1])}const kn={name:"carbon-renew",render:v1},m1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},$1=n("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),p1=n("path",{fill:"currentColor",d:"M20.59 22L15 16.41V7h2v8.58l5 5.01z"},null,-1),g1=[$1,p1];function L1(t,c){return e(),o("svg",m1,[...g1])}const yn={name:"carbon-time",render:L1},f1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},w1=n("path",{fill:"currentColor",d:"m14 26l1.41-1.41L7.83 17H28v-2H7.83l7.58-7.59L14 6L4 16z"},null,-1),x1=[w1];function M1(t,c){return e(),o("svg",f1,[...x1])}const jn={name:"carbon-arrow-left",render:M1},z1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},C1=n("path",{fill:"currentColor",d:"m18 6l-1.43 1.393L24.15 15H4v2h20.15l-7.58 7.573L18 26l10-10z"},null,-1),H1=[C1];function B1(t,c){return e(),o("svg",z1,[...H1])}const Dn={name:"carbon-arrow-right",render:B1},b1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},V1=n("path",{fill:"currentColor",d:"M16 4L6 14l1.41 1.41L15 7.83V28h2V7.83l7.59 7.58L26 14z"},null,-1),Z1=[V1];function A1(t,c){return e(),o("svg",b1,[...Z1])}const qn={name:"carbon-arrow-up",render:A1},k1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},y1=n("path",{fill:"currentColor",d:"M24.59 16.59L17 24.17V4h-2v20.17l-7.59-7.58L6 18l10 10l10-10z"},null,-1),j1=[y1];function D1(t,c){return e(),o("svg",k1,[...j1])}const In={name:"carbon-arrow-down",render:D1},q1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},I1=n("path",{d:"M29.537 13.76l-3.297-3.297a1.586 1.586 0 0 0-2.24 0L10 24.467V30h5.533l14.004-14a1.586 1.586 0 0 0 0-2.24zM14.704 28H12v-2.704l9.44-9.441l2.705 2.704zM25.56 17.145l-2.704-2.704l2.267-2.267l2.704 2.704z",fill:"currentColor"},null,-1),E1=n("path",{d:"M11 17h2v-7h3V8H8v2h3v7z",fill:"currentColor"},null,-1),S1=n("path",{d:"M8 20H4V4h16v4h2V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4z",fill:"currentColor"},null,-1),F1=[I1,E1,S1];function G1(t,c){return e(),o("svg",q1,[...F1])}const En={name:"carbon-text-annotation-toggle",render:G1},J1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K1=n("path",{fill:"currentColor",d:"M8 4v4H4V4Zm2-2H2v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8Zm8 2v4h-4V4Zm2-2h-8v8h8ZM8 14v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8ZM8 24v4H4v-4Zm2-2H2v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Zm8 2v4h-4v-4Zm2-2h-8v8h8Z"},null,-1),N1=[K1];function U1(t,c){return e(),o("svg",J1,[...N1])}const Sn={name:"carbon-apps",render:U1},O1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},P1=n("path",{fill:"currentColor",d:"M30 8h-4.1c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2v2h14.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30zm-9 4c-1.7 0-3-1.3-3-3s1.3-3 3-3s3 1.3 3 3s-1.3 3-3 3M2 24h4.1c.5 2.3 2.5 4 4.9 4s4.4-1.7 4.9-4H30v-2H15.9c-.5-2.3-2.5-4-4.9-4s-4.4 1.7-4.9 4H2zm9-4c1.7 0 3 1.3 3 3s-1.3 3-3 3s-3-1.3-3-3s1.3-3 3-3"},null,-1),Q1=[P1];function R1(t,c){return e(),o("svg",O1,[...Q1])}const Fn={name:"carbon-settings-adjust",render:R1},T1={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},W1=n("path",{fill:"currentColor",d:"M17 22v-8h-4v2h2v6h-3v2h8v-2zM16 8a1.5 1.5 0 1 0 1.5 1.5A1.5 1.5 0 0 0 16 8"},null,-1),X1=n("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),Y1=[W1,X1];function n2(t,c){return e(),o("svg",T1,[...Y1])}const Gn={name:"carbon-information",render:n2},e2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},o2=n("path",{fill:"currentColor",d:"M26 24v4H6v-4H4v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2v-4zm0-10l-1.41-1.41L17 20.17V2h-2v18.17l-7.59-7.58L6 14l10 10z"},null,-1),t2=[o2];function c2(t,c){return e(),o("svg",e2,[...t2])}const Jn={name:"carbon-download",render:c2},s2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},l2=n("path",{fill:"currentColor",d:"M26 6v4H6V6zm0-2H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2M10 16v10H6V16zm0-2H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2m16 2v10H16V16zm0-2H16a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V16a2 2 0 0 0-2-2"},null,-1),_2=[l2];function i2(t,c){return e(),o("svg",s2,[..._2])}const Kn={name:"carbon-template",render:i2},h2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},r2=n("g",{fill:"currentColor"},[n("path",{d:"M213.66 201L201 213.66a8 8 0 0 1-11.31 0l-51.31-51.31a8 8 0 0 0-13 2.46l-17.82 46.41a8 8 0 0 1-14.85-.71L40.41 50.44a8 8 0 0 1 10-10l160.1 52.24a8 8 0 0 1 .71 14.85l-46.41 17.82a8 8 0 0 0-2.46 13l51.31 51.31a8 8 0 0 1 0 11.34",opacity:".2"}),n("path",{d:"M168 132.69L214.08 115l.33-.13a16 16 0 0 0-1.41-29.8L52.92 32.8A15.95 15.95 0 0 0 32.8 52.92L85.07 213a15.82 15.82 0 0 0 14.41 11h.78a15.84 15.84 0 0 0 14.61-9.59l.13-.33L132.69 168L184 219.31a16 16 0 0 0 22.63 0l12.68-12.68a16 16 0 0 0 0-22.63ZM195.31 208L144 156.69a16 16 0 0 0-26 4.93c0 .11-.09.22-.13.32l-17.65 46L48 48l159.85 52.2l-45.95 17.64l-.32.13a16 16 0 0 0-4.93 26L208 195.31Z"})],-1),a2=[r2];function d2(t,c){return e(),o("svg",h2,[...a2])}const Nn={name:"ph-cursor-duotone",render:d2},u2={class:"slidev-icon",viewBox:"0 0 256 256",width:"1.2em",height:"1.2em"},v2=n("path",{fill:"currentColor",d:"m220.49 207.8l-12.69 12.69a12 12 0 0 1-17 0l-56.57-56.57L115 214.08l-.13.33a15.84 15.84 0 0 1-14.61 9.59h-.78a15.82 15.82 0 0 1-14.41-11L32.8 52.92A15.95 15.95 0 0 1 52.92 32.8L213 85.07a16 16 0 0 1 1.41 29.8l-.33.13l-50.16 19.27l56.57 56.56a12 12 0 0 1 0 16.97"},null,-1),m2=[v2];function $2(t,c){return e(),o("svg",u2,[...m2])}const Un={name:"ph-cursor-fill",render:$2},p2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},g2=n("path",{fill:"currentColor",d:"m13 24l-9-9l1.414-1.414L13 21.171L26.586 7.586L28 9z"},null,-1),L2=[g2];function f2(t,c){return e(),o("svg",p2,[...L2])}const On={name:"carbon-checkmark",render:f2},w2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},x2=n("path",{fill:"currentColor",d:"M17.414 16L24 9.414L22.586 8L16 14.586L9.414 8L8 9.414L14.586 16L8 22.586L9.414 24L16 17.414L22.586 24L24 22.586z"},null,-1),M2=[x2];function z2(t,c){return e(),o("svg",w2,[...M2])}const Pn={name:"carbon-close",render:z2},C2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},H2=n("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),B2=n("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),b2=[H2,B2];function V2(t,c){return e(),o("svg",C2,[...b2])}const Qn={name:"carbon-close-outline",render:V2},Z2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},A2=n("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),k2=[A2];function y2(t,c){return e(),o("svg",Z2,[...k2])}const Rn={name:"carbon-error",render:y2},j2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},D2=n("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),q2=[D2];function I2(t,c){return e(),o("svg",j2,[...q2])}const Tn={name:"carbon-pin",render:I2},E2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},S2=n("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),F2=[S2];function G2(t,c){return e(),o("svg",E2,[...F2])}const Wn={name:"carbon-pin-filled",render:G2},J2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},K2=n("path",{fill:"currentColor",d:"M12 12h2v12h-2zm6 0h2v12h-2z"},null,-1),N2=n("path",{fill:"currentColor",d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20zm4-26h8v2h-8z"},null,-1),U2=[K2,N2];function O2(t,c){return e(),o("svg",J2,[...U2])}const Xn={name:"carbon-trash-can",render:O2},P2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},Q2=n("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),R2=[Q2];function T2(t,c){return e(),o("svg",P2,[...R2])}const Yn={name:"carbon-redo",render:T2},W2={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},X2=n("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),Y2=[X2];function nn(t,c){return e(),o("svg",W2,[...Y2])}const ne={name:"carbon-undo",render:nn},en={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},on=n("path",{fill:"currentColor",d:"M7 27h23v2H7zm20.38-16.49l-7.93-7.92a2 2 0 0 0-2.83 0l-14 14a2 2 0 0 0 0 2.83L7.13 24h9.59l10.66-10.66a2 2 0 0 0 0-2.83M15.89 22H8l-4-4l6.31-6.31l7.93 7.92zm3.76-3.76l-7.92-7.93L18 4l8 7.93z"},null,-1),tn=[on];function cn(t,c){return e(),o("svg",en,[...tn])}const ee={name:"carbon-erase",render:cn},sn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},ln=n("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),_n=[ln];function hn(t,c){return e(),o("svg",sn,[..._n])}const oe={name:"carbon-checkbox",render:hn},rn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},an=n("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),dn=[an];function un(t,c){return e(),o("svg",rn,[...dn])}const te={name:"carbon-radio-button",render:un},vn={class:"slidev-icon",viewBox:"0 0 32 32",width:"1.2em",height:"1.2em"},mn=n("path",{fill:"currentColor",d:"M10 6v2h12.59L6 24.59L7.41 26L24 9.41V22h2V6z"},null,-1),$n=[mn];function pn(t,c){return e(),o("svg",vn,[...$n])}const ce={name:"carbon-arrow-up-right",render:pn};export{Pn as A,ce as B,te as C,oe as D,ee as E,ne as F,Yn as G,Xn as H,qn as I,Wn as J,Tn as K,Rn as L,Qn as M,xn as _,wn as a,fn as b,Ln as c,Hn as d,Cn as e,zn as f,Mn as g,Vn as h,bn as i,An as j,Zn as k,yn as l,kn as m,Bn as n,jn as o,Dn as p,In as q,En as r,Sn as s,On as t,Un as u,Nn as v,Fn as w,Kn as x,Jn as y,Gn as z}; diff --git a/assets/modules/vue-BeRk5K_R.js b/assets/modules/vue-BeRk5K_R.js new file mode 100644 index 0000000..bba603a --- /dev/null +++ b/assets/modules/vue-BeRk5K_R.js @@ -0,0 +1,91 @@ +/** +* @vue/shared v3.4.25 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function Ke(e,t){const n=new Set(e.split(","));return t?s=>n.has(s.toLowerCase()):s=>n.has(s)}const ge=Object.freeze({}),ms=Object.freeze([]),Pe=()=>{},ci=()=>!1,rn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),bi=e=>e.startsWith("onUpdate:"),oe=Object.assign,Bl=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},dm=Object.prototype.hasOwnProperty,de=(e,t)=>dm.call(e,t),H=Array.isArray,Jn=e=>Fs(e)==="[object Map]",as=e=>Fs(e)==="[object Set]",uc=e=>Fs(e)==="[object Date]",pm=e=>Fs(e)==="[object RegExp]",Z=e=>typeof e=="function",ne=e=>typeof e=="string",xt=e=>typeof e=="symbol",me=e=>e!==null&&typeof e=="object",Gi=e=>(me(e)||Z(e))&&Z(e.then)&&Z(e.catch),lf=Object.prototype.toString,Fs=e=>lf.call(e),Hl=e=>Fs(e).slice(8,-1),af=e=>Fs(e)==="[object Object]",Ul=e=>ne(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,An=Ke(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),cf=Ke("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),Yi=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},hm=/-(\w)/g,Re=Yi(e=>e.replace(hm,(t,n)=>n?n.toUpperCase():"")),mm=/\B([A-Z])/g,Qe=Yi(e=>e.replace(mm,"-$1").toLowerCase()),Wt=Yi(e=>e.charAt(0).toUpperCase()+e.slice(1)),Vt=Yi(e=>e?`on${Wt(e)}`:""),Mt=(e,t)=>!Object.is(e,t),En=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},_i=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Si=e=>{const t=ne(e)?Number(e):NaN;return isNaN(t)?e:t};let fc;const Kl=()=>fc||(fc=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}),Ht={1:"TEXT",2:"CLASS",4:"STYLE",8:"PROPS",16:"FULL_PROPS",32:"NEED_HYDRATION",64:"STABLE_FRAGMENT",128:"KEYED_FRAGMENT",256:"UNKEYED_FRAGMENT",512:"NEED_PATCH",1024:"DYNAMIC_SLOTS",2048:"DEV_ROOT_FRAGMENT",[-1]:"HOISTED",[-2]:"BAIL"},gm={1:"STABLE",2:"DYNAMIC",3:"FORWARDED"},ym="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error",vm=Ke(ym),dc=2;function bm(e,t=0,n=e.length){let s=e.split(/(\r?\n)/);const r=s.filter((l,a)=>a%2===1);s=s.filter((l,a)=>a%2===0);let i=0;const o=[];for(let l=0;l=t){for(let a=l-dc;a<=l+dc||n>i;a++){if(a<0||a>=s.length)continue;const u=a+1;o.push(`${u}${" ".repeat(Math.max(3-String(u).length,0))}| ${s[a]}`);const f=s[a].length,c=r[a]&&r[a].length||0;if(a===l){const d=t-(i-(f+c)),p=Math.max(1,n>i?f-d:n-t);o.push(" | "+" ".repeat(d)+"^".repeat(p))}else if(a>l){if(n>i){const d=Math.max(Math.min(n-i,f),1);o.push(" | "+"^".repeat(d))}i+=f+c}}break}return o.join(` +`)}function Ls(e){if(H(e)){const t={};for(let n=0;n{if(n){const s=n.split(Sm);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Em(e){let t="";if(!e||ne(e))return t;for(const n in e){const s=e[n],r=n.startsWith("--")?n:Qe(n);(ne(s)||typeof s=="number")&&(t+=`${r}:${s};`)}return t}function Ds(e){let t="";if(ne(e))t=e;else if(H(e))for(let n=0;nkn(n,t))}const $m=e=>ne(e)?e:e==null?"":H(e)||me(e)&&(e.toString===lf||!Z(e.toString))?JSON.stringify(e,gf,2):String(e),gf=(e,t)=>t&&t.__v_isRef?gf(e,t.value):Jn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[wo(s,i)+" =>"]=r,n),{})}:as(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>wo(n))}:xt(t)?wo(t):me(t)&&!H(t)&&!af(t)?String(t):t,wo=(e,t="")=>{var n;return xt(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.4.25 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function qt(e,...t){console.warn(`[Vue warn] ${e}`,...t)}let ht;class ql{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=ht,!t&&ht&&(this.index=(ht.scopes||(ht.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=ht;try{return ht=this,t()}finally{ht=n}}else qt("cannot run an inactive effect scope.")}on(){ht=this}off(){ht=this.parent}stop(t){if(this._active){let n,s;for(n=0,s=this.effects.length;n=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),an()}return this._dirtyLevel>=4}set dirty(t){this._dirtyLevel=t?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=On,n=Xn;try{return On=!0,Xn=this,this._runnings++,hc(this),this.fn()}finally{mc(this),this._runnings--,Xn=n,On=t}}stop(){var t;this.active&&(hc(this),mc(this),(t=this.onStop)==null||t.call(this),this.active=!1)}}function Fm(e){return e.value}function hc(e){e._trackId++,e._depsLength=0}function mc(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{n.dirty&&n.run()});t&&(oe(n,t),t.scope&&vf(n,t.scope)),(!t||!t.lazy)&&n.run();const s=n.run.bind(n);return s.effect=n,s}function Dm(e){e.effect.stop()}let On=!0,qo=0;const Sf=[];function ln(){Sf.push(On),On=!1}function an(){const e=Sf.pop();On=e===void 0?!0:e}function Gl(){qo++}function Yl(){for(qo--;!qo&&zo.length;)zo.shift()()}function wf(e,t,n){var s;if(t.get(e)!==e._trackId){t.set(e,e._trackId);const r=e.deps[e._depsLength];r!==t?(r&&_f(r,e),e.deps[e._depsLength++]=t):e._depsLength++,(s=e.onTrack)==null||s.call(e,oe({effect:e},n))}}const zo=[];function Ef(e,t,n){var s;Gl();for(const r of e.keys()){let i;r._dirtyLevel{const n=new Map;return n.cleanup=e,n.computed=t,n},wi=new WeakMap,Qn=Symbol("iterate"),Go=Symbol("Map key iterate");function tt(e,t,n){if(On&&Xn){let s=wi.get(e);s||wi.set(e,s=new Map);let r=s.get(n);r||s.set(n,r=Cf(()=>s.delete(n))),wf(Xn,r,{target:e,type:t,key:n})}}function Ut(e,t,n,s,r,i){const o=wi.get(e);if(!o)return;let l=[];if(t==="clear")l=[...o.values()];else if(n==="length"&&H(e)){const a=Number(s);o.forEach((u,f)=>{(f==="length"||!xt(f)&&f>=a)&&l.push(u)})}else switch(n!==void 0&&l.push(o.get(n)),t){case"add":H(e)?Ul(n)&&l.push(o.get("length")):(l.push(o.get(Qn)),Jn(e)&&l.push(o.get(Go)));break;case"delete":H(e)||(l.push(o.get(Qn)),Jn(e)&&l.push(o.get(Go)));break;case"set":Jn(e)&&l.push(o.get(Qn));break}Gl();for(const a of l)a&&Ef(a,4,{target:e,type:t,key:n,newValue:s,oldValue:r,oldTarget:i});Yl()}function Vm(e,t){var n;return(n=wi.get(e))==null?void 0:n.get(t)}const jm=Ke("__proto__,__v_isRef,__isVue"),Tf=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(xt)),gc=Bm();function Bm(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const s=re(this);for(let i=0,o=this.length;i{e[t]=function(...n){ln(),Gl();const s=re(this)[t].apply(this,n);return Yl(),an(),s}}),e}function Hm(e){xt(e)||(e=String(e));const t=re(this);return tt(t,"has",e),t.hasOwnProperty(e)}class xf{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?kf:Pf:i?Nf:Rf).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=H(t);if(!r){if(o&&de(gc,n))return Reflect.get(gc,n,s);if(n==="hasOwnProperty")return Hm}const l=Reflect.get(t,n,s);return(xt(n)?Tf.has(n):jm(n))||(r||tt(t,"get",n),i)?l:Te(l)?o&&Ul(n)?l:l.value:me(l)?r?Nt(l):pt(l):l}}class Af extends xf{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];if(!this._isShallow){const a=Mn(i);if(!In(s)&&!Mn(s)&&(i=re(i),s=re(s)),!H(t)&&Te(i)&&!Te(s))return a?!1:(i.value=s,!0)}const o=H(t)&&Ul(n)?Number(n)e,Xi=e=>Reflect.getPrototypeOf(e);function Wr(e,t,n=!1,s=!1){e=e.__v_raw;const r=re(e),i=re(t);n||(Mt(t,i)&&tt(r,"get",t),tt(r,"get",i));const{has:o}=Xi(r),l=s?Jl:n?Ql:fr;if(o.call(r,t))return l(e.get(t));if(o.call(r,i))return l(e.get(i));e!==r&&e.get(t)}function qr(e,t=!1){const n=this.__v_raw,s=re(n),r=re(e);return t||(Mt(e,r)&&tt(s,"has",e),tt(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function zr(e,t=!1){return e=e.__v_raw,!t&&tt(re(e),"iterate",Qn),Reflect.get(e,"size",e)}function yc(e){e=re(e);const t=re(this);return Xi(t).has.call(t,e)||(t.add(e),Ut(t,"add",e,e)),this}function vc(e,t){t=re(t);const n=re(this),{has:s,get:r}=Xi(n);let i=s.call(n,e);i?If(n,s,e):(e=re(e),i=s.call(n,e));const o=r.call(n,e);return n.set(e,t),i?Mt(t,o)&&Ut(n,"set",e,t,o):Ut(n,"add",e,t),this}function bc(e){const t=re(this),{has:n,get:s}=Xi(t);let r=n.call(t,e);r?If(t,n,e):(e=re(e),r=n.call(t,e));const i=s?s.call(t,e):void 0,o=t.delete(e);return r&&Ut(t,"delete",e,void 0,i),o}function _c(){const e=re(this),t=e.size!==0,n=Jn(e)?new Map(e):new Set(e),s=e.clear();return t&&Ut(e,"clear",void 0,void 0,n),s}function Gr(e,t){return function(s,r){const i=this,o=i.__v_raw,l=re(o),a=t?Jl:e?Ql:fr;return!e&&tt(l,"iterate",Qn),o.forEach((u,f)=>s.call(r,a(u),a(f),i))}}function Yr(e,t,n){return function(...s){const r=this.__v_raw,i=re(r),o=Jn(i),l=e==="entries"||e===Symbol.iterator&&o,a=e==="keys"&&o,u=r[e](...s),f=n?Jl:t?Ql:fr;return!t&&tt(i,"iterate",a?Go:Qn),{next(){const{value:c,done:d}=u.next();return d?{value:c,done:d}:{value:l?[f(c[0]),f(c[1])]:f(c),done:d}},[Symbol.iterator](){return this}}}}function dn(e){return function(...t){{const n=t[0]?`on key "${t[0]}" `:"";qt(`${Wt(e)} operation ${n}failed: target is readonly.`,re(this))}return e==="delete"?!1:e==="clear"?void 0:this}}function zm(){const e={get(i){return Wr(this,i)},get size(){return zr(this)},has:qr,add:yc,set:vc,delete:bc,clear:_c,forEach:Gr(!1,!1)},t={get(i){return Wr(this,i,!1,!0)},get size(){return zr(this)},has:qr,add:yc,set:vc,delete:bc,clear:_c,forEach:Gr(!1,!0)},n={get(i){return Wr(this,i,!0)},get size(){return zr(this,!0)},has(i){return qr.call(this,i,!0)},add:dn("add"),set:dn("set"),delete:dn("delete"),clear:dn("clear"),forEach:Gr(!0,!1)},s={get(i){return Wr(this,i,!0,!0)},get size(){return zr(this,!0)},has(i){return qr.call(this,i,!0)},add:dn("add"),set:dn("set"),delete:dn("delete"),clear:dn("clear"),forEach:Gr(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=Yr(i,!1,!1),n[i]=Yr(i,!0,!1),t[i]=Yr(i,!1,!0),s[i]=Yr(i,!0,!0)}),[e,n,t,s]}const[Gm,Ym,Jm,Xm]=zm();function Qi(e,t){const n=t?e?Xm:Jm:e?Ym:Gm;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(de(n,r)&&r in s?n:s,r,i)}const Qm={get:Qi(!1,!1)},Zm={get:Qi(!1,!0)},eg={get:Qi(!0,!1)},tg={get:Qi(!0,!0)};function If(e,t,n){const s=re(n);if(s!==n&&t.call(e,s)){const r=Hl(e);qt(`Reactive ${r} contains both the raw and reactive versions of the same object${r==="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 Rf=new WeakMap,Nf=new WeakMap,Pf=new WeakMap,kf=new WeakMap;function ng(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function sg(e){return e.__v_skip||!Object.isExtensible(e)?0:ng(Hl(e))}function pt(e){return Mn(e)?e:Zi(e,!1,Um,Qm,Rf)}function Xl(e){return Zi(e,!1,Wm,Zm,Nf)}function Nt(e){return Zi(e,!0,Km,eg,Pf)}function Bt(e){return Zi(e,!0,qm,tg,kf)}function Zi(e,t,n,s,r){if(!me(e))return qt(`value cannot be made reactive: ${String(e)}`),e;if(e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=sg(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function Zn(e){return Mn(e)?Zn(e.__v_raw):!!(e&&e.__v_isReactive)}function Mn(e){return!!(e&&e.__v_isReadonly)}function In(e){return!!(e&&e.__v_isShallow)}function ur(e){return e?!!e.__v_raw:!1}function re(e){const t=e&&e.__v_raw;return t?re(t):e}function Mf(e){return Object.isExtensible(e)&&uf(e,"__v_skip",!0),e}const fr=e=>me(e)?pt(e):e,Ql=e=>me(e)?Nt(e):e,rg="Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free";class $f{constructor(t,n,s,r){this.getter=t,this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Cs(()=>t(this._value),()=>gs(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=s}get value(){const t=re(this);return(!t._cacheable||t.effect.dirty)&&Mt(t._value,t._value=t.effect.run())&&gs(t,4),Zl(t),t.effect._dirtyLevel>=2&&(this._warnRecursive&&qt(rg,` + +getter: `,this.getter),gs(t,2)),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function ig(e,t,n=!1){let s,r;const i=Z(e);i?(s=e,r=()=>{qt("Write operation failed: computed value is readonly")}):(s=e.get,r=e.set);const o=new $f(s,r,i||!r,n);return t&&!n&&(o.effect.onTrack=t.onTrack,o.effect.onTrigger=t.onTrigger),o}function Zl(e){var t;On&&Xn&&(e=re(e),wf(Xn,(t=e.dep)!=null?t:e.dep=Cf(()=>e.dep=void 0,e instanceof $f?e:void 0),{target:e,type:"get",key:"value"}))}function gs(e,t=4,n){e=re(e);const s=e.dep;s&&Ef(s,t,{target:e,type:"set",key:"value",newValue:n})}function Te(e){return!!(e&&e.__v_isRef===!0)}function X(e){return Ff(e,!1)}function ea(e){return Ff(e,!0)}function Ff(e,t){return Te(e)?e:new og(e,t)}class og{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:re(t),this._value=n?t:fr(t)}get value(){return Zl(this),this._value}set value(t){const n=this.__v_isShallow||In(t)||Mn(t);t=n?t:re(t),Mt(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:fr(t),gs(this,4,t))}}function lg(e){gs(e,4,e.value)}function Ge(e){return Te(e)?e.value:e}function ag(e){return Z(e)?e():Ge(e)}const cg={get:(e,t,n)=>Ge(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return Te(r)&&!Te(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function ta(e){return Zn(e)?e:new Proxy(e,cg)}class ug{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:s}=t(()=>Zl(this),()=>gs(this));this._get=n,this._set=s}get value(){return this._get()}set value(t){this._set(t)}}function eo(e){return new ug(e)}function Lf(e){ur(e)||qt("toRefs() expects a reactive object but received a plain one.");const t=H(e)?new Array(e.length):{};for(const n in e)t[n]=Vf(e,n);return t}class fg{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,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 Vm(re(this._object),this._key)}}class dg{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Df(e,t,n){return Te(e)?e:Z(e)?new dg(e):me(e)&&arguments.length>1?Vf(e,t,n):X(e)}function Vf(e,t,n){const s=e[t];return Te(s)?s:new fg(e,t,n)}const pg={GET:"get",HAS:"has",ITERATE:"iterate"},hg={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"};/** +* @vue/runtime-core v3.4.25 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/const es=[];function Xs(e){es.push(e)}function Qs(){es.pop()}function M(e,...t){ln();const n=es.length?es[es.length-1].component:null,s=n&&n.appContext.config.warnHandler,r=mg();if(s)Kt(s,n,11,[e+t.map(i=>{var o,l;return(l=(o=i.toString)==null?void 0:o.call(i))!=null?l:JSON.stringify(i)}).join(""),n&&n.proxy,r.map(({vnode:i})=>`at <${fo(n,i.type)}>`).join(` +`),r]);else{const i=[`[Vue warn]: ${e}`,...t];r.length&&i.push(` +`,...gg(r)),console.warn(...i)}an()}function mg(){let e=es[es.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 s=e.component&&e.component.parent;e=s&&s.vnode}return t}function gg(e){const t=[];return e.forEach((n,s)=>{t.push(...s===0?[]:[` +`],...yg(n))}),t}function yg({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",s=e.component?e.component.parent==null:!1,r=` at <${fo(e.component,e.type,s)}`,i=">"+n;return e.props?[r,...vg(e.props),i]:[r+i]}function vg(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(s=>{t.push(...jf(s,e[s]))}),n.length>3&&t.push(" ..."),t}function jf(e,t,n){return ne(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:Te(t)?(t=jf(e,re(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):Z(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=re(t),n?t:[`${e}=`,t])}function na(e,t){e!==void 0&&(typeof e!="number"?M(`${t} is not a valid number - got ${JSON.stringify(e)}.`):isNaN(e)&&M(`${t} is NaN - the duration expression might be incorrect.`))}const bg={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",WATCH_GETTER:2,2:"WATCH_GETTER",WATCH_CALLBACK:3,3:"WATCH_CALLBACK",WATCH_CLEANUP:4,4:"WATCH_CLEANUP",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER"},to={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 Kt(e,t,n,s){try{return s?e(...s):e()}catch(r){Dn(r,t,n)}}function gt(e,t,n,s){if(Z(e)){const r=Kt(e,t,n,s);return r&&Gi(r)&&r.catch(i=>{Dn(i,t,n)}),r}if(H(e)){const r=[];for(let i=0;i>>1,r=Ze[s],i=hr(r);ijt&&Ze.splice(t,1)}function pr(e){H(e)?ys.push(...e):(!Zt||!Zt.includes(e,e.allowRecurse?yn+1:yn))&&ys.push(e),Hf()}function Sc(e,t,n=dr?jt+1:0){for(t=t||new Map;nhr(n)-hr(s));if(ys.length=0,Zt){Zt.push(...t);return}for(Zt=t,e=e||new Map,yn=0;yne.id==null?1/0:e.id,Cg=(e,t)=>{const n=hr(e)-hr(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Uf(e){Yo=!1,dr=!0,e=e||new Map,Ze.sort(Cg);const t=n=>ra(e,n);try{for(jt=0;jtSg){const s=t.ownerInstance,r=s&&vr(s.type);return Dn(`Maximum recursive updates exceeded${r?` in component <${r}>`:""}. 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 Rn=!1;const hs=new Set;Kl().__VUE_HMR_RUNTIME__={createRecord:Eo(Kf),rerender:Eo(Ag),reload:Eo(Og)};const ss=new Map;function Tg(e){const t=e.type.__hmrId;let n=ss.get(t);n||(Kf(t,e.type),n=ss.get(t)),n.instances.add(e)}function xg(e){ss.get(e.type.__hmrId).instances.delete(e)}function Kf(e,t){return ss.has(e)?!1:(ss.set(e,{initialDef:Zs(t),instances:new Set}),!0)}function Zs(e){return Wd(e)?e.__vccOpts:e}function Ag(e,t){const n=ss.get(e);n&&(n.initialDef.render=t,[...n.instances].forEach(s=>{t&&(s.render=t,Zs(s.type).render=t),s.renderCache=[],Rn=!0,s.effect.dirty=!0,s.update(),Rn=!1}))}function Og(e,t){const n=ss.get(e);if(!n)return;t=Zs(t),wc(n.initialDef,t);const s=[...n.instances];for(const r of s){const i=Zs(r.type);hs.has(i)||(i!==n.initialDef&&wc(i,t),hs.add(i)),r.appContext.propsCache.delete(r.type),r.appContext.emitsCache.delete(r.type),r.appContext.optionsCache.delete(r.type),r.ceReload?(hs.add(i),r.ceReload(t.styles),hs.delete(i)):r.parent?(r.parent.effect.dirty=!0,Ir(r.parent.update)):r.appContext.reload?r.appContext.reload():typeof window<"u"?window.location.reload():console.warn("[HMR] Root or manually mounted instance modified. Full reload required.")}pr(()=>{for(const r of s)hs.delete(Zs(r.type))})}function wc(e,t){oe(e,t);for(const n in e)n!=="__file"&&!(n in t)&&delete e[n]}function Eo(e){return(t,n)=>{try{return e(t,n)}catch(s){console.error(s),console.warn("[HMR] Something went wrong during Vue component hot-reload. Full reload required.")}}}let It,Gs=[],Jo=!1;function Rr(e,...t){It?It.emit(e,...t):Jo||Gs.push({event:e,args:t})}function ia(e,t){var n,s;It=e,It?(It.enabled=!0,Gs.forEach(({event:r,args:i})=>It.emit(r,...i)),Gs=[]):typeof window<"u"&&window.HTMLElement&&!((s=(n=window.navigator)==null?void 0:n.userAgent)!=null&&s.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(i=>{ia(i,t)}),setTimeout(()=>{It||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Jo=!0,Gs=[])},3e3)):(Jo=!0,Gs=[])}function Ig(e,t){Rr("app:init",e,t,{Fragment:De,Text:$n,Comment:$e,Static:Nn})}function Rg(e){Rr("app:unmount",e)}const Xo=oa("component:added"),Wf=oa("component:updated"),Ng=oa("component:removed"),Pg=e=>{It&&typeof It.cleanupBuffer=="function"&&!It.cleanupBuffer(e)&&Ng(e)};/*! #__NO_SIDE_EFFECTS__ */function oa(e){return t=>{Rr(e,t.appContext.app,t.uid,t.parent?t.parent.uid:void 0,t)}}const kg=qf("perf:start"),Mg=qf("perf:end");function qf(e){return(t,n,s)=>{Rr(e,t.appContext.app,t.uid,t,n,s)}}function $g(e,t,n){Rr("component:emit",e.appContext.app,e,t,n)}function Fg(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||ge;{const{emitsOptions:f,propsOptions:[c]}=e;if(f)if(!(t in f))(!c||!(Vt(t)in c))&&M(`Component emitted event "${t}" but it is neither declared in the emits option nor as an "${Vt(t)}" prop.`);else{const d=f[t];Z(d)&&(d(...n)||M(`Invalid event arguments: event validation failed for event "${t}".`))}}let r=n;const i=t.startsWith("update:"),o=i&&t.slice(7);if(o&&o in s){const f=`${o==="modelValue"?"model":o}Modifiers`,{number:c,trim:d}=s[f]||ge;d&&(r=n.map(p=>ne(p)?p.trim():p)),c&&(r=n.map(_i))}$g(e,t,r);{const f=t.toLowerCase();f!==t&&s[Vt(f)]&&M(`Event "${f}" is emitted in component ${fo(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 "${Qe(t)}" instead of "${t}".`)}let l,a=s[l=Vt(t)]||s[l=Vt(Re(t))];!a&&i&&(a=s[l=Vt(Qe(t))]),a&>(a,e,6,r);const u=s[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,gt(u,e,6,r)}}function zf(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!Z(e)){const a=u=>{const f=zf(u,t,!0);f&&(l=!0,oe(o,f))};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!i&&!l?(me(e)&&s.set(e,null),null):(H(i)?i.forEach(a=>o[a]=null):oe(o,i),me(e)&&s.set(e,o),o)}function no(e,t){return!e||!rn(t)?!1:(t=t.slice(2).replace(/Once$/,""),de(e,t[0].toLowerCase()+t.slice(1))||de(e,Qe(t))||de(e,t))}let Ie=null,so=null;function mr(e){const t=Ie;return Ie=e,so=e&&e.type.__scopeId||null,t}function Lg(e){so=e}function Dg(){so=null}const Vg=e=>la;function la(e,t=Ie,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&ol(-1);const i=mr(t);let o;try{o=e(...r)}finally{mr(i),s._d&&ol(1)}return Wf(t),o};return s._n=!0,s._c=!0,s._d=!0,s}let Qo=!1;function Ci(){Qo=!0}function ui(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:a,render:u,renderCache:f,props:c,data:d,setupState:p,ctx:m,inheritAttrs:w}=e,E=mr(e);let y,v;Qo=!1;try{if(n.shapeFlag&4){const S=r||s,O=p.__isScriptSetup?new Proxy(S,{get(C,x,T){return M(`Property '${String(x)}' was accessed via 'this'. Avoid using 'this' in templates.`),Reflect.get(C,x,T)}}):S;y=ut(u.call(O,S,f,Bt(c),p,d,m)),v=l}else{const S=t;l===c&&Ci(),y=ut(S.length>1?S(Bt(c),{get attrs(){return Ci(),l},slots:o,emit:a}):S(Bt(c),null)),v=t.props?l:jg(l)}}catch(S){tr.length=0,Dn(S,e,1),y=xe($e)}let g=y,b;if(y.patchFlag>0&&y.patchFlag&2048&&([g,b]=Gf(y)),v&&w!==!1){const S=Object.keys(v),{shapeFlag:O}=g;if(S.length){if(O&7)i&&S.some(bi)&&(v=Bg(v,i)),g=At(g,v);else if(!Qo&&g.type!==$e){const C=Object.keys(l),x=[],T=[];for(let A=0,k=C.length;A renders non-element root node that cannot be animated."),g.transition=n.transition),b?b(g):y=g,mr(E),y}const Gf=e=>{const t=e.children,n=e.dynamicChildren,s=ro(t,!1);if(s){if(s.patchFlag>0&&s.patchFlag&2048)return Gf(s)}else return[e,void 0];const r=t.indexOf(s),i=n?n.indexOf(s):-1,o=l=>{t[r]=l,n&&(i>-1?n[i]=l:l.patchFlag>0&&(e.dynamicChildren=[...n,l]))};return[ut(s),o]};function ro(e,t=!0){let n;for(let s=0;s0&&n.patchFlag&2048)return ro(n.children)}}else return}return n}const jg=e=>{let t;for(const n in e)(n==="class"||n==="style"||rn(n))&&((t||(t={}))[n]=e[n]);return t},Bg=(e,t)=>{const n={};for(const s in e)(!bi(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n},Ec=e=>e.shapeFlag&7||e.type===$e;function Hg(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:a}=t,u=i.emitsOptions;if((r||l)&&Rn||t.dirs||t.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return s?Cc(s,o,u):!!o;if(a&8){const f=t.dynamicProps;for(let c=0;ce.__isSuspense;let Zo=0;const zg={name:"Suspense",__isSuspense:!0,process(e,t,n,s,r,i,o,l,a,u){if(e==null)Yg(t,n,s,r,i,o,l,a,u);else{if(i&&i.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}Jg(e,t,n,s,r,o,l,a,u)}},hydrate:Xg,create:fa,normalize:Qg},Gg=zg;function gr(e,t){const n=e.props&&e.props[t];Z(n)&&n()}function Yg(e,t,n,s,r,i,o,l,a){const{p:u,o:{createElement:f}}=a,c=f("div"),d=e.suspense=fa(e,r,s,t,c,n,i,o,l,a);u(null,d.pendingBranch=e.ssContent,c,null,s,d,i,o),d.deps>0?(gr(e,"onPending"),gr(e,"onFallback"),u(null,e.ssFallback,t,n,s,null,i,o),vs(d,e.ssFallback)):d.resolve(!1,!0)}function Jg(e,t,n,s,r,i,o,l,{p:a,um:u,o:{createElement:f}}){const c=t.suspense=e.suspense;c.vnode=t,t.el=e.el;const d=t.ssContent,p=t.ssFallback,{activeBranch:m,pendingBranch:w,isInFallback:E,isHydrating:y}=c;if(w)c.pendingBranch=d,Rt(d,w)?(a(w,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():E&&(y||(a(m,p,n,s,r,null,i,o,l),vs(c,p)))):(c.pendingId=Zo++,y?(c.isHydrating=!1,c.activeBranch=w):u(w,r,c),c.deps=0,c.effects.length=0,c.hiddenContainer=f("div"),E?(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0?c.resolve():(a(m,p,n,s,r,null,i,o,l),vs(c,p))):m&&Rt(d,m)?(a(m,d,n,s,r,c,i,o,l),c.resolve(!0)):(a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0&&c.resolve()));else if(m&&Rt(d,m))a(m,d,n,s,r,c,i,o,l),vs(c,d);else if(gr(t,"onPending"),c.pendingBranch=d,d.shapeFlag&512?c.pendingId=d.component.suspenseId:c.pendingId=Zo++,a(null,d,c.hiddenContainer,null,r,c,i,o,l),c.deps<=0)c.resolve();else{const{timeout:v,pendingId:g}=c;v>0?setTimeout(()=>{c.pendingId===g&&c.fallback(p)},v):v===0&&c.fallback(p)}}let xc=!1;function fa(e,t,n,s,r,i,o,l,a,u,f=!1){xc||(xc=!0,console[console.info?"info":"log"](" is an experimental feature and its API will likely change."));const{p:c,m:d,um:p,n:m,o:{parentNode:w,remove:E}}=u;let y;const v=Zg(e);v&&t!=null&&t.pendingBranch&&(y=t.pendingId,t.deps++);const g=e.props?Si(e.props.timeout):void 0;na(g,"Suspense timeout");const b=i,S={vnode:e,parent:t,parentComponent:n,namespace:o,container:s,hiddenContainer:r,deps:0,pendingId:Zo++,timeout:typeof g=="number"?g:-1,activeBranch:null,pendingBranch:null,isInFallback:!f,isHydrating:f,isUnmounted:!1,effects:[],resolve(O=!1,C=!1){{if(!O&&!S.pendingBranch)throw new Error("suspense.resolve() is called without a pending branch.");if(S.isUnmounted)throw new Error("suspense.resolve() is called on an already unmounted suspense boundary.")}const{vnode:x,activeBranch:T,pendingBranch:A,pendingId:k,effects:I,parentComponent:V,container:Y}=S;let Q=!1;S.isHydrating?S.isHydrating=!1:O||(Q=T&&A.transition&&A.transition.mode==="out-in",Q&&(T.transition.afterLeave=()=>{k===S.pendingId&&(d(A,Y,i===b?m(T):i,0),pr(I))}),T&&(w(T.el)!==S.hiddenContainer&&(i=m(T)),p(T,V,S,!0)),Q||d(A,Y,i,0)),vs(S,A),S.pendingBranch=null,S.isInFallback=!1;let z=S.parent,G=!1;for(;z;){if(z.pendingBranch){z.effects.push(...I),G=!0;break}z=z.parent}!G&&!Q&&pr(I),S.effects=[],v&&t&&t.pendingBranch&&y===t.pendingId&&(t.deps--,t.deps===0&&!C&&t.resolve()),gr(x,"onResolve")},fallback(O){if(!S.pendingBranch)return;const{vnode:C,activeBranch:x,parentComponent:T,container:A,namespace:k}=S;gr(C,"onFallback");const I=m(x),V=()=>{S.isInFallback&&(c(null,O,A,I,T,null,k,l,a),vs(S,O))},Y=O.transition&&O.transition.mode==="out-in";Y&&(x.transition.afterLeave=V),S.isInFallback=!0,p(x,T,null,!0),Y||V()},move(O,C,x){S.activeBranch&&d(S.activeBranch,O,C,x),S.container=O},next(){return S.activeBranch&&m(S.activeBranch)},registerDep(O,C){const x=!!S.pendingBranch;x&&S.deps++;const T=O.vnode.el;O.asyncDep.catch(A=>{Dn(A,O,0)}).then(A=>{if(O.isUnmounted||S.isUnmounted||S.pendingId!==O.suspenseId)return;O.asyncResolved=!0;const{vnode:k}=O;Xs(k),fl(O,A,!1),T&&(k.el=T);const I=!T&&O.subTree.el;C(O,k,w(T||O.subTree.el),T?null:m(O.subTree),S,o,a),I&&E(I),aa(O,k.el),Qs(),x&&--S.deps===0&&S.resolve()})},unmount(O,C){S.isUnmounted=!0,S.activeBranch&&p(S.activeBranch,n,O,C),S.pendingBranch&&p(S.pendingBranch,n,O,C)}};return S}function Xg(e,t,n,s,r,i,o,l,a){const u=t.suspense=fa(t,s,n,e.parentNode,document.createElement("div"),null,r,i,o,l,!0),f=a(e,u.pendingBranch=t.ssContent,n,u,i,o);return u.deps===0&&u.resolve(!1,!0),f}function Qg(e){const{shapeFlag:t,children:n}=e,s=t&32;e.ssContent=Ac(s?n.default:n),e.ssFallback=s?Ac(n.fallback):xe($e)}function Ac(e){let t;if(Z(e)){const n=is&&e._c;n&&(e._d=!1,co()),e=e(),n&&(e._d=!0,t=ft,kd())}if(H(e)){const n=ro(e);!n&&e.filter(s=>s!==ca).length>0&&M(" slots expect a single root node."),e=n}return e=ut(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function Jf(e,t){t&&t.pendingBranch?H(e)?t.effects.push(...e):t.effects.push(e):pr(e)}function vs(e,t){e.activeBranch=t;const{vnode:n,parentComponent:s}=e;let r=t.el;for(;!r&&t.component;)t=t.component.subTree,r=t.el;n.el=r,s&&s.subTree===n&&(s.vnode.el=r,aa(s,r))}function Zg(e){var t;return((t=e.props)==null?void 0:t.suspensible)!=null&&e.props.suspensible!==!1}const Xf=Symbol.for("v-scx"),Qf=()=>{{const e=Ct(Xf);return e||M("Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build."),e}};function da(e,t){return Nr(e,null,t)}function Zf(e,t){return Nr(e,null,oe({},t,{flush:"post"}))}function ed(e,t){return Nr(e,null,oe({},t,{flush:"sync"}))}const Jr={};function be(e,t,n){return Z(t)||M("`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."),Nr(e,t,n)}function Nr(e,t,{immediate:n,deep:s,flush:r,once:i,onTrack:o,onTrigger:l}=ge){if(t&&i){const C=t;t=(...x)=>{C(...x),O()}}s!==void 0&&typeof s=="number"&&M('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&&M('watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.'),s!==void 0&&M('watch() "deep" option is only respected when using the watch(source, callback, options?) signature.'),i!==void 0&&M('watch() "once" option is only respected when using the watch(source, callback, options?) signature.'));const a=C=>{M("Invalid watch source: ",C,"A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.")},u=ke,f=C=>s===!0?C:qn(C,s===!1?1:void 0);let c,d=!1,p=!1;if(Te(e)?(c=()=>e.value,d=In(e)):Zn(e)?(c=()=>f(e),d=!0):H(e)?(p=!0,d=e.some(C=>Zn(C)||In(C)),c=()=>e.map(C=>{if(Te(C))return C.value;if(Zn(C))return f(C);if(Z(C))return Kt(C,u,2);a(C)})):Z(e)?t?c=()=>Kt(e,u,2):c=()=>(m&&m(),gt(e,u,3,[w])):(c=Pe,a(e)),t&&s){const C=c;c=()=>qn(C())}let m,w=C=>{m=b.onStop=()=>{Kt(C,u,4),m=b.onStop=void 0}},E;if(Mr)if(w=Pe,t?n&>(t,u,3,[c(),p?[]:void 0,w]):c(),r==="sync"){const C=Qf();E=C.__watcherHandles||(C.__watcherHandles=[])}else return Pe;let y=p?new Array(e.length).fill(Jr):Jr;const v=()=>{if(!(!b.active||!b.dirty))if(t){const C=b.run();(s||d||(p?C.some((x,T)=>Mt(x,y[T])):Mt(C,y)))&&(m&&m(),gt(t,u,3,[C,y===Jr?void 0:p&&y[0]===Jr?[]:y,w]),y=C)}else b.run()};v.allowRecurse=!!t;let g;r==="sync"?g=v:r==="post"?g=()=>ze(v,u&&u.suspense):(v.pre=!0,u&&(v.id=u.uid),g=()=>Ir(v));const b=new Cs(c,Pe,g),S=zl(),O=()=>{b.stop(),S&&Bl(S.effects,b)};return b.onTrack=o,b.onTrigger=l,t?n?v():y=b.run():r==="post"?ze(b.run.bind(b),u&&u.suspense):b.run(),E&&E.push(O),O}function ey(e,t,n){const s=this.proxy,r=ne(e)?e.includes(".")?td(s,e):()=>s[e]:e.bind(s,s);let i;Z(t)?i=t:(i=t.handler,n=t);const o=os(this),l=Nr(r,i.bind(s),n);return o(),l}function td(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r0){if(n>=t)return e;n++}if(s=s||new Set,s.has(e))return e;if(s.add(e),Te(e))qn(e.value,t,n,s);else if(H(e))for(let r=0;r{qn(r,t,n,s)});else if(af(e))for(const r in e)qn(e[r],t,n,s);return e}function nd(e){cf(e)&&M("Do not use built-in directive ids as custom directive id: "+e)}function ty(e,t){if(Ie===null)return M("withDirectives can only be used inside render functions."),e;const n=uo(Ie)||Ie.proxy,s=e.dirs||(e.dirs=[]);for(let r=0;r{e.isMounted=!0}),ao(()=>{e.isUnmounting=!0}),e}const _t=[Function,Array],ha={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:_t,onEnter:_t,onAfterEnter:_t,onEnterCancelled:_t,onBeforeLeave:_t,onLeave:_t,onAfterLeave:_t,onLeaveCancelled:_t,onBeforeAppear:_t,onAppear:_t,onAfterAppear:_t,onAppearCancelled:_t},ny={name:"BaseTransition",props:ha,setup(e,{slots:t}){const n=Ye(),s=pa();return()=>{const r=t.default&&io(t.default(),!0);if(!r||!r.length)return;let i=r[0];if(r.length>1){let d=!1;for(const p of r)if(p.type!==$e){if(d){M(" can only be used on a single element or component. Use for lists.");break}i=p,d=!0}}const o=re(e),{mode:l}=o;if(l&&l!=="in-out"&&l!=="out-in"&&l!=="default"&&M(`invalid mode: ${l}`),s.isLeaving)return Co(i);const a=Oc(i);if(!a)return Co(i);const u=Ts(a,o,s,n);rs(a,u);const f=n.subTree,c=f&&Oc(f);if(c&&c.type!==$e&&!Rt(a,c)){const d=Ts(c,o,s,n);if(rs(c,d),l==="out-in")return s.isLeaving=!0,d.afterLeave=()=>{s.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},Co(i);l==="in-out"&&a.type!==$e&&(d.delayLeave=(p,m,w)=>{const E=rd(s,c);E[String(c.key)]=c,p[vn]=()=>{m(),p[vn]=void 0,delete u.delayedLeave},u.delayedLeave=w})}return i}}},sd=ny;function rd(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function Ts(e,t,n,s){const{appear:r,mode:i,persisted:o=!1,onBeforeEnter:l,onEnter:a,onAfterEnter:u,onEnterCancelled:f,onBeforeLeave:c,onLeave:d,onAfterLeave:p,onLeaveCancelled:m,onBeforeAppear:w,onAppear:E,onAfterAppear:y,onAppearCancelled:v}=t,g=String(e.key),b=rd(n,e),S=(x,T)=>{x&>(x,s,9,T)},O=(x,T)=>{const A=T[1];S(x,T),H(x)?x.every(k=>k.length<=1)&&A():x.length<=1&&A()},C={mode:i,persisted:o,beforeEnter(x){let T=l;if(!n.isMounted)if(r)T=w||l;else return;x[vn]&&x[vn](!0);const A=b[g];A&&Rt(e,A)&&A.el[vn]&&A.el[vn](),S(T,[x])},enter(x){let T=a,A=u,k=f;if(!n.isMounted)if(r)T=E||a,A=y||u,k=v||f;else return;let I=!1;const V=x[Xr]=Y=>{I||(I=!0,Y?S(k,[x]):S(A,[x]),C.delayedLeave&&C.delayedLeave(),x[Xr]=void 0)};T?O(T,[x,V]):V()},leave(x,T){const A=String(e.key);if(x[Xr]&&x[Xr](!0),n.isUnmounting)return T();S(c,[x]);let k=!1;const I=x[vn]=V=>{k||(k=!0,T(),V?S(m,[x]):S(p,[x]),x[vn]=void 0,b[A]===e&&delete b[A])};b[A]=e,d?O(d,[x,I]):I()},clone(x){return Ts(x,t,n,s)}};return C}function Co(e){if(Vs(e))return e=At(e),e.children=null,e}function Oc(e){if(!Vs(e))return e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&Z(n.default))return n.default()}}function rs(e,t){e.shapeFlag&6&&e.component?rs(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 io(e,t=!1,n){let s=[],r=0;for(let i=0;i1)for(let i=0;i!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function sy(e){Z(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:r=200,timeout:i,suspensible:o=!0,onError:l}=e;let a=null,u,f=0;const c=()=>(f++,a=null,d()),d=()=>{let p;return a||(p=a=t().catch(m=>{if(m=m instanceof Error?m:new Error(String(m)),l)return new Promise((w,E)=>{l(m,()=>w(c()),()=>E(m),f+1)});throw m}).then(m=>{if(p!==a&&a)return a;if(m||M("Async component loader resolved to undefined. If you are using retry(), make sure to return its return value."),m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),m&&!me(m)&&!Z(m))throw new Error(`Invalid async component load result: ${m}`);return u=m,m}))};return Pr({name:"AsyncComponentWrapper",__asyncLoader:d,get __asyncResolved(){return u},setup(){const p=ke;if(u)return()=>To(u,p);const m=v=>{a=null,Dn(v,p,13,!s)};if(o&&p.suspense||Mr)return d().then(v=>()=>To(v,p)).catch(v=>(m(v),()=>s?xe(s,{error:v}):null));const w=X(!1),E=X(),y=X(!!r);return r&&setTimeout(()=>{y.value=!1},r),i!=null&&setTimeout(()=>{if(!w.value&&!E.value){const v=new Error(`Async component timed out after ${i}ms.`);m(v),E.value=v}},i),d().then(()=>{w.value=!0,p.parent&&Vs(p.parent.vnode)&&(p.parent.effect.dirty=!0,Ir(p.parent.update))}).catch(v=>{m(v),E.value=v}),()=>{if(w.value&&u)return To(u,p);if(E.value&&s)return xe(s,{error:E.value});if(n&&!y.value)return xe(n)}}})}function To(e,t){const{ref:n,props:s,children:r,ce:i}=t.vnode,o=xe(e,s,r);return o.ref=n,o.ce=i,delete t.vnode.ce,o}const Vs=e=>e.type.__isKeepAlive,ry={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Ye(),s=n.ctx;if(!s.renderer)return()=>{const v=t.default&&t.default();return v&&v.length===1?v[0]:v};const r=new Map,i=new Set;let o=null;n.__v_cache=r;const l=n.suspense,{renderer:{p:a,m:u,um:f,o:{createElement:c}}}=s,d=c("div");s.activate=(v,g,b,S,O)=>{const C=v.component;u(v,g,b,0,l),a(C.vnode,v,g,b,C,l,S,v.slotScopeIds,O),ze(()=>{C.isDeactivated=!1,C.a&&En(C.a);const x=v.props&&v.props.onVnodeMounted;x&&at(x,C.parent,v)},l),Xo(C)},s.deactivate=v=>{const g=v.component;u(v,d,null,1,l),ze(()=>{g.da&&En(g.da);const b=v.props&&v.props.onVnodeUnmounted;b&&at(b,g.parent,v),g.isDeactivated=!0},l),Xo(g)};function p(v){xo(v),f(v,n,l,!0)}function m(v){r.forEach((g,b)=>{const S=vr(g.type);S&&(!v||!v(S))&&w(b)})}function w(v){const g=r.get(v);!o||!Rt(g,o)?p(g):o&&xo(o),r.delete(v),i.delete(v)}be(()=>[e.include,e.exclude],([v,g])=>{v&&m(b=>Ys(v,b)),g&&m(b=>!Ys(g,b))},{flush:"post",deep:!0});let E=null;const y=()=>{E!=null&&r.set(E,Ao(n.subTree))};return cs(y),lo(y),ao(()=>{r.forEach(v=>{const{subTree:g,suspense:b}=n,S=Ao(g);if(v.type===S.type&&v.key===S.key){xo(S);const O=S.component.da;O&&ze(O,b);return}p(v)})}),()=>{if(E=null,!t.default)return o=null;const v=t.default(),g=v[0];if(v.length>1)return M("KeepAlive should contain exactly one component child."),o=null,v;if(!on(g)||!(g.shapeFlag&4)&&!(g.shapeFlag&128))return o=null,g;let b=Ao(g);const S=b.type,O=vr(ts(b)?b.type.__asyncResolved||{}:S),{include:C,exclude:x,max:T}=e;if(C&&(!O||!Ys(C,O))||x&&O&&Ys(x,O))return o=b,g;const A=b.key==null?S:b.key,k=r.get(A);return b.el&&(b=At(b),g.shapeFlag&128&&(g.ssContent=b)),E=A,k?(b.el=k.el,b.component=k.component,b.transition&&rs(b,b.transition),b.shapeFlag|=512,i.delete(A),i.add(A)):(i.add(A),T&&i.size>parseInt(T,10)&&w(i.values().next().value)),b.shapeFlag|=256,o=b,Yf(g.type)?g:b}}},iy=ry;function Ys(e,t){return H(e)?e.some(n=>Ys(n,t)):ne(e)?e.split(",").includes(t):pm(e)?e.test(t):!1}function id(e,t){ld(e,"a",t)}function od(e,t){ld(e,"da",t)}function ld(e,t,n=ke){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(oo(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Vs(r.parent.vnode)&&oy(s,t,n,r),r=r.parent}}function oy(e,t,n,s){const r=oo(t,e,s,!0);kr(()=>{Bl(s[t],r)},n)}function xo(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Ao(e){return e.shapeFlag&128?e.ssContent:e}function oo(e,t,n=ke,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;ln();const l=os(n),a=gt(t,n,e,o);return l(),an(),a});return s?r.unshift(i):r.push(i),i}else{const r=Vt(to[e].replace(/ hook$/,""));M(`${r} 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 cn=e=>(t,n=ke)=>(!Mr||e==="sp")&&oo(e,(...s)=>t(...s),n),ad=cn("bm"),cs=cn("m"),cd=cn("bu"),lo=cn("u"),ao=cn("bum"),kr=cn("um"),ud=cn("sp"),fd=cn("rtg"),dd=cn("rtc");function pd(e,t=ke){oo("ec",e,t)}function ly(e,t,n,s){let r;const i=n&&n[s];if(H(e)||ne(e)){r=new Array(e.length);for(let o=0,l=e.length;ot(o,l,void 0,i&&i[l]));else{const o=Object.keys(e);r=new Array(o.length);for(let l=0,a=o.length;l{const i=s.fn(...r);return i&&(i.key=s.key),i}:s.fn)}return e}function cy(e,t,n={},s,r){if(Ie.isCE||Ie.parent&&ts(Ie.parent)&&Ie.parent.isCE)return t!=="default"&&(n.name=t),xe("slot",n,s&&s());let i=e[t];i&&i.length>1&&(M("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."),i=()=>[]),i&&i._c&&(i._d=!1),co();const o=i&&hd(i(n)),l=va(De,{key:n.key||o&&o.key||`_${t}`},o||(s?s():[]),o&&e._===1?64:-2);return!r&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),i&&i._c&&(i._d=!0),l}function hd(e){return e.some(t=>on(t)?!(t.type===$e||t.type===De&&!hd(t.children)):!0)?e:null}function uy(e,t){const n={};if(!me(e))return M("v-on with no argument expects an object value."),n;for(const s in e)n[t&&/[A-Z]/.test(s)?`on:${s}`:Vt(s)]=e[s];return n}const el=e=>e?jd(e)?uo(e)||e.proxy:el(e.parent):null,ns=oe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>Bt(e.props),$attrs:e=>Bt(e.attrs),$slots:e=>Bt(e.slots),$refs:e=>Bt(e.refs),$parent:e=>el(e.parent),$root:e=>el(e.root),$emit:e=>e.emit,$options:e=>ga(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Ir(e.update)}),$nextTick:e=>e.n||(e.n=Vn.bind(e.proxy)),$watch:e=>ey.bind(e)}),ma=e=>e==="_"||e==="$",Oo=(e,t)=>e!==ge&&!e.__isScriptSetup&&de(e,t),er={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:a}=e;if(t==="__isVue")return!0;let u;if(t[0]!=="$"){const p=o[t];if(p!==void 0)switch(p){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(Oo(s,t))return o[t]=1,s[t];if(r!==ge&&de(r,t))return o[t]=2,r[t];if((u=e.propsOptions[0])&&de(u,t))return o[t]=3,i[t];if(n!==ge&&de(n,t))return o[t]=4,n[t];tl&&(o[t]=0)}}const f=ns[t];let c,d;if(f)return t==="$attrs"?(tt(e.attrs,"get",""),Ci()):t==="$slots"&&tt(e,"get",t),f(e);if((c=l.__cssModules)&&(c=c[t]))return c;if(n!==ge&&de(n,t))return o[t]=4,n[t];if(d=a.config.globalProperties,de(d,t))return d[t];Ie&&(!ne(t)||t.indexOf("__v")!==0)&&(r!==ge&&ma(t[0])&&de(r,t)?M(`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===Ie&&M(`Property ${JSON.stringify(t)} was accessed during render but is not defined on instance.`))},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return Oo(r,t)?(r[t]=n,!0):r.__isScriptSetup&&de(r,t)?(M(`Cannot mutate - - + + + - +
+