diff --git a/docs/404.html b/docs/404.html index b3a6f247..d60693fc 100644 --- a/docs/404.html +++ b/docs/404.html @@ -6,9 +6,9 @@ 404 | ProzillaOS Docs - + - + @@ -19,7 +19,7 @@
- + \ No newline at end of file diff --git a/docs/about/features.html b/docs/about/features.html index 909e2299..63f2d3a1 100644 --- a/docs/about/features.html +++ b/docs/about/features.html @@ -6,13 +6,13 @@ Features | ProzillaOS Docs - + - + - - - + + + @@ -33,8 +33,8 @@ -
Skip to content

Features

ProzillaOS comes with a ton of features that you can tailor to suit your specific needs. Here is a quick overview:

System

  • Customizable taskbar with a home menu, search menu, pinned apps and utilities
  • Customizable desktop with icons, accompanied by custom wallpapers
  • Virtual drive that can handle files, folders, symbolic links, as well as read from external sources
    • Storage system that stores and loads the virtual drive from local storage

Applications

  • Resizable and draggable windows, with dynamic titles, for displaying and interacting with apps, which adapts to the user's screen resolution
  • Native and web-view applications
    • File explorer that interacts with virtual drive and allows user to browse the source code on the website itself
    • Terminal with custom linux-inspired commands
    • Settings application for customizing appearance, managing apps and managing virtual drive
    • Text editor app that can read and write files as well as render markdown files
    • Other applications like a calculator, minigames, image viewer, browser, etc.
  • Standalone system that allows each app to have its own dedicated page in an isolated view, which is also indexable by search engines
  • URL params that trigger an app to open with optional arguments

Interactions

  • Modals that can be used as context menus, header menus, file selectors, dialog boxes, etc.
  • Advanced actions system, for easily assembling different menus that can handle dropdowns, selections, toggles, shortcuts, etc.

Assets

  • Custom wallpapers made in Figma
  • Custom icons made in Figma inspired by Font Awesome
  • Custom color palette

Built by Prozilla

- +
Skip to content

Features

ProzillaOS comes with a ton of features that you can tailor to suit your specific needs. Here is a quick overview:

System

  • Customizable taskbar with a home menu, search menu, pinned apps and utilities
  • Customizable desktop with icons, accompanied by custom wallpapers
  • Virtual drive that can handle files, folders, symbolic links, as well as read from external sources
    • Storage system that stores and loads the virtual drive from local storage

Applications

  • Resizable and draggable windows, with dynamic titles, for displaying and interacting with apps, which adapts to the user's screen resolution
  • Native and web-view applications
    • File explorer that interacts with virtual drive and allows user to browse the source code on the website itself
    • Terminal with custom linux-inspired commands
    • Settings application for customizing appearance, managing apps and managing virtual drive
    • Text editor app that can read and write files as well as render markdown files
    • Other applications like a calculator, minigames, image viewer, browser, etc.
  • Standalone system that allows each app to have its own dedicated page in an isolated view, which is also indexable by search engines
  • URL params that trigger an app to open with optional arguments

Interactions

  • Modals that can be used as context menus, header menus, file selectors, dialog boxes, etc.
  • Advanced actions system, for easily assembling different menus that can handle dropdowns, selections, toggles, shortcuts, etc.

Assets

  • Custom wallpapers made in Figma
  • Custom icons made in Figma inspired by Font Awesome
  • Custom color palette

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/about/introduction.html b/docs/about/introduction.html index 51fc3732..0b6ecc6b 100644 --- a/docs/about/introduction.html +++ b/docs/about/introduction.html @@ -6,13 +6,13 @@ Introduction | ProzillaOS Docs - + - + - - - + + + @@ -33,8 +33,8 @@ -
Skip to content

Introduction


ProzillaOS

About

ProzillaOS is a web-based operating system inspired by Ubuntu Linux and Windows made with React by Prozilla. It's a virtual desktop environment that mimics a real operating system and runs entirely in the browser.

Screenshot of ProzillaOS

Open-source

ProzillaOS was made using React, Vite and TypeScript. The source code is hosted on GitHub. You can contribute by finding bugs and suggesting features via GitHub issues.

Support ProzillaOS

If you want me to continue developing ProzillaOS and adding awesome features, consider supporting this project via ko-fi.com/prozilla.

Built by Prozilla

- +
Skip to content

Introduction


ProzillaOS

About

ProzillaOS is a web-based operating system inspired by Ubuntu Linux and Windows made with React by Prozilla. It's a virtual desktop environment that mimics a real operating system and runs entirely in the browser.

Screenshot of ProzillaOS

Open-source

ProzillaOS was made using React, Vite and TypeScript. The source code is hosted on GitHub. You can contribute by finding bugs and suggesting features via GitHub issues.

Support ProzillaOS

If you want me to continue developing ProzillaOS and adding awesome features, consider supporting this project via ko-fi.com/prozilla.

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/assets/about_features.md.Co2RiGGA.js b/docs/assets/about_features.md.Ctrp-qfc.js similarity index 96% rename from docs/assets/about_features.md.Co2RiGGA.js rename to docs/assets/about_features.md.Ctrp-qfc.js index 87642674..1930cfa0 100644 --- a/docs/assets/about_features.md.Co2RiGGA.js +++ b/docs/assets/about_features.md.Ctrp-qfc.js @@ -1 +1 @@ -import{_ as t,c as a,a1 as s,o as i}from"./chunks/framework.S1oRGgk6.js";const p=JSON.parse('{"title":"Features","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Features | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Features | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/about/features"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/about/features"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/about/features"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"about/features.md","filePath":"about/features.md"}'),o={name:"about/features.md"};function n(r,e,l,c,d,m){return i(),a("div",null,e[0]||(e[0]=[s('

Features

ProzillaOS comes with a ton of features that you can tailor to suit your specific needs. Here is a quick overview:

System

Applications

Interactions

Assets

',10)]))}const g=t(o,[["render",n]]);export{p as __pageData,g as default}; +import{_ as t,c as a,a3 as s,o as i}from"./chunks/framework.BAnOA2-A.js";const p=JSON.parse('{"title":"Features","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Features | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Features | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/about/features"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/about/features"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/about/features"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"about/features.md","filePath":"about/features.md"}'),o={name:"about/features.md"};function n(r,e,l,c,d,m){return i(),a("div",null,e[0]||(e[0]=[s('

Features

ProzillaOS comes with a ton of features that you can tailor to suit your specific needs. Here is a quick overview:

System

Applications

Interactions

Assets

',10)]))}const g=t(o,[["render",n]]);export{p as __pageData,g as default}; diff --git a/docs/assets/about_features.md.Co2RiGGA.lean.js b/docs/assets/about_features.md.Ctrp-qfc.lean.js similarity index 96% rename from docs/assets/about_features.md.Co2RiGGA.lean.js rename to docs/assets/about_features.md.Ctrp-qfc.lean.js index 87642674..1930cfa0 100644 --- a/docs/assets/about_features.md.Co2RiGGA.lean.js +++ b/docs/assets/about_features.md.Ctrp-qfc.lean.js @@ -1 +1 @@ -import{_ as t,c as a,a1 as s,o as i}from"./chunks/framework.S1oRGgk6.js";const p=JSON.parse('{"title":"Features","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Features | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Features | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/about/features"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/about/features"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/about/features"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"about/features.md","filePath":"about/features.md"}'),o={name:"about/features.md"};function n(r,e,l,c,d,m){return i(),a("div",null,e[0]||(e[0]=[s('

Features

ProzillaOS comes with a ton of features that you can tailor to suit your specific needs. Here is a quick overview:

System

Applications

Interactions

Assets

',10)]))}const g=t(o,[["render",n]]);export{p as __pageData,g as default}; +import{_ as t,c as a,a3 as s,o as i}from"./chunks/framework.BAnOA2-A.js";const p=JSON.parse('{"title":"Features","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Features | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Features | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/about/features"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/about/features"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/about/features"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"about/features.md","filePath":"about/features.md"}'),o={name:"about/features.md"};function n(r,e,l,c,d,m){return i(),a("div",null,e[0]||(e[0]=[s('

Features

ProzillaOS comes with a ton of features that you can tailor to suit your specific needs. Here is a quick overview:

System

Applications

Interactions

Assets

',10)]))}const g=t(o,[["render",n]]);export{p as __pageData,g as default}; diff --git a/docs/assets/about_introduction.md.C7RNvPBg.js b/docs/assets/about_introduction.md.mDPCVGZp.js similarity index 95% rename from docs/assets/about_introduction.md.C7RNvPBg.js rename to docs/assets/about_introduction.md.mDPCVGZp.js index 1b9a83d0..d841931f 100644 --- a/docs/assets/about_introduction.md.C7RNvPBg.js +++ b/docs/assets/about_introduction.md.mDPCVGZp.js @@ -1 +1 @@ -import{_ as e,c as o,a1 as a,o as r}from"./chunks/framework.S1oRGgk6.js";const n="/docs/assets/banner-logo-title-small.png",h=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Introduction | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Introduction | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/about/introduction"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/about/introduction"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/about/introduction"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"about/introduction.md","filePath":"about/introduction.md"}'),i={name:"about/introduction.md"};function s(l,t,c,d,p,u){return r(),o("div",null,t[0]||(t[0]=[a('

Introduction


ProzillaOS

About

ProzillaOS is a web-based operating system inspired by Ubuntu Linux and Windows made with React by Prozilla. It's a virtual desktop environment that mimics a real operating system and runs entirely in the browser.

Screenshot of ProzillaOS

Open-source

ProzillaOS was made using React, Vite and TypeScript. The source code is hosted on GitHub. You can contribute by finding bugs and suggesting features via GitHub issues.

Support ProzillaOS

If you want me to continue developing ProzillaOS and adding awesome features, consider supporting this project via ko-fi.com/prozilla.

',10)]))}const b=e(i,[["render",s]]);export{h as __pageData,b as default}; +import{_ as e,c as o,a3 as a,o as r}from"./chunks/framework.BAnOA2-A.js";const n="/docs/assets/banner-logo-title-small.png",h=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Introduction | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Introduction | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/about/introduction"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/about/introduction"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/about/introduction"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"about/introduction.md","filePath":"about/introduction.md"}'),i={name:"about/introduction.md"};function s(l,t,c,d,p,u){return r(),o("div",null,t[0]||(t[0]=[a('

Introduction


ProzillaOS

About

ProzillaOS is a web-based operating system inspired by Ubuntu Linux and Windows made with React by Prozilla. It's a virtual desktop environment that mimics a real operating system and runs entirely in the browser.

Screenshot of ProzillaOS

Open-source

ProzillaOS was made using React, Vite and TypeScript. The source code is hosted on GitHub. You can contribute by finding bugs and suggesting features via GitHub issues.

Support ProzillaOS

If you want me to continue developing ProzillaOS and adding awesome features, consider supporting this project via ko-fi.com/prozilla.

',10)]))}const b=e(i,[["render",s]]);export{h as __pageData,b as default}; diff --git a/docs/assets/about_introduction.md.C7RNvPBg.lean.js b/docs/assets/about_introduction.md.mDPCVGZp.lean.js similarity index 95% rename from docs/assets/about_introduction.md.C7RNvPBg.lean.js rename to docs/assets/about_introduction.md.mDPCVGZp.lean.js index 1b9a83d0..d841931f 100644 --- a/docs/assets/about_introduction.md.C7RNvPBg.lean.js +++ b/docs/assets/about_introduction.md.mDPCVGZp.lean.js @@ -1 +1 @@ -import{_ as e,c as o,a1 as a,o as r}from"./chunks/framework.S1oRGgk6.js";const n="/docs/assets/banner-logo-title-small.png",h=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Introduction | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Introduction | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/about/introduction"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/about/introduction"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/about/introduction"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"about/introduction.md","filePath":"about/introduction.md"}'),i={name:"about/introduction.md"};function s(l,t,c,d,p,u){return r(),o("div",null,t[0]||(t[0]=[a('

Introduction


ProzillaOS

About

ProzillaOS is a web-based operating system inspired by Ubuntu Linux and Windows made with React by Prozilla. It's a virtual desktop environment that mimics a real operating system and runs entirely in the browser.

Screenshot of ProzillaOS

Open-source

ProzillaOS was made using React, Vite and TypeScript. The source code is hosted on GitHub. You can contribute by finding bugs and suggesting features via GitHub issues.

Support ProzillaOS

If you want me to continue developing ProzillaOS and adding awesome features, consider supporting this project via ko-fi.com/prozilla.

',10)]))}const b=e(i,[["render",s]]);export{h as __pageData,b as default}; +import{_ as e,c as o,a3 as a,o as r}from"./chunks/framework.BAnOA2-A.js";const n="/docs/assets/banner-logo-title-small.png",h=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"head":[["meta",{"name":"og:title","content":"Introduction | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Introduction | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/about/introduction"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/about/introduction"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/about/introduction"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"about/introduction.md","filePath":"about/introduction.md"}'),i={name:"about/introduction.md"};function s(l,t,c,d,p,u){return r(),o("div",null,t[0]||(t[0]=[a('

Introduction


ProzillaOS

About

ProzillaOS is a web-based operating system inspired by Ubuntu Linux and Windows made with React by Prozilla. It's a virtual desktop environment that mimics a real operating system and runs entirely in the browser.

Screenshot of ProzillaOS

Open-source

ProzillaOS was made using React, Vite and TypeScript. The source code is hosted on GitHub. You can contribute by finding bugs and suggesting features via GitHub issues.

Support ProzillaOS

If you want me to continue developing ProzillaOS and adding awesome features, consider supporting this project via ko-fi.com/prozilla.

',10)]))}const b=e(i,[["render",s]]);export{h as __pageData,b as default}; diff --git a/docs/assets/app.BR2JnRPv.js b/docs/assets/app.B_ftWPj8.js similarity index 81% rename from docs/assets/app.BR2JnRPv.js rename to docs/assets/app.B_ftWPj8.js index 9e2abd0d..b0ed9710 100644 --- a/docs/assets/app.BR2JnRPv.js +++ b/docs/assets/app.B_ftWPj8.js @@ -1 +1 @@ -import{R as i}from"./chunks/theme.FxnoVUL-.js";import{R as o,a2 as u,a3 as c,a4 as l,a5 as f,a6 as d,a7 as m,a8 as h,a9 as g,aa as A,ab as v,d as P,u as R,v as w,s as y,ac as C,ad as b,ae as E,a0 as S}from"./chunks/framework.S1oRGgk6.js";function p(e){if(e.extends){const a=p(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=p(i),T=P({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=R();return w(()=>{y(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&C(),b(),E(),s.setup&&s.setup(),()=>S(s.Layout)}});async function D(){globalThis.__VITEPRESS__=!0;const e=j(),a=_();a.provide(c,e);const t=l(e.route);return a.provide(f,t),a.component("Content",d),a.component("ClientOnly",m),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:h}),{app:a,router:e,data:t}}function _(){return g(T)}function j(){let e=o,a;return A(t=>{let n=v(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=import(n)),o&&(e=!1),r},s.NotFound)}o&&D().then(({app:e,router:a,data:t})=>{a.go().then(()=>{u(a.route,t.site),e.mount("#app")})});export{D as createApp}; +import{R as i}from"./chunks/theme.BUR9ctRq.js";import{R as o,a4 as u,a5 as c,a6 as l,a7 as f,a8 as d,a9 as m,aa as h,ab as g,ac as A,ad as v,d as P,u as R,v as w,s as y,ae as C,af as b,ag as E,a2 as S}from"./chunks/framework.BAnOA2-A.js";function p(e){if(e.extends){const a=p(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=p(i),T=P({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=R();return w(()=>{y(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&C(),b(),E(),s.setup&&s.setup(),()=>S(s.Layout)}});async function D(){globalThis.__VITEPRESS__=!0;const e=j(),a=_();a.provide(c,e);const t=l(e.route);return a.provide(f,t),a.component("Content",d),a.component("ClientOnly",m),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:h}),{app:a,router:e,data:t}}function _(){return g(T)}function j(){let e=o,a;return A(t=>{let n=v(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=import(n)),o&&(e=!1),r},s.NotFound)}o&&D().then(({app:e,router:a,data:t})=>{a.go().then(()=>{u(a.route,t.site),e.mount("#app")})});export{D as createApp}; diff --git a/docs/assets/chunks/@localSearchIndexroot.48Ia0OH7.js b/docs/assets/chunks/@localSearchIndexroot.48Ia0OH7.js new file mode 100644 index 00000000..6087fbf2 --- /dev/null +++ b/docs/assets/chunks/@localSearchIndexroot.48Ia0OH7.js @@ -0,0 +1 @@ +const e='{"documentCount":348,"nextId":348,"documentIds":{"0":"/docs/about/features#features","1":"/docs/about/features#system","2":"/docs/about/features#applications","3":"/docs/about/features#interactions","4":"/docs/about/features#assets","5":"/docs/about/introduction#introduction","6":"/docs/about/introduction#about","7":"/docs/about/introduction#open-source","8":"/docs/about/introduction#support-prozillaos","9":"/docs/guides/custom-app#making-a-custom-app","10":"/docs/guides/custom-app#internal-app","11":"/docs/guides/custom-app#prerequisites","12":"/docs/guides/custom-app#setup","13":"/docs/guides/custom-app#external-app","14":"/docs/guides/custom-app#prerequisites-1","15":"/docs/guides/custom-app#setup-1","16":"/docs/guides/getting-started#getting-started","17":"/docs/guides/getting-started#prerequisites","18":"/docs/guides/getting-started#installation","19":"/docs/guides/getting-started#installing-apps","20":"/docs/guides/getting-started#usage","21":"/docs/guides/getting-started#using-apps","22":"/docs/guides/getting-started#example","23":"/docs/guides/getting-started#community","24":"/docs/guides/self-hosting#self-hosting","25":"/docs/guides/self-hosting#installation","26":"/docs/guides/self-hosting#scripts","27":"/docs/guides/self-hosting#general","28":"/docs/guides/self-hosting#public-packages","29":"/docs/guides/self-hosting#internal-packages","30":"/docs/guides/self-hosting#prozilla-os-demo","31":"/docs/guides/self-hosting#prozilla-os-docs","32":"/docs/reference/apps/browser/#prozilla-os-browser","33":"/docs/reference/apps/browser/#about","34":"/docs/reference/apps/browser/#installation","35":"/docs/reference/apps/browser/#usage","36":"/docs/reference/apps/browser/#basic-setup","37":"/docs/reference/apps/browser/#window-options","38":"/docs/reference/apps/browser/#links","39":"/docs/reference/apps/calculator/#prozilla-os-calculator","40":"/docs/reference/apps/calculator/#about","41":"/docs/reference/apps/calculator/#installation","42":"/docs/reference/apps/calculator/#usage","43":"/docs/reference/apps/calculator/#basic-setup","44":"/docs/reference/apps/calculator/#links","45":"/docs/reference/apps/file-explorer/#prozilla-os-file-explorer","46":"/docs/reference/apps/file-explorer/#about","47":"/docs/reference/apps/file-explorer/#installation","48":"/docs/reference/apps/file-explorer/#usage","49":"/docs/reference/apps/file-explorer/#basic-setup","50":"/docs/reference/apps/file-explorer/#window-options","51":"/docs/reference/apps/file-explorer/#links","52":"/docs/reference/apps/logic-sim/#prozilla-os-logic-sim","53":"/docs/reference/apps/logic-sim/#about","54":"/docs/reference/apps/logic-sim/#installation","55":"/docs/reference/apps/logic-sim/#usage","56":"/docs/reference/apps/logic-sim/#basic-setup","57":"/docs/reference/apps/logic-sim/#links","58":"/docs/reference/apps/media-viewer/#prozilla-os-media-viewer","59":"/docs/reference/apps/media-viewer/#about","60":"/docs/reference/apps/media-viewer/#installation","61":"/docs/reference/apps/media-viewer/#usage","62":"/docs/reference/apps/media-viewer/#basic-setup","63":"/docs/reference/apps/media-viewer/#window-options","64":"/docs/reference/apps/media-viewer/#links","65":"/docs/reference/apps/settings/#prozilla-os-settings","66":"/docs/reference/apps/settings/#about","67":"/docs/reference/apps/settings/#installation","68":"/docs/reference/apps/settings/#usage","69":"/docs/reference/apps/settings/#basic-setup","70":"/docs/reference/apps/settings/#window-options","71":"/docs/reference/apps/settings/#links","72":"/docs/reference/apps/terminal/#prozilla-os-terminal","73":"/docs/reference/apps/terminal/#about","74":"/docs/reference/apps/terminal/#installation","75":"/docs/reference/apps/terminal/#usage","76":"/docs/reference/apps/terminal/#basic-setup","77":"/docs/reference/apps/terminal/#window-options","78":"/docs/reference/apps/terminal/#links","79":"/docs/reference/apps/text-editor/#prozilla-os-text-editor","80":"/docs/reference/apps/text-editor/#about","81":"/docs/reference/apps/text-editor/#installation","82":"/docs/reference/apps/text-editor/#usage","83":"/docs/reference/apps/text-editor/#basic-setup","84":"/docs/reference/apps/text-editor/#window-options","85":"/docs/reference/apps/text-editor/#links","86":"/docs/reference/configuration#configuration","87":"/docs/reference/configuration#prozillaos-props","88":"/docs/reference/configuration#systemname","89":"/docs/reference/configuration#tagline","90":"/docs/reference/configuration#skin","91":"/docs/reference/configuration#config","92":"/docs/reference/configuration#example","93":"/docs/reference/core/classes/apps/app#class-app","94":"/docs/reference/core/classes/apps/app#type-parameters","95":"/docs/reference/core/classes/apps/app#constructor","96":"/docs/reference/core/classes/apps/app#parameters","97":"/docs/reference/core/classes/apps/app#properties","98":"/docs/reference/core/classes/apps/app#name","99":"/docs/reference/core/classes/apps/app#id","100":"/docs/reference/core/classes/apps/app#windowcontent","101":"/docs/reference/core/classes/apps/app#windowoptions","102":"/docs/reference/core/classes/apps/app#description","103":"/docs/reference/core/classes/apps/app#iconurl","104":"/docs/reference/core/classes/apps/app#role","105":"/docs/reference/core/classes/apps/app#associatedextensions","106":"/docs/reference/core/classes/apps/app#pinnedbydefault","107":"/docs/reference/core/classes/apps/app#launchatstartup","108":"/docs/reference/core/classes/apps/app#methods","109":"/docs/reference/core/classes/apps/app#setname-name","110":"/docs/reference/core/classes/apps/app#setdescription-description","111":"/docs/reference/core/classes/apps/app#seticonurl-iconurl","112":"/docs/reference/core/classes/apps/app#setrole-role","113":"/docs/reference/core/classes/apps/app#setassociatedextensions-extensions","114":"/docs/reference/core/classes/apps/app#setpinnedbydefault-pinnedbydefault","115":"/docs/reference/core/classes/apps/app#setlaunchatstartup-launchatstartup","116":"/docs/reference/core/classes/apps/app#windowcontent-props","117":"/docs/reference/core/classes/system/apps-config#class-appsconfig","118":"/docs/reference/core/classes/system/apps-config#constructor","119":"/docs/reference/core/classes/system/apps-config#parameters","120":"/docs/reference/core/classes/system/apps-config#properties","121":"/docs/reference/core/classes/system/apps-config#apps","122":"/docs/reference/core/classes/system/desktop-config#class-desktopconfig","123":"/docs/reference/core/classes/system/desktop-config#constructor","124":"/docs/reference/core/classes/system/desktop-config#parameters","125":"/docs/reference/core/classes/system/desktop-config#properties","126":"/docs/reference/core/classes/system/desktop-config#defaulticonsize","127":"/docs/reference/core/classes/system/desktop-config#defaulticondirection","128":"/docs/reference/core/classes/system/misc-config#class-miscconfig","129":"/docs/reference/core/classes/system/misc-config#constructor","130":"/docs/reference/core/classes/system/misc-config#parameters","131":"/docs/reference/core/classes/system/misc-config#properties","132":"/docs/reference/core/classes/system/misc-config#doubleclickdelay","133":"/docs/reference/core/classes/system/modals-config#class-modalsconfig","134":"/docs/reference/core/classes/system/modals-config#constructor","135":"/docs/reference/core/classes/system/modals-config#parameters","136":"/docs/reference/core/classes/system/modals-config#properties","137":"/docs/reference/core/classes/system/modals-config#defaultdialogsize","138":"/docs/reference/core/classes/system/modals-config#defaultfileselectorsize","139":"/docs/reference/core/classes/system/taskbar-config#class-taskbarconfig","140":"/docs/reference/core/classes/system/taskbar-config#constructor","141":"/docs/reference/core/classes/system/taskbar-config#parameters","142":"/docs/reference/core/classes/system/taskbar-config#properties","143":"/docs/reference/core/classes/system/taskbar-config#height","144":"/docs/reference/core/classes/system/tracking-config#class-trackingconfig","145":"/docs/reference/core/classes/system/tracking-config#constructor","146":"/docs/reference/core/classes/system/tracking-config#parameters","147":"/docs/reference/core/classes/system/tracking-config#properties","148":"/docs/reference/core/classes/system/tracking-config#enabled","149":"/docs/reference/core/classes/system/tracking-config#gameasurementid","150":"/docs/reference/core/classes/system/windows-config#class-windowsconfig","151":"/docs/reference/core/classes/system/windows-config#constructor","152":"/docs/reference/core/classes/system/windows-config#parameters","153":"/docs/reference/core/classes/system/windows-config#properties","154":"/docs/reference/core/classes/system/windows-config#screenmargin","155":"/docs/reference/core/classes/system/windows-config#titleseparator","156":"/docs/reference/core/classes/system/windows-config#minscreensize","157":"/docs/reference/core/classes/utils/time-manager#class-timemanager","158":"/docs/reference/core/classes/utils/time-manager#properties","159":"/docs/reference/core/classes/utils/time-manager#startdate","160":"/docs/reference/core/classes/utils/time-manager#methods","161":"/docs/reference/core/classes/utils/time-manager#reset","162":"/docs/reference/core/classes/utils/time-manager#getuptime-precision","163":"/docs/reference/core/classes/utils/time-manager#parameters","164":"/docs/reference/core/classes/utils/time-manager#returns","165":"/docs/reference/core/classes/utils/time-manager#example","166":"/docs/reference/core/classes/utils/vector2#class-vector2","167":"/docs/reference/core/classes/utils/vector2#constructor","168":"/docs/reference/core/classes/utils/vector2#parameters","169":"/docs/reference/core/classes/utils/vector2#examples","170":"/docs/reference/core/classes/utils/vector2#properties","171":"/docs/reference/core/classes/utils/vector2#x","172":"/docs/reference/core/classes/utils/vector2#y","173":"/docs/reference/core/classes/utils/vector2#zero","174":"/docs/reference/core/classes/utils/vector2#clone","175":"/docs/reference/core/classes/utils/vector2#methods","176":"/docs/reference/core/classes/utils/vector2#round","177":"/docs/reference/core/classes/utils/vector2#getdistance-x-y","178":"/docs/reference/core/classes/utils/vector2#getdistance-vector2","179":"/docs/reference/core/classes/utils/vector2#add-vector2a-vector2b","180":"/docs/reference/core/classes/utils/vector2#subtract-vector2a-vector2b","181":"/docs/reference/core/classes/utils/vector2#scale-vector2-scalar","182":"/docs/reference/core/classes/utils/vector2#magnitude-vector2","183":"/docs/reference/core/classes/utils/vector2#normalize-vector2","184":"/docs/reference/core/classes/utils/vector2#sqrdistance-vector2a-vector2b","185":"/docs/reference/core/classes/utils/vector2#lerp-vector2a-vector2b-t","186":"/docs/reference/core/constants/#constants","187":"/docs/reference/core/constants/#virtual-drive","188":"/docs/reference/core/constants/#code-extensions","189":"/docs/reference/core/constants/#image-extensions","190":"/docs/reference/core/constants/#themes","191":"/docs/reference/core/constants/#themes-1","192":"/docs/reference/core/functions/browser#browser-functions","193":"/docs/reference/core/functions/browser#closeviewport-requireconfirmation-name","194":"/docs/reference/core/functions/browser#parameters","195":"/docs/reference/core/functions/browser#reloadviewport","196":"/docs/reference/core/functions/browser#isvalidurl-string","197":"/docs/reference/core/functions/browser#parameters-1","198":"/docs/reference/core/functions/browser#returns","199":"/docs/reference/core/functions/browser#setviewporttitle-title","200":"/docs/reference/core/functions/browser#parameters-2","201":"/docs/reference/core/functions/browser#setviewporticon-url","202":"/docs/reference/core/functions/browser#parameters-3","203":"/docs/reference/core/functions/browser#getviewportparams","204":"/docs/reference/core/functions/browser#returns-1","205":"/docs/reference/core/functions/browser#generateurl-options","206":"/docs/reference/core/functions/browser#parameters-4","207":"/docs/reference/core/functions/browser#returns-2","208":"/docs/reference/core/functions/browser#openurl-url-target","209":"/docs/reference/core/functions/browser#parameters-5","210":"/docs/reference/core/functions/browser#removeurlprotocol-url","211":"/docs/reference/core/functions/browser#parameters-6","212":"/docs/reference/core/functions/browser#returns-3","213":"/docs/reference/core/functions/browser#copytoclipboard-string-onsuccess-onfail","214":"/docs/reference/core/functions/browser#parameters-7","215":"/docs/reference/core/functions/keyboard#keyboard-functions","216":"/docs/reference/core/functions/keyboard#formatshortcut-shortcut","217":"/docs/reference/core/functions/keyboard#parameters","218":"/docs/reference/core/functions/keyboard#returns","219":"/docs/reference/core/functions/keyboard#example","220":"/docs/reference/core/#prozilla-os-core","221":"/docs/reference/core/#about","222":"/docs/reference/core/#installation","223":"/docs/reference/core/#usage","224":"/docs/reference/core/#basic-setup","225":"/docs/reference/core/#configuration","226":"/docs/reference/core/#links","227":"/docs/reference/dev-tools/functions/console#console-functions","228":"/docs/reference/dev-tools/functions/console#print-message-status-newline","229":"/docs/reference/dev-tools/functions/console#parameters","230":"/docs/reference/dev-tools/functions/console#example","231":"/docs/reference/dev-tools/functions/vite#vite-functions","232":"/docs/reference/dev-tools/functions/vite#appviteconfig-basepath-entrypath","233":"/docs/reference/dev-tools/functions/vite#parameters","234":"/docs/reference/dev-tools/functions/vite#returns","235":"/docs/reference/dev-tools/functions/vite#example","236":"/docs/reference/dev-tools/functions/vite#stagesiteplugin-options","237":"/docs/reference/dev-tools/functions/vite#parameters-1","238":"/docs/reference/dev-tools/functions/vite#returns-1","239":"/docs/reference/dev-tools/functions/vite#example-1","240":"/docs/reference/dev-tools/#prozilla-os-dev-tools","241":"/docs/reference/dev-tools/#about","242":"/docs/reference/dev-tools/#installation","243":"/docs/reference/dev-tools/#links","244":"/docs/reference/glossary#glossary","245":"/docs/reference/glossary#actions","246":"/docs/reference/glossary#application-app","247":"/docs/reference/glossary#categorization","248":"/docs/reference/glossary#installation","249":"/docs/reference/glossary#modal","250":"/docs/reference/glossary#package","251":"/docs/reference/glossary#settings","252":"/docs/reference/glossary#storage","253":"/docs/reference/glossary#taskbar","254":"/docs/reference/glossary#segments","255":"/docs/reference/glossary#virtual-drive","256":"/docs/reference/glossary#windows","257":"/docs/reference/packages#packages","258":"/docs/reference/packages#bundle","259":"/docs/reference/packages#libraries","260":"/docs/reference/packages#applications","261":"/docs/reference/packages#primary-applications","262":"/docs/reference/packages#secondary-applications","263":"/docs/reference/packages#external-applications","264":"/docs/reference/prozilla-os/#prozilla-os","265":"/docs/reference/prozilla-os/#about","266":"/docs/reference/prozilla-os/#installation","267":"/docs/reference/prozilla-os/#packages","268":"/docs/reference/prozilla-os/#usage","269":"/docs/reference/prozilla-os/#basic-setup","270":"/docs/reference/prozilla-os/#configuration","271":"/docs/reference/prozilla-os/#links","272":"/docs/reference/shared/classes/event-emitter#class-eventemitter","273":"/docs/reference/shared/classes/event-emitter#type-parameters","274":"/docs/reference/shared/classes/event-emitter#properties","275":"/docs/reference/shared/classes/event-emitter#event-names","276":"/docs/reference/shared/classes/event-emitter#methods","277":"/docs/reference/shared/classes/event-emitter#on-eventname-callback","278":"/docs/reference/shared/classes/event-emitter#type-parameters-1","279":"/docs/reference/shared/classes/event-emitter#parameters","280":"/docs/reference/shared/classes/event-emitter#off-eventname-callback","281":"/docs/reference/shared/classes/event-emitter#type-parameters-2","282":"/docs/reference/shared/classes/event-emitter#parameters-1","283":"/docs/reference/shared/classes/event-emitter#emit-eventname-data","284":"/docs/reference/shared/classes/event-emitter#type-parameters-3","285":"/docs/reference/shared/classes/event-emitter#parameters-2","286":"/docs/reference/shared/classes/event-emitter#example","287":"/docs/reference/shared/constants/ansi#ansi-constants","288":"/docs/reference/shared/constants/ansi#ansi","289":"/docs/reference/shared/functions/array#array-functions","290":"/docs/reference/shared/functions/array#removefromarray-item-array","291":"/docs/reference/shared/functions/array#type-parameters","292":"/docs/reference/shared/functions/array#parameters","293":"/docs/reference/shared/functions/array#randomfromarray-array","294":"/docs/reference/shared/functions/array#type-parameters-1","295":"/docs/reference/shared/functions/array#parameters-1","296":"/docs/reference/shared/functions/array#returns","297":"/docs/reference/shared/functions/array#removeduplicatesfromarray-array","298":"/docs/reference/shared/functions/array#type-parameters-2","299":"/docs/reference/shared/functions/array#parameters-2","300":"/docs/reference/shared/functions/array#returns-1","301":"/docs/reference/shared/functions/date#date-functions","302":"/docs/reference/shared/functions/date#formattime-time-maxlength-allowaffixes","303":"/docs/reference/shared/functions/date#parameters","304":"/docs/reference/shared/functions/date#returns","305":"/docs/reference/shared/functions/date#formatrelativetime-date-maxlength-allowaffixes","306":"/docs/reference/shared/functions/date#parameters-1","307":"/docs/reference/shared/functions/date#returns-1","308":"/docs/reference/shared/functions/math#math-functions","309":"/docs/reference/shared/functions/math#clamp-value-min-max","310":"/docs/reference/shared/functions/math#parameters","311":"/docs/reference/shared/functions/math#returns","312":"/docs/reference/shared/functions/math#randomrange-min-max","313":"/docs/reference/shared/functions/math#parameters-1","314":"/docs/reference/shared/functions/math#returns-1","315":"/docs/reference/shared/functions/math#round-value-precision","316":"/docs/reference/shared/functions/math#parameters-2","317":"/docs/reference/shared/functions/math#returns-2","318":"/docs/reference/shared/functions/number#number-functions","319":"/docs/reference/shared/functions/number#isvalidinteger-number","320":"/docs/reference/shared/functions/number#parameters","321":"/docs/reference/shared/functions/number#returns","322":"/docs/reference/shared/#prozilla-os-shared","323":"/docs/reference/shared/#about","324":"/docs/reference/shared/#installation","325":"/docs/reference/shared/#links","326":"/docs/reference/skins/classes/skin#class-skin","327":"/docs/reference/skins/classes/skin#constructor","328":"/docs/reference/skins/classes/skin#parameters","329":"/docs/reference/skins/classes/skin#properties","330":"/docs/reference/skins/classes/skin#appicons","331":"/docs/reference/skins/classes/skin#appnames","332":"/docs/reference/skins/classes/skin#wallpapers","333":"/docs/reference/skins/classes/skin#defaultwallpaper","334":"/docs/reference/skins/classes/skin#default","335":"/docs/reference/skins/classes/skin#fileicons","336":"/docs/reference/skins/classes/skin#default-1","337":"/docs/reference/skins/classes/skin#foldericons","338":"/docs/reference/skins/classes/skin#default-2","339":"/docs/reference/skins/classes/skin#loadstylesheet","340":"/docs/reference/skins/classes/skin#example","341":"/docs/reference/skins/classes/skin#instances","342":"/docs/reference/skins/classes/skin#macosskin","343":"/docs/reference/skins/classes/skin#minimalskin","344":"/docs/reference/skins/#prozilla-os-skins","345":"/docs/reference/skins/#about","346":"/docs/reference/skins/#installation","347":"/docs/reference/skins/#links"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[1,1,21],"1":[1,1,41],"2":[1,1,90],"3":[1,1,27],"4":[1,1,13],"5":[1,1,1],"6":[1,1,31],"7":[2,1,26],"8":[2,1,22],"9":[4,1,57],"10":[3,4,1],"11":[1,6,22],"12":[1,6,17],"13":[3,4,1],"14":[1,6,34],"15":[1,6,1],"16":[2,1,1],"17":[1,2,34],"18":[1,2,43],"19":[2,3,26],"20":[1,2,114],"21":[2,3,36],"22":[1,5,101],"23":[1,2,15],"24":[2,1,15],"25":[1,2,95],"26":[1,2,10],"27":[1,3,51],"28":[2,3,63],"29":[2,3,1],"30":[4,5,99],"31":[4,5,66],"32":[4,1,1],"33":[1,4,12],"34":[1,4,16],"35":[1,4,1],"36":[2,5,28],"37":[2,5,7],"38":[1,4,8],"39":[4,1,1],"40":[1,4,12],"41":[1,4,16],"42":[1,4,1],"43":[2,5,28],"44":[1,4,8],"45":[5,1,1],"46":[1,5,13],"47":[1,5,17],"48":[1,5,1],"49":[2,6,30],"50":[2,6,64],"51":[1,5,8],"52":[5,1,1],"53":[1,5,19],"54":[1,5,17],"55":[1,5,1],"56":[2,6,30],"57":[1,5,8],"58":[5,1,1],"59":[1,5,14],"60":[1,5,17],"61":[1,5,1],"62":[2,6,30],"63":[2,6,10],"64":[1,5,8],"65":[4,1,1],"66":[1,4,10],"67":[1,4,16],"68":[1,4,1],"69":[2,5,28],"70":[2,5,9],"71":[1,4,8],"72":[4,1,1],"73":[1,4,10],"74":[1,4,16],"75":[1,4,1],"76":[2,5,28],"77":[2,5,15],"78":[1,4,8],"79":[5,1,1],"80":[1,5,10],"81":[1,5,17],"82":[1,5,1],"83":[2,6,30],"84":[2,6,42],"85":[1,5,8],"86":[1,1,16],"87":[5,1,1],"88":[1,5,11],"89":[1,5,18],"90":[1,5,14],"91":[1,5,26],"92":[1,1,91],"93":[1,1,16],"94":[2,1,7],"95":[1,1,7],"96":[1,2,22],"97":[1,1,1],"98":[1,2,12],"99":[1,2,29],"100":[1,2,19],"101":[1,2,20],"102":[1,2,9],"103":[1,2,11],"104":[1,2,25],"105":[1,2,19],"106":[1,2,13],"107":[1,2,13],"108":[1,1,1],"109":[3,2,12],"110":[3,2,11],"111":[3,2,15],"112":[3,2,13],"113":[3,2,14],"114":[3,2,16],"115":[3,2,16],"116":[3,2,14],"117":[1,1,1],"118":[1,1,4],"119":[1,2,10],"120":[1,1,1],"121":[1,2,7],"122":[1,1,1],"123":[1,1,4],"124":[1,2,12],"125":[1,1,1],"126":[1,2,19],"127":[1,2,17],"128":[1,1,1],"129":[1,1,4],"130":[1,2,9],"131":[1,1,1],"132":[1,2,26],"133":[1,1,1],"134":[1,1,4],"135":[1,2,11],"136":[1,1,1],"137":[1,2,12],"138":[1,2,12],"139":[1,1,1],"140":[1,1,4],"141":[1,2,9],"142":[1,1,1],"143":[1,2,12],"144":[1,1,1],"145":[1,1,4],"146":[1,2,11],"147":[1,1,1],"148":[1,2,10],"149":[1,2,24],"150":[1,1,1],"151":[1,1,4],"152":[1,2,14],"153":[1,1,1],"154":[1,2,24],"155":[1,2,16],"156":[1,2,37],"157":[1,1,3],"158":[1,1,1],"159":[1,2,4],"160":[1,1,1],"161":[2,2,4],"162":[3,2,5],"163":[1,5,17],"164":[1,5,11],"165":[1,5,14],"166":[1,1,3],"167":[1,1,5],"168":[1,2,7],"169":[1,2,8],"170":[1,1,1],"171":[1,2,3],"172":[1,2,3],"173":[1,2,18],"174":[1,2,9],"175":[1,1,1],"176":[2,2,22],"177":[4,2,16],"178":[3,2,16],"179":[4,2,13],"180":[4,2,12],"181":[4,2,13],"182":[3,2,15],"183":[3,2,11],"184":[4,2,17],"185":[5,2,15],"186":[1,1,3],"187":[2,1,5],"188":[2,3,12],"189":[2,3,11],"190":[1,1,5],"191":[1,2,17],"192":[2,1,7],"193":[4,2,10],"194":[1,6,22],"195":[2,2,4],"196":[3,2,5],"197":[1,5,4],"198":[1,5,3],"199":[3,2,11],"200":[1,5,5],"201":[3,2,9],"202":[1,5,9],"203":[2,2,8],"204":[1,4,6],"205":[3,2,9],"206":[1,5,10],"207":[1,5,6],"208":[4,2,12],"209":[1,6,9],"210":[3,2,8],"211":[1,5,4],"212":[1,5,6],"213":[5,2,8],"214":[1,7,6],"215":[2,1,7],"216":[3,2,28],"217":[1,5,8],"218":[1,5,3],"219":[1,5,6],"220":[4,1,1],"221":[1,4,22],"222":[1,4,9],"223":[1,4,1],"224":[2,5,22],"225":[1,5,105],"226":[1,4,8],"227":[2,1,6],"228":[5,2,6],"229":[1,7,28],"230":[1,7,20],"231":[2,1,8],"232":[4,2,9],"233":[1,6,11],"234":[1,6,9],"235":[1,6,18],"236":[3,2,25],"237":[1,5,46],"238":[1,5,4],"239":[1,5,46],"240":[5,1,1],"241":[1,5,14],"242":[1,5,10],"243":[1,5,8],"244":[1,1,8],"245":[1,1,38],"246":[3,1,32],"247":[1,4,26],"248":[1,4,34],"249":[1,1,88],"250":[1,1,22],"251":[1,1,37],"252":[1,1,44],"253":[1,1,20],"254":[1,2,50],"255":[2,1,19],"256":[1,1,20],"257":[1,1,17],"258":[1,1,26],"259":[1,1,39],"260":[1,1,1],"261":[2,2,29],"262":[2,2,8],"263":[2,2,39],"264":[2,1,1],"265":[1,2,44],"266":[1,2,8],"267":[1,2,35],"268":[1,2,17],"269":[2,3,21],"270":[1,3,105],"271":[1,2,8],"272":[1,1,3],"273":[2,1,12],"274":[1,1,1],"275":[2,2,10],"276":[1,1,1],"277":[4,2,6],"278":[2,6,7],"279":[1,6,10],"280":[4,2,6],"281":[2,6,7],"282":[1,6,10],"283":[4,2,3],"284":[2,6,7],"285":[1,6,8],"286":[1,1,65],"287":[2,1,7],"288":[1,2,16],"289":[2,1,7],"290":[4,2,6],"291":[2,6,4],"292":[1,6,10],"293":[3,2,8],"294":[2,5,4],"295":[1,5,4],"296":[1,5,3],"297":[3,2,11],"298":[2,5,4],"299":[1,5,4],"300":[1,5,3],"301":[2,1,7],"302":[5,2,4],"303":[1,7,34],"304":[1,7,3],"305":[5,2,7],"306":[1,7,29],"307":[1,7,3],"308":[2,1,7],"309":[5,2,8],"310":[1,7,6],"311":[1,7,3],"312":[4,2,12],"313":[1,6,5],"314":[1,6,3],"315":[4,2,13],"316":[1,6,14],"317":[1,6,5],"318":[2,1,7],"319":[3,2,1],"320":[1,5,5],"321":[1,5,5],"322":[4,1,1],"323":[1,4,15],"324":[1,4,9],"325":[1,4,8],"326":[1,1,3],"327":[1,1,4],"328":[1,2,28],"329":[1,1,1],"330":[1,2,11],"331":[1,2,11],"332":[1,2,8],"333":[1,2,8],"334":[1,3,14],"335":[1,2,15],"336":[1,3,1],"337":[1,2,15],"338":[1,3,1],"339":[1,2,11],"340":[1,3,8],"341":[1,1,1],"342":[1,2,8],"343":[1,2,7],"344":[4,1,1],"345":[1,4,12],"346":[1,4,9],"347":[1,4,8]},"averageFieldLength":[1.6436781609195403,2.9080459770114944,14.899425287356326],"storedFields":{"0":{"title":"Features","titles":[]},"1":{"title":"System","titles":["Features"]},"2":{"title":"Applications","titles":["Features"]},"3":{"title":"Interactions","titles":["Features"]},"4":{"title":"Assets","titles":["Features"]},"5":{"title":"Introduction","titles":[]},"6":{"title":"About","titles":["Introduction"]},"7":{"title":"Open-source","titles":["Introduction"]},"8":{"title":"Support ProzillaOS","titles":["Introduction"]},"9":{"title":"Making a custom app","titles":[]},"10":{"title":"1. Internal app","titles":["Making a custom app"]},"11":{"title":"Prerequisites","titles":["Making a custom app","1. Internal app"]},"12":{"title":"Setup","titles":["Making a custom app","1. Internal app"]},"13":{"title":"2. External app","titles":["Making a custom app"]},"14":{"title":"Prerequisites","titles":["Making a custom app","2. External app"]},"15":{"title":"Setup","titles":["Making a custom app","2. External app"]},"16":{"title":"Getting started","titles":[]},"17":{"title":"Prerequisites","titles":["Getting started"]},"18":{"title":"Installation","titles":["Getting started"]},"19":{"title":"Installing apps","titles":["Getting started","Installation"]},"20":{"title":"Usage","titles":["Getting started"]},"21":{"title":"Using apps","titles":["Getting started","Usage"]},"22":{"title":"Example","titles":["Getting started","Usage","Using apps"]},"23":{"title":"Community","titles":["Getting started"]},"24":{"title":"Self-hosting","titles":[]},"25":{"title":"Installation","titles":["Self-hosting"]},"26":{"title":"Scripts","titles":["Self-hosting"]},"27":{"title":"General","titles":["Self-hosting","Scripts"]},"28":{"title":"Public packages","titles":["Self-hosting","Scripts"]},"29":{"title":"Internal packages","titles":["Self-hosting","Scripts"]},"30":{"title":"@prozilla-os/demo","titles":["Self-hosting","Scripts","Internal packages"]},"31":{"title":"@prozilla-os/docs","titles":["Self-hosting","Scripts","Internal packages"]},"32":{"title":"@prozilla-os/browser","titles":[]},"33":{"title":"About","titles":["@prozilla-os/browser"]},"34":{"title":"Installation","titles":["@prozilla-os/browser"]},"35":{"title":"Usage","titles":["@prozilla-os/browser"]},"36":{"title":"Basic setup","titles":["@prozilla-os/browser","Usage"]},"37":{"title":"Window options","titles":["@prozilla-os/browser","Usage"]},"38":{"title":"Links","titles":["@prozilla-os/browser"]},"39":{"title":"@prozilla-os/calculator","titles":[]},"40":{"title":"About","titles":["@prozilla-os/calculator"]},"41":{"title":"Installation","titles":["@prozilla-os/calculator"]},"42":{"title":"Usage","titles":["@prozilla-os/calculator"]},"43":{"title":"Basic setup","titles":["@prozilla-os/calculator","Usage"]},"44":{"title":"Links","titles":["@prozilla-os/calculator"]},"45":{"title":"@prozilla-os/file-explorer","titles":[]},"46":{"title":"About","titles":["@prozilla-os/file-explorer"]},"47":{"title":"Installation","titles":["@prozilla-os/file-explorer"]},"48":{"title":"Usage","titles":["@prozilla-os/file-explorer"]},"49":{"title":"Basic setup","titles":["@prozilla-os/file-explorer","Usage"]},"50":{"title":"Window options","titles":["@prozilla-os/file-explorer","Usage"]},"51":{"title":"Links","titles":["@prozilla-os/file-explorer"]},"52":{"title":"@prozilla-os/logic-sim","titles":[]},"53":{"title":"About","titles":["@prozilla-os/logic-sim"]},"54":{"title":"Installation","titles":["@prozilla-os/logic-sim"]},"55":{"title":"Usage","titles":["@prozilla-os/logic-sim"]},"56":{"title":"Basic setup","titles":["@prozilla-os/logic-sim","Usage"]},"57":{"title":"Links","titles":["@prozilla-os/logic-sim"]},"58":{"title":"@prozilla-os/media-viewer","titles":[]},"59":{"title":"About","titles":["@prozilla-os/media-viewer"]},"60":{"title":"Installation","titles":["@prozilla-os/media-viewer"]},"61":{"title":"Usage","titles":["@prozilla-os/media-viewer"]},"62":{"title":"Basic setup","titles":["@prozilla-os/media-viewer","Usage"]},"63":{"title":"Window options","titles":["@prozilla-os/media-viewer","Usage"]},"64":{"title":"Links","titles":["@prozilla-os/media-viewer"]},"65":{"title":"@prozilla-os/settings","titles":[]},"66":{"title":"About","titles":["@prozilla-os/settings"]},"67":{"title":"Installation","titles":["@prozilla-os/settings"]},"68":{"title":"Usage","titles":["@prozilla-os/settings"]},"69":{"title":"Basic setup","titles":["@prozilla-os/settings","Usage"]},"70":{"title":"Window options","titles":["@prozilla-os/settings","Usage"]},"71":{"title":"Links","titles":["@prozilla-os/settings"]},"72":{"title":"@prozilla-os/terminal","titles":[]},"73":{"title":"About","titles":["@prozilla-os/terminal"]},"74":{"title":"Installation","titles":["@prozilla-os/terminal"]},"75":{"title":"Usage","titles":["@prozilla-os/terminal"]},"76":{"title":"Basic setup","titles":["@prozilla-os/terminal","Usage"]},"77":{"title":"Window options","titles":["@prozilla-os/terminal","Usage"]},"78":{"title":"Links","titles":["@prozilla-os/terminal"]},"79":{"title":"@prozilla-os/text-editor","titles":[]},"80":{"title":"About","titles":["@prozilla-os/text-editor"]},"81":{"title":"Installation","titles":["@prozilla-os/text-editor"]},"82":{"title":"Usage","titles":["@prozilla-os/text-editor"]},"83":{"title":"Basic setup","titles":["@prozilla-os/text-editor","Usage"]},"84":{"title":"Window options","titles":["@prozilla-os/text-editor","Usage"]},"85":{"title":"Links","titles":["@prozilla-os/text-editor"]},"86":{"title":"Configuration","titles":[]},"87":{"title":"<ProzillaOS> props","titles":["Configuration"]},"88":{"title":"systemName","titles":["Configuration","<ProzillaOS> props"]},"89":{"title":"tagLine","titles":["Configuration","<ProzillaOS> props"]},"90":{"title":"skin","titles":["Configuration","<ProzillaOS> props"]},"91":{"title":"config","titles":["Configuration","<ProzillaOS> props"]},"92":{"title":"Example","titles":["Configuration"]},"93":{"title":"Class","titles":[]},"94":{"title":"Type parameters","titles":["Class"]},"95":{"title":"Constructor","titles":["Class"]},"96":{"title":"Parameters","titles":["Class","Constructor"]},"97":{"title":"Properties","titles":["Class"]},"98":{"title":"name","titles":["Class","Properties"]},"99":{"title":"id","titles":["Class","Properties"]},"100":{"title":"windowContent","titles":["Class","Properties"]},"101":{"title":"windowOptions","titles":["Class","Properties"]},"102":{"title":"description","titles":["Class","Properties"]},"103":{"title":"iconUrl","titles":["Class","Properties"]},"104":{"title":"role","titles":["Class","Properties"]},"105":{"title":"associatedExtensions","titles":["Class","Properties"]},"106":{"title":"pinnedByDefault","titles":["Class","Properties"]},"107":{"title":"launchAtStartup","titles":["Class","Properties"]},"108":{"title":"Methods","titles":["Class"]},"109":{"title":"setName(name)","titles":["Class","Methods"]},"110":{"title":"setDescription(description)","titles":["Class","Methods"]},"111":{"title":"setIconUrl(iconUrl)","titles":["Class","Methods"]},"112":{"title":"setRole(role)","titles":["Class","Methods"]},"113":{"title":"setAssociatedExtensions(extensions)","titles":["Class","Methods"]},"114":{"title":"setPinnedByDefault(pinnedByDefault)","titles":["Class","Methods"]},"115":{"title":"setLaunchAtStartup(launchAtStartup)","titles":["Class","Methods"]},"116":{"title":"WindowContent(props)","titles":["Class","Methods"]},"117":{"title":"Class","titles":[]},"118":{"title":"Constructor","titles":["Class"]},"119":{"title":"Parameters","titles":["Class","Constructor"]},"120":{"title":"Properties","titles":["Class"]},"121":{"title":"apps","titles":["Class","Properties"]},"122":{"title":"Class","titles":[]},"123":{"title":"Constructor","titles":["Class"]},"124":{"title":"Parameters","titles":["Class","Constructor"]},"125":{"title":"Properties","titles":["Class"]},"126":{"title":"defaultIconSize","titles":["Class","Properties"]},"127":{"title":"defaultIconDirection","titles":["Class","Properties"]},"128":{"title":"Class","titles":[]},"129":{"title":"Constructor","titles":["Class"]},"130":{"title":"Parameters","titles":["Class","Constructor"]},"131":{"title":"Properties","titles":["Class"]},"132":{"title":"doubleClickDelay","titles":["Class","Properties"]},"133":{"title":"Class","titles":[]},"134":{"title":"Constructor","titles":["Class"]},"135":{"title":"Parameters","titles":["Class","Constructor"]},"136":{"title":"Properties","titles":["Class"]},"137":{"title":"defaultDialogSize","titles":["Class","Properties"]},"138":{"title":"defaultFileSelectorSize","titles":["Class","Properties"]},"139":{"title":"Class","titles":[]},"140":{"title":"Constructor","titles":["Class"]},"141":{"title":"Parameters","titles":["Class","Constructor"]},"142":{"title":"Properties","titles":["Class"]},"143":{"title":"height","titles":["Class","Properties"]},"144":{"title":"Class","titles":[]},"145":{"title":"Constructor","titles":["Class"]},"146":{"title":"Parameters","titles":["Class","Constructor"]},"147":{"title":"Properties","titles":["Class"]},"148":{"title":"enabled","titles":["Class","Properties"]},"149":{"title":"GAMeasurementId","titles":["Class","Properties"]},"150":{"title":"Class","titles":[]},"151":{"title":"Constructor","titles":["Class"]},"152":{"title":"Parameters","titles":["Class","Constructor"]},"153":{"title":"Properties","titles":["Class"]},"154":{"title":"screenMargin","titles":["Class","Properties"]},"155":{"title":"titleSeparator","titles":["Class","Properties"]},"156":{"title":"minScreenSize","titles":["Class","Properties"]},"157":{"title":"Class","titles":[]},"158":{"title":"Properties","titles":["Class"]},"159":{"title":"startDate","titles":["Class","Properties"]},"160":{"title":"Methods","titles":["Class"]},"161":{"title":"reset()","titles":["Class","Methods"]},"162":{"title":"getUptime(precision)","titles":["Class","Methods"]},"163":{"title":"Parameters","titles":["Class","Methods","getUptime(precision)"]},"164":{"title":"Returns","titles":["Class","Methods","getUptime(precision)"]},"165":{"title":"Example","titles":["Class","Methods","getUptime(precision)"]},"166":{"title":"Class","titles":[]},"167":{"title":"Constructor","titles":["Class"]},"168":{"title":"Parameters","titles":["Class","Constructor"]},"169":{"title":"Examples","titles":["Class","Constructor"]},"170":{"title":"Properties","titles":["Class"]},"171":{"title":"x","titles":["Class","Properties"]},"172":{"title":"y","titles":["Class","Properties"]},"173":{"title":"ZERO","titles":["Class","Properties"]},"174":{"title":"clone","titles":["Class","Properties"]},"175":{"title":"Methods","titles":["Class"]},"176":{"title":"round()","titles":["Class","Methods"]},"177":{"title":"getDistance(x, y)","titles":["Class","Methods"]},"178":{"title":"getDistance(vector2)","titles":["Class","Methods"]},"179":{"title":"add(vector2A, vector2B)","titles":["Class","Methods"]},"180":{"title":"subtract(vector2A, vector2B)","titles":["Class","Methods"]},"181":{"title":"scale(vector2, scalar)","titles":["Class","Methods"]},"182":{"title":"magnitude(vector2)","titles":["Class","Methods"]},"183":{"title":"normalize(vector2)","titles":["Class","Methods"]},"184":{"title":"sqrDistance (vector2A, vector2B)","titles":["Class","Methods"]},"185":{"title":"lerp(vector2A, vector2B, t)","titles":["Class","Methods"]},"186":{"title":"Constants","titles":[]},"187":{"title":"Virtual drive","titles":["Constants"]},"188":{"title":"CODE_EXTENSIONS","titles":["Constants","Virtual drive"]},"189":{"title":"IMAGE_EXTENSIONS","titles":["Constants","Virtual drive"]},"190":{"title":"Themes","titles":["Constants"]},"191":{"title":"THEMES","titles":["Constants","Themes"]},"192":{"title":"Browser functions","titles":[]},"193":{"title":"closeViewport(requireConfirmation, name)","titles":["Browser functions"]},"194":{"title":"Parameters","titles":["Browser functions","closeViewport(requireConfirmation, name)"]},"195":{"title":"reloadViewport()","titles":["Browser functions"]},"196":{"title":"isValidUrl(string)","titles":["Browser functions"]},"197":{"title":"Parameters","titles":["Browser functions","isValidUrl(string)"]},"198":{"title":"Returns","titles":["Browser functions","isValidUrl(string)"]},"199":{"title":"setViewportTitle(title)","titles":["Browser functions"]},"200":{"title":"Parameters","titles":["Browser functions","setViewportTitle(title)"]},"201":{"title":"setViewportIcon(url)","titles":["Browser functions"]},"202":{"title":"Parameters","titles":["Browser functions","setViewportIcon(url)"]},"203":{"title":"getViewportParams()","titles":["Browser functions"]},"204":{"title":"Returns","titles":["Browser functions","getViewportParams()"]},"205":{"title":"generateUrl(options)","titles":["Browser functions"]},"206":{"title":"Parameters","titles":["Browser functions","generateUrl(options)"]},"207":{"title":"Returns","titles":["Browser functions","generateUrl(options)"]},"208":{"title":"openUrl(url, target)","titles":["Browser functions"]},"209":{"title":"Parameters","titles":["Browser functions","openUrl(url, target)"]},"210":{"title":"removeUrlProtocol(url)","titles":["Browser functions"]},"211":{"title":"Parameters","titles":["Browser functions","removeUrlProtocol(url)"]},"212":{"title":"Returns","titles":["Browser functions","removeUrlProtocol(url)"]},"213":{"title":"copyToClipboard(string, onSuccess, onFail)","titles":["Browser functions"]},"214":{"title":"Parameters","titles":["Browser functions","copyToClipboard(string, onSuccess, onFail)"]},"215":{"title":"Keyboard functions","titles":[]},"216":{"title":"formatShortcut(shortcut)","titles":["Keyboard functions"]},"217":{"title":"Parameters","titles":["Keyboard functions","formatShortcut(shortcut)"]},"218":{"title":"Returns","titles":["Keyboard functions","formatShortcut(shortcut)"]},"219":{"title":"Example","titles":["Keyboard functions","formatShortcut(shortcut)"]},"220":{"title":"@prozilla-os/core","titles":[]},"221":{"title":"About","titles":["@prozilla-os/core"]},"222":{"title":"Installation","titles":["@prozilla-os/core"]},"223":{"title":"Usage","titles":["@prozilla-os/core"]},"224":{"title":"Basic setup","titles":["@prozilla-os/core","Usage"]},"225":{"title":"Configuration","titles":["@prozilla-os/core","Usage"]},"226":{"title":"Links","titles":["@prozilla-os/core"]},"227":{"title":"Console functions","titles":[]},"228":{"title":"print(message, status, newLine)","titles":["Console functions"]},"229":{"title":"Parameters","titles":["Console functions","print(message, status, newLine)"]},"230":{"title":"Example","titles":["Console functions","print(message, status, newLine)"]},"231":{"title":"Vite functions","titles":[]},"232":{"title":"appViteConfig(basePath, entryPath)","titles":["Vite functions"]},"233":{"title":"Parameters","titles":["Vite functions","appViteConfig(basePath, entryPath)"]},"234":{"title":"Returns","titles":["Vite functions","appViteConfig(basePath, entryPath)"]},"235":{"title":"Example","titles":["Vite functions","appViteConfig(basePath, entryPath)"]},"236":{"title":"stageSitePlugin(options)","titles":["Vite functions"]},"237":{"title":"Parameters","titles":["Vite functions","stageSitePlugin(options)"]},"238":{"title":"Returns","titles":["Vite functions","stageSitePlugin(options)"]},"239":{"title":"Example","titles":["Vite functions","stageSitePlugin(options)"]},"240":{"title":"@prozilla-os/dev-tools","titles":[]},"241":{"title":"About","titles":["@prozilla-os/dev-tools"]},"242":{"title":"Installation","titles":["@prozilla-os/dev-tools"]},"243":{"title":"Links","titles":["@prozilla-os/dev-tools"]},"244":{"title":"Glossary","titles":[]},"245":{"title":"Actions","titles":["Glossary"]},"246":{"title":"Application (app)","titles":["Glossary"]},"247":{"title":"Categorization","titles":["Glossary","Application (app)"]},"248":{"title":"Installation","titles":["Glossary","Application (app)"]},"249":{"title":"Modal","titles":["Glossary"]},"250":{"title":"Package","titles":["Glossary"]},"251":{"title":"Settings","titles":["Glossary"]},"252":{"title":"Storage","titles":["Glossary"]},"253":{"title":"Taskbar","titles":["Glossary"]},"254":{"title":"Segments","titles":["Glossary","Taskbar"]},"255":{"title":"Virtual Drive","titles":["Glossary"]},"256":{"title":"Windows","titles":["Glossary"]},"257":{"title":"Packages","titles":[]},"258":{"title":"Bundle","titles":["Packages"]},"259":{"title":"Libraries","titles":["Packages"]},"260":{"title":"Applications","titles":["Packages"]},"261":{"title":"Primary applications","titles":["Packages","Applications"]},"262":{"title":"Secondary applications","titles":["Packages","Applications"]},"263":{"title":"External applications","titles":["Packages","Applications"]},"264":{"title":"prozilla-os","titles":[]},"265":{"title":"About","titles":["prozilla-os"]},"266":{"title":"Installation","titles":["prozilla-os"]},"267":{"title":"Packages","titles":["prozilla-os"]},"268":{"title":"Usage","titles":["prozilla-os"]},"269":{"title":"Basic setup","titles":["prozilla-os","Usage"]},"270":{"title":"Configuration","titles":["prozilla-os","Usage"]},"271":{"title":"Links","titles":["prozilla-os"]},"272":{"title":"Class","titles":[]},"273":{"title":"Type parameters","titles":["Class"]},"274":{"title":"Properties","titles":["Class"]},"275":{"title":"EVENT_NAMES","titles":["Class","Properties"]},"276":{"title":"Methods","titles":["Class"]},"277":{"title":"on(eventName, callback)","titles":["Class","Methods"]},"278":{"title":"Type parameters","titles":["Class","Methods","on(eventName, callback)"]},"279":{"title":"Parameters","titles":["Class","Methods","on(eventName, callback)"]},"280":{"title":"off(eventName, callback)","titles":["Class","Methods"]},"281":{"title":"Type parameters","titles":["Class","Methods","off(eventName, callback)"]},"282":{"title":"Parameters","titles":["Class","Methods","off(eventName, callback)"]},"283":{"title":"emit(eventName, data)","titles":["Class","Methods"]},"284":{"title":"Type parameters","titles":["Class","Methods","emit(eventName, data)"]},"285":{"title":"Parameters","titles":["Class","Methods","emit(eventName, data)"]},"286":{"title":"Example","titles":["Class"]},"287":{"title":"ANSI constants","titles":[]},"288":{"title":"ANSI","titles":["ANSI constants"]},"289":{"title":"Array functions","titles":[]},"290":{"title":"removeFromArray(item, array)","titles":["Array functions"]},"291":{"title":"Type parameters","titles":["Array functions","removeFromArray(item, array)"]},"292":{"title":"Parameters","titles":["Array functions","removeFromArray(item, array)"]},"293":{"title":"randomFromArray(array)","titles":["Array functions"]},"294":{"title":"Type parameters","titles":["Array functions","randomFromArray(array)"]},"295":{"title":"Parameters","titles":["Array functions","randomFromArray(array)"]},"296":{"title":"Returns","titles":["Array functions","randomFromArray(array)"]},"297":{"title":"removeDuplicatesFromArray(array)","titles":["Array functions"]},"298":{"title":"Type parameters","titles":["Array functions","removeDuplicatesFromArray(array)"]},"299":{"title":"Parameters","titles":["Array functions","removeDuplicatesFromArray(array)"]},"300":{"title":"Returns","titles":["Array functions","removeDuplicatesFromArray(array)"]},"301":{"title":"Date functions","titles":[]},"302":{"title":"formatTime(time, maxLength, allowAffixes)","titles":["Date functions"]},"303":{"title":"Parameters","titles":["Date functions","formatTime(time, maxLength, allowAffixes)"]},"304":{"title":"Returns","titles":["Date functions","formatTime(time, maxLength, allowAffixes)"]},"305":{"title":"formatRelativeTime(date, maxLength, allowAffixes)","titles":["Date functions"]},"306":{"title":"Parameters","titles":["Date functions","formatRelativeTime(date, maxLength, allowAffixes)"]},"307":{"title":"Returns","titles":["Date functions","formatRelativeTime(date, maxLength, allowAffixes)"]},"308":{"title":"Math functions","titles":[]},"309":{"title":"clamp(value, min, max)","titles":["Math functions"]},"310":{"title":"Parameters","titles":["Math functions","clamp(value, min, max)"]},"311":{"title":"Returns","titles":["Math functions","clamp(value, min, max)"]},"312":{"title":"randomRange(min, max)","titles":["Math functions"]},"313":{"title":"Parameters","titles":["Math functions","randomRange(min, max)"]},"314":{"title":"Returns","titles":["Math functions","randomRange(min, max)"]},"315":{"title":"round(value, precision)","titles":["Math functions"]},"316":{"title":"Parameters","titles":["Math functions","round(value, precision)"]},"317":{"title":"Returns","titles":["Math functions","round(value, precision)"]},"318":{"title":"Number functions","titles":[]},"319":{"title":"isValidInteger(number)","titles":["Number functions"]},"320":{"title":"Parameters","titles":["Number functions","isValidInteger(number)"]},"321":{"title":"Returns","titles":["Number functions","isValidInteger(number)"]},"322":{"title":"@prozilla-os/shared","titles":[]},"323":{"title":"About","titles":["@prozilla-os/shared"]},"324":{"title":"Installation","titles":["@prozilla-os/shared"]},"325":{"title":"Links","titles":["@prozilla-os/shared"]},"326":{"title":"Class","titles":[]},"327":{"title":"Constructor","titles":["Class"]},"328":{"title":"Parameters","titles":["Class","Constructor"]},"329":{"title":"Properties","titles":["Class"]},"330":{"title":"appIcons","titles":["Class","Properties"]},"331":{"title":"appNames","titles":["Class","Properties"]},"332":{"title":"wallpapers","titles":["Class","Properties"]},"333":{"title":"defaultWallpaper","titles":["Class","Properties"]},"334":{"title":"Default","titles":["Class","Properties","defaultWallpaper"]},"335":{"title":"fileIcons","titles":["Class","Properties"]},"336":{"title":"Default","titles":["Class","Properties","fileIcons"]},"337":{"title":"folderIcons","titles":["Class","Properties"]},"338":{"title":"Default","titles":["Class","Properties","folderIcons"]},"339":{"title":"loadStyleSheet","titles":["Class","Properties"]},"340":{"title":"Example","titles":["Class","Properties","loadStyleSheet"]},"341":{"title":"Instances","titles":["Class"]},"342":{"title":"macOsSkin","titles":["Class","Instances"]},"343":{"title":"minimalSkin","titles":["Class","Instances"]},"344":{"title":"@prozilla-os/skins","titles":[]},"345":{"title":"About","titles":["@prozilla-os/skins"]},"346":{"title":"Installation","titles":["@prozilla-os/skins"]},"347":{"title":"Links","titles":["@prozilla-os/skins"]}},"dirtCount":0,"index":[["⚠",{"2":{"230":1}}],["✓",{"2":{"230":1}}],["6",{"2":{"176":1}}],["xml",{"2":{"251":1}}],["x",{"0":{"171":1,"177":1},"2":{"167":1,"168":1,"177":1}}],["x3c",{"2":{"20":9,"21":1,"22":1,"36":6,"43":6,"49":6,"56":6,"62":6,"69":6,"76":6,"83":6,"92":1,"224":6,"225":2,"269":6,"270":2,"273":1,"286":1,"288":3,"328":2}}],["56",{"2":{"165":1}}],["3d",{"2":{"263":1}}],["3",{"2":{"165":1,"169":3,"176":2,"225":1,"254":1,"270":1,"303":2,"306":2}}],["350",{"2":{"156":2,"225":2,"270":2}}],["32",{"2":{"154":1,"225":1,"270":1}}],["3000",{"2":{"25":1,"30":1,"31":1}}],["700",{"2":{"138":1,"225":1,"270":1}}],["4",{"2":{"165":3,"169":2,"176":1}}],["400",{"2":{"137":1,"138":1,"225":2,"270":2}}],["48",{"2":{"92":1,"143":1}}],["9",{"2":{"99":1}}],["zero",{"0":{"173":1},"2":{"173":2}}],["z",{"2":{"99":1}}],["$frontmatter",{"2":{"93":1,"157":1,"166":1,"186":1,"192":1,"215":1,"227":1,"231":1,"272":1,"287":1,"289":1,"301":1,"308":1,"318":1,"326":1}}],["`",{"2":{"92":1}}],["`configure",{"2":{"92":1}}],["`selectormode`",{"2":{"50":3}}],["|",{"2":{"84":1,"96":1,"102":1,"103":1,"104":1,"105":1,"111":1,"112":1,"113":1,"119":1,"124":4,"126":2,"127":1,"130":1,"135":1,"141":1,"146":1,"152":1,"168":1,"191":1,"194":1,"209":1,"216":1,"225":12,"229":6,"270":12,"285":1,"303":1,"306":1,"320":1,"321":1,"328":1}}],["0",{"2":{"50":5,"70":1,"99":1,"124":2,"126":2,"127":3,"173":2,"225":4,"270":4}}],["~",{"2":{"50":1,"77":1,"84":1,"251":1}}],["json",{"2":{"30":1,"31":1,"252":1}}],["8080",{"2":{"30":1,"31":1}}],["volume",{"2":{"254":1}}],["void",{"2":{"50":1,"225":1,"270":1,"279":1,"282":1,"328":1,"339":1}}],["variables",{"2":{"323":1}}],["various",{"2":{"253":1}}],["valid",{"2":{"216":1,"275":1}}],["validate",{"2":{"196":1}}],["validating",{"2":{"30":1,"31":1}}],["value",{"0":{"309":1,"315":1},"1":{"310":1,"311":1,"316":1,"317":1},"2":{"126":1,"127":1,"173":1,"237":1,"309":2,"310":1,"312":1,"316":2,"317":1}}],["values",{"2":{"22":1,"156":2,"176":1,"216":2,"225":1,"270":1}}],["vscode",{"2":{"27":1,"30":1}}],["v18",{"2":{"25":1}}],["vectors",{"2":{"179":1,"180":1,"184":1,"185":1}}],["vector",{"2":{"173":1,"174":1,"176":1,"177":1,"178":1,"181":1,"182":1,"183":1}}],["vector2b",{"0":{"179":1,"180":1,"184":1,"185":1},"2":{"179":1,"180":1,"184":1,"185":1}}],["vector2a",{"0":{"179":1,"180":1,"184":1,"185":1},"2":{"179":1,"180":1,"184":1,"185":1}}],["vector2",{"0":{"178":1,"181":1,"182":1,"183":1},"2":{"96":2,"101":2,"135":3,"137":2,"138":2,"152":2,"156":2,"167":1,"169":4,"173":2,"174":1,"176":2,"178":2,"179":3,"180":3,"181":3,"182":2,"183":3,"184":2,"185":3,"225":6,"270":6}}],["very",{"2":{"249":2,"253":1}}],["vertical",{"2":{"127":2,"225":1,"270":1}}],["versions",{"2":{"25":1,"28":1}}],["version",{"2":{"25":2,"28":1}}],["ve",{"2":{"22":1}}],["vibrant",{"2":{"334":1}}],["visual",{"2":{"90":1}}],["visiting",{"2":{"25":1}}],["via",{"2":{"7":1,"8":1,"149":1,"248":1,"250":1,"259":1}}],["vitejs",{"2":{"234":1}}],["vitepress",{"2":{"31":2}}],["vite",{"0":{"231":1},"1":{"232":1,"233":1,"234":1,"235":1,"236":1,"237":1,"238":1,"239":1},"2":{"7":1,"30":1,"221":1,"231":1,"232":1,"234":1,"235":2,"236":2,"239":2,"265":1}}],["viewport",{"2":{"193":1,"195":1,"199":1,"200":1,"201":1,"202":1,"203":1}}],["viewing",{"2":{"59":1}}],["viewer",{"0":{"58":1},"1":{"59":1,"60":1,"61":1,"62":1,"63":1,"64":1},"2":{"2":1,"59":1,"60":3,"62":1,"261":2,"267":2}}],["view",{"2":{"2":2,"84":2,"246":1,"256":1}}],["virtualdrive",{"2":{"187":1}}],["virtualfile",{"2":{"63":1,"84":1}}],["virtual",{"0":{"187":1,"255":1},"1":{"188":1,"189":1},"2":{"1":2,"2":2,"6":1,"22":1,"30":1,"63":1,"84":1,"92":2,"251":1,"252":2,"255":4}}],["keyof",{"2":{"278":1,"281":1,"284":1}}],["keys",{"2":{"216":1,"217":1}}],["keyboard",{"0":{"215":1},"1":{"216":1,"217":1,"218":1,"219":1},"2":{"215":1,"216":1}}],["key",{"2":{"96":1,"101":1,"216":2,"278":1,"279":1,"281":1,"282":1,"284":1,"285":1,"330":1,"331":1}}],["keep",{"2":{"20":1,"22":1,"154":1,"156":1}}],["kinds",{"2":{"59":1}}],["ko",{"2":{"8":1,"38":1,"44":1,"51":1,"57":1,"64":1,"71":1,"78":1,"85":1,"226":1,"243":1,"271":1,"325":1,"347":1}}],["queries",{"2":{"203":1}}],["questions",{"2":{"23":1}}],["quot",{"2":{"20":4,"88":2,"89":2,"98":2,"99":2,"155":2,"229":10,"249":4,"286":2,"303":4,"306":4,"334":2}}],["quickly",{"2":{"258":1}}],["quick",{"2":{"0":1,"254":1}}],["\\tlink",{"2":{"337":1}}],["\\tloadstylesheet",{"2":{"328":1}}],["\\tcode",{"2":{"335":1}}],["\\tconfig=",{"2":{"21":1,"22":1,"92":1}}],["\\timport",{"2":{"340":1}}],["\\timages",{"2":{"337":1}}],["\\timageurls",{"2":{"237":1}}],["\\tinfo",{"2":{"335":1}}],["\\tgeneric",{"2":{"335":1,"337":1}}],["\\tgameasurementid",{"2":{"146":1}}],["\\tfoldericons",{"2":{"328":1}}],["\\tfileicons",{"2":{"328":1}}],["\\tfg",{"2":{"288":1}}],["\\twallpapers",{"2":{"328":1}}],["\\twindows",{"2":{"91":1}}],["\\tappnames",{"2":{"328":1}}],["\\tappicons",{"2":{"328":1}}],["\\tappsconfig",{"2":{"237":1}}],["\\tapps",{"2":{"91":1,"119":1}}],["\\treset",{"2":{"288":1}}],["\\treturn",{"2":{"20":1}}],["\\tbg",{"2":{"288":1}}],["\\tbuild",{"2":{"239":1}}],["\\tnew",{"2":{"286":1}}],["\\tenabled",{"2":{"146":1,"286":1}}],["\\theight",{"2":{"141":1}}],["\\tdomain",{"2":{"237":1}}],["\\tdoubleclickdelay",{"2":{"130":1}}],["\\tdecoration",{"2":{"288":1}}],["\\tdefaultwallpaper",{"2":{"328":1}}],["\\tdefaultfileselectorsize",{"2":{"135":1}}],["\\tdefaultdialogsize",{"2":{"135":1}}],["\\tdefaulticondirection",{"2":{"124":1}}],["\\tdefaulticonsize",{"2":{"124":1}}],["\\tdesktop",{"2":{"91":1}}],["\\tsend",{"2":{"286":1}}],["\\tstatic",{"2":{"286":1}}],["\\tstart",{"2":{"286":2}}],["\\tstop",{"2":{"286":2}}],["\\tsitetagline",{"2":{"237":1}}],["\\tsitename",{"2":{"237":1}}],["\\tsize",{"2":{"96":1,"101":1}}],["\\tscreenmargin",{"2":{"152":1}}],["\\tskin=",{"2":{"92":1}}],["\\tsystemname=",{"2":{"92":1}}],["\\ttext",{"2":{"335":1,"337":1}}],["\\ttitleseparator",{"2":{"152":1}}],["\\ttagline=",{"2":{"92":1}}],["\\ttaskbar",{"2":{"91":1}}],["\\ttracking",{"2":{"91":1}}],["\\tminscreensize",{"2":{"152":1}}],["\\tmisc",{"2":{"91":1}}],["\\tmodals",{"2":{"91":1}}],["\\t",{"2":{"20":1,"21":2,"22":2,"92":2,"96":1,"101":1,"235":1,"237":17,"239":1,"286":3,"328":2}}],["\\t>",{"2":{"20":1}}],["\\t\\tlink",{"2":{"328":1}}],["\\t\\tcode",{"2":{"328":1}}],["\\t\\tconfig=",{"2":{"20":1}}],["\\t\\timages",{"2":{"328":1}}],["\\t\\tinfo",{"2":{"328":1}}],["\\t\\tif",{"2":{"286":3}}],["\\t\\tgeneric",{"2":{"328":2}}],["\\t\\ttext",{"2":{"328":2}}],["\\t\\tthis",{"2":{"286":4}}],["\\t\\ttaskbar",{"2":{"92":1}}],["\\t\\ttagline=",{"2":{"20":1}}],["\\t\\trollupoptions",{"2":{"239":1}}],["\\t\\toutdir",{"2":{"239":1}}],["\\t\\tdesktop",{"2":{"92":1}}],["\\t\\tdefaultwallpaper",{"2":{"92":1}}],["\\t\\tapps",{"2":{"21":1,"22":1,"92":1}}],["\\t\\t",{"2":{"20":5,"21":1,"22":1,"92":3,"239":1}}],["\\t\\t\\tthis",{"2":{"286":1}}],["\\t\\t\\treturn",{"2":{"286":2}}],["\\t\\t\\tplugins",{"2":{"239":1}}],["\\t\\t\\theight",{"2":{"92":1}}],["\\t\\t\\tdefaultwallpaper",{"2":{"92":1}}],["\\t\\t\\t\\tstagesiteplugin",{"2":{"239":1}}],["\\t\\t\\t\\tsettings",{"2":{"92":1}}],["\\t\\t\\t\\tterminal",{"2":{"92":1}}],["\\t\\t\\t\\t\\tdomain",{"2":{"239":1}}],["\\t\\t\\t\\t\\tsitetagline",{"2":{"239":1}}],["\\t\\t\\t\\t\\tsitename",{"2":{"239":1}}],["\\t\\t\\t\\t\\t\\t",{"2":{"239":1}}],["\\t\\t\\t\\t\\t\\t\\ttexteditor",{"2":{"239":1}}],["\\t\\t\\t\\t\\t\\t\\tterminal",{"2":{"239":1}}],["\\t\\t\\t\\t\\t\\t\\tfileexplorer",{"2":{"239":1}}],["\\t\\t\\t\\t\\t\\tapps",{"2":{"239":1}}],["\\t\\t\\t\\t\\tappsconfig",{"2":{"239":1}}],["\\t\\t\\t\\t\\t",{"2":{"22":2,"92":6,"239":1}}],["\\t\\t\\t\\tfileexplorer",{"2":{"22":1,"92":1}}],["\\t\\t\\t\\t",{"2":{"21":1,"239":1}}],["\\t\\t\\tapps",{"2":{"21":1,"22":1,"92":1}}],["\\t\\t\\t",{"2":{"20":1,"21":1,"22":1,"92":1,"239":1}}],["\\t\\tsystemname=",{"2":{"20":1}}],[">",{"2":{"20":5,"21":1,"22":1,"36":5,"43":5,"49":5,"56":5,"62":5,"69":5,"76":5,"83":5,"92":1,"224":5,"269":5}}],["=>",{"2":{"50":1,"225":1,"270":1,"328":1}}],["=",{"2":{"20":1,"50":3,"94":1,"273":1,"279":1,"282":1,"286":5,"303":1,"306":1,"339":1}}],["years",{"2":{"303":1,"306":1}}],["yes",{"2":{"249":1}}],["y",{"0":{"172":1,"177":1},"2":{"167":1,"168":1,"177":1}}],["yarn",{"2":{"18":2,"19":1,"34":1,"41":1,"47":1,"54":1,"60":1,"67":1,"74":1,"81":1,"222":1,"242":1,"266":1,"324":1,"346":1}}],["your",{"2":{"0":1,"12":1,"14":1,"17":1,"20":7,"21":2,"22":7,"24":2,"25":1,"92":3,"248":1}}],["you",{"2":{"0":1,"7":1,"8":1,"11":2,"12":1,"14":1,"17":1,"18":1,"19":1,"20":7,"22":3,"23":1,"25":2,"92":1,"149":1,"248":1,"249":1,"254":2,"258":1,"265":1}}],["200",{"2":{"137":1,"225":1,"270":1}}],["250",{"2":{"132":1,"225":1,"270":1}}],["2",{"0":{"13":1},"1":{"14":1,"15":1},"2":{"50":1,"124":1,"126":2,"163":1,"165":1,"169":2,"225":1,"270":1}}],["game",{"2":{"263":1}}],["gameasurementid",{"0":{"149":1},"2":{"225":1,"270":1}}],["group",{"2":{"245":1,"251":1,"254":1}}],["gradient",{"2":{"92":2}}],["glossary",{"0":{"244":1},"1":{"245":1,"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1}}],["generic",{"2":{"225":2,"270":2}}],["generates",{"2":{"236":1}}],["generated",{"2":{"207":1,"237":1}}],["generateurloptions",{"2":{"206":2}}],["generateurl",{"0":{"205":1},"1":{"206":1,"207":1}}],["generate",{"2":{"30":1,"31":2,"205":1}}],["general",{"0":{"27":1}}],["getviewportparams",{"0":{"203":1},"1":{"204":1}}],["getdistance",{"0":{"177":1,"178":1}}],["getuptime",{"0":{"162":1},"1":{"163":1,"164":1,"165":1},"2":{"165":3}}],["get",{"2":{"101":1,"162":1,"177":1,"178":1,"182":1,"184":1,"203":1,"258":1,"293":1,"312":1}}],["gets",{"2":{"50":2}}],["getelementbyid",{"2":{"20":1}}],["getting",{"0":{"16":1},"1":{"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1},"2":{"11":1}}],["g",{"2":{"25":1,"249":1,"303":1,"306":1}}],["git",{"2":{"25":1}}],["github",{"2":{"7":2,"25":2,"27":2,"30":1,"38":1,"44":1,"51":1,"57":1,"64":1,"71":1,"78":1,"85":1,"226":1,"243":1,"263":1,"271":1,"325":1,"347":1}}],["google",{"2":{"149":2,"225":1,"270":1}}],["go",{"2":{"21":1,"22":1}}],["gt",{"0":{"87":1},"1":{"88":1,"89":1,"90":1,"91":1},"2":{"20":2,"22":1,"28":1,"86":1,"94":1,"96":1,"100":1,"191":1,"204":1,"273":1,"278":1,"279":1,"281":1,"282":1,"284":1,"291":1,"294":1,"298":1,"303":1,"306":1,"339":1}}],["guide",{"2":{"11":2,"14":2,"17":2,"24":1}}],["16",{"2":{"225":1,"270":1}}],["15",{"2":{"165":2}}],["12",{"2":{"25":1}}],["1",{"0":{"10":1},"1":{"11":1,"12":1},"2":{"50":1,"124":2,"126":3,"127":2,"165":1,"176":2,"225":4,"270":4}}],["radio",{"2":{"263":2}}],["range",{"2":{"312":1}}],["randomrange",{"0":{"312":1},"1":{"313":1,"314":1}}],["random",{"2":{"293":1,"312":1}}],["randomfromarray",{"0":{"293":1},"1":{"294":1,"295":1,"296":1}}],["ran",{"2":{"246":1,"256":1}}],["raw",{"2":{"84":1}}],["rollup",{"2":{"236":1,"238":1}}],["role",{"0":{"104":1,"112":1},"2":{"112":2}}],["rounded",{"2":{"317":1}}],["round",{"0":{"176":1,"315":1},"1":{"316":1,"317":1},"2":{"176":2,"315":1}}],["robots",{"2":{"30":1}}],["root",{"2":{"20":3,"27":1,"252":2,"255":1}}],["run",{"2":{"25":3,"26":1,"27":7,"28":3,"30":6,"31":4,"34":1,"41":1,"47":1,"54":1,"60":1,"67":1,"74":1,"81":1,"84":1,"92":1,"252":1}}],["running",{"2":{"19":1,"50":1,"100":1,"256":1}}],["runs",{"2":{"6":1,"92":1}}],["receive",{"2":{"286":1}}],["receives",{"2":{"286":1}}],["record",{"2":{"191":1,"204":1,"225":2,"270":2,"273":1,"288":3,"328":2}}],["removes",{"2":{"297":1}}],["removeduplicatesfromarray",{"0":{"297":1},"1":{"298":1,"299":1,"300":1}}],["removefromarray",{"0":{"290":1},"1":{"291":1,"292":1}}],["remove",{"2":{"210":1,"280":1,"290":1,"292":1}}],["removeurlprotocol",{"0":{"210":1},"1":{"211":1,"212":1}}],["requireconfirmation",{"0":{"193":1},"1":{"194":1},"2":{"194":1}}],["required",{"2":{"34":1,"41":1,"47":1,"54":1,"60":1,"67":1,"74":1,"81":1,"149":1}}],["register",{"2":{"132":1}}],["registry",{"2":{"28":1,"257":1}}],["red",{"2":{"92":2,"334":1}}],["reference",{"2":{"246":1}}],["references",{"2":{"91":1,"96":1,"101":1,"119":1,"135":1,"152":1}}],["refer",{"2":{"216":1}}],["refreshes",{"2":{"30":1,"31":1}}],["returns",{"0":{"164":1,"198":1,"204":1,"207":1,"212":1,"218":1,"234":1,"238":1,"296":1,"300":1,"304":1,"307":1,"311":1,"314":1,"317":1,"321":1},"2":{"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"173":1,"174":1,"176":1,"177":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"249":1,"297":1}}],["return",{"2":{"36":1,"43":1,"49":1,"56":1,"62":1,"69":1,"76":1,"83":1,"224":1,"269":1}}],["relative",{"2":{"305":1}}],["related",{"2":{"188":1,"257":1,"263":1}}],["reload",{"2":{"195":1}}],["reloadviewport",{"0":{"195":1}}],["reloaded",{"2":{"30":1,"31":1}}],["release",{"2":{"28":1}}],["represents",{"2":{"303":1}}],["replacements",{"2":{"330":1,"331":1}}],["replace",{"2":{"19":1,"20":1}}],["repository",{"2":{"9":2,"25":1,"30":1,"247":1,"263":1}}],["reach",{"2":{"23":1}}],["reactelement",{"2":{"20":1,"116":1}}],["reactdom",{"2":{"20":2}}],["react",{"2":{"6":1,"7":1,"14":5,"17":5,"20":5,"50":1,"96":1,"100":2,"116":2,"209":1,"221":1,"245":1,"246":1,"248":1,"259":1,"265":1,"267":1,"345":1}}],["real",{"2":{"6":1}}],["readable",{"2":{"22":1,"164":1,"216":1}}],["read",{"2":{"1":1,"2":1,"28":1,"105":1}}],["renders",{"2":{"84":2,"100":1,"116":1}}],["render",{"2":{"2":1,"20":1}}],["result",{"2":{"165":3,"169":2,"173":1,"176":1,"219":1}}],["resets",{"2":{"161":1}}],["reset",{"0":{"161":1}}],["responsible",{"2":{"104":1}}],["respective",{"2":{"25":2,"28":2}}],["resolve",{"2":{"25":1}}],["resolution",{"2":{"2":1}}],["resizable",{"2":{"2":1}}],["emit",{"0":{"283":1},"1":{"284":1,"285":1},"2":{"286":3}}],["ecosystem",{"2":{"250":1}}],["e",{"2":{"249":1,"303":1,"306":1}}],["eventemitter",{"2":{"286":2}}],["eventname",{"0":{"277":1,"280":1,"283":1},"1":{"278":1,"279":1,"281":1,"282":1,"284":1,"285":1},"2":{"279":1,"282":1,"285":1}}],["eventnamesmap",{"2":{"273":2,"275":1}}],["event",{"0":{"275":1},"2":{"275":1,"277":2,"280":2,"283":1,"286":3}}],["eventmap",{"2":{"273":1,"278":1,"281":1,"284":1}}],["events",{"2":{"216":1,"286":1}}],["even",{"2":{"249":1}}],["every",{"2":{"27":1,"99":1}}],["edges",{"2":{"154":1}}],["edit",{"2":{"84":2}}],["editing",{"2":{"84":1}}],["editor",{"0":{"79":1},"1":{"80":1,"81":1,"82":1,"83":1,"84":1,"85":1},"2":{"2":1,"80":2,"81":3,"83":1,"84":1,"261":2,"267":2}}],["elements",{"2":{"90":1,"91":1}}],["error",{"2":{"25":2,"229":1,"230":1}}],["enable",{"2":{"149":1,"225":1,"270":1}}],["enabled",{"0":{"148":1},"2":{"148":1,"225":1,"270":1,"286":5}}],["entered",{"2":{"249":1}}],["entrypath",{"0":{"232":1},"1":{"233":1,"234":1,"235":1},"2":{"233":1}}],["entry",{"2":{"20":1,"233":1}}],["entirely",{"2":{"6":1,"92":1}}],["environment",{"2":{"6":1,"25":1}}],["engines",{"2":{"2":1}}],["easy",{"2":{"265":1}}],["easiest",{"2":{"9":1}}],["easily",{"2":{"3":1}}],["each",{"2":{"2":1,"25":1,"27":2,"28":1,"50":1,"173":1,"236":1,"245":1,"249":1,"250":1,"251":1,"256":1,"257":1,"268":1}}],["etc",{"2":{"2":1,"3":2}}],["extensions",{"0":{"113":1,"188":1,"189":1},"2":{"105":1,"113":2,"188":1,"189":1}}],["extends",{"2":{"94":1,"273":1,"278":1,"281":1,"284":1,"286":1}}],["external",{"0":{"13":1,"263":1},"1":{"14":1,"15":1},"2":{"1":1,"9":2,"247":1}}],["execute",{"2":{"30":1}}],["executing",{"2":{"25":1}}],["examples",{"0":{"169":1}}],["example",{"0":{"22":1,"92":1,"165":1,"219":1,"230":1,"235":1,"239":1,"286":1,"340":1},"2":{"20":2,"22":1,"36":1,"43":1,"49":1,"50":1,"56":1,"62":1,"69":1,"76":1,"83":1,"173":1,"176":1,"224":1,"237":3,"245":1,"269":1}}],["experience",{"2":{"92":1}}],["explains",{"2":{"24":1}}],["explorer",{"0":{"45":1},"1":{"46":1,"47":1,"48":1,"49":1,"50":1,"51":1},"2":{"2":1,"22":1,"46":1,"47":3,"49":1,"92":1,"261":2,"267":2}}],["export",{"2":{"20":1,"235":1,"239":1,"286":1}}],["mdn",{"2":{"216":1}}],["multiple",{"2":{"18":1,"50":1,"265":1}}],["must",{"2":{"9":1,"99":1}}],["monochrome",{"2":{"343":1}}],["months",{"2":{"303":1,"306":1}}],["modular",{"2":{"249":1}}],["modules",{"2":{"259":1}}],["module",{"2":{"25":1,"30":1,"31":1}}],["mode",{"2":{"50":1,"84":2}}],["modal",{"0":{"249":1},"2":{"20":1,"245":1,"249":2}}],["modalsconfigoptions",{"2":{"135":2}}],["modalsconfig",{"2":{"91":2,"134":1,"225":1,"270":1}}],["modalsview",{"2":{"20":2,"36":2,"43":2,"49":2,"56":2,"62":2,"69":2,"76":2,"83":2,"224":2,"269":2}}],["modals",{"2":{"3":1,"225":1,"249":4,"270":1}}],["move",{"2":{"22":1}}],["more",{"2":{"9":1,"14":1,"17":1,"22":1,"28":1,"268":1}}],["meta",{"2":{"199":1,"201":1,"236":1}}],["methods",{"0":{"108":1,"160":1,"175":1,"276":1},"1":{"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"161":1,"162":1,"163":1,"164":1,"165":1,"176":1,"177":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"277":1,"278":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1}}],["measurement",{"2":{"149":1,"225":1,"270":1}}],["medium",{"2":{"126":2}}],["mediaviewer",{"2":{"62":2}}],["media",{"0":{"58":1},"1":{"59":1,"60":1,"61":1,"62":1,"63":1,"64":1},"2":{"59":2,"60":3,"62":1,"63":1,"261":2,"267":2}}],["mesh",{"2":{"92":2}}],["messages",{"2":{"228":1}}],["message",{"0":{"228":1},"1":{"229":1,"230":1},"2":{"25":1,"229":4}}],["me",{"2":{"8":1}}],["menus",{"2":{"3":3,"249":1,"254":1}}],["menu",{"2":{"1":2,"245":1,"254":2}}],["misc",{"2":{"225":1,"270":1}}],["miscconfigoptions",{"2":{"130":2}}],["miscconfig",{"2":{"91":2,"129":1,"225":1,"270":1}}],["min",{"0":{"309":1,"312":1},"1":{"310":1,"311":1,"313":1,"314":1},"2":{"309":1,"310":1,"312":1,"313":1}}],["minesweeper",{"2":{"263":2}}],["minimalistic",{"2":{"343":1}}],["minimalskin",{"0":{"343":1}}],["mini",{"2":{"249":1}}],["minigames",{"2":{"2":1}}],["minutes",{"2":{"165":2}}],["minscreensize",{"0":{"156":1},"2":{"225":1,"270":1}}],["milliseconds",{"2":{"132":1,"303":1}}],["might",{"2":{"25":1}}],["mimics",{"2":{"6":1}}],["macosskin",{"0":{"342":1}}],["macos",{"2":{"340":1,"342":1}}],["math",{"0":{"308":1},"1":{"309":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1},"2":{"308":1}}],["max",{"0":{"309":1,"312":1},"1":{"310":1,"311":1,"313":1,"314":1},"2":{"309":1,"310":1,"312":1,"313":1}}],["maxlength",{"0":{"302":1,"305":1},"1":{"303":1,"304":1,"306":1,"307":1},"2":{"303":1,"306":1}}],["maximized",{"2":{"156":1,"225":1,"270":1}}],["maximum",{"2":{"132":1,"303":1,"306":1,"316":1}}],["maze",{"2":{"263":2}}],["map",{"2":{"191":1,"275":1}}],["magnitude",{"0":{"182":1},"2":{"182":1}}],["margin",{"2":{"154":1}}],["markdown",{"2":{"2":1,"84":1}}],["makes",{"2":{"252":1}}],["make",{"2":{"20":1,"22":1,"25":1}}],["making",{"0":{"9":1},"1":{"10":1,"11":1,"12":1,"13":1,"14":1,"15":1},"2":{"40":1}}],["many",{"2":{"163":1}}],["manipulate",{"2":{"92":1}}],["manager",{"2":{"25":1,"26":1}}],["manage",{"2":{"22":1,"92":1}}],["managing",{"2":{"2":2}}],["manually",{"2":{"18":1}}],["mainly",{"2":{"249":1,"253":1}}],["main",{"2":{"9":1,"235":1,"247":2,"254":1}}],["made",{"2":{"4":2,"6":1,"7":1,"22":1,"221":1,"265":1}}],["blue",{"2":{"334":1}}],["bliss",{"2":{"263":1}}],["blank",{"2":{"193":1}}],["background",{"2":{"288":1}}],["ball",{"2":{"263":2}}],["battery",{"2":{"254":1}}],["basepath",{"0":{"232":1},"1":{"233":1,"234":1,"235":1},"2":{"233":1}}],["base",{"2":{"31":1,"233":1}}],["based",{"2":{"6":1,"89":1,"92":1,"205":1,"221":1,"237":1,"239":1,"265":1,"330":1,"331":1}}],["bash$",{"2":{"18":8,"19":4}}],["basic",{"0":{"36":1,"43":1,"49":1,"56":1,"62":1,"69":1,"76":1,"83":1,"224":1,"269":1},"2":{"11":1,"14":1,"17":1,"31":1,"40":1}}],["box",{"2":{"137":1,"225":1,"270":1}}],["boxes",{"2":{"3":1}}],["boolean",{"2":{"106":1,"107":1,"114":1,"115":1,"146":1,"148":1,"194":1,"198":1,"206":2,"225":1,"229":1,"270":1,"286":1,"303":1,"306":1,"321":1}}],["browsing",{"2":{"33":1,"46":1}}],["browser",{"0":{"32":1,"192":1},"1":{"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"211":1,"212":1,"213":1,"214":1},"2":{"2":1,"6":1,"22":2,"33":1,"34":3,"36":3,"92":1,"192":1,"261":2,"267":2}}],["browse",{"2":{"2":1,"22":1,"92":1}}],["but",{"2":{"263":1}}],["buttons",{"2":{"249":1}}],["button",{"2":{"249":1}}],["building",{"2":{"221":1,"265":1}}],["build",{"2":{"25":1,"27":4,"28":4,"30":4,"31":3,"236":1}}],["bun",{"2":{"18":2,"19":1}}],["bundle",{"0":{"258":1},"2":{"18":1,"30":1,"258":2,"259":1,"261":1}}],["bugs",{"2":{"7":1}}],["bit",{"2":{"9":1}}],["behaviour",{"2":{"251":1}}],["between",{"2":{"132":1,"154":1,"155":1,"177":1,"178":1,"184":1,"185":1,"309":1,"312":1}}],["better",{"2":{"22":1}}],["below",{"2":{"19":1}}],["being",{"2":{"9":1}}],["before",{"2":{"9":1,"30":1,"31":1,"194":1,"252":1}}],["be",{"2":{"3":1,"9":1,"20":1,"30":4,"31":2,"50":2,"93":1,"104":1,"156":1,"225":1,"237":2,"245":1,"249":1,"250":1,"254":1,"259":1,"270":1}}],["by",{"2":{"1":1,"2":1,"4":1,"6":2,"7":1,"19":1,"20":3,"25":1,"36":1,"43":1,"49":1,"53":2,"56":1,"62":1,"69":1,"76":1,"83":1,"92":1,"93":1,"104":1,"106":1,"114":1,"193":1,"199":1,"201":1,"221":1,"224":1,"249":2,"251":3,"252":2,"254":1,"265":1,"269":1,"342":1}}],["null",{"2":{"102":1,"103":1,"104":1,"105":1,"111":1,"112":1,"113":1,"191":1}}],["numbers",{"2":{"99":1,"176":1}}],["number",{"0":{"318":1,"319":1},"1":{"319":1,"320":2,"321":2},"2":{"50":1,"70":1,"130":1,"132":1,"141":1,"143":1,"152":1,"154":1,"163":1,"168":2,"171":1,"172":1,"177":3,"178":1,"181":1,"182":1,"184":1,"185":1,"191":1,"225":5,"270":5,"288":3,"303":3,"306":1,"310":3,"311":1,"312":1,"313":2,"314":1,"315":1,"316":2,"317":1,"318":1,"320":2,"321":1,"328":2}}],["nbsp",{"2":{"27":8,"28":6,"30":10,"31":8}}],["now",{"2":{"305":1}}],["normalize",{"0":{"183":1},"2":{"183":1}}],["normally",{"2":{"30":1,"31":1}}],["none",{"2":{"50":1}}],["no",{"2":{"30":1,"31":1,"248":2,"249":1}}],["notes",{"2":{"239":1}}],["note",{"2":{"132":1}}],["not",{"2":{"25":2,"114":1,"115":1,"248":1,"251":1}}],["nodejs",{"2":{"25":1}}],["names",{"0":{"275":1},"2":{"191":1,"275":1,"286":1,"331":1}}],["name",{"0":{"98":1,"109":1,"193":1},"1":{"194":1},"2":{"20":1,"88":1,"95":1,"96":1,"98":1,"109":2,"194":2,"237":1,"254":1}}],["native",{"2":{"2":1}}],["negative",{"2":{"303":1}}],["network",{"2":{"254":1}}],["necessary",{"2":{"30":1}}],["need",{"2":{"20":1,"23":1,"30":1,"31":1}}],["needs",{"2":{"0":1}}],["newline",{"0":{"228":1},"1":{"229":1,"230":1}}],["new",{"2":{"12":1,"21":1,"22":1,"28":1,"36":1,"43":1,"49":1,"56":1,"62":1,"69":1,"76":1,"83":1,"90":1,"92":4,"95":1,"118":1,"123":1,"129":1,"134":1,"137":1,"138":1,"140":1,"145":1,"151":1,"156":1,"167":1,"169":1,"225":11,"229":1,"239":1,"270":11,"286":3,"327":1}}],["npmyarnpnpmbun",{"2":{"18":2,"19":1}}],["npm",{"2":{"9":1,"18":2,"19":1,"28":1,"38":1,"44":1,"51":1,"57":1,"64":1,"71":1,"78":1,"85":1,"226":1,"243":1,"250":1,"257":1,"271":1,"325":1,"347":1}}],["utility",{"2":{"323":1}}],["utilities",{"2":{"1":1,"259":1}}],["utils",{"2":{"192":1,"215":1,"289":1,"301":1,"308":1,"318":1}}],["units",{"2":{"163":1,"303":1,"306":1}}],["unique",{"2":{"99":2,"250":1}}],["unix",{"2":{"92":1}}],["unknown",{"2":{"96":1,"101":1,"279":1,"282":1,"285":1}}],["undefined",{"2":{"96":1,"119":1,"124":1,"130":1,"135":1,"141":1,"146":1,"152":1,"168":1,"194":1,"209":1,"225":9,"229":2,"270":9,"285":1,"303":1,"306":1,"328":1}}],["uncompiled",{"2":{"25":1}}],["unless",{"2":{"20":1}}],["uptime",{"2":{"162":1,"163":1,"164":1}}],["uploaded",{"2":{"30":1}}],["update",{"2":{"28":2}}],["up",{"2":{"9":1,"11":2,"14":2,"17":2,"254":1}}],["usually",{"2":{"249":2}}],["usage",{"0":{"20":1,"35":1,"42":1,"48":1,"55":1,"61":1,"68":1,"75":1,"82":1,"223":1,"268":1},"1":{"21":1,"22":1,"36":1,"37":1,"43":1,"49":1,"50":1,"56":1,"62":1,"63":1,"69":1,"70":1,"76":1,"77":1,"83":1,"84":1,"224":1,"225":1,"269":1,"270":1},"2":{"268":1}}],["usable",{"2":{"9":1}}],["using",{"0":{"21":1},"1":{"22":1},"2":{"7":1,"14":1,"17":1,"21":1,"30":2,"31":1,"92":1}}],["useful",{"2":{"30":1,"31":1}}],["uses",{"2":{"26":1}}],["use",{"2":{"11":1,"21":1,"22":1,"28":1,"31":1,"252":1}}],["used",{"2":{"3":1,"30":1,"50":1,"104":1,"105":1,"245":2,"249":1,"252":1,"254":1,"256":1,"263":1}}],["users",{"2":{"248":1}}],["userconfig",{"2":{"234":1}}],["user",{"2":{"2":2,"156":1,"194":1,"213":1,"225":1,"246":2,"249":2,"251":1,"270":1}}],["ubuntu",{"2":{"6":1}}],["urls",{"2":{"237":1,"332":1,"335":1,"337":1}}],["url",{"0":{"201":1,"208":1,"210":1},"1":{"202":1,"209":1,"211":1,"212":1},"2":{"2":1,"37":2,"103":1,"111":1,"196":1,"202":2,"205":1,"207":1,"208":1,"209":1,"210":1,"211":1,"212":1,"333":1}}],["lets",{"2":{"258":1}}],["letters",{"2":{"99":1}}],["lerp",{"0":{"185":1},"2":{"185":1}}],["leave",{"2":{"20":1}}],["learn",{"2":{"14":1,"17":1}}],["large",{"2":{"126":1}}],["launched",{"2":{"107":1,"115":1}}],["launchatstartup",{"0":{"107":1,"115":1},"2":{"115":1}}],["lague",{"2":{"53":1}}],["latest",{"2":{"28":1}}],["lt",{"0":{"87":1},"1":{"88":1,"89":1,"90":1,"91":1},"2":{"20":2,"22":1,"28":1,"86":1,"94":1,"96":1,"100":1,"191":1,"204":1,"273":1,"278":1,"281":1,"284":1,"291":1,"294":1,"298":1}}],["libraries",{"0":{"259":1},"2":{"259":1}}],["library",{"2":{"221":1,"233":1,"241":1,"265":1,"323":1,"345":1}}],["live",{"2":{"237":1,"265":1}}],["lives",{"2":{"9":1}}],["limits",{"2":{"156":1}}],["listening",{"2":{"286":1}}],["listener",{"2":{"277":1,"280":1,"286":1}}],["list",{"2":{"21":1,"50":1,"216":1,"217":1,"254":3}}],["like",{"2":{"2":1,"9":1,"20":1,"254":1}}],["link",{"2":{"225":1,"270":1}}],["links",{"0":{"38":1,"44":1,"51":1,"57":1,"64":1,"71":1,"78":1,"85":1,"226":1,"243":1,"271":1,"325":1,"347":1},"2":{"1":1,"268":1}}],["line",{"2":{"20":1,"89":1,"92":1,"229":1,"237":1}}],["linux",{"2":{"2":1,"6":1}}],["load",{"2":{"252":1}}],["loaded",{"2":{"252":2}}],["loadstylesheet",{"0":{"339":1},"1":{"340":1},"2":{"225":1,"270":1,"340":1}}],["loads",{"2":{"1":1}}],["low",{"2":{"156":1}}],["lower",{"2":{"99":1}}],["logicsim",{"2":{"56":2}}],["logic",{"0":{"52":1},"1":{"53":1,"54":1,"55":1,"56":1,"57":1},"2":{"53":3,"54":3,"56":1,"262":2}}],["look",{"2":{"20":2,"249":1}}],["localhost",{"2":{"25":1,"30":2,"31":2}}],["locally",{"2":{"24":1}}],["local",{"2":{"1":1,"25":2,"252":3}}],["failed",{"2":{"230":2}}],["false",{"2":{"107":1,"194":1,"286":2}}],["fullscreen",{"2":{"206":1}}],["functions",{"0":{"192":1,"215":1,"227":1,"231":1,"289":1,"301":1,"308":1,"318":1},"1":{"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"211":1,"212":1,"213":1,"214":1,"216":1,"217":1,"218":1,"219":1,"228":1,"229":1,"230":1,"232":1,"233":1,"234":1,"235":1,"236":1,"237":1,"238":1,"239":1,"290":1,"291":1,"292":1,"293":1,"294":1,"295":1,"296":1,"297":1,"298":1,"299":1,"300":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"309":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1,"319":1,"320":1,"321":1},"2":{"259":1,"323":1}}],["functionalites",{"2":{"253":1}}],["functionality",{"2":{"18":2,"156":1,"250":1,"259":1,"267":1}}],["functional",{"2":{"91":1}}],["function",{"2":{"20":1,"36":1,"43":1,"49":1,"50":1,"56":1,"62":1,"69":1,"76":1,"83":1,"214":2,"224":1,"232":1,"249":3,"269":1,"339":1}}],["fc",{"2":{"50":1,"96":1,"100":1}}],["feature",{"2":{"149":1,"249":1}}],["features",{"0":{"0":1},"1":{"1":1,"2":1,"3":1,"4":1},"2":{"0":1,"7":1,"8":1,"91":1,"265":1}}],["fetch",{"2":{"30":2}}],["first",{"2":{"252":1}}],["find",{"2":{"254":1}}],["finding",{"2":{"7":1}}],["finished",{"2":{"50":1}}],["filtering",{"2":{"28":2}}],["filter",{"2":{"28":1}}],["fileicons",{"0":{"335":1},"1":{"336":1},"2":{"225":1,"270":1,"335":2}}],["fileexplorer",{"2":{"22":2,"49":2,"239":1}}],["file",{"0":{"45":1},"1":{"46":1,"47":1,"48":1,"49":1,"50":1,"51":1},"2":{"2":1,"3":1,"20":1,"22":2,"30":2,"46":1,"47":3,"49":1,"63":2,"84":3,"92":1,"105":1,"138":1,"188":1,"189":1,"225":1,"229":1,"230":1,"237":1,"251":1,"255":1,"261":2,"267":2,"270":1}}],["files",{"2":{"1":1,"2":2,"22":3,"30":2,"31":1,"46":1,"50":1,"84":1,"92":2,"188":1,"189":1,"236":2,"239":1,"251":1,"335":1}}],["fi",{"2":{"8":1,"38":1,"44":1,"51":1,"57":1,"64":1,"71":1,"78":1,"85":1,"226":1,"243":1,"271":1,"325":1,"347":1}}],["figma",{"2":{"4":2}}],["following",{"2":{"86":1,"267":1}}],["foldericons",{"0":{"337":1},"1":{"338":1},"2":{"225":1,"270":1,"337":2}}],["folder",{"2":{"12":1,"255":1}}],["folders",{"2":{"1":1,"337":1}}],["footer",{"2":{"50":2}}],["found",{"2":{"25":1}}],["font",{"2":{"4":1}}],["foreground",{"2":{"288":1}}],["formatrelativetime",{"0":{"305":1},"1":{"306":1,"307":1}}],["formattime",{"0":{"302":1},"1":{"303":1,"304":1}}],["formatshortcut",{"0":{"216":1},"1":{"217":1,"218":1,"219":1}}],["formats",{"2":{"84":1,"216":1}}],["format",{"2":{"31":1,"164":1,"216":1,"302":1,"305":1}}],["for",{"2":{"2":2,"3":1,"9":1,"22":1,"28":2,"30":3,"31":3,"33":1,"40":1,"46":1,"50":1,"53":1,"59":1,"66":1,"73":1,"80":1,"90":1,"91":1,"104":1,"132":1,"188":1,"189":1,"194":1,"216":2,"221":1,"232":2,"236":3,"241":1,"245":1,"248":2,"249":1,"251":1,"253":1,"254":1,"255":1,"259":2,"265":2,"268":1,"277":1,"280":1,"323":1,"330":1,"331":1,"335":1,"337":1,"345":1}}],["from",{"2":{"1":2,"20":5,"22":1,"25":2,"36":2,"43":2,"49":2,"56":2,"62":2,"69":2,"76":2,"83":2,"210":1,"224":1,"235":2,"239":2,"252":2,"269":1,"286":2,"290":1,"292":1,"293":1,"297":1}}],["duplicate",{"2":{"297":1}}],["during",{"2":{"236":1,"252":1}}],["days",{"2":{"303":1,"306":1}}],["date",{"0":{"301":1,"305":1},"1":{"302":1,"303":1,"304":1,"305":1,"306":2,"307":2},"2":{"159":1,"301":1,"306":2}}],["data",{"0":{"283":1},"1":{"284":1,"285":1},"2":{"31":1,"252":5,"279":1,"282":1,"285":1}}],["dashes",{"2":{"99":1}}],["download",{"2":{"265":1}}],["do",{"2":{"251":1}}],["double",{"2":{"132":1}}],["doubleclickdelay",{"0":{"132":1},"2":{"225":1,"270":1}}],["docs",{"0":{"31":1},"2":{"31":4,"38":1,"44":1,"51":1,"57":1,"64":1,"71":1,"78":1,"85":1,"226":1,"243":1,"271":1,"325":1,"347":1}}],["document",{"2":{"20":1,"199":1}}],["documentation",{"2":{"14":2,"17":2,"28":1,"31":1}}],["does",{"2":{"25":1}}],["done",{"2":{"22":1}}],["don",{"2":{"20":2}}],["domain",{"2":{"237":1}}],["dom",{"2":{"20":1}}],["digits",{"2":{"315":1,"316":1}}],["digital",{"2":{"53":2}}],["dirname",{"2":{"235":1}}],["direction",{"2":{"127":1}}],["directories",{"2":{"25":1,"28":2}}],["directory",{"2":{"9":1,"25":2,"27":2,"28":1,"30":3,"31":2,"50":1,"77":1,"84":1,"233":1,"251":1,"255":2}}],["dispatch",{"2":{"283":1}}],["display",{"2":{"50":1,"98":1,"109":1,"245":1,"254":1}}],["displayed",{"2":{"50":1,"163":1}}],["displaying",{"2":{"2":1}}],["disables",{"2":{"84":1}}],["distance",{"2":{"177":1,"178":1,"184":1}}],["dist",{"2":{"25":2,"27":2,"28":2,"30":1,"31":1,"239":1}}],["discord",{"2":{"23":1,"38":1,"44":1,"51":1,"57":1,"64":1,"71":1,"78":1,"85":1,"226":1,"243":1,"271":1,"325":1,"347":1}}],["different",{"2":{"3":1,"20":1,"22":1,"59":1,"155":1,"247":1,"249":1,"259":1,"265":1}}],["dialog",{"2":{"3":1,"137":1,"225":1,"249":1,"270":1}}],["details",{"2":{"176":1,"177":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1}}],["determines",{"2":{"106":1,"107":1,"148":1,"163":1}}],["defined",{"2":{"251":1}}],["define",{"2":{"251":1}}],["defineconfig",{"2":{"235":2,"239":2}}],["defines",{"2":{"50":1,"104":1}}],["defaultwallpaper",{"0":{"333":1},"1":{"334":1},"2":{"225":1,"270":1}}],["defaultfileselectorsize",{"0":{"138":1},"2":{"225":1,"270":1}}],["defaultdialogsize",{"0":{"137":1},"2":{"225":1,"270":1}}],["defaulticondirection",{"0":{"127":1},"2":{"225":1,"270":1}}],["defaulticonsize",{"0":{"126":1},"2":{"225":1,"270":1}}],["default",{"0":{"334":1,"336":1,"338":1},"2":{"50":2,"70":1,"77":1,"84":1,"88":1,"89":1,"90":1,"98":1,"99":1,"101":1,"106":2,"107":1,"114":1,"126":2,"127":2,"132":1,"137":2,"138":2,"143":1,"148":1,"154":1,"155":1,"156":1,"163":1,"194":1,"225":12,"235":1,"239":1,"252":1,"270":12,"275":1,"303":1,"306":1,"333":1}}],["depth",{"2":{"268":1}}],["deployment",{"2":{"30":1}}],["deploying",{"2":{"30":1,"31":1}}],["deploys",{"2":{"27":1}}],["deploy",{"2":{"27":2}}],["dependencies",{"2":{"25":1,"28":1}}],["depending",{"2":{"20":1,"249":1}}],["demo",{"0":{"30":1},"2":{"27":1,"30":5,"38":1,"44":1,"51":1,"57":1,"64":1,"71":1,"78":1,"85":1,"226":1,"243":1,"263":1,"265":1,"271":1,"325":1,"347":1}}],["developer",{"2":{"251":1}}],["developers",{"2":{"246":1}}],["development",{"2":{"241":1,"259":1}}],["developing",{"2":{"8":1}}],["dev",{"0":{"240":1},"1":{"241":1,"242":1,"243":1},"2":{"25":1,"30":1,"31":1,"234":1,"235":1,"237":1,"239":1,"241":1,"242":3,"259":1,"265":1,"334":1}}],["devices",{"2":{"132":1,"154":1,"156":1}}],["device",{"2":{"24":1,"25":1}}],["description",{"0":{"102":1,"110":1},"2":{"20":1,"27":1,"28":1,"30":1,"31":1,"89":1,"93":1,"102":1,"110":2,"126":1,"127":1,"157":1,"166":1,"186":1,"192":1,"215":1,"227":1,"231":1,"272":1,"287":1,"289":1,"301":1,"308":1,"318":1,"326":1}}],["desktopconfigoptions",{"2":{"124":2}}],["desktopconfig",{"2":{"91":2,"92":1,"123":1,"225":1,"270":1}}],["desktop",{"2":{"1":1,"6":1,"20":3,"36":2,"43":2,"49":2,"56":2,"62":2,"69":2,"76":2,"83":2,"126":1,"127":1,"224":2,"225":1,"269":2,"270":1}}],["dedicated",{"2":{"2":1}}],["dynamically",{"2":{"30":1,"31":1,"339":1}}],["dynamic",{"2":{"2":1}}],["dropdowns",{"2":{"3":1}}],["draggable",{"2":{"2":1}}],["drivewindows",{"2":{"244":1}}],["drive",{"0":{"187":1,"255":1},"1":{"188":1,"189":1},"2":{"1":2,"2":2,"30":1,"92":1,"255":2}}],["wooden",{"2":{"263":1}}],["wordle",{"2":{"263":2}}],["written",{"2":{"221":1,"265":1}}],["writing",{"2":{"31":1}}],["write",{"2":{"2":1}}],["whole",{"2":{"176":1}}],["whatever",{"2":{"249":1}}],["what",{"2":{"104":1}}],["whether",{"2":{"106":1,"107":1,"114":1,"115":1,"148":1,"194":1}}],["when",{"2":{"50":2,"100":1,"246":1,"249":1,"256":1,"286":2}}],["whenever",{"2":{"27":1,"30":1}}],["where",{"2":{"12":1,"245":1,"254":2}}],["while",{"2":{"9":1,"249":1,"251":1}}],["which",{"2":{"2":2,"18":2,"30":1,"50":1,"84":1,"249":1}}],["wallpaper",{"2":{"332":1,"333":1,"334":1}}],["wallpapers",{"0":{"332":1},"2":{"1":1,"4":1,"92":2,"225":1,"270":1,"334":1}}],["warning",{"2":{"25":1,"99":1,"149":1,"156":1}}],["way",{"2":{"18":1,"248":1}}],["ways",{"2":{"9":1,"18":1}}],["want",{"2":{"8":1,"19":1,"20":2,"149":1}}],["was",{"2":{"7":1,"249":1}}],["website",{"2":{"2":1,"27":2,"236":1,"237":3,"248":1}}],["web",{"2":{"2":1,"6":1,"30":2,"31":1,"89":1,"92":1,"216":1,"221":1,"237":1,"239":1,"265":1}}],["well",{"2":{"1":1,"2":1,"18":1}}],["windowoptions",{"0":{"101":1},"2":{"95":1,"96":3,"101":2}}],["windowcontent",{"0":{"100":1,"116":1},"2":{"95":1,"96":1,"101":1}}],["windowprops",{"2":{"94":2}}],["window",{"0":{"37":1,"50":1,"63":1,"70":1,"77":1,"84":1},"2":{"100":1,"155":1,"208":1,"246":2,"253":1,"256":1}}],["windowsconfigoptions",{"2":{"152":2}}],["windowsconfig",{"2":{"91":2,"151":1,"225":1,"270":1}}],["windowsview",{"2":{"20":3,"36":2,"43":2,"49":2,"56":2,"62":2,"69":2,"76":2,"83":2,"224":2,"269":2}}],["windows",{"0":{"256":1},"2":{"2":1,"6":1,"154":1,"156":1,"225":2,"249":4,"256":1,"270":2}}],["will",{"2":{"20":2,"25":2,"30":3,"31":1,"50":2,"77":1,"84":1,"154":1,"156":1,"225":1,"237":2,"270":1,"286":1}}],["without",{"2":{"212":1,"258":1}}],["with",{"2":{"0":1,"1":2,"2":5,"6":1,"11":1,"14":1,"17":1,"19":1,"20":1,"30":1,"31":1,"84":1,"156":1,"173":1,"237":1,"246":2,"249":2,"251":1,"255":1,"256":1,"258":1,"343":1}}],["icon",{"2":{"103":1,"111":1,"201":1,"202":1}}],["iconurl",{"0":{"103":1,"111":1},"2":{"111":1}}],["icons",{"2":{"1":1,"4":1,"22":1,"92":3,"126":1,"127":1,"245":1,"330":1,"335":1,"337":1,"343":1}}],["ids",{"2":{"191":1}}],["id",{"0":{"99":1},"2":{"19":1,"95":1,"96":1,"99":2,"149":1,"225":1,"270":1,"330":1,"331":1}}],["imports",{"2":{"339":1}}],["importing",{"2":{"20":1}}],["import",{"2":{"20":5,"22":1,"25":2,"36":1,"43":1,"49":1,"56":1,"62":1,"69":1,"76":1,"83":1,"235":2,"239":2}}],["implements",{"2":{"11":1}}],["images",{"2":{"225":1,"270":1,"332":1}}],["image",{"0":{"189":1},"2":{"2":1,"189":1,"237":1,"333":1}}],["if",{"2":{"8":1,"20":1,"23":1,"25":1,"50":2,"149":1,"156":1,"225":1,"229":1,"270":1}}],["items",{"2":{"297":1}}],["itemtype",{"2":{"291":1,"292":2,"294":1,"295":1,"296":1,"298":1,"299":1,"300":1}}],["item",{"0":{"290":1},"1":{"291":1,"292":1},"2":{"290":1,"292":2,"293":1}}],["it",{"2":{"6":1,"22":2,"30":2,"104":1,"245":2,"248":1,"252":1,"253":1}}],["its",{"2":{"2":1,"25":1}}],["itself",{"2":{"2":1,"9":1}}],["individually",{"2":{"258":1}}],["indicators",{"2":{"254":2}}],["index",{"2":{"20":1}}],["indexable",{"2":{"2":1}}],["inverse",{"2":{"252":1}}],["included",{"2":{"261":1}}],["includes",{"2":{"254":1}}],["include",{"2":{"249":1}}],["info",{"2":{"225":1,"229":1,"230":3,"270":1}}],["information",{"2":{"28":1,"31":1,"230":4,"254":1,"268":1}}],["input",{"2":{"77":2,"197":1,"249":2,"286":2}}],["initialization",{"2":{"252":1}}],["initial",{"2":{"50":1,"70":1,"77":2,"84":1,"316":1}}],["instead",{"2":{"265":1}}],["instantiated",{"2":{"249":3}}],["instances",{"0":{"341":1},"1":{"342":1,"343":1},"2":{"246":1,"252":1}}],["installed",{"2":{"20":2,"25":1,"93":1,"250":1,"259":1}}],["installing",{"0":{"19":1},"2":{"258":1}}],["install",{"2":{"18":6,"19":3,"25":3,"34":1,"41":1,"47":1,"54":1,"60":1,"67":1,"74":1,"81":1,"222":1,"242":1,"248":2,"266":1,"324":1,"346":1}}],["installation",{"0":{"18":1,"25":1,"34":1,"41":1,"47":1,"54":1,"60":1,"67":1,"74":1,"81":1,"222":1,"242":1,"248":1,"266":1,"324":1,"346":1},"1":{"19":1}}],["inside",{"2":{"9":1,"22":1,"86":1,"100":1}}],["inspired",{"2":{"2":1,"4":1,"6":1,"53":1,"92":1,"342":1}}],["into",{"2":{"22":1,"25":2,"30":1,"191":1,"216":1,"247":1,"254":1,"267":1}}],["interface",{"2":{"342":1}}],["internet",{"2":{"33":1}}],["internal",{"0":{"10":1,"29":1},"1":{"11":1,"12":1,"30":1,"31":1},"2":{"9":3}}],["interact",{"2":{"92":1,"246":1,"256":1}}],["interactions",{"0":{"3":1},"2":{"255":1}}],["interacting",{"2":{"2":1}}],["interacts",{"2":{"2":1}}],["introduction",{"0":{"5":1},"1":{"6":1,"7":1,"8":1}}],["in",{"2":{"2":1,"4":2,"6":1,"9":1,"14":1,"17":1,"20":2,"21":1,"22":1,"25":1,"27":2,"28":1,"30":1,"31":1,"50":1,"84":1,"92":1,"93":1,"132":1,"143":1,"154":1,"163":1,"164":1,"208":1,"221":1,"225":1,"245":2,"248":1,"252":1,"261":1,"263":2,"265":1,"268":2,"270":1,"303":3,"306":1,"312":1}}],["isvalidinteger",{"0":{"319":1},"1":{"320":1,"321":1}}],["isvalidurl",{"0":{"196":1},"1":{"197":1,"198":1}}],["issues",{"2":{"7":1}}],["isolated",{"2":{"2":1}}],["is",{"2":{"0":1,"2":1,"6":1,"7":1,"9":2,"18":1,"22":1,"27":2,"30":3,"31":1,"33":1,"34":1,"40":1,"41":1,"46":1,"47":1,"50":2,"53":1,"54":1,"59":1,"60":1,"66":1,"67":1,"73":1,"74":1,"80":1,"81":1,"100":1,"104":1,"105":1,"106":1,"107":1,"114":1,"115":1,"148":1,"149":1,"155":1,"156":1,"163":1,"221":1,"225":1,"241":1,"245":2,"248":2,"249":4,"250":1,"251":2,"252":5,"254":2,"255":2,"257":2,"263":1,"265":1,"270":1,"286":1,"323":1,"345":1}}],["persistent",{"2":{"252":1}}],["plugin",{"2":{"236":2,"238":1}}],["placed",{"2":{"155":1}}],["pixels",{"2":{"143":1,"154":1,"225":1,"270":1}}],["pinnedbydefault",{"0":{"106":1,"114":1},"2":{"114":1}}],["pinned",{"2":{"1":1,"106":1,"114":1,"254":1}}],["png",{"2":{"92":2,"334":1}}],["pnpm",{"2":{"18":2,"19":1,"25":3,"26":1,"27":5,"28":5,"30":5,"31":4,"34":1,"41":1,"47":1,"54":1,"60":1,"67":1,"74":1,"81":1,"222":1,"242":1,"266":1,"324":1,"346":1}}],["point",{"2":{"255":1}}],["position",{"2":{"249":1}}],["possible",{"2":{"156":1}}],["populate",{"2":{"30":1}}],["power",{"2":{"20":1,"254":1}}],["powered",{"2":{"20":1,"36":1,"43":1,"49":1,"56":1,"62":1,"69":1,"76":1,"83":1,"224":1,"269":1}}],["purple",{"2":{"92":2,"334":1}}],["publish",{"2":{"28":1}}],["published",{"2":{"9":1,"257":1}}],["public",{"0":{"28":1}}],["put",{"2":{"12":1}}],["primary",{"0":{"261":1},"2":{"247":1,"258":1}}],["prints",{"2":{"229":1}}],["print",{"0":{"228":1},"1":{"229":1,"230":1},"2":{"228":1,"229":1,"230":4}}],["precision",{"0":{"162":1,"315":1},"1":{"163":1,"164":1,"165":1,"316":1,"317":1},"2":{"163":1,"316":1}}],["prepares",{"2":{"30":1}}],["preview",{"2":{"30":2,"31":2}}],["previously",{"2":{"20":1}}],["prerequisites",{"0":{"11":1,"14":1,"17":1}}],["prominently",{"2":{"249":1}}],["processes",{"2":{"246":1}}],["processed",{"2":{"230":2}}],["process",{"2":{"236":1,"252":2}}],["processing",{"2":{"230":2}}],["protocol",{"2":{"210":1,"212":1}}],["production",{"2":{"27":1}}],["properties",{"0":{"97":1,"120":1,"125":1,"131":1,"136":1,"142":1,"147":1,"153":1,"158":1,"170":1,"274":1,"329":1},"1":{"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"121":1,"126":1,"127":1,"132":1,"137":1,"138":1,"143":1,"148":1,"149":1,"154":1,"155":1,"156":1,"159":1,"171":1,"172":1,"173":1,"174":1,"275":1,"330":1,"331":1,"332":1,"333":1,"334":1,"335":1,"336":1,"337":1,"338":1,"339":1,"340":1},"2":{"86":1}}],["prop",{"2":{"22":1,"86":1}}],["props",{"0":{"87":1,"116":1},"1":{"88":1,"89":1,"90":1,"91":1},"2":{"21":1,"22":1,"116":1}}],["project",{"2":{"8":1,"9":1,"11":2,"14":3,"17":3,"20":2,"21":1,"22":1,"25":1,"27":1,"30":2,"31":1}}],["prozilla",{"0":{"30":1,"31":1,"32":1,"39":1,"45":1,"52":1,"58":1,"65":1,"72":1,"79":1,"220":1,"240":1,"264":1,"322":1,"344":1},"1":{"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"40":1,"41":1,"42":1,"43":1,"44":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"53":1,"54":1,"55":1,"56":1,"57":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"221":1,"222":1,"223":1,"224":1,"225":1,"226":1,"241":1,"242":1,"243":1,"265":1,"266":1,"267":1,"268":1,"269":1,"270":1,"271":1,"323":1,"324":1,"325":1,"345":1,"346":1,"347":1},"2":{"6":1,"8":1,"18":10,"19":4,"20":1,"22":1,"25":1,"28":1,"33":1,"34":7,"36":2,"40":1,"41":7,"43":2,"46":1,"47":7,"49":2,"53":1,"54":7,"56":2,"59":1,"60":7,"62":2,"66":1,"67":7,"69":2,"73":1,"74":7,"76":2,"80":1,"81":7,"83":2,"221":2,"222":3,"224":1,"235":1,"237":1,"239":2,"241":1,"242":3,"258":2,"259":5,"261":8,"262":1,"263":4,"265":3,"266":3,"267":9,"269":1,"286":1,"323":1,"324":3,"334":1,"345":1,"346":3}}],["prozillaosprops",{"2":{"225":1,"270":1}}],["prozillaos>",{"2":{"20":1,"36":1,"43":1,"49":1,"56":1,"62":1,"69":1,"76":1,"83":1,"224":1,"269":1}}],["prozillaos",{"0":{"8":1,"87":1},"1":{"88":1,"89":1,"90":1,"91":1},"2":{"0":1,"6":1,"7":1,"8":1,"9":2,"11":2,"12":1,"18":1,"20":5,"21":1,"22":3,"24":1,"25":5,"26":1,"33":1,"36":3,"40":1,"43":3,"46":1,"49":3,"53":1,"56":3,"59":1,"62":3,"66":1,"69":3,"73":1,"76":3,"80":1,"83":3,"86":2,"88":1,"92":5,"224":3,"232":1,"236":1,"237":1,"239":1,"241":1,"247":2,"250":2,"251":1,"252":1,"257":1,"258":2,"259":3,"263":1,"265":1,"269":3,"323":1,"345":1}}],["past",{"2":{"303":1}}],["passed",{"2":{"101":1,"245":1}}],["pass",{"2":{"86":1}}],["part",{"2":{"247":2}}],["parts",{"2":{"104":1,"155":1}}],["parameters",{"0":{"94":1,"96":1,"119":1,"124":1,"130":1,"135":1,"141":1,"146":1,"152":1,"163":1,"168":1,"194":1,"197":1,"200":1,"202":1,"206":1,"209":1,"211":1,"214":1,"217":1,"229":1,"233":1,"237":1,"273":1,"278":1,"279":1,"281":1,"282":1,"284":1,"285":1,"291":1,"292":1,"294":1,"295":1,"298":1,"299":1,"303":1,"306":1,"310":1,"313":1,"316":1,"320":1,"328":1},"2":{"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"177":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"203":1}}],["params",{"2":{"2":1,"50":1}}],["path",{"2":{"50":2,"77":2,"84":2,"233":2}}],["packages",{"0":{"28":1,"29":1,"257":1,"267":1},"1":{"30":1,"31":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1},"2":{"25":3,"28":6,"241":1,"250":1,"257":1,"258":1,"259":1,"265":2,"267":1,"323":1}}],["package",{"0":{"250":1},"2":{"9":1,"18":2,"20":1,"25":4,"26":1,"27":3,"28":4,"250":2,"257":1,"259":1,"265":1,"268":1}}],["palette",{"2":{"4":1}}],["pages",{"2":{"27":1}}],["page",{"2":{"2":1,"193":1,"216":1}}],["hub",{"2":{"253":1}}],["human",{"2":{"164":1,"216":1}}],["highlighting",{"2":{"84":1}}],["higher",{"2":{"25":1}}],["html",{"2":{"236":1}}],["htmlattributeanchortarget",{"2":{"209":1}}],["htmlelement",{"2":{"20":1}}],["https",{"2":{"25":1,"234":1,"334":1}}],["hooks",{"2":{"259":1,"267":1}}],["hours",{"2":{"165":3}}],["horizontal",{"2":{"127":1,"225":1,"270":1}}],["hot",{"2":{"30":1,"31":1}}],["host",{"2":{"24":1}}],["hosting",{"0":{"24":1},"1":{"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1}}],["hosted",{"2":{"7":1,"263":1}}],["how",{"2":{"14":2,"17":2,"20":1,"22":1,"24":1,"104":1,"163":1}}],["home",{"2":{"1":1,"50":1,"77":1,"84":1,"254":1}}],["height",{"0":{"143":1},"2":{"143":1,"225":2,"270":2}}],["helper",{"2":{"232":1}}],["help",{"2":{"23":1}}],["header",{"2":{"3":1,"249":1}}],["here",{"2":{"0":1,"21":1,"22":1,"286":1}}],["hard",{"2":{"30":1,"31":1}}],["happen",{"2":{"25":1}}],["hassle",{"2":{"258":1}}],["has",{"2":{"9":1,"14":1,"17":1}}],["have",{"2":{"2":1,"11":1,"14":1,"17":1,"23":1,"25":1,"99":1,"248":1,"249":2}}],["handle",{"2":{"1":1,"3":1}}],["object",{"2":{"252":1}}],["overall",{"2":{"251":1}}],["overview",{"2":{"0":1,"22":1,"257":1}}],["orange",{"2":{"92":2}}],["order",{"2":{"27":1,"28":1}}],["or",{"2":{"18":1,"23":1,"24":1,"25":1,"28":1,"30":1,"89":1,"114":1,"115":1,"208":1,"249":1,"250":1,"259":1,"303":1,"306":1}}],["output",{"2":{"28":2,"31":2}}],["out",{"2":{"14":1,"17":1,"20":1,"22":1,"23":1,"268":1}}],["os",{"0":{"30":1,"31":1,"32":1,"39":1,"45":1,"52":1,"58":1,"65":1,"72":1,"79":1,"220":1,"240":1,"264":1,"322":1,"344":1},"1":{"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"40":1,"41":1,"42":1,"43":1,"44":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"53":1,"54":1,"55":1,"56":1,"57":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"221":1,"222":1,"223":1,"224":1,"225":1,"226":1,"241":1,"242":1,"243":1,"265":1,"266":1,"267":1,"268":1,"269":1,"270":1,"271":1,"323":1,"324":1,"325":1,"345":1,"346":1,"347":1},"2":{"9":1,"18":10,"19":4,"20":1,"22":1,"25":1,"28":1,"33":1,"34":7,"36":2,"40":1,"41":7,"43":2,"46":1,"47":7,"49":2,"53":1,"54":7,"56":2,"59":1,"60":7,"62":2,"66":1,"67":7,"69":2,"73":1,"74":7,"76":2,"80":1,"81":7,"83":2,"104":1,"156":1,"221":1,"222":3,"224":1,"235":1,"237":1,"239":2,"241":1,"242":3,"258":2,"259":5,"261":8,"262":1,"263":4,"265":2,"266":3,"267":9,"269":1,"286":1,"323":1,"324":3,"334":1,"345":1,"346":3}}],["opposed",{"2":{"249":1}}],["option",{"2":{"149":1,"245":1}}],["options",{"0":{"37":1,"50":1,"63":1,"70":1,"77":1,"84":1,"205":1,"236":1},"1":{"206":1,"207":1,"237":1,"238":1,"239":1},"2":{"101":1,"118":1,"119":1,"123":1,"124":1,"129":1,"130":1,"134":1,"135":1,"140":1,"141":1,"145":1,"146":1,"151":1,"152":1,"205":1,"206":1,"237":1,"327":1,"328":1}}],["optional",{"2":{"2":1,"88":1,"89":1,"90":1,"91":1,"208":1,"249":1}}],["operating",{"2":{"6":2,"22":1,"89":1,"92":1,"221":1,"237":1,"239":1,"265":1}}],["opens",{"2":{"256":1}}],["openurl",{"0":{"208":1},"1":{"209":1}}],["opening",{"2":{"193":1}}],["opened",{"2":{"27":1,"30":1}}],["open",{"0":{"7":1},"2":{"2":1,"20":1,"22":1,"37":1,"50":1,"63":1,"70":1,"77":1,"84":2,"105":1,"208":1,"246":1}}],["own",{"2":{"2":1,"22":1,"24":2,"249":1}}],["other",{"2":{"2":1,"9":1,"21":1,"22":1,"25":1,"30":1,"84":1,"90":1,"104":1,"247":2,"249":1,"253":1,"265":1}}],["onfail",{"0":{"213":1},"1":{"214":1},"2":{"214":1}}],["onsuccess",{"0":{"213":1},"1":{"214":1},"2":{"214":1}}],["onselectionfinish",{"2":{"50":1}}],["onselectionchangeparams",{"2":{"50":1}}],["onselectionchange",{"2":{"50":1}}],["once",{"2":{"22":1}}],["only",{"2":{"18":1,"99":1,"149":1}}],["one",{"2":{"9":2,"267":1}}],["on",{"0":{"277":1},"1":{"278":1,"279":1},"2":{"2":1,"7":1,"14":1,"17":1,"20":1,"22":1,"23":1,"24":2,"25":1,"28":1,"86":1,"92":1,"154":1,"156":1,"205":1,"229":1,"249":1,"252":1,"263":1,"330":1,"331":1}}],["off",{"0":{"280":1},"1":{"281":1,"282":1},"2":{"315":1}}],["official",{"2":{"14":1,"17":1}}],["often",{"2":{"246":1}}],["of",{"2":{"0":1,"12":1,"19":1,"20":1,"21":1,"22":2,"25":2,"27":1,"28":3,"30":1,"31":1,"50":1,"59":1,"84":1,"88":1,"89":1,"98":1,"99":1,"102":1,"103":2,"104":1,"105":1,"109":1,"110":1,"111":2,"112":1,"113":1,"121":1,"126":1,"127":1,"137":1,"138":1,"143":1,"154":1,"155":1,"156":1,"163":1,"174":1,"176":1,"182":1,"188":1,"189":1,"194":1,"202":1,"216":2,"217":1,"225":3,"229":1,"233":2,"237":4,"241":2,"244":1,"246":1,"247":3,"249":1,"250":1,"251":2,"252":1,"254":3,"257":1,"258":2,"259":2,"268":1,"270":3,"275":1,"303":1,"306":1,"315":1,"316":1,"323":1,"332":2,"333":1,"335":2,"337":2}}],["split",{"2":{"254":1}}],["specified",{"2":{"30":1}}],["specific",{"2":{"0":1,"28":1}}],["square",{"2":{"184":1}}],["sqrdistance",{"0":{"184":1}}],["scalar",{"0":{"181":1},"2":{"181":1}}],["scale",{"0":{"181":1},"2":{"181":1}}],["script",{"2":{"27":2,"28":1,"30":4,"31":1}}],["scripts",{"0":{"26":1},"1":{"27":1,"28":1,"29":1,"30":1,"31":1},"2":{"26":1}}],["screenmargin",{"0":{"154":1},"2":{"225":1,"270":1}}],["screen",{"2":{"2":1,"154":1,"156":2,"225":1,"249":1,"270":1}}],["smaller",{"2":{"154":1,"156":1,"225":1,"270":1}}],["small",{"2":{"126":1}}],["skinoptions",{"2":{"328":2}}],["skins",{"0":{"344":1},"1":{"345":1,"346":1,"347":1},"2":{"259":2,"340":1,"345":2,"346":3}}],["skin",{"0":{"90":1},"2":{"90":2,"92":1,"225":2,"270":2,"327":1,"342":1,"343":1}}],["sizes",{"2":{"156":1}}],["size",{"2":{"126":1,"137":1,"138":1,"225":2,"270":2}}],["silly",{"2":{"92":1}}],["similar",{"2":{"249":1,"253":1}}],["simply",{"2":{"248":1}}],["simplest",{"2":{"9":1,"18":1}}],["simulator",{"2":{"262":1}}],["simulate",{"2":{"193":1}}],["simulating",{"2":{"53":1}}],["sim",{"0":{"52":1},"1":{"53":1,"54":1,"55":1,"56":1,"57":1},"2":{"53":2,"54":3,"56":1,"262":1}}],["sitemap",{"2":{"30":1,"237":1}}],["single",{"2":{"28":1,"50":1}}],["saying",{"2":{"25":1}}],["same",{"2":{"9":1}}],["src",{"2":{"25":1,"235":1}}],["sheet",{"2":{"339":1}}],["shell",{"2":{"73":1,"92":1,"261":1,"267":1}}],["shared",{"0":{"322":1},"1":{"323":1,"324":1,"325":1},"2":{"259":2,"286":1,"323":2,"324":3}}],["shpnpm",{"2":{"25":1}}],["shnpm",{"2":{"25":1,"34":1,"41":1,"47":1,"54":1,"60":1,"67":1,"74":1,"81":1,"222":1,"242":1,"266":1,"324":1,"346":1}}],["shgit",{"2":{"25":1}}],["shows",{"2":{"22":1}}],["shortened",{"2":{"246":1}}],["shortcut",{"0":{"216":1},"1":{"217":1,"218":1,"219":1},"2":{"216":1,"217":1}}],["shortcuts",{"2":{"3":1,"245":1}}],["short",{"2":{"20":1,"89":1}}],["should",{"2":{"20":1,"27":1}}],["svg",{"2":{"22":1,"92":3}}],["slightly",{"2":{"20":1}}],["sorted",{"2":{"247":1}}],["some",{"2":{"156":1,"205":1,"249":1}}],["something",{"2":{"20":1}}],["so",{"2":{"30":1,"31":1}}],["source",{"0":{"7":1},"2":{"2":1,"7":1,"12":1,"187":1,"190":1,"192":1,"215":1,"227":1,"231":1,"263":1,"265":1,"287":1,"289":1,"301":1,"308":1,"318":1}}],["sources",{"2":{"1":1}}],["success",{"2":{"229":1,"230":1}}],["sub",{"2":{"249":1}}],["subtract",{"0":{"180":1},"2":{"180":1}}],["subset",{"2":{"28":1,"250":1}}],["sure",{"2":{"20":1,"25":1}}],["supports",{"2":{"149":1,"245":1}}],["supporting",{"2":{"8":1}}],["support",{"0":{"8":1},"2":{"248":1}}],["suggesting",{"2":{"7":1}}],["suit",{"2":{"0":1}}],["stop",{"2":{"286":2}}],["stops",{"2":{"286":1}}],["stored",{"2":{"252":1}}],["store",{"2":{"30":1,"252":1}}],["stores",{"2":{"1":1}}],["storage",{"0":{"252":1},"2":{"1":2,"252":3}}],["streamevents>",{"2":{"286":1}}],["streamevents",{"2":{"286":2}}],["stream",{"2":{"286":5}}],["string>",{"2":{"225":2,"270":2,"273":1,"288":3,"328":2}}],["string",{"0":{"196":1,"213":1},"1":{"197":1,"198":1,"214":1},"2":{"37":1,"50":1,"77":2,"84":1,"88":1,"89":1,"96":3,"98":1,"99":1,"101":1,"102":1,"103":1,"104":1,"105":1,"109":1,"110":1,"111":1,"112":1,"113":1,"146":1,"149":1,"152":1,"155":2,"164":1,"188":1,"189":1,"191":1,"194":1,"196":1,"197":3,"200":1,"202":1,"204":2,"206":1,"207":1,"209":1,"210":1,"211":1,"212":1,"214":2,"217":1,"218":1,"225":14,"229":1,"233":2,"237":4,"252":1,"270":14,"273":1,"286":1,"288":1,"304":1,"307":1,"320":1,"328":10,"330":2,"331":2,"332":1,"333":1,"335":4,"337":4}}],["strictmode>",{"2":{"20":2}}],["styling",{"2":{"249":1}}],["styles",{"2":{"340":1}}],["stylesheets",{"2":{"90":1}}],["style",{"2":{"245":1,"339":1}}],["status",{"0":{"228":1},"1":{"229":1,"230":1},"2":{"229":3}}],["static",{"2":{"159":1,"173":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1}}],["statement",{"2":{"20":1}}],["staging",{"2":{"30":1,"236":1}}],["stageoptions",{"2":{"237":2}}],["stagesiteplugin",{"0":{"236":1},"1":{"237":1,"238":1,"239":1}}],["stages",{"2":{"30":1}}],["stage",{"2":{"27":2,"30":1}}],["standard",{"2":{"18":1,"46":1}}],["standalone",{"2":{"2":1,"206":1}}],["starts",{"2":{"286":1}}],["starting",{"2":{"230":2}}],["startdate",{"0":{"159":1}}],["startup",{"2":{"107":1,"115":1}}],["start",{"2":{"14":1,"17":1,"21":1,"22":1,"25":1,"27":2,"30":3,"31":3,"229":1,"230":1,"286":2}}],["started",{"0":{"16":1},"1":{"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1},"2":{"11":1,"258":1}}],["sends",{"2":{"286":1}}],["section",{"2":{"268":1}}],["secondary",{"0":{"262":1},"2":{"247":1}}],["seconds",{"2":{"165":1}}],["segments",{"0":{"254":1},"2":{"254":1}}],["serves",{"2":{"253":1}}],["server",{"2":{"24":1,"25":1,"30":3,"31":2}}],["seo",{"2":{"236":1}}],["see",{"2":{"234":1}}],["sebastian",{"2":{"53":1}}],["sepecific",{"2":{"28":1}}],["separately",{"2":{"259":1,"265":1}}],["separate",{"2":{"9":1,"22":1,"236":1,"245":1,"251":1,"263":1}}],["sequential",{"2":{"27":1,"28":1}}],["self",{"0":{"24":1},"1":{"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1}}],["selected",{"2":{"50":1}}],["selection",{"2":{"50":2}}],["selections",{"2":{"3":1}}],["selecting",{"2":{"28":1}}],["selectormode",{"2":{"50":1}}],["selector",{"2":{"28":1,"138":1,"225":1,"270":1}}],["selectors",{"2":{"3":1}}],["setviewporticon",{"0":{"201":1},"1":{"202":1}}],["setviewporttitle",{"0":{"199":1},"1":{"200":1}}],["setlaunchatstartup",{"0":{"115":1}}],["setpinnedbydefault",{"0":{"114":1}}],["setassociatedextensions",{"0":{"113":1}}],["setrole",{"0":{"112":1}}],["seticonurl",{"0":{"111":1},"2":{"22":1,"92":3}}],["setdescription",{"0":{"110":1},"2":{"22":1,"92":3}}],["setname",{"0":{"109":1},"2":{"22":1,"92":3,"239":3}}],["setup",{"0":{"12":1,"15":1,"36":1,"43":1,"49":1,"56":1,"62":1,"69":1,"76":1,"83":1,"224":1,"269":1}}],["set",{"2":{"9":1,"11":2,"14":2,"17":2,"109":1,"110":1,"111":1,"112":1,"113":1,"173":1}}],["settings",{"0":{"65":1,"251":1},"1":{"66":1,"67":1,"68":1,"69":1,"70":1,"71":1},"2":{"2":1,"66":2,"67":3,"69":3,"92":3,"251":3,"261":2,"267":2}}],["search",{"2":{"1":1,"2":1,"203":1,"254":2}}],["s",{"2":{"2":1,"6":1,"22":1,"28":1,"30":1,"92":1,"156":1,"213":1,"225":1,"253":2,"270":1}}],["syntax",{"2":{"84":1}}],["symbolic",{"2":{"1":1}}],["systems",{"2":{"221":1,"265":1}}],["systemname",{"0":{"88":1},"2":{"225":1,"270":1}}],["systemname=",{"2":{"36":1,"43":1,"49":1,"56":1,"62":1,"69":1,"76":1,"83":1,"224":1,"269":1}}],["system",{"0":{"1":1},"2":{"1":1,"2":1,"3":1,"6":2,"20":1,"22":1,"88":1,"89":2,"92":1,"194":1,"205":1,"237":1,"239":1,"247":1,"255":1}}],["center",{"2":{"249":1}}],["certain",{"2":{"156":1,"245":1,"315":1}}],["crucial",{"2":{"247":1}}],["creating",{"2":{"232":1}}],["createroot",{"2":{"20":1}}],["create",{"2":{"9":1,"12":1,"18":1,"28":1}}],["cname",{"2":{"237":1}}],["ctrl+a",{"2":{"219":1}}],["current",{"2":{"162":1,"164":1,"203":1,"208":1}}],["currently",{"2":{"149":1,"248":2}}],["customize",{"2":{"92":1}}],["customizing",{"2":{"2":1}}],["customizable",{"2":{"1":2,"259":1}}],["custom",{"0":{"9":1},"1":{"10":1,"11":1,"12":1,"13":1,"14":1,"15":1},"2":{"1":1,"2":1,"4":3,"9":1,"12":1,"18":1}}],["css",{"2":{"143":1,"154":1,"225":1,"270":1,"340":1}}],["cd",{"2":{"25":1}}],["clamp",{"0":{"309":1},"1":{"310":1,"311":1},"2":{"309":1}}],["class",{"0":{"93":1,"117":1,"122":1,"128":1,"133":1,"139":1,"144":1,"150":1,"157":1,"166":1,"272":1,"326":1},"1":{"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"118":1,"119":1,"120":1,"121":1,"123":1,"124":1,"125":1,"126":1,"127":1,"129":1,"130":1,"131":1,"132":1,"134":1,"135":1,"136":1,"137":1,"138":1,"140":1,"141":1,"142":1,"143":1,"145":1,"146":1,"147":1,"148":1,"149":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"177":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"273":1,"274":1,"275":1,"276":1,"277":1,"278":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1,"286":1,"327":1,"328":1,"329":1,"330":1,"331":1,"332":1,"333":1,"334":1,"335":1,"336":1,"337":1,"338":1,"339":1,"340":1,"341":1,"342":1,"343":1},"2":{"21":1,"246":1,"252":1,"286":2}}],["closed",{"2":{"249":1}}],["closeviewport",{"0":{"193":1},"1":{"194":1}}],["closing",{"2":{"193":1,"194":1}}],["clone",{"0":{"174":1},"2":{"25":2,"174":1,"263":2}}],["clipboard",{"2":{"213":1}}],["clicked",{"2":{"249":1}}],["click",{"2":{"132":1}}],["clicks",{"2":{"132":2}}],["client",{"2":{"20":1}}],["clear",{"2":{"27":1}}],["changing",{"2":{"199":1,"201":1}}],["changes",{"2":{"30":1,"31":1,"50":1,"114":1,"115":1}}],["changeset",{"2":{"28":1}}],["change",{"2":{"20":1,"199":1,"201":1}}],["choosing",{"2":{"20":1}}],["check",{"2":{"14":1,"17":1,"22":1,"268":1}}],["categories",{"2":{"247":1}}],["categorization",{"0":{"247":1}}],["categorizationinstallationmodalpackagesettingsstoragetaskbarsegmentsvirtual",{"2":{"244":1}}],["case",{"2":{"99":1}}],["callback",{"0":{"277":1,"280":1},"1":{"278":1,"279":1,"281":1,"282":1},"2":{"249":3,"279":1,"282":1}}],["called",{"2":{"50":2,"249":1,"286":1}}],["calculations",{"2":{"40":1}}],["calculator",{"0":{"39":1},"1":{"40":1,"41":1,"42":1,"43":1,"44":1},"2":{"2":1,"40":1,"41":3,"43":3,"261":2,"267":2}}],["caution",{"2":{"20":1}}],["can",{"2":{"0":1,"1":1,"2":1,"3":2,"7":1,"11":1,"12":1,"18":1,"20":1,"22":1,"30":2,"31":1,"50":1,"93":1,"104":1,"245":1,"249":2,"250":1,"254":3,"259":1,"265":1}}],["copytoclipboard",{"0":{"213":1},"1":{"214":1}}],["copy",{"2":{"27":1,"213":1}}],["correctly",{"2":{"25":1}}],["correct",{"2":{"20":1}}],["core",{"0":{"220":1},"1":{"221":1,"222":1,"223":1,"224":1,"225":1,"226":1},"2":{"18":7,"34":4,"36":1,"41":4,"43":1,"47":4,"49":1,"54":4,"56":1,"60":4,"62":1,"67":4,"69":1,"74":4,"76":1,"81":4,"83":1,"221":1,"222":3,"224":1,"258":1,"259":2,"267":2}}],["connection",{"2":{"254":1}}],["converted",{"2":{"252":1}}],["confuse",{"2":{"251":1}}],["confirmation",{"2":{"194":1,"249":1}}],["configs",{"2":{"251":2}}],["configoptions",{"2":{"91":2}}],["config=",{"2":{"36":1,"43":1,"49":1,"56":1,"62":1,"69":1,"76":1,"83":1}}],["configure",{"2":{"86":1}}],["configured",{"2":{"27":1,"30":1}}],["configuring",{"2":{"66":1}}],["configurations",{"2":{"22":3,"90":1,"91":1,"232":1}}],["configuration",{"0":{"86":1,"225":1,"270":1},"1":{"87":1,"88":1,"89":1,"90":1,"91":1,"92":1},"2":{"20":1,"21":1}}],["config",{"0":{"91":1},"2":{"22":1,"30":1,"86":1,"225":1,"231":1,"234":1,"235":1,"239":1,"251":1,"270":1}}],["congratulations",{"2":{"22":1}}],["console",{"0":{"227":1},"1":{"228":1,"229":1,"230":1},"2":{"227":1,"228":1,"229":1}}],["constains",{"2":{"250":1}}],["constants",{"0":{"186":1,"287":1},"1":{"187":1,"188":1,"189":1,"190":1,"191":1,"288":1}}],["constructor",{"0":{"95":1,"118":1,"123":1,"129":1,"134":1,"140":1,"145":1,"151":1,"167":1,"327":1},"1":{"96":1,"119":1,"124":1,"130":1,"135":1,"141":1,"146":1,"152":1,"168":1,"169":1,"328":1}}],["const",{"2":{"20":1,"187":1,"190":1,"286":2,"287":1}}],["consider",{"2":{"8":1}}],["contents",{"2":{"244":1}}],["context",{"2":{"3":1,"245":1,"249":1}}],["controlled",{"2":{"251":2}}],["control",{"2":{"219":1}}],["contribute",{"2":{"7":1}}],["containing",{"2":{"63":1,"258":1}}],["contains",{"2":{"18":2,"99":1,"345":1}}],["continue",{"2":{"8":1}}],["colors",{"2":{"288":2}}],["color",{"2":{"4":1}}],["combination",{"2":{"216":1}}],["combines",{"2":{"265":1,"267":1}}],["combine",{"2":{"27":1}}],["comprises",{"2":{"27":2}}],["compile",{"2":{"25":1,"30":1,"31":1}}],["compiled",{"2":{"25":1}}],["components",{"2":{"20":1,"248":1,"249":2,"256":1,"259":1,"267":1}}],["component",{"2":{"20":2,"22":1,"50":1,"86":1,"100":1,"101":1,"116":1,"221":1,"245":1,"246":1,"265":1}}],["comma",{"2":{"315":1,"316":1}}],["command",{"2":{"19":1,"25":1,"92":1}}],["commands",{"2":{"2":1,"92":2,"239":1}}],["community",{"0":{"23":1},"2":{"23":1}}],["com",{"2":{"8":1,"25":1}}],["comes",{"2":{"0":1}}],["code",{"0":{"188":1},"2":{"2":1,"7":1,"12":1,"188":1,"225":1,"263":1,"270":1}}],["tsfunction",{"2":{"340":1}}],["tsformatshortcut",{"2":{"219":1}}],["tsimport",{"2":{"286":1}}],["tsinterface",{"2":{"91":1,"96":1,"101":1,"119":1,"124":1,"130":1,"135":1,"141":1,"146":1,"152":1,"206":1,"237":1,"288":1,"328":1,"335":1,"337":1}}],["tstype",{"2":{"273":1}}],["tstimemanager",{"2":{"165":1}}],["tsprint",{"2":{"230":1}}],["ts",{"2":{"187":1,"190":1,"192":1,"215":1,"227":1,"231":1,"235":3,"239":2,"287":1,"289":1,"301":1,"308":1,"318":1}}],["tsvector2",{"2":{"173":1}}],["tsnew",{"2":{"169":1,"176":1}}],["tsxinterface",{"2":{"225":1,"270":1}}],["tsximport",{"2":{"22":1,"36":1,"43":1,"49":1,"56":1,"62":1,"69":1,"76":1,"83":1,"224":1,"269":1}}],["tsx",{"2":{"20":5,"21":1,"22":2,"37":1,"50":1,"63":1,"70":1,"77":1,"84":1,"92":1}}],["types",{"2":{"335":1,"337":1}}],["typescript",{"2":{"7":1,"14":2,"17":2,"30":1,"221":1,"265":1}}],["typeof",{"2":{"286":1}}],["type",{"0":{"94":1,"273":1,"278":1,"281":1,"284":1,"291":1,"294":1,"298":1},"2":{"88":1,"89":1,"90":1,"91":1,"96":4,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"109":2,"110":2,"111":2,"112":2,"113":2,"114":2,"115":2,"116":2,"119":1,"121":1,"124":1,"126":1,"127":1,"130":1,"132":1,"135":1,"137":1,"138":1,"141":1,"143":1,"146":1,"148":1,"149":1,"152":1,"154":1,"155":1,"156":1,"159":1,"163":1,"164":1,"168":2,"171":1,"172":1,"173":1,"174":1,"176":1,"177":3,"178":2,"179":3,"180":3,"181":3,"182":2,"183":2,"184":3,"185":4,"188":1,"189":1,"191":1,"194":2,"197":1,"198":1,"200":1,"202":1,"204":1,"206":1,"207":1,"209":2,"211":1,"212":1,"214":3,"217":1,"218":1,"229":3,"233":2,"234":1,"237":1,"238":1,"275":1,"279":2,"282":2,"285":2,"288":1,"292":2,"295":1,"296":1,"299":1,"300":1,"303":3,"304":1,"306":3,"307":1,"310":3,"311":1,"313":2,"314":1,"316":2,"317":1,"320":1,"321":1,"328":1,"330":1,"331":1,"332":1,"333":1,"335":1,"337":1,"339":1}}],["txt",{"2":{"30":1,"230":2}}],["transforms",{"2":{"191":1}}],["tracking",{"2":{"148":1,"149":3,"225":2,"270":2}}],["trackingconfigoptions",{"2":{"146":2}}],["trackingconfig",{"2":{"91":2,"145":1,"225":1,"270":1}}],["true",{"2":{"106":1,"148":1,"225":1,"229":1,"230":2,"270":1,"286":1}}],["tree",{"2":{"30":1}}],["tries",{"2":{"25":1}}],["trigger",{"2":{"2":1,"27":1}}],["try",{"2":{"25":1}}],["title",{"0":{"199":1},"1":{"200":1},"2":{"155":1,"199":2,"200":2,"249":1}}],["titleseparator",{"0":{"155":1},"2":{"225":1,"270":1}}],["titles",{"2":{"2":1}}],["timemanager",{"2":{"165":2}}],["time",{"0":{"302":1},"1":{"303":1,"304":1},"2":{"50":1,"132":1,"161":1,"163":1,"302":1,"303":3,"305":1}}],["tip",{"2":{"22":1,"28":1}}],["t",{"0":{"185":1},"2":{"20":2,"185":1}}],["two",{"2":{"9":1,"132":1,"179":1,"180":1,"184":1,"185":1}}],["test",{"2":{"25":1}}],["technical",{"2":{"9":1}}],["texteditor",{"2":{"83":2,"239":1}}],["text",{"0":{"79":1},"1":{"80":1,"81":1,"82":1,"83":1,"84":1,"85":1},"2":{"2":1,"80":2,"81":3,"83":1,"84":2,"213":1,"225":2,"261":2,"267":2,"270":2,"286":2}}],["terminal",{"0":{"72":1},"1":{"73":1,"74":1,"75":1,"76":1,"77":1,"78":1},"2":{"2":1,"73":2,"74":3,"76":3,"92":1,"239":1,"261":2,"267":2}}],["though",{"2":{"249":1}}],["those",{"2":{"20":1,"132":1}}],["than",{"2":{"156":1,"225":1,"270":1}}],["that",{"2":{"0":1,"1":2,"2":4,"3":2,"6":1,"11":1,"20":1,"22":2,"27":3,"30":1,"50":2,"77":1,"84":1,"92":1,"99":1,"100":1,"101":1,"105":1,"154":1,"155":1,"191":1,"237":1,"246":1,"247":2,"248":1,"249":5,"254":1,"259":1,"286":1,"339":1,"345":1}}],["this",{"2":{"8":1,"11":1,"14":1,"17":1,"20":1,"24":1,"25":2,"27":2,"30":2,"34":1,"41":1,"47":1,"54":1,"60":1,"67":1,"74":1,"81":1,"98":1,"99":1,"100":1,"102":1,"103":1,"104":1,"105":1,"109":2,"110":2,"111":2,"112":2,"113":2,"114":2,"115":2,"149":1,"156":1,"174":1,"176":2,"177":1,"178":1,"216":1,"236":1,"237":1,"245":1,"249":1,"254":3,"257":1,"258":1,"265":1,"286":3}}],["they",{"2":{"249":1}}],["their",{"2":{"25":2,"28":1,"249":1,"263":1}}],["these",{"2":{"22":1,"156":2,"225":1,"247":1,"251":1,"259":1,"261":1,"263":1,"265":1,"270":1}}],["then",{"2":{"22":1,"27":1,"252":1}}],["theme",{"2":{"191":2}}],["themes",{"0":{"190":1,"191":1},"1":{"191":1},"2":{"190":1}}],["them",{"2":{"22":2,"93":1,"154":1}}],["therefore",{"2":{"9":1}}],["there",{"2":{"9":1,"18":1,"30":1,"31":1,"248":2}}],["the",{"2":{"1":1,"2":3,"6":1,"7":1,"9":5,"12":1,"14":2,"17":2,"18":6,"19":3,"20":2,"21":1,"22":4,"23":1,"25":2,"26":1,"27":8,"28":3,"30":6,"31":3,"33":1,"50":4,"77":1,"84":3,"86":3,"88":1,"89":1,"92":2,"93":1,"98":1,"99":1,"100":1,"101":1,"103":1,"104":1,"106":1,"107":1,"109":1,"110":1,"111":2,"112":1,"113":1,"116":1,"126":2,"127":2,"132":1,"143":1,"149":1,"154":3,"156":2,"161":1,"162":1,"163":1,"164":1,"176":1,"177":1,"178":1,"182":1,"184":1,"193":1,"194":2,"195":1,"199":1,"201":1,"202":1,"203":1,"207":1,"208":1,"210":1,"213":1,"225":2,"228":1,"229":3,"236":1,"237":4,"241":1,"245":1,"246":5,"247":3,"248":2,"249":8,"250":1,"251":4,"252":10,"253":1,"254":3,"255":4,"256":1,"257":1,"258":1,"259":1,"261":1,"263":1,"267":1,"268":3,"270":2,"286":5,"292":1,"297":1,"303":2,"306":1,"315":1,"316":1,"342":1}}],["take",{"2":{"245":1,"249":1}}],["target",{"0":{"208":1},"1":{"209":1},"2":{"208":1,"209":1}}],["table",{"2":{"244":1}}],["tab",{"2":{"70":2}}],["tags",{"2":{"199":1,"201":1}}],["tagline",{"0":{"89":1},"2":{"225":1,"270":1}}],["tagline=",{"2":{"36":1,"43":1,"49":1,"56":1,"62":1,"69":1,"76":1,"83":1,"224":1,"269":1}}],["tag",{"2":{"20":1,"89":1,"237":1}}],["taskbarconfigoptions",{"2":{"141":2}}],["taskbarconfig",{"2":{"91":2,"92":1,"140":1,"225":1,"270":1}}],["taskbar",{"0":{"253":1},"1":{"254":1},"2":{"1":1,"20":3,"36":2,"43":2,"49":2,"56":2,"62":2,"69":2,"76":2,"83":2,"143":1,"224":2,"225":2,"253":2,"254":1,"269":2,"270":2}}],["tailor",{"2":{"0":1}}],["together",{"2":{"179":1,"245":1}}],["toggles",{"2":{"3":1}}],["touch",{"2":{"132":1}}],["tools",{"0":{"240":1},"1":{"241":1,"242":1,"243":1},"2":{"235":1,"241":2,"242":3,"259":2}}],["tool",{"2":{"92":1}}],["to",{"2":{"0":1,"2":4,"8":1,"9":3,"11":2,"14":3,"17":3,"18":2,"19":1,"20":4,"21":3,"22":4,"23":1,"24":1,"25":2,"26":1,"27":3,"28":4,"30":4,"31":4,"34":1,"37":1,"41":1,"47":1,"50":1,"54":1,"60":1,"63":1,"67":1,"70":1,"74":1,"81":1,"84":2,"86":2,"92":1,"93":1,"101":1,"105":1,"132":2,"149":1,"173":1,"176":1,"194":1,"213":1,"216":1,"228":1,"229":2,"237":1,"245":2,"246":5,"248":4,"249":3,"252":4,"253":2,"254":1,"256":1,"257":2,"263":1,"265":1,"286":1,"292":1,"305":1,"315":1}}],["ton",{"2":{"0":1}}],["after",{"2":{"315":1,"316":1}}],["ago",{"2":{"303":1,"306":1}}],["amount",{"2":{"303":1,"306":1,"315":1,"316":1}}],["automatically",{"2":{"236":1}}],["apis",{"2":{"216":1}}],["api",{"2":{"30":1}}],["appviteconfig",{"0":{"232":1},"1":{"233":1,"234":1,"235":1},"2":{"235":2}}],["appnames",{"0":{"331":1},"2":{"225":1,"270":1}}],["appicons",{"0":{"330":1},"2":{"225":1,"270":1}}],["appid",{"2":{"206":1}}],["applies",{"2":{"132":1}}],["application",{"0":{"246":1},"1":{"247":1,"248":1},"2":{"2":1,"12":1,"33":1,"34":1,"40":1,"41":1,"46":1,"47":1,"50":1,"53":1,"54":1,"59":1,"60":1,"66":1,"67":1,"73":1,"74":1,"80":1,"81":1,"98":1,"99":1,"102":1,"103":1,"105":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"230":4,"236":1,"248":1,"250":1}}],["applications",{"0":{"2":1,"260":1,"261":1,"262":1,"263":1},"1":{"261":1,"262":1,"263":1},"2":{"2":2,"9":1,"18":1,"20":1,"21":2,"93":1,"121":1,"246":1,"247":7,"248":1,"253":1,"254":3,"256":1,"258":1,"261":1,"263":1}}],["appprops",{"2":{"94":1,"96":1,"100":1,"116":1}}],["approach",{"2":{"9":2}}],["app",{"0":{"9":1,"10":1,"13":1,"246":1},"1":{"10":1,"11":2,"12":2,"13":1,"14":2,"15":2,"247":1,"248":1},"2":{"2":3,"9":5,"19":6,"20":6,"22":2,"36":1,"43":1,"49":1,"50":1,"56":1,"62":1,"69":1,"76":1,"77":1,"83":1,"84":3,"95":1,"98":1,"99":2,"100":2,"104":1,"106":1,"107":1,"116":1,"119":2,"121":1,"224":1,"225":1,"231":1,"244":1,"246":2,"254":1,"256":1,"261":7,"262":1,"263":1,"267":7,"269":1,"270":1,"330":2,"331":2}}],["appearance",{"2":{"2":1}}],["appsconfigoptions",{"2":{"119":2}}],["appsconfig",{"2":{"21":2,"22":1,"36":2,"43":2,"49":2,"56":2,"62":2,"69":2,"76":2,"83":2,"91":2,"92":1,"93":1,"118":1,"225":1,"237":1,"239":2,"248":1,"270":1}}],["apps",{"0":{"19":1,"21":1,"121":1},"1":{"22":1},"2":{"1":1,"2":2,"18":2,"19":1,"21":1,"22":1,"36":2,"43":2,"49":2,"56":2,"62":2,"69":2,"76":2,"83":2,"92":3,"93":1,"104":1,"225":2,"232":1,"246":2,"248":2,"270":2}}],["at",{"2":{"27":1,"30":2,"31":2,"107":1,"115":1,"249":2}}],["ahead",{"2":{"22":1}}],["above",{"2":{"268":1}}],["about",{"0":{"6":1,"33":1,"40":1,"46":1,"53":1,"59":1,"66":1,"73":1,"80":1,"221":1,"241":1,"265":1,"323":1,"345":1},"2":{"14":1,"17":1,"28":1,"268":1}}],["abstract",{"2":{"92":2}}],["able",{"2":{"20":1}}],["array",{"0":{"289":1,"290":1,"293":1,"297":1},"1":{"290":1,"291":2,"292":2,"293":1,"294":2,"295":2,"296":2,"297":1,"298":2,"299":2,"300":2},"2":{"93":1,"105":1,"121":1,"188":1,"189":1,"237":1,"248":1,"289":1,"290":1,"292":2,"293":1,"295":1,"297":2,"299":1,"332":1}}],["are",{"2":{"9":1,"18":1,"20":1,"246":1,"247":3,"248":1,"249":4,"251":2,"254":1,"256":1,"259":1,"261":1,"263":1}}],["arguments",{"2":{"2":1,"249":1}}],["awesome",{"2":{"4":1,"8":1}}],["access",{"2":{"253":1,"254":1,"255":1,"265":1}}],["accordingly",{"2":{"28":1}}],["accompanied",{"2":{"1":1}}],["active",{"2":{"249":1,"254":1}}],["action",{"2":{"27":1,"245":1}}],["actionsapplication",{"2":{"244":1}}],["actions",{"0":{"245":1},"2":{"3":1,"245":1}}],["added",{"2":{"237":1}}],["add",{"0":{"179":1},"2":{"18":6,"19":3,"21":1,"22":1,"34":2,"41":2,"47":2,"54":2,"60":2,"67":2,"74":2,"81":2,"179":1,"222":2,"242":2,"248":1,"266":2,"277":1,"324":2,"346":2}}],["adding",{"2":{"8":1,"93":1}}],["advanced",{"2":{"3":1}}],["adapts",{"2":{"2":1}}],["always",{"2":{"156":1,"225":1,"270":1}}],["alternatively",{"2":{"18":1}}],["allowed",{"2":{"316":1}}],["allow",{"2":{"303":1,"306":1}}],["allowaffixes",{"0":{"302":1,"305":1},"1":{"303":1,"304":1,"306":1,"307":1},"2":{"303":1,"306":1}}],["allows",{"2":{"2":2,"92":1,"246":1}}],["all",{"2":{"18":1,"28":1,"30":2,"247":1,"249":1,"255":1,"257":1,"258":2,"297":1}}],["already",{"2":{"11":1,"14":1,"17":1}}],["also",{"2":{"2":1,"9":1,"14":1,"17":1,"132":1,"245":1,"248":1,"249":1,"265":1}}],["ansi",{"0":{"287":1,"288":1},"1":{"288":1},"2":{"287":1,"288":2}}],["any",{"2":{"286":1}}],["analytics",{"2":{"149":2,"225":1,"270":1}}],["another",{"2":{"25":1,"177":1,"178":1}}],["an",{"2":{"2":2,"9":2,"22":1,"25":1,"105":1,"121":1,"188":1,"189":1,"208":1,"248":1,"252":1,"257":1,"277":1,"280":1,"290":2,"293":1,"297":1}}],["and",{"2":{"1":2,"2":6,"6":2,"7":2,"8":1,"9":2,"18":1,"20":1,"22":5,"25":3,"27":1,"28":3,"30":4,"31":2,"84":1,"90":1,"91":1,"92":4,"99":1,"104":1,"105":1,"154":1,"177":1,"178":1,"199":1,"236":1,"245":3,"246":1,"249":3,"251":1,"252":1,"254":4,"255":2,"256":1,"258":1,"259":2,"263":1,"267":1,"286":1,"297":1,"309":1,"312":1,"323":1}}],["ask",{"2":{"194":1}}],["associated",{"2":{"113":1}}],["associatedextensions",{"0":{"105":1}}],["assumes",{"2":{"11":1,"14":1,"17":1}}],["assets",{"0":{"4":1},"2":{"22":1,"90":1,"92":5,"334":1}}],["assembling",{"2":{"3":1}}],["as",{"2":{"1":2,"2":2,"3":1,"9":1,"18":2,"20":1,"22":1,"30":1,"31":1,"116":1,"132":1,"156":3,"249":4,"253":1,"286":1}}],["a",{"0":{"9":1},"1":{"10":1,"11":1,"12":1,"13":1,"14":1,"15":1},"2":{"0":2,"1":1,"2":1,"6":3,"9":4,"11":2,"12":1,"14":3,"17":3,"20":2,"21":1,"22":1,"25":3,"27":1,"28":3,"30":3,"31":1,"33":1,"40":1,"46":1,"50":1,"53":1,"59":1,"63":1,"66":1,"73":1,"80":1,"92":1,"99":2,"100":1,"116":1,"132":1,"137":1,"138":1,"155":2,"164":1,"173":1,"174":1,"181":1,"182":1,"183":1,"191":1,"193":1,"196":1,"205":1,"208":1,"210":1,"216":3,"217":1,"219":1,"221":1,"225":2,"229":1,"236":2,"237":1,"241":1,"245":4,"246":3,"247":1,"249":5,"250":3,"251":1,"252":2,"253":1,"254":3,"255":2,"256":1,"258":1,"263":1,"265":1,"270":2,"275":1,"286":1,"293":1,"302":1,"305":1,"309":3,"312":4,"315":2,"323":1,"342":1,"343":1,"345":1}}]],"serializationVersion":2}';export{e as default}; diff --git a/docs/assets/chunks/VPLocalSearchBox.Cjcn55aX.js b/docs/assets/chunks/VPLocalSearchBox.Cjcn55aX.js new file mode 100644 index 00000000..a802d55a --- /dev/null +++ b/docs/assets/chunks/VPLocalSearchBox.Cjcn55aX.js @@ -0,0 +1,7 @@ +var Nt=Object.defineProperty;var Ft=(a,e,t)=>e in a?Nt(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t;var Re=(a,e,t)=>Ft(a,typeof e!="symbol"?e+"":e,t);import{V as Ot,p as se,h as pe,ah as Xe,ai as Rt,aj as Ct,q as je,ak as Mt,d as At,D as ye,al as et,am as Lt,an as Dt,s as zt,ao as Pt,v as Ce,P as ue,O as we,ap as jt,aq as Vt,W as $t,R as Bt,$ as Wt,o as q,b as Kt,j as S,a0 as Jt,k as D,ar as Ut,as as qt,at as Gt,c as Y,n as tt,e as xe,C as st,F as nt,a as de,t as he,au as Ht,av as it,aw as Qt,a7 as Yt,ad as Zt,ax as Xt,_ as es}from"./framework.BAnOA2-A.js";import{u as ts,c as ss}from"./theme.BUR9ctRq.js";const ns={root:()=>Ot(()=>import("./@localSearchIndexroot.48Ia0OH7.js"),[])};/*! +* tabbable 6.2.0 +* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE +*/var vt=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],Ie=vt.join(","),mt=typeof Element>"u",ie=mt?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,ke=!mt&&Element.prototype.getRootNode?function(a){var e;return a==null||(e=a.getRootNode)===null||e===void 0?void 0:e.call(a)}:function(a){return a==null?void 0:a.ownerDocument},Ne=function a(e,t){var s;t===void 0&&(t=!0);var n=e==null||(s=e.getAttribute)===null||s===void 0?void 0:s.call(e,"inert"),r=n===""||n==="true",i=r||t&&e&&a(e.parentNode);return i},is=function(e){var t,s=e==null||(t=e.getAttribute)===null||t===void 0?void 0:t.call(e,"contenteditable");return s===""||s==="true"},gt=function(e,t,s){if(Ne(e))return[];var n=Array.prototype.slice.apply(e.querySelectorAll(Ie));return t&&ie.call(e,Ie)&&n.unshift(e),n=n.filter(s),n},bt=function a(e,t,s){for(var n=[],r=Array.from(e);r.length;){var i=r.shift();if(!Ne(i,!1))if(i.tagName==="SLOT"){var o=i.assignedElements(),l=o.length?o:i.children,c=a(l,!0,s);s.flatten?n.push.apply(n,c):n.push({scopeParent:i,candidates:c})}else{var h=ie.call(i,Ie);h&&s.filter(i)&&(t||!e.includes(i))&&n.push(i);var v=i.shadowRoot||typeof s.getShadowRoot=="function"&&s.getShadowRoot(i),p=!Ne(v,!1)&&(!s.shadowRootFilter||s.shadowRootFilter(i));if(v&&p){var b=a(v===!0?i.children:v.children,!0,s);s.flatten?n.push.apply(n,b):n.push({scopeParent:i,candidates:b})}else r.unshift.apply(r,i.children)}}return n},yt=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},ne=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||is(e))&&!yt(e)?0:e.tabIndex},rs=function(e,t){var s=ne(e);return s<0&&t&&!yt(e)?0:s},as=function(e,t){return e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex},wt=function(e){return e.tagName==="INPUT"},os=function(e){return wt(e)&&e.type==="hidden"},ls=function(e){var t=e.tagName==="DETAILS"&&Array.prototype.slice.apply(e.children).some(function(s){return s.tagName==="SUMMARY"});return t},cs=function(e,t){for(var s=0;ssummary:first-of-type"),i=r?e.parentElement:e;if(ie.call(i,"details:not([open]) *"))return!0;if(!s||s==="full"||s==="legacy-full"){if(typeof n=="function"){for(var o=e;e;){var l=e.parentElement,c=ke(e);if(l&&!l.shadowRoot&&n(l)===!0)return rt(e);e.assignedSlot?e=e.assignedSlot:!l&&c!==e.ownerDocument?e=c.host:e=l}e=o}if(fs(e))return!e.getClientRects().length;if(s!=="legacy-full")return!0}else if(s==="non-zero-area")return rt(e);return!1},vs=function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var t=e.parentElement;t;){if(t.tagName==="FIELDSET"&&t.disabled){for(var s=0;s=0)},gs=function a(e){var t=[],s=[];return e.forEach(function(n,r){var i=!!n.scopeParent,o=i?n.scopeParent:n,l=rs(o,i),c=i?a(n.candidates):o;l===0?i?t.push.apply(t,c):t.push(o):s.push({documentOrder:r,tabIndex:l,item:n,isScope:i,content:c})}),s.sort(as).reduce(function(n,r){return r.isScope?n.push.apply(n,r.content):n.push(r.content),n},[]).concat(t)},bs=function(e,t){t=t||{};var s;return t.getShadowRoot?s=bt([e],t.includeContainer,{filter:Ve.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:ms}):s=gt(e,t.includeContainer,Ve.bind(null,t)),gs(s)},ys=function(e,t){t=t||{};var s;return t.getShadowRoot?s=bt([e],t.includeContainer,{filter:Fe.bind(null,t),flatten:!0,getShadowRoot:t.getShadowRoot}):s=gt(e,t.includeContainer,Fe.bind(null,t)),s},re=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return ie.call(e,Ie)===!1?!1:Ve(t,e)},ws=vt.concat("iframe").join(","),Me=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return ie.call(e,ws)===!1?!1:Fe(t,e)};/*! +* focus-trap 7.6.0 +* @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE +*/function xs(a,e,t){return(e=_s(e))in a?Object.defineProperty(a,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):a[e]=t,a}function at(a,e){var t=Object.keys(a);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(a);e&&(s=s.filter(function(n){return Object.getOwnPropertyDescriptor(a,n).enumerable})),t.push.apply(t,s)}return t}function ot(a){for(var e=1;e0){var s=e[e.length-1];s!==t&&s.pause()}var n=e.indexOf(t);n===-1||e.splice(n,1),e.push(t)},deactivateTrap:function(e,t){var s=e.indexOf(t);s!==-1&&e.splice(s,1),e.length>0&&e[e.length-1].unpause()}},Es=function(e){return e.tagName&&e.tagName.toLowerCase()==="input"&&typeof e.select=="function"},Ts=function(e){return(e==null?void 0:e.key)==="Escape"||(e==null?void 0:e.key)==="Esc"||(e==null?void 0:e.keyCode)===27},ve=function(e){return(e==null?void 0:e.key)==="Tab"||(e==null?void 0:e.keyCode)===9},Is=function(e){return ve(e)&&!e.shiftKey},ks=function(e){return ve(e)&&e.shiftKey},ct=function(e){return setTimeout(e,0)},ut=function(e,t){var s=-1;return e.every(function(n,r){return t(n)?(s=r,!1):!0}),s},fe=function(e){for(var t=arguments.length,s=new Array(t>1?t-1:0),n=1;n1?g-1:0),E=1;E=0)d=s.activeElement;else{var u=i.tabbableGroups[0],g=u&&u.firstTabbableNode;d=g||h("fallbackFocus")}if(!d)throw new Error("Your focus-trap needs to have at least one focusable element");return d},p=function(){if(i.containerGroups=i.containers.map(function(d){var u=bs(d,r.tabbableOptions),g=ys(d,r.tabbableOptions),_=u.length>0?u[0]:void 0,E=u.length>0?u[u.length-1]:void 0,N=g.find(function(f){return re(f)}),F=g.slice().reverse().find(function(f){return re(f)}),m=!!u.find(function(f){return ne(f)>0});return{container:d,tabbableNodes:u,focusableNodes:g,posTabIndexesFound:m,firstTabbableNode:_,lastTabbableNode:E,firstDomTabbableNode:N,lastDomTabbableNode:F,nextTabbableNode:function(T){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,C=u.indexOf(T);return C<0?A?g.slice(g.indexOf(T)+1).find(function(M){return re(M)}):g.slice(0,g.indexOf(T)).reverse().find(function(M){return re(M)}):u[C+(A?1:-1)]}}}),i.tabbableGroups=i.containerGroups.filter(function(d){return d.tabbableNodes.length>0}),i.tabbableGroups.length<=0&&!h("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(i.containerGroups.find(function(d){return d.posTabIndexesFound})&&i.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},b=function(d){var u=d.activeElement;if(u)return u.shadowRoot&&u.shadowRoot.activeElement!==null?b(u.shadowRoot):u},y=function(d){if(d!==!1&&d!==b(document)){if(!d||!d.focus){y(v());return}d.focus({preventScroll:!!r.preventScroll}),i.mostRecentlyFocusedNode=d,Es(d)&&d.select()}},x=function(d){var u=h("setReturnFocus",d);return u||(u===!1?!1:d)},w=function(d){var u=d.target,g=d.event,_=d.isBackward,E=_===void 0?!1:_;u=u||Se(g),p();var N=null;if(i.tabbableGroups.length>0){var F=c(u,g),m=F>=0?i.containerGroups[F]:void 0;if(F<0)E?N=i.tabbableGroups[i.tabbableGroups.length-1].lastTabbableNode:N=i.tabbableGroups[0].firstTabbableNode;else if(E){var f=ut(i.tabbableGroups,function(L){var j=L.firstTabbableNode;return u===j});if(f<0&&(m.container===u||Me(u,r.tabbableOptions)&&!re(u,r.tabbableOptions)&&!m.nextTabbableNode(u,!1))&&(f=F),f>=0){var T=f===0?i.tabbableGroups.length-1:f-1,A=i.tabbableGroups[T];N=ne(u)>=0?A.lastTabbableNode:A.lastDomTabbableNode}else ve(g)||(N=m.nextTabbableNode(u,!1))}else{var C=ut(i.tabbableGroups,function(L){var j=L.lastTabbableNode;return u===j});if(C<0&&(m.container===u||Me(u,r.tabbableOptions)&&!re(u,r.tabbableOptions)&&!m.nextTabbableNode(u))&&(C=F),C>=0){var M=C===i.tabbableGroups.length-1?0:C+1,I=i.tabbableGroups[M];N=ne(u)>=0?I.firstTabbableNode:I.firstDomTabbableNode}else ve(g)||(N=m.nextTabbableNode(u))}}else N=h("fallbackFocus");return N},O=function(d){var u=Se(d);if(!(c(u,d)>=0)){if(fe(r.clickOutsideDeactivates,d)){o.deactivate({returnFocus:r.returnFocusOnDeactivate});return}fe(r.allowOutsideClick,d)||d.preventDefault()}},R=function(d){var u=Se(d),g=c(u,d)>=0;if(g||u instanceof Document)g&&(i.mostRecentlyFocusedNode=u);else{d.stopImmediatePropagation();var _,E=!0;if(i.mostRecentlyFocusedNode)if(ne(i.mostRecentlyFocusedNode)>0){var N=c(i.mostRecentlyFocusedNode),F=i.containerGroups[N].tabbableNodes;if(F.length>0){var m=F.findIndex(function(f){return f===i.mostRecentlyFocusedNode});m>=0&&(r.isKeyForward(i.recentNavEvent)?m+1=0&&(_=F[m-1],E=!1))}}else i.containerGroups.some(function(f){return f.tabbableNodes.some(function(T){return ne(T)>0})})||(E=!1);else E=!1;E&&(_=w({target:i.mostRecentlyFocusedNode,isBackward:r.isKeyBackward(i.recentNavEvent)})),y(_||i.mostRecentlyFocusedNode||v())}i.recentNavEvent=void 0},K=function(d){var u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;i.recentNavEvent=d;var g=w({event:d,isBackward:u});g&&(ve(d)&&d.preventDefault(),y(g))},G=function(d){(r.isKeyForward(d)||r.isKeyBackward(d))&&K(d,r.isKeyBackward(d))},W=function(d){Ts(d)&&fe(r.escapeDeactivates,d)!==!1&&(d.preventDefault(),o.deactivate())},V=function(d){var u=Se(d);c(u,d)>=0||fe(r.clickOutsideDeactivates,d)||fe(r.allowOutsideClick,d)||(d.preventDefault(),d.stopImmediatePropagation())},$=function(){if(i.active)return lt.activateTrap(n,o),i.delayInitialFocusTimer=r.delayInitialFocus?ct(function(){y(v())}):y(v()),s.addEventListener("focusin",R,!0),s.addEventListener("mousedown",O,{capture:!0,passive:!1}),s.addEventListener("touchstart",O,{capture:!0,passive:!1}),s.addEventListener("click",V,{capture:!0,passive:!1}),s.addEventListener("keydown",G,{capture:!0,passive:!1}),s.addEventListener("keydown",W),o},me=function(){if(i.active)return s.removeEventListener("focusin",R,!0),s.removeEventListener("mousedown",O,!0),s.removeEventListener("touchstart",O,!0),s.removeEventListener("click",V,!0),s.removeEventListener("keydown",G,!0),s.removeEventListener("keydown",W),o},P=function(d){var u=d.some(function(g){var _=Array.from(g.removedNodes);return _.some(function(E){return E===i.mostRecentlyFocusedNode})});u&&y(v())},H=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(P):void 0,J=function(){H&&(H.disconnect(),i.active&&!i.paused&&i.containers.map(function(d){H.observe(d,{subtree:!0,childList:!0})}))};return o={get active(){return i.active},get paused(){return i.paused},activate:function(d){if(i.active)return this;var u=l(d,"onActivate"),g=l(d,"onPostActivate"),_=l(d,"checkCanFocusTrap");_||p(),i.active=!0,i.paused=!1,i.nodeFocusedBeforeActivation=s.activeElement,u==null||u();var E=function(){_&&p(),$(),J(),g==null||g()};return _?(_(i.containers.concat()).then(E,E),this):(E(),this)},deactivate:function(d){if(!i.active)return this;var u=ot({onDeactivate:r.onDeactivate,onPostDeactivate:r.onPostDeactivate,checkCanReturnFocus:r.checkCanReturnFocus},d);clearTimeout(i.delayInitialFocusTimer),i.delayInitialFocusTimer=void 0,me(),i.active=!1,i.paused=!1,J(),lt.deactivateTrap(n,o);var g=l(u,"onDeactivate"),_=l(u,"onPostDeactivate"),E=l(u,"checkCanReturnFocus"),N=l(u,"returnFocus","returnFocusOnDeactivate");g==null||g();var F=function(){ct(function(){N&&y(x(i.nodeFocusedBeforeActivation)),_==null||_()})};return N&&E?(E(x(i.nodeFocusedBeforeActivation)).then(F,F),this):(F(),this)},pause:function(d){if(i.paused||!i.active)return this;var u=l(d,"onPause"),g=l(d,"onPostPause");return i.paused=!0,u==null||u(),me(),J(),g==null||g(),this},unpause:function(d){if(!i.paused||!i.active)return this;var u=l(d,"onUnpause"),g=l(d,"onPostUnpause");return i.paused=!1,u==null||u(),p(),$(),J(),g==null||g(),this},updateContainerElements:function(d){var u=[].concat(d).filter(Boolean);return i.containers=u.map(function(g){return typeof g=="string"?s.querySelector(g):g}),i.active&&p(),J(),this}},o.updateContainerElements(e),o};function Os(a,e={}){let t;const{immediate:s,...n}=e,r=se(!1),i=se(!1),o=p=>t&&t.activate(p),l=p=>t&&t.deactivate(p),c=()=>{t&&(t.pause(),i.value=!0)},h=()=>{t&&(t.unpause(),i.value=!1)},v=pe(()=>{const p=Xe(a);return(Array.isArray(p)?p:[p]).map(b=>{const y=Xe(b);return typeof y=="string"?y:Rt(y)}).filter(Ct)});return je(v,p=>{p.length&&(t=Fs(p,{...n,onActivate(){r.value=!0,e.onActivate&&e.onActivate()},onDeactivate(){r.value=!1,e.onDeactivate&&e.onDeactivate()}}),s&&o())},{flush:"post"}),Mt(()=>l()),{hasFocus:r,isPaused:i,activate:o,deactivate:l,pause:c,unpause:h}}class oe{constructor(e,t=!0,s=[],n=5e3){this.ctx=e,this.iframes=t,this.exclude=s,this.iframesTimeout=n}static matches(e,t){const s=typeof t=="string"?[t]:t,n=e.matches||e.matchesSelector||e.msMatchesSelector||e.mozMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector;if(n){let r=!1;return s.every(i=>n.call(e,i)?(r=!0,!1):!0),r}else return!1}getContexts(){let e,t=[];return typeof this.ctx>"u"||!this.ctx?e=[]:NodeList.prototype.isPrototypeOf(this.ctx)?e=Array.prototype.slice.call(this.ctx):Array.isArray(this.ctx)?e=this.ctx:typeof this.ctx=="string"?e=Array.prototype.slice.call(document.querySelectorAll(this.ctx)):e=[this.ctx],e.forEach(s=>{const n=t.filter(r=>r.contains(s)).length>0;t.indexOf(s)===-1&&!n&&t.push(s)}),t}getIframeContents(e,t,s=()=>{}){let n;try{const r=e.contentWindow;if(n=r.document,!r||!n)throw new Error("iframe inaccessible")}catch{s()}n&&t(n)}isIframeBlank(e){const t="about:blank",s=e.getAttribute("src").trim();return e.contentWindow.location.href===t&&s!==t&&s}observeIframeLoad(e,t,s){let n=!1,r=null;const i=()=>{if(!n){n=!0,clearTimeout(r);try{this.isIframeBlank(e)||(e.removeEventListener("load",i),this.getIframeContents(e,t,s))}catch{s()}}};e.addEventListener("load",i),r=setTimeout(i,this.iframesTimeout)}onIframeReady(e,t,s){try{e.contentWindow.document.readyState==="complete"?this.isIframeBlank(e)?this.observeIframeLoad(e,t,s):this.getIframeContents(e,t,s):this.observeIframeLoad(e,t,s)}catch{s()}}waitForIframes(e,t){let s=0;this.forEachIframe(e,()=>!0,n=>{s++,this.waitForIframes(n.querySelector("html"),()=>{--s||t()})},n=>{n||t()})}forEachIframe(e,t,s,n=()=>{}){let r=e.querySelectorAll("iframe"),i=r.length,o=0;r=Array.prototype.slice.call(r);const l=()=>{--i<=0&&n(o)};i||l(),r.forEach(c=>{oe.matches(c,this.exclude)?l():this.onIframeReady(c,h=>{t(c)&&(o++,s(h)),l()},l)})}createIterator(e,t,s){return document.createNodeIterator(e,t,s,!1)}createInstanceOnIframe(e){return new oe(e.querySelector("html"),this.iframes)}compareNodeIframe(e,t,s){const n=e.compareDocumentPosition(s),r=Node.DOCUMENT_POSITION_PRECEDING;if(n&r)if(t!==null){const i=t.compareDocumentPosition(s),o=Node.DOCUMENT_POSITION_FOLLOWING;if(i&o)return!0}else return!0;return!1}getIteratorNode(e){const t=e.previousNode();let s;return t===null?s=e.nextNode():s=e.nextNode()&&e.nextNode(),{prevNode:t,node:s}}checkIframeFilter(e,t,s,n){let r=!1,i=!1;return n.forEach((o,l)=>{o.val===s&&(r=l,i=o.handled)}),this.compareNodeIframe(e,t,s)?(r===!1&&!i?n.push({val:s,handled:!0}):r!==!1&&!i&&(n[r].handled=!0),!0):(r===!1&&n.push({val:s,handled:!1}),!1)}handleOpenIframes(e,t,s,n){e.forEach(r=>{r.handled||this.getIframeContents(r.val,i=>{this.createInstanceOnIframe(i).forEachNode(t,s,n)})})}iterateThroughNodes(e,t,s,n,r){const i=this.createIterator(t,e,n);let o=[],l=[],c,h,v=()=>({prevNode:h,node:c}=this.getIteratorNode(i),c);for(;v();)this.iframes&&this.forEachIframe(t,p=>this.checkIframeFilter(c,h,p,o),p=>{this.createInstanceOnIframe(p).forEachNode(e,b=>l.push(b),n)}),l.push(c);l.forEach(p=>{s(p)}),this.iframes&&this.handleOpenIframes(o,e,s,n),r()}forEachNode(e,t,s,n=()=>{}){const r=this.getContexts();let i=r.length;i||n(),r.forEach(o=>{const l=()=>{this.iterateThroughNodes(e,o,t,s,()=>{--i<=0&&n()})};this.iframes?this.waitForIframes(o,l):l()})}}let Rs=class{constructor(e){this.ctx=e,this.ie=!1;const t=window.navigator.userAgent;(t.indexOf("MSIE")>-1||t.indexOf("Trident")>-1)&&(this.ie=!0)}set opt(e){this._opt=Object.assign({},{element:"",className:"",exclude:[],iframes:!1,iframesTimeout:5e3,separateWordSearch:!0,diacritics:!0,synonyms:{},accuracy:"partially",acrossElements:!1,caseSensitive:!1,ignoreJoiners:!1,ignoreGroups:0,ignorePunctuation:[],wildcards:"disabled",each:()=>{},noMatch:()=>{},filter:()=>!0,done:()=>{},debug:!1,log:window.console},e)}get opt(){return this._opt}get iterator(){return new oe(this.ctx,this.opt.iframes,this.opt.exclude,this.opt.iframesTimeout)}log(e,t="debug"){const s=this.opt.log;this.opt.debug&&typeof s=="object"&&typeof s[t]=="function"&&s[t](`mark.js: ${e}`)}escapeStr(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}createRegExp(e){return this.opt.wildcards!=="disabled"&&(e=this.setupWildcardsRegExp(e)),e=this.escapeStr(e),Object.keys(this.opt.synonyms).length&&(e=this.createSynonymsRegExp(e)),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),this.opt.diacritics&&(e=this.createDiacriticsRegExp(e)),e=this.createMergedBlanksRegExp(e),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.createJoinersRegExp(e)),this.opt.wildcards!=="disabled"&&(e=this.createWildcardsRegExp(e)),e=this.createAccuracyRegExp(e),e}createSynonymsRegExp(e){const t=this.opt.synonyms,s=this.opt.caseSensitive?"":"i",n=this.opt.ignoreJoiners||this.opt.ignorePunctuation.length?"\0":"";for(let r in t)if(t.hasOwnProperty(r)){const i=t[r],o=this.opt.wildcards!=="disabled"?this.setupWildcardsRegExp(r):this.escapeStr(r),l=this.opt.wildcards!=="disabled"?this.setupWildcardsRegExp(i):this.escapeStr(i);o!==""&&l!==""&&(e=e.replace(new RegExp(`(${this.escapeStr(o)}|${this.escapeStr(l)})`,`gm${s}`),n+`(${this.processSynomyms(o)}|${this.processSynomyms(l)})`+n))}return e}processSynomyms(e){return(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),e}setupWildcardsRegExp(e){return e=e.replace(/(?:\\)*\?/g,t=>t.charAt(0)==="\\"?"?":""),e.replace(/(?:\\)*\*/g,t=>t.charAt(0)==="\\"?"*":"")}createWildcardsRegExp(e){let t=this.opt.wildcards==="withSpaces";return e.replace(/\u0001/g,t?"[\\S\\s]?":"\\S?").replace(/\u0002/g,t?"[\\S\\s]*?":"\\S*")}setupIgnoreJoinersRegExp(e){return e.replace(/[^(|)\\]/g,(t,s,n)=>{let r=n.charAt(s+1);return/[(|)\\]/.test(r)||r===""?t:t+"\0"})}createJoinersRegExp(e){let t=[];const s=this.opt.ignorePunctuation;return Array.isArray(s)&&s.length&&t.push(this.escapeStr(s.join(""))),this.opt.ignoreJoiners&&t.push("\\u00ad\\u200b\\u200c\\u200d"),t.length?e.split(/\u0000+/).join(`[${t.join("")}]*`):e}createDiacriticsRegExp(e){const t=this.opt.caseSensitive?"":"i",s=this.opt.caseSensitive?["aàáảãạăằắẳẵặâầấẩẫậäåāą","AÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćč","CÇĆČ","dđď","DĐĎ","eèéẻẽẹêềếểễệëěēę","EÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïī","IÌÍỈĨỊÎÏĪ","lł","LŁ","nñňń","NÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøō","OÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rř","RŘ","sšśșş","SŠŚȘŞ","tťțţ","TŤȚŢ","uùúủũụưừứửữựûüůū","UÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿ","YÝỲỶỸỴŸ","zžżź","ZŽŻŹ"]:["aàáảãạăằắẳẵặâầấẩẫậäåāąAÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćčCÇĆČ","dđďDĐĎ","eèéẻẽẹêềếểễệëěēęEÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïīIÌÍỈĨỊÎÏĪ","lłLŁ","nñňńNÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøōOÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rřRŘ","sšśșşSŠŚȘŞ","tťțţTŤȚŢ","uùúủũụưừứửữựûüůūUÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿYÝỲỶỸỴŸ","zžżźZŽŻŹ"];let n=[];return e.split("").forEach(r=>{s.every(i=>{if(i.indexOf(r)!==-1){if(n.indexOf(i)>-1)return!1;e=e.replace(new RegExp(`[${i}]`,`gm${t}`),`[${i}]`),n.push(i)}return!0})}),e}createMergedBlanksRegExp(e){return e.replace(/[\s]+/gmi,"[\\s]+")}createAccuracyRegExp(e){const t="!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~¡¿";let s=this.opt.accuracy,n=typeof s=="string"?s:s.value,r=typeof s=="string"?[]:s.limiters,i="";switch(r.forEach(o=>{i+=`|${this.escapeStr(o)}`}),n){case"partially":default:return`()(${e})`;case"complementary":return i="\\s"+(i||this.escapeStr(t)),`()([^${i}]*${e}[^${i}]*)`;case"exactly":return`(^|\\s${i})(${e})(?=$|\\s${i})`}}getSeparatedKeywords(e){let t=[];return e.forEach(s=>{this.opt.separateWordSearch?s.split(" ").forEach(n=>{n.trim()&&t.indexOf(n)===-1&&t.push(n)}):s.trim()&&t.indexOf(s)===-1&&t.push(s)}),{keywords:t.sort((s,n)=>n.length-s.length),length:t.length}}isNumeric(e){return Number(parseFloat(e))==e}checkRanges(e){if(!Array.isArray(e)||Object.prototype.toString.call(e[0])!=="[object Object]")return this.log("markRanges() will only accept an array of objects"),this.opt.noMatch(e),[];const t=[];let s=0;return e.sort((n,r)=>n.start-r.start).forEach(n=>{let{start:r,end:i,valid:o}=this.callNoMatchOnInvalidRanges(n,s);o&&(n.start=r,n.length=i-r,t.push(n),s=i)}),t}callNoMatchOnInvalidRanges(e,t){let s,n,r=!1;return e&&typeof e.start<"u"?(s=parseInt(e.start,10),n=s+parseInt(e.length,10),this.isNumeric(e.start)&&this.isNumeric(e.length)&&n-t>0&&n-s>0?r=!0:(this.log(`Ignoring invalid or overlapping range: ${JSON.stringify(e)}`),this.opt.noMatch(e))):(this.log(`Ignoring invalid range: ${JSON.stringify(e)}`),this.opt.noMatch(e)),{start:s,end:n,valid:r}}checkWhitespaceRanges(e,t,s){let n,r=!0,i=s.length,o=t-i,l=parseInt(e.start,10)-o;return l=l>i?i:l,n=l+parseInt(e.length,10),n>i&&(n=i,this.log(`End range automatically set to the max value of ${i}`)),l<0||n-l<0||l>i||n>i?(r=!1,this.log(`Invalid range: ${JSON.stringify(e)}`),this.opt.noMatch(e)):s.substring(l,n).replace(/\s+/g,"")===""&&(r=!1,this.log("Skipping whitespace only range: "+JSON.stringify(e)),this.opt.noMatch(e)),{start:l,end:n,valid:r}}getTextNodes(e){let t="",s=[];this.iterator.forEachNode(NodeFilter.SHOW_TEXT,n=>{s.push({start:t.length,end:(t+=n.textContent).length,node:n})},n=>this.matchesExclude(n.parentNode)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT,()=>{e({value:t,nodes:s})})}matchesExclude(e){return oe.matches(e,this.opt.exclude.concat(["script","style","title","head","html"]))}wrapRangeInTextNode(e,t,s){const n=this.opt.element?this.opt.element:"mark",r=e.splitText(t),i=r.splitText(s-t);let o=document.createElement(n);return o.setAttribute("data-markjs","true"),this.opt.className&&o.setAttribute("class",this.opt.className),o.textContent=r.textContent,r.parentNode.replaceChild(o,r),i}wrapRangeInMappedTextNode(e,t,s,n,r){e.nodes.every((i,o)=>{const l=e.nodes[o+1];if(typeof l>"u"||l.start>t){if(!n(i.node))return!1;const c=t-i.start,h=(s>i.end?i.end:s)-i.start,v=e.value.substr(0,i.start),p=e.value.substr(h+i.start);if(i.node=this.wrapRangeInTextNode(i.node,c,h),e.value=v+p,e.nodes.forEach((b,y)=>{y>=o&&(e.nodes[y].start>0&&y!==o&&(e.nodes[y].start-=h),e.nodes[y].end-=h)}),s-=h,r(i.node.previousSibling,i.start),s>i.end)t=i.end;else return!1}return!0})}wrapMatches(e,t,s,n,r){const i=t===0?0:t+1;this.getTextNodes(o=>{o.nodes.forEach(l=>{l=l.node;let c;for(;(c=e.exec(l.textContent))!==null&&c[i]!=="";){if(!s(c[i],l))continue;let h=c.index;if(i!==0)for(let v=1;v{let l;for(;(l=e.exec(o.value))!==null&&l[i]!=="";){let c=l.index;if(i!==0)for(let v=1;vs(l[i],v),(v,p)=>{e.lastIndex=p,n(v)})}r()})}wrapRangeFromIndex(e,t,s,n){this.getTextNodes(r=>{const i=r.value.length;e.forEach((o,l)=>{let{start:c,end:h,valid:v}=this.checkWhitespaceRanges(o,i,r.value);v&&this.wrapRangeInMappedTextNode(r,c,h,p=>t(p,o,r.value.substring(c,h),l),p=>{s(p,o)})}),n()})}unwrapMatches(e){const t=e.parentNode;let s=document.createDocumentFragment();for(;e.firstChild;)s.appendChild(e.removeChild(e.firstChild));t.replaceChild(s,e),this.ie?this.normalizeTextNode(t):t.normalize()}normalizeTextNode(e){if(e){if(e.nodeType===3)for(;e.nextSibling&&e.nextSibling.nodeType===3;)e.nodeValue+=e.nextSibling.nodeValue,e.parentNode.removeChild(e.nextSibling);else this.normalizeTextNode(e.firstChild);this.normalizeTextNode(e.nextSibling)}}markRegExp(e,t){this.opt=t,this.log(`Searching with expression "${e}"`);let s=0,n="wrapMatches";const r=i=>{s++,this.opt.each(i)};this.opt.acrossElements&&(n="wrapMatchesAcrossElements"),this[n](e,this.opt.ignoreGroups,(i,o)=>this.opt.filter(o,i,s),r,()=>{s===0&&this.opt.noMatch(e),this.opt.done(s)})}mark(e,t){this.opt=t;let s=0,n="wrapMatches";const{keywords:r,length:i}=this.getSeparatedKeywords(typeof e=="string"?[e]:e),o=this.opt.caseSensitive?"":"i",l=c=>{let h=new RegExp(this.createRegExp(c),`gm${o}`),v=0;this.log(`Searching with expression "${h}"`),this[n](h,1,(p,b)=>this.opt.filter(b,c,s,v),p=>{v++,s++,this.opt.each(p)},()=>{v===0&&this.opt.noMatch(c),r[i-1]===c?this.opt.done(s):l(r[r.indexOf(c)+1])})};this.opt.acrossElements&&(n="wrapMatchesAcrossElements"),i===0?this.opt.done(s):l(r[0])}markRanges(e,t){this.opt=t;let s=0,n=this.checkRanges(e);n&&n.length?(this.log("Starting to mark with the following ranges: "+JSON.stringify(n)),this.wrapRangeFromIndex(n,(r,i,o,l)=>this.opt.filter(r,i,o,l),(r,i)=>{s++,this.opt.each(r,i)},()=>{this.opt.done(s)})):this.opt.done(s)}unmark(e){this.opt=e;let t=this.opt.element?this.opt.element:"*";t+="[data-markjs]",this.opt.className&&(t+=`.${this.opt.className}`),this.log(`Removal selector "${t}"`),this.iterator.forEachNode(NodeFilter.SHOW_ELEMENT,s=>{this.unwrapMatches(s)},s=>{const n=oe.matches(s,t),r=this.matchesExclude(s);return!n||r?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT},this.opt.done)}};function Cs(a){const e=new Rs(a);return this.mark=(t,s)=>(e.mark(t,s),this),this.markRegExp=(t,s)=>(e.markRegExp(t,s),this),this.markRanges=(t,s)=>(e.markRanges(t,s),this),this.unmark=t=>(e.unmark(t),this),this}function Te(a,e,t,s){function n(r){return r instanceof t?r:new t(function(i){i(r)})}return new(t||(t=Promise))(function(r,i){function o(h){try{c(s.next(h))}catch(v){i(v)}}function l(h){try{c(s.throw(h))}catch(v){i(v)}}function c(h){h.done?r(h.value):n(h.value).then(o,l)}c((s=s.apply(a,[])).next())})}const Ms="ENTRIES",xt="KEYS",St="VALUES",z="";class Ae{constructor(e,t){const s=e._tree,n=Array.from(s.keys());this.set=e,this._type=t,this._path=n.length>0?[{node:s,keys:n}]:[]}next(){const e=this.dive();return this.backtrack(),e}dive(){if(this._path.length===0)return{done:!0,value:void 0};const{node:e,keys:t}=ae(this._path);if(ae(t)===z)return{done:!1,value:this.result()};const s=e.get(ae(t));return this._path.push({node:s,keys:Array.from(s.keys())}),this.dive()}backtrack(){if(this._path.length===0)return;const e=ae(this._path).keys;e.pop(),!(e.length>0)&&(this._path.pop(),this.backtrack())}key(){return this.set._prefix+this._path.map(({keys:e})=>ae(e)).filter(e=>e!==z).join("")}value(){return ae(this._path).node.get(z)}result(){switch(this._type){case St:return this.value();case xt:return this.key();default:return[this.key(),this.value()]}}[Symbol.iterator](){return this}}const ae=a=>a[a.length-1],As=(a,e,t)=>{const s=new Map;if(e===void 0)return s;const n=e.length+1,r=n+t,i=new Uint8Array(r*n).fill(t+1);for(let o=0;o{const l=r*i;e:for(const c of a.keys())if(c===z){const h=n[l-1];h<=t&&s.set(o,[a.get(c),h])}else{let h=r;for(let v=0;vt)continue e}_t(a.get(c),e,t,s,n,h,i,o+c)}};class Z{constructor(e=new Map,t=""){this._size=void 0,this._tree=e,this._prefix=t}atPrefix(e){if(!e.startsWith(this._prefix))throw new Error("Mismatched prefix");const[t,s]=Oe(this._tree,e.slice(this._prefix.length));if(t===void 0){const[n,r]=Ke(s);for(const i of n.keys())if(i!==z&&i.startsWith(r)){const o=new Map;return o.set(i.slice(r.length),n.get(i)),new Z(o,e)}}return new Z(t,e)}clear(){this._size=void 0,this._tree.clear()}delete(e){return this._size=void 0,Ls(this._tree,e)}entries(){return new Ae(this,Ms)}forEach(e){for(const[t,s]of this)e(t,s,this)}fuzzyGet(e,t){return As(this._tree,e,t)}get(e){const t=$e(this._tree,e);return t!==void 0?t.get(z):void 0}has(e){const t=$e(this._tree,e);return t!==void 0&&t.has(z)}keys(){return new Ae(this,xt)}set(e,t){if(typeof e!="string")throw new Error("key must be a string");return this._size=void 0,Le(this._tree,e).set(z,t),this}get size(){if(this._size)return this._size;this._size=0;const e=this.entries();for(;!e.next().done;)this._size+=1;return this._size}update(e,t){if(typeof e!="string")throw new Error("key must be a string");this._size=void 0;const s=Le(this._tree,e);return s.set(z,t(s.get(z))),this}fetch(e,t){if(typeof e!="string")throw new Error("key must be a string");this._size=void 0;const s=Le(this._tree,e);let n=s.get(z);return n===void 0&&s.set(z,n=t()),n}values(){return new Ae(this,St)}[Symbol.iterator](){return this.entries()}static from(e){const t=new Z;for(const[s,n]of e)t.set(s,n);return t}static fromObject(e){return Z.from(Object.entries(e))}}const Oe=(a,e,t=[])=>{if(e.length===0||a==null)return[a,t];for(const s of a.keys())if(s!==z&&e.startsWith(s))return t.push([a,s]),Oe(a.get(s),e.slice(s.length),t);return t.push([a,e]),Oe(void 0,"",t)},$e=(a,e)=>{if(e.length===0||a==null)return a;for(const t of a.keys())if(t!==z&&e.startsWith(t))return $e(a.get(t),e.slice(t.length))},Le=(a,e)=>{const t=e.length;e:for(let s=0;a&&s{const[t,s]=Oe(a,e);if(t!==void 0){if(t.delete(z),t.size===0)Et(s);else if(t.size===1){const[n,r]=t.entries().next().value;Tt(s,n,r)}}},Et=a=>{if(a.length===0)return;const[e,t]=Ke(a);if(e.delete(t),e.size===0)Et(a.slice(0,-1));else if(e.size===1){const[s,n]=e.entries().next().value;s!==z&&Tt(a.slice(0,-1),s,n)}},Tt=(a,e,t)=>{if(a.length===0)return;const[s,n]=Ke(a);s.set(n+e,t),s.delete(n)},Ke=a=>a[a.length-1],Je="or",It="and",Ds="and_not";class le{constructor(e){if((e==null?void 0:e.fields)==null)throw new Error('MiniSearch: option "fields" must be provided');const t=e.autoVacuum==null||e.autoVacuum===!0?Pe:e.autoVacuum;this._options=Object.assign(Object.assign(Object.assign({},ze),e),{autoVacuum:t,searchOptions:Object.assign(Object.assign({},dt),e.searchOptions||{}),autoSuggestOptions:Object.assign(Object.assign({},$s),e.autoSuggestOptions||{})}),this._index=new Z,this._documentCount=0,this._documentIds=new Map,this._idToShortId=new Map,this._fieldIds={},this._fieldLength=new Map,this._avgFieldLength=[],this._nextId=0,this._storedFields=new Map,this._dirtCount=0,this._currentVacuum=null,this._enqueuedVacuum=null,this._enqueuedVacuumConditions=We,this.addFields(this._options.fields)}add(e){const{extractField:t,tokenize:s,processTerm:n,fields:r,idField:i}=this._options,o=t(e,i);if(o==null)throw new Error(`MiniSearch: document does not have ID field "${i}"`);if(this._idToShortId.has(o))throw new Error(`MiniSearch: duplicate ID ${o}`);const l=this.addDocumentId(o);this.saveStoredFields(l,e);for(const c of r){const h=t(e,c);if(h==null)continue;const v=s(h.toString(),c),p=this._fieldIds[c],b=new Set(v).size;this.addFieldLength(l,p,this._documentCount-1,b);for(const y of v){const x=n(y,c);if(Array.isArray(x))for(const w of x)this.addTerm(p,l,w);else x&&this.addTerm(p,l,x)}}}addAll(e){for(const t of e)this.add(t)}addAllAsync(e,t={}){const{chunkSize:s=10}=t,n={chunk:[],promise:Promise.resolve()},{chunk:r,promise:i}=e.reduce(({chunk:o,promise:l},c,h)=>(o.push(c),(h+1)%s===0?{chunk:[],promise:l.then(()=>new Promise(v=>setTimeout(v,0))).then(()=>this.addAll(o))}:{chunk:o,promise:l}),n);return i.then(()=>this.addAll(r))}remove(e){const{tokenize:t,processTerm:s,extractField:n,fields:r,idField:i}=this._options,o=n(e,i);if(o==null)throw new Error(`MiniSearch: document does not have ID field "${i}"`);const l=this._idToShortId.get(o);if(l==null)throw new Error(`MiniSearch: cannot remove document with ID ${o}: it is not in the index`);for(const c of r){const h=n(e,c);if(h==null)continue;const v=t(h.toString(),c),p=this._fieldIds[c],b=new Set(v).size;this.removeFieldLength(l,p,this._documentCount,b);for(const y of v){const x=s(y,c);if(Array.isArray(x))for(const w of x)this.removeTerm(p,l,w);else x&&this.removeTerm(p,l,x)}}this._storedFields.delete(l),this._documentIds.delete(l),this._idToShortId.delete(o),this._fieldLength.delete(l),this._documentCount-=1}removeAll(e){if(e)for(const t of e)this.remove(t);else{if(arguments.length>0)throw new Error("Expected documents to be present. Omit the argument to remove all documents.");this._index=new Z,this._documentCount=0,this._documentIds=new Map,this._idToShortId=new Map,this._fieldLength=new Map,this._avgFieldLength=[],this._storedFields=new Map,this._nextId=0}}discard(e){const t=this._idToShortId.get(e);if(t==null)throw new Error(`MiniSearch: cannot discard document with ID ${e}: it is not in the index`);this._idToShortId.delete(e),this._documentIds.delete(t),this._storedFields.delete(t),(this._fieldLength.get(t)||[]).forEach((s,n)=>{this.removeFieldLength(t,n,this._documentCount,s)}),this._fieldLength.delete(t),this._documentCount-=1,this._dirtCount+=1,this.maybeAutoVacuum()}maybeAutoVacuum(){if(this._options.autoVacuum===!1)return;const{minDirtFactor:e,minDirtCount:t,batchSize:s,batchWait:n}=this._options.autoVacuum;this.conditionalVacuum({batchSize:s,batchWait:n},{minDirtCount:t,minDirtFactor:e})}discardAll(e){const t=this._options.autoVacuum;try{this._options.autoVacuum=!1;for(const s of e)this.discard(s)}finally{this._options.autoVacuum=t}this.maybeAutoVacuum()}replace(e){const{idField:t,extractField:s}=this._options,n=s(e,t);this.discard(n),this.add(e)}vacuum(e={}){return this.conditionalVacuum(e)}conditionalVacuum(e,t){return this._currentVacuum?(this._enqueuedVacuumConditions=this._enqueuedVacuumConditions&&t,this._enqueuedVacuum!=null?this._enqueuedVacuum:(this._enqueuedVacuum=this._currentVacuum.then(()=>{const s=this._enqueuedVacuumConditions;return this._enqueuedVacuumConditions=We,this.performVacuuming(e,s)}),this._enqueuedVacuum)):this.vacuumConditionsMet(t)===!1?Promise.resolve():(this._currentVacuum=this.performVacuuming(e),this._currentVacuum)}performVacuuming(e,t){return Te(this,void 0,void 0,function*(){const s=this._dirtCount;if(this.vacuumConditionsMet(t)){const n=e.batchSize||Be.batchSize,r=e.batchWait||Be.batchWait;let i=1;for(const[o,l]of this._index){for(const[c,h]of l)for(const[v]of h)this._documentIds.has(v)||(h.size<=1?l.delete(c):h.delete(v));this._index.get(o).size===0&&this._index.delete(o),i%n===0&&(yield new Promise(c=>setTimeout(c,r))),i+=1}this._dirtCount-=s}yield null,this._currentVacuum=this._enqueuedVacuum,this._enqueuedVacuum=null})}vacuumConditionsMet(e){if(e==null)return!0;let{minDirtCount:t,minDirtFactor:s}=e;return t=t||Pe.minDirtCount,s=s||Pe.minDirtFactor,this.dirtCount>=t&&this.dirtFactor>=s}get isVacuuming(){return this._currentVacuum!=null}get dirtCount(){return this._dirtCount}get dirtFactor(){return this._dirtCount/(1+this._documentCount+this._dirtCount)}has(e){return this._idToShortId.has(e)}getStoredFields(e){const t=this._idToShortId.get(e);if(t!=null)return this._storedFields.get(t)}search(e,t={}){const s=this.executeQuery(e,t),n=[];for(const[r,{score:i,terms:o,match:l}]of s){const c=o.length||1,h={id:this._documentIds.get(r),score:i*c,terms:Object.keys(l),queryTerms:o,match:l};Object.assign(h,this._storedFields.get(r)),(t.filter==null||t.filter(h))&&n.push(h)}return e===le.wildcard&&t.boostDocument==null&&this._options.searchOptions.boostDocument==null||n.sort(ft),n}autoSuggest(e,t={}){t=Object.assign(Object.assign({},this._options.autoSuggestOptions),t);const s=new Map;for(const{score:r,terms:i}of this.search(e,t)){const o=i.join(" "),l=s.get(o);l!=null?(l.score+=r,l.count+=1):s.set(o,{score:r,terms:i,count:1})}const n=[];for(const[r,{score:i,terms:o,count:l}]of s)n.push({suggestion:r,terms:o,score:i/l});return n.sort(ft),n}get documentCount(){return this._documentCount}get termCount(){return this._index.size}static loadJSON(e,t){if(t==null)throw new Error("MiniSearch: loadJSON should be given the same options used when serializing the index");return this.loadJS(JSON.parse(e),t)}static loadJSONAsync(e,t){return Te(this,void 0,void 0,function*(){if(t==null)throw new Error("MiniSearch: loadJSON should be given the same options used when serializing the index");return this.loadJSAsync(JSON.parse(e),t)})}static getDefault(e){if(ze.hasOwnProperty(e))return De(ze,e);throw new Error(`MiniSearch: unknown option "${e}"`)}static loadJS(e,t){const{index:s,documentIds:n,fieldLength:r,storedFields:i,serializationVersion:o}=e,l=this.instantiateMiniSearch(e,t);l._documentIds=_e(n),l._fieldLength=_e(r),l._storedFields=_e(i);for(const[c,h]of l._documentIds)l._idToShortId.set(h,c);for(const[c,h]of s){const v=new Map;for(const p of Object.keys(h)){let b=h[p];o===1&&(b=b.ds),v.set(parseInt(p,10),_e(b))}l._index.set(c,v)}return l}static loadJSAsync(e,t){return Te(this,void 0,void 0,function*(){const{index:s,documentIds:n,fieldLength:r,storedFields:i,serializationVersion:o}=e,l=this.instantiateMiniSearch(e,t);l._documentIds=yield Ee(n),l._fieldLength=yield Ee(r),l._storedFields=yield Ee(i);for(const[h,v]of l._documentIds)l._idToShortId.set(v,h);let c=0;for(const[h,v]of s){const p=new Map;for(const b of Object.keys(v)){let y=v[b];o===1&&(y=y.ds),p.set(parseInt(b,10),yield Ee(y))}++c%1e3===0&&(yield kt(0)),l._index.set(h,p)}return l})}static instantiateMiniSearch(e,t){const{documentCount:s,nextId:n,fieldIds:r,averageFieldLength:i,dirtCount:o,serializationVersion:l}=e;if(l!==1&&l!==2)throw new Error("MiniSearch: cannot deserialize an index created with an incompatible version");const c=new le(t);return c._documentCount=s,c._nextId=n,c._idToShortId=new Map,c._fieldIds=r,c._avgFieldLength=i,c._dirtCount=o||0,c._index=new Z,c}executeQuery(e,t={}){if(e===le.wildcard)return this.executeWildcardQuery(t);if(typeof e!="string"){const p=Object.assign(Object.assign(Object.assign({},t),e),{queries:void 0}),b=e.queries.map(y=>this.executeQuery(y,p));return this.combineResults(b,p.combineWith)}const{tokenize:s,processTerm:n,searchOptions:r}=this._options,i=Object.assign(Object.assign({tokenize:s,processTerm:n},r),t),{tokenize:o,processTerm:l}=i,v=o(e).flatMap(p=>l(p)).filter(p=>!!p).map(Vs(i)).map(p=>this.executeQuerySpec(p,i));return this.combineResults(v,i.combineWith)}executeQuerySpec(e,t){const s=Object.assign(Object.assign({},this._options.searchOptions),t),n=(s.fields||this._options.fields).reduce((x,w)=>Object.assign(Object.assign({},x),{[w]:De(s.boost,w)||1}),{}),{boostDocument:r,weights:i,maxFuzzy:o,bm25:l}=s,{fuzzy:c,prefix:h}=Object.assign(Object.assign({},dt.weights),i),v=this._index.get(e.term),p=this.termResults(e.term,e.term,1,e.termBoost,v,n,r,l);let b,y;if(e.prefix&&(b=this._index.atPrefix(e.term)),e.fuzzy){const x=e.fuzzy===!0?.2:e.fuzzy,w=x<1?Math.min(o,Math.round(e.term.length*x)):x;w&&(y=this._index.fuzzyGet(e.term,w))}if(b)for(const[x,w]of b){const O=x.length-e.term.length;if(!O)continue;y==null||y.delete(x);const R=h*x.length/(x.length+.3*O);this.termResults(e.term,x,R,e.termBoost,w,n,r,l,p)}if(y)for(const x of y.keys()){const[w,O]=y.get(x);if(!O)continue;const R=c*x.length/(x.length+O);this.termResults(e.term,x,R,e.termBoost,w,n,r,l,p)}return p}executeWildcardQuery(e){const t=new Map,s=Object.assign(Object.assign({},this._options.searchOptions),e);for(const[n,r]of this._documentIds){const i=s.boostDocument?s.boostDocument(r,"",this._storedFields.get(n)):1;t.set(n,{score:i,terms:[],match:{}})}return t}combineResults(e,t=Je){if(e.length===0)return new Map;const s=t.toLowerCase(),n=zs[s];if(!n)throw new Error(`Invalid combination operator: ${t}`);return e.reduce(n)||new Map}toJSON(){const e=[];for(const[t,s]of this._index){const n={};for(const[r,i]of s)n[r]=Object.fromEntries(i);e.push([t,n])}return{documentCount:this._documentCount,nextId:this._nextId,documentIds:Object.fromEntries(this._documentIds),fieldIds:this._fieldIds,fieldLength:Object.fromEntries(this._fieldLength),averageFieldLength:this._avgFieldLength,storedFields:Object.fromEntries(this._storedFields),dirtCount:this._dirtCount,index:e,serializationVersion:2}}termResults(e,t,s,n,r,i,o,l,c=new Map){if(r==null)return c;for(const h of Object.keys(i)){const v=i[h],p=this._fieldIds[h],b=r.get(p);if(b==null)continue;let y=b.size;const x=this._avgFieldLength[p];for(const w of b.keys()){if(!this._documentIds.has(w)){this.removeTerm(p,w,t),y-=1;continue}const O=o?o(this._documentIds.get(w),t,this._storedFields.get(w)):1;if(!O)continue;const R=b.get(w),K=this._fieldLength.get(w)[p],G=js(R,y,this._documentCount,K,x,l),W=s*n*v*O*G,V=c.get(w);if(V){V.score+=W,Bs(V.terms,e);const $=De(V.match,t);$?$.push(h):V.match[t]=[h]}else c.set(w,{score:W,terms:[e],match:{[t]:[h]}})}}return c}addTerm(e,t,s){const n=this._index.fetch(s,pt);let r=n.get(e);if(r==null)r=new Map,r.set(t,1),n.set(e,r);else{const i=r.get(t);r.set(t,(i||0)+1)}}removeTerm(e,t,s){if(!this._index.has(s)){this.warnDocumentChanged(t,e,s);return}const n=this._index.fetch(s,pt),r=n.get(e);r==null||r.get(t)==null?this.warnDocumentChanged(t,e,s):r.get(t)<=1?r.size<=1?n.delete(e):r.delete(t):r.set(t,r.get(t)-1),this._index.get(s).size===0&&this._index.delete(s)}warnDocumentChanged(e,t,s){for(const n of Object.keys(this._fieldIds))if(this._fieldIds[n]===t){this._options.logger("warn",`MiniSearch: document with ID ${this._documentIds.get(e)} has changed before removal: term "${s}" was not present in field "${n}". Removing a document after it has changed can corrupt the index!`,"version_conflict");return}}addDocumentId(e){const t=this._nextId;return this._idToShortId.set(e,t),this._documentIds.set(t,e),this._documentCount+=1,this._nextId+=1,t}addFields(e){for(let t=0;tObject.prototype.hasOwnProperty.call(a,e)?a[e]:void 0,zs={[Je]:(a,e)=>{for(const t of e.keys()){const s=a.get(t);if(s==null)a.set(t,e.get(t));else{const{score:n,terms:r,match:i}=e.get(t);s.score=s.score+n,s.match=Object.assign(s.match,i),ht(s.terms,r)}}return a},[It]:(a,e)=>{const t=new Map;for(const s of e.keys()){const n=a.get(s);if(n==null)continue;const{score:r,terms:i,match:o}=e.get(s);ht(n.terms,i),t.set(s,{score:n.score+r,terms:n.terms,match:Object.assign(n.match,o)})}return t},[Ds]:(a,e)=>{for(const t of e.keys())a.delete(t);return a}},Ps={k:1.2,b:.7,d:.5},js=(a,e,t,s,n,r)=>{const{k:i,b:o,d:l}=r;return Math.log(1+(t-e+.5)/(e+.5))*(l+a*(i+1)/(a+i*(1-o+o*s/n)))},Vs=a=>(e,t,s)=>{const n=typeof a.fuzzy=="function"?a.fuzzy(e,t,s):a.fuzzy||!1,r=typeof a.prefix=="function"?a.prefix(e,t,s):a.prefix===!0,i=typeof a.boostTerm=="function"?a.boostTerm(e,t,s):1;return{term:e,fuzzy:n,prefix:r,termBoost:i}},ze={idField:"id",extractField:(a,e)=>a[e],tokenize:a=>a.split(Ws),processTerm:a=>a.toLowerCase(),fields:void 0,searchOptions:void 0,storeFields:[],logger:(a,e)=>{typeof(console==null?void 0:console[a])=="function"&&console[a](e)},autoVacuum:!0},dt={combineWith:Je,prefix:!1,fuzzy:!1,maxFuzzy:6,boost:{},weights:{fuzzy:.45,prefix:.375},bm25:Ps},$s={combineWith:It,prefix:(a,e,t)=>e===t.length-1},Be={batchSize:1e3,batchWait:10},We={minDirtFactor:.1,minDirtCount:20},Pe=Object.assign(Object.assign({},Be),We),Bs=(a,e)=>{a.includes(e)||a.push(e)},ht=(a,e)=>{for(const t of e)a.includes(t)||a.push(t)},ft=({score:a},{score:e})=>e-a,pt=()=>new Map,_e=a=>{const e=new Map;for(const t of Object.keys(a))e.set(parseInt(t,10),a[t]);return e},Ee=a=>Te(void 0,void 0,void 0,function*(){const e=new Map;let t=0;for(const s of Object.keys(a))e.set(parseInt(s,10),a[s]),++t%1e3===0&&(yield kt(0));return e}),kt=a=>new Promise(e=>setTimeout(e,a)),Ws=/[\n\r\p{Z}\p{P}]+/u;class Ks{constructor(e=10){Re(this,"max");Re(this,"cache");this.max=e,this.cache=new Map}get(e){let t=this.cache.get(e);return t!==void 0&&(this.cache.delete(e),this.cache.set(e,t)),t}set(e,t){this.cache.has(e)?this.cache.delete(e):this.cache.size===this.max&&this.cache.delete(this.first()),this.cache.set(e,t)}first(){return this.cache.keys().next().value}clear(){this.cache.clear()}}const Js=["aria-owns"],Us={class:"shell"},qs=["title"],Gs={class:"search-actions before"},Hs=["title"],Qs=["placeholder"],Ys={class:"search-actions"},Zs=["title"],Xs=["disabled","title"],en=["id","role","aria-labelledby"],tn=["aria-selected"],sn=["href","aria-label","onMouseenter","onFocusin"],nn={class:"titles"},rn=["innerHTML"],an={class:"title main"},on=["innerHTML"],ln={key:0,class:"excerpt-wrapper"},cn={key:0,class:"excerpt",inert:""},un=["innerHTML"],dn={key:0,class:"no-results"},hn={class:"search-keyboard-shortcuts"},fn=["aria-label"],pn=["aria-label"],vn=["aria-label"],mn=["aria-label"],gn=At({__name:"VPLocalSearchBox",emits:["close"],setup(a,{emit:e}){var N,F;const t=e,s=ye(),n=ye(),r=ye(ns),i=ts(),{activate:o}=Os(s,{immediate:!0,allowOutsideClick:!0,clickOutsideDeactivates:!0,escapeDeactivates:!0}),{localeIndex:l,theme:c}=i,h=et(async()=>{var m,f,T,A,C,M,I,L,j;return it(le.loadJSON((T=await((f=(m=r.value)[l.value])==null?void 0:f.call(m)))==null?void 0:T.default,{fields:["title","titles","text"],storeFields:["title","titles"],searchOptions:{fuzzy:.2,prefix:!0,boost:{title:4,text:2,titles:1},...((A=c.value.search)==null?void 0:A.provider)==="local"&&((M=(C=c.value.search.options)==null?void 0:C.miniSearch)==null?void 0:M.searchOptions)},...((I=c.value.search)==null?void 0:I.provider)==="local"&&((j=(L=c.value.search.options)==null?void 0:L.miniSearch)==null?void 0:j.options)}))}),p=pe(()=>{var m,f;return((m=c.value.search)==null?void 0:m.provider)==="local"&&((f=c.value.search.options)==null?void 0:f.disableQueryPersistence)===!0}).value?se(""):Lt("vitepress:local-search-filter",""),b=Dt("vitepress:local-search-detailed-list",((N=c.value.search)==null?void 0:N.provider)==="local"&&((F=c.value.search.options)==null?void 0:F.detailedView)===!0),y=pe(()=>{var m,f,T;return((m=c.value.search)==null?void 0:m.provider)==="local"&&(((f=c.value.search.options)==null?void 0:f.disableDetailedView)===!0||((T=c.value.search.options)==null?void 0:T.detailedView)===!1)}),x=pe(()=>{var f,T,A,C,M,I,L;const m=((f=c.value.search)==null?void 0:f.options)??c.value.algolia;return((M=(C=(A=(T=m==null?void 0:m.locales)==null?void 0:T[l.value])==null?void 0:A.translations)==null?void 0:C.button)==null?void 0:M.buttonText)||((L=(I=m==null?void 0:m.translations)==null?void 0:I.button)==null?void 0:L.buttonText)||"Search"});zt(()=>{y.value&&(b.value=!1)});const w=ye([]),O=se(!1);je(p,()=>{O.value=!1});const R=et(async()=>{if(n.value)return it(new Cs(n.value))},null),K=new Ks(16);Pt(()=>[h.value,p.value,b.value],async([m,f,T],A,C)=>{var ge,Ue,qe,Ge;(A==null?void 0:A[0])!==m&&K.clear();let M=!1;if(C(()=>{M=!0}),!m)return;w.value=m.search(f).slice(0,16),O.value=!0;const I=T?await Promise.all(w.value.map(B=>G(B.id))):[];if(M)return;for(const{id:B,mod:X}of I){const ee=B.slice(0,B.indexOf("#"));let Q=K.get(ee);if(Q)continue;Q=new Map,K.set(ee,Q);const U=X.default??X;if(U!=null&&U.render||U!=null&&U.setup){const te=Qt(U);te.config.warnHandler=()=>{},te.provide(Yt,i),Object.defineProperties(te.config.globalProperties,{$frontmatter:{get(){return i.frontmatter.value}},$params:{get(){return i.page.value.params}}});const He=document.createElement("div");te.mount(He),He.querySelectorAll("h1, h2, h3, h4, h5, h6").forEach(ce=>{var Ze;const be=(Ze=ce.querySelector("a"))==null?void 0:Ze.getAttribute("href"),Qe=(be==null?void 0:be.startsWith("#"))&&be.slice(1);if(!Qe)return;let Ye="";for(;(ce=ce.nextElementSibling)&&!/^h[1-6]$/i.test(ce.tagName);)Ye+=ce.outerHTML;Q.set(Qe,Ye)}),te.unmount()}if(M)return}const L=new Set;if(w.value=w.value.map(B=>{const[X,ee]=B.id.split("#"),Q=K.get(X),U=(Q==null?void 0:Q.get(ee))??"";for(const te in B.match)L.add(te);return{...B,text:U}}),await ue(),M)return;await new Promise(B=>{var X;(X=R.value)==null||X.unmark({done:()=>{var ee;(ee=R.value)==null||ee.markRegExp(E(L),{done:B})}})});const j=((ge=s.value)==null?void 0:ge.querySelectorAll(".result .excerpt"))??[];for(const B of j)(Ue=B.querySelector('mark[data-markjs="true"]'))==null||Ue.scrollIntoView({block:"center"});(Ge=(qe=n.value)==null?void 0:qe.firstElementChild)==null||Ge.scrollIntoView({block:"start"})},{debounce:200,immediate:!0});async function G(m){const f=Zt(m.slice(0,m.indexOf("#")));try{if(!f)throw new Error(`Cannot find file for id: ${m}`);return{id:m,mod:await import(f)}}catch(T){return console.error(T),{id:m,mod:{}}}}const W=se(),V=pe(()=>{var m;return((m=p.value)==null?void 0:m.length)<=0});function $(m=!0){var f,T;(f=W.value)==null||f.focus(),m&&((T=W.value)==null||T.select())}Ce(()=>{$()});function me(m){m.pointerType==="mouse"&&$()}const P=se(-1),H=se(!1);je(w,m=>{P.value=m.length?0:-1,J()});function J(){ue(()=>{const m=document.querySelector(".result.selected");m==null||m.scrollIntoView({block:"nearest"})})}we("ArrowUp",m=>{m.preventDefault(),P.value--,P.value<0&&(P.value=w.value.length-1),H.value=!0,J()}),we("ArrowDown",m=>{m.preventDefault(),P.value++,P.value>=w.value.length&&(P.value=0),H.value=!0,J()});const k=jt();we("Enter",m=>{if(m.isComposing||m.target instanceof HTMLButtonElement&&m.target.type!=="submit")return;const f=w.value[P.value];if(m.target instanceof HTMLInputElement&&!f){m.preventDefault();return}f&&(k.go(f.id),t("close"))}),we("Escape",()=>{t("close")});const u=ss({modal:{displayDetails:"Display detailed list",resetButtonTitle:"Reset search",backButtonTitle:"Close search",noResultsText:"No results for",footer:{selectText:"to select",selectKeyAriaLabel:"enter",navigateText:"to navigate",navigateUpKeyAriaLabel:"up arrow",navigateDownKeyAriaLabel:"down arrow",closeText:"to close",closeKeyAriaLabel:"escape"}}});Ce(()=>{window.history.pushState(null,"",null)}),Vt("popstate",m=>{m.preventDefault(),t("close")});const g=$t(Bt?document.body:null);Ce(()=>{ue(()=>{g.value=!0,ue().then(()=>o())})}),Wt(()=>{g.value=!1});function _(){p.value="",ue().then(()=>$(!1))}function E(m){return new RegExp([...m].sort((f,T)=>T.length-f.length).map(f=>`(${Xt(f)})`).join("|"),"gi")}return(m,f)=>{var T,A,C,M;return q(),Kt(Ht,{to:"body"},[S("div",{ref_key:"el",ref:s,role:"button","aria-owns":(T=w.value)!=null&&T.length?"localsearch-list":void 0,"aria-expanded":"true","aria-haspopup":"listbox","aria-labelledby":"localsearch-label",class:"VPLocalSearchBox"},[S("div",{class:"backdrop",onClick:f[0]||(f[0]=I=>m.$emit("close"))}),S("div",Us,[S("form",{class:"search-bar",onPointerup:f[4]||(f[4]=I=>me(I)),onSubmit:f[5]||(f[5]=Jt(()=>{},["prevent"]))},[S("label",{title:x.value,id:"localsearch-label",for:"localsearch-input"},f[8]||(f[8]=[S("span",{"aria-hidden":"true",class:"vpi-search search-icon local-search-icon"},null,-1)]),8,qs),S("div",Gs,[S("button",{class:"back-button",title:D(u)("modal.backButtonTitle"),onClick:f[1]||(f[1]=I=>m.$emit("close"))},f[9]||(f[9]=[S("span",{class:"vpi-arrow-left local-search-icon"},null,-1)]),8,Hs)]),Ut(S("input",{ref_key:"searchInput",ref:W,"onUpdate:modelValue":f[2]||(f[2]=I=>Gt(p)?p.value=I:null),placeholder:x.value,id:"localsearch-input","aria-labelledby":"localsearch-label",class:"search-input"},null,8,Qs),[[qt,D(p)]]),S("div",Ys,[y.value?xe("",!0):(q(),Y("button",{key:0,class:tt(["toggle-layout-button",{"detailed-list":D(b)}]),type:"button",title:D(u)("modal.displayDetails"),onClick:f[3]||(f[3]=I=>P.value>-1&&(b.value=!D(b)))},f[10]||(f[10]=[S("span",{class:"vpi-layout-list local-search-icon"},null,-1)]),10,Zs)),S("button",{class:"clear-button",type:"reset",disabled:V.value,title:D(u)("modal.resetButtonTitle"),onClick:_},f[11]||(f[11]=[S("span",{class:"vpi-delete local-search-icon"},null,-1)]),8,Xs)])],32),S("ul",{ref_key:"resultsEl",ref:n,id:(A=w.value)!=null&&A.length?"localsearch-list":void 0,role:(C=w.value)!=null&&C.length?"listbox":void 0,"aria-labelledby":(M=w.value)!=null&&M.length?"localsearch-label":void 0,class:"results",onMousemove:f[7]||(f[7]=I=>H.value=!1)},[(q(!0),Y(nt,null,st(w.value,(I,L)=>(q(),Y("li",{key:I.id,role:"option","aria-selected":P.value===L?"true":"false"},[S("a",{href:I.id,class:tt(["result",{selected:P.value===L}]),"aria-label":[...I.titles,I.title].join(" > "),onMouseenter:j=>!H.value&&(P.value=L),onFocusin:j=>P.value=L,onClick:f[6]||(f[6]=j=>m.$emit("close"))},[S("div",null,[S("div",nn,[f[13]||(f[13]=S("span",{class:"title-icon"},"#",-1)),(q(!0),Y(nt,null,st(I.titles,(j,ge)=>(q(),Y("span",{key:ge,class:"title"},[S("span",{class:"text",innerHTML:j},null,8,rn),f[12]||(f[12]=S("span",{class:"vpi-chevron-right local-search-icon"},null,-1))]))),128)),S("span",an,[S("span",{class:"text",innerHTML:I.title},null,8,on)])]),D(b)?(q(),Y("div",ln,[I.text?(q(),Y("div",cn,[S("div",{class:"vp-doc",innerHTML:I.text},null,8,un)])):xe("",!0),f[14]||(f[14]=S("div",{class:"excerpt-gradient-bottom"},null,-1)),f[15]||(f[15]=S("div",{class:"excerpt-gradient-top"},null,-1))])):xe("",!0)])],42,sn)],8,tn))),128)),D(p)&&!w.value.length&&O.value?(q(),Y("li",dn,[de(he(D(u)("modal.noResultsText"))+' "',1),S("strong",null,he(D(p)),1),f[16]||(f[16]=de('" '))])):xe("",!0)],40,en),S("div",hn,[S("span",null,[S("kbd",{"aria-label":D(u)("modal.footer.navigateUpKeyAriaLabel")},f[17]||(f[17]=[S("span",{class:"vpi-arrow-up navigate-icon"},null,-1)]),8,fn),S("kbd",{"aria-label":D(u)("modal.footer.navigateDownKeyAriaLabel")},f[18]||(f[18]=[S("span",{class:"vpi-arrow-down navigate-icon"},null,-1)]),8,pn),de(" "+he(D(u)("modal.footer.navigateText")),1)]),S("span",null,[S("kbd",{"aria-label":D(u)("modal.footer.selectKeyAriaLabel")},f[19]||(f[19]=[S("span",{class:"vpi-corner-down-left navigate-icon"},null,-1)]),8,vn),de(" "+he(D(u)("modal.footer.selectText")),1)]),S("span",null,[S("kbd",{"aria-label":D(u)("modal.footer.closeKeyAriaLabel")},"esc",8,mn),de(" "+he(D(u)("modal.footer.closeText")),1)])])])],8,Js)])}}}),_n=es(gn,[["__scopeId","data-v-5b749456"]]);export{_n as default}; diff --git a/docs/assets/chunks/framework.BAnOA2-A.js b/docs/assets/chunks/framework.BAnOA2-A.js new file mode 100644 index 00000000..924f83ba --- /dev/null +++ b/docs/assets/chunks/framework.BAnOA2-A.js @@ -0,0 +1,18 @@ +/** +* @vue/shared v3.5.11 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function Hs(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const Z={},Tt=[],Be=()=>{},Jo=()=>!1,Zt=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),$s=e=>e.startsWith("onUpdate:"),fe=Object.assign,Ds=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},zo=Object.prototype.hasOwnProperty,z=(e,t)=>zo.call(e,t),K=Array.isArray,Ct=e=>$n(e)==="[object Map]",fi=e=>$n(e)==="[object Set]",q=e=>typeof e=="function",re=e=>typeof e=="string",st=e=>typeof e=="symbol",ne=e=>e!==null&&typeof e=="object",ui=e=>(ne(e)||q(e))&&q(e.then)&&q(e.catch),di=Object.prototype.toString,$n=e=>di.call(e),Qo=e=>$n(e).slice(8,-1),hi=e=>$n(e)==="[object Object]",js=e=>re(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,At=Hs(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Dn=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Zo=/-(\w)/g,Le=Dn(e=>e.replace(Zo,(t,n)=>n?n.toUpperCase():"")),el=/\B([A-Z])/g,rt=Dn(e=>e.replace(el,"-$1").toLowerCase()),jn=Dn(e=>e.charAt(0).toUpperCase()+e.slice(1)),Sn=Dn(e=>e?`on${jn(e)}`:""),tt=(e,t)=>!Object.is(e,t),En=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},Ss=e=>{const t=parseFloat(e);return isNaN(t)?e:t},tl=e=>{const t=re(e)?Number(e):NaN;return isNaN(t)?e:t};let dr;const gi=()=>dr||(dr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Vs(e){if(K(e)){const t={};for(let n=0;n{if(n){const s=n.split(sl);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Us(e){let t="";if(re(e))t=e;else if(K(e))for(let n=0;n!!(e&&e.__v_isRef===!0),cl=e=>re(e)?e:e==null?"":K(e)||ne(e)&&(e.toString===di||!q(e.toString))?yi(e)?cl(e.value):JSON.stringify(e,vi,2):String(e),vi=(e,t)=>yi(t)?vi(e,t.value):Ct(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[ts(s,i)+" =>"]=r,n),{})}:fi(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>ts(n))}:st(t)?ts(t):ne(t)&&!K(t)&&!hi(t)?String(t):t,ts=(e,t="")=>{var n;return st(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.5.11 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let _e;class al{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=_e,!t&&_e&&(this.index=(_e.scopes||(_e.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t0)return;if(jt){let t=jt;for(jt=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Dt;){let t=Dt;for(Dt=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function Ei(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function xi(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),Ws(s),ul(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function Es(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Ti(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Ti(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Kt))return;e.globalVersion=Kt;const t=e.dep;if(e.flags|=2,t.version>0&&!e.isSSR&&e.deps&&!Es(e)){e.flags&=-3;return}const n=te,s=Ne;te=e,Ne=!0;try{Ei(e);const r=e.fn(e._value);(t.version===0||tt(r,e._value))&&(e._value=r,t.version++)}catch(r){throw t.version++,r}finally{te=n,Ne=s,xi(e),e.flags&=-3}}function Ws(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s),!n.subs&&n.computed){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)Ws(i,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function ul(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Ne=!0;const Ci=[];function it(){Ci.push(Ne),Ne=!1}function ot(){const e=Ci.pop();Ne=e===void 0?!0:e}function hr(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=te;te=void 0;try{t()}finally{te=n}}}let Kt=0;class dl{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Vn{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(t){if(!te||!Ne||te===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==te)n=this.activeLink=new dl(te,this),te.deps?(n.prevDep=te.depsTail,te.depsTail.nextDep=n,te.depsTail=n):te.deps=te.depsTail=n,Ai(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=te.depsTail,n.nextDep=void 0,te.depsTail.nextDep=n,te.depsTail=n,te.deps===n&&(te.deps=s)}return n}trigger(t){this.version++,Kt++,this.notify(t)}notify(t){Bs();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{ks()}}}function Ai(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)Ai(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const On=new WeakMap,ht=Symbol(""),xs=Symbol(""),qt=Symbol("");function ve(e,t,n){if(Ne&&te){let s=On.get(e);s||On.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new Vn),r.map=s,r.key=n),r.track()}}function Ge(e,t,n,s,r,i){const o=On.get(e);if(!o){Kt++;return}const l=c=>{c&&c.trigger()};if(Bs(),t==="clear")o.forEach(l);else{const c=K(e),f=c&&js(n);if(c&&n==="length"){const a=Number(s);o.forEach((h,g)=>{(g==="length"||g===qt||!st(g)&&g>=a)&&l(h)})}else switch(n!==void 0&&l(o.get(n)),f&&l(o.get(qt)),t){case"add":c?f&&l(o.get("length")):(l(o.get(ht)),Ct(e)&&l(o.get(xs)));break;case"delete":c||(l(o.get(ht)),Ct(e)&&l(o.get(xs)));break;case"set":Ct(e)&&l(o.get(ht));break}}ks()}function hl(e,t){const n=On.get(e);return n&&n.get(t)}function _t(e){const t=J(e);return t===e?t:(ve(t,"iterate",qt),Pe(e)?t:t.map(me))}function Un(e){return ve(e=J(e),"iterate",qt),e}const pl={__proto__:null,[Symbol.iterator](){return ss(this,Symbol.iterator,me)},concat(...e){return _t(this).concat(...e.map(t=>K(t)?_t(t):t))},entries(){return ss(this,"entries",e=>(e[1]=me(e[1]),e))},every(e,t){return We(this,"every",e,t,void 0,arguments)},filter(e,t){return We(this,"filter",e,t,n=>n.map(me),arguments)},find(e,t){return We(this,"find",e,t,me,arguments)},findIndex(e,t){return We(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return We(this,"findLast",e,t,me,arguments)},findLastIndex(e,t){return We(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return We(this,"forEach",e,t,void 0,arguments)},includes(...e){return rs(this,"includes",e)},indexOf(...e){return rs(this,"indexOf",e)},join(e){return _t(this).join(e)},lastIndexOf(...e){return rs(this,"lastIndexOf",e)},map(e,t){return We(this,"map",e,t,void 0,arguments)},pop(){return Ft(this,"pop")},push(...e){return Ft(this,"push",e)},reduce(e,...t){return pr(this,"reduce",e,t)},reduceRight(e,...t){return pr(this,"reduceRight",e,t)},shift(){return Ft(this,"shift")},some(e,t){return We(this,"some",e,t,void 0,arguments)},splice(...e){return Ft(this,"splice",e)},toReversed(){return _t(this).toReversed()},toSorted(e){return _t(this).toSorted(e)},toSpliced(...e){return _t(this).toSpliced(...e)},unshift(...e){return Ft(this,"unshift",e)},values(){return ss(this,"values",me)}};function ss(e,t,n){const s=Un(e),r=s[t]();return s!==e&&!Pe(e)&&(r._next=r.next,r.next=()=>{const i=r._next();return i.value&&(i.value=n(i.value)),i}),r}const gl=Array.prototype;function We(e,t,n,s,r,i){const o=Un(e),l=o!==e&&!Pe(e),c=o[t];if(c!==gl[t]){const h=c.apply(e,i);return l?me(h):h}let f=n;o!==e&&(l?f=function(h,g){return n.call(this,me(h),g,e)}:n.length>2&&(f=function(h,g){return n.call(this,h,g,e)}));const a=c.call(o,f,s);return l&&r?r(a):a}function pr(e,t,n,s){const r=Un(e);let i=n;return r!==e&&(Pe(e)?n.length>3&&(i=function(o,l,c){return n.call(this,o,l,c,e)}):i=function(o,l,c){return n.call(this,o,me(l),c,e)}),r[t](i,...s)}function rs(e,t,n){const s=J(e);ve(s,"iterate",qt);const r=s[t](...n);return(r===-1||r===!1)&&Ys(n[0])?(n[0]=J(n[0]),s[t](...n)):r}function Ft(e,t,n=[]){it(),Bs();const s=J(e)[t].apply(e,n);return ks(),ot(),s}const ml=Hs("__proto__,__v_isRef,__isVue"),Ri=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(st));function yl(e){st(e)||(e=String(e));const t=J(this);return ve(t,"has",e),t.hasOwnProperty(e)}class Oi{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?Ml:Ii:i?Li:Pi).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=K(t);if(!r){let c;if(o&&(c=pl[n]))return c;if(n==="hasOwnProperty")return yl}const l=Reflect.get(t,n,ae(t)?t:s);return(st(n)?Ri.has(n):ml(n))||(r||ve(t,"get",n),i)?l:ae(l)?o&&js(n)?l:l.value:ne(l)?r?Wn(l):kn(l):l}}class Mi extends Oi{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];if(!this._isShallow){const c=vt(i);if(!Pe(s)&&!vt(s)&&(i=J(i),s=J(s)),!K(t)&&ae(i)&&!ae(s))return c?!1:(i.value=s,!0)}const o=K(t)&&js(n)?Number(n)e,Bn=e=>Reflect.getPrototypeOf(e);function cn(e,t,n=!1,s=!1){e=e.__v_raw;const r=J(e),i=J(t);n||(tt(t,i)&&ve(r,"get",t),ve(r,"get",i));const{has:o}=Bn(r),l=s?Ks:n?Xs:me;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 an(e,t=!1){const n=this.__v_raw,s=J(n),r=J(e);return t||(tt(e,r)&&ve(s,"has",e),ve(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function fn(e,t=!1){return e=e.__v_raw,!t&&ve(J(e),"iterate",ht),Reflect.get(e,"size",e)}function gr(e,t=!1){!t&&!Pe(e)&&!vt(e)&&(e=J(e));const n=J(this);return Bn(n).has.call(n,e)||(n.add(e),Ge(n,"add",e,e)),this}function mr(e,t,n=!1){!n&&!Pe(t)&&!vt(t)&&(t=J(t));const s=J(this),{has:r,get:i}=Bn(s);let o=r.call(s,e);o||(e=J(e),o=r.call(s,e));const l=i.call(s,e);return s.set(e,t),o?tt(t,l)&&Ge(s,"set",e,t):Ge(s,"add",e,t),this}function yr(e){const t=J(this),{has:n,get:s}=Bn(t);let r=n.call(t,e);r||(e=J(e),r=n.call(t,e)),s&&s.call(t,e);const i=t.delete(e);return r&&Ge(t,"delete",e,void 0),i}function vr(){const e=J(this),t=e.size!==0,n=e.clear();return t&&Ge(e,"clear",void 0,void 0),n}function un(e,t){return function(s,r){const i=this,o=i.__v_raw,l=J(o),c=t?Ks:e?Xs:me;return!e&&ve(l,"iterate",ht),o.forEach((f,a)=>s.call(r,c(f),c(a),i))}}function dn(e,t,n){return function(...s){const r=this.__v_raw,i=J(r),o=Ct(i),l=e==="entries"||e===Symbol.iterator&&o,c=e==="keys"&&o,f=r[e](...s),a=n?Ks:t?Xs:me;return!t&&ve(i,"iterate",c?xs:ht),{next(){const{value:h,done:g}=f.next();return g?{value:h,done:g}:{value:l?[a(h[0]),a(h[1])]:a(h),done:g}},[Symbol.iterator](){return this}}}}function Xe(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Sl(){const e={get(i){return cn(this,i)},get size(){return fn(this)},has:an,add:gr,set:mr,delete:yr,clear:vr,forEach:un(!1,!1)},t={get(i){return cn(this,i,!1,!0)},get size(){return fn(this)},has:an,add(i){return gr.call(this,i,!0)},set(i,o){return mr.call(this,i,o,!0)},delete:yr,clear:vr,forEach:un(!1,!0)},n={get(i){return cn(this,i,!0)},get size(){return fn(this,!0)},has(i){return an.call(this,i,!0)},add:Xe("add"),set:Xe("set"),delete:Xe("delete"),clear:Xe("clear"),forEach:un(!0,!1)},s={get(i){return cn(this,i,!0,!0)},get size(){return fn(this,!0)},has(i){return an.call(this,i,!0)},add:Xe("add"),set:Xe("set"),delete:Xe("delete"),clear:Xe("clear"),forEach:un(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=dn(i,!1,!1),n[i]=dn(i,!0,!1),t[i]=dn(i,!1,!0),s[i]=dn(i,!0,!0)}),[e,n,t,s]}const[El,xl,Tl,Cl]=Sl();function qs(e,t){const n=t?e?Cl:Tl:e?xl:El;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(z(n,r)&&r in s?n:s,r,i)}const Al={get:qs(!1,!1)},Rl={get:qs(!1,!0)},Ol={get:qs(!0,!1)};const Pi=new WeakMap,Li=new WeakMap,Ii=new WeakMap,Ml=new WeakMap;function Pl(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Ll(e){return e.__v_skip||!Object.isExtensible(e)?0:Pl(Qo(e))}function kn(e){return vt(e)?e:Gs(e,!1,bl,Al,Pi)}function Il(e){return Gs(e,!1,wl,Rl,Li)}function Wn(e){return Gs(e,!0,_l,Ol,Ii)}function Gs(e,t,n,s,r){if(!ne(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=Ll(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function pt(e){return vt(e)?pt(e.__v_raw):!!(e&&e.__v_isReactive)}function vt(e){return!!(e&&e.__v_isReadonly)}function Pe(e){return!!(e&&e.__v_isShallow)}function Ys(e){return e?!!e.__v_raw:!1}function J(e){const t=e&&e.__v_raw;return t?J(t):e}function xn(e){return!z(e,"__v_skip")&&Object.isExtensible(e)&&pi(e,"__v_skip",!0),e}const me=e=>ne(e)?kn(e):e,Xs=e=>ne(e)?Wn(e):e;function ae(e){return e?e.__v_isRef===!0:!1}function oe(e){return Ni(e,!1)}function Js(e){return Ni(e,!0)}function Ni(e,t){return ae(e)?e:new Nl(e,t)}class Nl{constructor(t,n){this.dep=new Vn,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:J(t),this._value=n?t:me(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||Pe(t)||vt(t);t=s?t:J(t),tt(t,n)&&(this._rawValue=t,this._value=s?t:me(t),this.dep.trigger())}}function Fi(e){return ae(e)?e.value:e}const Fl={get:(e,t,n)=>t==="__v_raw"?e:Fi(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return ae(r)&&!ae(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function Hi(e){return pt(e)?e:new Proxy(e,Fl)}class Hl{constructor(t){this.__v_isRef=!0,this._value=void 0;const n=this.dep=new Vn,{get:s,set:r}=t(n.track.bind(n),n.trigger.bind(n));this._get=s,this._set=r}get value(){return this._value=this._get()}set value(t){this._set(t)}}function $l(e){return new Hl(e)}class Dl{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0}get value(){const t=this._object[this._key];return this._value=t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return hl(J(this._object),this._key)}}class jl{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Vl(e,t,n){return ae(e)?e:q(e)?new jl(e):ne(e)&&arguments.length>1?Ul(e,t,n):oe(e)}function Ul(e,t,n){const s=e[t];return ae(s)?s:new Dl(e,t,n)}class Bl{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Vn(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Kt-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&te!==this)return Si(this,!0),!0}get value(){const t=this.dep.track();return Ti(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function kl(e,t,n=!1){let s,r;return q(e)?s=e:(s=e.get,r=e.set),new Bl(s,r,n)}const hn={},Mn=new WeakMap;let ut;function Wl(e,t=!1,n=ut){if(n){let s=Mn.get(n);s||Mn.set(n,s=[]),s.push(e)}}function Kl(e,t,n=Z){const{immediate:s,deep:r,once:i,scheduler:o,augmentJob:l,call:c}=n,f=m=>r?m:Pe(m)||r===!1||r===0?qe(m,1):qe(m);let a,h,g,b,S=!1,_=!1;if(ae(e)?(h=()=>e.value,S=Pe(e)):pt(e)?(h=()=>f(e),S=!0):K(e)?(_=!0,S=e.some(m=>pt(m)||Pe(m)),h=()=>e.map(m=>{if(ae(m))return m.value;if(pt(m))return f(m);if(q(m))return c?c(m,2):m()})):q(e)?t?h=c?()=>c(e,2):e:h=()=>{if(g){it();try{g()}finally{ot()}}const m=ut;ut=a;try{return c?c(e,3,[b]):e(b)}finally{ut=m}}:h=Be,t&&r){const m=h,M=r===!0?1/0:r;h=()=>qe(m(),M)}const k=bi(),N=()=>{a.stop(),k&&Ds(k.effects,a)};if(i&&t){const m=t;t=(...M)=>{m(...M),N()}}let j=_?new Array(e.length).fill(hn):hn;const p=m=>{if(!(!(a.flags&1)||!a.dirty&&!m))if(t){const M=a.run();if(r||S||(_?M.some((F,$)=>tt(F,j[$])):tt(M,j))){g&&g();const F=ut;ut=a;try{const $=[M,j===hn?void 0:_&&j[0]===hn?[]:j,b];c?c(t,3,$):t(...$),j=M}finally{ut=F}}}else a.run()};return l&&l(p),a=new _i(h),a.scheduler=o?()=>o(p,!1):p,b=m=>Wl(m,!1,a),g=a.onStop=()=>{const m=Mn.get(a);if(m){if(c)c(m,4);else for(const M of m)M();Mn.delete(a)}},t?s?p(!0):j=a.run():o?o(p.bind(null,!0),!0):a.run(),N.pause=a.pause.bind(a),N.resume=a.resume.bind(a),N.stop=N,N}function qe(e,t=1/0,n){if(t<=0||!ne(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,ae(e))qe(e.value,t,n);else if(K(e))for(let s=0;s{qe(s,t,n)});else if(hi(e)){for(const s in e)qe(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&qe(e[s],t,n)}return e}/** +* @vue/runtime-core v3.5.11 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function en(e,t,n,s){try{return s?e(...s):e()}catch(r){tn(r,t,n)}}function He(e,t,n,s){if(q(e)){const r=en(e,t,n,s);return r&&ui(r)&&r.catch(i=>{tn(i,t,n)}),r}if(K(e)){const r=[];for(let i=0;i>>1,r=we[s],i=Gt(r);i=Gt(n)?we.push(e):we.splice(Gl(t),0,e),e.flags|=1,Di()}}function Di(){Pn||(Pn=$i.then(ji))}function Yl(e){K(e)?Rt.push(...e):Qe&&e.id===-1?Qe.splice(St+1,0,e):e.flags&1||(Rt.push(e),e.flags|=1),Di()}function br(e,t,n=Ve+1){for(;nGt(n)-Gt(s));if(Rt.length=0,Qe){Qe.push(...t);return}for(Qe=t,St=0;Ste.id==null?e.flags&2?-1:1/0:e.id;function ji(e){try{for(Ve=0;Ve{s._d&&Ir(-1);const i=In(t);let o;try{o=e(...r)}finally{In(i),s._d&&Ir(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function Pf(e,t){if(de===null)return e;const n=zn(de),s=e.dirs||(e.dirs=[]);for(let r=0;re.__isTeleport,Vt=e=>e&&(e.disabled||e.disabled===""),Jl=e=>e&&(e.defer||e.defer===""),_r=e=>typeof SVGElement<"u"&&e instanceof SVGElement,wr=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Ts=(e,t)=>{const n=e&&e.to;return re(n)?t?t(n):null:n},zl={name:"Teleport",__isTeleport:!0,process(e,t,n,s,r,i,o,l,c,f){const{mc:a,pc:h,pbc:g,o:{insert:b,querySelector:S,createText:_,createComment:k}}=f,N=Vt(t.props);let{shapeFlag:j,children:p,dynamicChildren:m}=t;if(e==null){const M=t.el=_(""),F=t.anchor=_("");b(M,n,s),b(F,n,s);const $=(R,v)=>{j&16&&(r&&r.isCE&&(r.ce._teleportTarget=R),a(p,R,v,r,i,o,l,c))},V=()=>{const R=t.target=Ts(t.props,S),v=ki(R,t,_,b);R&&(o!=="svg"&&_r(R)?o="svg":o!=="mathml"&&wr(R)&&(o="mathml"),N||($(R,v),Tn(t)))};N&&($(n,F),Tn(t)),Jl(t.props)?Ee(V,i):V()}else{t.el=e.el,t.targetStart=e.targetStart;const M=t.anchor=e.anchor,F=t.target=e.target,$=t.targetAnchor=e.targetAnchor,V=Vt(e.props),R=V?n:F,v=V?M:$;if(o==="svg"||_r(F)?o="svg":(o==="mathml"||wr(F))&&(o="mathml"),m?(g(e.dynamicChildren,m,R,r,i,o,l),nr(e,t,!0)):c||h(e,t,R,v,r,i,o,l,!1),N)V?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):pn(t,n,M,f,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const I=t.target=Ts(t.props,S);I&&pn(t,I,null,f,0)}else V&&pn(t,F,$,f,1);Tn(t)}},remove(e,t,n,{um:s,o:{remove:r}},i){const{shapeFlag:o,children:l,anchor:c,targetStart:f,targetAnchor:a,target:h,props:g}=e;if(h&&(r(f),r(a)),i&&r(c),o&16){const b=i||!Vt(g);for(let S=0;S{e.isMounted=!0}),Ji(()=>{e.isUnmounting=!0}),e}const Re=[Function,Array],Wi={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Re,onEnter:Re,onAfterEnter:Re,onEnterCancelled:Re,onBeforeLeave:Re,onLeave:Re,onAfterLeave:Re,onLeaveCancelled:Re,onBeforeAppear:Re,onAppear:Re,onAfterAppear:Re,onAppearCancelled:Re},Ki=e=>{const t=e.subTree;return t.component?Ki(t.component):t},ec={name:"BaseTransition",props:Wi,setup(e,{slots:t}){const n=Jn(),s=Zl();return()=>{const r=t.default&&Yi(t.default(),!0);if(!r||!r.length)return;const i=qi(r),o=J(e),{mode:l}=o;if(s.isLeaving)return is(i);const c=Sr(i);if(!c)return is(i);let f=Cs(c,o,s,n,g=>f=g);c.type!==ye&&Yt(c,f);const a=n.subTree,h=a&&Sr(a);if(h&&h.type!==ye&&!dt(c,h)&&Ki(n).type!==ye){const g=Cs(h,o,s,n);if(Yt(h,g),l==="out-in"&&c.type!==ye)return s.isLeaving=!0,g.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete g.afterLeave},is(i);l==="in-out"&&c.type!==ye&&(g.delayLeave=(b,S,_)=>{const k=Gi(s,h);k[String(h.key)]=h,b[Ze]=()=>{S(),b[Ze]=void 0,delete f.delayedLeave},f.delayedLeave=_})}return i}}};function qi(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==ye){t=n;break}}return t}const tc=ec;function Gi(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 Cs(e,t,n,s,r){const{appear:i,mode:o,persisted:l=!1,onBeforeEnter:c,onEnter:f,onAfterEnter:a,onEnterCancelled:h,onBeforeLeave:g,onLeave:b,onAfterLeave:S,onLeaveCancelled:_,onBeforeAppear:k,onAppear:N,onAfterAppear:j,onAppearCancelled:p}=t,m=String(e.key),M=Gi(n,e),F=(R,v)=>{R&&He(R,s,9,v)},$=(R,v)=>{const I=v[1];F(R,v),K(R)?R.every(x=>x.length<=1)&&I():R.length<=1&&I()},V={mode:o,persisted:l,beforeEnter(R){let v=c;if(!n.isMounted)if(i)v=k||c;else return;R[Ze]&&R[Ze](!0);const I=M[m];I&&dt(e,I)&&I.el[Ze]&&I.el[Ze](),F(v,[R])},enter(R){let v=f,I=a,x=h;if(!n.isMounted)if(i)v=N||f,I=j||a,x=p||h;else return;let W=!1;const se=R[gn]=ce=>{W||(W=!0,ce?F(x,[R]):F(I,[R]),V.delayedLeave&&V.delayedLeave(),R[gn]=void 0)};v?$(v,[R,se]):se()},leave(R,v){const I=String(e.key);if(R[gn]&&R[gn](!0),n.isUnmounting)return v();F(g,[R]);let x=!1;const W=R[Ze]=se=>{x||(x=!0,v(),se?F(_,[R]):F(S,[R]),R[Ze]=void 0,M[I]===e&&delete M[I])};M[I]=e,b?$(b,[R,W]):W()},clone(R){const v=Cs(R,t,n,s,r);return r&&r(v),v}};return V}function is(e){if(nn(e))return e=nt(e),e.children=null,e}function Sr(e){if(!nn(e))return Bi(e.type)&&e.children?qi(e.children):e;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&q(n.default))return n.default()}}function Yt(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Yt(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 Yi(e,t=!1,n){let s=[],r=0;for(let i=0;i1)for(let i=0;iNn(S,t&&(K(t)?t[_]:t),n,s,r));return}if(gt(s)&&!r)return;const i=s.shapeFlag&4?zn(s.component):s.el,o=r?null:i,{i:l,r:c}=e,f=t&&t.r,a=l.refs===Z?l.refs={}:l.refs,h=l.setupState,g=J(h),b=h===Z?()=>!1:S=>z(g,S);if(f!=null&&f!==c&&(re(f)?(a[f]=null,b(f)&&(h[f]=null)):ae(f)&&(f.value=null)),q(c))en(c,l,12,[o,a]);else{const S=re(c),_=ae(c);if(S||_){const k=()=>{if(e.f){const N=S?b(c)?h[c]:a[c]:c.value;r?K(N)&&Ds(N,i):K(N)?N.includes(i)||N.push(i):S?(a[c]=[i],b(c)&&(h[c]=a[c])):(c.value=[i],e.k&&(a[e.k]=c.value))}else S?(a[c]=o,b(c)&&(h[c]=o)):_&&(c.value=o,e.k&&(a[e.k]=o))};o?(k.id=-1,Ee(k,n)):k()}}}let Er=!1;const wt=()=>{Er||(console.error("Hydration completed but contains mismatches."),Er=!0)},nc=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",sc=e=>e.namespaceURI.includes("MathML"),mn=e=>{if(e.nodeType===1){if(nc(e))return"svg";if(sc(e))return"mathml"}},xt=e=>e.nodeType===8;function rc(e){const{mt:t,p:n,o:{patchProp:s,createText:r,nextSibling:i,parentNode:o,remove:l,insert:c,createComment:f}}=e,a=(p,m)=>{if(!m.hasChildNodes()){n(null,p,m),Ln(),m._vnode=p;return}h(m.firstChild,p,null,null,null),Ln(),m._vnode=p},h=(p,m,M,F,$,V=!1)=>{V=V||!!m.dynamicChildren;const R=xt(p)&&p.data==="[",v=()=>_(p,m,M,F,$,R),{type:I,ref:x,shapeFlag:W,patchFlag:se}=m;let ce=p.nodeType;m.el=p,se===-2&&(V=!1,m.dynamicChildren=null);let U=null;switch(I){case mt:ce!==3?m.children===""?(c(m.el=r(""),o(p),p),U=p):U=v():(p.data!==m.children&&(wt(),p.data=m.children),U=i(p));break;case ye:j(p)?(U=i(p),N(m.el=p.content.firstChild,p,M)):ce!==8||R?U=v():U=i(p);break;case Bt:if(R&&(p=i(p),ce=p.nodeType),ce===1||ce===3){U=p;const Y=!m.children.length;for(let D=0;D{V=V||!!m.dynamicChildren;const{type:R,props:v,patchFlag:I,shapeFlag:x,dirs:W,transition:se}=m,ce=R==="input"||R==="option";if(ce||I!==-1){W&&Ue(m,null,M,"created");let U=!1;if(j(p)){U=po(F,se)&&M&&M.vnode.props&&M.vnode.props.appear;const D=p.content.firstChild;U&&se.beforeEnter(D),N(D,p,M),m.el=p=D}if(x&16&&!(v&&(v.innerHTML||v.textContent))){let D=b(p.firstChild,m,p,M,F,$,V);for(;D;){yn(p,1)||wt();const he=D;D=D.nextSibling,l(he)}}else if(x&8){let D=m.children;D[0]===` +`&&(p.tagName==="PRE"||p.tagName==="TEXTAREA")&&(D=D.slice(1)),p.textContent!==D&&(yn(p,0)||wt(),p.textContent=m.children)}if(v){if(ce||!V||I&48){const D=p.tagName.includes("-");for(const he in v)(ce&&(he.endsWith("value")||he==="indeterminate")||Zt(he)&&!At(he)||he[0]==="."||D)&&s(p,he,null,v[he],void 0,M)}else if(v.onClick)s(p,"onClick",null,v.onClick,void 0,M);else if(I&4&&pt(v.style))for(const D in v.style)v.style[D]}let Y;(Y=v&&v.onVnodeBeforeMount)&&Oe(Y,M,m),W&&Ue(m,null,M,"beforeMount"),((Y=v&&v.onVnodeMounted)||W||U)&&bo(()=>{Y&&Oe(Y,M,m),U&&se.enter(p),W&&Ue(m,null,M,"mounted")},F)}return p.nextSibling},b=(p,m,M,F,$,V,R)=>{R=R||!!m.dynamicChildren;const v=m.children,I=v.length;for(let x=0;x{const{slotScopeIds:R}=m;R&&($=$?$.concat(R):R);const v=o(p),I=b(i(p),m,v,M,F,$,V);return I&&xt(I)&&I.data==="]"?i(m.anchor=I):(wt(),c(m.anchor=f("]"),v,I),I)},_=(p,m,M,F,$,V)=>{if(yn(p.parentElement,1)||wt(),m.el=null,V){const I=k(p);for(;;){const x=i(p);if(x&&x!==I)l(x);else break}}const R=i(p),v=o(p);return l(p),n(null,m,v,R,M,F,mn(v),$),R},k=(p,m="[",M="]")=>{let F=0;for(;p;)if(p=i(p),p&&xt(p)&&(p.data===m&&F++,p.data===M)){if(F===0)return i(p);F--}return p},N=(p,m,M)=>{const F=m.parentNode;F&&F.replaceChild(p,m);let $=M;for(;$;)$.vnode.el===m&&($.vnode.el=$.subTree.el=p),$=$.parent},j=p=>p.nodeType===1&&p.tagName==="TEMPLATE";return[a,h]}const xr="data-allow-mismatch",ic={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function yn(e,t){if(t===0||t===1)for(;e&&!e.hasAttribute(xr);)e=e.parentElement;const n=e&&e.getAttribute(xr);if(n==null)return!1;if(n==="")return!0;{const s=n.split(",");return t===0&&s.includes("children")?!0:n.split(",").includes(ic[t])}}function oc(e,t){if(xt(e)&&e.data==="["){let n=1,s=e.nextSibling;for(;s;){if(s.nodeType===1){if(t(s)===!1)break}else if(xt(s))if(s.data==="]"){if(--n===0)break}else s.data==="["&&n++;s=s.nextSibling}}else t(e)}const gt=e=>!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function If(e){q(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:r=200,hydrate:i,timeout:o,suspensible:l=!0,onError:c}=e;let f=null,a,h=0;const g=()=>(h++,f=null,b()),b=()=>{let S;return f||(S=f=t().catch(_=>{if(_=_ instanceof Error?_:new Error(String(_)),c)return new Promise((k,N)=>{c(_,()=>k(g()),()=>N(_),h+1)});throw _}).then(_=>S!==f&&f?f:(_&&(_.__esModule||_[Symbol.toStringTag]==="Module")&&(_=_.default),a=_,_)))};return Qs({name:"AsyncComponentWrapper",__asyncLoader:b,__asyncHydrate(S,_,k){const N=i?()=>{const j=i(k,p=>oc(S,p));j&&(_.bum||(_.bum=[])).push(j)}:k;a?N():b().then(()=>!_.isUnmounted&&N())},get __asyncResolved(){return a},setup(){const S=ue;if(Zs(S),a)return()=>os(a,S);const _=p=>{f=null,tn(p,S,13,!s)};if(l&&S.suspense||rn)return b().then(p=>()=>os(p,S)).catch(p=>(_(p),()=>s?le(s,{error:p}):null));const k=oe(!1),N=oe(),j=oe(!!r);return r&&setTimeout(()=>{j.value=!1},r),o!=null&&setTimeout(()=>{if(!k.value&&!N.value){const p=new Error(`Async component timed out after ${o}ms.`);_(p),N.value=p}},o),b().then(()=>{k.value=!0,S.parent&&nn(S.parent.vnode)&&S.parent.update()}).catch(p=>{_(p),N.value=p}),()=>{if(k.value&&a)return os(a,S);if(N.value&&s)return le(s,{error:N.value});if(n&&!j.value)return le(n)}}})}function os(e,t){const{ref:n,props:s,children:r,ce:i}=t.vnode,o=le(e,s,r);return o.ref=n,o.ce=i,delete t.vnode.ce,o}const nn=e=>e.type.__isKeepAlive;function lc(e,t){Xi(e,"a",t)}function cc(e,t){Xi(e,"da",t)}function Xi(e,t,n=ue){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(qn(t,s,n),n){let r=n.parent;for(;r&&r.parent;)nn(r.parent.vnode)&&ac(s,t,n,r),r=r.parent}}function ac(e,t,n,s){const r=qn(t,e,s,!0);Gn(()=>{Ds(s[t],r)},n)}function qn(e,t,n=ue,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{it();const l=sn(n),c=He(t,n,e,o);return l(),ot(),c});return s?r.unshift(i):r.push(i),i}}const Ye=e=>(t,n=ue)=>{(!rn||e==="sp")&&qn(e,(...s)=>t(...s),n)},fc=Ye("bm"),Lt=Ye("m"),uc=Ye("bu"),dc=Ye("u"),Ji=Ye("bum"),Gn=Ye("um"),hc=Ye("sp"),pc=Ye("rtg"),gc=Ye("rtc");function mc(e,t=ue){qn("ec",e,t)}const zi="components";function Nf(e,t){return Zi(zi,e,!0,t)||e}const Qi=Symbol.for("v-ndc");function Ff(e){return re(e)?Zi(zi,e,!1)||e:e||Qi}function Zi(e,t,n=!0,s=!1){const r=de||ue;if(r){const i=r.type;{const l=ta(i,!1);if(l&&(l===t||l===Le(t)||l===jn(Le(t))))return i}const o=Tr(r[e]||i[e],t)||Tr(r.appContext[e],t);return!o&&s?i:o}}function Tr(e,t){return e&&(e[t]||e[Le(t)]||e[jn(Le(t))])}function Hf(e,t,n,s){let r;const i=n,o=K(e);if(o||re(e)){const l=o&&pt(e);let c=!1;l&&(c=!Pe(e),e=Un(e)),r=new Array(e.length);for(let f=0,a=e.length;ft(l,c,void 0,i));else{const l=Object.keys(e);r=new Array(l.length);for(let c=0,f=l.length;cJt(t)?!(t.type===ye||t.type===Se&&!eo(t.children)):!0)?e:null}function Df(e,t){const n={};for(const s in e)n[/[A-Z]/.test(s)?`on:${s}`:Sn(s)]=e[s];return n}const As=e=>e?xo(e)?zn(e):As(e.parent):null,Ut=fe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>As(e.parent),$root:e=>As(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>er(e),$forceUpdate:e=>e.f||(e.f=()=>{zs(e.update)}),$nextTick:e=>e.n||(e.n=Kn.bind(e.proxy)),$watch:e=>Dc.bind(e)}),ls=(e,t)=>e!==Z&&!e.__isScriptSetup&&z(e,t),yc={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:c}=e;let f;if(t[0]!=="$"){const b=o[t];if(b!==void 0)switch(b){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(ls(s,t))return o[t]=1,s[t];if(r!==Z&&z(r,t))return o[t]=2,r[t];if((f=e.propsOptions[0])&&z(f,t))return o[t]=3,i[t];if(n!==Z&&z(n,t))return o[t]=4,n[t];Rs&&(o[t]=0)}}const a=Ut[t];let h,g;if(a)return t==="$attrs"&&ve(e.attrs,"get",""),a(e);if((h=l.__cssModules)&&(h=h[t]))return h;if(n!==Z&&z(n,t))return o[t]=4,n[t];if(g=c.config.globalProperties,z(g,t))return g[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return ls(r,t)?(r[t]=n,!0):s!==Z&&z(s,t)?(s[t]=n,!0):z(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,propsOptions:i}},o){let l;return!!n[o]||e!==Z&&z(e,o)||ls(t,o)||(l=i[0])&&z(l,o)||z(s,o)||z(Ut,o)||z(r.config.globalProperties,o)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:z(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function jf(){return vc().slots}function vc(){const e=Jn();return e.setupContext||(e.setupContext=Co(e))}function Cr(e){return K(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Rs=!0;function bc(e){const t=er(e),n=e.proxy,s=e.ctx;Rs=!1,t.beforeCreate&&Ar(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:o,watch:l,provide:c,inject:f,created:a,beforeMount:h,mounted:g,beforeUpdate:b,updated:S,activated:_,deactivated:k,beforeDestroy:N,beforeUnmount:j,destroyed:p,unmounted:m,render:M,renderTracked:F,renderTriggered:$,errorCaptured:V,serverPrefetch:R,expose:v,inheritAttrs:I,components:x,directives:W,filters:se}=t;if(f&&_c(f,s,null),o)for(const Y in o){const D=o[Y];q(D)&&(s[Y]=D.bind(n))}if(r){const Y=r.call(n,n);ne(Y)&&(e.data=kn(Y))}if(Rs=!0,i)for(const Y in i){const D=i[Y],he=q(D)?D.bind(n,n):q(D.get)?D.get.bind(n,n):Be,on=!q(D)&&q(D.set)?D.set.bind(n):Be,lt=ie({get:he,set:on});Object.defineProperty(s,Y,{enumerable:!0,configurable:!0,get:()=>lt.value,set:De=>lt.value=De})}if(l)for(const Y in l)to(l[Y],s,n,Y);if(c){const Y=q(c)?c.call(n):c;Reflect.ownKeys(Y).forEach(D=>{Cc(D,Y[D])})}a&&Ar(a,e,"c");function U(Y,D){K(D)?D.forEach(he=>Y(he.bind(n))):D&&Y(D.bind(n))}if(U(fc,h),U(Lt,g),U(uc,b),U(dc,S),U(lc,_),U(cc,k),U(mc,V),U(gc,F),U(pc,$),U(Ji,j),U(Gn,m),U(hc,R),K(v))if(v.length){const Y=e.exposed||(e.exposed={});v.forEach(D=>{Object.defineProperty(Y,D,{get:()=>n[D],set:he=>n[D]=he})})}else e.exposed||(e.exposed={});M&&e.render===Be&&(e.render=M),I!=null&&(e.inheritAttrs=I),x&&(e.components=x),W&&(e.directives=W),R&&Zs(e)}function _c(e,t,n=Be){K(e)&&(e=Os(e));for(const s in e){const r=e[s];let i;ne(r)?"default"in r?i=Mt(r.from||s,r.default,!0):i=Mt(r.from||s):i=Mt(r),ae(i)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[s]=i}}function Ar(e,t,n){He(K(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function to(e,t,n,s){let r=s.includes(".")?mo(n,s):()=>n[s];if(re(e)){const i=t[e];q(i)&&Fe(r,i)}else if(q(e))Fe(r,e.bind(n));else if(ne(e))if(K(e))e.forEach(i=>to(i,t,n,s));else{const i=q(e.handler)?e.handler.bind(n):t[e.handler];q(i)&&Fe(r,i,e)}}function er(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,l=i.get(t);let c;return l?c=l:!r.length&&!n&&!s?c=t:(c={},r.length&&r.forEach(f=>Fn(c,f,o,!0)),Fn(c,t,o)),ne(t)&&i.set(t,c),c}function Fn(e,t,n,s=!1){const{mixins:r,extends:i}=t;i&&Fn(e,i,n,!0),r&&r.forEach(o=>Fn(e,o,n,!0));for(const o in t)if(!(s&&o==="expose")){const l=wc[o]||n&&n[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const wc={data:Rr,props:Or,emits:Or,methods:$t,computed:$t,beforeCreate:be,created:be,beforeMount:be,mounted:be,beforeUpdate:be,updated:be,beforeDestroy:be,beforeUnmount:be,destroyed:be,unmounted:be,activated:be,deactivated:be,errorCaptured:be,serverPrefetch:be,components:$t,directives:$t,watch:Ec,provide:Rr,inject:Sc};function Rr(e,t){return t?e?function(){return fe(q(e)?e.call(this,this):e,q(t)?t.call(this,this):t)}:t:e}function Sc(e,t){return $t(Os(e),Os(t))}function Os(e){if(K(e)){const t={};for(let n=0;n1)return n&&q(t)?t.call(s&&s.proxy):t}}const so={},ro=()=>Object.create(so),io=e=>Object.getPrototypeOf(e)===so;function Ac(e,t,n,s=!1){const r={},i=ro();e.propsDefaults=Object.create(null),oo(e,t,r,i);for(const o in e.propsOptions[0])o in r||(r[o]=void 0);n?e.props=s?r:Il(r):e.type.props?e.props=r:e.props=i,e.attrs=i}function Rc(e,t,n,s){const{props:r,attrs:i,vnode:{patchFlag:o}}=e,l=J(r),[c]=e.propsOptions;let f=!1;if((s||o>0)&&!(o&16)){if(o&8){const a=e.vnode.dynamicProps;for(let h=0;h{c=!0;const[g,b]=lo(h,t,!0);fe(o,g),b&&l.push(...b)};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}if(!i&&!c)return ne(e)&&s.set(e,Tt),Tt;if(K(i))for(let a=0;ae[0]==="_"||e==="$stable",tr=e=>K(e)?e.map(Me):[Me(e)],Mc=(e,t,n)=>{if(t._n)return t;const s=Xl((...r)=>tr(t(...r)),n);return s._c=!1,s},ao=(e,t,n)=>{const s=e._ctx;for(const r in e){if(co(r))continue;const i=e[r];if(q(i))t[r]=Mc(r,i,s);else if(i!=null){const o=tr(i);t[r]=()=>o}}},fo=(e,t)=>{const n=tr(t);e.slots.default=()=>n},uo=(e,t,n)=>{for(const s in t)(n||s!=="_")&&(e[s]=t[s])},Pc=(e,t,n)=>{const s=e.slots=ro();if(e.vnode.shapeFlag&32){const r=t._;r?(uo(s,t,n),n&&pi(s,"_",r,!0)):ao(t,s)}else t&&fo(e,t)},Lc=(e,t,n)=>{const{vnode:s,slots:r}=e;let i=!0,o=Z;if(s.shapeFlag&32){const l=t._;l?n&&l===1?i=!1:uo(r,t,n):(i=!t.$stable,ao(t,r)),o=t}else t&&(fo(e,t),o={default:1});if(i)for(const l in r)!co(l)&&o[l]==null&&delete r[l]},Ee=bo;function Ic(e){return ho(e)}function Nc(e){return ho(e,rc)}function ho(e,t){const n=gi();n.__VUE__=!0;const{insert:s,remove:r,patchProp:i,createElement:o,createText:l,createComment:c,setText:f,setElementText:a,parentNode:h,nextSibling:g,setScopeId:b=Be,insertStaticContent:S}=e,_=(u,d,y,T=null,w=null,E=null,P=void 0,O=null,A=!!d.dynamicChildren)=>{if(u===d)return;u&&!dt(u,d)&&(T=ln(u),De(u,w,E,!0),u=null),d.patchFlag===-2&&(A=!1,d.dynamicChildren=null);const{type:C,ref:B,shapeFlag:L}=d;switch(C){case mt:k(u,d,y,T);break;case ye:N(u,d,y,T);break;case Bt:u==null&&j(d,y,T,P);break;case Se:x(u,d,y,T,w,E,P,O,A);break;default:L&1?M(u,d,y,T,w,E,P,O,A):L&6?W(u,d,y,T,w,E,P,O,A):(L&64||L&128)&&C.process(u,d,y,T,w,E,P,O,A,bt)}B!=null&&w&&Nn(B,u&&u.ref,E,d||u,!d)},k=(u,d,y,T)=>{if(u==null)s(d.el=l(d.children),y,T);else{const w=d.el=u.el;d.children!==u.children&&f(w,d.children)}},N=(u,d,y,T)=>{u==null?s(d.el=c(d.children||""),y,T):d.el=u.el},j=(u,d,y,T)=>{[u.el,u.anchor]=S(u.children,d,y,T,u.el,u.anchor)},p=({el:u,anchor:d},y,T)=>{let w;for(;u&&u!==d;)w=g(u),s(u,y,T),u=w;s(d,y,T)},m=({el:u,anchor:d})=>{let y;for(;u&&u!==d;)y=g(u),r(u),u=y;r(d)},M=(u,d,y,T,w,E,P,O,A)=>{d.type==="svg"?P="svg":d.type==="math"&&(P="mathml"),u==null?F(d,y,T,w,E,P,O,A):R(u,d,w,E,P,O,A)},F=(u,d,y,T,w,E,P,O)=>{let A,C;const{props:B,shapeFlag:L,transition:H,dirs:G}=u;if(A=u.el=o(u.type,E,B&&B.is,B),L&8?a(A,u.children):L&16&&V(u.children,A,null,T,w,cs(u,E),P,O),G&&Ue(u,null,T,"created"),$(A,u,u.scopeId,P,T),B){for(const ee in B)ee!=="value"&&!At(ee)&&i(A,ee,null,B[ee],E,T);"value"in B&&i(A,"value",null,B.value,E),(C=B.onVnodeBeforeMount)&&Oe(C,T,u)}G&&Ue(u,null,T,"beforeMount");const X=po(w,H);X&&H.beforeEnter(A),s(A,d,y),((C=B&&B.onVnodeMounted)||X||G)&&Ee(()=>{C&&Oe(C,T,u),X&&H.enter(A),G&&Ue(u,null,T,"mounted")},w)},$=(u,d,y,T,w)=>{if(y&&b(u,y),T)for(let E=0;E{for(let C=A;C{const O=d.el=u.el;let{patchFlag:A,dynamicChildren:C,dirs:B}=d;A|=u.patchFlag&16;const L=u.props||Z,H=d.props||Z;let G;if(y&&ct(y,!1),(G=H.onVnodeBeforeUpdate)&&Oe(G,y,d,u),B&&Ue(d,u,y,"beforeUpdate"),y&&ct(y,!0),(L.innerHTML&&H.innerHTML==null||L.textContent&&H.textContent==null)&&a(O,""),C?v(u.dynamicChildren,C,O,y,T,cs(d,w),E):P||D(u,d,O,null,y,T,cs(d,w),E,!1),A>0){if(A&16)I(O,L,H,y,w);else if(A&2&&L.class!==H.class&&i(O,"class",null,H.class,w),A&4&&i(O,"style",L.style,H.style,w),A&8){const X=d.dynamicProps;for(let ee=0;ee{G&&Oe(G,y,d,u),B&&Ue(d,u,y,"updated")},T)},v=(u,d,y,T,w,E,P)=>{for(let O=0;O{if(d!==y){if(d!==Z)for(const E in d)!At(E)&&!(E in y)&&i(u,E,d[E],null,w,T);for(const E in y){if(At(E))continue;const P=y[E],O=d[E];P!==O&&E!=="value"&&i(u,E,O,P,w,T)}"value"in y&&i(u,"value",d.value,y.value,w)}},x=(u,d,y,T,w,E,P,O,A)=>{const C=d.el=u?u.el:l(""),B=d.anchor=u?u.anchor:l("");let{patchFlag:L,dynamicChildren:H,slotScopeIds:G}=d;G&&(O=O?O.concat(G):G),u==null?(s(C,y,T),s(B,y,T),V(d.children||[],y,B,w,E,P,O,A)):L>0&&L&64&&H&&u.dynamicChildren?(v(u.dynamicChildren,H,y,w,E,P,O),(d.key!=null||w&&d===w.subTree)&&nr(u,d,!0)):D(u,d,y,B,w,E,P,O,A)},W=(u,d,y,T,w,E,P,O,A)=>{d.slotScopeIds=O,u==null?d.shapeFlag&512?w.ctx.activate(d,y,T,P,A):se(d,y,T,w,E,P,A):ce(u,d,A)},se=(u,d,y,T,w,E,P)=>{const O=u.component=zc(u,T,w);if(nn(u)&&(O.ctx.renderer=bt),Qc(O,!1,P),O.asyncDep){if(w&&w.registerDep(O,U,P),!u.el){const A=O.subTree=le(ye);N(null,A,d,y)}}else U(O,u,d,y,w,E,P)},ce=(u,d,y)=>{const T=d.component=u.component;if(kc(u,d,y))if(T.asyncDep&&!T.asyncResolved){Y(T,d,y);return}else T.next=d,T.update();else d.el=u.el,T.vnode=d},U=(u,d,y,T,w,E,P)=>{const O=()=>{if(u.isMounted){let{next:L,bu:H,u:G,parent:X,vnode:ee}=u;{const Te=go(u);if(Te){L&&(L.el=ee.el,Y(u,L,P)),Te.asyncDep.then(()=>{u.isUnmounted||O()});return}}let Q=L,xe;ct(u,!1),L?(L.el=ee.el,Y(u,L,P)):L=ee,H&&En(H),(xe=L.props&&L.props.onVnodeBeforeUpdate)&&Oe(xe,X,L,ee),ct(u,!0);const pe=as(u),Ie=u.subTree;u.subTree=pe,_(Ie,pe,h(Ie.el),ln(Ie),u,w,E),L.el=pe.el,Q===null&&Wc(u,pe.el),G&&Ee(G,w),(xe=L.props&&L.props.onVnodeUpdated)&&Ee(()=>Oe(xe,X,L,ee),w)}else{let L;const{el:H,props:G}=d,{bm:X,m:ee,parent:Q,root:xe,type:pe}=u,Ie=gt(d);if(ct(u,!1),X&&En(X),!Ie&&(L=G&&G.onVnodeBeforeMount)&&Oe(L,Q,d),ct(u,!0),H&&es){const Te=()=>{u.subTree=as(u),es(H,u.subTree,u,w,null)};Ie&&pe.__asyncHydrate?pe.__asyncHydrate(H,u,Te):Te()}else{xe.ce&&xe.ce._injectChildStyle(pe);const Te=u.subTree=as(u);_(null,Te,y,T,u,w,E),d.el=Te.el}if(ee&&Ee(ee,w),!Ie&&(L=G&&G.onVnodeMounted)){const Te=d;Ee(()=>Oe(L,Q,Te),w)}(d.shapeFlag&256||Q&>(Q.vnode)&&Q.vnode.shapeFlag&256)&&u.a&&Ee(u.a,w),u.isMounted=!0,d=y=T=null}};u.scope.on();const A=u.effect=new _i(O);u.scope.off();const C=u.update=A.run.bind(A),B=u.job=A.runIfDirty.bind(A);B.i=u,B.id=u.uid,A.scheduler=()=>zs(B),ct(u,!0),C()},Y=(u,d,y)=>{d.component=u;const T=u.vnode.props;u.vnode=d,u.next=null,Rc(u,d.props,T,y),Lc(u,d.children,y),it(),br(u),ot()},D=(u,d,y,T,w,E,P,O,A=!1)=>{const C=u&&u.children,B=u?u.shapeFlag:0,L=d.children,{patchFlag:H,shapeFlag:G}=d;if(H>0){if(H&128){on(C,L,y,T,w,E,P,O,A);return}else if(H&256){he(C,L,y,T,w,E,P,O,A);return}}G&8?(B&16&&It(C,w,E),L!==C&&a(y,L)):B&16?G&16?on(C,L,y,T,w,E,P,O,A):It(C,w,E,!0):(B&8&&a(y,""),G&16&&V(L,y,T,w,E,P,O,A))},he=(u,d,y,T,w,E,P,O,A)=>{u=u||Tt,d=d||Tt;const C=u.length,B=d.length,L=Math.min(C,B);let H;for(H=0;HB?It(u,w,E,!0,!1,L):V(d,y,T,w,E,P,O,A,L)},on=(u,d,y,T,w,E,P,O,A)=>{let C=0;const B=d.length;let L=u.length-1,H=B-1;for(;C<=L&&C<=H;){const G=u[C],X=d[C]=A?et(d[C]):Me(d[C]);if(dt(G,X))_(G,X,y,null,w,E,P,O,A);else break;C++}for(;C<=L&&C<=H;){const G=u[L],X=d[H]=A?et(d[H]):Me(d[H]);if(dt(G,X))_(G,X,y,null,w,E,P,O,A);else break;L--,H--}if(C>L){if(C<=H){const G=H+1,X=GH)for(;C<=L;)De(u[C],w,E,!0),C++;else{const G=C,X=C,ee=new Map;for(C=X;C<=H;C++){const Ce=d[C]=A?et(d[C]):Me(d[C]);Ce.key!=null&&ee.set(Ce.key,C)}let Q,xe=0;const pe=H-X+1;let Ie=!1,Te=0;const Nt=new Array(pe);for(C=0;C=pe){De(Ce,w,E,!0);continue}let je;if(Ce.key!=null)je=ee.get(Ce.key);else for(Q=X;Q<=H;Q++)if(Nt[Q-X]===0&&dt(Ce,d[Q])){je=Q;break}je===void 0?De(Ce,w,E,!0):(Nt[je-X]=C+1,je>=Te?Te=je:Ie=!0,_(Ce,d[je],y,null,w,E,P,O,A),xe++)}const fr=Ie?Fc(Nt):Tt;for(Q=fr.length-1,C=pe-1;C>=0;C--){const Ce=X+C,je=d[Ce],ur=Ce+1{const{el:E,type:P,transition:O,children:A,shapeFlag:C}=u;if(C&6){lt(u.component.subTree,d,y,T);return}if(C&128){u.suspense.move(d,y,T);return}if(C&64){P.move(u,d,y,bt);return}if(P===Se){s(E,d,y);for(let L=0;LO.enter(E),w);else{const{leave:L,delayLeave:H,afterLeave:G}=O,X=()=>s(E,d,y),ee=()=>{L(E,()=>{X(),G&&G()})};H?H(E,X,ee):ee()}else s(E,d,y)},De=(u,d,y,T=!1,w=!1)=>{const{type:E,props:P,ref:O,children:A,dynamicChildren:C,shapeFlag:B,patchFlag:L,dirs:H,cacheIndex:G}=u;if(L===-2&&(w=!1),O!=null&&Nn(O,null,y,u,!0),G!=null&&(d.renderCache[G]=void 0),B&256){d.ctx.deactivate(u);return}const X=B&1&&H,ee=!gt(u);let Q;if(ee&&(Q=P&&P.onVnodeBeforeUnmount)&&Oe(Q,d,u),B&6)Xo(u.component,y,T);else{if(B&128){u.suspense.unmount(y,T);return}X&&Ue(u,null,d,"beforeUnmount"),B&64?u.type.remove(u,d,y,bt,T):C&&!C.hasOnce&&(E!==Se||L>0&&L&64)?It(C,d,y,!1,!0):(E===Se&&L&384||!w&&B&16)&&It(A,d,y),T&&cr(u)}(ee&&(Q=P&&P.onVnodeUnmounted)||X)&&Ee(()=>{Q&&Oe(Q,d,u),X&&Ue(u,null,d,"unmounted")},y)},cr=u=>{const{type:d,el:y,anchor:T,transition:w}=u;if(d===Se){Yo(y,T);return}if(d===Bt){m(u);return}const E=()=>{r(y),w&&!w.persisted&&w.afterLeave&&w.afterLeave()};if(u.shapeFlag&1&&w&&!w.persisted){const{leave:P,delayLeave:O}=w,A=()=>P(y,E);O?O(u.el,E,A):A()}else E()},Yo=(u,d)=>{let y;for(;u!==d;)y=g(u),r(u),u=y;r(d)},Xo=(u,d,y)=>{const{bum:T,scope:w,job:E,subTree:P,um:O,m:A,a:C}=u;Pr(A),Pr(C),T&&En(T),w.stop(),E&&(E.flags|=8,De(P,u,d,y)),O&&Ee(O,d),Ee(()=>{u.isUnmounted=!0},d),d&&d.pendingBranch&&!d.isUnmounted&&u.asyncDep&&!u.asyncResolved&&u.suspenseId===d.pendingId&&(d.deps--,d.deps===0&&d.resolve())},It=(u,d,y,T=!1,w=!1,E=0)=>{for(let P=E;P{if(u.shapeFlag&6)return ln(u.component.subTree);if(u.shapeFlag&128)return u.suspense.next();const d=g(u.anchor||u.el),y=d&&d[Ui];return y?g(y):d};let Qn=!1;const ar=(u,d,y)=>{u==null?d._vnode&&De(d._vnode,null,null,!0):_(d._vnode||null,u,d,null,null,null,y),d._vnode=u,Qn||(Qn=!0,br(),Ln(),Qn=!1)},bt={p:_,um:De,m:lt,r:cr,mt:se,mc:V,pc:D,pbc:v,n:ln,o:e};let Zn,es;return t&&([Zn,es]=t(bt)),{render:ar,hydrate:Zn,createApp:Tc(ar,Zn)}}function cs({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function ct({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function po(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function nr(e,t,n=!1){const s=e.children,r=t.children;if(K(s)&&K(r))for(let i=0;i>1,e[n[l]]0&&(t[s]=n[i-1]),n[i]=s)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=t[o];return n}function go(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:go(t)}function Pr(e){if(e)for(let t=0;tMt(Hc);function sr(e,t){return Yn(e,null,t)}function Vf(e,t){return Yn(e,null,{flush:"post"})}function Fe(e,t,n){return Yn(e,t,n)}function Yn(e,t,n=Z){const{immediate:s,deep:r,flush:i,once:o}=n,l=fe({},n);let c;if(rn)if(i==="sync"){const g=$c();c=g.__watcherHandles||(g.__watcherHandles=[])}else if(!t||s)l.once=!0;else{const g=()=>{};return g.stop=Be,g.resume=Be,g.pause=Be,g}const f=ue;l.call=(g,b,S)=>He(g,f,b,S);let a=!1;i==="post"?l.scheduler=g=>{Ee(g,f&&f.suspense)}:i!=="sync"&&(a=!0,l.scheduler=(g,b)=>{b?g():zs(g)}),l.augmentJob=g=>{t&&(g.flags|=4),a&&(g.flags|=2,f&&(g.id=f.uid,g.i=f))};const h=Kl(e,t,l);return c&&c.push(h),h}function Dc(e,t,n){const s=this.proxy,r=re(e)?e.includes(".")?mo(s,e):()=>s[e]:e.bind(s,s);let i;q(t)?i=t:(i=t.handler,n=t);const o=sn(this),l=Yn(r,i.bind(s),n);return o(),l}function mo(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;rt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Le(t)}Modifiers`]||e[`${rt(t)}Modifiers`];function Vc(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||Z;let r=n;const i=t.startsWith("update:"),o=i&&jc(s,t.slice(7));o&&(o.trim&&(r=n.map(a=>re(a)?a.trim():a)),o.number&&(r=n.map(Ss)));let l,c=s[l=Sn(t)]||s[l=Sn(Le(t))];!c&&i&&(c=s[l=Sn(rt(t))]),c&&He(c,e,6,r);const f=s[l+"Once"];if(f){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,He(f,e,6,r)}}function yo(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 c=f=>{const a=yo(f,t,!0);a&&(l=!0,fe(o,a))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!l?(ne(e)&&s.set(e,null),null):(K(i)?i.forEach(c=>o[c]=null):fe(o,i),ne(e)&&s.set(e,o),o)}function Xn(e,t){return!e||!Zt(t)?!1:(t=t.slice(2).replace(/Once$/,""),z(e,t[0].toLowerCase()+t.slice(1))||z(e,rt(t))||z(e,t))}function as(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:c,render:f,renderCache:a,props:h,data:g,setupState:b,ctx:S,inheritAttrs:_}=e,k=In(e);let N,j;try{if(n.shapeFlag&4){const m=r||s,M=m;N=Me(f.call(M,m,a,h,b,g,S)),j=l}else{const m=t;N=Me(m.length>1?m(h,{attrs:l,slots:o,emit:c}):m(h,null)),j=t.props?l:Uc(l)}}catch(m){kt.length=0,tn(m,e,1),N=le(ye)}let p=N;if(j&&_!==!1){const m=Object.keys(j),{shapeFlag:M}=p;m.length&&M&7&&(i&&m.some($s)&&(j=Bc(j,i)),p=nt(p,j,!1,!0))}return n.dirs&&(p=nt(p,null,!1,!0),p.dirs=p.dirs?p.dirs.concat(n.dirs):n.dirs),n.transition&&Yt(p,n.transition),N=p,In(k),N}const Uc=e=>{let t;for(const n in e)(n==="class"||n==="style"||Zt(n))&&((t||(t={}))[n]=e[n]);return t},Bc=(e,t)=>{const n={};for(const s in e)(!$s(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function kc(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:c}=t,f=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?Lr(s,o,f):!!o;if(c&8){const a=t.dynamicProps;for(let h=0;he.__isSuspense;function bo(e,t){t&&t.pendingBranch?K(e)?t.effects.push(...e):t.effects.push(e):Yl(e)}const Se=Symbol.for("v-fgt"),mt=Symbol.for("v-txt"),ye=Symbol.for("v-cmt"),Bt=Symbol.for("v-stc"),kt=[];let Ae=null;function Ps(e=!1){kt.push(Ae=e?null:[])}function Kc(){kt.pop(),Ae=kt[kt.length-1]||null}let Xt=1;function Ir(e){Xt+=e,e<0&&Ae&&(Ae.hasOnce=!0)}function _o(e){return e.dynamicChildren=Xt>0?Ae||Tt:null,Kc(),Xt>0&&Ae&&Ae.push(e),e}function Uf(e,t,n,s,r,i){return _o(So(e,t,n,s,r,i,!0))}function Ls(e,t,n,s,r){return _o(le(e,t,n,s,r,!0))}function Jt(e){return e?e.__v_isVNode===!0:!1}function dt(e,t){return e.type===t.type&&e.key===t.key}const wo=({key:e})=>e??null,Cn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?re(e)||ae(e)||q(e)?{i:de,r:e,k:t,f:!!n}:e:null);function So(e,t=null,n=null,s=0,r=null,i=e===Se?0:1,o=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&wo(t),ref:t&&Cn(t),scopeId:Vi,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:de};return l?(rr(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=re(n)?8:16),Xt>0&&!o&&Ae&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&Ae.push(c),c}const le=qc;function qc(e,t=null,n=null,s=0,r=null,i=!1){if((!e||e===Qi)&&(e=ye),Jt(e)){const l=nt(e,t,!0);return n&&rr(l,n),Xt>0&&!i&&Ae&&(l.shapeFlag&6?Ae[Ae.indexOf(e)]=l:Ae.push(l)),l.patchFlag=-2,l}if(na(e)&&(e=e.__vccOpts),t){t=Gc(t);let{class:l,style:c}=t;l&&!re(l)&&(t.class=Us(l)),ne(c)&&(Ys(c)&&!K(c)&&(c=fe({},c)),t.style=Vs(c))}const o=re(e)?1:vo(e)?128:Bi(e)?64:ne(e)?4:q(e)?2:0;return So(e,t,n,s,r,o,i,!0)}function Gc(e){return e?Ys(e)||io(e)?fe({},e):e:null}function nt(e,t,n=!1,s=!1){const{props:r,ref:i,patchFlag:o,children:l,transition:c}=e,f=t?Yc(r||{},t):r,a={__v_isVNode:!0,__v_skip:!0,type:e.type,props:f,key:f&&wo(f),ref:t&&t.ref?n&&i?K(i)?i.concat(Cn(t)):[i,Cn(t)]:Cn(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Se?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&nt(e.ssContent),ssFallback:e.ssFallback&&nt(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&s&&Yt(a,c.clone(a)),a}function Eo(e=" ",t=0){return le(mt,null,e,t)}function Bf(e,t){const n=le(Bt,null,e);return n.staticCount=t,n}function kf(e="",t=!1){return t?(Ps(),Ls(ye,null,e)):le(ye,null,e)}function Me(e){return e==null||typeof e=="boolean"?le(ye):K(e)?le(Se,null,e.slice()):Jt(e)?et(e):le(mt,null,String(e))}function et(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:nt(e)}function rr(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(K(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),rr(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!io(t)?t._ctx=de:r===3&&de&&(de.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else q(t)?(t={default:t,_ctx:de},n=32):(t=String(t),s&64?(n=16,t=[Eo(t)]):n=8);e.children=t,e.shapeFlag|=n}function Yc(...e){const t={};for(let n=0;nue||de;let Hn,Is;{const e=gi(),t=(n,s)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),i=>{r.length>1?r.forEach(o=>o(i)):r[0](i)}};Hn=t("__VUE_INSTANCE_SETTERS__",n=>ue=n),Is=t("__VUE_SSR_SETTERS__",n=>rn=n)}const sn=e=>{const t=ue;return Hn(e),e.scope.on(),()=>{e.scope.off(),Hn(t)}},Nr=()=>{ue&&ue.scope.off(),Hn(null)};function xo(e){return e.vnode.shapeFlag&4}let rn=!1;function Qc(e,t=!1,n=!1){t&&Is(t);const{props:s,children:r}=e.vnode,i=xo(e);Ac(e,s,i,t),Pc(e,r,n);const o=i?Zc(e,t):void 0;return t&&Is(!1),o}function Zc(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,yc);const{setup:s}=n;if(s){const r=e.setupContext=s.length>1?Co(e):null,i=sn(e);it();const o=en(s,e,0,[e.props,r]);if(ot(),i(),ui(o)){if(gt(e)||Zs(e),o.then(Nr,Nr),t)return o.then(l=>{Fr(e,l,t)}).catch(l=>{tn(l,e,0)});e.asyncDep=o}else Fr(e,o,t)}else To(e,t)}function Fr(e,t,n){q(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ne(t)&&(e.setupState=Hi(t)),To(e,n)}let Hr;function To(e,t,n){const s=e.type;if(!e.render){if(!t&&Hr&&!s.render){const r=s.template||er(e).template;if(r){const{isCustomElement:i,compilerOptions:o}=e.appContext.config,{delimiters:l,compilerOptions:c}=s,f=fe(fe({isCustomElement:i,delimiters:l},o),c);s.render=Hr(r,f)}}e.render=s.render||Be}{const r=sn(e);it();try{bc(e)}finally{ot(),r()}}}const ea={get(e,t){return ve(e,"get",""),e[t]}};function Co(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,ea),slots:e.slots,emit:e.emit,expose:t}}function zn(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Hi(xn(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Ut)return Ut[n](e)},has(t,n){return n in t||n in Ut}})):e.proxy}function ta(e,t=!0){return q(e)?e.displayName||e.name:e.name||t&&e.__name}function na(e){return q(e)&&"__vccOpts"in e}const ie=(e,t)=>kl(e,t,rn);function Ns(e,t,n){const s=arguments.length;return s===2?ne(t)&&!K(t)?Jt(t)?le(e,null,[t]):le(e,t):le(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&Jt(n)&&(n=[n]),le(e,t,n))}const sa="3.5.11";/** +* @vue/runtime-dom v3.5.11 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let Fs;const $r=typeof window<"u"&&window.trustedTypes;if($r)try{Fs=$r.createPolicy("vue",{createHTML:e=>e})}catch{}const Ao=Fs?e=>Fs.createHTML(e):e=>e,ra="http://www.w3.org/2000/svg",ia="http://www.w3.org/1998/Math/MathML",Ke=typeof document<"u"?document:null,Dr=Ke&&Ke.createElement("template"),oa={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?Ke.createElementNS(ra,e):t==="mathml"?Ke.createElementNS(ia,e):n?Ke.createElement(e,{is:n}):Ke.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>Ke.createTextNode(e),createComment:e=>Ke.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ke.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,i){const o=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===i||!(r=r.nextSibling)););else{Dr.innerHTML=Ao(s==="svg"?`${e}`:s==="mathml"?`${e}`:e);const l=Dr.content;if(s==="svg"||s==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Je="transition",Ht="animation",zt=Symbol("_vtc"),Ro={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},la=fe({},Wi,Ro),ca=e=>(e.displayName="Transition",e.props=la,e),Wf=ca((e,{slots:t})=>Ns(tc,aa(e),t)),at=(e,t=[])=>{K(e)?e.forEach(n=>n(...t)):e&&e(...t)},jr=e=>e?K(e)?e.some(t=>t.length>1):e.length>1:!1;function aa(e){const t={};for(const x in e)x in Ro||(t[x]=e[x]);if(e.css===!1)return t;const{name:n="v",type:s,duration:r,enterFromClass:i=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:c=i,appearActiveClass:f=o,appearToClass:a=l,leaveFromClass:h=`${n}-leave-from`,leaveActiveClass:g=`${n}-leave-active`,leaveToClass:b=`${n}-leave-to`}=e,S=fa(r),_=S&&S[0],k=S&&S[1],{onBeforeEnter:N,onEnter:j,onEnterCancelled:p,onLeave:m,onLeaveCancelled:M,onBeforeAppear:F=N,onAppear:$=j,onAppearCancelled:V=p}=t,R=(x,W,se)=>{ft(x,W?a:l),ft(x,W?f:o),se&&se()},v=(x,W)=>{x._isLeaving=!1,ft(x,h),ft(x,b),ft(x,g),W&&W()},I=x=>(W,se)=>{const ce=x?$:j,U=()=>R(W,x,se);at(ce,[W,U]),Vr(()=>{ft(W,x?c:i),ze(W,x?a:l),jr(ce)||Ur(W,s,_,U)})};return fe(t,{onBeforeEnter(x){at(N,[x]),ze(x,i),ze(x,o)},onBeforeAppear(x){at(F,[x]),ze(x,c),ze(x,f)},onEnter:I(!1),onAppear:I(!0),onLeave(x,W){x._isLeaving=!0;const se=()=>v(x,W);ze(x,h),ze(x,g),ha(),Vr(()=>{x._isLeaving&&(ft(x,h),ze(x,b),jr(m)||Ur(x,s,k,se))}),at(m,[x,se])},onEnterCancelled(x){R(x,!1),at(p,[x])},onAppearCancelled(x){R(x,!0),at(V,[x])},onLeaveCancelled(x){v(x),at(M,[x])}})}function fa(e){if(e==null)return null;if(ne(e))return[fs(e.enter),fs(e.leave)];{const t=fs(e);return[t,t]}}function fs(e){return tl(e)}function ze(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[zt]||(e[zt]=new Set)).add(t)}function ft(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const n=e[zt];n&&(n.delete(t),n.size||(e[zt]=void 0))}function Vr(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let ua=0;function Ur(e,t,n,s){const r=e._endId=++ua,i=()=>{r===e._endId&&s()};if(n!=null)return setTimeout(i,n);const{type:o,timeout:l,propCount:c}=da(e,t);if(!o)return s();const f=o+"end";let a=0;const h=()=>{e.removeEventListener(f,g),i()},g=b=>{b.target===e&&++a>=c&&h()};setTimeout(()=>{a(n[S]||"").split(", "),r=s(`${Je}Delay`),i=s(`${Je}Duration`),o=Br(r,i),l=s(`${Ht}Delay`),c=s(`${Ht}Duration`),f=Br(l,c);let a=null,h=0,g=0;t===Je?o>0&&(a=Je,h=o,g=i.length):t===Ht?f>0&&(a=Ht,h=f,g=c.length):(h=Math.max(o,f),a=h>0?o>f?Je:Ht:null,g=a?a===Je?i.length:c.length:0);const b=a===Je&&/\b(transform|all)(,|$)/.test(s(`${Je}Property`).toString());return{type:a,timeout:h,propCount:g,hasTransform:b}}function Br(e,t){for(;e.lengthkr(n)+kr(e[s])))}function kr(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function ha(){return document.body.offsetHeight}function pa(e,t,n){const s=e[zt];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Wr=Symbol("_vod"),ga=Symbol("_vsh"),ma=Symbol(""),ya=/(^|;)\s*display\s*:/;function va(e,t,n){const s=e.style,r=re(n);let i=!1;if(n&&!r){if(t)if(re(t))for(const o of t.split(";")){const l=o.slice(0,o.indexOf(":")).trim();n[l]==null&&An(s,l,"")}else for(const o in t)n[o]==null&&An(s,o,"");for(const o in n)o==="display"&&(i=!0),An(s,o,n[o])}else if(r){if(t!==n){const o=s[ma];o&&(n+=";"+o),s.cssText=n,i=ya.test(n)}}else t&&e.removeAttribute("style");Wr in e&&(e[Wr]=i?s.display:"",e[ga]&&(s.display="none"))}const Kr=/\s*!important$/;function An(e,t,n){if(K(n))n.forEach(s=>An(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=ba(e,t);Kr.test(n)?e.setProperty(rt(s),n.replace(Kr,""),"important"):e[s]=n}}const qr=["Webkit","Moz","ms"],us={};function ba(e,t){const n=us[t];if(n)return n;let s=Le(t);if(s!=="filter"&&s in e)return us[t]=s;s=jn(s);for(let r=0;rds||(Ea.then(()=>ds=0),ds=Date.now());function Ta(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;He(Ca(s,n.value),t,5,[s])};return n.value=e,n.attached=xa(),n}function Ca(e,t){if(K(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>r=>!r._stopped&&s&&s(r))}else return t}const Qr=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Aa=(e,t,n,s,r,i)=>{const o=r==="svg";t==="class"?pa(e,s,o):t==="style"?va(e,n,s):Zt(t)?$s(t)||wa(e,t,n,s,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Ra(e,t,s,o))?(Xr(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Yr(e,t,s,o,i,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!re(s))?Xr(e,Le(t),s):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Yr(e,t,s,o))};function Ra(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&Qr(t)&&q(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return Qr(t)&&re(n)?!1:t in e}const Zr=e=>{const t=e.props["onUpdate:modelValue"]||!1;return K(t)?n=>En(t,n):t};function Oa(e){e.target.composing=!0}function ei(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const hs=Symbol("_assign"),Kf={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e[hs]=Zr(r);const i=s||r.props&&r.props.type==="number";Et(e,t?"change":"input",o=>{if(o.target.composing)return;let l=e.value;n&&(l=l.trim()),i&&(l=Ss(l)),e[hs](l)}),n&&Et(e,"change",()=>{e.value=e.value.trim()}),t||(Et(e,"compositionstart",Oa),Et(e,"compositionend",ei),Et(e,"change",ei))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:i}},o){if(e[hs]=Zr(o),e.composing)return;const l=(i||e.type==="number")&&!/^0\d/.test(e.value)?Ss(e.value):e.value,c=t??"";l!==c&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===c)||(e.value=c))}},Ma=["ctrl","shift","alt","meta"],Pa={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Ma.some(n=>e[`${n}Key`]&&!t.includes(n))},qf=(e,t)=>{const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=(r,...i)=>{for(let o=0;o{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=r=>{if(!("key"in r))return;const i=rt(r.key);if(t.some(o=>o===i||La[o]===i))return e(r)})},Oo=fe({patchProp:Aa},oa);let Wt,ti=!1;function Ia(){return Wt||(Wt=Ic(Oo))}function Na(){return Wt=ti?Wt:Nc(Oo),ti=!0,Wt}const Yf=(...e)=>{const t=Ia().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=Po(s);if(!r)return;const i=t._component;!q(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const o=n(r,!1,Mo(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),o},t},Xf=(...e)=>{const t=Na().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=Po(s);if(r)return n(r,!0,Mo(r))},t};function Mo(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Po(e){return re(e)?document.querySelector(e):e}const Jf=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},Fa=window.__VP_SITE_DATA__;function ir(e){return bi()?(fl(e),!0):!1}function ke(e){return typeof e=="function"?e():Fi(e)}const Lo=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const zf=e=>e!=null,Ha=Object.prototype.toString,$a=e=>Ha.call(e)==="[object Object]",Qt=()=>{},ni=Da();function Da(){var e,t;return Lo&&((e=window==null?void 0:window.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window==null?void 0:window.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function ja(e,t){function n(...s){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,s),{fn:t,thisArg:this,args:s})).then(r).catch(i)})}return n}const Io=e=>e();function Va(e,t={}){let n,s,r=Qt;const i=l=>{clearTimeout(l),r(),r=Qt};return l=>{const c=ke(e),f=ke(t.maxWait);return n&&i(n),c<=0||f!==void 0&&f<=0?(s&&(i(s),s=null),Promise.resolve(l())):new Promise((a,h)=>{r=t.rejectOnCancel?h:a,f&&!s&&(s=setTimeout(()=>{n&&i(n),s=null,a(l())},f)),n=setTimeout(()=>{s&&i(s),s=null,a(l())},c)})}}function Ua(e=Io){const t=oe(!0);function n(){t.value=!1}function s(){t.value=!0}const r=(...i)=>{t.value&&e(...i)};return{isActive:Wn(t),pause:n,resume:s,eventFilter:r}}function Ba(e){return Jn()}function No(...e){if(e.length!==1)return Vl(...e);const t=e[0];return typeof t=="function"?Wn($l(()=>({get:t,set:Qt}))):oe(t)}function Fo(e,t,n={}){const{eventFilter:s=Io,...r}=n;return Fe(e,ja(s,t),r)}function ka(e,t,n={}){const{eventFilter:s,...r}=n,{eventFilter:i,pause:o,resume:l,isActive:c}=Ua(s);return{stop:Fo(e,t,{...r,eventFilter:i}),pause:o,resume:l,isActive:c}}function or(e,t=!0,n){Ba()?Lt(e,n):t?e():Kn(e)}function Qf(e,t,n={}){const{debounce:s=0,maxWait:r=void 0,...i}=n;return Fo(e,t,{...i,eventFilter:Va(s,{maxWait:r})})}function Zf(e,t,n){let s;ae(n)?s={evaluating:n}:s={};const{lazy:r=!1,evaluating:i=void 0,shallow:o=!0,onError:l=Qt}=s,c=oe(!r),f=o?Js(t):oe(t);let a=0;return sr(async h=>{if(!c.value)return;a++;const g=a;let b=!1;i&&Promise.resolve().then(()=>{i.value=!0});try{const S=await e(_=>{h(()=>{i&&(i.value=!1),b||_()})});g===a&&(f.value=S)}catch(S){l(S)}finally{i&&g===a&&(i.value=!1),b=!0}}),r?ie(()=>(c.value=!0,f.value)):f}const $e=Lo?window:void 0;function Ho(e){var t;const n=ke(e);return(t=n==null?void 0:n.$el)!=null?t:n}function Pt(...e){let t,n,s,r;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,s,r]=e,t=$e):[t,n,s,r]=e,!t)return Qt;Array.isArray(n)||(n=[n]),Array.isArray(s)||(s=[s]);const i=[],o=()=>{i.forEach(a=>a()),i.length=0},l=(a,h,g,b)=>(a.addEventListener(h,g,b),()=>a.removeEventListener(h,g,b)),c=Fe(()=>[Ho(t),ke(r)],([a,h])=>{if(o(),!a)return;const g=$a(h)?{...h}:h;i.push(...n.flatMap(b=>s.map(S=>l(a,b,S,g))))},{immediate:!0,flush:"post"}),f=()=>{c(),o()};return ir(f),f}function Wa(e){return typeof e=="function"?e:typeof e=="string"?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function eu(...e){let t,n,s={};e.length===3?(t=e[0],n=e[1],s=e[2]):e.length===2?typeof e[1]=="object"?(t=!0,n=e[0],s=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);const{target:r=$e,eventName:i="keydown",passive:o=!1,dedupe:l=!1}=s,c=Wa(t);return Pt(r,i,a=>{a.repeat&&ke(l)||c(a)&&n(a)},o)}function Ka(){const e=oe(!1),t=Jn();return t&&Lt(()=>{e.value=!0},t),e}function qa(e){const t=Ka();return ie(()=>(t.value,!!e()))}function $o(e,t={}){const{window:n=$e}=t,s=qa(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let r;const i=oe(!1),o=f=>{i.value=f.matches},l=()=>{r&&("removeEventListener"in r?r.removeEventListener("change",o):r.removeListener(o))},c=sr(()=>{s.value&&(l(),r=n.matchMedia(ke(e)),"addEventListener"in r?r.addEventListener("change",o):r.addListener(o),i.value=r.matches)});return ir(()=>{c(),l(),r=void 0}),i}const vn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},bn="__vueuse_ssr_handlers__",Ga=Ya();function Ya(){return bn in vn||(vn[bn]=vn[bn]||{}),vn[bn]}function Do(e,t){return Ga[e]||t}function jo(e){return $o("(prefers-color-scheme: dark)",e)}function Xa(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const Ja={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},si="vueuse-storage";function lr(e,t,n,s={}){var r;const{flush:i="pre",deep:o=!0,listenToStorageChanges:l=!0,writeDefaults:c=!0,mergeDefaults:f=!1,shallow:a,window:h=$e,eventFilter:g,onError:b=v=>{console.error(v)},initOnMounted:S}=s,_=(a?Js:oe)(typeof t=="function"?t():t);if(!n)try{n=Do("getDefaultStorage",()=>{var v;return(v=$e)==null?void 0:v.localStorage})()}catch(v){b(v)}if(!n)return _;const k=ke(t),N=Xa(k),j=(r=s.serializer)!=null?r:Ja[N],{pause:p,resume:m}=ka(_,()=>F(_.value),{flush:i,deep:o,eventFilter:g});h&&l&&or(()=>{n instanceof Storage?Pt(h,"storage",V):Pt(h,si,R),S&&V()}),S||V();function M(v,I){if(h){const x={key:e,oldValue:v,newValue:I,storageArea:n};h.dispatchEvent(n instanceof Storage?new StorageEvent("storage",x):new CustomEvent(si,{detail:x}))}}function F(v){try{const I=n.getItem(e);if(v==null)M(I,null),n.removeItem(e);else{const x=j.write(v);I!==x&&(n.setItem(e,x),M(I,x))}}catch(I){b(I)}}function $(v){const I=v?v.newValue:n.getItem(e);if(I==null)return c&&k!=null&&n.setItem(e,j.write(k)),k;if(!v&&f){const x=j.read(I);return typeof f=="function"?f(x,k):N==="object"&&!Array.isArray(x)?{...k,...x}:x}else return typeof I!="string"?I:j.read(I)}function V(v){if(!(v&&v.storageArea!==n)){if(v&&v.key==null){_.value=k;return}if(!(v&&v.key!==e)){p();try{(v==null?void 0:v.newValue)!==j.write(_.value)&&(_.value=$(v))}catch(I){b(I)}finally{v?Kn(m):m()}}}}function R(v){V(v.detail)}return _}const za="*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";function Qa(e={}){const{selector:t="html",attribute:n="class",initialValue:s="auto",window:r=$e,storage:i,storageKey:o="vueuse-color-scheme",listenToStorageChanges:l=!0,storageRef:c,emitAuto:f,disableTransition:a=!0}=e,h={auto:"",light:"light",dark:"dark",...e.modes||{}},g=jo({window:r}),b=ie(()=>g.value?"dark":"light"),S=c||(o==null?No(s):lr(o,s,i,{window:r,listenToStorageChanges:l})),_=ie(()=>S.value==="auto"?b.value:S.value),k=Do("updateHTMLAttrs",(m,M,F)=>{const $=typeof m=="string"?r==null?void 0:r.document.querySelector(m):Ho(m);if(!$)return;const V=new Set,R=new Set;let v=null;if(M==="class"){const x=F.split(/\s/g);Object.values(h).flatMap(W=>(W||"").split(/\s/g)).filter(Boolean).forEach(W=>{x.includes(W)?V.add(W):R.add(W)})}else v={key:M,value:F};if(V.size===0&&R.size===0&&v===null)return;let I;a&&(I=r.document.createElement("style"),I.appendChild(document.createTextNode(za)),r.document.head.appendChild(I));for(const x of V)$.classList.add(x);for(const x of R)$.classList.remove(x);v&&$.setAttribute(v.key,v.value),a&&(r.getComputedStyle(I).opacity,document.head.removeChild(I))});function N(m){var M;k(t,n,(M=h[m])!=null?M:m)}function j(m){e.onChanged?e.onChanged(m,N):N(m)}Fe(_,j,{flush:"post",immediate:!0}),or(()=>j(_.value));const p=ie({get(){return f?S.value:_.value},set(m){S.value=m}});try{return Object.assign(p,{store:S,system:b,state:_})}catch{return p}}function Za(e={}){const{valueDark:t="dark",valueLight:n="",window:s=$e}=e,r=Qa({...e,onChanged:(l,c)=>{var f;e.onChanged?(f=e.onChanged)==null||f.call(e,l==="dark",c,l):c(l)},modes:{dark:t,light:n}}),i=ie(()=>r.system?r.system.value:jo({window:s}).value?"dark":"light");return ie({get(){return r.value==="dark"},set(l){const c=l?"dark":"light";i.value===c?r.value="auto":r.value=c}})}function ps(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}function tu(e,t,n={}){const{window:s=$e}=n;return lr(e,t,s==null?void 0:s.localStorage,n)}function Vo(e){const t=window.getComputedStyle(e);if(t.overflowX==="scroll"||t.overflowY==="scroll"||t.overflowX==="auto"&&e.clientWidth1?!0:(t.preventDefault&&t.preventDefault(),!1)}const gs=new WeakMap;function nu(e,t=!1){const n=oe(t);let s=null,r="";Fe(No(e),l=>{const c=ps(ke(l));if(c){const f=c;if(gs.get(f)||gs.set(f,f.style.overflow),f.style.overflow!=="hidden"&&(r=f.style.overflow),f.style.overflow==="hidden")return n.value=!0;if(n.value)return f.style.overflow="hidden"}},{immediate:!0});const i=()=>{const l=ps(ke(e));!l||n.value||(ni&&(s=Pt(l,"touchmove",c=>{ef(c)},{passive:!1})),l.style.overflow="hidden",n.value=!0)},o=()=>{const l=ps(ke(e));!l||!n.value||(ni&&(s==null||s()),l.style.overflow=r,gs.delete(l),n.value=!1)};return ir(o),ie({get(){return n.value},set(l){l?i():o()}})}function su(e,t,n={}){const{window:s=$e}=n;return lr(e,t,s==null?void 0:s.sessionStorage,n)}function ru(e={}){const{window:t=$e,behavior:n="auto"}=e;if(!t)return{x:oe(0),y:oe(0)};const s=oe(t.scrollX),r=oe(t.scrollY),i=ie({get(){return s.value},set(l){scrollTo({left:l,behavior:n})}}),o=ie({get(){return r.value},set(l){scrollTo({top:l,behavior:n})}});return Pt(t,"scroll",()=>{s.value=t.scrollX,r.value=t.scrollY},{capture:!1,passive:!0}),{x:i,y:o}}function iu(e={}){const{window:t=$e,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:s=Number.POSITIVE_INFINITY,listenOrientation:r=!0,includeScrollbar:i=!0,type:o="inner"}=e,l=oe(n),c=oe(s),f=()=>{t&&(o==="outer"?(l.value=t.outerWidth,c.value=t.outerHeight):i?(l.value=t.innerWidth,c.value=t.innerHeight):(l.value=t.document.documentElement.clientWidth,c.value=t.document.documentElement.clientHeight))};if(f(),or(f),Pt("resize",f,{passive:!0}),r){const a=$o("(orientation: portrait)");Fe(a,()=>f())}return{width:l,height:c}}const ms={BASE_URL:"/docs/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};var ys={};const Uo=/^(?:[a-z]+:|\/\/)/i,tf="vitepress-theme-appearance",nf=/#.*$/,sf=/[?#].*$/,rf=/(?:(^|\/)index)?\.(?:md|html)$/,ge=typeof document<"u",Bo={relativePath:"404.md",filePath:"",title:"404",description:"Not Found",headers:[],frontmatter:{sidebar:!1,layout:"page"},lastUpdated:0,isNotFound:!0};function of(e,t,n=!1){if(t===void 0)return!1;if(e=ri(`/${e}`),n)return new RegExp(t).test(e);if(ri(t)!==e)return!1;const s=t.match(nf);return s?(ge?location.hash:"")===s[0]:!0}function ri(e){return decodeURI(e).replace(sf,"").replace(rf,"$1")}function lf(e){return Uo.test(e)}function cf(e,t){return Object.keys((e==null?void 0:e.locales)||{}).find(n=>n!=="root"&&!lf(n)&&of(t,`/${n}/`,!0))||"root"}function af(e,t){var s,r,i,o,l,c,f;const n=cf(e,t);return Object.assign({},e,{localeIndex:n,lang:((s=e.locales[n])==null?void 0:s.lang)??e.lang,dir:((r=e.locales[n])==null?void 0:r.dir)??e.dir,title:((i=e.locales[n])==null?void 0:i.title)??e.title,titleTemplate:((o=e.locales[n])==null?void 0:o.titleTemplate)??e.titleTemplate,description:((l=e.locales[n])==null?void 0:l.description)??e.description,head:Wo(e.head,((c=e.locales[n])==null?void 0:c.head)??[]),themeConfig:{...e.themeConfig,...(f=e.locales[n])==null?void 0:f.themeConfig}})}function ko(e,t){const n=t.title||e.title,s=t.titleTemplate??e.titleTemplate;if(typeof s=="string"&&s.includes(":title"))return s.replace(/:title/g,n);const r=ff(e.title,s);return n===r.slice(3)?n:`${n}${r}`}function ff(e,t){return t===!1?"":t===!0||t===void 0?` | ${e}`:e===t?"":` | ${t}`}function uf(e,t){const[n,s]=t;if(n!=="meta")return!1;const r=Object.entries(s)[0];return r==null?!1:e.some(([i,o])=>i===n&&o[r[0]]===r[1])}function Wo(e,t){return[...e.filter(n=>!uf(t,n)),...t]}const df=/[\u0000-\u001F"#$&*+,:;<=>?[\]^`{|}\u007F]/g,hf=/^[a-z]:/i;function ii(e){const t=hf.exec(e),n=t?t[0]:"";return n+e.slice(n.length).replace(df,"_").replace(/(^|\/)_+(?=[^/]*$)/,"$1")}const vs=new Set;function pf(e){if(vs.size===0){const n=typeof process=="object"&&(ys==null?void 0:ys.VITE_EXTRA_EXTENSIONS)||(ms==null?void 0:ms.VITE_EXTRA_EXTENSIONS)||"";("3g2,3gp,aac,ai,apng,au,avif,bin,bmp,cer,class,conf,crl,css,csv,dll,doc,eps,epub,exe,gif,gz,ics,ief,jar,jpe,jpeg,jpg,js,json,jsonld,m4a,man,mid,midi,mjs,mov,mp2,mp3,mp4,mpe,mpeg,mpg,mpp,oga,ogg,ogv,ogx,opus,otf,p10,p7c,p7m,p7s,pdf,png,ps,qt,roff,rtf,rtx,ser,svg,t,tif,tiff,tr,ts,tsv,ttf,txt,vtt,wav,weba,webm,webp,woff,woff2,xhtml,xml,yaml,yml,zip"+(n&&typeof n=="string"?","+n:"")).split(",").forEach(s=>vs.add(s))}const t=e.split(".").pop();return t==null||!vs.has(t.toLowerCase())}function ou(e){return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}const gf=Symbol(),yt=Js(Fa);function lu(e){const t=ie(()=>af(yt.value,e.data.relativePath)),n=t.value.appearance,s=n==="force-dark"?oe(!0):n?Za({storageKey:tf,initialValue:()=>n==="dark"?"dark":"auto",...typeof n=="object"?n:{}}):oe(!1),r=oe(ge?location.hash:"");return ge&&window.addEventListener("hashchange",()=>{r.value=location.hash}),Fe(()=>e.data,()=>{r.value=ge?location.hash:""}),{site:t,theme:ie(()=>t.value.themeConfig),page:ie(()=>e.data),frontmatter:ie(()=>e.data.frontmatter),params:ie(()=>e.data.params),lang:ie(()=>t.value.lang),dir:ie(()=>e.data.frontmatter.dir||t.value.dir),localeIndex:ie(()=>t.value.localeIndex||"root"),title:ie(()=>ko(t.value,e.data)),description:ie(()=>e.data.description||t.value.description),isDark:s,hash:ie(()=>r.value)}}function mf(){const e=Mt(gf);if(!e)throw new Error("vitepress data not properly injected in app");return e}function yf(e,t){return`${e}${t}`.replace(/\/+/g,"/")}function oi(e){return Uo.test(e)||!e.startsWith("/")?e:yf(yt.value.base,e)}function vf(e){let t=e.replace(/\.html$/,"");if(t=decodeURIComponent(t),t=t.replace(/\/$/,"/index"),ge){const n="/docs/";t=ii(t.slice(n.length).replace(/\//g,"_")||"index")+".md";let s=__VP_HASH_MAP__[t.toLowerCase()];if(s||(t=t.endsWith("_index.md")?t.slice(0,-9)+".md":t.slice(0,-3)+"_index.md",s=__VP_HASH_MAP__[t.toLowerCase()]),!s)return null;t=`${n}assets/${t}.${s}.js`}else t=`./${ii(t.slice(1).replace(/\//g,"_"))}.md.js`;return t}let Rn=[];function cu(e){Rn.push(e),Gn(()=>{Rn=Rn.filter(t=>t!==e)})}function bf(){let e=yt.value.scrollOffset,t=0,n=24;if(typeof e=="object"&&"padding"in e&&(n=e.padding,e=e.selector),typeof e=="number")t=e;else if(typeof e=="string")t=li(e,n);else if(Array.isArray(e))for(const s of e){const r=li(s,n);if(r){t=r;break}}return t}function li(e,t){const n=document.querySelector(e);if(!n)return 0;const s=n.getBoundingClientRect().bottom;return s<0?0:s+t}const _f=Symbol(),Ko="http://a.com",wf=()=>({path:"/",component:null,data:Bo});function au(e,t){const n=kn(wf()),s={route:n,go:r};async function r(l=ge?location.href:"/"){var c,f;l=bs(l),await((c=s.onBeforeRouteChange)==null?void 0:c.call(s,l))!==!1&&(ge&&l!==bs(location.href)&&(history.replaceState({scrollPosition:window.scrollY},""),history.pushState({},"",l)),await o(l),await((f=s.onAfterRouteChanged)==null?void 0:f.call(s,l)))}let i=null;async function o(l,c=0,f=!1){var g,b;if(await((g=s.onBeforePageLoad)==null?void 0:g.call(s,l))===!1)return;const a=new URL(l,Ko),h=i=a.pathname;try{let S=await e(h);if(!S)throw new Error(`Page not found: ${h}`);if(i===h){i=null;const{default:_,__pageData:k}=S;if(!_)throw new Error(`Invalid route component: ${_}`);await((b=s.onAfterPageLoad)==null?void 0:b.call(s,l)),n.path=ge?h:oi(h),n.component=xn(_),n.data=xn(k),ge&&Kn(()=>{let N=yt.value.base+k.relativePath.replace(/(?:(^|\/)index)?\.md$/,"$1");if(!yt.value.cleanUrls&&!N.endsWith("/")&&(N+=".html"),N!==a.pathname&&(a.pathname=N,l=N+a.search+a.hash,history.replaceState({},"",l)),a.hash&&!c){let j=null;try{j=document.getElementById(decodeURIComponent(a.hash).slice(1))}catch(p){console.warn(p)}if(j){ci(j,a.hash);return}}window.scrollTo(0,c)})}}catch(S){if(!/fetch|Page not found/.test(S.message)&&!/^\/404(\.html|\/)?$/.test(l)&&console.error(S),!f)try{const _=await fetch(yt.value.base+"hashmap.json");window.__VP_HASH_MAP__=await _.json(),await o(l,c,!0);return}catch{}if(i===h){i=null,n.path=ge?h:oi(h),n.component=t?xn(t):null;const _=ge?h.replace(/(^|\/)$/,"$1index").replace(/(\.html)?$/,".md").replace(/^\//,""):"404.md";n.data={...Bo,relativePath:_}}}}return ge&&(history.state===null&&history.replaceState({},""),window.addEventListener("click",l=>{if(l.defaultPrevented||!(l.target instanceof Element)||l.target.closest("button")||l.button!==0||l.ctrlKey||l.shiftKey||l.altKey||l.metaKey)return;const c=l.target.closest("a");if(!c||c.closest(".vp-raw")||c.hasAttribute("download")||c.hasAttribute("target"))return;const f=c.getAttribute("href")??(c instanceof SVGAElement?c.getAttribute("xlink:href"):null);if(f==null)return;const{href:a,origin:h,pathname:g,hash:b,search:S}=new URL(f,c.baseURI),_=new URL(location.href);h===_.origin&&pf(g)&&(l.preventDefault(),g===_.pathname&&S===_.search?(b!==_.hash&&(history.pushState({},"",a),window.dispatchEvent(new HashChangeEvent("hashchange",{oldURL:_.href,newURL:a}))),b?ci(c,b,c.classList.contains("header-anchor")):window.scrollTo(0,0)):r(a))},{capture:!0}),window.addEventListener("popstate",async l=>{var c;l.state!==null&&(await o(bs(location.href),l.state&&l.state.scrollPosition||0),(c=s.onAfterRouteChanged)==null||c.call(s,location.href))}),window.addEventListener("hashchange",l=>{l.preventDefault()})),s}function Sf(){const e=Mt(_f);if(!e)throw new Error("useRouter() is called without provider.");return e}function qo(){return Sf().route}function ci(e,t,n=!1){let s=null;try{s=e.classList.contains("header-anchor")?e:document.getElementById(decodeURIComponent(t).slice(1))}catch(r){console.warn(r)}if(s){let r=function(){!n||Math.abs(o-window.scrollY)>window.innerHeight?window.scrollTo(0,o):window.scrollTo({left:0,top:o,behavior:"smooth"})};const i=parseInt(window.getComputedStyle(s).paddingTop,10),o=window.scrollY+s.getBoundingClientRect().top-bf()+i;requestAnimationFrame(r)}}function bs(e){const t=new URL(e,Ko);return t.pathname=t.pathname.replace(/(^|\/)index(\.html)?$/,"$1"),yt.value.cleanUrls?t.pathname=t.pathname.replace(/\.html$/,""):!t.pathname.endsWith("/")&&!t.pathname.endsWith(".html")&&(t.pathname+=".html"),t.pathname+t.search+t.hash}const _n=()=>Rn.forEach(e=>e()),fu=Qs({name:"VitePressContent",props:{as:{type:[Object,String],default:"div"}},setup(e){const t=qo(),{frontmatter:n,site:s}=mf();return Fe(n,_n,{deep:!0,flush:"post"}),()=>Ns(e.as,s.value.contentProps??{style:{position:"relative"}},[t.component?Ns(t.component,{onVnodeMounted:_n,onVnodeUpdated:_n,onVnodeUnmounted:_n}):"404 Page Not Found"])}}),Ef="modulepreload",xf=function(e){return"/docs/"+e},ai={},uu=function(t,n,s){let r=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),l=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));r=Promise.allSettled(n.map(c=>{if(c=xf(c),c in ai)return;ai[c]=!0;const f=c.endsWith(".css"),a=f?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${a}`))return;const h=document.createElement("link");if(h.rel=f?"stylesheet":Ef,f||(h.as="script"),h.crossOrigin="",h.href=c,l&&h.setAttribute("nonce",l),document.head.appendChild(h),f)return new Promise((g,b)=>{h.addEventListener("load",g),h.addEventListener("error",()=>b(new Error(`Unable to preload CSS for ${c}`)))})}))}function i(o){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=o,window.dispatchEvent(l),!l.defaultPrevented)throw o}return r.then(o=>{for(const l of o||[])l.status==="rejected"&&i(l.reason);return t().catch(i)})},du=Qs({setup(e,{slots:t}){const n=oe(!1);return Lt(()=>{n.value=!0}),()=>n.value&&t.default?t.default():null}});function hu(){ge&&window.addEventListener("click",e=>{var n;const t=e.target;if(t.matches(".vp-code-group input")){const s=(n=t.parentElement)==null?void 0:n.parentElement;if(!s)return;const r=Array.from(s.querySelectorAll("input")).indexOf(t);if(r<0)return;const i=s.querySelector(".blocks");if(!i)return;const o=Array.from(i.children).find(f=>f.classList.contains("active"));if(!o)return;const l=i.children[r];if(!l||o===l)return;o.classList.remove("active"),l.classList.add("active");const c=s==null?void 0:s.querySelector(`label[for="${t.id}"]`);c==null||c.scrollIntoView({block:"nearest"})}})}function pu(){if(ge){const e=new WeakMap;window.addEventListener("click",t=>{var s;const n=t.target;if(n.matches('div[class*="language-"] > button.copy')){const r=n.parentElement,i=(s=n.nextElementSibling)==null?void 0:s.nextElementSibling;if(!r||!i)return;const o=/language-(shellscript|shell|bash|sh|zsh)/.test(r.className),l=[".vp-copy-ignore",".diff.remove"],c=i.cloneNode(!0);c.querySelectorAll(l.join(",")).forEach(a=>a.remove());let f=c.textContent||"";o&&(f=f.replace(/^ *(\$|>) /gm,"").trim()),Tf(f).then(()=>{n.classList.add("copied"),clearTimeout(e.get(n));const a=setTimeout(()=>{n.classList.remove("copied"),n.blur(),e.delete(n)},2e3);e.set(n,a)})}})}}async function Tf(e){try{return navigator.clipboard.writeText(e)}catch{const t=document.createElement("textarea"),n=document.activeElement;t.value=e,t.setAttribute("readonly",""),t.style.contain="strict",t.style.position="absolute",t.style.left="-9999px",t.style.fontSize="12pt";const s=document.getSelection(),r=s?s.rangeCount>0&&s.getRangeAt(0):null;document.body.appendChild(t),t.select(),t.selectionStart=0,t.selectionEnd=e.length,document.execCommand("copy"),document.body.removeChild(t),r&&(s.removeAllRanges(),s.addRange(r)),n&&n.focus()}}function gu(e,t){let n=!0,s=[];const r=i=>{if(n){n=!1,i.forEach(l=>{const c=_s(l);for(const f of document.head.children)if(f.isEqualNode(c)){s.push(f);return}});return}const o=i.map(_s);s.forEach((l,c)=>{const f=o.findIndex(a=>a==null?void 0:a.isEqualNode(l??null));f!==-1?delete o[f]:(l==null||l.remove(),delete s[c])}),o.forEach(l=>l&&document.head.appendChild(l)),s=[...s,...o].filter(Boolean)};sr(()=>{const i=e.data,o=t.value,l=i&&i.description,c=i&&i.frontmatter.head||[],f=ko(o,i);f!==document.title&&(document.title=f);const a=l||o.description;let h=document.querySelector("meta[name=description]");h?h.getAttribute("content")!==a&&h.setAttribute("content",a):_s(["meta",{name:"description",content:a}]),r(Wo(o.head,Af(c)))})}function _s([e,t,n]){const s=document.createElement(e);for(const r in t)s.setAttribute(r,t[r]);return n&&(s.innerHTML=n),e==="script"&&!t.async&&(s.async=!1),s}function Cf(e){return e[0]==="meta"&&e[1]&&e[1].name==="description"}function Af(e){return e.filter(t=>!Cf(t))}const ws=new Set,Go=()=>document.createElement("link"),Rf=e=>{const t=Go();t.rel="prefetch",t.href=e,document.head.appendChild(t)},Of=e=>{const t=new XMLHttpRequest;t.open("GET",e,t.withCredentials=!0),t.send()};let wn;const Mf=ge&&(wn=Go())&&wn.relList&&wn.relList.supports&&wn.relList.supports("prefetch")?Rf:Of;function mu(){if(!ge||!window.IntersectionObserver)return;let e;if((e=navigator.connection)&&(e.saveData||/2g/.test(e.effectiveType)))return;const t=window.requestIdleCallback||setTimeout;let n=null;const s=()=>{n&&n.disconnect(),n=new IntersectionObserver(i=>{i.forEach(o=>{if(o.isIntersecting){const l=o.target;n.unobserve(l);const{pathname:c}=l;if(!ws.has(c)){ws.add(c);const f=vf(c);f&&Mf(f)}}})}),t(()=>{document.querySelectorAll("#app a").forEach(i=>{const{hostname:o,pathname:l}=new URL(i.href instanceof SVGAnimatedString?i.href.animVal:i.href,i.baseURI),c=l.match(/\.\w+$/);c&&c[0]!==".html"||i.target!=="_blank"&&o===location.hostname&&(l!==location.pathname?n.observe(i):ws.add(l))})})};Lt(s);const r=qo();Fe(()=>r.path,s),Gn(()=>{n&&n.disconnect()})}export{Ji as $,bf as A,Nf as B,Hf as C,Js as D,cu as E,Se as F,le as G,Ff as H,Uo as I,qo as J,Yc as K,Mt as L,iu as M,Vs as N,eu as O,Kn as P,ru as Q,ge as R,Wn as S,Wf as T,If as U,uu as V,nu as W,Cc as X,Df as Y,Gf as Z,Jf as _,Eo as a,qf as a0,jf as a1,Ns as a2,Bf as a3,gu as a4,_f as a5,lu as a6,gf as a7,fu as a8,du as a9,yt as aa,Xf as ab,au as ac,vf as ad,mu as ae,pu as af,hu as ag,ke as ah,Ho as ai,zf as aj,ir as ak,Zf as al,su as am,tu as an,Qf as ao,Sf as ap,Pt as aq,Pf as ar,Kf as as,ae as at,Lf as au,xn as av,Yf as aw,ou as ax,Ls as b,Uf as c,Qs as d,kf as e,pf as f,oi as g,ie as h,lf as i,So as j,Fi as k,of as l,$o as m,Us as n,Ps as o,oe as p,Fe as q,$f as r,sr as s,cl as t,mf as u,Lt as v,Xl as w,Gn as x,Vf as y,dc as z}; diff --git a/docs/assets/chunks/framework.S1oRGgk6.js b/docs/assets/chunks/framework.S1oRGgk6.js deleted file mode 100644 index 4a04f17e..00000000 --- a/docs/assets/chunks/framework.S1oRGgk6.js +++ /dev/null @@ -1,18 +0,0 @@ -/** -* @vue/shared v3.5.11 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**//*! #__NO_SIDE_EFFECTS__ */function Ts(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const te={},St=[],Ue=()=>{},Oo=()=>!1,Yt=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),As=e=>e.startsWith("onUpdate:"),le=Object.assign,Rs=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Io=Object.prototype.hasOwnProperty,J=(e,t)=>Io.call(e,t),B=Array.isArray,Et=e=>An(e)==="[object Map]",Wr=e=>An(e)==="[object Set]",q=e=>typeof e=="function",re=e=>typeof e=="string",st=e=>typeof e=="symbol",ne=e=>e!==null&&typeof e=="object",Kr=e=>(ne(e)||q(e))&&q(e.then)&&q(e.catch),qr=Object.prototype.toString,An=e=>qr.call(e),Mo=e=>An(e).slice(8,-1),Gr=e=>An(e)==="[object Object]",Os=e=>re(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Ct=Ts(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Rn=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Po=/-(\w)/g,Pe=Rn(e=>e.replace(Po,(t,n)=>n?n.toUpperCase():"")),Lo=/\B([A-Z])/g,rt=Rn(e=>e.replace(Lo,"-$1").toLowerCase()),On=Rn(e=>e.charAt(0).toUpperCase()+e.slice(1)),pn=Rn(e=>e?`on${On(e)}`:""),tt=(e,t)=>!Object.is(e,t),Gn=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},No=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Fo=e=>{const t=re(e)?Number(e):NaN;return isNaN(t)?e:t};let Js;const Xr=()=>Js||(Js=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Is(e){if(B(e)){const t={};for(let n=0;n{if(n){const s=n.split($o);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Ms(e){let t="";if(re(e))t=e;else if(B(e))for(let n=0;n!!(e&&e.__v_isRef===!0),Bo=e=>re(e)?e:e==null?"":B(e)||ne(e)&&(e.toString===qr||!q(e.toString))?Jr(e)?Bo(e.value):JSON.stringify(e,Qr,2):String(e),Qr=(e,t)=>Jr(t)?Qr(e,t.value):Et(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[Yn(s,i)+" =>"]=r,n),{})}:Wr(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Yn(n))}:st(t)?Yn(t):ne(t)&&!B(t)&&!Gr(t)?String(t):t,Yn=(e,t="")=>{var n;return st(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** -* @vue/reactivity v3.5.11 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let be;class ko{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=be,!t&&be&&(this.index=(be.scopes||(be.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t0)return;if($t){let t=$t;for($t=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Ht;){let t=Ht;for(Ht=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function si(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function ri(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),Ns(s),Ko(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function ps(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(ii(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function ii(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Ut))return;e.globalVersion=Ut;const t=e.dep;if(e.flags|=2,t.version>0&&!e.isSSR&&e.deps&&!ps(e)){e.flags&=-3;return}const n=ee,s=Ne;ee=e,Ne=!0;try{si(e);const r=e.fn(e._value);(t.version===0||tt(r,e._value))&&(e._value=r,t.version++)}catch(r){throw t.version++,r}finally{ee=n,Ne=s,ri(e),e.flags&=-3}}function Ns(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s),!n.subs&&n.computed){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)Ns(i,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Ko(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Ne=!0;const oi=[];function it(){oi.push(Ne),Ne=!1}function ot(){const e=oi.pop();Ne=e===void 0?!0:e}function Qs(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=ee;ee=void 0;try{t()}finally{ee=n}}}let Ut=0;class qo{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class In{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(t){if(!ee||!Ne||ee===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ee)n=this.activeLink=new qo(ee,this),ee.deps?(n.prevDep=ee.depsTail,ee.depsTail.nextDep=n,ee.depsTail=n):ee.deps=ee.depsTail=n,li(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=ee.depsTail,n.nextDep=void 0,ee.depsTail.nextDep=n,ee.depsTail=n,ee.deps===n&&(ee.deps=s)}return n}trigger(t){this.version++,Ut++,this.notify(t)}notify(t){Ps();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Ls()}}}function li(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)li(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const _n=new WeakMap,ht=Symbol(""),gs=Symbol(""),Bt=Symbol("");function ve(e,t,n){if(Ne&&ee){let s=_n.get(e);s||_n.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new In),r.map=s,r.key=n),r.track()}}function We(e,t,n,s,r,i){const o=_n.get(e);if(!o){Ut++;return}const l=c=>{c&&c.trigger()};if(Ps(),t==="clear")o.forEach(l);else{const c=B(e),u=c&&Os(n);if(c&&n==="length"){const f=Number(s);o.forEach((h,y)=>{(y==="length"||y===Bt||!st(y)&&y>=f)&&l(h)})}else switch(n!==void 0&&l(o.get(n)),u&&l(o.get(Bt)),t){case"add":c?u&&l(o.get("length")):(l(o.get(ht)),Et(e)&&l(o.get(gs)));break;case"delete":c||(l(o.get(ht)),Et(e)&&l(o.get(gs)));break;case"set":Et(e)&&l(o.get(ht));break}}Ls()}function Go(e,t){const n=_n.get(e);return n&&n.get(t)}function bt(e){const t=z(e);return t===e?t:(ve(t,"iterate",Bt),Me(e)?t:t.map(ge))}function Mn(e){return ve(e=z(e),"iterate",Bt),e}const Yo={__proto__:null,[Symbol.iterator](){return zn(this,Symbol.iterator,ge)},concat(...e){return bt(this).concat(...e.map(t=>B(t)?bt(t):t))},entries(){return zn(this,"entries",e=>(e[1]=ge(e[1]),e))},every(e,t){return Be(this,"every",e,t,void 0,arguments)},filter(e,t){return Be(this,"filter",e,t,n=>n.map(ge),arguments)},find(e,t){return Be(this,"find",e,t,ge,arguments)},findIndex(e,t){return Be(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Be(this,"findLast",e,t,ge,arguments)},findLastIndex(e,t){return Be(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Be(this,"forEach",e,t,void 0,arguments)},includes(...e){return Jn(this,"includes",e)},indexOf(...e){return Jn(this,"indexOf",e)},join(e){return bt(this).join(e)},lastIndexOf(...e){return Jn(this,"lastIndexOf",e)},map(e,t){return Be(this,"map",e,t,void 0,arguments)},pop(){return Lt(this,"pop")},push(...e){return Lt(this,"push",e)},reduce(e,...t){return Zs(this,"reduce",e,t)},reduceRight(e,...t){return Zs(this,"reduceRight",e,t)},shift(){return Lt(this,"shift")},some(e,t){return Be(this,"some",e,t,void 0,arguments)},splice(...e){return Lt(this,"splice",e)},toReversed(){return bt(this).toReversed()},toSorted(e){return bt(this).toSorted(e)},toSpliced(...e){return bt(this).toSpliced(...e)},unshift(...e){return Lt(this,"unshift",e)},values(){return zn(this,"values",ge)}};function zn(e,t,n){const s=Mn(e),r=s[t]();return s!==e&&!Me(e)&&(r._next=r.next,r.next=()=>{const i=r._next();return i.value&&(i.value=n(i.value)),i}),r}const Xo=Array.prototype;function Be(e,t,n,s,r,i){const o=Mn(e),l=o!==e&&!Me(e),c=o[t];if(c!==Xo[t]){const h=c.apply(e,i);return l?ge(h):h}let u=n;o!==e&&(l?u=function(h,y){return n.call(this,ge(h),y,e)}:n.length>2&&(u=function(h,y){return n.call(this,h,y,e)}));const f=c.call(o,u,s);return l&&r?r(f):f}function Zs(e,t,n,s){const r=Mn(e);let i=n;return r!==e&&(Me(e)?n.length>3&&(i=function(o,l,c){return n.call(this,o,l,c,e)}):i=function(o,l,c){return n.call(this,o,ge(l),c,e)}),r[t](i,...s)}function Jn(e,t,n){const s=z(e);ve(s,"iterate",Bt);const r=s[t](...n);return(r===-1||r===!1)&&Ds(n[0])?(n[0]=z(n[0]),s[t](...n)):r}function Lt(e,t,n=[]){it(),Ps();const s=z(e)[t].apply(e,n);return Ls(),ot(),s}const zo=Ts("__proto__,__v_isRef,__isVue"),ci=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(st));function Jo(e){st(e)||(e=String(e));const t=z(this);return ve(t,"has",e),t.hasOwnProperty(e)}class ai{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?fl:hi:i?di:ui).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=B(t);if(!r){let c;if(o&&(c=Yo[n]))return c;if(n==="hasOwnProperty")return Jo}const l=Reflect.get(t,n,ce(t)?t:s);return(st(n)?ci.has(n):zo(n))||(r||ve(t,"get",n),i)?l:ce(l)?o&&Os(n)?l:l.value:ne(l)?r?Nn(l):Ln(l):l}}class fi extends ai{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];if(!this._isShallow){const c=vt(i);if(!Me(s)&&!vt(s)&&(i=z(i),s=z(s)),!B(t)&&ce(i)&&!ce(s))return c?!1:(i.value=s,!0)}const o=B(t)&&Os(n)?Number(n)e,Pn=e=>Reflect.getPrototypeOf(e);function Zt(e,t,n=!1,s=!1){e=e.__v_raw;const r=z(e),i=z(t);n||(tt(t,i)&&ve(r,"get",t),ve(r,"get",i));const{has:o}=Pn(r),l=s?Fs:n?js:ge;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 en(e,t=!1){const n=this.__v_raw,s=z(n),r=z(e);return t||(tt(e,r)&&ve(s,"has",e),ve(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function tn(e,t=!1){return e=e.__v_raw,!t&&ve(z(e),"iterate",ht),Reflect.get(e,"size",e)}function er(e,t=!1){!t&&!Me(e)&&!vt(e)&&(e=z(e));const n=z(this);return Pn(n).has.call(n,e)||(n.add(e),We(n,"add",e,e)),this}function tr(e,t,n=!1){!n&&!Me(t)&&!vt(t)&&(t=z(t));const s=z(this),{has:r,get:i}=Pn(s);let o=r.call(s,e);o||(e=z(e),o=r.call(s,e));const l=i.call(s,e);return s.set(e,t),o?tt(t,l)&&We(s,"set",e,t):We(s,"add",e,t),this}function nr(e){const t=z(this),{has:n,get:s}=Pn(t);let r=n.call(t,e);r||(e=z(e),r=n.call(t,e)),s&&s.call(t,e);const i=t.delete(e);return r&&We(t,"delete",e,void 0),i}function sr(){const e=z(this),t=e.size!==0,n=e.clear();return t&&We(e,"clear",void 0,void 0),n}function nn(e,t){return function(s,r){const i=this,o=i.__v_raw,l=z(o),c=t?Fs:e?js:ge;return!e&&ve(l,"iterate",ht),o.forEach((u,f)=>s.call(r,c(u),c(f),i))}}function sn(e,t,n){return function(...s){const r=this.__v_raw,i=z(r),o=Et(i),l=e==="entries"||e===Symbol.iterator&&o,c=e==="keys"&&o,u=r[e](...s),f=n?Fs:t?js:ge;return!t&&ve(i,"iterate",c?gs:ht),{next(){const{value:h,done:y}=u.next();return y?{value:h,done:y}:{value:l?[f(h[0]),f(h[1])]:f(h),done:y}},[Symbol.iterator](){return this}}}}function Ge(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function nl(){const e={get(i){return Zt(this,i)},get size(){return tn(this)},has:en,add:er,set:tr,delete:nr,clear:sr,forEach:nn(!1,!1)},t={get(i){return Zt(this,i,!1,!0)},get size(){return tn(this)},has:en,add(i){return er.call(this,i,!0)},set(i,o){return tr.call(this,i,o,!0)},delete:nr,clear:sr,forEach:nn(!1,!0)},n={get(i){return Zt(this,i,!0)},get size(){return tn(this,!0)},has(i){return en.call(this,i,!0)},add:Ge("add"),set:Ge("set"),delete:Ge("delete"),clear:Ge("clear"),forEach:nn(!0,!1)},s={get(i){return Zt(this,i,!0,!0)},get size(){return tn(this,!0)},has(i){return en.call(this,i,!0)},add:Ge("add"),set:Ge("set"),delete:Ge("delete"),clear:Ge("clear"),forEach:nn(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=sn(i,!1,!1),n[i]=sn(i,!0,!1),t[i]=sn(i,!1,!0),s[i]=sn(i,!0,!0)}),[e,n,t,s]}const[sl,rl,il,ol]=nl();function Hs(e,t){const n=t?e?ol:il:e?rl:sl;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(J(n,r)&&r in s?n:s,r,i)}const ll={get:Hs(!1,!1)},cl={get:Hs(!1,!0)},al={get:Hs(!0,!1)};const ui=new WeakMap,di=new WeakMap,hi=new WeakMap,fl=new WeakMap;function ul(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function dl(e){return e.__v_skip||!Object.isExtensible(e)?0:ul(Mo(e))}function Ln(e){return vt(e)?e:$s(e,!1,Zo,ll,ui)}function hl(e){return $s(e,!1,tl,cl,di)}function Nn(e){return $s(e,!0,el,al,hi)}function $s(e,t,n,s,r){if(!ne(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=dl(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function pt(e){return vt(e)?pt(e.__v_raw):!!(e&&e.__v_isReactive)}function vt(e){return!!(e&&e.__v_isReadonly)}function Me(e){return!!(e&&e.__v_isShallow)}function Ds(e){return e?!!e.__v_raw:!1}function z(e){const t=e&&e.__v_raw;return t?z(t):e}function gn(e){return!J(e,"__v_skip")&&Object.isExtensible(e)&&Yr(e,"__v_skip",!0),e}const ge=e=>ne(e)?Ln(e):e,js=e=>ne(e)?Nn(e):e;function ce(e){return e?e.__v_isRef===!0:!1}function ue(e){return gi(e,!1)}function pi(e){return gi(e,!0)}function gi(e,t){return ce(e)?e:new pl(e,t)}class pl{constructor(t,n){this.dep=new In,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:z(t),this._value=n?t:ge(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||Me(t)||vt(t);t=s?t:z(t),tt(t,n)&&(this._rawValue=t,this._value=s?t:ge(t),this.dep.trigger())}}function mi(e){return ce(e)?e.value:e}const gl={get:(e,t,n)=>t==="__v_raw"?e:mi(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return ce(r)&&!ce(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function yi(e){return pt(e)?e:new Proxy(e,gl)}class ml{constructor(t){this.__v_isRef=!0,this._value=void 0;const n=this.dep=new In,{get:s,set:r}=t(n.track.bind(n),n.trigger.bind(n));this._get=s,this._set=r}get value(){return this._value=this._get()}set value(t){this._set(t)}}function yl(e){return new ml(e)}class vl{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0}get value(){const t=this._object[this._key];return this._value=t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return Go(z(this._object),this._key)}}class _l{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function bl(e,t,n){return ce(e)?e:q(e)?new _l(e):ne(e)&&arguments.length>1?wl(e,t,n):ue(e)}function wl(e,t,n){const s=e[t];return ce(s)?s:new vl(e,t,n)}class xl{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new In(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Ut-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&ee!==this)return ni(this,!0),!0}get value(){const t=this.dep.track();return ii(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function Sl(e,t,n=!1){let s,r;return q(e)?s=e:(s=e.get,r=e.set),new xl(s,r,n)}const rn={},bn=new WeakMap;let ut;function El(e,t=!1,n=ut){if(n){let s=bn.get(n);s||bn.set(n,s=[]),s.push(e)}}function Cl(e,t,n=te){const{immediate:s,deep:r,once:i,scheduler:o,augmentJob:l,call:c}=n,u=p=>r?p:Me(p)||r===!1||r===0?Ze(p,1):Ze(p);let f,h,y,C,L=!1,I=!1;if(ce(e)?(h=()=>e.value,L=Me(e)):pt(e)?(h=()=>u(e),L=!0):B(e)?(I=!0,L=e.some(p=>pt(p)||Me(p)),h=()=>e.map(p=>{if(ce(p))return p.value;if(pt(p))return u(p);if(q(p))return c?c(p,2):p()})):q(e)?t?h=c?()=>c(e,2):e:h=()=>{if(y){it();try{y()}finally{ot()}}const p=ut;ut=f;try{return c?c(e,3,[C]):e(C)}finally{ut=p}}:h=Ue,t&&r){const p=h,R=r===!0?1/0:r;h=()=>Ze(p(),R)}const G=Zr(),U=()=>{f.stop(),G&&Rs(G.effects,f)};if(i&&t){const p=t;t=(...R)=>{p(...R),U()}}let W=I?new Array(e.length).fill(rn):rn;const g=p=>{if(!(!(f.flags&1)||!f.dirty&&!p))if(t){const R=f.run();if(r||L||(I?R.some(($,j)=>tt($,W[j])):tt(R,W))){y&&y();const $=ut;ut=f;try{const j=[R,W===rn?void 0:I&&W[0]===rn?[]:W,C];c?c(t,3,j):t(...j),W=R}finally{ut=$}}}else f.run()};return l&&l(g),f=new ei(h),f.scheduler=o?()=>o(g,!1):g,C=p=>El(p,!1,f),y=f.onStop=()=>{const p=bn.get(f);if(p){if(c)c(p,4);else for(const R of p)R();bn.delete(f)}},t?s?g(!0):W=f.run():o?o(g.bind(null,!0),!0):f.run(),U.pause=f.pause.bind(f),U.resume=f.resume.bind(f),U.stop=U,U}function Ze(e,t=1/0,n){if(t<=0||!ne(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,ce(e))Ze(e.value,t,n);else if(B(e))for(let s=0;s{Ze(s,t,n)});else if(Gr(e)){for(const s in e)Ze(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&Ze(e[s],t,n)}return e}/** -* @vue/runtime-core v3.5.11 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/function Xt(e,t,n,s){try{return s?e(...s):e()}catch(r){Fn(r,t,n)}}function He(e,t,n,s){if(q(e)){const r=Xt(e,t,n,s);return r&&Kr(r)&&r.catch(i=>{Fn(i,t,n)}),r}if(B(e)){const r=[];for(let i=0;i>>1,r=we[s],i=kt(r);i=kt(n)?we.push(e):we.splice(Al(t),0,e),e.flags|=1,_i()}}function _i(){wn||(wn=vi.then(bi))}function Rl(e){B(e)?Tt.push(...e):ze&&e.id===-1?ze.splice(xt+1,0,e):e.flags&1||(Tt.push(e),e.flags|=1),_i()}function rr(e,t,n=je+1){for(;nkt(n)-kt(s));if(Tt.length=0,ze){ze.push(...t);return}for(ze=t,xt=0;xte.id==null?e.flags&2?-1:1/0:e.id;function bi(e){try{for(je=0;je{s._d&&mr(-1);const i=Sn(t);let o;try{o=e(...r)}finally{Sn(i),s._d&&mr(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function Ve(e,t,n,s){const r=e.dirs,i=t&&t.dirs;for(let o=0;oe.__isTeleport,Je=Symbol("_leaveCb"),on=Symbol("_enterCb");function Ml(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return It(()=>{e.isMounted=!0}),Mi(()=>{e.isUnmounting=!0}),e}const Re=[Function,Array],Si={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Re,onEnter:Re,onAfterEnter:Re,onEnterCancelled:Re,onBeforeLeave:Re,onLeave:Re,onAfterLeave:Re,onLeaveCancelled:Re,onBeforeAppear:Re,onAppear:Re,onAfterAppear:Re,onAppearCancelled:Re},Ei=e=>{const t=e.subTree;return t.component?Ei(t.component):t},Pl={name:"BaseTransition",props:Si,setup(e,{slots:t}){const n=Bn(),s=Ml();return()=>{const r=t.default&&Ai(t.default(),!0);if(!r||!r.length)return;const i=Ci(r),o=z(e),{mode:l}=o;if(s.isLeaving)return Qn(i);const c=ir(i);if(!c)return Qn(i);let u=ms(c,o,s,n,y=>u=y);c.type!==me&&Wt(c,u);const f=n.subTree,h=f&&ir(f);if(h&&h.type!==me&&!dt(c,h)&&Ei(n).type!==me){const y=ms(h,o,s,n);if(Wt(h,y),l==="out-in"&&c.type!==me)return s.isLeaving=!0,y.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete y.afterLeave},Qn(i);l==="in-out"&&c.type!==me&&(y.delayLeave=(C,L,I)=>{const G=Ti(s,h);G[String(h.key)]=h,C[Je]=()=>{L(),C[Je]=void 0,delete u.delayedLeave},u.delayedLeave=I})}return i}}};function Ci(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==me){t=n;break}}return t}const Ll=Pl;function Ti(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 ms(e,t,n,s,r){const{appear:i,mode:o,persisted:l=!1,onBeforeEnter:c,onEnter:u,onAfterEnter:f,onEnterCancelled:h,onBeforeLeave:y,onLeave:C,onAfterLeave:L,onLeaveCancelled:I,onBeforeAppear:G,onAppear:U,onAfterAppear:W,onAppearCancelled:g}=t,p=String(e.key),R=Ti(n,e),$=(M,_)=>{M&&He(M,s,9,_)},j=(M,_)=>{const P=_[1];$(M,_),B(M)?M.every(w=>w.length<=1)&&P():M.length<=1&&P()},K={mode:o,persisted:l,beforeEnter(M){let _=c;if(!n.isMounted)if(i)_=G||c;else return;M[Je]&&M[Je](!0);const P=R[p];P&&dt(e,P)&&P.el[Je]&&P.el[Je](),$(_,[M])},enter(M){let _=u,P=f,w=h;if(!n.isMounted)if(i)_=U||u,P=W||f,w=g||h;else return;let V=!1;const se=M[on]=oe=>{V||(V=!0,oe?$(w,[M]):$(P,[M]),K.delayedLeave&&K.delayedLeave(),M[on]=void 0)};_?j(_,[M,se]):se()},leave(M,_){const P=String(e.key);if(M[on]&&M[on](!0),n.isUnmounting)return _();$(y,[M]);let w=!1;const V=M[Je]=se=>{w||(w=!0,_(),se?$(I,[M]):$(L,[M]),M[Je]=void 0,R[P]===e&&delete R[P])};R[P]=e,C?j(C,[M,V]):V()},clone(M){const _=ms(M,t,n,s,r);return r&&r(_),_}};return K}function Qn(e){if($n(e))return e=nt(e),e.children=null,e}function ir(e){if(!$n(e))return xi(e.type)&&e.children?Ci(e.children):e;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&q(n.default))return n.default()}}function Wt(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Wt(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 Ai(e,t=!1,n){let s=[],r=0;for(let i=0;i1)for(let i=0;iEn(L,t&&(B(t)?t[I]:t),n,s,r));return}if(gt(s)&&!r)return;const i=s.shapeFlag&4?Ws(s.component):s.el,o=r?null:i,{i:l,r:c}=e,u=t&&t.r,f=l.refs===te?l.refs={}:l.refs,h=l.setupState,y=z(h),C=h===te?()=>!1:L=>J(y,L);if(u!=null&&u!==c&&(re(u)?(f[u]=null,C(u)&&(h[u]=null)):ce(u)&&(u.value=null)),q(c))Xt(c,l,12,[o,f]);else{const L=re(c),I=ce(c);if(L||I){const G=()=>{if(e.f){const U=L?C(c)?h[c]:f[c]:c.value;r?B(U)&&Rs(U,i):B(U)?U.includes(i)||U.push(i):L?(f[c]=[i],C(c)&&(h[c]=f[c])):(c.value=[i],e.k&&(f[e.k]=c.value))}else L?(f[c]=o,C(c)&&(h[c]=o)):I&&(c.value=o,e.k&&(f[e.k]=o))};o?(G.id=-1,Te(G,n)):G()}}}let or=!1;const wt=()=>{or||(console.error("Hydration completed but contains mismatches."),or=!0)},Nl=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",Fl=e=>e.namespaceURI.includes("MathML"),ln=e=>{if(e.nodeType===1){if(Nl(e))return"svg";if(Fl(e))return"mathml"}},cn=e=>e.nodeType===8;function Hl(e){const{mt:t,p:n,o:{patchProp:s,createText:r,nextSibling:i,parentNode:o,remove:l,insert:c,createComment:u}}=e,f=(g,p)=>{if(!p.hasChildNodes()){n(null,g,p),xn(),p._vnode=g;return}h(p.firstChild,g,null,null,null),xn(),p._vnode=g},h=(g,p,R,$,j,K=!1)=>{K=K||!!p.dynamicChildren;const M=cn(g)&&g.data==="[",_=()=>I(g,p,R,$,j,M),{type:P,ref:w,shapeFlag:V,patchFlag:se}=p;let oe=g.nodeType;p.el=g,se===-2&&(K=!1,p.dynamicChildren=null);let H=null;switch(P){case mt:oe!==3?p.children===""?(c(p.el=r(""),o(g),g),H=g):H=_():(g.data!==p.children&&(wt(),g.data=p.children),H=i(g));break;case me:W(g)?(H=i(g),U(p.el=g.content.firstChild,g,R)):oe!==8||M?H=_():H=i(g);break;case jt:if(M&&(g=i(g),oe=g.nodeType),oe===1||oe===3){H=g;const Y=!p.children.length;for(let F=0;F{K=K||!!p.dynamicChildren;const{type:M,props:_,patchFlag:P,shapeFlag:w,dirs:V,transition:se}=p,oe=M==="input"||M==="option";if(oe||P!==-1){V&&Ve(p,null,R,"created");let H=!1;if(W(g)){H=Gi($,se)&&R&&R.vnode.props&&R.vnode.props.appear;const F=g.content.firstChild;H&&se.beforeEnter(F),U(F,g,R),p.el=g=F}if(w&16&&!(_&&(_.innerHTML||_.textContent))){let F=C(g.firstChild,p,g,R,$,j,K);for(;F;){an(g,1)||wt();const ae=F;F=F.nextSibling,l(ae)}}else if(w&8){let F=p.children;F[0]===` -`&&(g.tagName==="PRE"||g.tagName==="TEXTAREA")&&(F=F.slice(1)),g.textContent!==F&&(an(g,0)||wt(),g.textContent=p.children)}if(_){if(oe||!K||P&48){const F=g.tagName.includes("-");for(const ae in _)(oe&&(ae.endsWith("value")||ae==="indeterminate")||Yt(ae)&&!Ct(ae)||ae[0]==="."||F)&&s(g,ae,null,_[ae],void 0,R)}else if(_.onClick)s(g,"onClick",null,_.onClick,void 0,R);else if(P&4&&pt(_.style))for(const F in _.style)_.style[F]}let Y;(Y=_&&_.onVnodeBeforeMount)&&Oe(Y,R,p),V&&Ve(p,null,R,"beforeMount"),((Y=_&&_.onVnodeMounted)||V||H)&&eo(()=>{Y&&Oe(Y,R,p),H&&se.enter(g),V&&Ve(p,null,R,"mounted")},$)}return g.nextSibling},C=(g,p,R,$,j,K,M)=>{M=M||!!p.dynamicChildren;const _=p.children,P=_.length;for(let w=0;w{const{slotScopeIds:M}=p;M&&(j=j?j.concat(M):M);const _=o(g),P=C(i(g),p,_,R,$,j,K);return P&&cn(P)&&P.data==="]"?i(p.anchor=P):(wt(),c(p.anchor=u("]"),_,P),P)},I=(g,p,R,$,j,K)=>{if(an(g.parentElement,1)||wt(),p.el=null,K){const P=G(g);for(;;){const w=i(g);if(w&&w!==P)l(w);else break}}const M=i(g),_=o(g);return l(g),n(null,p,_,M,R,$,ln(_),j),M},G=(g,p="[",R="]")=>{let $=0;for(;g;)if(g=i(g),g&&cn(g)&&(g.data===p&&$++,g.data===R)){if($===0)return i(g);$--}return g},U=(g,p,R)=>{const $=p.parentNode;$&&$.replaceChild(g,p);let j=R;for(;j;)j.vnode.el===p&&(j.vnode.el=j.subTree.el=g),j=j.parent},W=g=>g.nodeType===1&&g.tagName==="TEMPLATE";return[f,h]}const lr="data-allow-mismatch",$l={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function an(e,t){if(t===0||t===1)for(;e&&!e.hasAttribute(lr);)e=e.parentElement;const n=e&&e.getAttribute(lr);if(n==null)return!1;if(n==="")return!0;{const s=n.split(",");return t===0&&s.includes("children")?!0:n.split(",").includes($l[t])}}const gt=e=>!!e.type.__asyncLoader,$n=e=>e.type.__isKeepAlive;function Dl(e,t){Ii(e,"a",t)}function jl(e,t){Ii(e,"da",t)}function Ii(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(Dn(t,s,n),n){let r=n.parent;for(;r&&r.parent;)$n(r.parent.vnode)&&Vl(s,t,n,r),r=r.parent}}function Vl(e,t,n,s){const r=Dn(t,e,s,!0);jn(()=>{Rs(s[t],r)},n)}function Dn(e,t,n=fe,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{it();const l=zt(n),c=He(t,n,e,o);return l(),ot(),c});return s?r.unshift(i):r.push(i),i}}const qe=e=>(t,n=fe)=>{(!kn||e==="sp")&&Dn(e,(...s)=>t(...s),n)},Ul=qe("bm"),It=qe("m"),Bl=qe("bu"),kl=qe("u"),Mi=qe("bum"),jn=qe("um"),Wl=qe("sp"),Kl=qe("rtg"),ql=qe("rtc");function Gl(e,t=fe){Dn("ec",e,t)}const Pi="components";function af(e,t){return Ni(Pi,e,!0,t)||e}const Li=Symbol.for("v-ndc");function ff(e){return re(e)?Ni(Pi,e,!1)||e:e||Li}function Ni(e,t,n=!0,s=!1){const r=ye||fe;if(r){const i=r.type;{const l=Pc(i,!1);if(l&&(l===t||l===Pe(t)||l===On(Pe(t))))return i}const o=cr(r[e]||i[e],t)||cr(r.appContext[e],t);return!o&&s?i:o}}function cr(e,t){return e&&(e[t]||e[Pe(t)]||e[On(Pe(t))])}function uf(e,t,n,s){let r;const i=n,o=B(e);if(o||re(e)){const l=o&&pt(e);let c=!1;l&&(c=!Me(e),e=Mn(e)),r=new Array(e.length);for(let u=0,f=e.length;ut(l,c,void 0,i));else{const l=Object.keys(e);r=new Array(l.length);for(let c=0,u=l.length;cqt(t)?!(t.type===me||t.type===xe&&!Fi(t.children)):!0)?e:null}function hf(e,t){const n={};for(const s in e)n[/[A-Z]/.test(s)?`on:${s}`:pn(s)]=e[s];return n}const ys=e=>e?io(e)?Ws(e):ys(e.parent):null,Dt=le(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>ys(e.parent),$root:e=>ys(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Us(e),$forceUpdate:e=>e.f||(e.f=()=>{Vs(e.update)}),$nextTick:e=>e.n||(e.n=Hn.bind(e.proxy)),$watch:e=>gc.bind(e)}),Zn=(e,t)=>e!==te&&!e.__isScriptSetup&&J(e,t),Yl={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:c}=e;let u;if(t[0]!=="$"){const C=o[t];if(C!==void 0)switch(C){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(Zn(s,t))return o[t]=1,s[t];if(r!==te&&J(r,t))return o[t]=2,r[t];if((u=e.propsOptions[0])&&J(u,t))return o[t]=3,i[t];if(n!==te&&J(n,t))return o[t]=4,n[t];vs&&(o[t]=0)}}const f=Dt[t];let h,y;if(f)return t==="$attrs"&&ve(e.attrs,"get",""),f(e);if((h=l.__cssModules)&&(h=h[t]))return h;if(n!==te&&J(n,t))return o[t]=4,n[t];if(y=c.config.globalProperties,J(y,t))return y[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return Zn(r,t)?(r[t]=n,!0):s!==te&&J(s,t)?(s[t]=n,!0):J(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,propsOptions:i}},o){let l;return!!n[o]||e!==te&&J(e,o)||Zn(t,o)||(l=i[0])&&J(l,o)||J(s,o)||J(Dt,o)||J(r.config.globalProperties,o)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:J(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function pf(){return Xl().slots}function Xl(){const e=Bn();return e.setupContext||(e.setupContext=lo(e))}function ar(e){return B(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let vs=!0;function zl(e){const t=Us(e),n=e.proxy,s=e.ctx;vs=!1,t.beforeCreate&&fr(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:o,watch:l,provide:c,inject:u,created:f,beforeMount:h,mounted:y,beforeUpdate:C,updated:L,activated:I,deactivated:G,beforeDestroy:U,beforeUnmount:W,destroyed:g,unmounted:p,render:R,renderTracked:$,renderTriggered:j,errorCaptured:K,serverPrefetch:M,expose:_,inheritAttrs:P,components:w,directives:V,filters:se}=t;if(u&&Jl(u,s,null),o)for(const Y in o){const F=o[Y];q(F)&&(s[Y]=F.bind(n))}if(r){const Y=r.call(n,n);ne(Y)&&(e.data=Ln(Y))}if(vs=!0,i)for(const Y in i){const F=i[Y],ae=q(F)?F.bind(n,n):q(F.get)?F.get.bind(n,n):Ue,Jt=!q(F)&&q(F.set)?F.set.bind(n):Ue,lt=ie({get:ae,set:Jt});Object.defineProperty(s,Y,{enumerable:!0,configurable:!0,get:()=>lt.value,set:$e=>lt.value=$e})}if(l)for(const Y in l)Hi(l[Y],s,n,Y);if(c){const Y=q(c)?c.call(n):c;Reflect.ownKeys(Y).forEach(F=>{sc(F,Y[F])})}f&&fr(f,e,"c");function H(Y,F){B(F)?F.forEach(ae=>Y(ae.bind(n))):F&&Y(F.bind(n))}if(H(Ul,h),H(It,y),H(Bl,C),H(kl,L),H(Dl,I),H(jl,G),H(Gl,K),H(ql,$),H(Kl,j),H(Mi,W),H(jn,p),H(Wl,M),B(_))if(_.length){const Y=e.exposed||(e.exposed={});_.forEach(F=>{Object.defineProperty(Y,F,{get:()=>n[F],set:ae=>n[F]=ae})})}else e.exposed||(e.exposed={});R&&e.render===Ue&&(e.render=R),P!=null&&(e.inheritAttrs=P),w&&(e.components=w),V&&(e.directives=V),M&&Oi(e)}function Jl(e,t,n=Ue){B(e)&&(e=_s(e));for(const s in e){const r=e[s];let i;ne(r)?"default"in r?i=Rt(r.from||s,r.default,!0):i=Rt(r.from||s):i=Rt(r),ce(i)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[s]=i}}function fr(e,t,n){He(B(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function Hi(e,t,n,s){let r=s.includes(".")?Ji(n,s):()=>n[s];if(re(e)){const i=t[e];q(i)&&Fe(r,i)}else if(q(e))Fe(r,e.bind(n));else if(ne(e))if(B(e))e.forEach(i=>Hi(i,t,n,s));else{const i=q(e.handler)?e.handler.bind(n):t[e.handler];q(i)&&Fe(r,i,e)}}function Us(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,l=i.get(t);let c;return l?c=l:!r.length&&!n&&!s?c=t:(c={},r.length&&r.forEach(u=>Cn(c,u,o,!0)),Cn(c,t,o)),ne(t)&&i.set(t,c),c}function Cn(e,t,n,s=!1){const{mixins:r,extends:i}=t;i&&Cn(e,i,n,!0),r&&r.forEach(o=>Cn(e,o,n,!0));for(const o in t)if(!(s&&o==="expose")){const l=Ql[o]||n&&n[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const Ql={data:ur,props:dr,emits:dr,methods:Ft,computed:Ft,beforeCreate:_e,created:_e,beforeMount:_e,mounted:_e,beforeUpdate:_e,updated:_e,beforeDestroy:_e,beforeUnmount:_e,destroyed:_e,unmounted:_e,activated:_e,deactivated:_e,errorCaptured:_e,serverPrefetch:_e,components:Ft,directives:Ft,watch:ec,provide:ur,inject:Zl};function ur(e,t){return t?e?function(){return le(q(e)?e.call(this,this):e,q(t)?t.call(this,this):t)}:t:e}function Zl(e,t){return Ft(_s(e),_s(t))}function _s(e){if(B(e)){const t={};for(let n=0;n1)return n&&q(t)?t.call(s&&s.proxy):t}}const Di={},ji=()=>Object.create(Di),Vi=e=>Object.getPrototypeOf(e)===Di;function rc(e,t,n,s=!1){const r={},i=ji();e.propsDefaults=Object.create(null),Ui(e,t,r,i);for(const o in e.propsOptions[0])o in r||(r[o]=void 0);n?e.props=s?r:hl(r):e.type.props?e.props=r:e.props=i,e.attrs=i}function ic(e,t,n,s){const{props:r,attrs:i,vnode:{patchFlag:o}}=e,l=z(r),[c]=e.propsOptions;let u=!1;if((s||o>0)&&!(o&16)){if(o&8){const f=e.vnode.dynamicProps;for(let h=0;h{c=!0;const[y,C]=Bi(h,t,!0);le(o,y),C&&l.push(...C)};!n&&t.mixins.length&&t.mixins.forEach(f),e.extends&&f(e.extends),e.mixins&&e.mixins.forEach(f)}if(!i&&!c)return ne(e)&&s.set(e,St),St;if(B(i))for(let f=0;fe[0]==="_"||e==="$stable",Bs=e=>B(e)?e.map(Ie):[Ie(e)],lc=(e,t,n)=>{if(t._n)return t;const s=Ol((...r)=>Bs(t(...r)),n);return s._c=!1,s},Wi=(e,t,n)=>{const s=e._ctx;for(const r in e){if(ki(r))continue;const i=e[r];if(q(i))t[r]=lc(r,i,s);else if(i!=null){const o=Bs(i);t[r]=()=>o}}},Ki=(e,t)=>{const n=Bs(t);e.slots.default=()=>n},qi=(e,t,n)=>{for(const s in t)(n||s!=="_")&&(e[s]=t[s])},cc=(e,t,n)=>{const s=e.slots=ji();if(e.vnode.shapeFlag&32){const r=t._;r?(qi(s,t,n),n&&Yr(s,"_",r,!0)):Wi(t,s)}else t&&Ki(e,t)},ac=(e,t,n)=>{const{vnode:s,slots:r}=e;let i=!0,o=te;if(s.shapeFlag&32){const l=t._;l?n&&l===1?i=!1:qi(r,t,n):(i=!t.$stable,Wi(t,r)),o=t}else t&&(Ki(e,t),o={default:1});if(i)for(const l in r)!ki(l)&&o[l]==null&&delete r[l]},Te=eo;function fc(e){return uc(e,Hl)}function uc(e,t){const n=Xr();n.__VUE__=!0;const{insert:s,remove:r,patchProp:i,createElement:o,createText:l,createComment:c,setText:u,setElementText:f,parentNode:h,nextSibling:y,setScopeId:C=Ue,insertStaticContent:L}=e,I=(a,d,m,x=null,v=null,b=null,A=void 0,T=null,E=!!d.dynamicChildren)=>{if(a===d)return;a&&!dt(a,d)&&(x=Qt(a),$e(a,v,b,!0),a=null),d.patchFlag===-2&&(E=!1,d.dynamicChildren=null);const{type:S,ref:D,shapeFlag:O}=d;switch(S){case mt:G(a,d,m,x);break;case me:U(a,d,m,x);break;case jt:a==null&&W(d,m,x,A);break;case xe:w(a,d,m,x,v,b,A,T,E);break;default:O&1?R(a,d,m,x,v,b,A,T,E):O&6?V(a,d,m,x,v,b,A,T,E):(O&64||O&128)&&S.process(a,d,m,x,v,b,A,T,E,_t)}D!=null&&v&&En(D,a&&a.ref,b,d||a,!d)},G=(a,d,m,x)=>{if(a==null)s(d.el=l(d.children),m,x);else{const v=d.el=a.el;d.children!==a.children&&u(v,d.children)}},U=(a,d,m,x)=>{a==null?s(d.el=c(d.children||""),m,x):d.el=a.el},W=(a,d,m,x)=>{[a.el,a.anchor]=L(a.children,d,m,x,a.el,a.anchor)},g=({el:a,anchor:d},m,x)=>{let v;for(;a&&a!==d;)v=y(a),s(a,m,x),a=v;s(d,m,x)},p=({el:a,anchor:d})=>{let m;for(;a&&a!==d;)m=y(a),r(a),a=m;r(d)},R=(a,d,m,x,v,b,A,T,E)=>{d.type==="svg"?A="svg":d.type==="math"&&(A="mathml"),a==null?$(d,m,x,v,b,A,T,E):M(a,d,v,b,A,T,E)},$=(a,d,m,x,v,b,A,T)=>{let E,S;const{props:D,shapeFlag:O,transition:N,dirs:k}=a;if(E=a.el=o(a.type,b,D&&D.is,D),O&8?f(E,a.children):O&16&&K(a.children,E,null,x,v,es(a,b),A,T),k&&Ve(a,null,x,"created"),j(E,a,a.scopeId,A,x),D){for(const Z in D)Z!=="value"&&!Ct(Z)&&i(E,Z,null,D[Z],b,x);"value"in D&&i(E,"value",null,D.value,b),(S=D.onVnodeBeforeMount)&&Oe(S,x,a)}k&&Ve(a,null,x,"beforeMount");const X=Gi(v,N);X&&N.beforeEnter(E),s(E,d,m),((S=D&&D.onVnodeMounted)||X||k)&&Te(()=>{S&&Oe(S,x,a),X&&N.enter(E),k&&Ve(a,null,x,"mounted")},v)},j=(a,d,m,x,v)=>{if(m&&C(a,m),x)for(let b=0;b{for(let S=E;S{const T=d.el=a.el;let{patchFlag:E,dynamicChildren:S,dirs:D}=d;E|=a.patchFlag&16;const O=a.props||te,N=d.props||te;let k;if(m&&ct(m,!1),(k=N.onVnodeBeforeUpdate)&&Oe(k,m,d,a),D&&Ve(d,a,m,"beforeUpdate"),m&&ct(m,!0),(O.innerHTML&&N.innerHTML==null||O.textContent&&N.textContent==null)&&f(T,""),S?_(a.dynamicChildren,S,T,m,x,es(d,v),b):A||F(a,d,T,null,m,x,es(d,v),b,!1),E>0){if(E&16)P(T,O,N,m,v);else if(E&2&&O.class!==N.class&&i(T,"class",null,N.class,v),E&4&&i(T,"style",O.style,N.style,v),E&8){const X=d.dynamicProps;for(let Z=0;Z{k&&Oe(k,m,d,a),D&&Ve(d,a,m,"updated")},x)},_=(a,d,m,x,v,b,A)=>{for(let T=0;T{if(d!==m){if(d!==te)for(const b in d)!Ct(b)&&!(b in m)&&i(a,b,d[b],null,v,x);for(const b in m){if(Ct(b))continue;const A=m[b],T=d[b];A!==T&&b!=="value"&&i(a,b,T,A,v,x)}"value"in m&&i(a,"value",d.value,m.value,v)}},w=(a,d,m,x,v,b,A,T,E)=>{const S=d.el=a?a.el:l(""),D=d.anchor=a?a.anchor:l("");let{patchFlag:O,dynamicChildren:N,slotScopeIds:k}=d;k&&(T=T?T.concat(k):k),a==null?(s(S,m,x),s(D,m,x),K(d.children||[],m,D,v,b,A,T,E)):O>0&&O&64&&N&&a.dynamicChildren?(_(a.dynamicChildren,N,m,v,b,A,T),(d.key!=null||v&&d===v.subTree)&&Yi(a,d,!0)):F(a,d,m,D,v,b,A,T,E)},V=(a,d,m,x,v,b,A,T,E)=>{d.slotScopeIds=T,a==null?d.shapeFlag&512?v.ctx.activate(d,m,x,A,E):se(d,m,x,v,b,A,E):oe(a,d,E)},se=(a,d,m,x,v,b,A)=>{const T=a.component=Rc(a,x,v);if($n(a)&&(T.ctx.renderer=_t),Oc(T,!1,A),T.asyncDep){if(v&&v.registerDep(T,H,A),!a.el){const E=T.subTree=de(me);U(null,E,d,m)}}else H(T,a,d,m,v,b,A)},oe=(a,d,m)=>{const x=d.component=a.component;if(bc(a,d,m))if(x.asyncDep&&!x.asyncResolved){Y(x,d,m);return}else x.next=d,x.update();else d.el=a.el,x.vnode=d},H=(a,d,m,x,v,b,A)=>{const T=()=>{if(a.isMounted){let{next:O,bu:N,u:k,parent:X,vnode:Z}=a;{const Ee=Xi(a);if(Ee){O&&(O.el=Z.el,Y(a,O,A)),Ee.asyncDep.then(()=>{a.isUnmounted||T()});return}}let Q=O,Se;ct(a,!1),O?(O.el=Z.el,Y(a,O,A)):O=Z,N&&Gn(N),(Se=O.props&&O.props.onVnodeBeforeUpdate)&&Oe(Se,X,O,Z),ct(a,!0);const he=ts(a),Le=a.subTree;a.subTree=he,I(Le,he,h(Le.el),Qt(Le),a,v,b),O.el=he.el,Q===null&&wc(a,he.el),k&&Te(k,v),(Se=O.props&&O.props.onVnodeUpdated)&&Te(()=>Oe(Se,X,O,Z),v)}else{let O;const{el:N,props:k}=d,{bm:X,m:Z,parent:Q,root:Se,type:he}=a,Le=gt(d);if(ct(a,!1),X&&Gn(X),!Le&&(O=k&&k.onVnodeBeforeMount)&&Oe(O,Q,d),ct(a,!0),N&&qn){const Ee=()=>{a.subTree=ts(a),qn(N,a.subTree,a,v,null)};Le&&he.__asyncHydrate?he.__asyncHydrate(N,a,Ee):Ee()}else{Se.ce&&Se.ce._injectChildStyle(he);const Ee=a.subTree=ts(a);I(null,Ee,m,x,a,v,b),d.el=Ee.el}if(Z&&Te(Z,v),!Le&&(O=k&&k.onVnodeMounted)){const Ee=d;Te(()=>Oe(O,Q,Ee),v)}(d.shapeFlag&256||Q&>(Q.vnode)&&Q.vnode.shapeFlag&256)&&a.a&&Te(a.a,v),a.isMounted=!0,d=m=x=null}};a.scope.on();const E=a.effect=new ei(T);a.scope.off();const S=a.update=E.run.bind(E),D=a.job=E.runIfDirty.bind(E);D.i=a,D.id=a.uid,E.scheduler=()=>Vs(D),ct(a,!0),S()},Y=(a,d,m)=>{d.component=a;const x=a.vnode.props;a.vnode=d,a.next=null,ic(a,d.props,x,m),ac(a,d.children,m),it(),rr(a),ot()},F=(a,d,m,x,v,b,A,T,E=!1)=>{const S=a&&a.children,D=a?a.shapeFlag:0,O=d.children,{patchFlag:N,shapeFlag:k}=d;if(N>0){if(N&128){Jt(S,O,m,x,v,b,A,T,E);return}else if(N&256){ae(S,O,m,x,v,b,A,T,E);return}}k&8?(D&16&&Mt(S,v,b),O!==S&&f(m,O)):D&16?k&16?Jt(S,O,m,x,v,b,A,T,E):Mt(S,v,b,!0):(D&8&&f(m,""),k&16&&K(O,m,x,v,b,A,T,E))},ae=(a,d,m,x,v,b,A,T,E)=>{a=a||St,d=d||St;const S=a.length,D=d.length,O=Math.min(S,D);let N;for(N=0;ND?Mt(a,v,b,!0,!1,O):K(d,m,x,v,b,A,T,E,O)},Jt=(a,d,m,x,v,b,A,T,E)=>{let S=0;const D=d.length;let O=a.length-1,N=D-1;for(;S<=O&&S<=N;){const k=a[S],X=d[S]=E?Qe(d[S]):Ie(d[S]);if(dt(k,X))I(k,X,m,null,v,b,A,T,E);else break;S++}for(;S<=O&&S<=N;){const k=a[O],X=d[N]=E?Qe(d[N]):Ie(d[N]);if(dt(k,X))I(k,X,m,null,v,b,A,T,E);else break;O--,N--}if(S>O){if(S<=N){const k=N+1,X=kN)for(;S<=O;)$e(a[S],v,b,!0),S++;else{const k=S,X=S,Z=new Map;for(S=X;S<=N;S++){const Ce=d[S]=E?Qe(d[S]):Ie(d[S]);Ce.key!=null&&Z.set(Ce.key,S)}let Q,Se=0;const he=N-X+1;let Le=!1,Ee=0;const Pt=new Array(he);for(S=0;S=he){$e(Ce,v,b,!0);continue}let De;if(Ce.key!=null)De=Z.get(Ce.key);else for(Q=X;Q<=N;Q++)if(Pt[Q-X]===0&&dt(Ce,d[Q])){De=Q;break}De===void 0?$e(Ce,v,b,!0):(Pt[De-X]=S+1,De>=Ee?Ee=De:Le=!0,I(Ce,d[De],m,null,v,b,A,T,E),Se++)}const Xs=Le?dc(Pt):St;for(Q=Xs.length-1,S=he-1;S>=0;S--){const Ce=X+S,De=d[Ce],zs=Ce+1{const{el:b,type:A,transition:T,children:E,shapeFlag:S}=a;if(S&6){lt(a.component.subTree,d,m,x);return}if(S&128){a.suspense.move(d,m,x);return}if(S&64){A.move(a,d,m,_t);return}if(A===xe){s(b,d,m);for(let O=0;OT.enter(b),v);else{const{leave:O,delayLeave:N,afterLeave:k}=T,X=()=>s(b,d,m),Z=()=>{O(b,()=>{X(),k&&k()})};N?N(b,X,Z):Z()}else s(b,d,m)},$e=(a,d,m,x=!1,v=!1)=>{const{type:b,props:A,ref:T,children:E,dynamicChildren:S,shapeFlag:D,patchFlag:O,dirs:N,cacheIndex:k}=a;if(O===-2&&(v=!1),T!=null&&En(T,null,m,a,!0),k!=null&&(d.renderCache[k]=void 0),D&256){d.ctx.deactivate(a);return}const X=D&1&&N,Z=!gt(a);let Q;if(Z&&(Q=A&&A.onVnodeBeforeUnmount)&&Oe(Q,d,a),D&6)Ro(a.component,m,x);else{if(D&128){a.suspense.unmount(m,x);return}X&&Ve(a,null,d,"beforeUnmount"),D&64?a.type.remove(a,d,m,_t,x):S&&!S.hasOnce&&(b!==xe||O>0&&O&64)?Mt(S,d,m,!1,!0):(b===xe&&O&384||!v&&D&16)&&Mt(E,d,m),x&&Gs(a)}(Z&&(Q=A&&A.onVnodeUnmounted)||X)&&Te(()=>{Q&&Oe(Q,d,a),X&&Ve(a,null,d,"unmounted")},m)},Gs=a=>{const{type:d,el:m,anchor:x,transition:v}=a;if(d===xe){Ao(m,x);return}if(d===jt){p(a);return}const b=()=>{r(m),v&&!v.persisted&&v.afterLeave&&v.afterLeave()};if(a.shapeFlag&1&&v&&!v.persisted){const{leave:A,delayLeave:T}=v,E=()=>A(m,b);T?T(a.el,b,E):E()}else b()},Ao=(a,d)=>{let m;for(;a!==d;)m=y(a),r(a),a=m;r(d)},Ro=(a,d,m)=>{const{bum:x,scope:v,job:b,subTree:A,um:T,m:E,a:S}=a;pr(E),pr(S),x&&Gn(x),v.stop(),b&&(b.flags|=8,$e(A,a,d,m)),T&&Te(T,d),Te(()=>{a.isUnmounted=!0},d),d&&d.pendingBranch&&!d.isUnmounted&&a.asyncDep&&!a.asyncResolved&&a.suspenseId===d.pendingId&&(d.deps--,d.deps===0&&d.resolve())},Mt=(a,d,m,x=!1,v=!1,b=0)=>{for(let A=b;A{if(a.shapeFlag&6)return Qt(a.component.subTree);if(a.shapeFlag&128)return a.suspense.next();const d=y(a.anchor||a.el),m=d&&d[Il];return m?y(m):d};let Wn=!1;const Ys=(a,d,m)=>{a==null?d._vnode&&$e(d._vnode,null,null,!0):I(d._vnode||null,a,d,null,null,null,m),d._vnode=a,Wn||(Wn=!0,rr(),xn(),Wn=!1)},_t={p:I,um:$e,m:lt,r:Gs,mt:se,mc:K,pc:F,pbc:_,n:Qt,o:e};let Kn,qn;return t&&([Kn,qn]=t(_t)),{render:Ys,hydrate:Kn,createApp:nc(Ys,Kn)}}function es({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function ct({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Gi(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Yi(e,t,n=!1){const s=e.children,r=t.children;if(B(s)&&B(r))for(let i=0;i>1,e[n[l]]0&&(t[s]=n[i-1]),n[i]=s)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=t[o];return n}function Xi(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Xi(t)}function pr(e){if(e)for(let t=0;tRt(hc);function zi(e,t){return Vn(e,null,t)}function gf(e,t){return Vn(e,null,{flush:"post"})}function Fe(e,t,n){return Vn(e,t,n)}function Vn(e,t,n=te){const{immediate:s,deep:r,flush:i,once:o}=n,l=le({},n);let c;if(kn)if(i==="sync"){const y=pc();c=y.__watcherHandles||(y.__watcherHandles=[])}else if(!t||s)l.once=!0;else{const y=()=>{};return y.stop=Ue,y.resume=Ue,y.pause=Ue,y}const u=fe;l.call=(y,C,L)=>He(y,u,C,L);let f=!1;i==="post"?l.scheduler=y=>{Te(y,u&&u.suspense)}:i!=="sync"&&(f=!0,l.scheduler=(y,C)=>{C?y():Vs(y)}),l.augmentJob=y=>{t&&(y.flags|=4),f&&(y.flags|=2,u&&(y.id=u.uid,y.i=u))};const h=Cl(e,t,l);return c&&c.push(h),h}function gc(e,t,n){const s=this.proxy,r=re(e)?e.includes(".")?Ji(s,e):()=>s[e]:e.bind(s,s);let i;q(t)?i=t:(i=t.handler,n=t);const o=zt(this),l=Vn(r,i.bind(s),n);return o(),l}function Ji(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;rt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Pe(t)}Modifiers`]||e[`${rt(t)}Modifiers`];function yc(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||te;let r=n;const i=t.startsWith("update:"),o=i&&mc(s,t.slice(7));o&&(o.trim&&(r=n.map(f=>re(f)?f.trim():f)),o.number&&(r=n.map(No)));let l,c=s[l=pn(t)]||s[l=pn(Pe(t))];!c&&i&&(c=s[l=pn(rt(t))]),c&&He(c,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,He(u,e,6,r)}}function Qi(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 c=u=>{const f=Qi(u,t,!0);f&&(l=!0,le(o,f))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!l?(ne(e)&&s.set(e,null),null):(B(i)?i.forEach(c=>o[c]=null):le(o,i),ne(e)&&s.set(e,o),o)}function Un(e,t){return!e||!Yt(t)?!1:(t=t.slice(2).replace(/Once$/,""),J(e,t[0].toLowerCase()+t.slice(1))||J(e,rt(t))||J(e,t))}function ts(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:c,render:u,renderCache:f,props:h,data:y,setupState:C,ctx:L,inheritAttrs:I}=e,G=Sn(e);let U,W;try{if(n.shapeFlag&4){const p=r||s,R=p;U=Ie(u.call(R,p,f,h,C,y,L)),W=l}else{const p=t;U=Ie(p.length>1?p(h,{attrs:l,slots:o,emit:c}):p(h,null)),W=t.props?l:vc(l)}}catch(p){Vt.length=0,Fn(p,e,1),U=de(me)}let g=U;if(W&&I!==!1){const p=Object.keys(W),{shapeFlag:R}=g;p.length&&R&7&&(i&&p.some(As)&&(W=_c(W,i)),g=nt(g,W,!1,!0))}return n.dirs&&(g=nt(g,null,!1,!0),g.dirs=g.dirs?g.dirs.concat(n.dirs):n.dirs),n.transition&&Wt(g,n.transition),U=g,Sn(G),U}const vc=e=>{let t;for(const n in e)(n==="class"||n==="style"||Yt(n))&&((t||(t={}))[n]=e[n]);return t},_c=(e,t)=>{const n={};for(const s in e)(!As(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function bc(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:c}=t,u=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?gr(s,o,u):!!o;if(c&8){const f=t.dynamicProps;for(let h=0;he.__isSuspense;function eo(e,t){t&&t.pendingBranch?B(e)?t.effects.push(...e):t.effects.push(e):Rl(e)}const xe=Symbol.for("v-fgt"),mt=Symbol.for("v-txt"),me=Symbol.for("v-cmt"),jt=Symbol.for("v-stc"),Vt=[];let Ae=null;function ws(e=!1){Vt.push(Ae=e?null:[])}function xc(){Vt.pop(),Ae=Vt[Vt.length-1]||null}let Kt=1;function mr(e){Kt+=e,e<0&&Ae&&(Ae.hasOnce=!0)}function to(e){return e.dynamicChildren=Kt>0?Ae||St:null,xc(),Kt>0&&Ae&&Ae.push(e),e}function mf(e,t,n,s,r,i){return to(so(e,t,n,s,r,i,!0))}function xs(e,t,n,s,r){return to(de(e,t,n,s,r,!0))}function qt(e){return e?e.__v_isVNode===!0:!1}function dt(e,t){return e.type===t.type&&e.key===t.key}const no=({key:e})=>e??null,mn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?re(e)||ce(e)||q(e)?{i:ye,r:e,k:t,f:!!n}:e:null);function so(e,t=null,n=null,s=0,r=null,i=e===xe?0:1,o=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&no(t),ref:t&&mn(t),scopeId:wi,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:ye};return l?(ks(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=re(n)?8:16),Kt>0&&!o&&Ae&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&Ae.push(c),c}const de=Sc;function Sc(e,t=null,n=null,s=0,r=null,i=!1){if((!e||e===Li)&&(e=me),qt(e)){const l=nt(e,t,!0);return n&&ks(l,n),Kt>0&&!i&&Ae&&(l.shapeFlag&6?Ae[Ae.indexOf(e)]=l:Ae.push(l)),l.patchFlag=-2,l}if(Lc(e)&&(e=e.__vccOpts),t){t=Ec(t);let{class:l,style:c}=t;l&&!re(l)&&(t.class=Ms(l)),ne(c)&&(Ds(c)&&!B(c)&&(c=le({},c)),t.style=Is(c))}const o=re(e)?1:Zi(e)?128:xi(e)?64:ne(e)?4:q(e)?2:0;return so(e,t,n,s,r,o,i,!0)}function Ec(e){return e?Ds(e)||Vi(e)?le({},e):e:null}function nt(e,t,n=!1,s=!1){const{props:r,ref:i,patchFlag:o,children:l,transition:c}=e,u=t?Cc(r||{},t):r,f={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&no(u),ref:t&&t.ref?n&&i?B(i)?i.concat(mn(t)):[i,mn(t)]:mn(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==xe?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&nt(e.ssContent),ssFallback:e.ssFallback&&nt(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&s&&Wt(f,c.clone(f)),f}function ro(e=" ",t=0){return de(mt,null,e,t)}function yf(e,t){const n=de(jt,null,e);return n.staticCount=t,n}function vf(e="",t=!1){return t?(ws(),xs(me,null,e)):de(me,null,e)}function Ie(e){return e==null||typeof e=="boolean"?de(me):B(e)?de(xe,null,e.slice()):qt(e)?Qe(e):de(mt,null,String(e))}function Qe(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:nt(e)}function ks(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(B(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),ks(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!Vi(t)?t._ctx=ye:r===3&&ye&&(ye.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else q(t)?(t={default:t,_ctx:ye},n=32):(t=String(t),s&64?(n=16,t=[ro(t)]):n=8);e.children=t,e.shapeFlag|=n}function Cc(...e){const t={};for(let n=0;nfe||ye;let Tn,Ss;{const e=Xr(),t=(n,s)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),i=>{r.length>1?r.forEach(o=>o(i)):r[0](i)}};Tn=t("__VUE_INSTANCE_SETTERS__",n=>fe=n),Ss=t("__VUE_SSR_SETTERS__",n=>kn=n)}const zt=e=>{const t=fe;return Tn(e),e.scope.on(),()=>{e.scope.off(),Tn(t)}},yr=()=>{fe&&fe.scope.off(),Tn(null)};function io(e){return e.vnode.shapeFlag&4}let kn=!1;function Oc(e,t=!1,n=!1){t&&Ss(t);const{props:s,children:r}=e.vnode,i=io(e);rc(e,s,i,t),cc(e,r,n);const o=i?Ic(e,t):void 0;return t&&Ss(!1),o}function Ic(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Yl);const{setup:s}=n;if(s){const r=e.setupContext=s.length>1?lo(e):null,i=zt(e);it();const o=Xt(s,e,0,[e.props,r]);if(ot(),i(),Kr(o)){if(gt(e)||Oi(e),o.then(yr,yr),t)return o.then(l=>{vr(e,l,t)}).catch(l=>{Fn(l,e,0)});e.asyncDep=o}else vr(e,o,t)}else oo(e,t)}function vr(e,t,n){q(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ne(t)&&(e.setupState=yi(t)),oo(e,n)}let _r;function oo(e,t,n){const s=e.type;if(!e.render){if(!t&&_r&&!s.render){const r=s.template||Us(e).template;if(r){const{isCustomElement:i,compilerOptions:o}=e.appContext.config,{delimiters:l,compilerOptions:c}=s,u=le(le({isCustomElement:i,delimiters:l},o),c);s.render=_r(r,u)}}e.render=s.render||Ue}{const r=zt(e);it();try{zl(e)}finally{ot(),r()}}}const Mc={get(e,t){return ve(e,"get",""),e[t]}};function lo(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Mc),slots:e.slots,emit:e.emit,expose:t}}function Ws(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(yi(gn(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Dt)return Dt[n](e)},has(t,n){return n in t||n in Dt}})):e.proxy}function Pc(e,t=!0){return q(e)?e.displayName||e.name:e.name||t&&e.__name}function Lc(e){return q(e)&&"__vccOpts"in e}const ie=(e,t)=>Sl(e,t,kn);function Es(e,t,n){const s=arguments.length;return s===2?ne(t)&&!B(t)?qt(t)?de(e,null,[t]):de(e,t):de(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&qt(n)&&(n=[n]),de(e,t,n))}const Nc="3.5.11";/** -* @vue/runtime-dom v3.5.11 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let Cs;const br=typeof window<"u"&&window.trustedTypes;if(br)try{Cs=br.createPolicy("vue",{createHTML:e=>e})}catch{}const co=Cs?e=>Cs.createHTML(e):e=>e,Fc="http://www.w3.org/2000/svg",Hc="http://www.w3.org/1998/Math/MathML",ke=typeof document<"u"?document:null,wr=ke&&ke.createElement("template"),$c={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?ke.createElementNS(Fc,e):t==="mathml"?ke.createElementNS(Hc,e):n?ke.createElement(e,{is:n}):ke.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>ke.createTextNode(e),createComment:e=>ke.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>ke.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,i){const o=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===i||!(r=r.nextSibling)););else{wr.innerHTML=co(s==="svg"?`${e}`:s==="mathml"?`${e}`:e);const l=wr.content;if(s==="svg"||s==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Ye="transition",Nt="animation",Gt=Symbol("_vtc"),ao={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Dc=le({},Si,ao),jc=e=>(e.displayName="Transition",e.props=Dc,e),_f=jc((e,{slots:t})=>Es(Ll,Vc(e),t)),at=(e,t=[])=>{B(e)?e.forEach(n=>n(...t)):e&&e(...t)},xr=e=>e?B(e)?e.some(t=>t.length>1):e.length>1:!1;function Vc(e){const t={};for(const w in e)w in ao||(t[w]=e[w]);if(e.css===!1)return t;const{name:n="v",type:s,duration:r,enterFromClass:i=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:c=i,appearActiveClass:u=o,appearToClass:f=l,leaveFromClass:h=`${n}-leave-from`,leaveActiveClass:y=`${n}-leave-active`,leaveToClass:C=`${n}-leave-to`}=e,L=Uc(r),I=L&&L[0],G=L&&L[1],{onBeforeEnter:U,onEnter:W,onEnterCancelled:g,onLeave:p,onLeaveCancelled:R,onBeforeAppear:$=U,onAppear:j=W,onAppearCancelled:K=g}=t,M=(w,V,se)=>{ft(w,V?f:l),ft(w,V?u:o),se&&se()},_=(w,V)=>{w._isLeaving=!1,ft(w,h),ft(w,C),ft(w,y),V&&V()},P=w=>(V,se)=>{const oe=w?j:W,H=()=>M(V,w,se);at(oe,[V,H]),Sr(()=>{ft(V,w?c:i),Xe(V,w?f:l),xr(oe)||Er(V,s,I,H)})};return le(t,{onBeforeEnter(w){at(U,[w]),Xe(w,i),Xe(w,o)},onBeforeAppear(w){at($,[w]),Xe(w,c),Xe(w,u)},onEnter:P(!1),onAppear:P(!0),onLeave(w,V){w._isLeaving=!0;const se=()=>_(w,V);Xe(w,h),Xe(w,y),Wc(),Sr(()=>{w._isLeaving&&(ft(w,h),Xe(w,C),xr(p)||Er(w,s,G,se))}),at(p,[w,se])},onEnterCancelled(w){M(w,!1),at(g,[w])},onAppearCancelled(w){M(w,!0),at(K,[w])},onLeaveCancelled(w){_(w),at(R,[w])}})}function Uc(e){if(e==null)return null;if(ne(e))return[ns(e.enter),ns(e.leave)];{const t=ns(e);return[t,t]}}function ns(e){return Fo(e)}function Xe(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[Gt]||(e[Gt]=new Set)).add(t)}function ft(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const n=e[Gt];n&&(n.delete(t),n.size||(e[Gt]=void 0))}function Sr(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Bc=0;function Er(e,t,n,s){const r=e._endId=++Bc,i=()=>{r===e._endId&&s()};if(n!=null)return setTimeout(i,n);const{type:o,timeout:l,propCount:c}=kc(e,t);if(!o)return s();const u=o+"end";let f=0;const h=()=>{e.removeEventListener(u,y),i()},y=C=>{C.target===e&&++f>=c&&h()};setTimeout(()=>{f(n[L]||"").split(", "),r=s(`${Ye}Delay`),i=s(`${Ye}Duration`),o=Cr(r,i),l=s(`${Nt}Delay`),c=s(`${Nt}Duration`),u=Cr(l,c);let f=null,h=0,y=0;t===Ye?o>0&&(f=Ye,h=o,y=i.length):t===Nt?u>0&&(f=Nt,h=u,y=c.length):(h=Math.max(o,u),f=h>0?o>u?Ye:Nt:null,y=f?f===Ye?i.length:c.length:0);const C=f===Ye&&/\b(transform|all)(,|$)/.test(s(`${Ye}Property`).toString());return{type:f,timeout:h,propCount:y,hasTransform:C}}function Cr(e,t){for(;e.lengthTr(n)+Tr(e[s])))}function Tr(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function Wc(){return document.body.offsetHeight}function Kc(e,t,n){const s=e[Gt];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Ar=Symbol("_vod"),qc=Symbol("_vsh"),Gc=Symbol(""),Yc=/(^|;)\s*display\s*:/;function Xc(e,t,n){const s=e.style,r=re(n);let i=!1;if(n&&!r){if(t)if(re(t))for(const o of t.split(";")){const l=o.slice(0,o.indexOf(":")).trim();n[l]==null&&yn(s,l,"")}else for(const o in t)n[o]==null&&yn(s,o,"");for(const o in n)o==="display"&&(i=!0),yn(s,o,n[o])}else if(r){if(t!==n){const o=s[Gc];o&&(n+=";"+o),s.cssText=n,i=Yc.test(n)}}else t&&e.removeAttribute("style");Ar in e&&(e[Ar]=i?s.display:"",e[qc]&&(s.display="none"))}const Rr=/\s*!important$/;function yn(e,t,n){if(B(n))n.forEach(s=>yn(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=zc(e,t);Rr.test(n)?e.setProperty(rt(s),n.replace(Rr,""),"important"):e[s]=n}}const Or=["Webkit","Moz","ms"],ss={};function zc(e,t){const n=ss[t];if(n)return n;let s=Pe(t);if(s!=="filter"&&s in e)return ss[t]=s;s=On(s);for(let r=0;rrs||(ta.then(()=>rs=0),rs=Date.now());function sa(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;He(ra(s,n.value),t,5,[s])};return n.value=e,n.attached=na(),n}function ra(e,t){if(B(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>r=>!r._stopped&&s&&s(r))}else return t}const Fr=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,ia=(e,t,n,s,r,i)=>{const o=r==="svg";t==="class"?Kc(e,s,o):t==="style"?Xc(e,n,s):Yt(t)?As(t)||Zc(e,t,n,s,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):oa(e,t,s,o))?(Pr(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Mr(e,t,s,o,i,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!re(s))?Pr(e,Pe(t),s):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Mr(e,t,s,o))};function oa(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&Fr(t)&&q(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return Fr(t)&&re(n)?!1:t in e}const la=["ctrl","shift","alt","meta"],ca={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>la.some(n=>e[`${n}Key`]&&!t.includes(n))},bf=(e,t)=>{const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=(r,...i)=>{for(let o=0;o{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=r=>{if(!("key"in r))return;const i=rt(r.key);if(t.some(o=>o===i||aa[o]===i))return e(r)})},fa=le({patchProp:ia},$c);let is,Hr=!1;function ua(){return is=Hr?is:fc(fa),Hr=!0,is}const xf=(...e)=>{const t=ua().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=ha(s);if(r)return n(r,!0,da(r))},t};function da(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function ha(e){return re(e)?document.querySelector(e):e}const Sf=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},pa=window.__VP_SITE_DATA__;function Ks(e){return Zr()?(Wo(e),!0):!1}function et(e){return typeof e=="function"?e():mi(e)}const fo=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const ga=Object.prototype.toString,ma=e=>ga.call(e)==="[object Object]",uo=()=>{},$r=ya();function ya(){var e,t;return fo&&((e=window==null?void 0:window.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window==null?void 0:window.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function va(e,t){function n(...s){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,s),{fn:t,thisArg:this,args:s})).then(r).catch(i)})}return n}const ho=e=>e();function _a(e=ho){const t=ue(!0);function n(){t.value=!1}function s(){t.value=!0}const r=(...i)=>{t.value&&e(...i)};return{isActive:Nn(t),pause:n,resume:s,eventFilter:r}}function ba(e){return Bn()}function po(...e){if(e.length!==1)return bl(...e);const t=e[0];return typeof t=="function"?Nn(yl(()=>({get:t,set:uo}))):ue(t)}function wa(e,t,n={}){const{eventFilter:s=ho,...r}=n;return Fe(e,va(s,t),r)}function xa(e,t,n={}){const{eventFilter:s,...r}=n,{eventFilter:i,pause:o,resume:l,isActive:c}=_a(s);return{stop:wa(e,t,{...r,eventFilter:i}),pause:o,resume:l,isActive:c}}function qs(e,t=!0,n){ba()?It(e,n):t?e():Hn(e)}const Ke=fo?window:void 0;function go(e){var t;const n=et(e);return(t=n==null?void 0:n.$el)!=null?t:n}function Ot(...e){let t,n,s,r;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,s,r]=e,t=Ke):[t,n,s,r]=e,!t)return uo;Array.isArray(n)||(n=[n]),Array.isArray(s)||(s=[s]);const i=[],o=()=>{i.forEach(f=>f()),i.length=0},l=(f,h,y,C)=>(f.addEventListener(h,y,C),()=>f.removeEventListener(h,y,C)),c=Fe(()=>[go(t),et(r)],([f,h])=>{if(o(),!f)return;const y=ma(h)?{...h}:h;i.push(...n.flatMap(C=>s.map(L=>l(f,C,L,y))))},{immediate:!0,flush:"post"}),u=()=>{c(),o()};return Ks(u),u}function Sa(e){return typeof e=="function"?e:typeof e=="string"?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function Ef(...e){let t,n,s={};e.length===3?(t=e[0],n=e[1],s=e[2]):e.length===2?typeof e[1]=="object"?(t=!0,n=e[0],s=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);const{target:r=Ke,eventName:i="keydown",passive:o=!1,dedupe:l=!1}=s,c=Sa(t);return Ot(r,i,f=>{f.repeat&&et(l)||c(f)&&n(f)},o)}function Ea(){const e=ue(!1),t=Bn();return t&&It(()=>{e.value=!0},t),e}function Ca(e){const t=Ea();return ie(()=>(t.value,!!e()))}function mo(e,t={}){const{window:n=Ke}=t,s=Ca(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let r;const i=ue(!1),o=u=>{i.value=u.matches},l=()=>{r&&("removeEventListener"in r?r.removeEventListener("change",o):r.removeListener(o))},c=zi(()=>{s.value&&(l(),r=n.matchMedia(et(e)),"addEventListener"in r?r.addEventListener("change",o):r.addListener(o),i.value=r.matches)});return Ks(()=>{c(),l(),r=void 0}),i}const fn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},un="__vueuse_ssr_handlers__",Ta=Aa();function Aa(){return un in fn||(fn[un]=fn[un]||{}),fn[un]}function yo(e,t){return Ta[e]||t}function vo(e){return mo("(prefers-color-scheme: dark)",e)}function Ra(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const Oa={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},Dr="vueuse-storage";function Ia(e,t,n,s={}){var r;const{flush:i="pre",deep:o=!0,listenToStorageChanges:l=!0,writeDefaults:c=!0,mergeDefaults:u=!1,shallow:f,window:h=Ke,eventFilter:y,onError:C=_=>{console.error(_)},initOnMounted:L}=s,I=(f?pi:ue)(typeof t=="function"?t():t);if(!n)try{n=yo("getDefaultStorage",()=>{var _;return(_=Ke)==null?void 0:_.localStorage})()}catch(_){C(_)}if(!n)return I;const G=et(t),U=Ra(G),W=(r=s.serializer)!=null?r:Oa[U],{pause:g,resume:p}=xa(I,()=>$(I.value),{flush:i,deep:o,eventFilter:y});h&&l&&qs(()=>{n instanceof Storage?Ot(h,"storage",K):Ot(h,Dr,M),L&&K()}),L||K();function R(_,P){if(h){const w={key:e,oldValue:_,newValue:P,storageArea:n};h.dispatchEvent(n instanceof Storage?new StorageEvent("storage",w):new CustomEvent(Dr,{detail:w}))}}function $(_){try{const P=n.getItem(e);if(_==null)R(P,null),n.removeItem(e);else{const w=W.write(_);P!==w&&(n.setItem(e,w),R(P,w))}}catch(P){C(P)}}function j(_){const P=_?_.newValue:n.getItem(e);if(P==null)return c&&G!=null&&n.setItem(e,W.write(G)),G;if(!_&&u){const w=W.read(P);return typeof u=="function"?u(w,G):U==="object"&&!Array.isArray(w)?{...G,...w}:w}else return typeof P!="string"?P:W.read(P)}function K(_){if(!(_&&_.storageArea!==n)){if(_&&_.key==null){I.value=G;return}if(!(_&&_.key!==e)){g();try{(_==null?void 0:_.newValue)!==W.write(I.value)&&(I.value=j(_))}catch(P){C(P)}finally{_?Hn(p):p()}}}}function M(_){K(_.detail)}return I}const Ma="*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";function Pa(e={}){const{selector:t="html",attribute:n="class",initialValue:s="auto",window:r=Ke,storage:i,storageKey:o="vueuse-color-scheme",listenToStorageChanges:l=!0,storageRef:c,emitAuto:u,disableTransition:f=!0}=e,h={auto:"",light:"light",dark:"dark",...e.modes||{}},y=vo({window:r}),C=ie(()=>y.value?"dark":"light"),L=c||(o==null?po(s):Ia(o,s,i,{window:r,listenToStorageChanges:l})),I=ie(()=>L.value==="auto"?C.value:L.value),G=yo("updateHTMLAttrs",(p,R,$)=>{const j=typeof p=="string"?r==null?void 0:r.document.querySelector(p):go(p);if(!j)return;const K=new Set,M=new Set;let _=null;if(R==="class"){const w=$.split(/\s/g);Object.values(h).flatMap(V=>(V||"").split(/\s/g)).filter(Boolean).forEach(V=>{w.includes(V)?K.add(V):M.add(V)})}else _={key:R,value:$};if(K.size===0&&M.size===0&&_===null)return;let P;f&&(P=r.document.createElement("style"),P.appendChild(document.createTextNode(Ma)),r.document.head.appendChild(P));for(const w of K)j.classList.add(w);for(const w of M)j.classList.remove(w);_&&j.setAttribute(_.key,_.value),f&&(r.getComputedStyle(P).opacity,document.head.removeChild(P))});function U(p){var R;G(t,n,(R=h[p])!=null?R:p)}function W(p){e.onChanged?e.onChanged(p,U):U(p)}Fe(I,W,{flush:"post",immediate:!0}),qs(()=>W(I.value));const g=ie({get(){return u?L.value:I.value},set(p){L.value=p}});try{return Object.assign(g,{store:L,system:C,state:I})}catch{return g}}function La(e={}){const{valueDark:t="dark",valueLight:n="",window:s=Ke}=e,r=Pa({...e,onChanged:(l,c)=>{var u;e.onChanged?(u=e.onChanged)==null||u.call(e,l==="dark",c,l):c(l)},modes:{dark:t,light:n}}),i=ie(()=>r.system?r.system.value:vo({window:s}).value?"dark":"light");return ie({get(){return r.value==="dark"},set(l){const c=l?"dark":"light";i.value===c?r.value="auto":r.value=c}})}function os(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}function _o(e){const t=window.getComputedStyle(e);if(t.overflowX==="scroll"||t.overflowY==="scroll"||t.overflowX==="auto"&&e.clientWidth1?!0:(t.preventDefault&&t.preventDefault(),!1)}const ls=new WeakMap;function Cf(e,t=!1){const n=ue(t);let s=null,r="";Fe(po(e),l=>{const c=os(et(l));if(c){const u=c;if(ls.get(u)||ls.set(u,u.style.overflow),u.style.overflow!=="hidden"&&(r=u.style.overflow),u.style.overflow==="hidden")return n.value=!0;if(n.value)return u.style.overflow="hidden"}},{immediate:!0});const i=()=>{const l=os(et(e));!l||n.value||($r&&(s=Ot(l,"touchmove",c=>{Na(c)},{passive:!1})),l.style.overflow="hidden",n.value=!0)},o=()=>{const l=os(et(e));!l||!n.value||($r&&(s==null||s()),l.style.overflow=r,ls.delete(l),n.value=!1)};return Ks(o),ie({get(){return n.value},set(l){l?i():o()}})}function Tf(e={}){const{window:t=Ke,behavior:n="auto"}=e;if(!t)return{x:ue(0),y:ue(0)};const s=ue(t.scrollX),r=ue(t.scrollY),i=ie({get(){return s.value},set(l){scrollTo({left:l,behavior:n})}}),o=ie({get(){return r.value},set(l){scrollTo({top:l,behavior:n})}});return Ot(t,"scroll",()=>{s.value=t.scrollX,r.value=t.scrollY},{capture:!1,passive:!0}),{x:i,y:o}}function Af(e={}){const{window:t=Ke,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:s=Number.POSITIVE_INFINITY,listenOrientation:r=!0,includeScrollbar:i=!0,type:o="inner"}=e,l=ue(n),c=ue(s),u=()=>{t&&(o==="outer"?(l.value=t.outerWidth,c.value=t.outerHeight):i?(l.value=t.innerWidth,c.value=t.innerHeight):(l.value=t.document.documentElement.clientWidth,c.value=t.document.documentElement.clientHeight))};if(u(),qs(u),Ot("resize",u,{passive:!0}),r){const f=mo("(orientation: portrait)");Fe(f,()=>u())}return{width:l,height:c}}const cs={BASE_URL:"/docs/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};var as={};const bo=/^(?:[a-z]+:|\/\/)/i,Fa="vitepress-theme-appearance",Ha=/#.*$/,$a=/[?#].*$/,Da=/(?:(^|\/)index)?\.(?:md|html)$/,pe=typeof document<"u",wo={relativePath:"404.md",filePath:"",title:"404",description:"Not Found",headers:[],frontmatter:{sidebar:!1,layout:"page"},lastUpdated:0,isNotFound:!0};function ja(e,t,n=!1){if(t===void 0)return!1;if(e=jr(`/${e}`),n)return new RegExp(t).test(e);if(jr(t)!==e)return!1;const s=t.match(Ha);return s?(pe?location.hash:"")===s[0]:!0}function jr(e){return decodeURI(e).replace($a,"").replace(Da,"$1")}function Va(e){return bo.test(e)}function Ua(e,t){return Object.keys((e==null?void 0:e.locales)||{}).find(n=>n!=="root"&&!Va(n)&&ja(t,`/${n}/`,!0))||"root"}function Ba(e,t){var s,r,i,o,l,c,u;const n=Ua(e,t);return Object.assign({},e,{localeIndex:n,lang:((s=e.locales[n])==null?void 0:s.lang)??e.lang,dir:((r=e.locales[n])==null?void 0:r.dir)??e.dir,title:((i=e.locales[n])==null?void 0:i.title)??e.title,titleTemplate:((o=e.locales[n])==null?void 0:o.titleTemplate)??e.titleTemplate,description:((l=e.locales[n])==null?void 0:l.description)??e.description,head:So(e.head,((c=e.locales[n])==null?void 0:c.head)??[]),themeConfig:{...e.themeConfig,...(u=e.locales[n])==null?void 0:u.themeConfig}})}function xo(e,t){const n=t.title||e.title,s=t.titleTemplate??e.titleTemplate;if(typeof s=="string"&&s.includes(":title"))return s.replace(/:title/g,n);const r=ka(e.title,s);return n===r.slice(3)?n:`${n}${r}`}function ka(e,t){return t===!1?"":t===!0||t===void 0?` | ${e}`:e===t?"":` | ${t}`}function Wa(e,t){const[n,s]=t;if(n!=="meta")return!1;const r=Object.entries(s)[0];return r==null?!1:e.some(([i,o])=>i===n&&o[r[0]]===r[1])}function So(e,t){return[...e.filter(n=>!Wa(t,n)),...t]}const Ka=/[\u0000-\u001F"#$&*+,:;<=>?[\]^`{|}\u007F]/g,qa=/^[a-z]:/i;function Vr(e){const t=qa.exec(e),n=t?t[0]:"";return n+e.slice(n.length).replace(Ka,"_").replace(/(^|\/)_+(?=[^/]*$)/,"$1")}const fs=new Set;function Ga(e){if(fs.size===0){const n=typeof process=="object"&&(as==null?void 0:as.VITE_EXTRA_EXTENSIONS)||(cs==null?void 0:cs.VITE_EXTRA_EXTENSIONS)||"";("3g2,3gp,aac,ai,apng,au,avif,bin,bmp,cer,class,conf,crl,css,csv,dll,doc,eps,epub,exe,gif,gz,ics,ief,jar,jpe,jpeg,jpg,js,json,jsonld,m4a,man,mid,midi,mjs,mov,mp2,mp3,mp4,mpe,mpeg,mpg,mpp,oga,ogg,ogv,ogx,opus,otf,p10,p7c,p7m,p7s,pdf,png,ps,qt,roff,rtf,rtx,ser,svg,t,tif,tiff,tr,ts,tsv,ttf,txt,vtt,wav,weba,webm,webp,woff,woff2,xhtml,xml,yaml,yml,zip"+(n&&typeof n=="string"?","+n:"")).split(",").forEach(s=>fs.add(s))}const t=e.split(".").pop();return t==null||!fs.has(t.toLowerCase())}const Ya=Symbol(),yt=pi(pa);function Rf(e){const t=ie(()=>Ba(yt.value,e.data.relativePath)),n=t.value.appearance,s=n==="force-dark"?ue(!0):n?La({storageKey:Fa,initialValue:()=>n==="dark"?"dark":"auto",...typeof n=="object"?n:{}}):ue(!1),r=ue(pe?location.hash:"");return pe&&window.addEventListener("hashchange",()=>{r.value=location.hash}),Fe(()=>e.data,()=>{r.value=pe?location.hash:""}),{site:t,theme:ie(()=>t.value.themeConfig),page:ie(()=>e.data),frontmatter:ie(()=>e.data.frontmatter),params:ie(()=>e.data.params),lang:ie(()=>t.value.lang),dir:ie(()=>e.data.frontmatter.dir||t.value.dir),localeIndex:ie(()=>t.value.localeIndex||"root"),title:ie(()=>xo(t.value,e.data)),description:ie(()=>e.data.description||t.value.description),isDark:s,hash:ie(()=>r.value)}}function Xa(){const e=Rt(Ya);if(!e)throw new Error("vitepress data not properly injected in app");return e}function za(e,t){return`${e}${t}`.replace(/\/+/g,"/")}function Ur(e){return bo.test(e)||!e.startsWith("/")?e:za(yt.value.base,e)}function Ja(e){let t=e.replace(/\.html$/,"");if(t=decodeURIComponent(t),t=t.replace(/\/$/,"/index"),pe){const n="/docs/";t=Vr(t.slice(n.length).replace(/\//g,"_")||"index")+".md";let s=__VP_HASH_MAP__[t.toLowerCase()];if(s||(t=t.endsWith("_index.md")?t.slice(0,-9)+".md":t.slice(0,-3)+"_index.md",s=__VP_HASH_MAP__[t.toLowerCase()]),!s)return null;t=`${n}assets/${t}.${s}.js`}else t=`./${Vr(t.slice(1).replace(/\//g,"_"))}.md.js`;return t}let vn=[];function Of(e){vn.push(e),jn(()=>{vn=vn.filter(t=>t!==e)})}function Qa(){let e=yt.value.scrollOffset,t=0,n=24;if(typeof e=="object"&&"padding"in e&&(n=e.padding,e=e.selector),typeof e=="number")t=e;else if(typeof e=="string")t=Br(e,n);else if(Array.isArray(e))for(const s of e){const r=Br(s,n);if(r){t=r;break}}return t}function Br(e,t){const n=document.querySelector(e);if(!n)return 0;const s=n.getBoundingClientRect().bottom;return s<0?0:s+t}const Za=Symbol(),Eo="http://a.com",ef=()=>({path:"/",component:null,data:wo});function If(e,t){const n=Ln(ef()),s={route:n,go:r};async function r(l=pe?location.href:"/"){var c,u;l=us(l),await((c=s.onBeforeRouteChange)==null?void 0:c.call(s,l))!==!1&&(pe&&l!==us(location.href)&&(history.replaceState({scrollPosition:window.scrollY},""),history.pushState({},"",l)),await o(l),await((u=s.onAfterRouteChanged)==null?void 0:u.call(s,l)))}let i=null;async function o(l,c=0,u=!1){var y,C;if(await((y=s.onBeforePageLoad)==null?void 0:y.call(s,l))===!1)return;const f=new URL(l,Eo),h=i=f.pathname;try{let L=await e(h);if(!L)throw new Error(`Page not found: ${h}`);if(i===h){i=null;const{default:I,__pageData:G}=L;if(!I)throw new Error(`Invalid route component: ${I}`);await((C=s.onAfterPageLoad)==null?void 0:C.call(s,l)),n.path=pe?h:Ur(h),n.component=gn(I),n.data=gn(G),pe&&Hn(()=>{let U=yt.value.base+G.relativePath.replace(/(?:(^|\/)index)?\.md$/,"$1");if(!yt.value.cleanUrls&&!U.endsWith("/")&&(U+=".html"),U!==f.pathname&&(f.pathname=U,l=U+f.search+f.hash,history.replaceState({},"",l)),f.hash&&!c){let W=null;try{W=document.getElementById(decodeURIComponent(f.hash).slice(1))}catch(g){console.warn(g)}if(W){kr(W,f.hash);return}}window.scrollTo(0,c)})}}catch(L){if(!/fetch|Page not found/.test(L.message)&&!/^\/404(\.html|\/)?$/.test(l)&&console.error(L),!u)try{const I=await fetch(yt.value.base+"hashmap.json");window.__VP_HASH_MAP__=await I.json(),await o(l,c,!0);return}catch{}if(i===h){i=null,n.path=pe?h:Ur(h),n.component=t?gn(t):null;const I=pe?h.replace(/(^|\/)$/,"$1index").replace(/(\.html)?$/,".md").replace(/^\//,""):"404.md";n.data={...wo,relativePath:I}}}}return pe&&(history.state===null&&history.replaceState({},""),window.addEventListener("click",l=>{if(l.defaultPrevented||!(l.target instanceof Element)||l.target.closest("button")||l.button!==0||l.ctrlKey||l.shiftKey||l.altKey||l.metaKey)return;const c=l.target.closest("a");if(!c||c.closest(".vp-raw")||c.hasAttribute("download")||c.hasAttribute("target"))return;const u=c.getAttribute("href")??(c instanceof SVGAElement?c.getAttribute("xlink:href"):null);if(u==null)return;const{href:f,origin:h,pathname:y,hash:C,search:L}=new URL(u,c.baseURI),I=new URL(location.href);h===I.origin&&Ga(y)&&(l.preventDefault(),y===I.pathname&&L===I.search?(C!==I.hash&&(history.pushState({},"",f),window.dispatchEvent(new HashChangeEvent("hashchange",{oldURL:I.href,newURL:f}))),C?kr(c,C,c.classList.contains("header-anchor")):window.scrollTo(0,0)):r(f))},{capture:!0}),window.addEventListener("popstate",async l=>{var c;l.state!==null&&(await o(us(location.href),l.state&&l.state.scrollPosition||0),(c=s.onAfterRouteChanged)==null||c.call(s,location.href))}),window.addEventListener("hashchange",l=>{l.preventDefault()})),s}function tf(){const e=Rt(Za);if(!e)throw new Error("useRouter() is called without provider.");return e}function Co(){return tf().route}function kr(e,t,n=!1){let s=null;try{s=e.classList.contains("header-anchor")?e:document.getElementById(decodeURIComponent(t).slice(1))}catch(r){console.warn(r)}if(s){let r=function(){!n||Math.abs(o-window.scrollY)>window.innerHeight?window.scrollTo(0,o):window.scrollTo({left:0,top:o,behavior:"smooth"})};const i=parseInt(window.getComputedStyle(s).paddingTop,10),o=window.scrollY+s.getBoundingClientRect().top-Qa()+i;requestAnimationFrame(r)}}function us(e){const t=new URL(e,Eo);return t.pathname=t.pathname.replace(/(^|\/)index(\.html)?$/,"$1"),yt.value.cleanUrls?t.pathname=t.pathname.replace(/\.html$/,""):!t.pathname.endsWith("/")&&!t.pathname.endsWith(".html")&&(t.pathname+=".html"),t.pathname+t.search+t.hash}const dn=()=>vn.forEach(e=>e()),Mf=Ri({name:"VitePressContent",props:{as:{type:[Object,String],default:"div"}},setup(e){const t=Co(),{frontmatter:n,site:s}=Xa();return Fe(n,dn,{deep:!0,flush:"post"}),()=>Es(e.as,s.value.contentProps??{style:{position:"relative"}},[t.component?Es(t.component,{onVnodeMounted:dn,onVnodeUpdated:dn,onVnodeUnmounted:dn}):"404 Page Not Found"])}}),Pf=Ri({setup(e,{slots:t}){const n=ue(!1);return It(()=>{n.value=!0}),()=>n.value&&t.default?t.default():null}});function Lf(){pe&&window.addEventListener("click",e=>{var n;const t=e.target;if(t.matches(".vp-code-group input")){const s=(n=t.parentElement)==null?void 0:n.parentElement;if(!s)return;const r=Array.from(s.querySelectorAll("input")).indexOf(t);if(r<0)return;const i=s.querySelector(".blocks");if(!i)return;const o=Array.from(i.children).find(u=>u.classList.contains("active"));if(!o)return;const l=i.children[r];if(!l||o===l)return;o.classList.remove("active"),l.classList.add("active");const c=s==null?void 0:s.querySelector(`label[for="${t.id}"]`);c==null||c.scrollIntoView({block:"nearest"})}})}function Nf(){if(pe){const e=new WeakMap;window.addEventListener("click",t=>{var s;const n=t.target;if(n.matches('div[class*="language-"] > button.copy')){const r=n.parentElement,i=(s=n.nextElementSibling)==null?void 0:s.nextElementSibling;if(!r||!i)return;const o=/language-(shellscript|shell|bash|sh|zsh)/.test(r.className),l=[".vp-copy-ignore",".diff.remove"],c=i.cloneNode(!0);c.querySelectorAll(l.join(",")).forEach(f=>f.remove());let u=c.textContent||"";o&&(u=u.replace(/^ *(\$|>) /gm,"").trim()),nf(u).then(()=>{n.classList.add("copied"),clearTimeout(e.get(n));const f=setTimeout(()=>{n.classList.remove("copied"),n.blur(),e.delete(n)},2e3);e.set(n,f)})}})}}async function nf(e){try{return navigator.clipboard.writeText(e)}catch{const t=document.createElement("textarea"),n=document.activeElement;t.value=e,t.setAttribute("readonly",""),t.style.contain="strict",t.style.position="absolute",t.style.left="-9999px",t.style.fontSize="12pt";const s=document.getSelection(),r=s?s.rangeCount>0&&s.getRangeAt(0):null;document.body.appendChild(t),t.select(),t.selectionStart=0,t.selectionEnd=e.length,document.execCommand("copy"),document.body.removeChild(t),r&&(s.removeAllRanges(),s.addRange(r)),n&&n.focus()}}function Ff(e,t){let n=!0,s=[];const r=i=>{if(n){n=!1,i.forEach(l=>{const c=ds(l);for(const u of document.head.children)if(u.isEqualNode(c)){s.push(u);return}});return}const o=i.map(ds);s.forEach((l,c)=>{const u=o.findIndex(f=>f==null?void 0:f.isEqualNode(l??null));u!==-1?delete o[u]:(l==null||l.remove(),delete s[c])}),o.forEach(l=>l&&document.head.appendChild(l)),s=[...s,...o].filter(Boolean)};zi(()=>{const i=e.data,o=t.value,l=i&&i.description,c=i&&i.frontmatter.head||[],u=xo(o,i);u!==document.title&&(document.title=u);const f=l||o.description;let h=document.querySelector("meta[name=description]");h?h.getAttribute("content")!==f&&h.setAttribute("content",f):ds(["meta",{name:"description",content:f}]),r(So(o.head,rf(c)))})}function ds([e,t,n]){const s=document.createElement(e);for(const r in t)s.setAttribute(r,t[r]);return n&&(s.innerHTML=n),e==="script"&&!t.async&&(s.async=!1),s}function sf(e){return e[0]==="meta"&&e[1]&&e[1].name==="description"}function rf(e){return e.filter(t=>!sf(t))}const hs=new Set,To=()=>document.createElement("link"),of=e=>{const t=To();t.rel="prefetch",t.href=e,document.head.appendChild(t)},lf=e=>{const t=new XMLHttpRequest;t.open("GET",e,t.withCredentials=!0),t.send()};let hn;const cf=pe&&(hn=To())&&hn.relList&&hn.relList.supports&&hn.relList.supports("prefetch")?of:lf;function Hf(){if(!pe||!window.IntersectionObserver)return;let e;if((e=navigator.connection)&&(e.saveData||/2g/.test(e.effectiveType)))return;const t=window.requestIdleCallback||setTimeout;let n=null;const s=()=>{n&&n.disconnect(),n=new IntersectionObserver(i=>{i.forEach(o=>{if(o.isIntersecting){const l=o.target;n.unobserve(l);const{pathname:c}=l;if(!hs.has(c)){hs.add(c);const u=Ja(c);u&&cf(u)}}})}),t(()=>{document.querySelectorAll("#app a").forEach(i=>{const{hostname:o,pathname:l}=new URL(i.href instanceof SVGAnimatedString?i.href.animVal:i.href,i.baseURI),c=l.match(/\.\w+$/);c&&c[0]!==".html"||i.target!=="_blank"&&o===location.hostname&&(l!==location.pathname?n.observe(i):hs.add(l))})})};It(s);const r=Co();Fe(()=>r.path,s),jn(()=>{n&&n.disconnect()})}export{pf as $,Qa as A,af as B,uf as C,pi as D,Of as E,xe as F,de as G,ff as H,bo as I,Co as J,Cc as K,Rt as L,Af as M,Is as N,Ef as O,Hn as P,Tf as Q,pe as R,Nn as S,_f as T,Cf as U,sc as V,hf as W,wf as X,Mi as Y,bf as Z,Sf as _,ro as a,Es as a0,yf as a1,Ff as a2,Za as a3,Rf as a4,Ya as a5,Mf as a6,Pf as a7,yt as a8,xf as a9,If as aa,Ja as ab,Hf as ac,Nf as ad,Lf as ae,xs as b,mf as c,Ri as d,vf as e,Ga as f,Ur as g,ie as h,Va as i,so as j,mi as k,ja as l,mo as m,Ms as n,ws as o,ue as p,Fe as q,df as r,zi as s,Bo as t,Xa as u,It as v,Ol as w,jn as x,gf as y,kl as z}; diff --git a/docs/assets/chunks/theme.BUR9ctRq.js b/docs/assets/chunks/theme.BUR9ctRq.js new file mode 100644 index 00000000..3831f11f --- /dev/null +++ b/docs/assets/chunks/theme.BUR9ctRq.js @@ -0,0 +1,2 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/chunks/VPLocalSearchBox.Cjcn55aX.js","assets/chunks/framework.BAnOA2-A.js"])))=>i.map(i=>d[i]); +import{d as h,o as a,c as l,r as c,n as N,a as F,t as S,b,w as v,e as m,T as de,_ as k,u as Pe,i as Ee,f as Fe,g as ve,h as $,j as d,k as r,l as K,m as re,p as M,q as O,s as X,v as q,x as pe,y as fe,z as De,A as Oe,B as j,F as w,C,D as Ve,E as Q,G as _,H as D,I as Le,J as Z,K as z,L as x,M as Ge,N as Se,O as ie,P as Ue,Q as Te,R as ee,S as ze,U as je,V as Ke,W as Ne,X as Ie,Y as qe,Z as Re,$ as We,a0 as Je,a1 as Ye,a2 as ge}from"./framework.BAnOA2-A.js";const Xe=h({__name:"VPBadge",props:{text:{},type:{default:"tip"}},setup(o){return(e,t)=>(a(),l("span",{class:N(["VPBadge",e.type])},[c(e.$slots,"default",{},()=>[F(S(e.text),1)])],2))}}),Qe={key:0,class:"VPBackdrop"},Ze=h({__name:"VPBackdrop",props:{show:{type:Boolean}},setup(o){return(e,t)=>(a(),b(de,{name:"fade"},{default:v(()=>[e.show?(a(),l("div",Qe)):m("",!0)]),_:1}))}}),xe=k(Ze,[["__scopeId","data-v-b06cdb19"]]),V=Pe;function et(o,e){let t,s=!1;return()=>{t&&clearTimeout(t),s?t=setTimeout(o,e):(o(),(s=!0)&&setTimeout(()=>s=!1,e))}}function le(o){return/^\//.test(o)?o:`/${o}`}function me(o){const{pathname:e,search:t,hash:s,protocol:n}=new URL(o,"http://a.com");if(Ee(o)||o.startsWith("#")||!n.startsWith("http")||!Fe(e))return o;const{site:i}=V(),u=e.endsWith("/")||e.endsWith(".html")?o:o.replace(/(?:(^\.+)\/)?.*$/,`$1${e.replace(/(\.md)?$/,i.value.cleanUrls?"":".html")}${t}${s}`);return ve(u)}function W({correspondingLink:o=!1}={}){const{site:e,localeIndex:t,page:s,theme:n,hash:i}=V(),u=$(()=>{var p,y;return{label:(p=e.value.locales[t.value])==null?void 0:p.label,link:((y=e.value.locales[t.value])==null?void 0:y.link)||(t.value==="root"?"/":`/${t.value}/`)}});return{localeLinks:$(()=>Object.entries(e.value.locales).flatMap(([p,y])=>u.value.label===y.label?[]:{text:y.label,link:tt(y.link||(p==="root"?"/":`/${p}/`),n.value.i18nRouting!==!1&&o,s.value.relativePath.slice(u.value.link.length-1),!e.value.cleanUrls)+i.value})),currentLang:u}}function tt(o,e,t,s){return e?o.replace(/\/$/,"")+le(t.replace(/(^|\/)index\.md$/,"$1").replace(/\.md$/,s?".html":"")):o}const nt={class:"NotFound"},st={class:"code"},ot={class:"title"},at={class:"quote"},rt={class:"action"},it=["href","aria-label"],lt=h({__name:"NotFound",setup(o){const{theme:e}=V(),{currentLang:t}=W();return(s,n)=>{var i,u,f,p,y;return a(),l("div",nt,[d("p",st,S(((i=r(e).notFound)==null?void 0:i.code)??"404"),1),d("h1",ot,S(((u=r(e).notFound)==null?void 0:u.title)??"PAGE NOT FOUND"),1),n[0]||(n[0]=d("div",{class:"divider"},null,-1)),d("blockquote",at,S(((f=r(e).notFound)==null?void 0:f.quote)??"But if you don't change your direction, and if you keep looking, you may end up where you are heading."),1),d("div",rt,[d("a",{class:"link",href:r(ve)(r(t).link),"aria-label":((p=r(e).notFound)==null?void 0:p.linkLabel)??"go to home"},S(((y=r(e).notFound)==null?void 0:y.linkText)??"Take me home"),9,it)])])}}}),ct=k(lt,[["__scopeId","data-v-951cab6c"]]);function Me(o,e){if(Array.isArray(o))return J(o);if(o==null)return[];e=le(e);const t=Object.keys(o).sort((n,i)=>i.split("/").length-n.split("/").length).find(n=>e.startsWith(le(n))),s=t?o[t]:[];return Array.isArray(s)?J(s):J(s.items,s.base)}function ut(o){const e=[];let t=0;for(const s in o){const n=o[s];if(n.items){t=e.push(n);continue}e[t]||e.push({items:[]}),e[t].items.push(n)}return e}function dt(o){const e=[];function t(s){for(const n of s)n.text&&n.link&&e.push({text:n.text,link:n.link,docFooterText:n.docFooterText}),n.items&&t(n.items)}return t(o),e}function ce(o,e){return Array.isArray(e)?e.some(t=>ce(o,t)):K(o,e.link)?!0:e.items?ce(o,e.items):!1}function J(o,e){return[...o].map(t=>{const s={...t},n=s.base||e;return n&&s.link&&(s.link=n+s.link),s.items&&(s.items=J(s.items,n)),s})}function G(){const{frontmatter:o,page:e,theme:t}=V(),s=re("(min-width: 960px)"),n=M(!1),i=$(()=>{const B=t.value.sidebar,T=e.value.relativePath;return B?Me(B,T):[]}),u=M(i.value);O(i,(B,T)=>{JSON.stringify(B)!==JSON.stringify(T)&&(u.value=i.value)});const f=$(()=>o.value.sidebar!==!1&&u.value.length>0&&o.value.layout!=="home"),p=$(()=>y?o.value.aside==null?t.value.aside==="left":o.value.aside==="left":!1),y=$(()=>o.value.layout==="home"?!1:o.value.aside!=null?!!o.value.aside:t.value.aside!==!1),L=$(()=>f.value&&s.value),g=$(()=>f.value?ut(u.value):[]);function P(){n.value=!0}function I(){n.value=!1}function A(){n.value?I():P()}return{isOpen:n,sidebar:u,sidebarGroups:g,hasSidebar:f,hasAside:y,leftAside:p,isSidebarEnabled:L,open:P,close:I,toggle:A}}function vt(o,e){let t;X(()=>{t=o.value?document.activeElement:void 0}),q(()=>{window.addEventListener("keyup",s)}),pe(()=>{window.removeEventListener("keyup",s)});function s(n){n.key==="Escape"&&o.value&&(e(),t==null||t.focus())}}function pt(o){const{page:e,hash:t}=V(),s=M(!1),n=$(()=>o.value.collapsed!=null),i=$(()=>!!o.value.link),u=M(!1),f=()=>{u.value=K(e.value.relativePath,o.value.link)};O([e,o,t],f),q(f);const p=$(()=>u.value?!0:o.value.items?ce(e.value.relativePath,o.value.items):!1),y=$(()=>!!(o.value.items&&o.value.items.length));X(()=>{s.value=!!(n.value&&o.value.collapsed)}),fe(()=>{(u.value||p.value)&&(s.value=!1)});function L(){n.value&&(s.value=!s.value)}return{collapsed:s,collapsible:n,isLink:i,isActiveLink:u,hasActiveLink:p,hasChildren:y,toggle:L}}function ft(){const{hasSidebar:o}=G(),e=re("(min-width: 960px)"),t=re("(min-width: 1280px)");return{isAsideEnabled:$(()=>!t.value&&!e.value?!1:o.value?t.value:e.value)}}const ue=[];function we(o){return typeof o.outline=="object"&&!Array.isArray(o.outline)&&o.outline.label||o.outlineTitle||"On this page"}function he(o){const e=[...document.querySelectorAll(".VPDoc :where(h1,h2,h3,h4,h5,h6)")].filter(t=>t.id&&t.hasChildNodes()).map(t=>{const s=Number(t.tagName[1]);return{element:t,title:mt(t),link:"#"+t.id,level:s}});return ht(e,o)}function mt(o){let e="";for(const t of o.childNodes)if(t.nodeType===1){if(t.classList.contains("VPBadge")||t.classList.contains("header-anchor")||t.classList.contains("ignore-header"))continue;e+=t.textContent}else t.nodeType===3&&(e+=t.textContent);return e.trim()}function ht(o,e){if(e===!1)return[];const t=(typeof e=="object"&&!Array.isArray(e)?e.level:e)||2,[s,n]=typeof t=="number"?[t,t]:t==="deep"?[2,6]:t;return bt(o,s,n)}function _t(o,e){const{isAsideEnabled:t}=ft(),s=et(i,100);let n=null;q(()=>{requestAnimationFrame(i),window.addEventListener("scroll",s)}),De(()=>{u(location.hash)}),pe(()=>{window.removeEventListener("scroll",s)});function i(){if(!t.value)return;const f=window.scrollY,p=window.innerHeight,y=document.body.offsetHeight,L=Math.abs(f+p-y)<1,g=ue.map(({element:I,link:A})=>({link:A,top:kt(I)})).filter(({top:I})=>!Number.isNaN(I)).sort((I,A)=>I.top-A.top);if(!g.length){u(null);return}if(f<1){u(null);return}if(L){u(g[g.length-1].link);return}let P=null;for(const{link:I,top:A}of g){if(A>f+Oe()+4)break;P=I}u(P)}function u(f){n&&n.classList.remove("active"),f==null?n=null:n=o.value.querySelector(`a[href="${decodeURIComponent(f)}"]`);const p=n;p?(p.classList.add("active"),e.value.style.top=p.offsetTop+39+"px",e.value.style.opacity="1"):(e.value.style.top="33px",e.value.style.opacity="0")}}function kt(o){let e=0;for(;o!==document.body;){if(o===null)return NaN;e+=o.offsetTop,o=o.offsetParent}return e}function bt(o,e,t){ue.length=0;const s=[],n=[];return o.forEach(i=>{const u={...i,children:[]};let f=n[n.length-1];for(;f&&f.level>=u.level;)n.pop(),f=n[n.length-1];if(u.element.classList.contains("ignore-header")||f&&"shouldIgnore"in f){n.push({level:u.level,shouldIgnore:!0});return}u.level>t||u.level{const n=j("VPDocOutlineItem",!0);return a(),l("ul",{class:N(["VPDocOutlineItem",t.root?"root":"nested"])},[(a(!0),l(w,null,C(t.headers,({children:i,link:u,title:f})=>(a(),l("li",null,[d("a",{class:"outline-link",href:u,onClick:e,title:f},S(f),9,gt),i!=null&&i.length?(a(),b(n,{key:0,headers:i},null,8,["headers"])):m("",!0)]))),256))],2)}}}),Ae=k($t,[["__scopeId","data-v-3f927ebe"]]),yt={class:"content"},Pt={"aria-level":"2",class:"outline-title",id:"doc-outline-aria-label",role:"heading"},Vt=h({__name:"VPDocAsideOutline",setup(o){const{frontmatter:e,theme:t}=V(),s=Ve([]);Q(()=>{s.value=he(e.value.outline??t.value.outline)});const n=M(),i=M();return _t(n,i),(u,f)=>(a(),l("nav",{"aria-labelledby":"doc-outline-aria-label",class:N(["VPDocAsideOutline",{"has-outline":s.value.length>0}]),ref_key:"container",ref:n},[d("div",yt,[d("div",{class:"outline-marker",ref_key:"marker",ref:i},null,512),d("div",Pt,S(r(we)(r(t))),1),_(Ae,{headers:s.value,root:!0},null,8,["headers"])])],2))}}),Lt=k(Vt,[["__scopeId","data-v-b38bf2ff"]]),St={class:"VPDocAsideCarbonAds"},Tt=h({__name:"VPDocAsideCarbonAds",props:{carbonAds:{}},setup(o){const e=()=>null;return(t,s)=>(a(),l("div",St,[_(r(e),{"carbon-ads":t.carbonAds},null,8,["carbon-ads"])]))}}),Nt={class:"VPDocAside"},It=h({__name:"VPDocAside",setup(o){const{theme:e}=V();return(t,s)=>(a(),l("div",Nt,[c(t.$slots,"aside-top",{},void 0,!0),c(t.$slots,"aside-outline-before",{},void 0,!0),_(Lt),c(t.$slots,"aside-outline-after",{},void 0,!0),s[0]||(s[0]=d("div",{class:"spacer"},null,-1)),c(t.$slots,"aside-ads-before",{},void 0,!0),r(e).carbonAds?(a(),b(Tt,{key:0,"carbon-ads":r(e).carbonAds},null,8,["carbon-ads"])):m("",!0),c(t.$slots,"aside-ads-after",{},void 0,!0),c(t.$slots,"aside-bottom",{},void 0,!0)]))}}),Mt=k(It,[["__scopeId","data-v-6d7b3c46"]]);function wt(){const{theme:o,page:e}=V();return $(()=>{const{text:t="Edit this page",pattern:s=""}=o.value.editLink||{};let n;return typeof s=="function"?n=s(e.value):n=s.replace(/:path/g,e.value.filePath),{url:n,text:t}})}function At(){const{page:o,theme:e,frontmatter:t}=V();return $(()=>{var y,L,g,P,I,A,B,T;const s=Me(e.value.sidebar,o.value.relativePath),n=dt(s),i=Bt(n,H=>H.link.replace(/[?#].*$/,"")),u=i.findIndex(H=>K(o.value.relativePath,H.link)),f=((y=e.value.docFooter)==null?void 0:y.prev)===!1&&!t.value.prev||t.value.prev===!1,p=((L=e.value.docFooter)==null?void 0:L.next)===!1&&!t.value.next||t.value.next===!1;return{prev:f?void 0:{text:(typeof t.value.prev=="string"?t.value.prev:typeof t.value.prev=="object"?t.value.prev.text:void 0)??((g=i[u-1])==null?void 0:g.docFooterText)??((P=i[u-1])==null?void 0:P.text),link:(typeof t.value.prev=="object"?t.value.prev.link:void 0)??((I=i[u-1])==null?void 0:I.link)},next:p?void 0:{text:(typeof t.value.next=="string"?t.value.next:typeof t.value.next=="object"?t.value.next.text:void 0)??((A=i[u+1])==null?void 0:A.docFooterText)??((B=i[u+1])==null?void 0:B.text),link:(typeof t.value.next=="object"?t.value.next.link:void 0)??((T=i[u+1])==null?void 0:T.link)}}})}function Bt(o,e){const t=new Set;return o.filter(s=>{const n=e(s);return t.has(n)?!1:t.add(n)})}const E=h({__name:"VPLink",props:{tag:{},href:{},noIcon:{type:Boolean},target:{},rel:{}},setup(o){const e=o,t=$(()=>e.tag??(e.href?"a":"span")),s=$(()=>e.href&&Le.test(e.href)||e.target==="_blank");return(n,i)=>(a(),b(D(t.value),{class:N(["VPLink",{link:n.href,"vp-external-link-icon":s.value,"no-icon":n.noIcon}]),href:n.href?r(me)(n.href):void 0,target:n.target??(s.value?"_blank":void 0),rel:n.rel??(s.value?"noreferrer":void 0)},{default:v(()=>[c(n.$slots,"default")]),_:3},8,["class","href","target","rel"]))}}),Ct={class:"VPLastUpdated"},Ht=["datetime"],Et=h({__name:"VPDocFooterLastUpdated",setup(o){const{theme:e,page:t,lang:s}=V(),n=$(()=>new Date(t.value.lastUpdated)),i=$(()=>n.value.toISOString()),u=M("");return q(()=>{X(()=>{var f,p,y;u.value=new Intl.DateTimeFormat((p=(f=e.value.lastUpdated)==null?void 0:f.formatOptions)!=null&&p.forceLocale?s.value:void 0,((y=e.value.lastUpdated)==null?void 0:y.formatOptions)??{dateStyle:"short",timeStyle:"short"}).format(n.value)})}),(f,p)=>{var y;return a(),l("p",Ct,[F(S(((y=r(e).lastUpdated)==null?void 0:y.text)||r(e).lastUpdatedText||"Last updated")+": ",1),d("time",{datetime:i.value},S(u.value),9,Ht)])}}}),Ft=k(Et,[["__scopeId","data-v-475f71b8"]]),Dt={key:0,class:"VPDocFooter"},Ot={key:0,class:"edit-info"},Gt={key:0,class:"edit-link"},Ut={key:1,class:"last-updated"},zt={key:1,class:"prev-next","aria-labelledby":"doc-footer-aria-label"},jt={class:"pager"},Kt=["innerHTML"],qt=["innerHTML"],Rt={class:"pager"},Wt=["innerHTML"],Jt=["innerHTML"],Yt=h({__name:"VPDocFooter",setup(o){const{theme:e,page:t,frontmatter:s}=V(),n=wt(),i=At(),u=$(()=>e.value.editLink&&s.value.editLink!==!1),f=$(()=>t.value.lastUpdated),p=$(()=>u.value||f.value||i.value.prev||i.value.next);return(y,L)=>{var g,P,I,A;return p.value?(a(),l("footer",Dt,[c(y.$slots,"doc-footer-before",{},void 0,!0),u.value||f.value?(a(),l("div",Ot,[u.value?(a(),l("div",Gt,[_(E,{class:"edit-link-button",href:r(n).url,"no-icon":!0},{default:v(()=>[L[0]||(L[0]=d("span",{class:"vpi-square-pen edit-link-icon"},null,-1)),F(" "+S(r(n).text),1)]),_:1},8,["href"])])):m("",!0),f.value?(a(),l("div",Ut,[_(Ft)])):m("",!0)])):m("",!0),(g=r(i).prev)!=null&&g.link||(P=r(i).next)!=null&&P.link?(a(),l("nav",zt,[L[1]||(L[1]=d("span",{class:"visually-hidden",id:"doc-footer-aria-label"},"Pager",-1)),d("div",jt,[(I=r(i).prev)!=null&&I.link?(a(),b(E,{key:0,class:"pager-link prev",href:r(i).prev.link},{default:v(()=>{var B;return[d("span",{class:"desc",innerHTML:((B=r(e).docFooter)==null?void 0:B.prev)||"Previous page"},null,8,Kt),d("span",{class:"title",innerHTML:r(i).prev.text},null,8,qt)]}),_:1},8,["href"])):m("",!0)]),d("div",Rt,[(A=r(i).next)!=null&&A.link?(a(),b(E,{key:0,class:"pager-link next",href:r(i).next.link},{default:v(()=>{var B;return[d("span",{class:"desc",innerHTML:((B=r(e).docFooter)==null?void 0:B.next)||"Next page"},null,8,Wt),d("span",{class:"title",innerHTML:r(i).next.text},null,8,Jt)]}),_:1},8,["href"])):m("",!0)])])):m("",!0)])):m("",!0)}}}),Xt=k(Yt,[["__scopeId","data-v-4f9813fa"]]),Qt={class:"container"},Zt={class:"aside-container"},xt={class:"aside-content"},en={class:"content"},tn={class:"content-container"},nn={class:"main"},sn=h({__name:"VPDoc",setup(o){const{theme:e}=V(),t=Z(),{hasSidebar:s,hasAside:n,leftAside:i}=G(),u=$(()=>t.path.replace(/[./]+/g,"_").replace(/_html$/,""));return(f,p)=>{const y=j("Content");return a(),l("div",{class:N(["VPDoc",{"has-sidebar":r(s),"has-aside":r(n)}])},[c(f.$slots,"doc-top",{},void 0,!0),d("div",Qt,[r(n)?(a(),l("div",{key:0,class:N(["aside",{"left-aside":r(i)}])},[p[0]||(p[0]=d("div",{class:"aside-curtain"},null,-1)),d("div",Zt,[d("div",xt,[_(Mt,null,{"aside-top":v(()=>[c(f.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":v(()=>[c(f.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":v(()=>[c(f.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":v(()=>[c(f.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":v(()=>[c(f.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":v(()=>[c(f.$slots,"aside-ads-after",{},void 0,!0)]),_:3})])])],2)):m("",!0),d("div",en,[d("div",tn,[c(f.$slots,"doc-before",{},void 0,!0),d("main",nn,[_(y,{class:N(["vp-doc",[u.value,r(e).externalLinkIcon&&"external-link-icon-enabled"]])},null,8,["class"])]),_(Xt,null,{"doc-footer-before":v(()=>[c(f.$slots,"doc-footer-before",{},void 0,!0)]),_:3}),c(f.$slots,"doc-after",{},void 0,!0)])])]),c(f.$slots,"doc-bottom",{},void 0,!0)],2)}}}),on=k(sn,[["__scopeId","data-v-83890dd9"]]),an=h({__name:"VPButton",props:{tag:{},size:{default:"medium"},theme:{default:"brand"},text:{},href:{},target:{},rel:{}},setup(o){const e=o,t=$(()=>e.href&&Le.test(e.href)),s=$(()=>e.tag||(e.href?"a":"button"));return(n,i)=>(a(),b(D(s.value),{class:N(["VPButton",[n.size,n.theme]]),href:n.href?r(me)(n.href):void 0,target:e.target??(t.value?"_blank":void 0),rel:e.rel??(t.value?"noreferrer":void 0)},{default:v(()=>[F(S(n.text),1)]),_:1},8,["class","href","target","rel"]))}}),rn=k(an,[["__scopeId","data-v-906d7fb4"]]),ln=["src","alt"],cn=h({inheritAttrs:!1,__name:"VPImage",props:{image:{},alt:{}},setup(o){return(e,t)=>{const s=j("VPImage",!0);return e.image?(a(),l(w,{key:0},[typeof e.image=="string"||"src"in e.image?(a(),l("img",z({key:0,class:"VPImage"},typeof e.image=="string"?e.$attrs:{...e.image,...e.$attrs},{src:r(ve)(typeof e.image=="string"?e.image:e.image.src),alt:e.alt??(typeof e.image=="string"?"":e.image.alt||"")}),null,16,ln)):(a(),l(w,{key:1},[_(s,z({class:"dark",image:e.image.dark,alt:e.image.alt},e.$attrs),null,16,["image","alt"]),_(s,z({class:"light",image:e.image.light,alt:e.image.alt},e.$attrs),null,16,["image","alt"])],64))],64)):m("",!0)}}}),Y=k(cn,[["__scopeId","data-v-35a7d0b8"]]),un={class:"container"},dn={class:"main"},vn={key:0,class:"name"},pn=["innerHTML"],fn=["innerHTML"],mn=["innerHTML"],hn={key:0,class:"actions"},_n={key:0,class:"image"},kn={class:"image-container"},bn=h({__name:"VPHero",props:{name:{},text:{},tagline:{},image:{},actions:{}},setup(o){const e=x("hero-image-slot-exists");return(t,s)=>(a(),l("div",{class:N(["VPHero",{"has-image":t.image||r(e)}])},[d("div",un,[d("div",dn,[c(t.$slots,"home-hero-info-before",{},void 0,!0),c(t.$slots,"home-hero-info",{},()=>[t.name?(a(),l("h1",vn,[d("span",{innerHTML:t.name,class:"clip"},null,8,pn)])):m("",!0),t.text?(a(),l("p",{key:1,innerHTML:t.text,class:"text"},null,8,fn)):m("",!0),t.tagline?(a(),l("p",{key:2,innerHTML:t.tagline,class:"tagline"},null,8,mn)):m("",!0)],!0),c(t.$slots,"home-hero-info-after",{},void 0,!0),t.actions?(a(),l("div",hn,[(a(!0),l(w,null,C(t.actions,n=>(a(),l("div",{key:n.link,class:"action"},[_(rn,{tag:"a",size:"medium",theme:n.theme,text:n.text,href:n.link,target:n.target,rel:n.rel},null,8,["theme","text","href","target","rel"])]))),128))])):m("",!0),c(t.$slots,"home-hero-actions-after",{},void 0,!0)]),t.image||r(e)?(a(),l("div",_n,[d("div",kn,[s[0]||(s[0]=d("div",{class:"image-bg"},null,-1)),c(t.$slots,"home-hero-image",{},()=>[t.image?(a(),b(Y,{key:0,class:"image-src",image:t.image},null,8,["image"])):m("",!0)],!0)])])):m("",!0)])],2))}}),gn=k(bn,[["__scopeId","data-v-955009fc"]]),$n=h({__name:"VPHomeHero",setup(o){const{frontmatter:e}=V();return(t,s)=>r(e).hero?(a(),b(gn,{key:0,class:"VPHomeHero",name:r(e).hero.name,text:r(e).hero.text,tagline:r(e).hero.tagline,image:r(e).hero.image,actions:r(e).hero.actions},{"home-hero-info-before":v(()=>[c(t.$slots,"home-hero-info-before")]),"home-hero-info":v(()=>[c(t.$slots,"home-hero-info")]),"home-hero-info-after":v(()=>[c(t.$slots,"home-hero-info-after")]),"home-hero-actions-after":v(()=>[c(t.$slots,"home-hero-actions-after")]),"home-hero-image":v(()=>[c(t.$slots,"home-hero-image")]),_:3},8,["name","text","tagline","image","actions"])):m("",!0)}}),yn={class:"box"},Pn={key:0,class:"icon"},Vn=["innerHTML"],Ln=["innerHTML"],Sn=["innerHTML"],Tn={key:4,class:"link-text"},Nn={class:"link-text-value"},In=h({__name:"VPFeature",props:{icon:{},title:{},details:{},link:{},linkText:{},rel:{},target:{}},setup(o){return(e,t)=>(a(),b(E,{class:"VPFeature",href:e.link,rel:e.rel,target:e.target,"no-icon":!0,tag:e.link?"a":"div"},{default:v(()=>[d("article",yn,[typeof e.icon=="object"&&e.icon.wrap?(a(),l("div",Pn,[_(Y,{image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])])):typeof e.icon=="object"?(a(),b(Y,{key:1,image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])):e.icon?(a(),l("div",{key:2,class:"icon",innerHTML:e.icon},null,8,Vn)):m("",!0),d("h2",{class:"title",innerHTML:e.title},null,8,Ln),e.details?(a(),l("p",{key:3,class:"details",innerHTML:e.details},null,8,Sn)):m("",!0),e.linkText?(a(),l("div",Tn,[d("p",Nn,[F(S(e.linkText)+" ",1),t[0]||(t[0]=d("span",{class:"vpi-arrow-right link-text-icon"},null,-1))])])):m("",!0)])]),_:1},8,["href","rel","target","tag"]))}}),Mn=k(In,[["__scopeId","data-v-f5e9645b"]]),wn={key:0,class:"VPFeatures"},An={class:"container"},Bn={class:"items"},Cn=h({__name:"VPFeatures",props:{features:{}},setup(o){const e=o,t=$(()=>{const s=e.features.length;if(s){if(s===2)return"grid-2";if(s===3)return"grid-3";if(s%3===0)return"grid-6";if(s>3)return"grid-4"}else return});return(s,n)=>s.features?(a(),l("div",wn,[d("div",An,[d("div",Bn,[(a(!0),l(w,null,C(s.features,i=>(a(),l("div",{key:i.title,class:N(["item",[t.value]])},[_(Mn,{icon:i.icon,title:i.title,details:i.details,link:i.link,"link-text":i.linkText,rel:i.rel,target:i.target},null,8,["icon","title","details","link","link-text","rel","target"])],2))),128))])])])):m("",!0)}}),Hn=k(Cn,[["__scopeId","data-v-d0a190d7"]]),En=h({__name:"VPHomeFeatures",setup(o){const{frontmatter:e}=V();return(t,s)=>r(e).features?(a(),b(Hn,{key:0,class:"VPHomeFeatures",features:r(e).features},null,8,["features"])):m("",!0)}}),Fn=h({__name:"VPHomeContent",setup(o){const{width:e}=Ge({initialWidth:0,includeScrollbar:!1});return(t,s)=>(a(),l("div",{class:"vp-doc container",style:Se(r(e)?{"--vp-offset":`calc(50% - ${r(e)/2}px)`}:{})},[c(t.$slots,"default",{},void 0,!0)],4))}}),Dn=k(Fn,[["__scopeId","data-v-7a48a447"]]),On={class:"VPHome"},Gn=h({__name:"VPHome",setup(o){const{frontmatter:e}=V();return(t,s)=>{const n=j("Content");return a(),l("div",On,[c(t.$slots,"home-hero-before",{},void 0,!0),_($n,null,{"home-hero-info-before":v(()=>[c(t.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":v(()=>[c(t.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":v(()=>[c(t.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":v(()=>[c(t.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":v(()=>[c(t.$slots,"home-hero-image",{},void 0,!0)]),_:3}),c(t.$slots,"home-hero-after",{},void 0,!0),c(t.$slots,"home-features-before",{},void 0,!0),_(En),c(t.$slots,"home-features-after",{},void 0,!0),r(e).markdownStyles!==!1?(a(),b(Dn,{key:0},{default:v(()=>[_(n)]),_:1})):(a(),b(n,{key:1}))])}}}),Un=k(Gn,[["__scopeId","data-v-cbb6ec48"]]),zn={},jn={class:"VPPage"};function Kn(o,e){const t=j("Content");return a(),l("div",jn,[c(o.$slots,"page-top"),_(t),c(o.$slots,"page-bottom")])}const qn=k(zn,[["render",Kn]]),Rn=h({__name:"VPContent",setup(o){const{page:e,frontmatter:t}=V(),{hasSidebar:s}=G();return(n,i)=>(a(),l("div",{class:N(["VPContent",{"has-sidebar":r(s),"is-home":r(t).layout==="home"}]),id:"VPContent"},[r(e).isNotFound?c(n.$slots,"not-found",{key:0},()=>[_(ct)],!0):r(t).layout==="page"?(a(),b(qn,{key:1},{"page-top":v(()=>[c(n.$slots,"page-top",{},void 0,!0)]),"page-bottom":v(()=>[c(n.$slots,"page-bottom",{},void 0,!0)]),_:3})):r(t).layout==="home"?(a(),b(Un,{key:2},{"home-hero-before":v(()=>[c(n.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":v(()=>[c(n.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":v(()=>[c(n.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":v(()=>[c(n.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":v(()=>[c(n.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":v(()=>[c(n.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":v(()=>[c(n.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":v(()=>[c(n.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":v(()=>[c(n.$slots,"home-features-after",{},void 0,!0)]),_:3})):r(t).layout&&r(t).layout!=="doc"?(a(),b(D(r(t).layout),{key:3})):(a(),b(on,{key:4},{"doc-top":v(()=>[c(n.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":v(()=>[c(n.$slots,"doc-bottom",{},void 0,!0)]),"doc-footer-before":v(()=>[c(n.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":v(()=>[c(n.$slots,"doc-before",{},void 0,!0)]),"doc-after":v(()=>[c(n.$slots,"doc-after",{},void 0,!0)]),"aside-top":v(()=>[c(n.$slots,"aside-top",{},void 0,!0)]),"aside-outline-before":v(()=>[c(n.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":v(()=>[c(n.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":v(()=>[c(n.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":v(()=>[c(n.$slots,"aside-ads-after",{},void 0,!0)]),"aside-bottom":v(()=>[c(n.$slots,"aside-bottom",{},void 0,!0)]),_:3}))],2))}}),Wn=k(Rn,[["__scopeId","data-v-91765379"]]),Jn={class:"container"},Yn=["innerHTML"],Xn=["innerHTML"],Qn=h({__name:"VPFooter",setup(o){const{theme:e,frontmatter:t}=V(),{hasSidebar:s}=G();return(n,i)=>r(e).footer&&r(t).footer!==!1?(a(),l("footer",{key:0,class:N(["VPFooter",{"has-sidebar":r(s)}])},[d("div",Jn,[r(e).footer.message?(a(),l("p",{key:0,class:"message",innerHTML:r(e).footer.message},null,8,Yn)):m("",!0),r(e).footer.copyright?(a(),l("p",{key:1,class:"copyright",innerHTML:r(e).footer.copyright},null,8,Xn)):m("",!0)])],2)):m("",!0)}}),Zn=k(Qn,[["__scopeId","data-v-c970a860"]]);function xn(){const{theme:o,frontmatter:e}=V(),t=Ve([]),s=$(()=>t.value.length>0);return Q(()=>{t.value=he(e.value.outline??o.value.outline)}),{headers:t,hasLocalNav:s}}const es={class:"menu-text"},ts={class:"header"},ns={class:"outline"},ss=h({__name:"VPLocalNavOutlineDropdown",props:{headers:{},navHeight:{}},setup(o){const e=o,{theme:t}=V(),s=M(!1),n=M(0),i=M(),u=M();function f(g){var P;(P=i.value)!=null&&P.contains(g.target)||(s.value=!1)}O(s,g=>{if(g){document.addEventListener("click",f);return}document.removeEventListener("click",f)}),ie("Escape",()=>{s.value=!1}),Q(()=>{s.value=!1});function p(){s.value=!s.value,n.value=window.innerHeight+Math.min(window.scrollY-e.navHeight,0)}function y(g){g.target.classList.contains("outline-link")&&(u.value&&(u.value.style.transition="none"),Ue(()=>{s.value=!1}))}function L(){s.value=!1,window.scrollTo({top:0,left:0,behavior:"smooth"})}return(g,P)=>(a(),l("div",{class:"VPLocalNavOutlineDropdown",style:Se({"--vp-vh":n.value+"px"}),ref_key:"main",ref:i},[g.headers.length>0?(a(),l("button",{key:0,onClick:p,class:N({open:s.value})},[d("span",es,S(r(we)(r(t))),1),P[0]||(P[0]=d("span",{class:"vpi-chevron-right icon"},null,-1))],2)):(a(),l("button",{key:1,onClick:L},S(r(t).returnToTopLabel||"Return to top"),1)),_(de,{name:"flyout"},{default:v(()=>[s.value?(a(),l("div",{key:0,ref_key:"items",ref:u,class:"items",onClick:y},[d("div",ts,[d("a",{class:"top-link",href:"#",onClick:L},S(r(t).returnToTopLabel||"Return to top"),1)]),d("div",ns,[_(Ae,{headers:g.headers},null,8,["headers"])])],512)):m("",!0)]),_:1})],4))}}),os=k(ss,[["__scopeId","data-v-bc9dc845"]]),as={class:"container"},rs=["aria-expanded"],is={class:"menu-text"},ls=h({__name:"VPLocalNav",props:{open:{type:Boolean}},emits:["open-menu"],setup(o){const{theme:e,frontmatter:t}=V(),{hasSidebar:s}=G(),{headers:n}=xn(),{y:i}=Te(),u=M(0);q(()=>{u.value=parseInt(getComputedStyle(document.documentElement).getPropertyValue("--vp-nav-height"))}),Q(()=>{n.value=he(t.value.outline??e.value.outline)});const f=$(()=>n.value.length===0),p=$(()=>f.value&&!s.value),y=$(()=>({VPLocalNav:!0,"has-sidebar":s.value,empty:f.value,fixed:p.value}));return(L,g)=>r(t).layout!=="home"&&(!p.value||r(i)>=u.value)?(a(),l("div",{key:0,class:N(y.value)},[d("div",as,[r(s)?(a(),l("button",{key:0,class:"menu","aria-expanded":L.open,"aria-controls":"VPSidebarNav",onClick:g[0]||(g[0]=P=>L.$emit("open-menu"))},[g[1]||(g[1]=d("span",{class:"vpi-align-left menu-icon"},null,-1)),d("span",is,S(r(e).sidebarMenuLabel||"Menu"),1)],8,rs)):m("",!0),_(os,{headers:r(n),navHeight:u.value},null,8,["headers","navHeight"])])],2)):m("",!0)}}),cs=k(ls,[["__scopeId","data-v-070ab83d"]]);function us(){const o=M(!1);function e(){o.value=!0,window.addEventListener("resize",n)}function t(){o.value=!1,window.removeEventListener("resize",n)}function s(){o.value?t():e()}function n(){window.outerWidth>=768&&t()}const i=Z();return O(()=>i.path,t),{isScreenOpen:o,openScreen:e,closeScreen:t,toggleScreen:s}}const ds={},vs={class:"VPSwitch",type:"button",role:"switch"},ps={class:"check"},fs={key:0,class:"icon"};function ms(o,e){return a(),l("button",vs,[d("span",ps,[o.$slots.default?(a(),l("span",fs,[c(o.$slots,"default",{},void 0,!0)])):m("",!0)])])}const hs=k(ds,[["render",ms],["__scopeId","data-v-4a1c76db"]]),_s=h({__name:"VPSwitchAppearance",setup(o){const{isDark:e,theme:t}=V(),s=x("toggle-appearance",()=>{e.value=!e.value}),n=M("");return fe(()=>{n.value=e.value?t.value.lightModeSwitchTitle||"Switch to light theme":t.value.darkModeSwitchTitle||"Switch to dark theme"}),(i,u)=>(a(),b(hs,{title:n.value,class:"VPSwitchAppearance","aria-checked":r(e),onClick:r(s)},{default:v(()=>u[0]||(u[0]=[d("span",{class:"vpi-sun sun"},null,-1),d("span",{class:"vpi-moon moon"},null,-1)])),_:1},8,["title","aria-checked","onClick"]))}}),_e=k(_s,[["__scopeId","data-v-e40a8bb6"]]),ks={key:0,class:"VPNavBarAppearance"},bs=h({__name:"VPNavBarAppearance",setup(o){const{site:e}=V();return(t,s)=>r(e).appearance&&r(e).appearance!=="force-dark"&&r(e).appearance!=="force-auto"?(a(),l("div",ks,[_(_e)])):m("",!0)}}),gs=k(bs,[["__scopeId","data-v-af096f4a"]]),ke=M();let Be=!1,ae=0;function $s(o){const e=M(!1);if(ee){!Be&&ys(),ae++;const t=O(ke,s=>{var n,i,u;s===o.el.value||(n=o.el.value)!=null&&n.contains(s)?(e.value=!0,(i=o.onFocus)==null||i.call(o)):(e.value=!1,(u=o.onBlur)==null||u.call(o))});pe(()=>{t(),ae--,ae||Ps()})}return ze(e)}function ys(){document.addEventListener("focusin",Ce),Be=!0,ke.value=document.activeElement}function Ps(){document.removeEventListener("focusin",Ce)}function Ce(){ke.value=document.activeElement}const Vs={class:"VPMenuLink"},Ls=h({__name:"VPMenuLink",props:{item:{}},setup(o){const{page:e}=V();return(t,s)=>(a(),l("div",Vs,[_(E,{class:N({active:r(K)(r(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel},{default:v(()=>[F(S(t.item.text),1)]),_:1},8,["class","href","target","rel"])]))}}),te=k(Ls,[["__scopeId","data-v-8b74d055"]]),Ss={class:"VPMenuGroup"},Ts={key:0,class:"title"},Ns=h({__name:"VPMenuGroup",props:{text:{},items:{}},setup(o){return(e,t)=>(a(),l("div",Ss,[e.text?(a(),l("p",Ts,S(e.text),1)):m("",!0),(a(!0),l(w,null,C(e.items,s=>(a(),l(w,null,["link"in s?(a(),b(te,{key:0,item:s},null,8,["item"])):m("",!0)],64))),256))]))}}),Is=k(Ns,[["__scopeId","data-v-48c802d0"]]),Ms={class:"VPMenu"},ws={key:0,class:"items"},As=h({__name:"VPMenu",props:{items:{}},setup(o){return(e,t)=>(a(),l("div",Ms,[e.items?(a(),l("div",ws,[(a(!0),l(w,null,C(e.items,s=>(a(),l(w,{key:JSON.stringify(s)},["link"in s?(a(),b(te,{key:0,item:s},null,8,["item"])):"component"in s?(a(),b(D(s.component),z({key:1,ref_for:!0},s.props),null,16)):(a(),b(Is,{key:2,text:s.text,items:s.items},null,8,["text","items"]))],64))),128))])):m("",!0),c(e.$slots,"default",{},void 0,!0)]))}}),Bs=k(As,[["__scopeId","data-v-7dd3104a"]]),Cs=["aria-expanded","aria-label"],Hs={key:0,class:"text"},Es=["innerHTML"],Fs={key:1,class:"vpi-more-horizontal icon"},Ds={class:"menu"},Os=h({__name:"VPFlyout",props:{icon:{},button:{},label:{},items:{}},setup(o){const e=M(!1),t=M();$s({el:t,onBlur:s});function s(){e.value=!1}return(n,i)=>(a(),l("div",{class:"VPFlyout",ref_key:"el",ref:t,onMouseenter:i[1]||(i[1]=u=>e.value=!0),onMouseleave:i[2]||(i[2]=u=>e.value=!1)},[d("button",{type:"button",class:"button","aria-haspopup":"true","aria-expanded":e.value,"aria-label":n.label,onClick:i[0]||(i[0]=u=>e.value=!e.value)},[n.button||n.icon?(a(),l("span",Hs,[n.icon?(a(),l("span",{key:0,class:N([n.icon,"option-icon"])},null,2)):m("",!0),n.button?(a(),l("span",{key:1,innerHTML:n.button},null,8,Es)):m("",!0),i[3]||(i[3]=d("span",{class:"vpi-chevron-down text-icon"},null,-1))])):(a(),l("span",Fs))],8,Cs),d("div",Ds,[_(Bs,{items:n.items},{default:v(()=>[c(n.$slots,"default",{},void 0,!0)]),_:3},8,["items"])])],544))}}),be=k(Os,[["__scopeId","data-v-04f5c5e9"]]),Gs=["href","aria-label","innerHTML"],Us=h({__name:"VPSocialLink",props:{icon:{},link:{},ariaLabel:{}},setup(o){const e=o,t=$(()=>typeof e.icon=="object"?e.icon.svg:``);return(s,n)=>(a(),l("a",{class:"VPSocialLink no-icon",href:s.link,"aria-label":s.ariaLabel??(typeof s.icon=="string"?s.icon:""),target:"_blank",rel:"noopener",innerHTML:t.value},null,8,Gs))}}),zs=k(Us,[["__scopeId","data-v-717b8b75"]]),js={class:"VPSocialLinks"},Ks=h({__name:"VPSocialLinks",props:{links:{}},setup(o){return(e,t)=>(a(),l("div",js,[(a(!0),l(w,null,C(e.links,({link:s,icon:n,ariaLabel:i})=>(a(),b(zs,{key:s,icon:n,link:s,ariaLabel:i},null,8,["icon","link","ariaLabel"]))),128))]))}}),ne=k(Ks,[["__scopeId","data-v-ee7a9424"]]),qs={key:0,class:"group translations"},Rs={class:"trans-title"},Ws={key:1,class:"group"},Js={class:"item appearance"},Ys={class:"label"},Xs={class:"appearance-action"},Qs={key:2,class:"group"},Zs={class:"item social-links"},xs=h({__name:"VPNavBarExtra",setup(o){const{site:e,theme:t}=V(),{localeLinks:s,currentLang:n}=W({correspondingLink:!0}),i=$(()=>s.value.length&&n.value.label||e.value.appearance||t.value.socialLinks);return(u,f)=>i.value?(a(),b(be,{key:0,class:"VPNavBarExtra",label:"extra navigation"},{default:v(()=>[r(s).length&&r(n).label?(a(),l("div",qs,[d("p",Rs,S(r(n).label),1),(a(!0),l(w,null,C(r(s),p=>(a(),b(te,{key:p.link,item:p},null,8,["item"]))),128))])):m("",!0),r(e).appearance&&r(e).appearance!=="force-dark"&&r(e).appearance!=="force-auto"?(a(),l("div",Ws,[d("div",Js,[d("p",Ys,S(r(t).darkModeSwitchLabel||"Appearance"),1),d("div",Xs,[_(_e)])])])):m("",!0),r(t).socialLinks?(a(),l("div",Qs,[d("div",Zs,[_(ne,{class:"social-links-list",links:r(t).socialLinks},null,8,["links"])])])):m("",!0)]),_:1})):m("",!0)}}),eo=k(xs,[["__scopeId","data-v-925effce"]]),to=["aria-expanded"],no=h({__name:"VPNavBarHamburger",props:{active:{type:Boolean}},emits:["click"],setup(o){return(e,t)=>(a(),l("button",{type:"button",class:N(["VPNavBarHamburger",{active:e.active}]),"aria-label":"mobile navigation","aria-expanded":e.active,"aria-controls":"VPNavScreen",onClick:t[0]||(t[0]=s=>e.$emit("click"))},t[1]||(t[1]=[d("span",{class:"container"},[d("span",{class:"top"}),d("span",{class:"middle"}),d("span",{class:"bottom"})],-1)]),10,to))}}),so=k(no,[["__scopeId","data-v-5dea55bf"]]),oo=["innerHTML"],ao=h({__name:"VPNavBarMenuLink",props:{item:{}},setup(o){const{page:e}=V();return(t,s)=>(a(),b(E,{class:N({VPNavBarMenuLink:!0,active:r(K)(r(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,noIcon:t.item.noIcon,target:t.item.target,rel:t.item.rel,tabindex:"0"},{default:v(()=>[d("span",{innerHTML:t.item.text},null,8,oo)]),_:1},8,["class","href","noIcon","target","rel"]))}}),ro=k(ao,[["__scopeId","data-v-ed5ac1f6"]]),io=h({__name:"VPNavBarMenuGroup",props:{item:{}},setup(o){const e=o,{page:t}=V(),s=i=>"component"in i?!1:"link"in i?K(t.value.relativePath,i.link,!!e.item.activeMatch):i.items.some(s),n=$(()=>s(e.item));return(i,u)=>(a(),b(be,{class:N({VPNavBarMenuGroup:!0,active:r(K)(r(t).relativePath,i.item.activeMatch,!!i.item.activeMatch)||n.value}),button:i.item.text,items:i.item.items},null,8,["class","button","items"]))}}),lo={key:0,"aria-labelledby":"main-nav-aria-label",class:"VPNavBarMenu"},co=h({__name:"VPNavBarMenu",setup(o){const{theme:e}=V();return(t,s)=>r(e).nav?(a(),l("nav",lo,[s[0]||(s[0]=d("span",{id:"main-nav-aria-label",class:"visually-hidden"}," Main Navigation ",-1)),(a(!0),l(w,null,C(r(e).nav,n=>(a(),l(w,{key:JSON.stringify(n)},["link"in n?(a(),b(ro,{key:0,item:n},null,8,["item"])):"component"in n?(a(),b(D(n.component),z({key:1,ref_for:!0},n.props),null,16)):(a(),b(io,{key:2,item:n},null,8,["item"]))],64))),128))])):m("",!0)}}),uo=k(co,[["__scopeId","data-v-e6d46098"]]);function vo(o){const{localeIndex:e,theme:t}=V();function s(n){var A,B,T;const i=n.split("."),u=(A=t.value.search)==null?void 0:A.options,f=u&&typeof u=="object",p=f&&((T=(B=u.locales)==null?void 0:B[e.value])==null?void 0:T.translations)||null,y=f&&u.translations||null;let L=p,g=y,P=o;const I=i.pop();for(const H of i){let U=null;const R=P==null?void 0:P[H];R&&(U=P=R);const se=g==null?void 0:g[H];se&&(U=g=se);const oe=L==null?void 0:L[H];oe&&(U=L=oe),R||(P=U),se||(g=U),oe||(L=U)}return(L==null?void 0:L[I])??(g==null?void 0:g[I])??(P==null?void 0:P[I])??""}return s}const po=["aria-label"],fo={class:"DocSearch-Button-Container"},mo={class:"DocSearch-Button-Placeholder"},$e=h({__name:"VPNavBarSearchButton",setup(o){const t=vo({button:{buttonText:"Search",buttonAriaLabel:"Search"}});return(s,n)=>(a(),l("button",{type:"button",class:"DocSearch DocSearch-Button","aria-label":r(t)("button.buttonAriaLabel")},[d("span",fo,[n[0]||(n[0]=d("span",{class:"vp-icon DocSearch-Search-Icon"},null,-1)),d("span",mo,S(r(t)("button.buttonText")),1)]),n[1]||(n[1]=d("span",{class:"DocSearch-Button-Keys"},[d("kbd",{class:"DocSearch-Button-Key"}),d("kbd",{class:"DocSearch-Button-Key"},"K")],-1))],8,po))}}),ho={class:"VPNavBarSearch"},_o={id:"local-search"},ko={key:1,id:"docsearch"},bo=h({__name:"VPNavBarSearch",setup(o){const e=je(()=>Ke(()=>import("./VPLocalSearchBox.Cjcn55aX.js"),__vite__mapDeps([0,1]))),t=()=>null,{theme:s}=V(),n=M(!1),i=M(!1);q(()=>{});function u(){n.value||(n.value=!0,setTimeout(f,16))}function f(){const g=new Event("keydown");g.key="k",g.metaKey=!0,window.dispatchEvent(g),setTimeout(()=>{document.querySelector(".DocSearch-Modal")||f()},16)}function p(g){const P=g.target,I=P.tagName;return P.isContentEditable||I==="INPUT"||I==="SELECT"||I==="TEXTAREA"}const y=M(!1);ie("k",g=>{(g.ctrlKey||g.metaKey)&&(g.preventDefault(),y.value=!0)}),ie("/",g=>{p(g)||(g.preventDefault(),y.value=!0)});const L="local";return(g,P)=>{var I;return a(),l("div",ho,[r(L)==="local"?(a(),l(w,{key:0},[y.value?(a(),b(r(e),{key:0,onClose:P[0]||(P[0]=A=>y.value=!1)})):m("",!0),d("div",_o,[_($e,{onClick:P[1]||(P[1]=A=>y.value=!0)})])],64)):r(L)==="algolia"?(a(),l(w,{key:1},[n.value?(a(),b(r(t),{key:0,algolia:((I=r(s).search)==null?void 0:I.options)??r(s).algolia,onVnodeBeforeMount:P[2]||(P[2]=A=>i.value=!0)},null,8,["algolia"])):m("",!0),i.value?m("",!0):(a(),l("div",ko,[_($e,{onClick:u})]))],64)):m("",!0)])}}}),go=h({__name:"VPNavBarSocialLinks",setup(o){const{theme:e}=V();return(t,s)=>r(e).socialLinks?(a(),b(ne,{key:0,class:"VPNavBarSocialLinks",links:r(e).socialLinks},null,8,["links"])):m("",!0)}}),$o=k(go,[["__scopeId","data-v-164c457f"]]),yo=["href","rel","target"],Po={key:1},Vo={key:2},Lo=h({__name:"VPNavBarTitle",setup(o){const{site:e,theme:t}=V(),{hasSidebar:s}=G(),{currentLang:n}=W(),i=$(()=>{var p;return typeof t.value.logoLink=="string"?t.value.logoLink:(p=t.value.logoLink)==null?void 0:p.link}),u=$(()=>{var p;return typeof t.value.logoLink=="string"||(p=t.value.logoLink)==null?void 0:p.rel}),f=$(()=>{var p;return typeof t.value.logoLink=="string"||(p=t.value.logoLink)==null?void 0:p.target});return(p,y)=>(a(),l("div",{class:N(["VPNavBarTitle",{"has-sidebar":r(s)}])},[d("a",{class:"title",href:i.value??r(me)(r(n).link),rel:u.value,target:f.value},[c(p.$slots,"nav-bar-title-before",{},void 0,!0),r(t).logo?(a(),b(Y,{key:0,class:"logo",image:r(t).logo},null,8,["image"])):m("",!0),r(t).siteTitle?(a(),l("span",Po,S(r(t).siteTitle),1)):r(t).siteTitle===void 0?(a(),l("span",Vo,S(r(e).title),1)):m("",!0),c(p.$slots,"nav-bar-title-after",{},void 0,!0)],8,yo)],2))}}),So=k(Lo,[["__scopeId","data-v-28a961f9"]]),To={class:"items"},No={class:"title"},Io=h({__name:"VPNavBarTranslations",setup(o){const{theme:e}=V(),{localeLinks:t,currentLang:s}=W({correspondingLink:!0});return(n,i)=>r(t).length&&r(s).label?(a(),b(be,{key:0,class:"VPNavBarTranslations",icon:"vpi-languages",label:r(e).langMenuLabel||"Change language"},{default:v(()=>[d("div",To,[d("p",No,S(r(s).label),1),(a(!0),l(w,null,C(r(t),u=>(a(),b(te,{key:u.link,item:u},null,8,["item"]))),128))])]),_:1},8,["label"])):m("",!0)}}),Mo=k(Io,[["__scopeId","data-v-c80d9ad0"]]),wo={class:"wrapper"},Ao={class:"container"},Bo={class:"title"},Co={class:"content"},Ho={class:"content-body"},Eo=h({__name:"VPNavBar",props:{isScreenOpen:{type:Boolean}},emits:["toggle-screen"],setup(o){const e=o,{y:t}=Te(),{hasSidebar:s}=G(),{frontmatter:n}=V(),i=M({});return fe(()=>{i.value={"has-sidebar":s.value,home:n.value.layout==="home",top:t.value===0,"screen-open":e.isScreenOpen}}),(u,f)=>(a(),l("div",{class:N(["VPNavBar",i.value])},[d("div",wo,[d("div",Ao,[d("div",Bo,[_(So,null,{"nav-bar-title-before":v(()=>[c(u.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":v(()=>[c(u.$slots,"nav-bar-title-after",{},void 0,!0)]),_:3})]),d("div",Co,[d("div",Ho,[c(u.$slots,"nav-bar-content-before",{},void 0,!0),_(bo,{class:"search"}),_(uo,{class:"menu"}),_(Mo,{class:"translations"}),_(gs,{class:"appearance"}),_($o,{class:"social-links"}),_(eo,{class:"extra"}),c(u.$slots,"nav-bar-content-after",{},void 0,!0),_(so,{class:"hamburger",active:u.isScreenOpen,onClick:f[0]||(f[0]=p=>u.$emit("toggle-screen"))},null,8,["active"])])])])]),f[1]||(f[1]=d("div",{class:"divider"},[d("div",{class:"divider-line"})],-1))],2))}}),Fo=k(Eo,[["__scopeId","data-v-822684d1"]]),Do={key:0,class:"VPNavScreenAppearance"},Oo={class:"text"},Go=h({__name:"VPNavScreenAppearance",setup(o){const{site:e,theme:t}=V();return(s,n)=>r(e).appearance&&r(e).appearance!=="force-dark"&&r(e).appearance!=="force-auto"?(a(),l("div",Do,[d("p",Oo,S(r(t).darkModeSwitchLabel||"Appearance"),1),_(_e)])):m("",!0)}}),Uo=k(Go,[["__scopeId","data-v-ffb44008"]]),zo=h({__name:"VPNavScreenMenuLink",props:{item:{}},setup(o){const e=x("close-screen");return(t,s)=>(a(),b(E,{class:"VPNavScreenMenuLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:r(e),innerHTML:t.item.text},null,8,["href","target","rel","onClick","innerHTML"]))}}),jo=k(zo,[["__scopeId","data-v-27d04aeb"]]),Ko=h({__name:"VPNavScreenMenuGroupLink",props:{item:{}},setup(o){const e=x("close-screen");return(t,s)=>(a(),b(E,{class:"VPNavScreenMenuGroupLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:r(e)},{default:v(()=>[F(S(t.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}}),He=k(Ko,[["__scopeId","data-v-7179dbb7"]]),qo={class:"VPNavScreenMenuGroupSection"},Ro={key:0,class:"title"},Wo=h({__name:"VPNavScreenMenuGroupSection",props:{text:{},items:{}},setup(o){return(e,t)=>(a(),l("div",qo,[e.text?(a(),l("p",Ro,S(e.text),1)):m("",!0),(a(!0),l(w,null,C(e.items,s=>(a(),b(He,{key:s.text,item:s},null,8,["item"]))),128))]))}}),Jo=k(Wo,[["__scopeId","data-v-4b8941ac"]]),Yo=["aria-controls","aria-expanded"],Xo=["innerHTML"],Qo=["id"],Zo={key:0,class:"item"},xo={key:1,class:"item"},ea={key:2,class:"group"},ta=h({__name:"VPNavScreenMenuGroup",props:{text:{},items:{}},setup(o){const e=o,t=M(!1),s=$(()=>`NavScreenGroup-${e.text.replace(" ","-").toLowerCase()}`);function n(){t.value=!t.value}return(i,u)=>(a(),l("div",{class:N(["VPNavScreenMenuGroup",{open:t.value}])},[d("button",{class:"button","aria-controls":s.value,"aria-expanded":t.value,onClick:n},[d("span",{class:"button-text",innerHTML:i.text},null,8,Xo),u[0]||(u[0]=d("span",{class:"vpi-plus button-icon"},null,-1))],8,Yo),d("div",{id:s.value,class:"items"},[(a(!0),l(w,null,C(i.items,f=>(a(),l(w,{key:JSON.stringify(f)},["link"in f?(a(),l("div",Zo,[_(He,{item:f},null,8,["item"])])):"component"in f?(a(),l("div",xo,[(a(),b(D(f.component),z({ref_for:!0},f.props,{"screen-menu":""}),null,16))])):(a(),l("div",ea,[_(Jo,{text:f.text,items:f.items},null,8,["text","items"])]))],64))),128))],8,Qo)],2))}}),na=k(ta,[["__scopeId","data-v-875057a5"]]),sa={key:0,class:"VPNavScreenMenu"},oa=h({__name:"VPNavScreenMenu",setup(o){const{theme:e}=V();return(t,s)=>r(e).nav?(a(),l("nav",sa,[(a(!0),l(w,null,C(r(e).nav,n=>(a(),l(w,{key:JSON.stringify(n)},["link"in n?(a(),b(jo,{key:0,item:n},null,8,["item"])):"component"in n?(a(),b(D(n.component),z({key:1,ref_for:!0},n.props,{"screen-menu":""}),null,16)):(a(),b(na,{key:2,text:n.text||"",items:n.items},null,8,["text","items"]))],64))),128))])):m("",!0)}}),aa=h({__name:"VPNavScreenSocialLinks",setup(o){const{theme:e}=V();return(t,s)=>r(e).socialLinks?(a(),b(ne,{key:0,class:"VPNavScreenSocialLinks",links:r(e).socialLinks},null,8,["links"])):m("",!0)}}),ra={class:"list"},ia=h({__name:"VPNavScreenTranslations",setup(o){const{localeLinks:e,currentLang:t}=W({correspondingLink:!0}),s=M(!1);function n(){s.value=!s.value}return(i,u)=>r(e).length&&r(t).label?(a(),l("div",{key:0,class:N(["VPNavScreenTranslations",{open:s.value}])},[d("button",{class:"title",onClick:n},[u[0]||(u[0]=d("span",{class:"vpi-languages icon lang"},null,-1)),F(" "+S(r(t).label)+" ",1),u[1]||(u[1]=d("span",{class:"vpi-chevron-down icon chevron"},null,-1))]),d("ul",ra,[(a(!0),l(w,null,C(r(e),f=>(a(),l("li",{key:f.link,class:"item"},[_(E,{class:"link",href:f.link},{default:v(()=>[F(S(f.text),1)]),_:2},1032,["href"])]))),128))])],2)):m("",!0)}}),la=k(ia,[["__scopeId","data-v-362991c2"]]),ca={class:"container"},ua=h({__name:"VPNavScreen",props:{open:{type:Boolean}},setup(o){const e=M(null),t=Ne(ee?document.body:null);return(s,n)=>(a(),b(de,{name:"fade",onEnter:n[0]||(n[0]=i=>t.value=!0),onAfterLeave:n[1]||(n[1]=i=>t.value=!1)},{default:v(()=>[s.open?(a(),l("div",{key:0,class:"VPNavScreen",ref_key:"screen",ref:e,id:"VPNavScreen"},[d("div",ca,[c(s.$slots,"nav-screen-content-before",{},void 0,!0),_(oa,{class:"menu"}),_(la,{class:"translations"}),_(Uo,{class:"appearance"}),_(aa,{class:"social-links"}),c(s.$slots,"nav-screen-content-after",{},void 0,!0)])],512)):m("",!0)]),_:3}))}}),da=k(ua,[["__scopeId","data-v-833aabba"]]),va={key:0,class:"VPNav"},pa=h({__name:"VPNav",setup(o){const{isScreenOpen:e,closeScreen:t,toggleScreen:s}=us(),{frontmatter:n}=V(),i=$(()=>n.value.navbar!==!1);return Ie("close-screen",t),X(()=>{ee&&document.documentElement.classList.toggle("hide-nav",!i.value)}),(u,f)=>i.value?(a(),l("header",va,[_(Fo,{"is-screen-open":r(e),onToggleScreen:r(s)},{"nav-bar-title-before":v(()=>[c(u.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":v(()=>[c(u.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":v(()=>[c(u.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":v(()=>[c(u.$slots,"nav-bar-content-after",{},void 0,!0)]),_:3},8,["is-screen-open","onToggleScreen"]),_(da,{open:r(e)},{"nav-screen-content-before":v(()=>[c(u.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":v(()=>[c(u.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3},8,["open"])])):m("",!0)}}),fa=k(pa,[["__scopeId","data-v-f1e365da"]]),ma=["role","tabindex"],ha={key:1,class:"items"},_a=h({__name:"VPSidebarItem",props:{item:{},depth:{}},setup(o){const e=o,{collapsed:t,collapsible:s,isLink:n,isActiveLink:i,hasActiveLink:u,hasChildren:f,toggle:p}=pt($(()=>e.item)),y=$(()=>f.value?"section":"div"),L=$(()=>n.value?"a":"div"),g=$(()=>f.value?e.depth+2===7?"p":`h${e.depth+2}`:"p"),P=$(()=>n.value?void 0:"button"),I=$(()=>[[`level-${e.depth}`],{collapsible:s.value},{collapsed:t.value},{"is-link":n.value},{"is-active":i.value},{"has-active":u.value}]);function A(T){"key"in T&&T.key!=="Enter"||!e.item.link&&p()}function B(){e.item.link&&p()}return(T,H)=>{const U=j("VPSidebarItem",!0);return a(),b(D(y.value),{class:N(["VPSidebarItem",I.value])},{default:v(()=>[T.item.text?(a(),l("div",z({key:0,class:"item",role:P.value},qe(T.item.items?{click:A,keydown:A}:{},!0),{tabindex:T.item.items&&0}),[H[1]||(H[1]=d("div",{class:"indicator"},null,-1)),T.item.link?(a(),b(E,{key:0,tag:L.value,class:"link",href:T.item.link,rel:T.item.rel,target:T.item.target},{default:v(()=>[(a(),b(D(g.value),{class:"text",innerHTML:T.item.text},null,8,["innerHTML"]))]),_:1},8,["tag","href","rel","target"])):(a(),b(D(g.value),{key:1,class:"text",innerHTML:T.item.text},null,8,["innerHTML"])),T.item.collapsed!=null&&T.item.items&&T.item.items.length?(a(),l("div",{key:2,class:"caret",role:"button","aria-label":"toggle section",onClick:B,onKeydown:Re(B,["enter"]),tabindex:"0"},H[0]||(H[0]=[d("span",{class:"vpi-chevron-right caret-icon"},null,-1)]),32)):m("",!0)],16,ma)):m("",!0),T.item.items&&T.item.items.length?(a(),l("div",ha,[T.depth<5?(a(!0),l(w,{key:0},C(T.item.items,R=>(a(),b(U,{key:R.text,item:R,depth:T.depth+1},null,8,["item","depth"]))),128)):m("",!0)])):m("",!0)]),_:1},8,["class"])}}}),ka=k(_a,[["__scopeId","data-v-196b2e5f"]]),ba=h({__name:"VPSidebarGroup",props:{items:{}},setup(o){const e=M(!0);let t=null;return q(()=>{t=setTimeout(()=>{t=null,e.value=!1},300)}),We(()=>{t!=null&&(clearTimeout(t),t=null)}),(s,n)=>(a(!0),l(w,null,C(s.items,i=>(a(),l("div",{key:i.text,class:N(["group",{"no-transition":e.value}])},[_(ka,{item:i,depth:0},null,8,["item"])],2))),128))}}),ga=k(ba,[["__scopeId","data-v-9e426adc"]]),$a={class:"nav",id:"VPSidebarNav","aria-labelledby":"sidebar-aria-label",tabindex:"-1"},ya=h({__name:"VPSidebar",props:{open:{type:Boolean}},setup(o){const{sidebarGroups:e,hasSidebar:t}=G(),s=o,n=M(null),i=Ne(ee?document.body:null);O([s,n],()=>{var f;s.open?(i.value=!0,(f=n.value)==null||f.focus()):i.value=!1},{immediate:!0,flush:"post"});const u=M(0);return O(e,()=>{u.value+=1},{deep:!0}),(f,p)=>r(t)?(a(),l("aside",{key:0,class:N(["VPSidebar",{open:f.open}]),ref_key:"navEl",ref:n,onClick:p[0]||(p[0]=Je(()=>{},["stop"]))},[p[2]||(p[2]=d("div",{class:"curtain"},null,-1)),d("nav",$a,[p[1]||(p[1]=d("span",{class:"visually-hidden",id:"sidebar-aria-label"}," Sidebar Navigation ",-1)),c(f.$slots,"sidebar-nav-before",{},void 0,!0),(a(),b(ga,{items:r(e),key:u.value},null,8,["items"])),c(f.$slots,"sidebar-nav-after",{},void 0,!0)])],2)):m("",!0)}}),Pa=k(ya,[["__scopeId","data-v-18756405"]]),Va=h({__name:"VPSkipLink",setup(o){const e=Z(),t=M();O(()=>e.path,()=>t.value.focus());function s({target:n}){const i=document.getElementById(decodeURIComponent(n.hash).slice(1));if(i){const u=()=>{i.removeAttribute("tabindex"),i.removeEventListener("blur",u)};i.setAttribute("tabindex","-1"),i.addEventListener("blur",u),i.focus(),window.scrollTo(0,0)}}return(n,i)=>(a(),l(w,null,[d("span",{ref_key:"backToTop",ref:t,tabindex:"-1"},null,512),d("a",{href:"#VPContent",class:"VPSkipLink visually-hidden",onClick:s}," Skip to content ")],64))}}),La=k(Va,[["__scopeId","data-v-c3508ec8"]]),Sa=h({__name:"Layout",setup(o){const{isOpen:e,open:t,close:s}=G(),n=Z();O(()=>n.path,s),vt(e,s);const{frontmatter:i}=V(),u=Ye(),f=$(()=>!!u["home-hero-image"]);return Ie("hero-image-slot-exists",f),(p,y)=>{const L=j("Content");return r(i).layout!==!1?(a(),l("div",{key:0,class:N(["Layout",r(i).pageClass])},[c(p.$slots,"layout-top",{},void 0,!0),_(La),_(xe,{class:"backdrop",show:r(e),onClick:r(s)},null,8,["show","onClick"]),_(fa,null,{"nav-bar-title-before":v(()=>[c(p.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":v(()=>[c(p.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":v(()=>[c(p.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":v(()=>[c(p.$slots,"nav-bar-content-after",{},void 0,!0)]),"nav-screen-content-before":v(()=>[c(p.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":v(()=>[c(p.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3}),_(cs,{open:r(e),onOpenMenu:r(t)},null,8,["open","onOpenMenu"]),_(Pa,{open:r(e)},{"sidebar-nav-before":v(()=>[c(p.$slots,"sidebar-nav-before",{},void 0,!0)]),"sidebar-nav-after":v(()=>[c(p.$slots,"sidebar-nav-after",{},void 0,!0)]),_:3},8,["open"]),_(Wn,null,{"page-top":v(()=>[c(p.$slots,"page-top",{},void 0,!0)]),"page-bottom":v(()=>[c(p.$slots,"page-bottom",{},void 0,!0)]),"not-found":v(()=>[c(p.$slots,"not-found",{},void 0,!0)]),"home-hero-before":v(()=>[c(p.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":v(()=>[c(p.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":v(()=>[c(p.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":v(()=>[c(p.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":v(()=>[c(p.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":v(()=>[c(p.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":v(()=>[c(p.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":v(()=>[c(p.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":v(()=>[c(p.$slots,"home-features-after",{},void 0,!0)]),"doc-footer-before":v(()=>[c(p.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":v(()=>[c(p.$slots,"doc-before",{},void 0,!0)]),"doc-after":v(()=>[c(p.$slots,"doc-after",{},void 0,!0)]),"doc-top":v(()=>[c(p.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":v(()=>[c(p.$slots,"doc-bottom",{},void 0,!0)]),"aside-top":v(()=>[c(p.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":v(()=>[c(p.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":v(()=>[c(p.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":v(()=>[c(p.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":v(()=>[c(p.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":v(()=>[c(p.$slots,"aside-ads-after",{},void 0,!0)]),_:3}),_(Zn),c(p.$slots,"layout-bottom",{},void 0,!0)],2)):(a(),b(L,{key:1}))}}}),Ta=k(Sa,[["__scopeId","data-v-a9a9e638"]]),Na={},Ia={class:"VPTeamPage"};function Ma(o,e){return a(),l("div",Ia,[c(o.$slots,"default")])}const nr=k(Na,[["render",Ma],["__scopeId","data-v-c2f8e101"]]),wa={},Aa={class:"VPTeamPageTitle"},Ba={key:0,class:"title"},Ca={key:1,class:"lead"};function Ha(o,e){return a(),l("div",Aa,[o.$slots.title?(a(),l("h1",Ba,[c(o.$slots,"title",{},void 0,!0)])):m("",!0),o.$slots.lead?(a(),l("p",Ca,[c(o.$slots,"lead",{},void 0,!0)])):m("",!0)])}const sr=k(wa,[["render",Ha],["__scopeId","data-v-e277e15c"]]),Ea={class:"profile"},Fa={class:"avatar"},Da=["src","alt"],Oa={class:"data"},Ga={class:"name"},Ua={key:0,class:"affiliation"},za={key:0,class:"title"},ja={key:1,class:"at"},Ka=["innerHTML"],qa={key:2,class:"links"},Ra={key:0,class:"sp"},Wa=h({__name:"VPTeamMembersItem",props:{size:{default:"medium"},member:{}},setup(o){return(e,t)=>(a(),l("article",{class:N(["VPTeamMembersItem",[e.size]])},[d("div",Ea,[d("figure",Fa,[d("img",{class:"avatar-img",src:e.member.avatar,alt:e.member.name},null,8,Da)]),d("div",Oa,[d("h1",Ga,S(e.member.name),1),e.member.title||e.member.org?(a(),l("p",Ua,[e.member.title?(a(),l("span",za,S(e.member.title),1)):m("",!0),e.member.title&&e.member.org?(a(),l("span",ja," @ ")):m("",!0),e.member.org?(a(),b(E,{key:2,class:N(["org",{link:e.member.orgLink}]),href:e.member.orgLink,"no-icon":""},{default:v(()=>[F(S(e.member.org),1)]),_:1},8,["class","href"])):m("",!0)])):m("",!0),e.member.desc?(a(),l("p",{key:1,class:"desc",innerHTML:e.member.desc},null,8,Ka)):m("",!0),e.member.links?(a(),l("div",qa,[_(ne,{links:e.member.links},null,8,["links"])])):m("",!0)])]),e.member.sponsor?(a(),l("div",Ra,[_(E,{class:"sp-link",href:e.member.sponsor,"no-icon":""},{default:v(()=>[t[0]||(t[0]=d("span",{class:"vpi-heart sp-icon"},null,-1)),F(" "+S(e.member.actionText||"Sponsor"),1)]),_:1},8,["href"])])):m("",!0)],2))}}),Ja=k(Wa,[["__scopeId","data-v-f9987cb6"]]),Ya={class:"container"},Xa=h({__name:"VPTeamMembers",props:{size:{default:"medium"},members:{}},setup(o){const e=o,t=$(()=>[e.size,`count-${e.members.length}`]);return(s,n)=>(a(),l("div",{class:N(["VPTeamMembers",t.value])},[d("div",Ya,[(a(!0),l(w,null,C(s.members,i=>(a(),l("div",{key:i.name,class:"item"},[_(Ja,{size:s.size,member:i},null,8,["size","member"])]))),128))])],2))}}),or=k(Xa,[["__scopeId","data-v-fba19bad"]]),ye={Layout:Ta,enhanceApp:({app:o})=>{o.component("Badge",Xe)}},Qa={key:0},Za=["href"],xa={__name:"PackageBadge",setup(o){const{frontmatter:e}=Pe();return(t,s)=>{const n=j("Badge");return r(e).package?(a(),l("div",Qa,[_(n,{class:"package",type:"info"},{default:v(()=>[d("a",{title:"Package",target:"_blank",href:`https://www.npmjs.com/package/${r(e).package}`},S(r(e).package),9,Za)]),_:1})])):m("",!0)}}},er=k(xa,[["__scopeId","data-v-580af1dd"]]),ar={extends:ye,Layout(){return ge(ye.Layout,null,{"doc-before":()=>ge(er)})}};export{ar as R,sr as V,or as a,nr as b,vo as c,V as u}; diff --git a/docs/assets/chunks/theme.FxnoVUL-.js b/docs/assets/chunks/theme.FxnoVUL-.js deleted file mode 100644 index 6526886b..00000000 --- a/docs/assets/chunks/theme.FxnoVUL-.js +++ /dev/null @@ -1 +0,0 @@ -import{d as h,o as a,c as l,r as c,n as N,a as F,t as L,b,w as p,e as m,T as ue,_ as k,u as ye,i as Ce,f as Ee,g as de,h as g,j as d,k as r,l as q,m as re,p as M,q as O,s as Q,v as K,x as ve,y as pe,z as Fe,A as De,B as j,F as I,C as H,D as Pe,E as X,G as _,H as D,I as Ve,J as Z,K as z,L as x,M as Oe,N as Le,O as Ge,P as Ue,Q as Se,R as ee,S as ze,U as Te,V as Ne,W as je,X as qe,Y as Ke,Z as We,$ as Re,a0 as be}from"./framework.S1oRGgk6.js";const Je=h({__name:"VPBadge",props:{text:{},type:{default:"tip"}},setup(o){return(e,t)=>(a(),l("span",{class:N(["VPBadge",e.type])},[c(e.$slots,"default",{},()=>[F(L(e.text),1)])],2))}}),Ye={key:0,class:"VPBackdrop"},Qe=h({__name:"VPBackdrop",props:{show:{type:Boolean}},setup(o){return(e,t)=>(a(),b(ue,{name:"fade"},{default:p(()=>[e.show?(a(),l("div",Ye)):m("",!0)]),_:1}))}}),Xe=k(Qe,[["__scopeId","data-v-b06cdb19"]]),P=ye;function Ze(o,e){let t,s=!1;return()=>{t&&clearTimeout(t),s?t=setTimeout(o,e):(o(),(s=!0)&&setTimeout(()=>s=!1,e))}}function ie(o){return/^\//.test(o)?o:`/${o}`}function fe(o){const{pathname:e,search:t,hash:s,protocol:n}=new URL(o,"http://a.com");if(Ce(o)||o.startsWith("#")||!n.startsWith("http")||!Ee(e))return o;const{site:i}=P(),u=e.endsWith("/")||e.endsWith(".html")?o:o.replace(/(?:(^\.+)\/)?.*$/,`$1${e.replace(/(\.md)?$/,i.value.cleanUrls?"":".html")}${t}${s}`);return de(u)}function R({correspondingLink:o=!1}={}){const{site:e,localeIndex:t,page:s,theme:n,hash:i}=P(),u=g(()=>{var v,y;return{label:(v=e.value.locales[t.value])==null?void 0:v.label,link:((y=e.value.locales[t.value])==null?void 0:y.link)||(t.value==="root"?"/":`/${t.value}/`)}});return{localeLinks:g(()=>Object.entries(e.value.locales).flatMap(([v,y])=>u.value.label===y.label?[]:{text:y.label,link:xe(y.link||(v==="root"?"/":`/${v}/`),n.value.i18nRouting!==!1&&o,s.value.relativePath.slice(u.value.link.length-1),!e.value.cleanUrls)+i.value})),currentLang:u}}function xe(o,e,t,s){return e?o.replace(/\/$/,"")+ie(t.replace(/(^|\/)index\.md$/,"$1").replace(/\.md$/,s?".html":"")):o}const et={class:"NotFound"},tt={class:"code"},nt={class:"title"},st={class:"quote"},ot={class:"action"},at=["href","aria-label"],rt=h({__name:"NotFound",setup(o){const{theme:e}=P(),{currentLang:t}=R();return(s,n)=>{var i,u,f,v,y;return a(),l("div",et,[d("p",tt,L(((i=r(e).notFound)==null?void 0:i.code)??"404"),1),d("h1",nt,L(((u=r(e).notFound)==null?void 0:u.title)??"PAGE NOT FOUND"),1),n[0]||(n[0]=d("div",{class:"divider"},null,-1)),d("blockquote",st,L(((f=r(e).notFound)==null?void 0:f.quote)??"But if you don't change your direction, and if you keep looking, you may end up where you are heading."),1),d("div",ot,[d("a",{class:"link",href:r(de)(r(t).link),"aria-label":((v=r(e).notFound)==null?void 0:v.linkLabel)??"go to home"},L(((y=r(e).notFound)==null?void 0:y.linkText)??"Take me home"),9,at)])])}}}),it=k(rt,[["__scopeId","data-v-951cab6c"]]);function Me(o,e){if(Array.isArray(o))return J(o);if(o==null)return[];e=ie(e);const t=Object.keys(o).sort((n,i)=>i.split("/").length-n.split("/").length).find(n=>e.startsWith(ie(n))),s=t?o[t]:[];return Array.isArray(s)?J(s):J(s.items,s.base)}function lt(o){const e=[];let t=0;for(const s in o){const n=o[s];if(n.items){t=e.push(n);continue}e[t]||e.push({items:[]}),e[t].items.push(n)}return e}function ct(o){const e=[];function t(s){for(const n of s)n.text&&n.link&&e.push({text:n.text,link:n.link,docFooterText:n.docFooterText}),n.items&&t(n.items)}return t(o),e}function le(o,e){return Array.isArray(e)?e.some(t=>le(o,t)):q(o,e.link)?!0:e.items?le(o,e.items):!1}function J(o,e){return[...o].map(t=>{const s={...t},n=s.base||e;return n&&s.link&&(s.link=n+s.link),s.items&&(s.items=J(s.items,n)),s})}function G(){const{frontmatter:o,page:e,theme:t}=P(),s=re("(min-width: 960px)"),n=M(!1),i=g(()=>{const A=t.value.sidebar,T=e.value.relativePath;return A?Me(A,T):[]}),u=M(i.value);O(i,(A,T)=>{JSON.stringify(A)!==JSON.stringify(T)&&(u.value=i.value)});const f=g(()=>o.value.sidebar!==!1&&u.value.length>0&&o.value.layout!=="home"),v=g(()=>y?o.value.aside==null?t.value.aside==="left":o.value.aside==="left":!1),y=g(()=>o.value.layout==="home"?!1:o.value.aside!=null?!!o.value.aside:t.value.aside!==!1),V=g(()=>f.value&&s.value),$=g(()=>f.value?lt(u.value):[]);function S(){n.value=!0}function w(){n.value=!1}function B(){n.value?w():S()}return{isOpen:n,sidebar:u,sidebarGroups:$,hasSidebar:f,hasAside:y,leftAside:v,isSidebarEnabled:V,open:S,close:w,toggle:B}}function ut(o,e){let t;Q(()=>{t=o.value?document.activeElement:void 0}),K(()=>{window.addEventListener("keyup",s)}),ve(()=>{window.removeEventListener("keyup",s)});function s(n){n.key==="Escape"&&o.value&&(e(),t==null||t.focus())}}function dt(o){const{page:e,hash:t}=P(),s=M(!1),n=g(()=>o.value.collapsed!=null),i=g(()=>!!o.value.link),u=M(!1),f=()=>{u.value=q(e.value.relativePath,o.value.link)};O([e,o,t],f),K(f);const v=g(()=>u.value?!0:o.value.items?le(e.value.relativePath,o.value.items):!1),y=g(()=>!!(o.value.items&&o.value.items.length));Q(()=>{s.value=!!(n.value&&o.value.collapsed)}),pe(()=>{(u.value||v.value)&&(s.value=!1)});function V(){n.value&&(s.value=!s.value)}return{collapsed:s,collapsible:n,isLink:i,isActiveLink:u,hasActiveLink:v,hasChildren:y,toggle:V}}function vt(){const{hasSidebar:o}=G(),e=re("(min-width: 960px)"),t=re("(min-width: 1280px)");return{isAsideEnabled:g(()=>!t.value&&!e.value?!1:o.value?t.value:e.value)}}const ce=[];function Ie(o){return typeof o.outline=="object"&&!Array.isArray(o.outline)&&o.outline.label||o.outlineTitle||"On this page"}function me(o){const e=[...document.querySelectorAll(".VPDoc :where(h1,h2,h3,h4,h5,h6)")].filter(t=>t.id&&t.hasChildNodes()).map(t=>{const s=Number(t.tagName[1]);return{element:t,title:pt(t),link:"#"+t.id,level:s}});return ft(e,o)}function pt(o){let e="";for(const t of o.childNodes)if(t.nodeType===1){if(t.classList.contains("VPBadge")||t.classList.contains("header-anchor")||t.classList.contains("ignore-header"))continue;e+=t.textContent}else t.nodeType===3&&(e+=t.textContent);return e.trim()}function ft(o,e){if(e===!1)return[];const t=(typeof e=="object"&&!Array.isArray(e)?e.level:e)||2,[s,n]=typeof t=="number"?[t,t]:t==="deep"?[2,6]:t;return _t(o,s,n)}function mt(o,e){const{isAsideEnabled:t}=vt(),s=Ze(i,100);let n=null;K(()=>{requestAnimationFrame(i),window.addEventListener("scroll",s)}),Fe(()=>{u(location.hash)}),ve(()=>{window.removeEventListener("scroll",s)});function i(){if(!t.value)return;const f=window.scrollY,v=window.innerHeight,y=document.body.offsetHeight,V=Math.abs(f+v-y)<1,$=ce.map(({element:w,link:B})=>({link:B,top:ht(w)})).filter(({top:w})=>!Number.isNaN(w)).sort((w,B)=>w.top-B.top);if(!$.length){u(null);return}if(f<1){u(null);return}if(V){u($[$.length-1].link);return}let S=null;for(const{link:w,top:B}of $){if(B>f+De()+4)break;S=w}u(S)}function u(f){n&&n.classList.remove("active"),f==null?n=null:n=o.value.querySelector(`a[href="${decodeURIComponent(f)}"]`);const v=n;v?(v.classList.add("active"),e.value.style.top=v.offsetTop+39+"px",e.value.style.opacity="1"):(e.value.style.top="33px",e.value.style.opacity="0")}}function ht(o){let e=0;for(;o!==document.body;){if(o===null)return NaN;e+=o.offsetTop,o=o.offsetParent}return e}function _t(o,e,t){ce.length=0;const s=[],n=[];return o.forEach(i=>{const u={...i,children:[]};let f=n[n.length-1];for(;f&&f.level>=u.level;)n.pop(),f=n[n.length-1];if(u.element.classList.contains("ignore-header")||f&&"shouldIgnore"in f){n.push({level:u.level,shouldIgnore:!0});return}u.level>t||u.level{const n=j("VPDocOutlineItem",!0);return a(),l("ul",{class:N(["VPDocOutlineItem",t.root?"root":"nested"])},[(a(!0),l(I,null,H(t.headers,({children:i,link:u,title:f})=>(a(),l("li",null,[d("a",{class:"outline-link",href:u,onClick:e,title:f},L(f),9,kt),i!=null&&i.length?(a(),b(n,{key:0,headers:i},null,8,["headers"])):m("",!0)]))),256))],2)}}}),we=k(bt,[["__scopeId","data-v-3f927ebe"]]),gt={class:"content"},$t={"aria-level":"2",class:"outline-title",id:"doc-outline-aria-label",role:"heading"},yt=h({__name:"VPDocAsideOutline",setup(o){const{frontmatter:e,theme:t}=P(),s=Pe([]);X(()=>{s.value=me(e.value.outline??t.value.outline)});const n=M(),i=M();return mt(n,i),(u,f)=>(a(),l("nav",{"aria-labelledby":"doc-outline-aria-label",class:N(["VPDocAsideOutline",{"has-outline":s.value.length>0}]),ref_key:"container",ref:n},[d("div",gt,[d("div",{class:"outline-marker",ref_key:"marker",ref:i},null,512),d("div",$t,L(r(Ie)(r(t))),1),_(we,{headers:s.value,root:!0},null,8,["headers"])])],2))}}),Pt=k(yt,[["__scopeId","data-v-b38bf2ff"]]),Vt={class:"VPDocAsideCarbonAds"},Lt=h({__name:"VPDocAsideCarbonAds",props:{carbonAds:{}},setup(o){const e=()=>null;return(t,s)=>(a(),l("div",Vt,[_(r(e),{"carbon-ads":t.carbonAds},null,8,["carbon-ads"])]))}}),St={class:"VPDocAside"},Tt=h({__name:"VPDocAside",setup(o){const{theme:e}=P();return(t,s)=>(a(),l("div",St,[c(t.$slots,"aside-top",{},void 0,!0),c(t.$slots,"aside-outline-before",{},void 0,!0),_(Pt),c(t.$slots,"aside-outline-after",{},void 0,!0),s[0]||(s[0]=d("div",{class:"spacer"},null,-1)),c(t.$slots,"aside-ads-before",{},void 0,!0),r(e).carbonAds?(a(),b(Lt,{key:0,"carbon-ads":r(e).carbonAds},null,8,["carbon-ads"])):m("",!0),c(t.$slots,"aside-ads-after",{},void 0,!0),c(t.$slots,"aside-bottom",{},void 0,!0)]))}}),Nt=k(Tt,[["__scopeId","data-v-6d7b3c46"]]);function Mt(){const{theme:o,page:e}=P();return g(()=>{const{text:t="Edit this page",pattern:s=""}=o.value.editLink||{};let n;return typeof s=="function"?n=s(e.value):n=s.replace(/:path/g,e.value.filePath),{url:n,text:t}})}function It(){const{page:o,theme:e,frontmatter:t}=P();return g(()=>{var y,V,$,S,w,B,A,T;const s=Me(e.value.sidebar,o.value.relativePath),n=ct(s),i=wt(n,C=>C.link.replace(/[?#].*$/,"")),u=i.findIndex(C=>q(o.value.relativePath,C.link)),f=((y=e.value.docFooter)==null?void 0:y.prev)===!1&&!t.value.prev||t.value.prev===!1,v=((V=e.value.docFooter)==null?void 0:V.next)===!1&&!t.value.next||t.value.next===!1;return{prev:f?void 0:{text:(typeof t.value.prev=="string"?t.value.prev:typeof t.value.prev=="object"?t.value.prev.text:void 0)??(($=i[u-1])==null?void 0:$.docFooterText)??((S=i[u-1])==null?void 0:S.text),link:(typeof t.value.prev=="object"?t.value.prev.link:void 0)??((w=i[u-1])==null?void 0:w.link)},next:v?void 0:{text:(typeof t.value.next=="string"?t.value.next:typeof t.value.next=="object"?t.value.next.text:void 0)??((B=i[u+1])==null?void 0:B.docFooterText)??((A=i[u+1])==null?void 0:A.text),link:(typeof t.value.next=="object"?t.value.next.link:void 0)??((T=i[u+1])==null?void 0:T.link)}}})}function wt(o,e){const t=new Set;return o.filter(s=>{const n=e(s);return t.has(n)?!1:t.add(n)})}const E=h({__name:"VPLink",props:{tag:{},href:{},noIcon:{type:Boolean},target:{},rel:{}},setup(o){const e=o,t=g(()=>e.tag??(e.href?"a":"span")),s=g(()=>e.href&&Ve.test(e.href)||e.target==="_blank");return(n,i)=>(a(),b(D(t.value),{class:N(["VPLink",{link:n.href,"vp-external-link-icon":s.value,"no-icon":n.noIcon}]),href:n.href?r(fe)(n.href):void 0,target:n.target??(s.value?"_blank":void 0),rel:n.rel??(s.value?"noreferrer":void 0)},{default:p(()=>[c(n.$slots,"default")]),_:3},8,["class","href","target","rel"]))}}),Bt={class:"VPLastUpdated"},At=["datetime"],Ht=h({__name:"VPDocFooterLastUpdated",setup(o){const{theme:e,page:t,lang:s}=P(),n=g(()=>new Date(t.value.lastUpdated)),i=g(()=>n.value.toISOString()),u=M("");return K(()=>{Q(()=>{var f,v,y;u.value=new Intl.DateTimeFormat((v=(f=e.value.lastUpdated)==null?void 0:f.formatOptions)!=null&&v.forceLocale?s.value:void 0,((y=e.value.lastUpdated)==null?void 0:y.formatOptions)??{dateStyle:"short",timeStyle:"short"}).format(n.value)})}),(f,v)=>{var y;return a(),l("p",Bt,[F(L(((y=r(e).lastUpdated)==null?void 0:y.text)||r(e).lastUpdatedText||"Last updated")+": ",1),d("time",{datetime:i.value},L(u.value),9,At)])}}}),Ct=k(Ht,[["__scopeId","data-v-475f71b8"]]),Et={key:0,class:"VPDocFooter"},Ft={key:0,class:"edit-info"},Dt={key:0,class:"edit-link"},Ot={key:1,class:"last-updated"},Gt={key:1,class:"prev-next","aria-labelledby":"doc-footer-aria-label"},Ut={class:"pager"},zt=["innerHTML"],jt=["innerHTML"],qt={class:"pager"},Kt=["innerHTML"],Wt=["innerHTML"],Rt=h({__name:"VPDocFooter",setup(o){const{theme:e,page:t,frontmatter:s}=P(),n=Mt(),i=It(),u=g(()=>e.value.editLink&&s.value.editLink!==!1),f=g(()=>t.value.lastUpdated),v=g(()=>u.value||f.value||i.value.prev||i.value.next);return(y,V)=>{var $,S,w,B;return v.value?(a(),l("footer",Et,[c(y.$slots,"doc-footer-before",{},void 0,!0),u.value||f.value?(a(),l("div",Ft,[u.value?(a(),l("div",Dt,[_(E,{class:"edit-link-button",href:r(n).url,"no-icon":!0},{default:p(()=>[V[0]||(V[0]=d("span",{class:"vpi-square-pen edit-link-icon"},null,-1)),F(" "+L(r(n).text),1)]),_:1},8,["href"])])):m("",!0),f.value?(a(),l("div",Ot,[_(Ct)])):m("",!0)])):m("",!0),($=r(i).prev)!=null&&$.link||(S=r(i).next)!=null&&S.link?(a(),l("nav",Gt,[V[1]||(V[1]=d("span",{class:"visually-hidden",id:"doc-footer-aria-label"},"Pager",-1)),d("div",Ut,[(w=r(i).prev)!=null&&w.link?(a(),b(E,{key:0,class:"pager-link prev",href:r(i).prev.link},{default:p(()=>{var A;return[d("span",{class:"desc",innerHTML:((A=r(e).docFooter)==null?void 0:A.prev)||"Previous page"},null,8,zt),d("span",{class:"title",innerHTML:r(i).prev.text},null,8,jt)]}),_:1},8,["href"])):m("",!0)]),d("div",qt,[(B=r(i).next)!=null&&B.link?(a(),b(E,{key:0,class:"pager-link next",href:r(i).next.link},{default:p(()=>{var A;return[d("span",{class:"desc",innerHTML:((A=r(e).docFooter)==null?void 0:A.next)||"Next page"},null,8,Kt),d("span",{class:"title",innerHTML:r(i).next.text},null,8,Wt)]}),_:1},8,["href"])):m("",!0)])])):m("",!0)])):m("",!0)}}}),Jt=k(Rt,[["__scopeId","data-v-4f9813fa"]]),Yt={class:"container"},Qt={class:"aside-container"},Xt={class:"aside-content"},Zt={class:"content"},xt={class:"content-container"},en={class:"main"},tn=h({__name:"VPDoc",setup(o){const{theme:e}=P(),t=Z(),{hasSidebar:s,hasAside:n,leftAside:i}=G(),u=g(()=>t.path.replace(/[./]+/g,"_").replace(/_html$/,""));return(f,v)=>{const y=j("Content");return a(),l("div",{class:N(["VPDoc",{"has-sidebar":r(s),"has-aside":r(n)}])},[c(f.$slots,"doc-top",{},void 0,!0),d("div",Yt,[r(n)?(a(),l("div",{key:0,class:N(["aside",{"left-aside":r(i)}])},[v[0]||(v[0]=d("div",{class:"aside-curtain"},null,-1)),d("div",Qt,[d("div",Xt,[_(Nt,null,{"aside-top":p(()=>[c(f.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":p(()=>[c(f.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":p(()=>[c(f.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":p(()=>[c(f.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":p(()=>[c(f.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":p(()=>[c(f.$slots,"aside-ads-after",{},void 0,!0)]),_:3})])])],2)):m("",!0),d("div",Zt,[d("div",xt,[c(f.$slots,"doc-before",{},void 0,!0),d("main",en,[_(y,{class:N(["vp-doc",[u.value,r(e).externalLinkIcon&&"external-link-icon-enabled"]])},null,8,["class"])]),_(Jt,null,{"doc-footer-before":p(()=>[c(f.$slots,"doc-footer-before",{},void 0,!0)]),_:3}),c(f.$slots,"doc-after",{},void 0,!0)])])]),c(f.$slots,"doc-bottom",{},void 0,!0)],2)}}}),nn=k(tn,[["__scopeId","data-v-83890dd9"]]),sn=h({__name:"VPButton",props:{tag:{},size:{default:"medium"},theme:{default:"brand"},text:{},href:{},target:{},rel:{}},setup(o){const e=o,t=g(()=>e.href&&Ve.test(e.href)),s=g(()=>e.tag||(e.href?"a":"button"));return(n,i)=>(a(),b(D(s.value),{class:N(["VPButton",[n.size,n.theme]]),href:n.href?r(fe)(n.href):void 0,target:e.target??(t.value?"_blank":void 0),rel:e.rel??(t.value?"noreferrer":void 0)},{default:p(()=>[F(L(n.text),1)]),_:1},8,["class","href","target","rel"]))}}),on=k(sn,[["__scopeId","data-v-906d7fb4"]]),an=["src","alt"],rn=h({inheritAttrs:!1,__name:"VPImage",props:{image:{},alt:{}},setup(o){return(e,t)=>{const s=j("VPImage",!0);return e.image?(a(),l(I,{key:0},[typeof e.image=="string"||"src"in e.image?(a(),l("img",z({key:0,class:"VPImage"},typeof e.image=="string"?e.$attrs:{...e.image,...e.$attrs},{src:r(de)(typeof e.image=="string"?e.image:e.image.src),alt:e.alt??(typeof e.image=="string"?"":e.image.alt||"")}),null,16,an)):(a(),l(I,{key:1},[_(s,z({class:"dark",image:e.image.dark,alt:e.image.alt},e.$attrs),null,16,["image","alt"]),_(s,z({class:"light",image:e.image.light,alt:e.image.alt},e.$attrs),null,16,["image","alt"])],64))],64)):m("",!0)}}}),Y=k(rn,[["__scopeId","data-v-35a7d0b8"]]),ln={class:"container"},cn={class:"main"},un={key:0,class:"name"},dn=["innerHTML"],vn=["innerHTML"],pn=["innerHTML"],fn={key:0,class:"actions"},mn={key:0,class:"image"},hn={class:"image-container"},_n=h({__name:"VPHero",props:{name:{},text:{},tagline:{},image:{},actions:{}},setup(o){const e=x("hero-image-slot-exists");return(t,s)=>(a(),l("div",{class:N(["VPHero",{"has-image":t.image||r(e)}])},[d("div",ln,[d("div",cn,[c(t.$slots,"home-hero-info-before",{},void 0,!0),c(t.$slots,"home-hero-info",{},()=>[t.name?(a(),l("h1",un,[d("span",{innerHTML:t.name,class:"clip"},null,8,dn)])):m("",!0),t.text?(a(),l("p",{key:1,innerHTML:t.text,class:"text"},null,8,vn)):m("",!0),t.tagline?(a(),l("p",{key:2,innerHTML:t.tagline,class:"tagline"},null,8,pn)):m("",!0)],!0),c(t.$slots,"home-hero-info-after",{},void 0,!0),t.actions?(a(),l("div",fn,[(a(!0),l(I,null,H(t.actions,n=>(a(),l("div",{key:n.link,class:"action"},[_(on,{tag:"a",size:"medium",theme:n.theme,text:n.text,href:n.link,target:n.target,rel:n.rel},null,8,["theme","text","href","target","rel"])]))),128))])):m("",!0),c(t.$slots,"home-hero-actions-after",{},void 0,!0)]),t.image||r(e)?(a(),l("div",mn,[d("div",hn,[s[0]||(s[0]=d("div",{class:"image-bg"},null,-1)),c(t.$slots,"home-hero-image",{},()=>[t.image?(a(),b(Y,{key:0,class:"image-src",image:t.image},null,8,["image"])):m("",!0)],!0)])])):m("",!0)])],2))}}),kn=k(_n,[["__scopeId","data-v-955009fc"]]),bn=h({__name:"VPHomeHero",setup(o){const{frontmatter:e}=P();return(t,s)=>r(e).hero?(a(),b(kn,{key:0,class:"VPHomeHero",name:r(e).hero.name,text:r(e).hero.text,tagline:r(e).hero.tagline,image:r(e).hero.image,actions:r(e).hero.actions},{"home-hero-info-before":p(()=>[c(t.$slots,"home-hero-info-before")]),"home-hero-info":p(()=>[c(t.$slots,"home-hero-info")]),"home-hero-info-after":p(()=>[c(t.$slots,"home-hero-info-after")]),"home-hero-actions-after":p(()=>[c(t.$slots,"home-hero-actions-after")]),"home-hero-image":p(()=>[c(t.$slots,"home-hero-image")]),_:3},8,["name","text","tagline","image","actions"])):m("",!0)}}),gn={class:"box"},$n={key:0,class:"icon"},yn=["innerHTML"],Pn=["innerHTML"],Vn=["innerHTML"],Ln={key:4,class:"link-text"},Sn={class:"link-text-value"},Tn=h({__name:"VPFeature",props:{icon:{},title:{},details:{},link:{},linkText:{},rel:{},target:{}},setup(o){return(e,t)=>(a(),b(E,{class:"VPFeature",href:e.link,rel:e.rel,target:e.target,"no-icon":!0,tag:e.link?"a":"div"},{default:p(()=>[d("article",gn,[typeof e.icon=="object"&&e.icon.wrap?(a(),l("div",$n,[_(Y,{image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])])):typeof e.icon=="object"?(a(),b(Y,{key:1,image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])):e.icon?(a(),l("div",{key:2,class:"icon",innerHTML:e.icon},null,8,yn)):m("",!0),d("h2",{class:"title",innerHTML:e.title},null,8,Pn),e.details?(a(),l("p",{key:3,class:"details",innerHTML:e.details},null,8,Vn)):m("",!0),e.linkText?(a(),l("div",Ln,[d("p",Sn,[F(L(e.linkText)+" ",1),t[0]||(t[0]=d("span",{class:"vpi-arrow-right link-text-icon"},null,-1))])])):m("",!0)])]),_:1},8,["href","rel","target","tag"]))}}),Nn=k(Tn,[["__scopeId","data-v-f5e9645b"]]),Mn={key:0,class:"VPFeatures"},In={class:"container"},wn={class:"items"},Bn=h({__name:"VPFeatures",props:{features:{}},setup(o){const e=o,t=g(()=>{const s=e.features.length;if(s){if(s===2)return"grid-2";if(s===3)return"grid-3";if(s%3===0)return"grid-6";if(s>3)return"grid-4"}else return});return(s,n)=>s.features?(a(),l("div",Mn,[d("div",In,[d("div",wn,[(a(!0),l(I,null,H(s.features,i=>(a(),l("div",{key:i.title,class:N(["item",[t.value]])},[_(Nn,{icon:i.icon,title:i.title,details:i.details,link:i.link,"link-text":i.linkText,rel:i.rel,target:i.target},null,8,["icon","title","details","link","link-text","rel","target"])],2))),128))])])])):m("",!0)}}),An=k(Bn,[["__scopeId","data-v-d0a190d7"]]),Hn=h({__name:"VPHomeFeatures",setup(o){const{frontmatter:e}=P();return(t,s)=>r(e).features?(a(),b(An,{key:0,class:"VPHomeFeatures",features:r(e).features},null,8,["features"])):m("",!0)}}),Cn=h({__name:"VPHomeContent",setup(o){const{width:e}=Oe({initialWidth:0,includeScrollbar:!1});return(t,s)=>(a(),l("div",{class:"vp-doc container",style:Le(r(e)?{"--vp-offset":`calc(50% - ${r(e)/2}px)`}:{})},[c(t.$slots,"default",{},void 0,!0)],4))}}),En=k(Cn,[["__scopeId","data-v-7a48a447"]]),Fn={class:"VPHome"},Dn=h({__name:"VPHome",setup(o){const{frontmatter:e}=P();return(t,s)=>{const n=j("Content");return a(),l("div",Fn,[c(t.$slots,"home-hero-before",{},void 0,!0),_(bn,null,{"home-hero-info-before":p(()=>[c(t.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":p(()=>[c(t.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":p(()=>[c(t.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":p(()=>[c(t.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":p(()=>[c(t.$slots,"home-hero-image",{},void 0,!0)]),_:3}),c(t.$slots,"home-hero-after",{},void 0,!0),c(t.$slots,"home-features-before",{},void 0,!0),_(Hn),c(t.$slots,"home-features-after",{},void 0,!0),r(e).markdownStyles!==!1?(a(),b(En,{key:0},{default:p(()=>[_(n)]),_:1})):(a(),b(n,{key:1}))])}}}),On=k(Dn,[["__scopeId","data-v-cbb6ec48"]]),Gn={},Un={class:"VPPage"};function zn(o,e){const t=j("Content");return a(),l("div",Un,[c(o.$slots,"page-top"),_(t),c(o.$slots,"page-bottom")])}const jn=k(Gn,[["render",zn]]),qn=h({__name:"VPContent",setup(o){const{page:e,frontmatter:t}=P(),{hasSidebar:s}=G();return(n,i)=>(a(),l("div",{class:N(["VPContent",{"has-sidebar":r(s),"is-home":r(t).layout==="home"}]),id:"VPContent"},[r(e).isNotFound?c(n.$slots,"not-found",{key:0},()=>[_(it)],!0):r(t).layout==="page"?(a(),b(jn,{key:1},{"page-top":p(()=>[c(n.$slots,"page-top",{},void 0,!0)]),"page-bottom":p(()=>[c(n.$slots,"page-bottom",{},void 0,!0)]),_:3})):r(t).layout==="home"?(a(),b(On,{key:2},{"home-hero-before":p(()=>[c(n.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":p(()=>[c(n.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":p(()=>[c(n.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":p(()=>[c(n.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":p(()=>[c(n.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":p(()=>[c(n.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":p(()=>[c(n.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":p(()=>[c(n.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":p(()=>[c(n.$slots,"home-features-after",{},void 0,!0)]),_:3})):r(t).layout&&r(t).layout!=="doc"?(a(),b(D(r(t).layout),{key:3})):(a(),b(nn,{key:4},{"doc-top":p(()=>[c(n.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":p(()=>[c(n.$slots,"doc-bottom",{},void 0,!0)]),"doc-footer-before":p(()=>[c(n.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":p(()=>[c(n.$slots,"doc-before",{},void 0,!0)]),"doc-after":p(()=>[c(n.$slots,"doc-after",{},void 0,!0)]),"aside-top":p(()=>[c(n.$slots,"aside-top",{},void 0,!0)]),"aside-outline-before":p(()=>[c(n.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":p(()=>[c(n.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":p(()=>[c(n.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":p(()=>[c(n.$slots,"aside-ads-after",{},void 0,!0)]),"aside-bottom":p(()=>[c(n.$slots,"aside-bottom",{},void 0,!0)]),_:3}))],2))}}),Kn=k(qn,[["__scopeId","data-v-91765379"]]),Wn={class:"container"},Rn=["innerHTML"],Jn=["innerHTML"],Yn=h({__name:"VPFooter",setup(o){const{theme:e,frontmatter:t}=P(),{hasSidebar:s}=G();return(n,i)=>r(e).footer&&r(t).footer!==!1?(a(),l("footer",{key:0,class:N(["VPFooter",{"has-sidebar":r(s)}])},[d("div",Wn,[r(e).footer.message?(a(),l("p",{key:0,class:"message",innerHTML:r(e).footer.message},null,8,Rn)):m("",!0),r(e).footer.copyright?(a(),l("p",{key:1,class:"copyright",innerHTML:r(e).footer.copyright},null,8,Jn)):m("",!0)])],2)):m("",!0)}}),Qn=k(Yn,[["__scopeId","data-v-c970a860"]]);function Xn(){const{theme:o,frontmatter:e}=P(),t=Pe([]),s=g(()=>t.value.length>0);return X(()=>{t.value=me(e.value.outline??o.value.outline)}),{headers:t,hasLocalNav:s}}const Zn={class:"menu-text"},xn={class:"header"},es={class:"outline"},ts=h({__name:"VPLocalNavOutlineDropdown",props:{headers:{},navHeight:{}},setup(o){const e=o,{theme:t}=P(),s=M(!1),n=M(0),i=M(),u=M();function f($){var S;(S=i.value)!=null&&S.contains($.target)||(s.value=!1)}O(s,$=>{if($){document.addEventListener("click",f);return}document.removeEventListener("click",f)}),Ge("Escape",()=>{s.value=!1}),X(()=>{s.value=!1});function v(){s.value=!s.value,n.value=window.innerHeight+Math.min(window.scrollY-e.navHeight,0)}function y($){$.target.classList.contains("outline-link")&&(u.value&&(u.value.style.transition="none"),Ue(()=>{s.value=!1}))}function V(){s.value=!1,window.scrollTo({top:0,left:0,behavior:"smooth"})}return($,S)=>(a(),l("div",{class:"VPLocalNavOutlineDropdown",style:Le({"--vp-vh":n.value+"px"}),ref_key:"main",ref:i},[$.headers.length>0?(a(),l("button",{key:0,onClick:v,class:N({open:s.value})},[d("span",Zn,L(r(Ie)(r(t))),1),S[0]||(S[0]=d("span",{class:"vpi-chevron-right icon"},null,-1))],2)):(a(),l("button",{key:1,onClick:V},L(r(t).returnToTopLabel||"Return to top"),1)),_(ue,{name:"flyout"},{default:p(()=>[s.value?(a(),l("div",{key:0,ref_key:"items",ref:u,class:"items",onClick:y},[d("div",xn,[d("a",{class:"top-link",href:"#",onClick:V},L(r(t).returnToTopLabel||"Return to top"),1)]),d("div",es,[_(we,{headers:$.headers},null,8,["headers"])])],512)):m("",!0)]),_:1})],4))}}),ns=k(ts,[["__scopeId","data-v-bc9dc845"]]),ss={class:"container"},os=["aria-expanded"],as={class:"menu-text"},rs=h({__name:"VPLocalNav",props:{open:{type:Boolean}},emits:["open-menu"],setup(o){const{theme:e,frontmatter:t}=P(),{hasSidebar:s}=G(),{headers:n}=Xn(),{y:i}=Se(),u=M(0);K(()=>{u.value=parseInt(getComputedStyle(document.documentElement).getPropertyValue("--vp-nav-height"))}),X(()=>{n.value=me(t.value.outline??e.value.outline)});const f=g(()=>n.value.length===0),v=g(()=>f.value&&!s.value),y=g(()=>({VPLocalNav:!0,"has-sidebar":s.value,empty:f.value,fixed:v.value}));return(V,$)=>r(t).layout!=="home"&&(!v.value||r(i)>=u.value)?(a(),l("div",{key:0,class:N(y.value)},[d("div",ss,[r(s)?(a(),l("button",{key:0,class:"menu","aria-expanded":V.open,"aria-controls":"VPSidebarNav",onClick:$[0]||($[0]=S=>V.$emit("open-menu"))},[$[1]||($[1]=d("span",{class:"vpi-align-left menu-icon"},null,-1)),d("span",as,L(r(e).sidebarMenuLabel||"Menu"),1)],8,os)):m("",!0),_(ns,{headers:r(n),navHeight:u.value},null,8,["headers","navHeight"])])],2)):m("",!0)}}),is=k(rs,[["__scopeId","data-v-070ab83d"]]);function ls(){const o=M(!1);function e(){o.value=!0,window.addEventListener("resize",n)}function t(){o.value=!1,window.removeEventListener("resize",n)}function s(){o.value?t():e()}function n(){window.outerWidth>=768&&t()}const i=Z();return O(()=>i.path,t),{isScreenOpen:o,openScreen:e,closeScreen:t,toggleScreen:s}}const cs={},us={class:"VPSwitch",type:"button",role:"switch"},ds={class:"check"},vs={key:0,class:"icon"};function ps(o,e){return a(),l("button",us,[d("span",ds,[o.$slots.default?(a(),l("span",vs,[c(o.$slots,"default",{},void 0,!0)])):m("",!0)])])}const fs=k(cs,[["render",ps],["__scopeId","data-v-4a1c76db"]]),ms=h({__name:"VPSwitchAppearance",setup(o){const{isDark:e,theme:t}=P(),s=x("toggle-appearance",()=>{e.value=!e.value}),n=M("");return pe(()=>{n.value=e.value?t.value.lightModeSwitchTitle||"Switch to light theme":t.value.darkModeSwitchTitle||"Switch to dark theme"}),(i,u)=>(a(),b(fs,{title:n.value,class:"VPSwitchAppearance","aria-checked":r(e),onClick:r(s)},{default:p(()=>u[0]||(u[0]=[d("span",{class:"vpi-sun sun"},null,-1),d("span",{class:"vpi-moon moon"},null,-1)])),_:1},8,["title","aria-checked","onClick"]))}}),he=k(ms,[["__scopeId","data-v-e40a8bb6"]]),hs={key:0,class:"VPNavBarAppearance"},_s=h({__name:"VPNavBarAppearance",setup(o){const{site:e}=P();return(t,s)=>r(e).appearance&&r(e).appearance!=="force-dark"&&r(e).appearance!=="force-auto"?(a(),l("div",hs,[_(he)])):m("",!0)}}),ks=k(_s,[["__scopeId","data-v-af096f4a"]]),_e=M();let Be=!1,ae=0;function bs(o){const e=M(!1);if(ee){!Be&&gs(),ae++;const t=O(_e,s=>{var n,i,u;s===o.el.value||(n=o.el.value)!=null&&n.contains(s)?(e.value=!0,(i=o.onFocus)==null||i.call(o)):(e.value=!1,(u=o.onBlur)==null||u.call(o))});ve(()=>{t(),ae--,ae||$s()})}return ze(e)}function gs(){document.addEventListener("focusin",Ae),Be=!0,_e.value=document.activeElement}function $s(){document.removeEventListener("focusin",Ae)}function Ae(){_e.value=document.activeElement}const ys={class:"VPMenuLink"},Ps=h({__name:"VPMenuLink",props:{item:{}},setup(o){const{page:e}=P();return(t,s)=>(a(),l("div",ys,[_(E,{class:N({active:r(q)(r(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel},{default:p(()=>[F(L(t.item.text),1)]),_:1},8,["class","href","target","rel"])]))}}),te=k(Ps,[["__scopeId","data-v-8b74d055"]]),Vs={class:"VPMenuGroup"},Ls={key:0,class:"title"},Ss=h({__name:"VPMenuGroup",props:{text:{},items:{}},setup(o){return(e,t)=>(a(),l("div",Vs,[e.text?(a(),l("p",Ls,L(e.text),1)):m("",!0),(a(!0),l(I,null,H(e.items,s=>(a(),l(I,null,["link"in s?(a(),b(te,{key:0,item:s},null,8,["item"])):m("",!0)],64))),256))]))}}),Ts=k(Ss,[["__scopeId","data-v-48c802d0"]]),Ns={class:"VPMenu"},Ms={key:0,class:"items"},Is=h({__name:"VPMenu",props:{items:{}},setup(o){return(e,t)=>(a(),l("div",Ns,[e.items?(a(),l("div",Ms,[(a(!0),l(I,null,H(e.items,s=>(a(),l(I,{key:JSON.stringify(s)},["link"in s?(a(),b(te,{key:0,item:s},null,8,["item"])):"component"in s?(a(),b(D(s.component),z({key:1,ref_for:!0},s.props),null,16)):(a(),b(Ts,{key:2,text:s.text,items:s.items},null,8,["text","items"]))],64))),128))])):m("",!0),c(e.$slots,"default",{},void 0,!0)]))}}),ws=k(Is,[["__scopeId","data-v-7dd3104a"]]),Bs=["aria-expanded","aria-label"],As={key:0,class:"text"},Hs=["innerHTML"],Cs={key:1,class:"vpi-more-horizontal icon"},Es={class:"menu"},Fs=h({__name:"VPFlyout",props:{icon:{},button:{},label:{},items:{}},setup(o){const e=M(!1),t=M();bs({el:t,onBlur:s});function s(){e.value=!1}return(n,i)=>(a(),l("div",{class:"VPFlyout",ref_key:"el",ref:t,onMouseenter:i[1]||(i[1]=u=>e.value=!0),onMouseleave:i[2]||(i[2]=u=>e.value=!1)},[d("button",{type:"button",class:"button","aria-haspopup":"true","aria-expanded":e.value,"aria-label":n.label,onClick:i[0]||(i[0]=u=>e.value=!e.value)},[n.button||n.icon?(a(),l("span",As,[n.icon?(a(),l("span",{key:0,class:N([n.icon,"option-icon"])},null,2)):m("",!0),n.button?(a(),l("span",{key:1,innerHTML:n.button},null,8,Hs)):m("",!0),i[3]||(i[3]=d("span",{class:"vpi-chevron-down text-icon"},null,-1))])):(a(),l("span",Cs))],8,Bs),d("div",Es,[_(ws,{items:n.items},{default:p(()=>[c(n.$slots,"default",{},void 0,!0)]),_:3},8,["items"])])],544))}}),ke=k(Fs,[["__scopeId","data-v-04f5c5e9"]]),Ds=["href","aria-label","innerHTML"],Os=h({__name:"VPSocialLink",props:{icon:{},link:{},ariaLabel:{}},setup(o){const e=o,t=g(()=>typeof e.icon=="object"?e.icon.svg:``);return(s,n)=>(a(),l("a",{class:"VPSocialLink no-icon",href:s.link,"aria-label":s.ariaLabel??(typeof s.icon=="string"?s.icon:""),target:"_blank",rel:"noopener",innerHTML:t.value},null,8,Ds))}}),Gs=k(Os,[["__scopeId","data-v-717b8b75"]]),Us={class:"VPSocialLinks"},zs=h({__name:"VPSocialLinks",props:{links:{}},setup(o){return(e,t)=>(a(),l("div",Us,[(a(!0),l(I,null,H(e.links,({link:s,icon:n,ariaLabel:i})=>(a(),b(Gs,{key:s,icon:n,link:s,ariaLabel:i},null,8,["icon","link","ariaLabel"]))),128))]))}}),ne=k(zs,[["__scopeId","data-v-ee7a9424"]]),js={key:0,class:"group translations"},qs={class:"trans-title"},Ks={key:1,class:"group"},Ws={class:"item appearance"},Rs={class:"label"},Js={class:"appearance-action"},Ys={key:2,class:"group"},Qs={class:"item social-links"},Xs=h({__name:"VPNavBarExtra",setup(o){const{site:e,theme:t}=P(),{localeLinks:s,currentLang:n}=R({correspondingLink:!0}),i=g(()=>s.value.length&&n.value.label||e.value.appearance||t.value.socialLinks);return(u,f)=>i.value?(a(),b(ke,{key:0,class:"VPNavBarExtra",label:"extra navigation"},{default:p(()=>[r(s).length&&r(n).label?(a(),l("div",js,[d("p",qs,L(r(n).label),1),(a(!0),l(I,null,H(r(s),v=>(a(),b(te,{key:v.link,item:v},null,8,["item"]))),128))])):m("",!0),r(e).appearance&&r(e).appearance!=="force-dark"&&r(e).appearance!=="force-auto"?(a(),l("div",Ks,[d("div",Ws,[d("p",Rs,L(r(t).darkModeSwitchLabel||"Appearance"),1),d("div",Js,[_(he)])])])):m("",!0),r(t).socialLinks?(a(),l("div",Ys,[d("div",Qs,[_(ne,{class:"social-links-list",links:r(t).socialLinks},null,8,["links"])])])):m("",!0)]),_:1})):m("",!0)}}),Zs=k(Xs,[["__scopeId","data-v-925effce"]]),xs=["aria-expanded"],eo=h({__name:"VPNavBarHamburger",props:{active:{type:Boolean}},emits:["click"],setup(o){return(e,t)=>(a(),l("button",{type:"button",class:N(["VPNavBarHamburger",{active:e.active}]),"aria-label":"mobile navigation","aria-expanded":e.active,"aria-controls":"VPNavScreen",onClick:t[0]||(t[0]=s=>e.$emit("click"))},t[1]||(t[1]=[d("span",{class:"container"},[d("span",{class:"top"}),d("span",{class:"middle"}),d("span",{class:"bottom"})],-1)]),10,xs))}}),to=k(eo,[["__scopeId","data-v-5dea55bf"]]),no=["innerHTML"],so=h({__name:"VPNavBarMenuLink",props:{item:{}},setup(o){const{page:e}=P();return(t,s)=>(a(),b(E,{class:N({VPNavBarMenuLink:!0,active:r(q)(r(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,noIcon:t.item.noIcon,target:t.item.target,rel:t.item.rel,tabindex:"0"},{default:p(()=>[d("span",{innerHTML:t.item.text},null,8,no)]),_:1},8,["class","href","noIcon","target","rel"]))}}),oo=k(so,[["__scopeId","data-v-ed5ac1f6"]]),ao=h({__name:"VPNavBarMenuGroup",props:{item:{}},setup(o){const e=o,{page:t}=P(),s=i=>"component"in i?!1:"link"in i?q(t.value.relativePath,i.link,!!e.item.activeMatch):i.items.some(s),n=g(()=>s(e.item));return(i,u)=>(a(),b(ke,{class:N({VPNavBarMenuGroup:!0,active:r(q)(r(t).relativePath,i.item.activeMatch,!!i.item.activeMatch)||n.value}),button:i.item.text,items:i.item.items},null,8,["class","button","items"]))}}),ro={key:0,"aria-labelledby":"main-nav-aria-label",class:"VPNavBarMenu"},io=h({__name:"VPNavBarMenu",setup(o){const{theme:e}=P();return(t,s)=>r(e).nav?(a(),l("nav",ro,[s[0]||(s[0]=d("span",{id:"main-nav-aria-label",class:"visually-hidden"}," Main Navigation ",-1)),(a(!0),l(I,null,H(r(e).nav,n=>(a(),l(I,{key:JSON.stringify(n)},["link"in n?(a(),b(oo,{key:0,item:n},null,8,["item"])):"component"in n?(a(),b(D(n.component),z({key:1,ref_for:!0},n.props),null,16)):(a(),b(ao,{key:2,item:n},null,8,["item"]))],64))),128))])):m("",!0)}}),lo=k(io,[["__scopeId","data-v-e6d46098"]]);function co(o){const{localeIndex:e,theme:t}=P();function s(n){var B,A,T;const i=n.split("."),u=(B=t.value.search)==null?void 0:B.options,f=u&&typeof u=="object",v=f&&((T=(A=u.locales)==null?void 0:A[e.value])==null?void 0:T.translations)||null,y=f&&u.translations||null;let V=v,$=y,S=o;const w=i.pop();for(const C of i){let U=null;const W=S==null?void 0:S[C];W&&(U=S=W);const se=$==null?void 0:$[C];se&&(U=$=se);const oe=V==null?void 0:V[C];oe&&(U=V=oe),W||(S=U),se||($=U),oe||(V=U)}return(V==null?void 0:V[w])??($==null?void 0:$[w])??(S==null?void 0:S[w])??""}return s}const uo=["aria-label"],vo={class:"DocSearch-Button-Container"},po={class:"DocSearch-Button-Placeholder"},ge=h({__name:"VPNavBarSearchButton",setup(o){const t=co({button:{buttonText:"Search",buttonAriaLabel:"Search"}});return(s,n)=>(a(),l("button",{type:"button",class:"DocSearch DocSearch-Button","aria-label":r(t)("button.buttonAriaLabel")},[d("span",vo,[n[0]||(n[0]=d("span",{class:"vp-icon DocSearch-Search-Icon"},null,-1)),d("span",po,L(r(t)("button.buttonText")),1)]),n[1]||(n[1]=d("span",{class:"DocSearch-Button-Keys"},[d("kbd",{class:"DocSearch-Button-Key"}),d("kbd",{class:"DocSearch-Button-Key"},"K")],-1))],8,uo))}}),fo={class:"VPNavBarSearch"},mo={id:"local-search"},ho={key:1,id:"docsearch"},_o=h({__name:"VPNavBarSearch",setup(o){const e=()=>null,t=()=>null,{theme:s}=P(),n=M(!1),i=M(!1);K(()=>{});function u(){n.value||(n.value=!0,setTimeout(f,16))}function f(){const V=new Event("keydown");V.key="k",V.metaKey=!0,window.dispatchEvent(V),setTimeout(()=>{document.querySelector(".DocSearch-Modal")||f()},16)}const v=M(!1),y="";return(V,$)=>{var S;return a(),l("div",fo,[r(y)==="local"?(a(),l(I,{key:0},[v.value?(a(),b(r(e),{key:0,onClose:$[0]||($[0]=w=>v.value=!1)})):m("",!0),d("div",mo,[_(ge,{onClick:$[1]||($[1]=w=>v.value=!0)})])],64)):r(y)==="algolia"?(a(),l(I,{key:1},[n.value?(a(),b(r(t),{key:0,algolia:((S=r(s).search)==null?void 0:S.options)??r(s).algolia,onVnodeBeforeMount:$[2]||($[2]=w=>i.value=!0)},null,8,["algolia"])):m("",!0),i.value?m("",!0):(a(),l("div",ho,[_(ge,{onClick:u})]))],64)):m("",!0)])}}}),ko=h({__name:"VPNavBarSocialLinks",setup(o){const{theme:e}=P();return(t,s)=>r(e).socialLinks?(a(),b(ne,{key:0,class:"VPNavBarSocialLinks",links:r(e).socialLinks},null,8,["links"])):m("",!0)}}),bo=k(ko,[["__scopeId","data-v-164c457f"]]),go=["href","rel","target"],$o={key:1},yo={key:2},Po=h({__name:"VPNavBarTitle",setup(o){const{site:e,theme:t}=P(),{hasSidebar:s}=G(),{currentLang:n}=R(),i=g(()=>{var v;return typeof t.value.logoLink=="string"?t.value.logoLink:(v=t.value.logoLink)==null?void 0:v.link}),u=g(()=>{var v;return typeof t.value.logoLink=="string"||(v=t.value.logoLink)==null?void 0:v.rel}),f=g(()=>{var v;return typeof t.value.logoLink=="string"||(v=t.value.logoLink)==null?void 0:v.target});return(v,y)=>(a(),l("div",{class:N(["VPNavBarTitle",{"has-sidebar":r(s)}])},[d("a",{class:"title",href:i.value??r(fe)(r(n).link),rel:u.value,target:f.value},[c(v.$slots,"nav-bar-title-before",{},void 0,!0),r(t).logo?(a(),b(Y,{key:0,class:"logo",image:r(t).logo},null,8,["image"])):m("",!0),r(t).siteTitle?(a(),l("span",$o,L(r(t).siteTitle),1)):r(t).siteTitle===void 0?(a(),l("span",yo,L(r(e).title),1)):m("",!0),c(v.$slots,"nav-bar-title-after",{},void 0,!0)],8,go)],2))}}),Vo=k(Po,[["__scopeId","data-v-28a961f9"]]),Lo={class:"items"},So={class:"title"},To=h({__name:"VPNavBarTranslations",setup(o){const{theme:e}=P(),{localeLinks:t,currentLang:s}=R({correspondingLink:!0});return(n,i)=>r(t).length&&r(s).label?(a(),b(ke,{key:0,class:"VPNavBarTranslations",icon:"vpi-languages",label:r(e).langMenuLabel||"Change language"},{default:p(()=>[d("div",Lo,[d("p",So,L(r(s).label),1),(a(!0),l(I,null,H(r(t),u=>(a(),b(te,{key:u.link,item:u},null,8,["item"]))),128))])]),_:1},8,["label"])):m("",!0)}}),No=k(To,[["__scopeId","data-v-c80d9ad0"]]),Mo={class:"wrapper"},Io={class:"container"},wo={class:"title"},Bo={class:"content"},Ao={class:"content-body"},Ho=h({__name:"VPNavBar",props:{isScreenOpen:{type:Boolean}},emits:["toggle-screen"],setup(o){const e=o,{y:t}=Se(),{hasSidebar:s}=G(),{frontmatter:n}=P(),i=M({});return pe(()=>{i.value={"has-sidebar":s.value,home:n.value.layout==="home",top:t.value===0,"screen-open":e.isScreenOpen}}),(u,f)=>(a(),l("div",{class:N(["VPNavBar",i.value])},[d("div",Mo,[d("div",Io,[d("div",wo,[_(Vo,null,{"nav-bar-title-before":p(()=>[c(u.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":p(()=>[c(u.$slots,"nav-bar-title-after",{},void 0,!0)]),_:3})]),d("div",Bo,[d("div",Ao,[c(u.$slots,"nav-bar-content-before",{},void 0,!0),_(_o,{class:"search"}),_(lo,{class:"menu"}),_(No,{class:"translations"}),_(ks,{class:"appearance"}),_(bo,{class:"social-links"}),_(Zs,{class:"extra"}),c(u.$slots,"nav-bar-content-after",{},void 0,!0),_(to,{class:"hamburger",active:u.isScreenOpen,onClick:f[0]||(f[0]=v=>u.$emit("toggle-screen"))},null,8,["active"])])])])]),f[1]||(f[1]=d("div",{class:"divider"},[d("div",{class:"divider-line"})],-1))],2))}}),Co=k(Ho,[["__scopeId","data-v-822684d1"]]),Eo={key:0,class:"VPNavScreenAppearance"},Fo={class:"text"},Do=h({__name:"VPNavScreenAppearance",setup(o){const{site:e,theme:t}=P();return(s,n)=>r(e).appearance&&r(e).appearance!=="force-dark"&&r(e).appearance!=="force-auto"?(a(),l("div",Eo,[d("p",Fo,L(r(t).darkModeSwitchLabel||"Appearance"),1),_(he)])):m("",!0)}}),Oo=k(Do,[["__scopeId","data-v-ffb44008"]]),Go=h({__name:"VPNavScreenMenuLink",props:{item:{}},setup(o){const e=x("close-screen");return(t,s)=>(a(),b(E,{class:"VPNavScreenMenuLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:r(e),innerHTML:t.item.text},null,8,["href","target","rel","onClick","innerHTML"]))}}),Uo=k(Go,[["__scopeId","data-v-27d04aeb"]]),zo=h({__name:"VPNavScreenMenuGroupLink",props:{item:{}},setup(o){const e=x("close-screen");return(t,s)=>(a(),b(E,{class:"VPNavScreenMenuGroupLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:r(e)},{default:p(()=>[F(L(t.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}}),He=k(zo,[["__scopeId","data-v-7179dbb7"]]),jo={class:"VPNavScreenMenuGroupSection"},qo={key:0,class:"title"},Ko=h({__name:"VPNavScreenMenuGroupSection",props:{text:{},items:{}},setup(o){return(e,t)=>(a(),l("div",jo,[e.text?(a(),l("p",qo,L(e.text),1)):m("",!0),(a(!0),l(I,null,H(e.items,s=>(a(),b(He,{key:s.text,item:s},null,8,["item"]))),128))]))}}),Wo=k(Ko,[["__scopeId","data-v-4b8941ac"]]),Ro=["aria-controls","aria-expanded"],Jo=["innerHTML"],Yo=["id"],Qo={key:0,class:"item"},Xo={key:1,class:"item"},Zo={key:2,class:"group"},xo=h({__name:"VPNavScreenMenuGroup",props:{text:{},items:{}},setup(o){const e=o,t=M(!1),s=g(()=>`NavScreenGroup-${e.text.replace(" ","-").toLowerCase()}`);function n(){t.value=!t.value}return(i,u)=>(a(),l("div",{class:N(["VPNavScreenMenuGroup",{open:t.value}])},[d("button",{class:"button","aria-controls":s.value,"aria-expanded":t.value,onClick:n},[d("span",{class:"button-text",innerHTML:i.text},null,8,Jo),u[0]||(u[0]=d("span",{class:"vpi-plus button-icon"},null,-1))],8,Ro),d("div",{id:s.value,class:"items"},[(a(!0),l(I,null,H(i.items,f=>(a(),l(I,{key:JSON.stringify(f)},["link"in f?(a(),l("div",Qo,[_(He,{item:f},null,8,["item"])])):"component"in f?(a(),l("div",Xo,[(a(),b(D(f.component),z({ref_for:!0},f.props,{"screen-menu":""}),null,16))])):(a(),l("div",Zo,[_(Wo,{text:f.text,items:f.items},null,8,["text","items"])]))],64))),128))],8,Yo)],2))}}),ea=k(xo,[["__scopeId","data-v-875057a5"]]),ta={key:0,class:"VPNavScreenMenu"},na=h({__name:"VPNavScreenMenu",setup(o){const{theme:e}=P();return(t,s)=>r(e).nav?(a(),l("nav",ta,[(a(!0),l(I,null,H(r(e).nav,n=>(a(),l(I,{key:JSON.stringify(n)},["link"in n?(a(),b(Uo,{key:0,item:n},null,8,["item"])):"component"in n?(a(),b(D(n.component),z({key:1,ref_for:!0},n.props,{"screen-menu":""}),null,16)):(a(),b(ea,{key:2,text:n.text||"",items:n.items},null,8,["text","items"]))],64))),128))])):m("",!0)}}),sa=h({__name:"VPNavScreenSocialLinks",setup(o){const{theme:e}=P();return(t,s)=>r(e).socialLinks?(a(),b(ne,{key:0,class:"VPNavScreenSocialLinks",links:r(e).socialLinks},null,8,["links"])):m("",!0)}}),oa={class:"list"},aa=h({__name:"VPNavScreenTranslations",setup(o){const{localeLinks:e,currentLang:t}=R({correspondingLink:!0}),s=M(!1);function n(){s.value=!s.value}return(i,u)=>r(e).length&&r(t).label?(a(),l("div",{key:0,class:N(["VPNavScreenTranslations",{open:s.value}])},[d("button",{class:"title",onClick:n},[u[0]||(u[0]=d("span",{class:"vpi-languages icon lang"},null,-1)),F(" "+L(r(t).label)+" ",1),u[1]||(u[1]=d("span",{class:"vpi-chevron-down icon chevron"},null,-1))]),d("ul",oa,[(a(!0),l(I,null,H(r(e),f=>(a(),l("li",{key:f.link,class:"item"},[_(E,{class:"link",href:f.link},{default:p(()=>[F(L(f.text),1)]),_:2},1032,["href"])]))),128))])],2)):m("",!0)}}),ra=k(aa,[["__scopeId","data-v-362991c2"]]),ia={class:"container"},la=h({__name:"VPNavScreen",props:{open:{type:Boolean}},setup(o){const e=M(null),t=Te(ee?document.body:null);return(s,n)=>(a(),b(ue,{name:"fade",onEnter:n[0]||(n[0]=i=>t.value=!0),onAfterLeave:n[1]||(n[1]=i=>t.value=!1)},{default:p(()=>[s.open?(a(),l("div",{key:0,class:"VPNavScreen",ref_key:"screen",ref:e,id:"VPNavScreen"},[d("div",ia,[c(s.$slots,"nav-screen-content-before",{},void 0,!0),_(na,{class:"menu"}),_(ra,{class:"translations"}),_(Oo,{class:"appearance"}),_(sa,{class:"social-links"}),c(s.$slots,"nav-screen-content-after",{},void 0,!0)])],512)):m("",!0)]),_:3}))}}),ca=k(la,[["__scopeId","data-v-833aabba"]]),ua={key:0,class:"VPNav"},da=h({__name:"VPNav",setup(o){const{isScreenOpen:e,closeScreen:t,toggleScreen:s}=ls(),{frontmatter:n}=P(),i=g(()=>n.value.navbar!==!1);return Ne("close-screen",t),Q(()=>{ee&&document.documentElement.classList.toggle("hide-nav",!i.value)}),(u,f)=>i.value?(a(),l("header",ua,[_(Co,{"is-screen-open":r(e),onToggleScreen:r(s)},{"nav-bar-title-before":p(()=>[c(u.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":p(()=>[c(u.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":p(()=>[c(u.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":p(()=>[c(u.$slots,"nav-bar-content-after",{},void 0,!0)]),_:3},8,["is-screen-open","onToggleScreen"]),_(ca,{open:r(e)},{"nav-screen-content-before":p(()=>[c(u.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":p(()=>[c(u.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3},8,["open"])])):m("",!0)}}),va=k(da,[["__scopeId","data-v-f1e365da"]]),pa=["role","tabindex"],fa={key:1,class:"items"},ma=h({__name:"VPSidebarItem",props:{item:{},depth:{}},setup(o){const e=o,{collapsed:t,collapsible:s,isLink:n,isActiveLink:i,hasActiveLink:u,hasChildren:f,toggle:v}=dt(g(()=>e.item)),y=g(()=>f.value?"section":"div"),V=g(()=>n.value?"a":"div"),$=g(()=>f.value?e.depth+2===7?"p":`h${e.depth+2}`:"p"),S=g(()=>n.value?void 0:"button"),w=g(()=>[[`level-${e.depth}`],{collapsible:s.value},{collapsed:t.value},{"is-link":n.value},{"is-active":i.value},{"has-active":u.value}]);function B(T){"key"in T&&T.key!=="Enter"||!e.item.link&&v()}function A(){e.item.link&&v()}return(T,C)=>{const U=j("VPSidebarItem",!0);return a(),b(D(y.value),{class:N(["VPSidebarItem",w.value])},{default:p(()=>[T.item.text?(a(),l("div",z({key:0,class:"item",role:S.value},je(T.item.items?{click:B,keydown:B}:{},!0),{tabindex:T.item.items&&0}),[C[1]||(C[1]=d("div",{class:"indicator"},null,-1)),T.item.link?(a(),b(E,{key:0,tag:V.value,class:"link",href:T.item.link,rel:T.item.rel,target:T.item.target},{default:p(()=>[(a(),b(D($.value),{class:"text",innerHTML:T.item.text},null,8,["innerHTML"]))]),_:1},8,["tag","href","rel","target"])):(a(),b(D($.value),{key:1,class:"text",innerHTML:T.item.text},null,8,["innerHTML"])),T.item.collapsed!=null&&T.item.items&&T.item.items.length?(a(),l("div",{key:2,class:"caret",role:"button","aria-label":"toggle section",onClick:A,onKeydown:qe(A,["enter"]),tabindex:"0"},C[0]||(C[0]=[d("span",{class:"vpi-chevron-right caret-icon"},null,-1)]),32)):m("",!0)],16,pa)):m("",!0),T.item.items&&T.item.items.length?(a(),l("div",fa,[T.depth<5?(a(!0),l(I,{key:0},H(T.item.items,W=>(a(),b(U,{key:W.text,item:W,depth:T.depth+1},null,8,["item","depth"]))),128)):m("",!0)])):m("",!0)]),_:1},8,["class"])}}}),ha=k(ma,[["__scopeId","data-v-196b2e5f"]]),_a=h({__name:"VPSidebarGroup",props:{items:{}},setup(o){const e=M(!0);let t=null;return K(()=>{t=setTimeout(()=>{t=null,e.value=!1},300)}),Ke(()=>{t!=null&&(clearTimeout(t),t=null)}),(s,n)=>(a(!0),l(I,null,H(s.items,i=>(a(),l("div",{key:i.text,class:N(["group",{"no-transition":e.value}])},[_(ha,{item:i,depth:0},null,8,["item"])],2))),128))}}),ka=k(_a,[["__scopeId","data-v-9e426adc"]]),ba={class:"nav",id:"VPSidebarNav","aria-labelledby":"sidebar-aria-label",tabindex:"-1"},ga=h({__name:"VPSidebar",props:{open:{type:Boolean}},setup(o){const{sidebarGroups:e,hasSidebar:t}=G(),s=o,n=M(null),i=Te(ee?document.body:null);O([s,n],()=>{var f;s.open?(i.value=!0,(f=n.value)==null||f.focus()):i.value=!1},{immediate:!0,flush:"post"});const u=M(0);return O(e,()=>{u.value+=1},{deep:!0}),(f,v)=>r(t)?(a(),l("aside",{key:0,class:N(["VPSidebar",{open:f.open}]),ref_key:"navEl",ref:n,onClick:v[0]||(v[0]=We(()=>{},["stop"]))},[v[2]||(v[2]=d("div",{class:"curtain"},null,-1)),d("nav",ba,[v[1]||(v[1]=d("span",{class:"visually-hidden",id:"sidebar-aria-label"}," Sidebar Navigation ",-1)),c(f.$slots,"sidebar-nav-before",{},void 0,!0),(a(),b(ka,{items:r(e),key:u.value},null,8,["items"])),c(f.$slots,"sidebar-nav-after",{},void 0,!0)])],2)):m("",!0)}}),$a=k(ga,[["__scopeId","data-v-18756405"]]),ya=h({__name:"VPSkipLink",setup(o){const e=Z(),t=M();O(()=>e.path,()=>t.value.focus());function s({target:n}){const i=document.getElementById(decodeURIComponent(n.hash).slice(1));if(i){const u=()=>{i.removeAttribute("tabindex"),i.removeEventListener("blur",u)};i.setAttribute("tabindex","-1"),i.addEventListener("blur",u),i.focus(),window.scrollTo(0,0)}}return(n,i)=>(a(),l(I,null,[d("span",{ref_key:"backToTop",ref:t,tabindex:"-1"},null,512),d("a",{href:"#VPContent",class:"VPSkipLink visually-hidden",onClick:s}," Skip to content ")],64))}}),Pa=k(ya,[["__scopeId","data-v-c3508ec8"]]),Va=h({__name:"Layout",setup(o){const{isOpen:e,open:t,close:s}=G(),n=Z();O(()=>n.path,s),ut(e,s);const{frontmatter:i}=P(),u=Re(),f=g(()=>!!u["home-hero-image"]);return Ne("hero-image-slot-exists",f),(v,y)=>{const V=j("Content");return r(i).layout!==!1?(a(),l("div",{key:0,class:N(["Layout",r(i).pageClass])},[c(v.$slots,"layout-top",{},void 0,!0),_(Pa),_(Xe,{class:"backdrop",show:r(e),onClick:r(s)},null,8,["show","onClick"]),_(va,null,{"nav-bar-title-before":p(()=>[c(v.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":p(()=>[c(v.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":p(()=>[c(v.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":p(()=>[c(v.$slots,"nav-bar-content-after",{},void 0,!0)]),"nav-screen-content-before":p(()=>[c(v.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":p(()=>[c(v.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3}),_(is,{open:r(e),onOpenMenu:r(t)},null,8,["open","onOpenMenu"]),_($a,{open:r(e)},{"sidebar-nav-before":p(()=>[c(v.$slots,"sidebar-nav-before",{},void 0,!0)]),"sidebar-nav-after":p(()=>[c(v.$slots,"sidebar-nav-after",{},void 0,!0)]),_:3},8,["open"]),_(Kn,null,{"page-top":p(()=>[c(v.$slots,"page-top",{},void 0,!0)]),"page-bottom":p(()=>[c(v.$slots,"page-bottom",{},void 0,!0)]),"not-found":p(()=>[c(v.$slots,"not-found",{},void 0,!0)]),"home-hero-before":p(()=>[c(v.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":p(()=>[c(v.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":p(()=>[c(v.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":p(()=>[c(v.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":p(()=>[c(v.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":p(()=>[c(v.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":p(()=>[c(v.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":p(()=>[c(v.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":p(()=>[c(v.$slots,"home-features-after",{},void 0,!0)]),"doc-footer-before":p(()=>[c(v.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":p(()=>[c(v.$slots,"doc-before",{},void 0,!0)]),"doc-after":p(()=>[c(v.$slots,"doc-after",{},void 0,!0)]),"doc-top":p(()=>[c(v.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":p(()=>[c(v.$slots,"doc-bottom",{},void 0,!0)]),"aside-top":p(()=>[c(v.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":p(()=>[c(v.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":p(()=>[c(v.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":p(()=>[c(v.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":p(()=>[c(v.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":p(()=>[c(v.$slots,"aside-ads-after",{},void 0,!0)]),_:3}),_(Qn),c(v.$slots,"layout-bottom",{},void 0,!0)],2)):(a(),b(V,{key:1}))}}}),La=k(Va,[["__scopeId","data-v-a9a9e638"]]),Sa={},Ta={class:"VPTeamPage"};function Na(o,e){return a(),l("div",Ta,[c(o.$slots,"default")])}const er=k(Sa,[["render",Na],["__scopeId","data-v-c2f8e101"]]),Ma={},Ia={class:"VPTeamPageTitle"},wa={key:0,class:"title"},Ba={key:1,class:"lead"};function Aa(o,e){return a(),l("div",Ia,[o.$slots.title?(a(),l("h1",wa,[c(o.$slots,"title",{},void 0,!0)])):m("",!0),o.$slots.lead?(a(),l("p",Ba,[c(o.$slots,"lead",{},void 0,!0)])):m("",!0)])}const tr=k(Ma,[["render",Aa],["__scopeId","data-v-e277e15c"]]),Ha={class:"profile"},Ca={class:"avatar"},Ea=["src","alt"],Fa={class:"data"},Da={class:"name"},Oa={key:0,class:"affiliation"},Ga={key:0,class:"title"},Ua={key:1,class:"at"},za=["innerHTML"],ja={key:2,class:"links"},qa={key:0,class:"sp"},Ka=h({__name:"VPTeamMembersItem",props:{size:{default:"medium"},member:{}},setup(o){return(e,t)=>(a(),l("article",{class:N(["VPTeamMembersItem",[e.size]])},[d("div",Ha,[d("figure",Ca,[d("img",{class:"avatar-img",src:e.member.avatar,alt:e.member.name},null,8,Ea)]),d("div",Fa,[d("h1",Da,L(e.member.name),1),e.member.title||e.member.org?(a(),l("p",Oa,[e.member.title?(a(),l("span",Ga,L(e.member.title),1)):m("",!0),e.member.title&&e.member.org?(a(),l("span",Ua," @ ")):m("",!0),e.member.org?(a(),b(E,{key:2,class:N(["org",{link:e.member.orgLink}]),href:e.member.orgLink,"no-icon":""},{default:p(()=>[F(L(e.member.org),1)]),_:1},8,["class","href"])):m("",!0)])):m("",!0),e.member.desc?(a(),l("p",{key:1,class:"desc",innerHTML:e.member.desc},null,8,za)):m("",!0),e.member.links?(a(),l("div",ja,[_(ne,{links:e.member.links},null,8,["links"])])):m("",!0)])]),e.member.sponsor?(a(),l("div",qa,[_(E,{class:"sp-link",href:e.member.sponsor,"no-icon":""},{default:p(()=>[t[0]||(t[0]=d("span",{class:"vpi-heart sp-icon"},null,-1)),F(" "+L(e.member.actionText||"Sponsor"),1)]),_:1},8,["href"])])):m("",!0)],2))}}),Wa=k(Ka,[["__scopeId","data-v-f9987cb6"]]),Ra={class:"container"},Ja=h({__name:"VPTeamMembers",props:{size:{default:"medium"},members:{}},setup(o){const e=o,t=g(()=>[e.size,`count-${e.members.length}`]);return(s,n)=>(a(),l("div",{class:N(["VPTeamMembers",t.value])},[d("div",Ra,[(a(!0),l(I,null,H(s.members,i=>(a(),l("div",{key:i.name,class:"item"},[_(Wa,{size:s.size,member:i},null,8,["size","member"])]))),128))])],2))}}),nr=k(Ja,[["__scopeId","data-v-fba19bad"]]),$e={Layout:La,enhanceApp:({app:o})=>{o.component("Badge",Je)}},Ya={key:0},Qa=["href"],Xa={__name:"PackageBadge",setup(o){const{frontmatter:e}=ye();return(t,s)=>{const n=j("Badge");return r(e).package?(a(),l("div",Ya,[_(n,{class:"package",type:"info"},{default:p(()=>[d("a",{title:"Package",target:"_blank",href:`https://www.npmjs.com/package/${r(e).package}`},L(r(e).package),9,Qa)]),_:1})])):m("",!0)}}},Za=k(Xa,[["__scopeId","data-v-580af1dd"]]),sr={extends:$e,Layout(){return be($e.Layout,null,{"doc-before":()=>be(Za)})}};export{sr as R,tr as V,nr as a,er as b}; diff --git a/docs/assets/guides_custom-app.md.CCQq_MFP.js b/docs/assets/guides_custom-app.md.BUZaBU3U.js similarity index 98% rename from docs/assets/guides_custom-app.md.CCQq_MFP.js rename to docs/assets/guides_custom-app.md.BUZaBU3U.js index 830f4f87..aec4c851 100644 --- a/docs/assets/guides_custom-app.md.CCQq_MFP.js +++ b/docs/assets/guides_custom-app.md.BUZaBU3U.js @@ -1 +1 @@ -import{_ as a,c as t,a1 as r,o}from"./chunks/framework.S1oRGgk6.js";const d=JSON.parse('{"title":"Making a custom app","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Making a custom app | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Making a custom app | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/guides/custom-app"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/guides/custom-app"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/guides/custom-app"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"guides/custom-app.md","filePath":"guides/custom-app.md"}'),i={name:"guides/custom-app.md"};function n(p,e,s,l,c,u){return o(),t("div",null,e[0]||(e[0]=[r('

Making a custom app

There are two main ways to create custom applications for ProzillaOS:

  1. Internal app
  2. External app

An internal app lives inside the same repository as the OS itself. An external app has a separate repository and must therefore also be published to a package directory, like npm, before being usable in a ProzillaOS project. The internal app approach is the simplest one and easiest one to set up, while the other approach is a bit more technical.

1. Internal app

Prerequisites

This guide assumes you have already set up a basic project that implements ProzillaOS. You can use to getting started guide to set up a project with ProzillaOS.

Setup

Create a new folder where you can put the source code of your custom ProzillaOS application.

2. External app

Prerequisites

This guide assumes you have already set up a basic React project with TypeScript. To learn more about how to set up a React project, check out the official React documentation. The React documentation also has a guide on how to start using TypeScript in your React project.

Setup

',13)]))}const m=a(i,[["render",n]]);export{d as __pageData,m as default}; +import{_ as a,c as t,a3 as r,o}from"./chunks/framework.BAnOA2-A.js";const d=JSON.parse('{"title":"Making a custom app","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Making a custom app | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Making a custom app | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/guides/custom-app"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/guides/custom-app"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/guides/custom-app"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"guides/custom-app.md","filePath":"guides/custom-app.md"}'),i={name:"guides/custom-app.md"};function n(p,e,s,l,c,u){return o(),t("div",null,e[0]||(e[0]=[r('

Making a custom app

There are two main ways to create custom applications for ProzillaOS:

  1. Internal app
  2. External app

An internal app lives inside the same repository as the OS itself. An external app has a separate repository and must therefore also be published to a package directory, like npm, before being usable in a ProzillaOS project. The internal app approach is the simplest one and easiest one to set up, while the other approach is a bit more technical.

1. Internal app

Prerequisites

This guide assumes you have already set up a basic project that implements ProzillaOS. You can use to getting started guide to set up a project with ProzillaOS.

Setup

Create a new folder where you can put the source code of your custom ProzillaOS application.

2. External app

Prerequisites

This guide assumes you have already set up a basic React project with TypeScript. To learn more about how to set up a React project, check out the official React documentation. The React documentation also has a guide on how to start using TypeScript in your React project.

Setup

',13)]))}const m=a(i,[["render",n]]);export{d as __pageData,m as default}; diff --git a/docs/assets/guides_custom-app.md.CCQq_MFP.lean.js b/docs/assets/guides_custom-app.md.BUZaBU3U.lean.js similarity index 98% rename from docs/assets/guides_custom-app.md.CCQq_MFP.lean.js rename to docs/assets/guides_custom-app.md.BUZaBU3U.lean.js index 830f4f87..aec4c851 100644 --- a/docs/assets/guides_custom-app.md.CCQq_MFP.lean.js +++ b/docs/assets/guides_custom-app.md.BUZaBU3U.lean.js @@ -1 +1 @@ -import{_ as a,c as t,a1 as r,o}from"./chunks/framework.S1oRGgk6.js";const d=JSON.parse('{"title":"Making a custom app","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Making a custom app | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Making a custom app | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/guides/custom-app"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/guides/custom-app"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/guides/custom-app"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"guides/custom-app.md","filePath":"guides/custom-app.md"}'),i={name:"guides/custom-app.md"};function n(p,e,s,l,c,u){return o(),t("div",null,e[0]||(e[0]=[r('

Making a custom app

There are two main ways to create custom applications for ProzillaOS:

  1. Internal app
  2. External app

An internal app lives inside the same repository as the OS itself. An external app has a separate repository and must therefore also be published to a package directory, like npm, before being usable in a ProzillaOS project. The internal app approach is the simplest one and easiest one to set up, while the other approach is a bit more technical.

1. Internal app

Prerequisites

This guide assumes you have already set up a basic project that implements ProzillaOS. You can use to getting started guide to set up a project with ProzillaOS.

Setup

Create a new folder where you can put the source code of your custom ProzillaOS application.

2. External app

Prerequisites

This guide assumes you have already set up a basic React project with TypeScript. To learn more about how to set up a React project, check out the official React documentation. The React documentation also has a guide on how to start using TypeScript in your React project.

Setup

',13)]))}const m=a(i,[["render",n]]);export{d as __pageData,m as default}; +import{_ as a,c as t,a3 as r,o}from"./chunks/framework.BAnOA2-A.js";const d=JSON.parse('{"title":"Making a custom app","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Making a custom app | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Making a custom app | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/guides/custom-app"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/guides/custom-app"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/guides/custom-app"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"guides/custom-app.md","filePath":"guides/custom-app.md"}'),i={name:"guides/custom-app.md"};function n(p,e,s,l,c,u){return o(),t("div",null,e[0]||(e[0]=[r('

Making a custom app

There are two main ways to create custom applications for ProzillaOS:

  1. Internal app
  2. External app

An internal app lives inside the same repository as the OS itself. An external app has a separate repository and must therefore also be published to a package directory, like npm, before being usable in a ProzillaOS project. The internal app approach is the simplest one and easiest one to set up, while the other approach is a bit more technical.

1. Internal app

Prerequisites

This guide assumes you have already set up a basic project that implements ProzillaOS. You can use to getting started guide to set up a project with ProzillaOS.

Setup

Create a new folder where you can put the source code of your custom ProzillaOS application.

2. External app

Prerequisites

This guide assumes you have already set up a basic React project with TypeScript. To learn more about how to set up a React project, check out the official React documentation. The React documentation also has a guide on how to start using TypeScript in your React project.

Setup

',13)]))}const m=a(i,[["render",n]]);export{d as __pageData,m as default}; diff --git a/docs/assets/guides_getting-started.md.Bah3S_dU.js b/docs/assets/guides_getting-started.md.5c5bIai6.js similarity index 55% rename from docs/assets/guides_getting-started.md.Bah3S_dU.js rename to docs/assets/guides_getting-started.md.5c5bIai6.js index 32d93b54..dc444ea5 100644 --- a/docs/assets/guides_getting-started.md.Bah3S_dU.js +++ b/docs/assets/guides_getting-started.md.5c5bIai6.js @@ -1,20 +1,20 @@ -import{_ as i,c as a,a1 as t,o as e}from"./chunks/framework.S1oRGgk6.js";const D=JSON.parse('{"title":"Getting started","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Getting started | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Getting started | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/guides/getting-started"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/guides/getting-started"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/guides/getting-started"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"guides/getting-started.md","filePath":"guides/getting-started.md"}'),l={name:"guides/getting-started.md"};function n(p,s,h,k,r,o){return e(),a("div",null,s[0]||(s[0]=[t(`

Getting started

Prerequisites

This guide assumes you have already set up a basic React project with TypeScript. To learn more about how to set up a React project, check out the official React documentation. The React documentation also has a guide on how to start using TypeScript in your React project.

Installation

There are multiple ways to install ProzillaOS. The simplest way is to install the bundle package prozilla-os, which contains the core functionality as well as all standard applications.

bash
$ npm install prozilla-os
bash
$ yarn add prozilla-os
bash
$ pnpm add prozilla-os
bash
$ bun add prozilla-os

Alternatively, you can install the @prozilla-os/core package, which only contains the core functionality, and install the apps manually or create custom apps.

bash
$ npm install @prozilla-os/core
bash
$ yarn add @prozilla-os/core
bash
$ pnpm add @prozilla-os/core
bash
$ bun add @prozilla-os/core

Installing apps

Install apps by running the command below. Replace [app] with the id of the app you want to install.

bash
$ npm install @prozilla-os/[app]
bash
$ yarn add @prozilla-os/[app]
bash
$ pnpm add @prozilla-os/[app]
bash
$ bun add @prozilla-os/[app]

Usage

Your entry file should look something like this:

tsx
// index.tsx
+import{_ as i,c as a,a3 as t,o as e}from"./chunks/framework.BAnOA2-A.js";const d=JSON.parse('{"title":"Getting started","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Getting started | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Getting started | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/guides/getting-started"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/guides/getting-started"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/guides/getting-started"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"guides/getting-started.md","filePath":"guides/getting-started.md"}'),l={name:"guides/getting-started.md"};function n(p,s,h,k,F,r){return e(),a("div",null,s[0]||(s[0]=[t(`

Getting started

Prerequisites

This guide assumes you have already set up a basic React project with TypeScript. To learn more about how to set up a React project, check out the official React documentation. The React documentation also has a guide on how to start using TypeScript in your React project.

Installation

There are multiple ways to install ProzillaOS. The simplest way is to install the bundle package prozilla-os, which contains the core functionality as well as all standard applications.

bash
$ npm install prozilla-os
bash
$ yarn add prozilla-os
bash
$ pnpm add prozilla-os
bash
$ bun add prozilla-os

Alternatively, you can install the @prozilla-os/core package, which only contains the core functionality, and install the apps manually or create custom apps.

bash
$ npm install @prozilla-os/core
bash
$ yarn add @prozilla-os/core
bash
$ pnpm add @prozilla-os/core
bash
$ bun add @prozilla-os/core

Installing apps

Install apps by running the command below. Replace [app] with the id of the app you want to install.

bash
$ npm install @prozilla-os/[app]
bash
$ yarn add @prozilla-os/[app]
bash
$ pnpm add @prozilla-os/[app]
bash
$ bun add @prozilla-os/[app]

Usage

Your entry file should look something like this:

tsx
// index.tsx
 
-import React from "react";
-import ReactDOM from "react-dom/client";
-import { App } from "./App.tsx";
+import React from "react";
+import ReactDOM from "react-dom/client";
+import { App } from "./App.tsx";
 
-const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement);
-root.render(<React.StrictMode><App/></React.StrictMode>);

Change your <App> component to:

tsx
// App.tsx
+const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement);
+root.render(<React.StrictMode><App/></React.StrictMode>);

Change your <App> component to:

tsx
// App.tsx
 
-import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "prozilla-os";
+import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "prozilla-os";
 
 export function App(): ReactElement {
 	return <ProzillaOS
 		systemName={"Example"}
 		tagLine={"Powered by ProzillaOS"}
 		config={{
-			// Configuration
+			// Configuration
 		}}
 	>
 		<Taskbar/>
@@ -22,24 +22,24 @@ import{_ as i,c as a,a1 as t,o as e}from"./chunks/framework.S1oRGgk6.js";const D
 		<ModalsView/>
 		<Desktop/>
 	</ProzillaOS>;
-}

Replace "Example" with a system name of your choosing and "Power by ProzillaOS" by your tag line/short description.

If you don't want a taskbar/desktop/modal in your project, you can leave those components out. Unless you don't want to be able to open applications in your project, you will need to keep the <WindowsView> component.

CAUTION

Depending on how you installed ProzillaOS, your import statement will look slightly different. Make sure you are importing from the correct package that you installed previously.

Using apps

To start using applications in your project, use the appsConfig class to add a list of apps to your configuration.

tsx
<ProzillaOS
-	{/* Other props */}
+}

Replace "Example" with a system name of your choosing and "Power by ProzillaOS" by your tag line/short description.

If you don't want a taskbar/desktop/modal in your project, you can leave those components out. Unless you don't want to be able to open applications in your project, you will need to keep the <WindowsView> component.

CAUTION

Depending on how you installed ProzillaOS, your import statement will look slightly different. Make sure you are importing from the correct package that you installed previously.

Using apps

To start using applications in your project, use the appsConfig class to add a list of apps to your configuration.

tsx
<ProzillaOS
+	{/* Other props */}
 	config={{
-		apps: new appsConfig({
-			apps: [
-				// Applications go here
-			]
-		})
+		apps: new appsConfig({
+			apps: [
+				// Applications go here
+			]
+		})
 	}}
->

Example

Here is an example that shows you how to add the fileExplorer app:

tsx
import { fileExplorer } from "prozilla-os"
tsx
<ProzillaOS
-	{/* Other props */}
+>

Example

Here is an example that shows you how to add the fileExplorer app:

tsx
import { fileExplorer } from "prozilla-os"
tsx
<ProzillaOS
+	{/* Other props */}
 	config={{
-		apps: new appsConfig({
-			apps: [
-				fileExplorer.setName("Files")
-					.setDescription("Browse and manage your virtual files on ProzillaOS.")
-					.setIconUrl("/assets/apps/icons/file-explorer.svg")
-			]
-		})
+		apps: new appsConfig({
+			apps: [
+				fileExplorer.setName("Files")
+					.setDescription("Browse and manage your virtual files on ProzillaOS.")
+					.setIconUrl("/assets/apps/icons/file-explorer.svg")
+			]
+		})
 	}}
->

TIP

Move your configurations to separate files to make them more readable and keep a better overview of your different configurations. You can then import these configurations into your App.tsx file and use them as values for the config prop of the <ProzillaOS> component.

Once that's done, go ahead and start your project and open it in your browser to check it out. Congratulations, you've made your own operating system inside the browser!

Community

If you have questions or need help, reach out to the community on Discord.

`,30)]))}const F=i(l,[["render",n]]);export{D as __pageData,F as default}; +>

TIP

Move your configurations to separate files to make them more readable and keep a better overview of your different configurations. You can then import these configurations into your App.tsx file and use them as values for the config prop of the <ProzillaOS> component.

Once that's done, go ahead and start your project and open it in your browser to check it out. Congratulations, you've made your own operating system inside the browser!

Community

If you have questions or need help, reach out to the community on Discord.

`,30)]))}const D=i(l,[["render",n]]);export{d as __pageData,D as default}; diff --git a/docs/assets/guides_getting-started.md.Bah3S_dU.lean.js b/docs/assets/guides_getting-started.md.5c5bIai6.lean.js similarity index 55% rename from docs/assets/guides_getting-started.md.Bah3S_dU.lean.js rename to docs/assets/guides_getting-started.md.5c5bIai6.lean.js index 32d93b54..dc444ea5 100644 --- a/docs/assets/guides_getting-started.md.Bah3S_dU.lean.js +++ b/docs/assets/guides_getting-started.md.5c5bIai6.lean.js @@ -1,20 +1,20 @@ -import{_ as i,c as a,a1 as t,o as e}from"./chunks/framework.S1oRGgk6.js";const D=JSON.parse('{"title":"Getting started","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Getting started | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Getting started | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/guides/getting-started"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/guides/getting-started"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/guides/getting-started"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"guides/getting-started.md","filePath":"guides/getting-started.md"}'),l={name:"guides/getting-started.md"};function n(p,s,h,k,r,o){return e(),a("div",null,s[0]||(s[0]=[t(`

Getting started

Prerequisites

This guide assumes you have already set up a basic React project with TypeScript. To learn more about how to set up a React project, check out the official React documentation. The React documentation also has a guide on how to start using TypeScript in your React project.

Installation

There are multiple ways to install ProzillaOS. The simplest way is to install the bundle package prozilla-os, which contains the core functionality as well as all standard applications.

bash
$ npm install prozilla-os
bash
$ yarn add prozilla-os
bash
$ pnpm add prozilla-os
bash
$ bun add prozilla-os

Alternatively, you can install the @prozilla-os/core package, which only contains the core functionality, and install the apps manually or create custom apps.

bash
$ npm install @prozilla-os/core
bash
$ yarn add @prozilla-os/core
bash
$ pnpm add @prozilla-os/core
bash
$ bun add @prozilla-os/core

Installing apps

Install apps by running the command below. Replace [app] with the id of the app you want to install.

bash
$ npm install @prozilla-os/[app]
bash
$ yarn add @prozilla-os/[app]
bash
$ pnpm add @prozilla-os/[app]
bash
$ bun add @prozilla-os/[app]

Usage

Your entry file should look something like this:

tsx
// index.tsx
+import{_ as i,c as a,a3 as t,o as e}from"./chunks/framework.BAnOA2-A.js";const d=JSON.parse('{"title":"Getting started","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Getting started | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Getting started | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/guides/getting-started"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/guides/getting-started"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/guides/getting-started"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"guides/getting-started.md","filePath":"guides/getting-started.md"}'),l={name:"guides/getting-started.md"};function n(p,s,h,k,F,r){return e(),a("div",null,s[0]||(s[0]=[t(`

Getting started

Prerequisites

This guide assumes you have already set up a basic React project with TypeScript. To learn more about how to set up a React project, check out the official React documentation. The React documentation also has a guide on how to start using TypeScript in your React project.

Installation

There are multiple ways to install ProzillaOS. The simplest way is to install the bundle package prozilla-os, which contains the core functionality as well as all standard applications.

bash
$ npm install prozilla-os
bash
$ yarn add prozilla-os
bash
$ pnpm add prozilla-os
bash
$ bun add prozilla-os

Alternatively, you can install the @prozilla-os/core package, which only contains the core functionality, and install the apps manually or create custom apps.

bash
$ npm install @prozilla-os/core
bash
$ yarn add @prozilla-os/core
bash
$ pnpm add @prozilla-os/core
bash
$ bun add @prozilla-os/core

Installing apps

Install apps by running the command below. Replace [app] with the id of the app you want to install.

bash
$ npm install @prozilla-os/[app]
bash
$ yarn add @prozilla-os/[app]
bash
$ pnpm add @prozilla-os/[app]
bash
$ bun add @prozilla-os/[app]

Usage

Your entry file should look something like this:

tsx
// index.tsx
 
-import React from "react";
-import ReactDOM from "react-dom/client";
-import { App } from "./App.tsx";
+import React from "react";
+import ReactDOM from "react-dom/client";
+import { App } from "./App.tsx";
 
-const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement);
-root.render(<React.StrictMode><App/></React.StrictMode>);

Change your <App> component to:

tsx
// App.tsx
+const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement);
+root.render(<React.StrictMode><App/></React.StrictMode>);

Change your <App> component to:

tsx
// App.tsx
 
-import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "prozilla-os";
+import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "prozilla-os";
 
 export function App(): ReactElement {
 	return <ProzillaOS
 		systemName={"Example"}
 		tagLine={"Powered by ProzillaOS"}
 		config={{
-			// Configuration
+			// Configuration
 		}}
 	>
 		<Taskbar/>
@@ -22,24 +22,24 @@ import{_ as i,c as a,a1 as t,o as e}from"./chunks/framework.S1oRGgk6.js";const D
 		<ModalsView/>
 		<Desktop/>
 	</ProzillaOS>;
-}

Replace "Example" with a system name of your choosing and "Power by ProzillaOS" by your tag line/short description.

If you don't want a taskbar/desktop/modal in your project, you can leave those components out. Unless you don't want to be able to open applications in your project, you will need to keep the <WindowsView> component.

CAUTION

Depending on how you installed ProzillaOS, your import statement will look slightly different. Make sure you are importing from the correct package that you installed previously.

Using apps

To start using applications in your project, use the appsConfig class to add a list of apps to your configuration.

tsx
<ProzillaOS
-	{/* Other props */}
+}

Replace "Example" with a system name of your choosing and "Power by ProzillaOS" by your tag line/short description.

If you don't want a taskbar/desktop/modal in your project, you can leave those components out. Unless you don't want to be able to open applications in your project, you will need to keep the <WindowsView> component.

CAUTION

Depending on how you installed ProzillaOS, your import statement will look slightly different. Make sure you are importing from the correct package that you installed previously.

Using apps

To start using applications in your project, use the appsConfig class to add a list of apps to your configuration.

tsx
<ProzillaOS
+	{/* Other props */}
 	config={{
-		apps: new appsConfig({
-			apps: [
-				// Applications go here
-			]
-		})
+		apps: new appsConfig({
+			apps: [
+				// Applications go here
+			]
+		})
 	}}
->

Example

Here is an example that shows you how to add the fileExplorer app:

tsx
import { fileExplorer } from "prozilla-os"
tsx
<ProzillaOS
-	{/* Other props */}
+>

Example

Here is an example that shows you how to add the fileExplorer app:

tsx
import { fileExplorer } from "prozilla-os"
tsx
<ProzillaOS
+	{/* Other props */}
 	config={{
-		apps: new appsConfig({
-			apps: [
-				fileExplorer.setName("Files")
-					.setDescription("Browse and manage your virtual files on ProzillaOS.")
-					.setIconUrl("/assets/apps/icons/file-explorer.svg")
-			]
-		})
+		apps: new appsConfig({
+			apps: [
+				fileExplorer.setName("Files")
+					.setDescription("Browse and manage your virtual files on ProzillaOS.")
+					.setIconUrl("/assets/apps/icons/file-explorer.svg")
+			]
+		})
 	}}
->

TIP

Move your configurations to separate files to make them more readable and keep a better overview of your different configurations. You can then import these configurations into your App.tsx file and use them as values for the config prop of the <ProzillaOS> component.

Once that's done, go ahead and start your project and open it in your browser to check it out. Congratulations, you've made your own operating system inside the browser!

Community

If you have questions or need help, reach out to the community on Discord.

`,30)]))}const F=i(l,[["render",n]]);export{D as __pageData,F as default}; +>

TIP

Move your configurations to separate files to make them more readable and keep a better overview of your different configurations. You can then import these configurations into your App.tsx file and use them as values for the config prop of the <ProzillaOS> component.

Once that's done, go ahead and start your project and open it in your browser to check it out. Congratulations, you've made your own operating system inside the browser!

Community

If you have questions or need help, reach out to the community on Discord.

`,30)]))}const D=i(l,[["render",n]]);export{d as __pageData,D as default}; diff --git a/docs/assets/guides_self-hosting.md.CEDqz1nI.js b/docs/assets/guides_self-hosting.md.CEDqz1nI.js deleted file mode 100644 index 9ba95016..00000000 --- a/docs/assets/guides_self-hosting.md.CEDqz1nI.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as t,c as r,a1 as a,o}from"./chunks/framework.S1oRGgk6.js";const u=JSON.parse('{"title":"Self-hosting","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Self-hosting | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Self-hosting | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/guides/self-hosting"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/guides/self-hosting"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/guides/self-hosting"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"guides/self-hosting.md","filePath":"guides/self-hosting.md"}'),i={name:"guides/self-hosting.md"};function d(n,e,s,l,p,c){return o(),r("div",null,e[0]||(e[0]=[a('

Self-hosting

This guide explains how to host ProzillaOS locally on your own device or on your own server.

Installation

WARNING

In a local environment, ProzillaOS packages will try to import uncompiled versions of other ProzillaOS packages from their respective src directory. If this does not happen correctly and a package tries to import a compiled version of another package from its respective dist directory, you might run into an error message saying module not found. Executing the command pnpm run packages:build will compile each package into their dist directories and resolve this error.

Scripts

ProzillaOS uses the package manager pnpm to run scripts.

General

ScriptDescription
pnpm run start
Run pnpm run demo:start. VSCode is configured to run this script whenever the project is opened.
pnpm run build
Build every package in sequential order.
pnpm run stage
Copy and combine the build of each package that comprises the website in the dist directory at the root.
pnpm run deploy
Clear the dist directory, stage each package that comprises the website, then deploy to GitHub pages. This should trigger a GitHub Action that deploys the build to production.

Public packages

ScriptDescription
pnpm run packages:build
Build all dependencies of the prozilla-os package in sequential order and output to respective dist directories.
pnpm run packages:update
Create a new changeset for packages and update their version accordingly.
pnpm run packages:release
Publish the latest versions of each package to the npm registry.

TIP

Use pnpm --filter <package_selector> build to build a sepecific subset of packages or a single package and output to respective dist directory/directories. For more information about selecting/filtering specific packages, read pnpm's documentation on filtering.

Internal packages

@prozilla-os/demo

ScriptDescription
pnpm run demo:start
Start Vite dev server at localhost:3000. Changes to module will dynamically be hot-reloaded, so normally there is no need for hard-refreshes. VSCode is configured to run this script whenever the project is opened.
pnpm run demo:build
Compile project using TypeScript and bundle all files into the dist directory, or the directory specified in config file. This directory can be uploaded to a web server.
pnpm run demo:preview
Start web server with preview of build at localhost:8080. Can be useful for validating build before deploying.
pnpm run demo:stage
Execute staging script, which stages the build and prepares it for deployment. Script will generate a sitemap, robots.txt and all other necessary files.
pnpm run demo:fetch
Fetch the repository tree using GitHub's API and store it as a JSON file that will be used to populate the virtual drive.

@prozilla-os/docs

ScriptDescription
pnpm run docs:start
Start VitePress dev server at localhost:3000. Changes to module will dynamically be hot-reloaded, so normally there is no need for hard-refreshes.
pnpm run docs:build
Compile project using VitePress and output to the dist directory.
pnpm run docs:preview
Start web server with preview of build at localhost:8080. Can be useful for validating build before deploying.
pnpm run docs:generate
Generate basic information files in JSON format to use as a base for writing the documentation and output to the data directory.
',16)]))}const m=t(i,[["render",d]]);export{u as __pageData,m as default}; diff --git a/docs/assets/guides_self-hosting.md.CEDqz1nI.lean.js b/docs/assets/guides_self-hosting.md.CEDqz1nI.lean.js deleted file mode 100644 index 9ba95016..00000000 --- a/docs/assets/guides_self-hosting.md.CEDqz1nI.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as t,c as r,a1 as a,o}from"./chunks/framework.S1oRGgk6.js";const u=JSON.parse('{"title":"Self-hosting","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Self-hosting | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Self-hosting | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/guides/self-hosting"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/guides/self-hosting"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/guides/self-hosting"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"guides/self-hosting.md","filePath":"guides/self-hosting.md"}'),i={name:"guides/self-hosting.md"};function d(n,e,s,l,p,c){return o(),r("div",null,e[0]||(e[0]=[a('

Self-hosting

This guide explains how to host ProzillaOS locally on your own device or on your own server.

Installation

WARNING

In a local environment, ProzillaOS packages will try to import uncompiled versions of other ProzillaOS packages from their respective src directory. If this does not happen correctly and a package tries to import a compiled version of another package from its respective dist directory, you might run into an error message saying module not found. Executing the command pnpm run packages:build will compile each package into their dist directories and resolve this error.

Scripts

ProzillaOS uses the package manager pnpm to run scripts.

General

ScriptDescription
pnpm run start
Run pnpm run demo:start. VSCode is configured to run this script whenever the project is opened.
pnpm run build
Build every package in sequential order.
pnpm run stage
Copy and combine the build of each package that comprises the website in the dist directory at the root.
pnpm run deploy
Clear the dist directory, stage each package that comprises the website, then deploy to GitHub pages. This should trigger a GitHub Action that deploys the build to production.

Public packages

ScriptDescription
pnpm run packages:build
Build all dependencies of the prozilla-os package in sequential order and output to respective dist directories.
pnpm run packages:update
Create a new changeset for packages and update their version accordingly.
pnpm run packages:release
Publish the latest versions of each package to the npm registry.

TIP

Use pnpm --filter <package_selector> build to build a sepecific subset of packages or a single package and output to respective dist directory/directories. For more information about selecting/filtering specific packages, read pnpm's documentation on filtering.

Internal packages

@prozilla-os/demo

ScriptDescription
pnpm run demo:start
Start Vite dev server at localhost:3000. Changes to module will dynamically be hot-reloaded, so normally there is no need for hard-refreshes. VSCode is configured to run this script whenever the project is opened.
pnpm run demo:build
Compile project using TypeScript and bundle all files into the dist directory, or the directory specified in config file. This directory can be uploaded to a web server.
pnpm run demo:preview
Start web server with preview of build at localhost:8080. Can be useful for validating build before deploying.
pnpm run demo:stage
Execute staging script, which stages the build and prepares it for deployment. Script will generate a sitemap, robots.txt and all other necessary files.
pnpm run demo:fetch
Fetch the repository tree using GitHub's API and store it as a JSON file that will be used to populate the virtual drive.

@prozilla-os/docs

ScriptDescription
pnpm run docs:start
Start VitePress dev server at localhost:3000. Changes to module will dynamically be hot-reloaded, so normally there is no need for hard-refreshes.
pnpm run docs:build
Compile project using VitePress and output to the dist directory.
pnpm run docs:preview
Start web server with preview of build at localhost:8080. Can be useful for validating build before deploying.
pnpm run docs:generate
Generate basic information files in JSON format to use as a base for writing the documentation and output to the data directory.
',16)]))}const m=t(i,[["render",d]]);export{u as __pageData,m as default}; diff --git a/docs/assets/guides_self-hosting.md.C_aU7rBt.js b/docs/assets/guides_self-hosting.md.C_aU7rBt.js new file mode 100644 index 00000000..9cd7d33c --- /dev/null +++ b/docs/assets/guides_self-hosting.md.C_aU7rBt.js @@ -0,0 +1 @@ +import{_ as t,c as a,a3 as r,o as i}from"./chunks/framework.BAnOA2-A.js";const g=JSON.parse('{"title":"Self-hosting","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Self-hosting | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Self-hosting | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/guides/self-hosting"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/guides/self-hosting"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/guides/self-hosting"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"guides/self-hosting.md","filePath":"guides/self-hosting.md"}'),o={name:"guides/self-hosting.md"};function s(n,e,l,d,p,c){return i(),a("div",null,e[0]||(e[0]=[r('

Self-hosting

This guide explains how to host ProzillaOS locally on your own device or on your own server.

Installation

Make sure you have NodeJS (version v18.12 or higher) installed on your device.

  1. Clone the GitHub repository.

    sh
    git clone https://github.com/prozilla-os/ProzillaOS.git ProzillaOS\ncd ProzillaOS
  2. Install package manager and dependencies

    sh
    npm install pnpm -g\npnpm install
  3. Run project

    sh
    pnpm start
  4. Test local dev server by visiting localhost:3000

WARNING

In a local environment, ProzillaOS packages will try to import uncompiled versions of other ProzillaOS packages from their respective src directory. If this does not happen correctly and a package tries to import a compiled version of another package from its respective dist directory, you might run into an error message saying module not found. Executing the command pnpm run packages:build will compile each package into their dist directories and resolve this error.

Scripts

ProzillaOS uses the package manager pnpm to run scripts.

General

ScriptDescription
pnpm run start
Run pnpm run demo:start. VSCode is configured to run this script whenever the project is opened.
pnpm run build
Build every package in sequential order.
pnpm run stage
Copy and combine the build of each package that comprises the website in the dist directory at the root.
pnpm run deploy
Clear the dist directory, stage each package that comprises the website, then deploy to GitHub pages. This should trigger a GitHub Action that deploys the build to production.

Public packages

ScriptDescription
pnpm run packages:build
Build all dependencies of the prozilla-os package in sequential order and output to respective dist directories.
pnpm run packages:update
Create a new changeset for packages and update their version accordingly.
pnpm run packages:release
Publish the latest versions of each package to the npm registry.

TIP

Use pnpm --filter <package_selector> build to build a sepecific subset of packages or a single package and output to respective dist directory/directories. For more information about selecting/filtering specific packages, read pnpm's documentation on filtering.

Internal packages

@prozilla-os/demo

ScriptDescription
pnpm run demo:start
Start Vite dev server at localhost:3000. Changes to module will dynamically be hot-reloaded, so normally there is no need for hard-refreshes. VSCode is configured to run this script whenever the project is opened.
pnpm run demo:build
Compile project using TypeScript and bundle all files into the dist directory, or the directory specified in config file. This directory can be uploaded to a web server.
pnpm run demo:preview
Start web server with preview of build at localhost:8080. Can be useful for validating build before deploying.
pnpm run demo:stage
Execute staging script, which stages the build and prepares it for deployment. Script will generate a sitemap, robots.txt and all other necessary files.
pnpm run demo:fetch
Fetch the repository tree using GitHub's API and store it as a JSON file that will be used to populate the virtual drive.

@prozilla-os/docs

ScriptDescription
pnpm run docs:start
Start VitePress dev server at localhost:3000. Changes to module will dynamically be hot-reloaded, so normally there is no need for hard-refreshes.
pnpm run docs:build
Compile project using VitePress and output to the dist directory.
pnpm run docs:preview
Start web server with preview of build at localhost:8080. Can be useful for validating build before deploying.
pnpm run docs:generate
Generate basic information files in JSON format to use as a base for writing the documentation and output to the data directory.
',18)]))}const u=t(o,[["render",s]]);export{g as __pageData,u as default}; diff --git a/docs/assets/guides_self-hosting.md.C_aU7rBt.lean.js b/docs/assets/guides_self-hosting.md.C_aU7rBt.lean.js new file mode 100644 index 00000000..9cd7d33c --- /dev/null +++ b/docs/assets/guides_self-hosting.md.C_aU7rBt.lean.js @@ -0,0 +1 @@ +import{_ as t,c as a,a3 as r,o as i}from"./chunks/framework.BAnOA2-A.js";const g=JSON.parse('{"title":"Self-hosting","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Self-hosting | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Self-hosting | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/guides/self-hosting"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/guides/self-hosting"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/guides/self-hosting"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"guides/self-hosting.md","filePath":"guides/self-hosting.md"}'),o={name:"guides/self-hosting.md"};function s(n,e,l,d,p,c){return i(),a("div",null,e[0]||(e[0]=[r('

Self-hosting

This guide explains how to host ProzillaOS locally on your own device or on your own server.

Installation

Make sure you have NodeJS (version v18.12 or higher) installed on your device.

  1. Clone the GitHub repository.

    sh
    git clone https://github.com/prozilla-os/ProzillaOS.git ProzillaOS\ncd ProzillaOS
  2. Install package manager and dependencies

    sh
    npm install pnpm -g\npnpm install
  3. Run project

    sh
    pnpm start
  4. Test local dev server by visiting localhost:3000

WARNING

In a local environment, ProzillaOS packages will try to import uncompiled versions of other ProzillaOS packages from their respective src directory. If this does not happen correctly and a package tries to import a compiled version of another package from its respective dist directory, you might run into an error message saying module not found. Executing the command pnpm run packages:build will compile each package into their dist directories and resolve this error.

Scripts

ProzillaOS uses the package manager pnpm to run scripts.

General

ScriptDescription
pnpm run start
Run pnpm run demo:start. VSCode is configured to run this script whenever the project is opened.
pnpm run build
Build every package in sequential order.
pnpm run stage
Copy and combine the build of each package that comprises the website in the dist directory at the root.
pnpm run deploy
Clear the dist directory, stage each package that comprises the website, then deploy to GitHub pages. This should trigger a GitHub Action that deploys the build to production.

Public packages

ScriptDescription
pnpm run packages:build
Build all dependencies of the prozilla-os package in sequential order and output to respective dist directories.
pnpm run packages:update
Create a new changeset for packages and update their version accordingly.
pnpm run packages:release
Publish the latest versions of each package to the npm registry.

TIP

Use pnpm --filter <package_selector> build to build a sepecific subset of packages or a single package and output to respective dist directory/directories. For more information about selecting/filtering specific packages, read pnpm's documentation on filtering.

Internal packages

@prozilla-os/demo

ScriptDescription
pnpm run demo:start
Start Vite dev server at localhost:3000. Changes to module will dynamically be hot-reloaded, so normally there is no need for hard-refreshes. VSCode is configured to run this script whenever the project is opened.
pnpm run demo:build
Compile project using TypeScript and bundle all files into the dist directory, or the directory specified in config file. This directory can be uploaded to a web server.
pnpm run demo:preview
Start web server with preview of build at localhost:8080. Can be useful for validating build before deploying.
pnpm run demo:stage
Execute staging script, which stages the build and prepares it for deployment. Script will generate a sitemap, robots.txt and all other necessary files.
pnpm run demo:fetch
Fetch the repository tree using GitHub's API and store it as a JSON file that will be used to populate the virtual drive.

@prozilla-os/docs

ScriptDescription
pnpm run docs:start
Start VitePress dev server at localhost:3000. Changes to module will dynamically be hot-reloaded, so normally there is no need for hard-refreshes.
pnpm run docs:build
Compile project using VitePress and output to the dist directory.
pnpm run docs:preview
Start web server with preview of build at localhost:8080. Can be useful for validating build before deploying.
pnpm run docs:generate
Generate basic information files in JSON format to use as a base for writing the documentation and output to the data directory.
',18)]))}const u=t(o,[["render",s]]);export{g as __pageData,u as default}; diff --git a/docs/assets/index.md.DCZ_f0AC.js b/docs/assets/index.md.CMZ46jBx.js similarity index 98% rename from docs/assets/index.md.DCZ_f0AC.js rename to docs/assets/index.md.CMZ46jBx.js index 30ace89f..9644c173 100644 --- a/docs/assets/index.md.DCZ_f0AC.js +++ b/docs/assets/index.md.CMZ46jBx.js @@ -1 +1 @@ -import{V as n,a as s,b as l}from"./chunks/theme.FxnoVUL-.js";import{c,G as e,w as a,k as t,o as r,a as m}from"./chunks/framework.S1oRGgk6.js";const w=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"ProzillaOS","text":"Web-based operating system","tagline":"A highly customizable and feature-rich desktop environment inside your browser","image":"https://os.prozilla.dev/assets/logo.png","actions":[{"theme":"brand","text":"Demo","link":"https://os.prozilla.dev/"},{"theme":"alt","text":"GitHub","link":"https://github.com/prozilla-os/ProzillaOS"},{"theme":"alt","text":"npm","link":"https://www.npmjs.com/package/prozilla-os"}]},"features":[{"title":"TypeScript","details":"ProzillaOS is powered by TypeScript\\"s type-safety.","icon":""},{"title":"Modular","details":"ProzillaOS can be installed as separate modules with extensive customization.","icon":"","link":"reference/packages","linkText":"Explore packages"},{"title":"Open-source","details":"ProzillaOS is entirely free and open-source.","icon":"","link":"https://github.com/prozilla-os/ProzillaOS","linkText":"Learn more"}],"head":[["meta",{"name":"og:title","content":"ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"index.md","filePath":"index.md"}'),p={name:"index.md"},z=Object.assign(p,{setup(d){const i=[{avatar:"https://prozilla.dev/media/Prozilla.svg",name:"Prozilla",title:"Creator",links:[{icon:"twitter",link:"https://twitter.com/prozilladev"},{icon:"linkedin",link:"https://linkedin.com/in/sieben-de-beule"},{icon:"instagram",link:"https://instagram.com/prozilladev"},{icon:"youtube",link:"https://www.youtube.com/c/prozilla"}],sponsor:"https://ko-fi.com/prozilla"}];return(h,o)=>(r(),c("div",null,[e(t(l),null,{default:a(()=>[e(t(n),null,{title:a(()=>o[0]||(o[0]=[m("Developer")])),_:1}),e(t(s),{class:"center",members:i})]),_:1})]))}});export{w as __pageData,z as default}; +import{V as n,a as s,b as l}from"./chunks/theme.BUR9ctRq.js";import{c,G as e,w as a,k as t,o as r,a as m}from"./chunks/framework.BAnOA2-A.js";const w=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"ProzillaOS","text":"Web-based operating system","tagline":"A highly customizable and feature-rich desktop environment inside your browser","image":"https://os.prozilla.dev/assets/logo.png","actions":[{"theme":"brand","text":"Demo","link":"https://os.prozilla.dev/"},{"theme":"alt","text":"GitHub","link":"https://github.com/prozilla-os/ProzillaOS"},{"theme":"alt","text":"npm","link":"https://www.npmjs.com/package/prozilla-os"}]},"features":[{"title":"TypeScript","details":"ProzillaOS is powered by TypeScript\\"s type-safety.","icon":""},{"title":"Modular","details":"ProzillaOS can be installed as separate modules with extensive customization.","icon":"","link":"reference/packages","linkText":"Explore packages"},{"title":"Open-source","details":"ProzillaOS is entirely free and open-source.","icon":"","link":"https://github.com/prozilla-os/ProzillaOS","linkText":"Learn more"}],"head":[["meta",{"name":"og:title","content":"ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"index.md","filePath":"index.md"}'),p={name:"index.md"},z=Object.assign(p,{setup(d){const i=[{avatar:"https://prozilla.dev/media/Prozilla.svg",name:"Prozilla",title:"Creator",links:[{icon:"twitter",link:"https://twitter.com/prozilladev"},{icon:"linkedin",link:"https://linkedin.com/in/sieben-de-beule"},{icon:"instagram",link:"https://instagram.com/prozilladev"},{icon:"youtube",link:"https://www.youtube.com/c/prozilla"}],sponsor:"https://ko-fi.com/prozilla"}];return(h,o)=>(r(),c("div",null,[e(t(l),null,{default:a(()=>[e(t(n),null,{title:a(()=>o[0]||(o[0]=[m("Developer")])),_:1}),e(t(s),{class:"center",members:i})]),_:1})]))}});export{w as __pageData,z as default}; diff --git a/docs/assets/index.md.DCZ_f0AC.lean.js b/docs/assets/index.md.CMZ46jBx.lean.js similarity index 98% rename from docs/assets/index.md.DCZ_f0AC.lean.js rename to docs/assets/index.md.CMZ46jBx.lean.js index 30ace89f..9644c173 100644 --- a/docs/assets/index.md.DCZ_f0AC.lean.js +++ b/docs/assets/index.md.CMZ46jBx.lean.js @@ -1 +1 @@ -import{V as n,a as s,b as l}from"./chunks/theme.FxnoVUL-.js";import{c,G as e,w as a,k as t,o as r,a as m}from"./chunks/framework.S1oRGgk6.js";const w=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"ProzillaOS","text":"Web-based operating system","tagline":"A highly customizable and feature-rich desktop environment inside your browser","image":"https://os.prozilla.dev/assets/logo.png","actions":[{"theme":"brand","text":"Demo","link":"https://os.prozilla.dev/"},{"theme":"alt","text":"GitHub","link":"https://github.com/prozilla-os/ProzillaOS"},{"theme":"alt","text":"npm","link":"https://www.npmjs.com/package/prozilla-os"}]},"features":[{"title":"TypeScript","details":"ProzillaOS is powered by TypeScript\\"s type-safety.","icon":""},{"title":"Modular","details":"ProzillaOS can be installed as separate modules with extensive customization.","icon":"","link":"reference/packages","linkText":"Explore packages"},{"title":"Open-source","details":"ProzillaOS is entirely free and open-source.","icon":"","link":"https://github.com/prozilla-os/ProzillaOS","linkText":"Learn more"}],"head":[["meta",{"name":"og:title","content":"ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"index.md","filePath":"index.md"}'),p={name:"index.md"},z=Object.assign(p,{setup(d){const i=[{avatar:"https://prozilla.dev/media/Prozilla.svg",name:"Prozilla",title:"Creator",links:[{icon:"twitter",link:"https://twitter.com/prozilladev"},{icon:"linkedin",link:"https://linkedin.com/in/sieben-de-beule"},{icon:"instagram",link:"https://instagram.com/prozilladev"},{icon:"youtube",link:"https://www.youtube.com/c/prozilla"}],sponsor:"https://ko-fi.com/prozilla"}];return(h,o)=>(r(),c("div",null,[e(t(l),null,{default:a(()=>[e(t(n),null,{title:a(()=>o[0]||(o[0]=[m("Developer")])),_:1}),e(t(s),{class:"center",members:i})]),_:1})]))}});export{w as __pageData,z as default}; +import{V as n,a as s,b as l}from"./chunks/theme.BUR9ctRq.js";import{c,G as e,w as a,k as t,o as r,a as m}from"./chunks/framework.BAnOA2-A.js";const w=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"ProzillaOS","text":"Web-based operating system","tagline":"A highly customizable and feature-rich desktop environment inside your browser","image":"https://os.prozilla.dev/assets/logo.png","actions":[{"theme":"brand","text":"Demo","link":"https://os.prozilla.dev/"},{"theme":"alt","text":"GitHub","link":"https://github.com/prozilla-os/ProzillaOS"},{"theme":"alt","text":"npm","link":"https://www.npmjs.com/package/prozilla-os"}]},"features":[{"title":"TypeScript","details":"ProzillaOS is powered by TypeScript\\"s type-safety.","icon":""},{"title":"Modular","details":"ProzillaOS can be installed as separate modules with extensive customization.","icon":"","link":"reference/packages","linkText":"Explore packages"},{"title":"Open-source","details":"ProzillaOS is entirely free and open-source.","icon":"","link":"https://github.com/prozilla-os/ProzillaOS","linkText":"Learn more"}],"head":[["meta",{"name":"og:title","content":"ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"index.md","filePath":"index.md"}'),p={name:"index.md"},z=Object.assign(p,{setup(d){const i=[{avatar:"https://prozilla.dev/media/Prozilla.svg",name:"Prozilla",title:"Creator",links:[{icon:"twitter",link:"https://twitter.com/prozilladev"},{icon:"linkedin",link:"https://linkedin.com/in/sieben-de-beule"},{icon:"instagram",link:"https://instagram.com/prozilladev"},{icon:"youtube",link:"https://www.youtube.com/c/prozilla"}],sponsor:"https://ko-fi.com/prozilla"}];return(h,o)=>(r(),c("div",null,[e(t(l),null,{default:a(()=>[e(t(n),null,{title:a(()=>o[0]||(o[0]=[m("Developer")])),_:1}),e(t(s),{class:"center",members:i})]),_:1})]))}});export{w as __pageData,z as default}; diff --git a/docs/assets/reference_apps_browser_index.md.D6PasAIp.js b/docs/assets/reference_apps_browser_index.md.qzTCNjkF.js similarity index 72% rename from docs/assets/reference_apps_browser_index.md.D6PasAIp.js rename to docs/assets/reference_apps_browser_index.md.qzTCNjkF.js index 9e06e9ac..47b53a67 100644 --- a/docs/assets/reference_apps_browser_index.md.D6PasAIp.js +++ b/docs/assets/reference_apps_browser_index.md.qzTCNjkF.js @@ -1,7 +1,7 @@ -import{_ as i,c as a,a1 as t,o as n}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/browser","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/browser | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/browser | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/browser/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/browser/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/browser/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/browser/index.md","filePath":"reference/apps/browser/index.md"}'),l={name:"reference/apps/browser/index.md"};function e(h,s,p,r,k,o){return n(),a("div",null,s[0]||(s[0]=[t(`

@prozilla-os/browser

About

@prozilla-os/browser is a ProzillaOS application for browsing the internet.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/browser
+import{_ as i,c as a,a3 as t,o as n}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/browser","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/browser | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/browser | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/browser/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/browser/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/browser/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/browser/index.md","filePath":"reference/apps/browser/index.md"}'),l={name:"reference/apps/browser/index.md"};function e(h,s,p,r,k,F){return n(),a("div",null,s[0]||(s[0]=[t(`

@prozilla-os/browser

About

@prozilla-os/browser is a ProzillaOS application for browsing the internet.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/browser
 yarn add @prozilla-os/core @prozilla-os/browser
-pnpm add @prozilla-os/core @prozilla-os/browser

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { browser } from "@prozilla-os/browser";
+pnpm add @prozilla-os/core @prozilla-os/browser

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { browser } from "@prozilla-os/browser";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as i,c as a,a1 as t,o as n}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ browser ]
-        })
+        apps: new AppsConfig({
+          apps: [ browser ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,7 +20,7 @@ import{_ as i,c as a,a1 as t,o as n}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * URL to open
- */
-url: string;
`,13)]))}const d=i(l,[["render",e]]);export{F as __pageData,d as default}; +}

Window options

tsx
/**
+ * URL to open
+ */
+url: string;
`,13)]))}const d=i(l,[["render",e]]);export{D as __pageData,d as default}; diff --git a/docs/assets/reference_apps_browser_index.md.D6PasAIp.lean.js b/docs/assets/reference_apps_browser_index.md.qzTCNjkF.lean.js similarity index 72% rename from docs/assets/reference_apps_browser_index.md.D6PasAIp.lean.js rename to docs/assets/reference_apps_browser_index.md.qzTCNjkF.lean.js index 9e06e9ac..47b53a67 100644 --- a/docs/assets/reference_apps_browser_index.md.D6PasAIp.lean.js +++ b/docs/assets/reference_apps_browser_index.md.qzTCNjkF.lean.js @@ -1,7 +1,7 @@ -import{_ as i,c as a,a1 as t,o as n}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/browser","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/browser | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/browser | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/browser/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/browser/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/browser/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/browser/index.md","filePath":"reference/apps/browser/index.md"}'),l={name:"reference/apps/browser/index.md"};function e(h,s,p,r,k,o){return n(),a("div",null,s[0]||(s[0]=[t(`

@prozilla-os/browser

About

@prozilla-os/browser is a ProzillaOS application for browsing the internet.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/browser
+import{_ as i,c as a,a3 as t,o as n}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/browser","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/browser | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/browser | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/browser/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/browser/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/browser/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/browser/index.md","filePath":"reference/apps/browser/index.md"}'),l={name:"reference/apps/browser/index.md"};function e(h,s,p,r,k,F){return n(),a("div",null,s[0]||(s[0]=[t(`

@prozilla-os/browser

About

@prozilla-os/browser is a ProzillaOS application for browsing the internet.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/browser
 yarn add @prozilla-os/core @prozilla-os/browser
-pnpm add @prozilla-os/core @prozilla-os/browser

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { browser } from "@prozilla-os/browser";
+pnpm add @prozilla-os/core @prozilla-os/browser

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { browser } from "@prozilla-os/browser";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as i,c as a,a1 as t,o as n}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ browser ]
-        })
+        apps: new AppsConfig({
+          apps: [ browser ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,7 +20,7 @@ import{_ as i,c as a,a1 as t,o as n}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * URL to open
- */
-url: string;
`,13)]))}const d=i(l,[["render",e]]);export{F as __pageData,d as default}; +}

Window options

tsx
/**
+ * URL to open
+ */
+url: string;
`,13)]))}const d=i(l,[["render",e]]);export{D as __pageData,d as default}; diff --git a/docs/assets/reference_apps_calculator_index.md.EW--gfTz.js b/docs/assets/reference_apps_calculator_index.md.CRvkjJ1P.js similarity index 76% rename from docs/assets/reference_apps_calculator_index.md.EW--gfTz.js rename to docs/assets/reference_apps_calculator_index.md.CRvkjJ1P.js index ba54268e..e4a90878 100644 --- a/docs/assets/reference_apps_calculator_index.md.EW--gfTz.js +++ b/docs/assets/reference_apps_calculator_index.md.CRvkjJ1P.js @@ -1,7 +1,7 @@ -import{_ as i,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/calculator","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/calculator | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/calculator | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/calculator/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/calculator/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/calculator/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/calculator/index.md","filePath":"reference/apps/calculator/index.md"}'),n={name:"reference/apps/calculator/index.md"};function e(p,s,h,k,r,o){return t(),a("div",null,s[0]||(s[0]=[l(`

@prozilla-os/calculator

About

@prozilla-os/calculator is a ProzillaOS application for making basic calculations.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/calculator
+import{_ as i,c as a,a3 as l,o as t}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/calculator","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/calculator | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/calculator | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/calculator/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/calculator/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/calculator/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/calculator/index.md","filePath":"reference/apps/calculator/index.md"}'),n={name:"reference/apps/calculator/index.md"};function e(p,s,h,F,k,r){return t(),a("div",null,s[0]||(s[0]=[l(`

@prozilla-os/calculator

About

@prozilla-os/calculator is a ProzillaOS application for making basic calculations.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/calculator
 yarn add @prozilla-os/core @prozilla-os/calculator
-pnpm add @prozilla-os/core @prozilla-os/calculator

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { calculator } from "@prozilla-os/calculator";
+pnpm add @prozilla-os/core @prozilla-os/calculator

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { calculator } from "@prozilla-os/calculator";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as i,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ calculator ]
-        })
+        apps: new AppsConfig({
+          apps: [ calculator ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,4 +20,4 @@ import{_ as i,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}
`,11)]))}const c=i(n,[["render",e]]);export{F as __pageData,c as default}; +}
`,11)]))}const c=i(n,[["render",e]]);export{D as __pageData,c as default}; diff --git a/docs/assets/reference_apps_calculator_index.md.EW--gfTz.lean.js b/docs/assets/reference_apps_calculator_index.md.CRvkjJ1P.lean.js similarity index 76% rename from docs/assets/reference_apps_calculator_index.md.EW--gfTz.lean.js rename to docs/assets/reference_apps_calculator_index.md.CRvkjJ1P.lean.js index ba54268e..e4a90878 100644 --- a/docs/assets/reference_apps_calculator_index.md.EW--gfTz.lean.js +++ b/docs/assets/reference_apps_calculator_index.md.CRvkjJ1P.lean.js @@ -1,7 +1,7 @@ -import{_ as i,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/calculator","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/calculator | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/calculator | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/calculator/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/calculator/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/calculator/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/calculator/index.md","filePath":"reference/apps/calculator/index.md"}'),n={name:"reference/apps/calculator/index.md"};function e(p,s,h,k,r,o){return t(),a("div",null,s[0]||(s[0]=[l(`

@prozilla-os/calculator

About

@prozilla-os/calculator is a ProzillaOS application for making basic calculations.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/calculator
+import{_ as i,c as a,a3 as l,o as t}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/calculator","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/calculator | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/calculator | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/calculator/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/calculator/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/calculator/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/calculator/index.md","filePath":"reference/apps/calculator/index.md"}'),n={name:"reference/apps/calculator/index.md"};function e(p,s,h,F,k,r){return t(),a("div",null,s[0]||(s[0]=[l(`

@prozilla-os/calculator

About

@prozilla-os/calculator is a ProzillaOS application for making basic calculations.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/calculator
 yarn add @prozilla-os/core @prozilla-os/calculator
-pnpm add @prozilla-os/core @prozilla-os/calculator

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { calculator } from "@prozilla-os/calculator";
+pnpm add @prozilla-os/core @prozilla-os/calculator

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { calculator } from "@prozilla-os/calculator";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as i,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ calculator ]
-        })
+        apps: new AppsConfig({
+          apps: [ calculator ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,4 +20,4 @@ import{_ as i,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}
`,11)]))}const c=i(n,[["render",e]]);export{F as __pageData,c as default}; +}
`,11)]))}const c=i(n,[["render",e]]);export{D as __pageData,c as default}; diff --git a/docs/assets/reference_apps_file-explorer_index.md.Clt-EzRv.js b/docs/assets/reference_apps_file-explorer_index.md.DSQB8Qq-.js similarity index 65% rename from docs/assets/reference_apps_file-explorer_index.md.Clt-EzRv.js rename to docs/assets/reference_apps_file-explorer_index.md.DSQB8Qq-.js index cd83828b..2b7927e5 100644 --- a/docs/assets/reference_apps_file-explorer_index.md.Clt-EzRv.js +++ b/docs/assets/reference_apps_file-explorer_index.md.DSQB8Qq-.js @@ -1,7 +1,7 @@ -import{_ as s,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const D=JSON.parse('{"title":"@prozilla-os/file-explorer","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/file-explorer | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/file-explorer | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/file-explorer/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/file-explorer/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/file-explorer/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/file-explorer/index.md","filePath":"reference/apps/file-explorer/index.md"}'),n={name:"reference/apps/file-explorer/index.md"};function e(h,i,k,p,r,o){return t(),a("div",null,i[0]||(i[0]=[l(`

@prozilla-os/file-explorer

About

@prozilla-os/file-explorer is a standard ProzillaOS application for browsing files.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/file-explorer
+import{_ as s,c as a,a3 as l,o as t}from"./chunks/framework.BAnOA2-A.js";const d=JSON.parse('{"title":"@prozilla-os/file-explorer","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/file-explorer | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/file-explorer | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/file-explorer/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/file-explorer/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/file-explorer/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/file-explorer/index.md","filePath":"reference/apps/file-explorer/index.md"}'),n={name:"reference/apps/file-explorer/index.md"};function e(h,i,k,p,F,r){return t(),a("div",null,i[0]||(i[0]=[l(`

@prozilla-os/file-explorer

About

@prozilla-os/file-explorer is a standard ProzillaOS application for browsing files.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/file-explorer
 yarn add @prozilla-os/core @prozilla-os/file-explorer
-pnpm add @prozilla-os/core @prozilla-os/file-explorer

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { fileExplorer } from "@prozilla-os/file-explorer";
+pnpm add @prozilla-os/core @prozilla-os/file-explorer

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { fileExplorer } from "@prozilla-os/file-explorer";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as s,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const D
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ fileExplorer ]
-        })
+        apps: new AppsConfig({
+          apps: [ fileExplorer ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,33 +20,33 @@ import{_ as s,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const D
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * Initial path that the app will open
- * @default "~" - Home directory
- */
-path: string;
+}

Window options

tsx
/**
+ * Initial path that the app will open
+ * @default "~" - Home directory
+ */
+path: string;
 
-/**
- * Defines in which mode the application is running
- * 0: None
- * 1: Single
- * 2: Multiple
- * @default 0
- */
-selectorMode: number;
+/**
+ * Defines in which mode the application is running
+ * 0: None
+ * 1: Single
+ * 2: Multiple
+ * @default 0
+ */
+selectorMode: number;
 
-/**
- * Footer component that will be displayed when \`selectorMode\` != 0
- * Can be used to display a list of selected files for example
- */
-Footer: React.FC;
+/**
+ * Footer component that will be displayed when \`selectorMode\` != 0
+ * Can be used to display a list of selected files for example
+ */
+Footer: React.FC;
 
-/**
- * Gets called each time the selection changes if \`selectorMode\` != 0
- */
-onSelectionChange: (params: OnSelectionChangeParams) => void;
+/**
+ * Gets called each time the selection changes if \`selectorMode\` != 0
+ */
+onSelectionChange: (params: OnSelectionChangeParams) => void;
 
-/**
- * Gets called when the selection is finished if \`selectorMode\` != 0
- */
-onSelectionFinish: Function;
`,13)]))}const d=s(n,[["render",e]]);export{D as __pageData,d as default}; +/** + * Gets called when the selection is finished if \`selectorMode\` != 0 + */ +onSelectionFinish: Function;
`,13)]))}const D=s(n,[["render",e]]);export{d as __pageData,D as default}; diff --git a/docs/assets/reference_apps_file-explorer_index.md.Clt-EzRv.lean.js b/docs/assets/reference_apps_file-explorer_index.md.DSQB8Qq-.lean.js similarity index 65% rename from docs/assets/reference_apps_file-explorer_index.md.Clt-EzRv.lean.js rename to docs/assets/reference_apps_file-explorer_index.md.DSQB8Qq-.lean.js index cd83828b..2b7927e5 100644 --- a/docs/assets/reference_apps_file-explorer_index.md.Clt-EzRv.lean.js +++ b/docs/assets/reference_apps_file-explorer_index.md.DSQB8Qq-.lean.js @@ -1,7 +1,7 @@ -import{_ as s,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const D=JSON.parse('{"title":"@prozilla-os/file-explorer","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/file-explorer | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/file-explorer | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/file-explorer/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/file-explorer/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/file-explorer/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/file-explorer/index.md","filePath":"reference/apps/file-explorer/index.md"}'),n={name:"reference/apps/file-explorer/index.md"};function e(h,i,k,p,r,o){return t(),a("div",null,i[0]||(i[0]=[l(`

@prozilla-os/file-explorer

About

@prozilla-os/file-explorer is a standard ProzillaOS application for browsing files.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/file-explorer
+import{_ as s,c as a,a3 as l,o as t}from"./chunks/framework.BAnOA2-A.js";const d=JSON.parse('{"title":"@prozilla-os/file-explorer","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/file-explorer | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/file-explorer | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/file-explorer/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/file-explorer/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/file-explorer/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/file-explorer/index.md","filePath":"reference/apps/file-explorer/index.md"}'),n={name:"reference/apps/file-explorer/index.md"};function e(h,i,k,p,F,r){return t(),a("div",null,i[0]||(i[0]=[l(`

@prozilla-os/file-explorer

About

@prozilla-os/file-explorer is a standard ProzillaOS application for browsing files.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/file-explorer
 yarn add @prozilla-os/core @prozilla-os/file-explorer
-pnpm add @prozilla-os/core @prozilla-os/file-explorer

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { fileExplorer } from "@prozilla-os/file-explorer";
+pnpm add @prozilla-os/core @prozilla-os/file-explorer

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { fileExplorer } from "@prozilla-os/file-explorer";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as s,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const D
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ fileExplorer ]
-        })
+        apps: new AppsConfig({
+          apps: [ fileExplorer ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,33 +20,33 @@ import{_ as s,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const D
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * Initial path that the app will open
- * @default "~" - Home directory
- */
-path: string;
+}

Window options

tsx
/**
+ * Initial path that the app will open
+ * @default "~" - Home directory
+ */
+path: string;
 
-/**
- * Defines in which mode the application is running
- * 0: None
- * 1: Single
- * 2: Multiple
- * @default 0
- */
-selectorMode: number;
+/**
+ * Defines in which mode the application is running
+ * 0: None
+ * 1: Single
+ * 2: Multiple
+ * @default 0
+ */
+selectorMode: number;
 
-/**
- * Footer component that will be displayed when \`selectorMode\` != 0
- * Can be used to display a list of selected files for example
- */
-Footer: React.FC;
+/**
+ * Footer component that will be displayed when \`selectorMode\` != 0
+ * Can be used to display a list of selected files for example
+ */
+Footer: React.FC;
 
-/**
- * Gets called each time the selection changes if \`selectorMode\` != 0
- */
-onSelectionChange: (params: OnSelectionChangeParams) => void;
+/**
+ * Gets called each time the selection changes if \`selectorMode\` != 0
+ */
+onSelectionChange: (params: OnSelectionChangeParams) => void;
 
-/**
- * Gets called when the selection is finished if \`selectorMode\` != 0
- */
-onSelectionFinish: Function;
`,13)]))}const d=s(n,[["render",e]]);export{D as __pageData,d as default}; +/** + * Gets called when the selection is finished if \`selectorMode\` != 0 + */ +onSelectionFinish: Function;
`,13)]))}const D=s(n,[["render",e]]);export{d as __pageData,D as default}; diff --git a/docs/assets/reference_apps_logic-sim_index.md.C9mpnn3d.js b/docs/assets/reference_apps_logic-sim_index.md.Dz7VR7Ab.js similarity index 76% rename from docs/assets/reference_apps_logic-sim_index.md.C9mpnn3d.js rename to docs/assets/reference_apps_logic-sim_index.md.Dz7VR7Ab.js index d599423f..9ceb761a 100644 --- a/docs/assets/reference_apps_logic-sim_index.md.C9mpnn3d.js +++ b/docs/assets/reference_apps_logic-sim_index.md.Dz7VR7Ab.js @@ -1,7 +1,7 @@ -import{_ as s,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/logic-sim","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/logic-sim | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/logic-sim | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/logic-sim/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/logic-sim/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/logic-sim/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/logic-sim/index.md","filePath":"reference/apps/logic-sim/index.md"}'),n={name:"reference/apps/logic-sim/index.md"};function e(p,i,h,k,r,o){return t(),a("div",null,i[0]||(i[0]=[l(`

@prozilla-os/logic-sim

About

@prozilla-os/logic-sim is a ProzillaOS application for simulating digital logic. Inspired by Digital Logic Sim by Sebastian Lague.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/logic-sim
+import{_ as s,c as a,a3 as l,o as t}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/logic-sim","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/logic-sim | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/logic-sim | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/logic-sim/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/logic-sim/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/logic-sim/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/logic-sim/index.md","filePath":"reference/apps/logic-sim/index.md"}'),n={name:"reference/apps/logic-sim/index.md"};function e(p,i,h,F,k,r){return t(),a("div",null,i[0]||(i[0]=[l(`

@prozilla-os/logic-sim

About

@prozilla-os/logic-sim is a ProzillaOS application for simulating digital logic. Inspired by Digital Logic Sim by Sebastian Lague.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/logic-sim
 yarn add @prozilla-os/core @prozilla-os/logic-sim
-pnpm add @prozilla-os/core @prozilla-os/logic-sim

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { logicSim } from "@prozilla-os/logic-sim";
+pnpm add @prozilla-os/core @prozilla-os/logic-sim

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { logicSim } from "@prozilla-os/logic-sim";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as s,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ logicSim ]
-        })
+        apps: new AppsConfig({
+          apps: [ logicSim ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,4 +20,4 @@ import{_ as s,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}
`,11)]))}const d=s(n,[["render",e]]);export{F as __pageData,d as default}; +}
`,11)]))}const d=s(n,[["render",e]]);export{D as __pageData,d as default}; diff --git a/docs/assets/reference_apps_logic-sim_index.md.C9mpnn3d.lean.js b/docs/assets/reference_apps_logic-sim_index.md.Dz7VR7Ab.lean.js similarity index 76% rename from docs/assets/reference_apps_logic-sim_index.md.C9mpnn3d.lean.js rename to docs/assets/reference_apps_logic-sim_index.md.Dz7VR7Ab.lean.js index d599423f..9ceb761a 100644 --- a/docs/assets/reference_apps_logic-sim_index.md.C9mpnn3d.lean.js +++ b/docs/assets/reference_apps_logic-sim_index.md.Dz7VR7Ab.lean.js @@ -1,7 +1,7 @@ -import{_ as s,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/logic-sim","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/logic-sim | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/logic-sim | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/logic-sim/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/logic-sim/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/logic-sim/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/logic-sim/index.md","filePath":"reference/apps/logic-sim/index.md"}'),n={name:"reference/apps/logic-sim/index.md"};function e(p,i,h,k,r,o){return t(),a("div",null,i[0]||(i[0]=[l(`

@prozilla-os/logic-sim

About

@prozilla-os/logic-sim is a ProzillaOS application for simulating digital logic. Inspired by Digital Logic Sim by Sebastian Lague.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/logic-sim
+import{_ as s,c as a,a3 as l,o as t}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/logic-sim","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/logic-sim | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/logic-sim | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/logic-sim/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/logic-sim/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/logic-sim/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/logic-sim/index.md","filePath":"reference/apps/logic-sim/index.md"}'),n={name:"reference/apps/logic-sim/index.md"};function e(p,i,h,F,k,r){return t(),a("div",null,i[0]||(i[0]=[l(`

@prozilla-os/logic-sim

About

@prozilla-os/logic-sim is a ProzillaOS application for simulating digital logic. Inspired by Digital Logic Sim by Sebastian Lague.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/logic-sim
 yarn add @prozilla-os/core @prozilla-os/logic-sim
-pnpm add @prozilla-os/core @prozilla-os/logic-sim

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { logicSim } from "@prozilla-os/logic-sim";
+pnpm add @prozilla-os/core @prozilla-os/logic-sim

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { logicSim } from "@prozilla-os/logic-sim";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as s,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ logicSim ]
-        })
+        apps: new AppsConfig({
+          apps: [ logicSim ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,4 +20,4 @@ import{_ as s,c as a,a1 as l,o as t}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}
`,11)]))}const d=s(n,[["render",e]]);export{F as __pageData,d as default}; +}
`,11)]))}const d=s(n,[["render",e]]);export{D as __pageData,d as default}; diff --git a/docs/assets/reference_apps_media-viewer_index.md.J6Rwheou.js b/docs/assets/reference_apps_media-viewer_index.md.D2X13k4k.js similarity index 73% rename from docs/assets/reference_apps_media-viewer_index.md.J6Rwheou.js rename to docs/assets/reference_apps_media-viewer_index.md.D2X13k4k.js index 0be72e0a..f6282e8c 100644 --- a/docs/assets/reference_apps_media-viewer_index.md.J6Rwheou.js +++ b/docs/assets/reference_apps_media-viewer_index.md.D2X13k4k.js @@ -1,7 +1,7 @@ -import{_ as s,c as a,a1 as e,o as t}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/media-viewer","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/media-viewer | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/media-viewer | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/media-viewer/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/media-viewer/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/media-viewer/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/media-viewer/index.md","filePath":"reference/apps/media-viewer/index.md"}'),l={name:"reference/apps/media-viewer/index.md"};function n(h,i,p,k,r,o){return t(),a("div",null,i[0]||(i[0]=[e(`

@prozilla-os/media-viewer

About

@prozilla-os/media-viewer is a ProzillaOS application for viewing different kinds of media.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/media-viewer
+import{_ as s,c as a,a3 as e,o as t}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/media-viewer","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/media-viewer | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/media-viewer | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/media-viewer/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/media-viewer/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/media-viewer/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/media-viewer/index.md","filePath":"reference/apps/media-viewer/index.md"}'),l={name:"reference/apps/media-viewer/index.md"};function n(h,i,p,k,F,r){return t(),a("div",null,i[0]||(i[0]=[e(`

@prozilla-os/media-viewer

About

@prozilla-os/media-viewer is a ProzillaOS application for viewing different kinds of media.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/media-viewer
 yarn add @prozilla-os/core @prozilla-os/media-viewer
-pnpm add @prozilla-os/core @prozilla-os/media-viewer

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { mediaViewer } from "@prozilla-os/media-viewer";
+pnpm add @prozilla-os/core @prozilla-os/media-viewer

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { mediaViewer } from "@prozilla-os/media-viewer";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as s,c as a,a1 as e,o as t}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ mediaViewer ]
-        })
+        apps: new AppsConfig({
+          apps: [ mediaViewer ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,7 +20,7 @@ import{_ as s,c as a,a1 as e,o as t}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * A virtual file containing media to open
- */
-file: VirtualFile;
`,13)]))}const d=s(l,[["render",n]]);export{F as __pageData,d as default}; +}

Window options

tsx
/**
+ * A virtual file containing media to open
+ */
+file: VirtualFile;
`,13)]))}const d=s(l,[["render",n]]);export{D as __pageData,d as default}; diff --git a/docs/assets/reference_apps_media-viewer_index.md.J6Rwheou.lean.js b/docs/assets/reference_apps_media-viewer_index.md.D2X13k4k.lean.js similarity index 73% rename from docs/assets/reference_apps_media-viewer_index.md.J6Rwheou.lean.js rename to docs/assets/reference_apps_media-viewer_index.md.D2X13k4k.lean.js index 0be72e0a..f6282e8c 100644 --- a/docs/assets/reference_apps_media-viewer_index.md.J6Rwheou.lean.js +++ b/docs/assets/reference_apps_media-viewer_index.md.D2X13k4k.lean.js @@ -1,7 +1,7 @@ -import{_ as s,c as a,a1 as e,o as t}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/media-viewer","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/media-viewer | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/media-viewer | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/media-viewer/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/media-viewer/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/media-viewer/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/media-viewer/index.md","filePath":"reference/apps/media-viewer/index.md"}'),l={name:"reference/apps/media-viewer/index.md"};function n(h,i,p,k,r,o){return t(),a("div",null,i[0]||(i[0]=[e(`

@prozilla-os/media-viewer

About

@prozilla-os/media-viewer is a ProzillaOS application for viewing different kinds of media.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/media-viewer
+import{_ as s,c as a,a3 as e,o as t}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/media-viewer","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/media-viewer | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/media-viewer | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/media-viewer/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/media-viewer/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/media-viewer/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/media-viewer/index.md","filePath":"reference/apps/media-viewer/index.md"}'),l={name:"reference/apps/media-viewer/index.md"};function n(h,i,p,k,F,r){return t(),a("div",null,i[0]||(i[0]=[e(`

@prozilla-os/media-viewer

About

@prozilla-os/media-viewer is a ProzillaOS application for viewing different kinds of media.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/media-viewer
 yarn add @prozilla-os/core @prozilla-os/media-viewer
-pnpm add @prozilla-os/core @prozilla-os/media-viewer

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { mediaViewer } from "@prozilla-os/media-viewer";
+pnpm add @prozilla-os/core @prozilla-os/media-viewer

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { mediaViewer } from "@prozilla-os/media-viewer";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as s,c as a,a1 as e,o as t}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ mediaViewer ]
-        })
+        apps: new AppsConfig({
+          apps: [ mediaViewer ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,7 +20,7 @@ import{_ as s,c as a,a1 as e,o as t}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * A virtual file containing media to open
- */
-file: VirtualFile;
`,13)]))}const d=s(l,[["render",n]]);export{F as __pageData,d as default}; +}

Window options

tsx
/**
+ * A virtual file containing media to open
+ */
+file: VirtualFile;
`,13)]))}const d=s(l,[["render",n]]);export{D as __pageData,d as default}; diff --git a/docs/assets/reference_apps_settings_index.md.BcWK4HN0.js b/docs/assets/reference_apps_settings_index.md.LaJCirFa.js similarity index 71% rename from docs/assets/reference_apps_settings_index.md.BcWK4HN0.js rename to docs/assets/reference_apps_settings_index.md.LaJCirFa.js index 94c4099b..d369cae2 100644 --- a/docs/assets/reference_apps_settings_index.md.BcWK4HN0.js +++ b/docs/assets/reference_apps_settings_index.md.LaJCirFa.js @@ -1,7 +1,7 @@ -import{_ as i,c as a,a1 as t,o as n}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/settings","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/settings | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/settings | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/settings/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/settings/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/settings/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/settings/index.md","filePath":"reference/apps/settings/index.md"}'),l={name:"reference/apps/settings/index.md"};function e(h,s,p,k,r,o){return n(),a("div",null,s[0]||(s[0]=[t(`

@prozilla-os/settings

About

@prozilla-os/settings is a ProzillaOS application for configuring settings.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/settings
+import{_ as i,c as a,a3 as t,o as n}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/settings","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/settings | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/settings | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/settings/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/settings/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/settings/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/settings/index.md","filePath":"reference/apps/settings/index.md"}'),l={name:"reference/apps/settings/index.md"};function e(h,s,p,k,F,r){return n(),a("div",null,s[0]||(s[0]=[t(`

@prozilla-os/settings

About

@prozilla-os/settings is a ProzillaOS application for configuring settings.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/settings
 yarn add @prozilla-os/core @prozilla-os/settings
-pnpm add @prozilla-os/core @prozilla-os/settings

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { settings } from "@prozilla-os/settings";
+pnpm add @prozilla-os/core @prozilla-os/settings

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { settings } from "@prozilla-os/settings";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as i,c as a,a1 as t,o as n}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ settings ]
-        })
+        apps: new AppsConfig({
+          apps: [ settings ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,8 +20,8 @@ import{_ as i,c as a,a1 as t,o as n}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * Initial tab to open
- * @default 0
- */
-tab: number;
`,13)]))}const d=i(l,[["render",e]]);export{F as __pageData,d as default}; +}

Window options

tsx
/**
+ * Initial tab to open
+ * @default 0
+ */
+tab: number;
`,13)]))}const d=i(l,[["render",e]]);export{D as __pageData,d as default}; diff --git a/docs/assets/reference_apps_settings_index.md.BcWK4HN0.lean.js b/docs/assets/reference_apps_settings_index.md.LaJCirFa.lean.js similarity index 71% rename from docs/assets/reference_apps_settings_index.md.BcWK4HN0.lean.js rename to docs/assets/reference_apps_settings_index.md.LaJCirFa.lean.js index 94c4099b..d369cae2 100644 --- a/docs/assets/reference_apps_settings_index.md.BcWK4HN0.lean.js +++ b/docs/assets/reference_apps_settings_index.md.LaJCirFa.lean.js @@ -1,7 +1,7 @@ -import{_ as i,c as a,a1 as t,o as n}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/settings","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/settings | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/settings | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/settings/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/settings/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/settings/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/settings/index.md","filePath":"reference/apps/settings/index.md"}'),l={name:"reference/apps/settings/index.md"};function e(h,s,p,k,r,o){return n(),a("div",null,s[0]||(s[0]=[t(`

@prozilla-os/settings

About

@prozilla-os/settings is a ProzillaOS application for configuring settings.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/settings
+import{_ as i,c as a,a3 as t,o as n}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/settings","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/settings | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/settings | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/settings/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/settings/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/settings/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/settings/index.md","filePath":"reference/apps/settings/index.md"}'),l={name:"reference/apps/settings/index.md"};function e(h,s,p,k,F,r){return n(),a("div",null,s[0]||(s[0]=[t(`

@prozilla-os/settings

About

@prozilla-os/settings is a ProzillaOS application for configuring settings.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/settings
 yarn add @prozilla-os/core @prozilla-os/settings
-pnpm add @prozilla-os/core @prozilla-os/settings

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { settings } from "@prozilla-os/settings";
+pnpm add @prozilla-os/core @prozilla-os/settings

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { settings } from "@prozilla-os/settings";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as i,c as a,a1 as t,o as n}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ settings ]
-        })
+        apps: new AppsConfig({
+          apps: [ settings ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,8 +20,8 @@ import{_ as i,c as a,a1 as t,o as n}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * Initial tab to open
- * @default 0
- */
-tab: number;
`,13)]))}const d=i(l,[["render",e]]);export{F as __pageData,d as default}; +}

Window options

tsx
/**
+ * Initial tab to open
+ * @default 0
+ */
+tab: number;
`,13)]))}const d=i(l,[["render",e]]);export{D as __pageData,d as default}; diff --git a/docs/assets/reference_apps_terminal_index.md.BFUCmzNG.js b/docs/assets/reference_apps_terminal_index.md.BnB8V4Ta.js similarity index 70% rename from docs/assets/reference_apps_terminal_index.md.BFUCmzNG.js rename to docs/assets/reference_apps_terminal_index.md.BnB8V4Ta.js index b8d873cd..3eadafbb 100644 --- a/docs/assets/reference_apps_terminal_index.md.BFUCmzNG.js +++ b/docs/assets/reference_apps_terminal_index.md.BnB8V4Ta.js @@ -1,7 +1,7 @@ -import{_ as s,c as a,a1 as t,o as l}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/terminal","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/terminal | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/terminal | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/terminal/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/terminal/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/terminal/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/terminal/index.md","filePath":"reference/apps/terminal/index.md"}'),n={name:"reference/apps/terminal/index.md"};function e(h,i,p,k,r,D){return l(),a("div",null,i[0]||(i[0]=[t(`

@prozilla-os/terminal

About

@prozilla-os/terminal is a terminal/shell application for ProzillaOS.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/terminal
+import{_ as s,c as a,a3 as t,o as l}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/terminal","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/terminal | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/terminal | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/terminal/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/terminal/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/terminal/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/terminal/index.md","filePath":"reference/apps/terminal/index.md"}'),n={name:"reference/apps/terminal/index.md"};function e(h,i,p,k,F,r){return l(),a("div",null,i[0]||(i[0]=[t(`

@prozilla-os/terminal

About

@prozilla-os/terminal is a terminal/shell application for ProzillaOS.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/terminal
 yarn add @prozilla-os/core @prozilla-os/terminal
-pnpm add @prozilla-os/core @prozilla-os/terminal

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { terminal } from "@prozilla-os/terminal";
+pnpm add @prozilla-os/core @prozilla-os/terminal

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { terminal } from "@prozilla-os/terminal";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as s,c as a,a1 as t,o as l}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ terminal ]
-        })
+        apps: new AppsConfig({
+          apps: [ terminal ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,13 +20,13 @@ import{_ as s,c as a,a1 as t,o as l}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * Initial path that the app will open
- * @default "~" - Home directory
- */
-path: string;
+}

Window options

tsx
/**
+ * Initial path that the app will open
+ * @default "~" - Home directory
+ */
+path: string;
 
-/**
- * Initial input
- */
-input: string;
`,13)]))}const d=s(n,[["render",e]]);export{F as __pageData,d as default}; +/** + * Initial input + */ +input: string;
`,13)]))}const d=s(n,[["render",e]]);export{D as __pageData,d as default}; diff --git a/docs/assets/reference_apps_terminal_index.md.BFUCmzNG.lean.js b/docs/assets/reference_apps_terminal_index.md.BnB8V4Ta.lean.js similarity index 70% rename from docs/assets/reference_apps_terminal_index.md.BFUCmzNG.lean.js rename to docs/assets/reference_apps_terminal_index.md.BnB8V4Ta.lean.js index b8d873cd..3eadafbb 100644 --- a/docs/assets/reference_apps_terminal_index.md.BFUCmzNG.lean.js +++ b/docs/assets/reference_apps_terminal_index.md.BnB8V4Ta.lean.js @@ -1,7 +1,7 @@ -import{_ as s,c as a,a1 as t,o as l}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/terminal","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/terminal | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/terminal | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/terminal/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/terminal/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/terminal/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/terminal/index.md","filePath":"reference/apps/terminal/index.md"}'),n={name:"reference/apps/terminal/index.md"};function e(h,i,p,k,r,D){return l(),a("div",null,i[0]||(i[0]=[t(`

@prozilla-os/terminal

About

@prozilla-os/terminal is a terminal/shell application for ProzillaOS.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/terminal
+import{_ as s,c as a,a3 as t,o as l}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/terminal","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/terminal | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/terminal | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/terminal/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/terminal/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/terminal/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/terminal/index.md","filePath":"reference/apps/terminal/index.md"}'),n={name:"reference/apps/terminal/index.md"};function e(h,i,p,k,F,r){return l(),a("div",null,i[0]||(i[0]=[t(`

@prozilla-os/terminal

About

@prozilla-os/terminal is a terminal/shell application for ProzillaOS.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/terminal
 yarn add @prozilla-os/core @prozilla-os/terminal
-pnpm add @prozilla-os/core @prozilla-os/terminal

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { terminal } from "@prozilla-os/terminal";
+pnpm add @prozilla-os/core @prozilla-os/terminal

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { terminal } from "@prozilla-os/terminal";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as s,c as a,a1 as t,o as l}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ terminal ]
-        })
+        apps: new AppsConfig({
+          apps: [ terminal ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,13 +20,13 @@ import{_ as s,c as a,a1 as t,o as l}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * Initial path that the app will open
- * @default "~" - Home directory
- */
-path: string;
+}

Window options

tsx
/**
+ * Initial path that the app will open
+ * @default "~" - Home directory
+ */
+path: string;
 
-/**
- * Initial input
- */
-input: string;
`,13)]))}const d=s(n,[["render",e]]);export{F as __pageData,d as default}; +/** + * Initial input + */ +input: string;
`,13)]))}const d=s(n,[["render",e]]);export{D as __pageData,d as default}; diff --git a/docs/assets/reference_apps_text-editor_index.md.qYSbViYR.js b/docs/assets/reference_apps_text-editor_index.md.0W2TpYZ2.js similarity index 70% rename from docs/assets/reference_apps_text-editor_index.md.qYSbViYR.js rename to docs/assets/reference_apps_text-editor_index.md.0W2TpYZ2.js index fcffd806..72ed9113 100644 --- a/docs/assets/reference_apps_text-editor_index.md.qYSbViYR.js +++ b/docs/assets/reference_apps_text-editor_index.md.0W2TpYZ2.js @@ -1,7 +1,7 @@ -import{_ as s,c as a,a1 as t,o as l}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/text-editor","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/text-editor | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/text-editor | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/text-editor/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/text-editor/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/text-editor/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/text-editor/index.md","filePath":"reference/apps/text-editor/index.md"}'),n={name:"reference/apps/text-editor/index.md"};function e(h,i,p,k,r,o){return l(),a("div",null,i[0]||(i[0]=[t(`

@prozilla-os/text-editor

About

@prozilla-os/text-editor is a text editor application for ProzillaOS.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/text-editor
+import{_ as s,c as a,a3 as t,o as l}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/text-editor","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/text-editor | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/text-editor | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/text-editor/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/text-editor/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/text-editor/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/text-editor/index.md","filePath":"reference/apps/text-editor/index.md"}'),n={name:"reference/apps/text-editor/index.md"};function e(h,i,k,p,F,r){return l(),a("div",null,i[0]||(i[0]=[t(`

@prozilla-os/text-editor

About

@prozilla-os/text-editor is a text editor application for ProzillaOS.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/text-editor
 yarn add @prozilla-os/core @prozilla-os/text-editor
-pnpm add @prozilla-os/core @prozilla-os/text-editor

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { textEditor } from "@prozilla-os/text-editor";
+pnpm add @prozilla-os/core @prozilla-os/text-editor

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { textEditor } from "@prozilla-os/text-editor";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as s,c as a,a1 as t,o as l}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ textEditor ]
-        })
+        apps: new AppsConfig({
+          apps: [ textEditor ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,20 +20,20 @@ import{_ as s,c as a,a1 as t,o as l}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * Initial path that the app will open
- * @default "~" - Home directory
- */
-path: string;
+}

Window options

tsx
/**
+ * Initial path that the app will open
+ * @default "~" - Home directory
+ */
+path: string;
 
-/**
- * Virtual file to open the app with
- */
-file: VirtualFile;
+/**
+ * Virtual file to open the app with
+ */
+file: VirtualFile;
 
-/**
- * Mode in which to run the app
- * "view" - Renders markdown files and renders syntax highlighting of other file formats, disables text editing
- * "edit" - Raw text editor
- */
-mode: "view" | "edit";
`,13)]))}const d=s(n,[["render",e]]);export{F as __pageData,d as default}; +/** + * Mode in which to run the app + * "view" - Renders markdown files and renders syntax highlighting of other file formats, disables text editing + * "edit" - Raw text editor + */ +mode: "view" | "edit";
`,13)]))}const d=s(n,[["render",e]]);export{D as __pageData,d as default}; diff --git a/docs/assets/reference_apps_text-editor_index.md.qYSbViYR.lean.js b/docs/assets/reference_apps_text-editor_index.md.0W2TpYZ2.lean.js similarity index 70% rename from docs/assets/reference_apps_text-editor_index.md.qYSbViYR.lean.js rename to docs/assets/reference_apps_text-editor_index.md.0W2TpYZ2.lean.js index fcffd806..72ed9113 100644 --- a/docs/assets/reference_apps_text-editor_index.md.qYSbViYR.lean.js +++ b/docs/assets/reference_apps_text-editor_index.md.0W2TpYZ2.lean.js @@ -1,7 +1,7 @@ -import{_ as s,c as a,a1 as t,o as l}from"./chunks/framework.S1oRGgk6.js";const F=JSON.parse('{"title":"@prozilla-os/text-editor","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/text-editor | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/text-editor | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/text-editor/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/text-editor/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/text-editor/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/text-editor/index.md","filePath":"reference/apps/text-editor/index.md"}'),n={name:"reference/apps/text-editor/index.md"};function e(h,i,p,k,r,o){return l(),a("div",null,i[0]||(i[0]=[t(`

@prozilla-os/text-editor

About

@prozilla-os/text-editor is a text editor application for ProzillaOS.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/text-editor
+import{_ as s,c as a,a3 as t,o as l}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"@prozilla-os/text-editor","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/text-editor | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/text-editor | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/apps/text-editor/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/apps/text-editor/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/apps/text-editor/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/apps/text-editor/index.md","filePath":"reference/apps/text-editor/index.md"}'),n={name:"reference/apps/text-editor/index.md"};function e(h,i,k,p,F,r){return l(),a("div",null,i[0]||(i[0]=[t(`

@prozilla-os/text-editor

About

@prozilla-os/text-editor is a text editor application for ProzillaOS.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/text-editor
 yarn add @prozilla-os/core @prozilla-os/text-editor
-pnpm add @prozilla-os/core @prozilla-os/text-editor

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { textEditor } from "@prozilla-os/text-editor";
+pnpm add @prozilla-os/core @prozilla-os/text-editor

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { textEditor } from "@prozilla-os/text-editor";
 
 function App() {
   return (
@@ -9,9 +9,9 @@ import{_ as s,c as a,a1 as t,o as l}from"./chunks/framework.S1oRGgk6.js";const F
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ textEditor ]
-        })
+        apps: new AppsConfig({
+          apps: [ textEditor ]
+        })
       }}
     >
       <Taskbar/>
@@ -20,20 +20,20 @@ import{_ as s,c as a,a1 as t,o as l}from"./chunks/framework.S1oRGgk6.js";const F
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * Initial path that the app will open
- * @default "~" - Home directory
- */
-path: string;
+}

Window options

tsx
/**
+ * Initial path that the app will open
+ * @default "~" - Home directory
+ */
+path: string;
 
-/**
- * Virtual file to open the app with
- */
-file: VirtualFile;
+/**
+ * Virtual file to open the app with
+ */
+file: VirtualFile;
 
-/**
- * Mode in which to run the app
- * "view" - Renders markdown files and renders syntax highlighting of other file formats, disables text editing
- * "edit" - Raw text editor
- */
-mode: "view" | "edit";
`,13)]))}const d=s(n,[["render",e]]);export{F as __pageData,d as default}; +/** + * Mode in which to run the app + * "view" - Renders markdown files and renders syntax highlighting of other file formats, disables text editing + * "edit" - Raw text editor + */ +mode: "view" | "edit";
`,13)]))}const d=s(n,[["render",e]]);export{D as __pageData,d as default}; diff --git a/docs/assets/reference_configuration.md.BUycfrpV.js b/docs/assets/reference_configuration.md.BEC0zcQJ.js similarity index 79% rename from docs/assets/reference_configuration.md.BUycfrpV.js rename to docs/assets/reference_configuration.md.BEC0zcQJ.js index e488dd51..0651493a 100644 --- a/docs/assets/reference_configuration.md.BUycfrpV.js +++ b/docs/assets/reference_configuration.md.BEC0zcQJ.js @@ -1,4 +1,4 @@ -import{_ as i,c as a,a1 as n,o as t}from"./chunks/framework.S1oRGgk6.js";const o=JSON.parse('{"title":"Configuration","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Configuration | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Configuration | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/configuration"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/configuration"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/configuration"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/configuration.md","filePath":"reference/configuration.md"}'),l={name:"reference/configuration.md"};function e(h,s,p,k,F,D){return t(),a("div",null,s[0]||(s[0]=[n(`

Configuration

To configure ProzillaOS, pass the following properties inside to the config prop on the <ProzillaOS> component.

<ProzillaOS> props

systemName

Name of the system

  • Optional
  • Type: string
  • Default: "ProzillaOS"

tagLine

Tag line or short description of the system

  • Optional
  • Type: string
  • Default: "Web-based Operating System"

skin

Configurations for assets, stylesheets and other visual elements

  • Optional
  • Type: Skin
  • Default: new Skin()

config

Configurations for functional elements and features

  • Optional
  • Type: ConfigOptions
ts
interface ConfigOptions {
+import{_ as i,c as a,a3 as n,o as t}from"./chunks/framework.BAnOA2-A.js";const o=JSON.parse('{"title":"Configuration","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Configuration | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Configuration | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/configuration"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/configuration"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/configuration"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/configuration.md","filePath":"reference/configuration.md"}'),F={name:"reference/configuration.md"};function l(e,s,h,p,k,r){return t(),a("div",null,s[0]||(s[0]=[n(`

Configuration

To configure ProzillaOS, pass the following properties inside to the config prop on the <ProzillaOS> component.

<ProzillaOS> props

systemName

Name of the system

  • Optional
  • Type: string
  • Default: "ProzillaOS"

tagLine

Tag line or short description of the system

  • Optional
  • Type: string
  • Default: "Web-based Operating System"

skin

Configurations for assets, stylesheets and other visual elements

  • Optional
  • Type: Skin
  • Default: new Skin()

config

Configurations for functional elements and features

  • Optional
  • Type: ConfigOptions
ts
interface ConfigOptions {
 	apps?: AppsConfig;
 	desktop?: DesktopConfig;
 	misc?: MiscConfig;
@@ -6,31 +6,31 @@ import{_ as i,c as a,a1 as n,o as t}from"./chunks/framework.S1oRGgk6.js";const o
 	taskbar?: TaskbarConfig;
 	tracking?: TrackingConfig;
 	windows?: WindowsConfig;
-}

Example

tsx
<ProzillaOS
+}

Example

tsx
<ProzillaOS
 	systemName={"ProzillaOS"}
 	tagLine={"Web-based Operating System"}
-	skin={new Skin({
+	skin={new Skin({
 		defaultWallpaper: "/assets/wallpapers/abstract-mesh-gradient-orange-red-purple.png"
-	})}
+	})}
 	config={{
-		apps: new AppsConfig({
-			apps: [
-				fileExplorer.setName("Files")
-					.setDescription("Browse and manage your virtual files on ProzillaOS.")
-					.setIconUrl("/assets/apps/icons/file-explorer.svg"),
-				terminal.setName("Commands")
-					.setDescription("A command line tool inspired by the Unix shell that runs entirely in your browser using ProzillaOS. Allows you to interact and manipulate the virtual drive and run silly commands.")
-					.setIconUrl("/assets/apps/icons/terminal.svg"),
-				settings.setName("Settings")
-					.setDescription(\`Configure ProzillaOS's settings and customize your experience.\`)
-					.setIconUrl("/assets/apps/icons/settings.svg"),
-			],
-		}),
-		desktop: new DesktopConfig({
+		apps: new AppsConfig({
+			apps: [
+				fileExplorer.setName("Files")
+					.setDescription("Browse and manage your virtual files on ProzillaOS.")
+					.setIconUrl("/assets/apps/icons/file-explorer.svg"),
+				terminal.setName("Commands")
+					.setDescription("A command line tool inspired by the Unix shell that runs entirely in your browser using ProzillaOS. Allows you to interact and manipulate the virtual drive and run silly commands.")
+					.setIconUrl("/assets/apps/icons/terminal.svg"),
+				settings.setName("Settings")
+					.setDescription(\`Configure ProzillaOS's settings and customize your experience.\`)
+					.setIconUrl("/assets/apps/icons/settings.svg"),
+			],
+		}),
+		desktop: new DesktopConfig({
 			defaultWallpaper: "/assets/wallpapers/abstract-mesh-gradient-orange-red-purple.png"
-		}),
-		taskbar: new TaskbarConfig({
+		}),
+		taskbar: new TaskbarConfig({
 			height: 48
-		}),
+		}),
 	}}
->
`,19)]))}const g=i(l,[["render",e]]);export{o as __pageData,g as default}; +>
`,19)]))}const g=i(F,[["render",l]]);export{o as __pageData,g as default}; diff --git a/docs/assets/reference_configuration.md.BUycfrpV.lean.js b/docs/assets/reference_configuration.md.BEC0zcQJ.lean.js similarity index 79% rename from docs/assets/reference_configuration.md.BUycfrpV.lean.js rename to docs/assets/reference_configuration.md.BEC0zcQJ.lean.js index e488dd51..0651493a 100644 --- a/docs/assets/reference_configuration.md.BUycfrpV.lean.js +++ b/docs/assets/reference_configuration.md.BEC0zcQJ.lean.js @@ -1,4 +1,4 @@ -import{_ as i,c as a,a1 as n,o as t}from"./chunks/framework.S1oRGgk6.js";const o=JSON.parse('{"title":"Configuration","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Configuration | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Configuration | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/configuration"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/configuration"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/configuration"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/configuration.md","filePath":"reference/configuration.md"}'),l={name:"reference/configuration.md"};function e(h,s,p,k,F,D){return t(),a("div",null,s[0]||(s[0]=[n(`

Configuration

To configure ProzillaOS, pass the following properties inside to the config prop on the <ProzillaOS> component.

<ProzillaOS> props

systemName

Name of the system

  • Optional
  • Type: string
  • Default: "ProzillaOS"

tagLine

Tag line or short description of the system

  • Optional
  • Type: string
  • Default: "Web-based Operating System"

skin

Configurations for assets, stylesheets and other visual elements

  • Optional
  • Type: Skin
  • Default: new Skin()

config

Configurations for functional elements and features

  • Optional
  • Type: ConfigOptions
ts
interface ConfigOptions {
+import{_ as i,c as a,a3 as n,o as t}from"./chunks/framework.BAnOA2-A.js";const o=JSON.parse('{"title":"Configuration","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Configuration | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Configuration | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/configuration"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/configuration"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/configuration"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/configuration.md","filePath":"reference/configuration.md"}'),F={name:"reference/configuration.md"};function l(e,s,h,p,k,r){return t(),a("div",null,s[0]||(s[0]=[n(`

Configuration

To configure ProzillaOS, pass the following properties inside to the config prop on the <ProzillaOS> component.

<ProzillaOS> props

systemName

Name of the system

  • Optional
  • Type: string
  • Default: "ProzillaOS"

tagLine

Tag line or short description of the system

  • Optional
  • Type: string
  • Default: "Web-based Operating System"

skin

Configurations for assets, stylesheets and other visual elements

  • Optional
  • Type: Skin
  • Default: new Skin()

config

Configurations for functional elements and features

  • Optional
  • Type: ConfigOptions
ts
interface ConfigOptions {
 	apps?: AppsConfig;
 	desktop?: DesktopConfig;
 	misc?: MiscConfig;
@@ -6,31 +6,31 @@ import{_ as i,c as a,a1 as n,o as t}from"./chunks/framework.S1oRGgk6.js";const o
 	taskbar?: TaskbarConfig;
 	tracking?: TrackingConfig;
 	windows?: WindowsConfig;
-}

Example

tsx
<ProzillaOS
+}

Example

tsx
<ProzillaOS
 	systemName={"ProzillaOS"}
 	tagLine={"Web-based Operating System"}
-	skin={new Skin({
+	skin={new Skin({
 		defaultWallpaper: "/assets/wallpapers/abstract-mesh-gradient-orange-red-purple.png"
-	})}
+	})}
 	config={{
-		apps: new AppsConfig({
-			apps: [
-				fileExplorer.setName("Files")
-					.setDescription("Browse and manage your virtual files on ProzillaOS.")
-					.setIconUrl("/assets/apps/icons/file-explorer.svg"),
-				terminal.setName("Commands")
-					.setDescription("A command line tool inspired by the Unix shell that runs entirely in your browser using ProzillaOS. Allows you to interact and manipulate the virtual drive and run silly commands.")
-					.setIconUrl("/assets/apps/icons/terminal.svg"),
-				settings.setName("Settings")
-					.setDescription(\`Configure ProzillaOS's settings and customize your experience.\`)
-					.setIconUrl("/assets/apps/icons/settings.svg"),
-			],
-		}),
-		desktop: new DesktopConfig({
+		apps: new AppsConfig({
+			apps: [
+				fileExplorer.setName("Files")
+					.setDescription("Browse and manage your virtual files on ProzillaOS.")
+					.setIconUrl("/assets/apps/icons/file-explorer.svg"),
+				terminal.setName("Commands")
+					.setDescription("A command line tool inspired by the Unix shell that runs entirely in your browser using ProzillaOS. Allows you to interact and manipulate the virtual drive and run silly commands.")
+					.setIconUrl("/assets/apps/icons/terminal.svg"),
+				settings.setName("Settings")
+					.setDescription(\`Configure ProzillaOS's settings and customize your experience.\`)
+					.setIconUrl("/assets/apps/icons/settings.svg"),
+			],
+		}),
+		desktop: new DesktopConfig({
 			defaultWallpaper: "/assets/wallpapers/abstract-mesh-gradient-orange-red-purple.png"
-		}),
-		taskbar: new TaskbarConfig({
+		}),
+		taskbar: new TaskbarConfig({
 			height: 48
-		}),
+		}),
 	}}
->
`,19)]))}const g=i(l,[["render",e]]);export{o as __pageData,g as default}; +>
`,19)]))}const g=i(F,[["render",l]]);export{o as __pageData,g as default}; diff --git a/docs/assets/reference_core_classes_apps_app.md.aYUDD6qD.js b/docs/assets/reference_core_classes_apps_app.md.CG3juEaZ.js similarity index 90% rename from docs/assets/reference_core_classes_apps_app.md.aYUDD6qD.js rename to docs/assets/reference_core_classes_apps_app.md.CG3juEaZ.js index aea143f0..9a5af63a 100644 --- a/docs/assets/reference_core_classes_apps_app.md.aYUDD6qD.js +++ b/docs/assets/reference_core_classes_apps_app.md.CG3juEaZ.js @@ -1,7 +1,7 @@ -import{_ as i,c as n,j as e,a as s,t as o,a1 as l,o as r}from"./chunks/framework.S1oRGgk6.js";const m=JSON.parse('{"title":"Class App","description":"An application that can be run by ProzillaOS","frontmatter":{"outline":"deep","description":"An application that can be run by ProzillaOS","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class App | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class App | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"An application that can be run by ProzillaOS"}],["meta",{"name":"twitter:description","content":"An application that can be run by ProzillaOS"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/apps/app"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/apps/app"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/apps/app"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/apps/app.md","filePath":"reference/core/classes/apps/app.md"}'),p={name:"reference/core/classes/apps/app.md"};function c(a,t,d,h,u,g){return r(),n("div",null,[t[0]||(t[0]=e("h1",{id:"class-app",tabindex:"-1"},[s("Class "),e("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/system/configs/app.tsx",target:"_blank",rel:"noreferrer"},[e("code",null,"App")]),s(),e("a",{class:"header-anchor",href:"#class-app","aria-label":'Permalink to "Class [`App`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/system/configs/app.tsx)"'},"​")],-1)),e("p",null,o(a.$frontmatter.description),1),t[1]||(t[1]=l(`

Applications can be installed by adding them to the apps array in AppsConfig

Type parameters

<AppProps extends WindowProps = WindowProps>

Constructor

new App(name, id, windowContent, windowOptions)

Parameters

  • name
    • Type: string
  • id
    • Type: string
  • windowContent
    • Type: React.FC<AppProps>
  • windowOptions
    • Type: WindowOptions | undefined
ts
interface WindowOptions {
+import{_ as i,c as n,j as e,a as s,t as o,a3 as l,o as r}from"./chunks/framework.BAnOA2-A.js";const F=JSON.parse('{"title":"Class App","description":"An application that can be run by ProzillaOS","frontmatter":{"outline":"deep","description":"An application that can be run by ProzillaOS","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class App | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class App | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"An application that can be run by ProzillaOS"}],["meta",{"name":"twitter:description","content":"An application that can be run by ProzillaOS"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/apps/app"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/apps/app"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/apps/app"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/apps/app.md","filePath":"reference/core/classes/apps/app.md"}'),p={name:"reference/core/classes/apps/app.md"};function c(a,t,d,h,u,g){return r(),n("div",null,[t[0]||(t[0]=e("h1",{id:"class-app",tabindex:"-1"},[s("Class "),e("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/system/configs/app.tsx",target:"_blank",rel:"noreferrer"},[e("code",null,"App")]),s(),e("a",{class:"header-anchor",href:"#class-app","aria-label":'Permalink to "Class [`App`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/system/configs/app.tsx)"'},"​")],-1)),e("p",null,o(a.$frontmatter.description),1),t[1]||(t[1]=l(`

Applications can be installed by adding them to the apps array in AppsConfig

Type parameters

<AppProps extends WindowProps = WindowProps>

Constructor

new App(name, id, windowContent, windowOptions)

Parameters

  • name
    • Type: string
  • id
    • Type: string
  • windowContent
    • Type: React.FC<AppProps>
  • windowOptions
    • Type: WindowOptions | undefined
ts
interface WindowOptions {
 	size?: Vector2;
-	[key: string]: unknown;
-}

References

Properties

name

The display name of this application

  • Type: string
  • Default: "App"

id

The unique ID of this application

  • Type: string
  • Default: "app"

WARNING

Every app must have a unique ID that only contains lower case letters (a-z), numbers (0-9) and dashes (-).

windowContent

React component that renders this app inside a window when the app is running

  • Type: React.FC<AppProps>

windowOptions

Default options that get passed to the windowContent component

  • Type: WindowOptions
ts
interface WindowOptions {
+	[key: string]: unknown;
+}

References

Properties

name

The display name of this application

  • Type: string
  • Default: "App"

id

The unique ID of this application

  • Type: string
  • Default: "app"

WARNING

Every app must have a unique ID that only contains lower case letters (a-z), numbers (0-9) and dashes (-).

windowContent

React component that renders this app inside a window when the app is running

  • Type: React.FC<AppProps>

windowOptions

Default options that get passed to the windowContent component

  • Type: WindowOptions
ts
interface WindowOptions {
 	size?: Vector2;
-	[key: string]: unknown;
-}

References

description

Description of this application

  • Type: string | null

iconUrl

URL of the icon of this application

  • Type: string | null

role

Defines what parts of the OS this app is responsible for and how it can be used by other apps

  • Type: string | null

associatedExtensions

An array of file extensions that this application is used to open and read

  • Type: string | null

pinnedByDefault

Determines whether the app is pinned by default

  • Type: boolean
  • Default: true

launchAtStartup

Determines whether the app is launched at startup

  • Type: boolean
  • Default: false

Methods

setName(name)

Set the display name of this application

  • Parameters
    • name
      • Type: string
  • Returns
    • Type: this

setDescription(description)

Set the description of this application

  • Parameters
    • description
      • Type: string
  • Returns
    • Type: this

setIconUrl(iconUrl)

Set the URL of the icon of this application

  • Parameters
    • iconUrl
      • Type: string | null
  • Returns
    • Type: this

setRole(role)

Set the role of this application

  • Parameters
    • role
      • Type: string | null
  • Returns
    • Type: this

setAssociatedExtensions(extensions)

Set the associated extensions of this application

  • Parameters
    • extensions
      • Type: string[] | null
  • Returns
    • Type: this

setPinnedByDefault(pinnedByDefault)

Changes whether this application is pinned by default or not

  • Parameters
    • pinnedByDefault
      • Type: boolean
  • Returns
    • Type: this

setLaunchAtStartup(launchAtStartup)

Changes whether this application is launched at startup or not

  • Parameters
    • launchAtStartup
      • Type: boolean
  • Returns
    • Type: this

WindowContent(props)

Renders the app as a React component

  • Parameters
    • props
      • Type: AppProps
  • Returns
    • Type: React.ReactElement
`,68))])}const y=i(p,[["render",c]]);export{m as __pageData,y as default}; + [key: string]: unknown; +}

References

description

Description of this application

  • Type: string | null

iconUrl

URL of the icon of this application

  • Type: string | null

role

Defines what parts of the OS this app is responsible for and how it can be used by other apps

  • Type: string | null

associatedExtensions

An array of file extensions that this application is used to open and read

  • Type: string | null

pinnedByDefault

Determines whether the app is pinned by default

  • Type: boolean
  • Default: true

launchAtStartup

Determines whether the app is launched at startup

  • Type: boolean
  • Default: false

Methods

setName(name)

Set the display name of this application

  • Parameters
    • name
      • Type: string
  • Returns
    • Type: this

setDescription(description)

Set the description of this application

  • Parameters
    • description
      • Type: string
  • Returns
    • Type: this

setIconUrl(iconUrl)

Set the URL of the icon of this application

  • Parameters
    • iconUrl
      • Type: string | null
  • Returns
    • Type: this

setRole(role)

Set the role of this application

  • Parameters
    • role
      • Type: string | null
  • Returns
    • Type: this

setAssociatedExtensions(extensions)

Set the associated extensions of this application

  • Parameters
    • extensions
      • Type: string[] | null
  • Returns
    • Type: this

setPinnedByDefault(pinnedByDefault)

Changes whether this application is pinned by default or not

  • Parameters
    • pinnedByDefault
      • Type: boolean
  • Returns
    • Type: this

setLaunchAtStartup(launchAtStartup)

Changes whether this application is launched at startup or not

  • Parameters
    • launchAtStartup
      • Type: boolean
  • Returns
    • Type: this

WindowContent(props)

Renders the app as a React component

  • Parameters
    • props
      • Type: AppProps
  • Returns
    • Type: React.ReactElement
`,68))])}const m=i(p,[["render",c]]);export{F as __pageData,m as default}; diff --git a/docs/assets/reference_core_classes_apps_app.md.aYUDD6qD.lean.js b/docs/assets/reference_core_classes_apps_app.md.CG3juEaZ.lean.js similarity index 90% rename from docs/assets/reference_core_classes_apps_app.md.aYUDD6qD.lean.js rename to docs/assets/reference_core_classes_apps_app.md.CG3juEaZ.lean.js index aea143f0..9a5af63a 100644 --- a/docs/assets/reference_core_classes_apps_app.md.aYUDD6qD.lean.js +++ b/docs/assets/reference_core_classes_apps_app.md.CG3juEaZ.lean.js @@ -1,7 +1,7 @@ -import{_ as i,c as n,j as e,a as s,t as o,a1 as l,o as r}from"./chunks/framework.S1oRGgk6.js";const m=JSON.parse('{"title":"Class App","description":"An application that can be run by ProzillaOS","frontmatter":{"outline":"deep","description":"An application that can be run by ProzillaOS","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class App | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class App | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"An application that can be run by ProzillaOS"}],["meta",{"name":"twitter:description","content":"An application that can be run by ProzillaOS"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/apps/app"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/apps/app"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/apps/app"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/apps/app.md","filePath":"reference/core/classes/apps/app.md"}'),p={name:"reference/core/classes/apps/app.md"};function c(a,t,d,h,u,g){return r(),n("div",null,[t[0]||(t[0]=e("h1",{id:"class-app",tabindex:"-1"},[s("Class "),e("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/system/configs/app.tsx",target:"_blank",rel:"noreferrer"},[e("code",null,"App")]),s(),e("a",{class:"header-anchor",href:"#class-app","aria-label":'Permalink to "Class [`App`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/system/configs/app.tsx)"'},"​")],-1)),e("p",null,o(a.$frontmatter.description),1),t[1]||(t[1]=l(`

Applications can be installed by adding them to the apps array in AppsConfig

Type parameters

<AppProps extends WindowProps = WindowProps>

Constructor

new App(name, id, windowContent, windowOptions)

Parameters

  • name
    • Type: string
  • id
    • Type: string
  • windowContent
    • Type: React.FC<AppProps>
  • windowOptions
    • Type: WindowOptions | undefined
ts
interface WindowOptions {
+import{_ as i,c as n,j as e,a as s,t as o,a3 as l,o as r}from"./chunks/framework.BAnOA2-A.js";const F=JSON.parse('{"title":"Class App","description":"An application that can be run by ProzillaOS","frontmatter":{"outline":"deep","description":"An application that can be run by ProzillaOS","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class App | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class App | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"An application that can be run by ProzillaOS"}],["meta",{"name":"twitter:description","content":"An application that can be run by ProzillaOS"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/apps/app"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/apps/app"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/apps/app"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/apps/app.md","filePath":"reference/core/classes/apps/app.md"}'),p={name:"reference/core/classes/apps/app.md"};function c(a,t,d,h,u,g){return r(),n("div",null,[t[0]||(t[0]=e("h1",{id:"class-app",tabindex:"-1"},[s("Class "),e("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/system/configs/app.tsx",target:"_blank",rel:"noreferrer"},[e("code",null,"App")]),s(),e("a",{class:"header-anchor",href:"#class-app","aria-label":'Permalink to "Class [`App`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/system/configs/app.tsx)"'},"​")],-1)),e("p",null,o(a.$frontmatter.description),1),t[1]||(t[1]=l(`

Applications can be installed by adding them to the apps array in AppsConfig

Type parameters

<AppProps extends WindowProps = WindowProps>

Constructor

new App(name, id, windowContent, windowOptions)

Parameters

  • name
    • Type: string
  • id
    • Type: string
  • windowContent
    • Type: React.FC<AppProps>
  • windowOptions
    • Type: WindowOptions | undefined
ts
interface WindowOptions {
 	size?: Vector2;
-	[key: string]: unknown;
-}

References

Properties

name

The display name of this application

  • Type: string
  • Default: "App"

id

The unique ID of this application

  • Type: string
  • Default: "app"

WARNING

Every app must have a unique ID that only contains lower case letters (a-z), numbers (0-9) and dashes (-).

windowContent

React component that renders this app inside a window when the app is running

  • Type: React.FC<AppProps>

windowOptions

Default options that get passed to the windowContent component

  • Type: WindowOptions
ts
interface WindowOptions {
+	[key: string]: unknown;
+}

References

Properties

name

The display name of this application

  • Type: string
  • Default: "App"

id

The unique ID of this application

  • Type: string
  • Default: "app"

WARNING

Every app must have a unique ID that only contains lower case letters (a-z), numbers (0-9) and dashes (-).

windowContent

React component that renders this app inside a window when the app is running

  • Type: React.FC<AppProps>

windowOptions

Default options that get passed to the windowContent component

  • Type: WindowOptions
ts
interface WindowOptions {
 	size?: Vector2;
-	[key: string]: unknown;
-}

References

description

Description of this application

  • Type: string | null

iconUrl

URL of the icon of this application

  • Type: string | null

role

Defines what parts of the OS this app is responsible for and how it can be used by other apps

  • Type: string | null

associatedExtensions

An array of file extensions that this application is used to open and read

  • Type: string | null

pinnedByDefault

Determines whether the app is pinned by default

  • Type: boolean
  • Default: true

launchAtStartup

Determines whether the app is launched at startup

  • Type: boolean
  • Default: false

Methods

setName(name)

Set the display name of this application

  • Parameters
    • name
      • Type: string
  • Returns
    • Type: this

setDescription(description)

Set the description of this application

  • Parameters
    • description
      • Type: string
  • Returns
    • Type: this

setIconUrl(iconUrl)

Set the URL of the icon of this application

  • Parameters
    • iconUrl
      • Type: string | null
  • Returns
    • Type: this

setRole(role)

Set the role of this application

  • Parameters
    • role
      • Type: string | null
  • Returns
    • Type: this

setAssociatedExtensions(extensions)

Set the associated extensions of this application

  • Parameters
    • extensions
      • Type: string[] | null
  • Returns
    • Type: this

setPinnedByDefault(pinnedByDefault)

Changes whether this application is pinned by default or not

  • Parameters
    • pinnedByDefault
      • Type: boolean
  • Returns
    • Type: this

setLaunchAtStartup(launchAtStartup)

Changes whether this application is launched at startup or not

  • Parameters
    • launchAtStartup
      • Type: boolean
  • Returns
    • Type: this

WindowContent(props)

Renders the app as a React component

  • Parameters
    • props
      • Type: AppProps
  • Returns
    • Type: React.ReactElement
`,68))])}const y=i(p,[["render",c]]);export{m as __pageData,y as default}; + [key: string]: unknown; +}

References

description

Description of this application

  • Type: string | null

iconUrl

URL of the icon of this application

  • Type: string | null

role

Defines what parts of the OS this app is responsible for and how it can be used by other apps

  • Type: string | null

associatedExtensions

An array of file extensions that this application is used to open and read

  • Type: string | null

pinnedByDefault

Determines whether the app is pinned by default

  • Type: boolean
  • Default: true

launchAtStartup

Determines whether the app is launched at startup

  • Type: boolean
  • Default: false

Methods

setName(name)

Set the display name of this application

  • Parameters
    • name
      • Type: string
  • Returns
    • Type: this

setDescription(description)

Set the description of this application

  • Parameters
    • description
      • Type: string
  • Returns
    • Type: this

setIconUrl(iconUrl)

Set the URL of the icon of this application

  • Parameters
    • iconUrl
      • Type: string | null
  • Returns
    • Type: this

setRole(role)

Set the role of this application

  • Parameters
    • role
      • Type: string | null
  • Returns
    • Type: this

setAssociatedExtensions(extensions)

Set the associated extensions of this application

  • Parameters
    • extensions
      • Type: string[] | null
  • Returns
    • Type: this

setPinnedByDefault(pinnedByDefault)

Changes whether this application is pinned by default or not

  • Parameters
    • pinnedByDefault
      • Type: boolean
  • Returns
    • Type: this

setLaunchAtStartup(launchAtStartup)

Changes whether this application is launched at startup or not

  • Parameters
    • launchAtStartup
      • Type: boolean
  • Returns
    • Type: this

WindowContent(props)

Renders the app as a React component

  • Parameters
    • props
      • Type: AppProps
  • Returns
    • Type: React.ReactElement
`,68))])}const m=i(p,[["render",c]]);export{F as __pageData,m as default}; diff --git a/docs/assets/reference_core_classes_system_apps-config.md.Byh2xKai.js b/docs/assets/reference_core_classes_system_apps-config.md.DDxlHG5A.js similarity index 61% rename from docs/assets/reference_core_classes_system_apps-config.md.Byh2xKai.js rename to docs/assets/reference_core_classes_system_apps-config.md.DDxlHG5A.js index 6b00427c..b1f13175 100644 --- a/docs/assets/reference_core_classes_system_apps-config.md.Byh2xKai.js +++ b/docs/assets/reference_core_classes_system_apps-config.md.DDxlHG5A.js @@ -1 +1 @@ -import{_ as a,c as s,a1 as t,o}from"./chunks/framework.S1oRGgk6.js";const m=JSON.parse('{"title":"Class AppsConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class AppsConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class AppsConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/apps-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/apps-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/apps-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/apps-config.md","filePath":"reference/core/classes/system/apps-config.md"}'),i={name:"reference/core/classes/system/apps-config.md"};function n(r,e,p,l,c,h){return o(),s("div",null,e[0]||(e[0]=[t('

Class AppsConfig

Constructor

new AppsConfig(options)

Parameters

  • options
    • Type: AppsConfigOptions | undefined
ts
interface AppsConfigOptions {\n	apps?: App[];\n}

References

Properties

apps

An array of applications

',11)]))}const g=a(i,[["render",n]]);export{m as __pageData,g as default}; +import{_ as s,c as a,a3 as t,o}from"./chunks/framework.BAnOA2-A.js";const m=JSON.parse('{"title":"Class AppsConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class AppsConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class AppsConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/apps-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/apps-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/apps-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/apps-config.md","filePath":"reference/core/classes/system/apps-config.md"}'),i={name:"reference/core/classes/system/apps-config.md"};function n(r,e,p,l,c,h){return o(),a("div",null,e[0]||(e[0]=[t('

Class AppsConfig

Constructor

new AppsConfig(options)

Parameters

  • options
    • Type: AppsConfigOptions | undefined
ts
interface AppsConfigOptions {\n	apps?: App[];\n}

References

Properties

apps

An array of applications

',11)]))}const g=s(i,[["render",n]]);export{m as __pageData,g as default}; diff --git a/docs/assets/reference_core_classes_system_apps-config.md.Byh2xKai.lean.js b/docs/assets/reference_core_classes_system_apps-config.md.DDxlHG5A.lean.js similarity index 61% rename from docs/assets/reference_core_classes_system_apps-config.md.Byh2xKai.lean.js rename to docs/assets/reference_core_classes_system_apps-config.md.DDxlHG5A.lean.js index 6b00427c..b1f13175 100644 --- a/docs/assets/reference_core_classes_system_apps-config.md.Byh2xKai.lean.js +++ b/docs/assets/reference_core_classes_system_apps-config.md.DDxlHG5A.lean.js @@ -1 +1 @@ -import{_ as a,c as s,a1 as t,o}from"./chunks/framework.S1oRGgk6.js";const m=JSON.parse('{"title":"Class AppsConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class AppsConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class AppsConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/apps-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/apps-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/apps-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/apps-config.md","filePath":"reference/core/classes/system/apps-config.md"}'),i={name:"reference/core/classes/system/apps-config.md"};function n(r,e,p,l,c,h){return o(),s("div",null,e[0]||(e[0]=[t('

Class AppsConfig

Constructor

new AppsConfig(options)

Parameters

  • options
    • Type: AppsConfigOptions | undefined
ts
interface AppsConfigOptions {\n	apps?: App[];\n}

References

Properties

apps

An array of applications

',11)]))}const g=a(i,[["render",n]]);export{m as __pageData,g as default}; +import{_ as s,c as a,a3 as t,o}from"./chunks/framework.BAnOA2-A.js";const m=JSON.parse('{"title":"Class AppsConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class AppsConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class AppsConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/apps-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/apps-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/apps-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/apps-config.md","filePath":"reference/core/classes/system/apps-config.md"}'),i={name:"reference/core/classes/system/apps-config.md"};function n(r,e,p,l,c,h){return o(),a("div",null,e[0]||(e[0]=[t('

Class AppsConfig

Constructor

new AppsConfig(options)

Parameters

  • options
    • Type: AppsConfigOptions | undefined
ts
interface AppsConfigOptions {\n	apps?: App[];\n}

References

Properties

apps

An array of applications

',11)]))}const g=s(i,[["render",n]]);export{m as __pageData,g as default}; diff --git a/docs/assets/reference_core_classes_system_desktop-config.md.N1aoQ5rL.js b/docs/assets/reference_core_classes_system_desktop-config.md.DrnhEsNH.js similarity index 90% rename from docs/assets/reference_core_classes_system_desktop-config.md.N1aoQ5rL.js rename to docs/assets/reference_core_classes_system_desktop-config.md.DrnhEsNH.js index b9b84fca..dc073a4f 100644 --- a/docs/assets/reference_core_classes_system_desktop-config.md.N1aoQ5rL.js +++ b/docs/assets/reference_core_classes_system_desktop-config.md.DrnhEsNH.js @@ -1,4 +1,4 @@ -import{_ as t,c as s,a1 as a,o as i}from"./chunks/framework.S1oRGgk6.js";const k=JSON.parse('{"title":"Class DesktopConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class DesktopConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class DesktopConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/desktop-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/desktop-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/desktop-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/desktop-config.md","filePath":"reference/core/classes/system/desktop-config.md"}'),o={name:"reference/core/classes/system/desktop-config.md"};function n(r,e,l,c,d,p){return i(),s("div",null,e[0]||(e[0]=[a(`

Class DesktopConfig

Constructor

new DesktopConfig(options)

Parameters

  • options
    • Type: DesktopConfigOptions | undefined
ts
interface DesktopConfigOptions {
+import{_ as t,c as s,a3 as a,o as i}from"./chunks/framework.BAnOA2-A.js";const k=JSON.parse('{"title":"Class DesktopConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class DesktopConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class DesktopConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/desktop-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/desktop-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/desktop-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/desktop-config.md","filePath":"reference/core/classes/system/desktop-config.md"}'),o={name:"reference/core/classes/system/desktop-config.md"};function n(r,e,l,c,d,p){return i(),s("div",null,e[0]||(e[0]=[a(`

Class DesktopConfig

Constructor

new DesktopConfig(options)

Parameters

  • options
    • Type: DesktopConfigOptions | undefined
ts
interface DesktopConfigOptions {
 	defaultIconSize?: 0 | 1 | 2;
 	defaultIconDirection?: 0 | 1;
 }

Properties

defaultIconSize

The default size of the desktop icons

ValueDescription
0Small
1Medium
2Large
  • Type: 0 | 1 | 2
  • Default: 1 (Medium)

defaultIconDirection

The default direction of the desktop icons

ValueDescription
0Vertical
1Horizontal
  • Type: 0 | 1
  • Default: 0 (Vertical)
`,15)]))}const g=t(o,[["render",n]]);export{k as __pageData,g as default}; diff --git a/docs/assets/reference_core_classes_system_desktop-config.md.N1aoQ5rL.lean.js b/docs/assets/reference_core_classes_system_desktop-config.md.DrnhEsNH.lean.js similarity index 90% rename from docs/assets/reference_core_classes_system_desktop-config.md.N1aoQ5rL.lean.js rename to docs/assets/reference_core_classes_system_desktop-config.md.DrnhEsNH.lean.js index b9b84fca..dc073a4f 100644 --- a/docs/assets/reference_core_classes_system_desktop-config.md.N1aoQ5rL.lean.js +++ b/docs/assets/reference_core_classes_system_desktop-config.md.DrnhEsNH.lean.js @@ -1,4 +1,4 @@ -import{_ as t,c as s,a1 as a,o as i}from"./chunks/framework.S1oRGgk6.js";const k=JSON.parse('{"title":"Class DesktopConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class DesktopConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class DesktopConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/desktop-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/desktop-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/desktop-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/desktop-config.md","filePath":"reference/core/classes/system/desktop-config.md"}'),o={name:"reference/core/classes/system/desktop-config.md"};function n(r,e,l,c,d,p){return i(),s("div",null,e[0]||(e[0]=[a(`

Class DesktopConfig

Constructor

new DesktopConfig(options)

Parameters

  • options
    • Type: DesktopConfigOptions | undefined
ts
interface DesktopConfigOptions {
+import{_ as t,c as s,a3 as a,o as i}from"./chunks/framework.BAnOA2-A.js";const k=JSON.parse('{"title":"Class DesktopConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class DesktopConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class DesktopConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/desktop-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/desktop-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/desktop-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/desktop-config.md","filePath":"reference/core/classes/system/desktop-config.md"}'),o={name:"reference/core/classes/system/desktop-config.md"};function n(r,e,l,c,d,p){return i(),s("div",null,e[0]||(e[0]=[a(`

Class DesktopConfig

Constructor

new DesktopConfig(options)

Parameters

  • options
    • Type: DesktopConfigOptions | undefined
ts
interface DesktopConfigOptions {
 	defaultIconSize?: 0 | 1 | 2;
 	defaultIconDirection?: 0 | 1;
 }

Properties

defaultIconSize

The default size of the desktop icons

ValueDescription
0Small
1Medium
2Large
  • Type: 0 | 1 | 2
  • Default: 1 (Medium)

defaultIconDirection

The default direction of the desktop icons

ValueDescription
0Vertical
1Horizontal
  • Type: 0 | 1
  • Default: 0 (Vertical)
`,15)]))}const g=t(o,[["render",n]]);export{k as __pageData,g as default}; diff --git a/docs/assets/reference_core_classes_system_misc-config.md.Duv8Y2DT.js b/docs/assets/reference_core_classes_system_misc-config.md.D2lB9p7j.js similarity index 60% rename from docs/assets/reference_core_classes_system_misc-config.md.Duv8Y2DT.js rename to docs/assets/reference_core_classes_system_misc-config.md.D2lB9p7j.js index 1430a3a2..eb09db75 100644 --- a/docs/assets/reference_core_classes_system_misc-config.md.Duv8Y2DT.js +++ b/docs/assets/reference_core_classes_system_misc-config.md.D2lB9p7j.js @@ -1 +1 @@ -import{_ as s,c as a,a1 as t,o as i}from"./chunks/framework.S1oRGgk6.js";const h=JSON.parse('{"title":"Class MiscConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class MiscConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class MiscConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/misc-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/misc-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/misc-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/misc-config.md","filePath":"reference/core/classes/system/misc-config.md"}'),o={name:"reference/core/classes/system/misc-config.md"};function n(l,e,c,r,p,m){return i(),a("div",null,e[0]||(e[0]=[t('

Class MiscConfig

Constructor

new MiscConfig(options)

Parameters

  • options
    • Type: MiscConfigOptions | undefined
ts
interface MiscConfigOptions {\n	doubleClickDelay?: number;\n}

Properties

doubleClickDelay

The maximum time between two clicks for those clicks to register as a double click in milliseconds

  • Type: number
  • Default: 250

NOTE

Also applies to touch devices.

',11)]))}const g=s(o,[["render",n]]);export{h as __pageData,g as default}; +import{_ as s,c as a,a3 as t,o as i}from"./chunks/framework.BAnOA2-A.js";const h=JSON.parse('{"title":"Class MiscConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class MiscConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class MiscConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/misc-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/misc-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/misc-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/misc-config.md","filePath":"reference/core/classes/system/misc-config.md"}'),o={name:"reference/core/classes/system/misc-config.md"};function n(l,e,c,r,p,m){return i(),a("div",null,e[0]||(e[0]=[t('

Class MiscConfig

Constructor

new MiscConfig(options)

Parameters

  • options
    • Type: MiscConfigOptions | undefined
ts
interface MiscConfigOptions {\n	doubleClickDelay?: number;\n}

Properties

doubleClickDelay

The maximum time between two clicks for those clicks to register as a double click in milliseconds

  • Type: number
  • Default: 250

NOTE

Also applies to touch devices.

',11)]))}const g=s(o,[["render",n]]);export{h as __pageData,g as default}; diff --git a/docs/assets/reference_core_classes_system_misc-config.md.Duv8Y2DT.lean.js b/docs/assets/reference_core_classes_system_misc-config.md.D2lB9p7j.lean.js similarity index 60% rename from docs/assets/reference_core_classes_system_misc-config.md.Duv8Y2DT.lean.js rename to docs/assets/reference_core_classes_system_misc-config.md.D2lB9p7j.lean.js index 1430a3a2..eb09db75 100644 --- a/docs/assets/reference_core_classes_system_misc-config.md.Duv8Y2DT.lean.js +++ b/docs/assets/reference_core_classes_system_misc-config.md.D2lB9p7j.lean.js @@ -1 +1 @@ -import{_ as s,c as a,a1 as t,o as i}from"./chunks/framework.S1oRGgk6.js";const h=JSON.parse('{"title":"Class MiscConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class MiscConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class MiscConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/misc-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/misc-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/misc-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/misc-config.md","filePath":"reference/core/classes/system/misc-config.md"}'),o={name:"reference/core/classes/system/misc-config.md"};function n(l,e,c,r,p,m){return i(),a("div",null,e[0]||(e[0]=[t('

Class MiscConfig

Constructor

new MiscConfig(options)

Parameters

  • options
    • Type: MiscConfigOptions | undefined
ts
interface MiscConfigOptions {\n	doubleClickDelay?: number;\n}

Properties

doubleClickDelay

The maximum time between two clicks for those clicks to register as a double click in milliseconds

  • Type: number
  • Default: 250

NOTE

Also applies to touch devices.

',11)]))}const g=s(o,[["render",n]]);export{h as __pageData,g as default}; +import{_ as s,c as a,a3 as t,o as i}from"./chunks/framework.BAnOA2-A.js";const h=JSON.parse('{"title":"Class MiscConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class MiscConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class MiscConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/misc-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/misc-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/misc-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/misc-config.md","filePath":"reference/core/classes/system/misc-config.md"}'),o={name:"reference/core/classes/system/misc-config.md"};function n(l,e,c,r,p,m){return i(),a("div",null,e[0]||(e[0]=[t('

Class MiscConfig

Constructor

new MiscConfig(options)

Parameters

  • options
    • Type: MiscConfigOptions | undefined
ts
interface MiscConfigOptions {\n	doubleClickDelay?: number;\n}

Properties

doubleClickDelay

The maximum time between two clicks for those clicks to register as a double click in milliseconds

  • Type: number
  • Default: 250

NOTE

Also applies to touch devices.

',11)]))}const g=s(o,[["render",n]]);export{h as __pageData,g as default}; diff --git a/docs/assets/reference_core_classes_system_modals-config.md.DmZ-iT4l.js b/docs/assets/reference_core_classes_system_modals-config.md.CDx3Kzph.js similarity index 90% rename from docs/assets/reference_core_classes_system_modals-config.md.DmZ-iT4l.js rename to docs/assets/reference_core_classes_system_modals-config.md.CDx3Kzph.js index 3bed1928..46cee08d 100644 --- a/docs/assets/reference_core_classes_system_modals-config.md.DmZ-iT4l.js +++ b/docs/assets/reference_core_classes_system_modals-config.md.CDx3Kzph.js @@ -1,4 +1,4 @@ -import{_ as a,c as s,a1 as t,o}from"./chunks/framework.S1oRGgk6.js";const m=JSON.parse('{"title":"Class ModalsConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class ModalsConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class ModalsConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/modals-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/modals-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/modals-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/modals-config.md","filePath":"reference/core/classes/system/modals-config.md"}'),i={name:"reference/core/classes/system/modals-config.md"};function l(r,e,n,c,d,p){return o(),s("div",null,e[0]||(e[0]=[t(`

Class ModalsConfig

Constructor

new ModalsConfig(options)

Parameters

  • options
    • Type: ModalsConfigOptions | undefined
ts
interface ModalsConfigOptions {
+import{_ as a,c as s,a3 as t,o}from"./chunks/framework.BAnOA2-A.js";const m=JSON.parse('{"title":"Class ModalsConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class ModalsConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class ModalsConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/modals-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/modals-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/modals-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/modals-config.md","filePath":"reference/core/classes/system/modals-config.md"}'),i={name:"reference/core/classes/system/modals-config.md"};function l(r,e,n,c,d,p){return o(),s("div",null,e[0]||(e[0]=[t(`

Class ModalsConfig

Constructor

new ModalsConfig(options)

Parameters

  • options
    • Type: ModalsConfigOptions | undefined
ts
interface ModalsConfigOptions {
 	defaultDialogSize?: Vector2;
 	defaultFileSelectorSize?: Vector2;
-}

References

Properties

defaultDialogSize

Default size of a dialog box

  • Type: Vector2
  • Default: new Vector2(400, 200)

defaultFileSelectorSize

Default size of a file selector

  • Type: Vector2
  • Default: new Vector2(700, 400)
`,14)]))}const g=a(i,[["render",l]]);export{m as __pageData,g as default}; +}

References

Properties

defaultDialogSize

Default size of a dialog box

  • Type: Vector2
  • Default: new Vector2(400, 200)

defaultFileSelectorSize

Default size of a file selector

  • Type: Vector2
  • Default: new Vector2(700, 400)
`,14)]))}const f=a(i,[["render",l]]);export{m as __pageData,f as default}; diff --git a/docs/assets/reference_core_classes_system_modals-config.md.DmZ-iT4l.lean.js b/docs/assets/reference_core_classes_system_modals-config.md.CDx3Kzph.lean.js similarity index 90% rename from docs/assets/reference_core_classes_system_modals-config.md.DmZ-iT4l.lean.js rename to docs/assets/reference_core_classes_system_modals-config.md.CDx3Kzph.lean.js index 3bed1928..46cee08d 100644 --- a/docs/assets/reference_core_classes_system_modals-config.md.DmZ-iT4l.lean.js +++ b/docs/assets/reference_core_classes_system_modals-config.md.CDx3Kzph.lean.js @@ -1,4 +1,4 @@ -import{_ as a,c as s,a1 as t,o}from"./chunks/framework.S1oRGgk6.js";const m=JSON.parse('{"title":"Class ModalsConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class ModalsConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class ModalsConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/modals-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/modals-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/modals-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/modals-config.md","filePath":"reference/core/classes/system/modals-config.md"}'),i={name:"reference/core/classes/system/modals-config.md"};function l(r,e,n,c,d,p){return o(),s("div",null,e[0]||(e[0]=[t(`

Class ModalsConfig

Constructor

new ModalsConfig(options)

Parameters

  • options
    • Type: ModalsConfigOptions | undefined
ts
interface ModalsConfigOptions {
+import{_ as a,c as s,a3 as t,o}from"./chunks/framework.BAnOA2-A.js";const m=JSON.parse('{"title":"Class ModalsConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class ModalsConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class ModalsConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/modals-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/modals-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/modals-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/modals-config.md","filePath":"reference/core/classes/system/modals-config.md"}'),i={name:"reference/core/classes/system/modals-config.md"};function l(r,e,n,c,d,p){return o(),s("div",null,e[0]||(e[0]=[t(`

Class ModalsConfig

Constructor

new ModalsConfig(options)

Parameters

  • options
    • Type: ModalsConfigOptions | undefined
ts
interface ModalsConfigOptions {
 	defaultDialogSize?: Vector2;
 	defaultFileSelectorSize?: Vector2;
-}

References

Properties

defaultDialogSize

Default size of a dialog box

  • Type: Vector2
  • Default: new Vector2(400, 200)

defaultFileSelectorSize

Default size of a file selector

  • Type: Vector2
  • Default: new Vector2(700, 400)
`,14)]))}const g=a(i,[["render",l]]);export{m as __pageData,g as default}; +}

References

Properties

defaultDialogSize

Default size of a dialog box

  • Type: Vector2
  • Default: new Vector2(400, 200)

defaultFileSelectorSize

Default size of a file selector

  • Type: Vector2
  • Default: new Vector2(700, 400)
`,14)]))}const f=a(i,[["render",l]]);export{m as __pageData,f as default}; diff --git a/docs/assets/reference_core_classes_system_taskbar-config.md.DQ_C2jN7.js b/docs/assets/reference_core_classes_system_taskbar-config.md.kPydnc6f.js similarity index 62% rename from docs/assets/reference_core_classes_system_taskbar-config.md.DQ_C2jN7.js rename to docs/assets/reference_core_classes_system_taskbar-config.md.kPydnc6f.js index c5bfb7fa..2907d661 100644 --- a/docs/assets/reference_core_classes_system_taskbar-config.md.DQ_C2jN7.js +++ b/docs/assets/reference_core_classes_system_taskbar-config.md.kPydnc6f.js @@ -1 +1 @@ -import{_ as a,c as t,a1 as s,o}from"./chunks/framework.S1oRGgk6.js";const g=JSON.parse('{"title":"Class TaskbarConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class TaskbarConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class TaskbarConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/taskbar-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/taskbar-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/taskbar-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/taskbar-config.md","filePath":"reference/core/classes/system/taskbar-config.md"}'),i={name:"reference/core/classes/system/taskbar-config.md"};function r(n,e,l,c,p,h){return o(),t("div",null,e[0]||(e[0]=[s('

Class TaskbarConfig

Constructor

new TaskbarConfig(options)

Parameters

  • options
    • Type: TaskbarConfigOptions | undefined
ts
interface TaskbarConfigOptions {\n	height?: number;\n}

Properties

height

Height of the taskbar in CSS pixels

  • Type: number
  • Default: 48
',10)]))}const m=a(i,[["render",r]]);export{g as __pageData,m as default}; +import{_ as a,c as s,a3 as t,o}from"./chunks/framework.BAnOA2-A.js";const g=JSON.parse('{"title":"Class TaskbarConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class TaskbarConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class TaskbarConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/taskbar-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/taskbar-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/taskbar-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/taskbar-config.md","filePath":"reference/core/classes/system/taskbar-config.md"}'),r={name:"reference/core/classes/system/taskbar-config.md"};function i(n,e,l,c,p,h){return o(),s("div",null,e[0]||(e[0]=[t('

Class TaskbarConfig

Constructor

new TaskbarConfig(options)

Parameters

  • options
    • Type: TaskbarConfigOptions | undefined
ts
interface TaskbarConfigOptions {\n	height?: number;\n}

Properties

height

Height of the taskbar in CSS pixels

  • Type: number
  • Default: 48
',10)]))}const m=a(r,[["render",i]]);export{g as __pageData,m as default}; diff --git a/docs/assets/reference_core_classes_system_taskbar-config.md.DQ_C2jN7.lean.js b/docs/assets/reference_core_classes_system_taskbar-config.md.kPydnc6f.lean.js similarity index 62% rename from docs/assets/reference_core_classes_system_taskbar-config.md.DQ_C2jN7.lean.js rename to docs/assets/reference_core_classes_system_taskbar-config.md.kPydnc6f.lean.js index c5bfb7fa..2907d661 100644 --- a/docs/assets/reference_core_classes_system_taskbar-config.md.DQ_C2jN7.lean.js +++ b/docs/assets/reference_core_classes_system_taskbar-config.md.kPydnc6f.lean.js @@ -1 +1 @@ -import{_ as a,c as t,a1 as s,o}from"./chunks/framework.S1oRGgk6.js";const g=JSON.parse('{"title":"Class TaskbarConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class TaskbarConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class TaskbarConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/taskbar-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/taskbar-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/taskbar-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/taskbar-config.md","filePath":"reference/core/classes/system/taskbar-config.md"}'),i={name:"reference/core/classes/system/taskbar-config.md"};function r(n,e,l,c,p,h){return o(),t("div",null,e[0]||(e[0]=[s('

Class TaskbarConfig

Constructor

new TaskbarConfig(options)

Parameters

  • options
    • Type: TaskbarConfigOptions | undefined
ts
interface TaskbarConfigOptions {\n	height?: number;\n}

Properties

height

Height of the taskbar in CSS pixels

  • Type: number
  • Default: 48
',10)]))}const m=a(i,[["render",r]]);export{g as __pageData,m as default}; +import{_ as a,c as s,a3 as t,o}from"./chunks/framework.BAnOA2-A.js";const g=JSON.parse('{"title":"Class TaskbarConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class TaskbarConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class TaskbarConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/taskbar-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/taskbar-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/taskbar-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/taskbar-config.md","filePath":"reference/core/classes/system/taskbar-config.md"}'),r={name:"reference/core/classes/system/taskbar-config.md"};function i(n,e,l,c,p,h){return o(),s("div",null,e[0]||(e[0]=[t('

Class TaskbarConfig

Constructor

new TaskbarConfig(options)

Parameters

  • options
    • Type: TaskbarConfigOptions | undefined
ts
interface TaskbarConfigOptions {\n	height?: number;\n}

Properties

height

Height of the taskbar in CSS pixels

  • Type: number
  • Default: 48
',10)]))}const m=a(r,[["render",i]]);export{g as __pageData,m as default}; diff --git a/docs/assets/reference_core_classes_system_tracking-config.md.Ddb19QSL.js b/docs/assets/reference_core_classes_system_tracking-config.md.CCsZ1t_S.js similarity index 90% rename from docs/assets/reference_core_classes_system_tracking-config.md.Ddb19QSL.js rename to docs/assets/reference_core_classes_system_tracking-config.md.CCsZ1t_S.js index fc2591b2..f53c26d1 100644 --- a/docs/assets/reference_core_classes_system_tracking-config.md.Ddb19QSL.js +++ b/docs/assets/reference_core_classes_system_tracking-config.md.CCsZ1t_S.js @@ -1,4 +1,4 @@ -import{_ as a,c as t,a1 as s,o as i}from"./chunks/framework.S1oRGgk6.js";const h=JSON.parse('{"title":"Class TrackingConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class TrackingConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class TrackingConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/tracking-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/tracking-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/tracking-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/tracking-config.md","filePath":"reference/core/classes/system/tracking-config.md"}'),n={name:"reference/core/classes/system/tracking-config.md"};function o(r,e,l,c,p,g){return i(),t("div",null,e[0]||(e[0]=[s(`

Class TrackingConfig

Constructor

new TrackingConfig(options)

Parameters

  • options
    • Type: TrackingConfigOptions | undefined
ts
interface TrackingConfigOptions {
+import{_ as a,c as t,a3 as s,o as i}from"./chunks/framework.BAnOA2-A.js";const h=JSON.parse('{"title":"Class TrackingConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class TrackingConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class TrackingConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/tracking-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/tracking-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/tracking-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/tracking-config.md","filePath":"reference/core/classes/system/tracking-config.md"}'),n={name:"reference/core/classes/system/tracking-config.md"};function o(r,e,l,c,p,g){return i(),t("div",null,e[0]||(e[0]=[s(`

Class TrackingConfig

Constructor

new TrackingConfig(options)

Parameters

  • options
    • Type: TrackingConfigOptions | undefined
ts
interface TrackingConfigOptions {
 	enabled?: boolean;
 	GAMeasurementId?: string;
 }

Properties

enabled

Determines whether tracking is enabled

  • Type: boolean
  • Default: true

GAMeasurementId

Google Analytics measurement ID

  • Type: string

WARNING

This option is required if you want to enable tracking. The tracking feature currently only supports tracking via Google Analytics.

`,14)]))}const k=a(n,[["render",o]]);export{h as __pageData,k as default}; diff --git a/docs/assets/reference_core_classes_system_tracking-config.md.Ddb19QSL.lean.js b/docs/assets/reference_core_classes_system_tracking-config.md.CCsZ1t_S.lean.js similarity index 90% rename from docs/assets/reference_core_classes_system_tracking-config.md.Ddb19QSL.lean.js rename to docs/assets/reference_core_classes_system_tracking-config.md.CCsZ1t_S.lean.js index fc2591b2..f53c26d1 100644 --- a/docs/assets/reference_core_classes_system_tracking-config.md.Ddb19QSL.lean.js +++ b/docs/assets/reference_core_classes_system_tracking-config.md.CCsZ1t_S.lean.js @@ -1,4 +1,4 @@ -import{_ as a,c as t,a1 as s,o as i}from"./chunks/framework.S1oRGgk6.js";const h=JSON.parse('{"title":"Class TrackingConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class TrackingConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class TrackingConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/tracking-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/tracking-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/tracking-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/tracking-config.md","filePath":"reference/core/classes/system/tracking-config.md"}'),n={name:"reference/core/classes/system/tracking-config.md"};function o(r,e,l,c,p,g){return i(),t("div",null,e[0]||(e[0]=[s(`

Class TrackingConfig

Constructor

new TrackingConfig(options)

Parameters

  • options
    • Type: TrackingConfigOptions | undefined
ts
interface TrackingConfigOptions {
+import{_ as a,c as t,a3 as s,o as i}from"./chunks/framework.BAnOA2-A.js";const h=JSON.parse('{"title":"Class TrackingConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class TrackingConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class TrackingConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/tracking-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/tracking-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/tracking-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/tracking-config.md","filePath":"reference/core/classes/system/tracking-config.md"}'),n={name:"reference/core/classes/system/tracking-config.md"};function o(r,e,l,c,p,g){return i(),t("div",null,e[0]||(e[0]=[s(`

Class TrackingConfig

Constructor

new TrackingConfig(options)

Parameters

  • options
    • Type: TrackingConfigOptions | undefined
ts
interface TrackingConfigOptions {
 	enabled?: boolean;
 	GAMeasurementId?: string;
 }

Properties

enabled

Determines whether tracking is enabled

  • Type: boolean
  • Default: true

GAMeasurementId

Google Analytics measurement ID

  • Type: string

WARNING

This option is required if you want to enable tracking. The tracking feature currently only supports tracking via Google Analytics.

`,14)]))}const k=a(n,[["render",o]]);export{h as __pageData,k as default}; diff --git a/docs/assets/reference_core_classes_system_windows-config.md.DXbY1oUF.js b/docs/assets/reference_core_classes_system_windows-config.md.BhIB0-74.js similarity index 91% rename from docs/assets/reference_core_classes_system_windows-config.md.DXbY1oUF.js rename to docs/assets/reference_core_classes_system_windows-config.md.BhIB0-74.js index 74636793..153211f5 100644 --- a/docs/assets/reference_core_classes_system_windows-config.md.DXbY1oUF.js +++ b/docs/assets/reference_core_classes_system_windows-config.md.BhIB0-74.js @@ -1,4 +1,4 @@ -import{_ as s,c as a,a1 as t,o as i}from"./chunks/framework.S1oRGgk6.js";const g=JSON.parse('{"title":"Class WindowsConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class WindowsConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class WindowsConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/windows-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/windows-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/windows-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/windows-config.md","filePath":"reference/core/classes/system/windows-config.md"}'),n={name:"reference/core/classes/system/windows-config.md"};function o(r,e,l,c,p,d){return i(),a("div",null,e[0]||(e[0]=[t(`

Class WindowsConfig

Constructor

new WindowsConfig(options)

Parameters


  • options
    • Type: WindowsConfigOptions | undefined
ts
interface WindowsConfigOptions {
+import{_ as s,c as a,a3 as t,o as i}from"./chunks/framework.BAnOA2-A.js";const g=JSON.parse('{"title":"Class WindowsConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class WindowsConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class WindowsConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/windows-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/windows-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/windows-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/windows-config.md","filePath":"reference/core/classes/system/windows-config.md"}'),n={name:"reference/core/classes/system/windows-config.md"};function o(r,e,l,c,p,d){return i(),a("div",null,e[0]||(e[0]=[t(`

Class WindowsConfig

Constructor

new WindowsConfig(options)

Parameters


  • options
    • Type: WindowsConfigOptions | undefined
ts
interface WindowsConfigOptions {
 	screenMargin?: number;
 	titleSeparator?: string;
 	minScreenSize?: Vector2;
diff --git a/docs/assets/reference_core_classes_system_windows-config.md.DXbY1oUF.lean.js b/docs/assets/reference_core_classes_system_windows-config.md.BhIB0-74.lean.js
similarity index 91%
rename from docs/assets/reference_core_classes_system_windows-config.md.DXbY1oUF.lean.js
rename to docs/assets/reference_core_classes_system_windows-config.md.BhIB0-74.lean.js
index 74636793..153211f5 100644
--- a/docs/assets/reference_core_classes_system_windows-config.md.DXbY1oUF.lean.js
+++ b/docs/assets/reference_core_classes_system_windows-config.md.BhIB0-74.lean.js
@@ -1,4 +1,4 @@
-import{_ as s,c as a,a1 as t,o as i}from"./chunks/framework.S1oRGgk6.js";const g=JSON.parse('{"title":"Class WindowsConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class WindowsConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class WindowsConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/windows-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/windows-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/windows-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/windows-config.md","filePath":"reference/core/classes/system/windows-config.md"}'),n={name:"reference/core/classes/system/windows-config.md"};function o(r,e,l,c,p,d){return i(),a("div",null,e[0]||(e[0]=[t(`

Class WindowsConfig

Constructor

new WindowsConfig(options)

Parameters


  • options
    • Type: WindowsConfigOptions | undefined
ts
interface WindowsConfigOptions {
+import{_ as s,c as a,a3 as t,o as i}from"./chunks/framework.BAnOA2-A.js";const g=JSON.parse('{"title":"Class WindowsConfig","description":"","frontmatter":{"outline":"deep","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class WindowsConfig | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class WindowsConfig | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/system/windows-config"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/windows-config"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/system/windows-config"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/system/windows-config.md","filePath":"reference/core/classes/system/windows-config.md"}'),n={name:"reference/core/classes/system/windows-config.md"};function o(r,e,l,c,p,d){return i(),a("div",null,e[0]||(e[0]=[t(`

Class WindowsConfig

Constructor

new WindowsConfig(options)

Parameters


  • options
    • Type: WindowsConfigOptions | undefined
ts
interface WindowsConfigOptions {
 	screenMargin?: number;
 	titleSeparator?: string;
 	minScreenSize?: Vector2;
diff --git a/docs/assets/reference_core_classes_utils_time-manager.md.rlOGehB_.js b/docs/assets/reference_core_classes_utils_time-manager.md.rlOGehB_.js
new file mode 100644
index 00000000..594d58a3
--- /dev/null
+++ b/docs/assets/reference_core_classes_utils_time-manager.md.rlOGehB_.js
@@ -0,0 +1,8 @@
+import{_ as l,c as r,j as t,a as s,t as o,G as i,a3 as p,B as h,o as d}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"Class TimeManager","description":"A utility class for keeping track of time","frontmatter":{"outline":3,"description":"A utility class for keeping track of time","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class TimeManager | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class TimeManager | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"A utility class for keeping track of time"}],["meta",{"name":"twitter:description","content":"A utility class for keeping track of time"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/utils/time-manager"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/utils/time-manager"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/utils/time-manager"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/utils/time-manager.md","filePath":"reference/core/classes/utils/time-manager.md"}'),m={name:"reference/core/classes/utils/time-manager.md"},F={id:"startdate",tabindex:"-1"},k={id:"reset",tabindex:"-1"},g={id:"getuptime-precision",tabindex:"-1"};function c(n,e,u,f,y,E){const a=h("Badge");return d(),r("div",null,[e[9]||(e[9]=t("h1",{id:"class-timemanager",tabindex:"-1"},[s("Class "),t("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/_utils/time.utils.ts",target:"_blank",rel:"noreferrer"},[t("code",null,"TimeManager")]),s(),t("a",{class:"header-anchor",href:"#class-timemanager","aria-label":'Permalink to "Class [`TimeManager`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/_utils/time.utils.ts)"'},"​")],-1)),t("p",null,o(n.$frontmatter.description),1),e[10]||(e[10]=t("h2",{id:"properties",tabindex:"-1"},[s("Properties "),t("a",{class:"header-anchor",href:"#properties","aria-label":'Permalink to "Properties"'},"​")],-1)),t("h3",F,[e[0]||(e[0]=s("startDate ")),i(a,{type:"info",text:"static"}),e[1]||(e[1]=s()),e[2]||(e[2]=t("a",{class:"header-anchor",href:"#startdate","aria-label":'Permalink to "startDate "'},"​",-1))]),e[11]||(e[11]=t("ul",null,[t("li",null,[t("strong",null,"Static")]),t("li",null,[t("strong",null,"Type:"),s(),t("code",null,"Date")])],-1)),e[12]||(e[12]=t("h2",{id:"methods",tabindex:"-1"},[s("Methods "),t("a",{class:"header-anchor",href:"#methods","aria-label":'Permalink to "Methods"'},"​")],-1)),t("h3",k,[e[3]||(e[3]=s("reset() ")),i(a,{type:"info",text:"static"}),e[4]||(e[4]=s()),e[5]||(e[5]=t("a",{class:"header-anchor",href:"#reset","aria-label":'Permalink to "reset() "'},"​",-1))]),e[13]||(e[13]=t("p",null,"Resets the time",-1)),t("h3",g,[e[6]||(e[6]=s("getUptime(precision) ")),i(a,{type:"info",text:"static"}),e[7]||(e[7]=s()),e[8]||(e[8]=t("a",{class:"header-anchor",href:"#getuptime-precision","aria-label":'Permalink to "getUptime(precision) "'},"​",-1))]),e[14]||(e[14]=p(`

Get the current uptime

Parameters

  • precision - Determines how many units of time the uptime is displayed in
    • Type: number
    • Default: 2

Returns

The current uptime in a human-readable format

  • Type: string

Example

ts
TimeManager.getUptime(1);
+// Result: 4 hours
+
+TimeManager.getUptime(2);
+// Result: 4 hours, 15 minutes 
+
+TimeManager.getUptime(3);
+// Result: 4 hours, 15 minutes, 56 seconds
`,8))])}const x=l(m,[["render",c]]);export{D as __pageData,x as default}; diff --git a/docs/assets/reference_core_classes_utils_time-manager.md.rlOGehB_.lean.js b/docs/assets/reference_core_classes_utils_time-manager.md.rlOGehB_.lean.js new file mode 100644 index 00000000..594d58a3 --- /dev/null +++ b/docs/assets/reference_core_classes_utils_time-manager.md.rlOGehB_.lean.js @@ -0,0 +1,8 @@ +import{_ as l,c as r,j as t,a as s,t as o,G as i,a3 as p,B as h,o as d}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"Class TimeManager","description":"A utility class for keeping track of time","frontmatter":{"outline":3,"description":"A utility class for keeping track of time","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class TimeManager | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class TimeManager | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"A utility class for keeping track of time"}],["meta",{"name":"twitter:description","content":"A utility class for keeping track of time"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/utils/time-manager"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/utils/time-manager"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/utils/time-manager"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/utils/time-manager.md","filePath":"reference/core/classes/utils/time-manager.md"}'),m={name:"reference/core/classes/utils/time-manager.md"},F={id:"startdate",tabindex:"-1"},k={id:"reset",tabindex:"-1"},g={id:"getuptime-precision",tabindex:"-1"};function c(n,e,u,f,y,E){const a=h("Badge");return d(),r("div",null,[e[9]||(e[9]=t("h1",{id:"class-timemanager",tabindex:"-1"},[s("Class "),t("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/_utils/time.utils.ts",target:"_blank",rel:"noreferrer"},[t("code",null,"TimeManager")]),s(),t("a",{class:"header-anchor",href:"#class-timemanager","aria-label":'Permalink to "Class [`TimeManager`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/_utils/time.utils.ts)"'},"​")],-1)),t("p",null,o(n.$frontmatter.description),1),e[10]||(e[10]=t("h2",{id:"properties",tabindex:"-1"},[s("Properties "),t("a",{class:"header-anchor",href:"#properties","aria-label":'Permalink to "Properties"'},"​")],-1)),t("h3",F,[e[0]||(e[0]=s("startDate ")),i(a,{type:"info",text:"static"}),e[1]||(e[1]=s()),e[2]||(e[2]=t("a",{class:"header-anchor",href:"#startdate","aria-label":'Permalink to "startDate "'},"​",-1))]),e[11]||(e[11]=t("ul",null,[t("li",null,[t("strong",null,"Static")]),t("li",null,[t("strong",null,"Type:"),s(),t("code",null,"Date")])],-1)),e[12]||(e[12]=t("h2",{id:"methods",tabindex:"-1"},[s("Methods "),t("a",{class:"header-anchor",href:"#methods","aria-label":'Permalink to "Methods"'},"​")],-1)),t("h3",k,[e[3]||(e[3]=s("reset() ")),i(a,{type:"info",text:"static"}),e[4]||(e[4]=s()),e[5]||(e[5]=t("a",{class:"header-anchor",href:"#reset","aria-label":'Permalink to "reset() "'},"​",-1))]),e[13]||(e[13]=t("p",null,"Resets the time",-1)),t("h3",g,[e[6]||(e[6]=s("getUptime(precision) ")),i(a,{type:"info",text:"static"}),e[7]||(e[7]=s()),e[8]||(e[8]=t("a",{class:"header-anchor",href:"#getuptime-precision","aria-label":'Permalink to "getUptime(precision) "'},"​",-1))]),e[14]||(e[14]=p(`

Get the current uptime

Parameters

  • precision - Determines how many units of time the uptime is displayed in
    • Type: number
    • Default: 2

Returns

The current uptime in a human-readable format

  • Type: string

Example

ts
TimeManager.getUptime(1);
+// Result: 4 hours
+
+TimeManager.getUptime(2);
+// Result: 4 hours, 15 minutes 
+
+TimeManager.getUptime(3);
+// Result: 4 hours, 15 minutes, 56 seconds
`,8))])}const x=l(m,[["render",c]]);export{D as __pageData,x as default}; diff --git a/docs/assets/reference_core_classes_utils_vector2.md.BnLM4qTx.js b/docs/assets/reference_core_classes_utils_vector2.md.BYfMU85_.js similarity index 80% rename from docs/assets/reference_core_classes_utils_vector2.md.BnLM4qTx.js rename to docs/assets/reference_core_classes_utils_vector2.md.BYfMU85_.js index c9c43d08..83946faf 100644 --- a/docs/assets/reference_core_classes_utils_vector2.md.BnLM4qTx.js +++ b/docs/assets/reference_core_classes_utils_vector2.md.BYfMU85_.js @@ -1,7 +1,7 @@ -import{_ as l,c as o,j as e,a as s,t as r,a1 as i,o as n}from"./chunks/framework.S1oRGgk6.js";const k=JSON.parse('{"title":"Class Vector2","description":"A 2-dimensional vector, set of coordinates or dimensions","frontmatter":{"outline":"deep","description":"A 2-dimensional vector, set of coordinates or dimensions","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class Vector2 | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class Vector2 | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"A 2-dimensional vector, set of coordinates or dimensions"}],["meta",{"name":"twitter:description","content":"A 2-dimensional vector, set of coordinates or dimensions"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/utils/vector2"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/utils/vector2"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/utils/vector2"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/utils/vector2.md","filePath":"reference/core/classes/utils/vector2.md"}'),c={name:"reference/core/classes/utils/vector2.md"};function d(a,t,u,h,g,p){return n(),o("div",null,[t[0]||(t[0]=e("h1",{id:"class-vector2",tabindex:"-1"},[s("Class "),e("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/math/vector2.ts",target:"_blank",rel:"noreferrer"},[e("code",null,"Vector2")]),s(),e("a",{class:"header-anchor",href:"#class-vector2","aria-label":'Permalink to "Class [`Vector2`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/math/vector2.ts)"'},"​")],-1)),e("p",null,r(a.$frontmatter.description),1),t[1]||(t[1]=i(`

Constructor

new Vector2(x, y)

Parameters

  • x
    • Type: number
  • y
    • Type: number | undefined

Examples

ts
new Vector2(2, 4)
-// Result: Vector2(2, 4)
+import{_ as l,c as o,j as e,a as s,t as r,a3 as i,o as n}from"./chunks/framework.BAnOA2-A.js";const k=JSON.parse('{"title":"Class Vector2","description":"A 2-dimensional vector, set of coordinates or dimensions","frontmatter":{"outline":"deep","description":"A 2-dimensional vector, set of coordinates or dimensions","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class Vector2 | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class Vector2 | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"A 2-dimensional vector, set of coordinates or dimensions"}],["meta",{"name":"twitter:description","content":"A 2-dimensional vector, set of coordinates or dimensions"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/utils/vector2"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/utils/vector2"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/utils/vector2"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/utils/vector2.md","filePath":"reference/core/classes/utils/vector2.md"}'),c={name:"reference/core/classes/utils/vector2.md"};function d(a,t,u,h,g,p){return n(),o("div",null,[t[0]||(t[0]=e("h1",{id:"class-vector2",tabindex:"-1"},[s("Class "),e("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/math/vector2.ts",target:"_blank",rel:"noreferrer"},[e("code",null,"Vector2")]),s(),e("a",{class:"header-anchor",href:"#class-vector2","aria-label":'Permalink to "Class [`Vector2`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/math/vector2.ts)"'},"​")],-1)),e("p",null,r(a.$frontmatter.description),1),t[1]||(t[1]=i(`

Constructor

new Vector2(x, y)

Parameters

  • x
    • Type: number
  • y
    • Type: number | undefined

Examples

ts
new Vector2(2, 4)
+// Result: Vector2(2, 4)
 
-new Vector2(3)
-// Result: Vector2(3, 3)

Properties

x

  • Type: number

y

  • Type: number

ZERO

Returns a vector with each value set to zero

  • Static

  • Type: Vector2

  • Example

    ts
    Vector2.ZERO
    -// Result: Vector2(0, 0)

clone

Returns a clone of this vector

  • Type: Vector2

Methods

round()

Round the values of this vector to whole numbers

Details
  • Returns

    • Type: this
  • Example

    ts
    new Vector2(3.6, 1.3).round()
    -// Result: Vector2(4, 1)

getDistance(x, y)

Get the distance between this vector and another

Details
  • Parameters
    • x
      • Type: number
    • y
      • Type: number
  • Returns
    • Type: number

getDistance(vector2)

Get the distance between this vector and another

Details
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: number

add(vector2A, vector2B)

Add two vectors together

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: Vector2

subtract(vector2A, vector2B)

Subtract two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: Vector2

scale(vector2, scalar)

Scale a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
    • scalar
      • Type: number
  • Returns
    • Type: Vector2

magnitude(vector2)

Get the magnitude of a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: number

normalize(vector2)

Normalize a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: Vector2

sqrDistance (vector2A, vector2B)

Get the square distance between two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: number

lerp(vector2A, vector2B, t)

Lerp between two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
    • t
      • Type: number
  • Returns
    • Type: Vector2
`,48))])}const v=l(c,[["render",d]]);export{k as __pageData,v as default}; +new Vector2(3) +// Result: Vector2(3, 3)

Properties

x

  • Type: number

y

  • Type: number

ZERO

Returns a vector with each value set to zero

  • Static

  • Type: Vector2

  • Example

    ts
    Vector2.ZERO
    +// Result: Vector2(0, 0)

clone

Returns a clone of this vector

  • Type: Vector2

Methods

round()

Round the values of this vector to whole numbers

Details
  • Returns

    • Type: this
  • Example

    ts
    new Vector2(3.6, 1.3).round()
    +// Result: Vector2(4, 1)

getDistance(x, y)

Get the distance between this vector and another

Details
  • Parameters
    • x
      • Type: number
    • y
      • Type: number
  • Returns
    • Type: number

getDistance(vector2)

Get the distance between this vector and another

Details
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: number

add(vector2A, vector2B)

Add two vectors together

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: Vector2

subtract(vector2A, vector2B)

Subtract two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: Vector2

scale(vector2, scalar)

Scale a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
    • scalar
      • Type: number
  • Returns
    • Type: Vector2

magnitude(vector2)

Get the magnitude of a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: number

normalize(vector2)

Normalize a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: Vector2

sqrDistance (vector2A, vector2B)

Get the square distance between two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: number

lerp(vector2A, vector2B, t)

Lerp between two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
    • t
      • Type: number
  • Returns
    • Type: Vector2
`,48))])}const F=l(c,[["render",d]]);export{k as __pageData,F as default}; diff --git a/docs/assets/reference_core_classes_utils_vector2.md.BnLM4qTx.lean.js b/docs/assets/reference_core_classes_utils_vector2.md.BYfMU85_.lean.js similarity index 80% rename from docs/assets/reference_core_classes_utils_vector2.md.BnLM4qTx.lean.js rename to docs/assets/reference_core_classes_utils_vector2.md.BYfMU85_.lean.js index c9c43d08..83946faf 100644 --- a/docs/assets/reference_core_classes_utils_vector2.md.BnLM4qTx.lean.js +++ b/docs/assets/reference_core_classes_utils_vector2.md.BYfMU85_.lean.js @@ -1,7 +1,7 @@ -import{_ as l,c as o,j as e,a as s,t as r,a1 as i,o as n}from"./chunks/framework.S1oRGgk6.js";const k=JSON.parse('{"title":"Class Vector2","description":"A 2-dimensional vector, set of coordinates or dimensions","frontmatter":{"outline":"deep","description":"A 2-dimensional vector, set of coordinates or dimensions","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class Vector2 | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class Vector2 | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"A 2-dimensional vector, set of coordinates or dimensions"}],["meta",{"name":"twitter:description","content":"A 2-dimensional vector, set of coordinates or dimensions"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/utils/vector2"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/utils/vector2"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/utils/vector2"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/utils/vector2.md","filePath":"reference/core/classes/utils/vector2.md"}'),c={name:"reference/core/classes/utils/vector2.md"};function d(a,t,u,h,g,p){return n(),o("div",null,[t[0]||(t[0]=e("h1",{id:"class-vector2",tabindex:"-1"},[s("Class "),e("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/math/vector2.ts",target:"_blank",rel:"noreferrer"},[e("code",null,"Vector2")]),s(),e("a",{class:"header-anchor",href:"#class-vector2","aria-label":'Permalink to "Class [`Vector2`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/math/vector2.ts)"'},"​")],-1)),e("p",null,r(a.$frontmatter.description),1),t[1]||(t[1]=i(`

Constructor

new Vector2(x, y)

Parameters

  • x
    • Type: number
  • y
    • Type: number | undefined

Examples

ts
new Vector2(2, 4)
-// Result: Vector2(2, 4)
+import{_ as l,c as o,j as e,a as s,t as r,a3 as i,o as n}from"./chunks/framework.BAnOA2-A.js";const k=JSON.parse('{"title":"Class Vector2","description":"A 2-dimensional vector, set of coordinates or dimensions","frontmatter":{"outline":"deep","description":"A 2-dimensional vector, set of coordinates or dimensions","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Class Vector2 | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class Vector2 | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"A 2-dimensional vector, set of coordinates or dimensions"}],["meta",{"name":"twitter:description","content":"A 2-dimensional vector, set of coordinates or dimensions"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/classes/utils/vector2"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/classes/utils/vector2"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/classes/utils/vector2"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/classes/utils/vector2.md","filePath":"reference/core/classes/utils/vector2.md"}'),c={name:"reference/core/classes/utils/vector2.md"};function d(a,t,u,h,g,p){return n(),o("div",null,[t[0]||(t[0]=e("h1",{id:"class-vector2",tabindex:"-1"},[s("Class "),e("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/math/vector2.ts",target:"_blank",rel:"noreferrer"},[e("code",null,"Vector2")]),s(),e("a",{class:"header-anchor",href:"#class-vector2","aria-label":'Permalink to "Class [`Vector2`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/core/src/features/math/vector2.ts)"'},"​")],-1)),e("p",null,r(a.$frontmatter.description),1),t[1]||(t[1]=i(`

Constructor

new Vector2(x, y)

Parameters

  • x
    • Type: number
  • y
    • Type: number | undefined

Examples

ts
new Vector2(2, 4)
+// Result: Vector2(2, 4)
 
-new Vector2(3)
-// Result: Vector2(3, 3)

Properties

x

  • Type: number

y

  • Type: number

ZERO

Returns a vector with each value set to zero

  • Static

  • Type: Vector2

  • Example

    ts
    Vector2.ZERO
    -// Result: Vector2(0, 0)

clone

Returns a clone of this vector

  • Type: Vector2

Methods

round()

Round the values of this vector to whole numbers

Details
  • Returns

    • Type: this
  • Example

    ts
    new Vector2(3.6, 1.3).round()
    -// Result: Vector2(4, 1)

getDistance(x, y)

Get the distance between this vector and another

Details
  • Parameters
    • x
      • Type: number
    • y
      • Type: number
  • Returns
    • Type: number

getDistance(vector2)

Get the distance between this vector and another

Details
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: number

add(vector2A, vector2B)

Add two vectors together

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: Vector2

subtract(vector2A, vector2B)

Subtract two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: Vector2

scale(vector2, scalar)

Scale a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
    • scalar
      • Type: number
  • Returns
    • Type: Vector2

magnitude(vector2)

Get the magnitude of a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: number

normalize(vector2)

Normalize a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: Vector2

sqrDistance (vector2A, vector2B)

Get the square distance between two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: number

lerp(vector2A, vector2B, t)

Lerp between two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
    • t
      • Type: number
  • Returns
    • Type: Vector2
`,48))])}const v=l(c,[["render",d]]);export{k as __pageData,v as default}; +new Vector2(3) +// Result: Vector2(3, 3)

Properties

x

  • Type: number

y

  • Type: number

ZERO

Returns a vector with each value set to zero

  • Static

  • Type: Vector2

  • Example

    ts
    Vector2.ZERO
    +// Result: Vector2(0, 0)

clone

Returns a clone of this vector

  • Type: Vector2

Methods

round()

Round the values of this vector to whole numbers

Details
  • Returns

    • Type: this
  • Example

    ts
    new Vector2(3.6, 1.3).round()
    +// Result: Vector2(4, 1)

getDistance(x, y)

Get the distance between this vector and another

Details
  • Parameters
    • x
      • Type: number
    • y
      • Type: number
  • Returns
    • Type: number

getDistance(vector2)

Get the distance between this vector and another

Details
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: number

add(vector2A, vector2B)

Add two vectors together

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: Vector2

subtract(vector2A, vector2B)

Subtract two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: Vector2

scale(vector2, scalar)

Scale a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
    • scalar
      • Type: number
  • Returns
    • Type: Vector2

magnitude(vector2)

Get the magnitude of a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: number

normalize(vector2)

Normalize a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: Vector2

sqrDistance (vector2A, vector2B)

Get the square distance between two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: number

lerp(vector2A, vector2B, t)

Lerp between two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
    • t
      • Type: number
  • Returns
    • Type: Vector2
`,48))])}const F=l(c,[["render",d]]);export{k as __pageData,F as default}; diff --git a/docs/assets/reference_core_constants_index.md.CcEhXc8b.js b/docs/assets/reference_core_constants_index.md.DND70KY8.js similarity index 96% rename from docs/assets/reference_core_constants_index.md.CcEhXc8b.js rename to docs/assets/reference_core_constants_index.md.DND70KY8.js index ebaa0294..74f31498 100644 --- a/docs/assets/reference_core_constants_index.md.CcEhXc8b.js +++ b/docs/assets/reference_core_constants_index.md.DND70KY8.js @@ -1 +1 @@ -import{_ as o,c as n,j as t,a as r,t as s,a1 as i,o as l}from"./chunks/framework.S1oRGgk6.js";const g=JSON.parse('{"title":"Constants","description":"Constants for ProzillaOS","frontmatter":{"outline":2,"description":"Constants for ProzillaOS","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Constants | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Constants | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Constants for ProzillaOS"}],["meta",{"name":"twitter:description","content":"Constants for ProzillaOS"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/constants/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/constants/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/constants/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/constants/index.md","filePath":"reference/core/constants/index.md"}'),c={name:"reference/core/constants/index.md"};function d(a,e,m,h,p,u){return l(),n("div",null,[e[0]||(e[0]=t("h1",{id:"constants",tabindex:"-1"},[r("Constants "),t("a",{class:"header-anchor",href:"#constants","aria-label":'Permalink to "Constants"'},"​")],-1)),t("p",null,s(a.$frontmatter.description),1),e[1]||(e[1]=i('

Virtual drive

CODE_EXTENSIONS

An array of file extensions for code-related files

  • Type: string[]

IMAGE_EXTENSIONS

An array of file extensions for image files

  • Type: string[]

Themes

THEMES

A map that transforms theme ids into theme names

  • Type: Record<number, string | null>
',13))])}const b=o(c,[["render",d]]);export{g as __pageData,b as default}; +import{_ as o,c as n,j as t,a as r,t as s,a3 as i,o as l}from"./chunks/framework.BAnOA2-A.js";const g=JSON.parse('{"title":"Constants","description":"Constants for ProzillaOS","frontmatter":{"outline":2,"description":"Constants for ProzillaOS","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Constants | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Constants | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Constants for ProzillaOS"}],["meta",{"name":"twitter:description","content":"Constants for ProzillaOS"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/constants/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/constants/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/constants/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/constants/index.md","filePath":"reference/core/constants/index.md"}'),c={name:"reference/core/constants/index.md"};function d(a,e,m,h,p,u){return l(),n("div",null,[e[0]||(e[0]=t("h1",{id:"constants",tabindex:"-1"},[r("Constants "),t("a",{class:"header-anchor",href:"#constants","aria-label":'Permalink to "Constants"'},"​")],-1)),t("p",null,s(a.$frontmatter.description),1),e[1]||(e[1]=i('

Virtual drive

CODE_EXTENSIONS

An array of file extensions for code-related files

  • Type: string[]

IMAGE_EXTENSIONS

An array of file extensions for image files

  • Type: string[]

Themes

THEMES

A map that transforms theme ids into theme names

  • Type: Record<number, string | null>
',13))])}const b=o(c,[["render",d]]);export{g as __pageData,b as default}; diff --git a/docs/assets/reference_core_constants_index.md.CcEhXc8b.lean.js b/docs/assets/reference_core_constants_index.md.DND70KY8.lean.js similarity index 96% rename from docs/assets/reference_core_constants_index.md.CcEhXc8b.lean.js rename to docs/assets/reference_core_constants_index.md.DND70KY8.lean.js index ebaa0294..74f31498 100644 --- a/docs/assets/reference_core_constants_index.md.CcEhXc8b.lean.js +++ b/docs/assets/reference_core_constants_index.md.DND70KY8.lean.js @@ -1 +1 @@ -import{_ as o,c as n,j as t,a as r,t as s,a1 as i,o as l}from"./chunks/framework.S1oRGgk6.js";const g=JSON.parse('{"title":"Constants","description":"Constants for ProzillaOS","frontmatter":{"outline":2,"description":"Constants for ProzillaOS","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Constants | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Constants | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Constants for ProzillaOS"}],["meta",{"name":"twitter:description","content":"Constants for ProzillaOS"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/constants/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/constants/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/constants/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/constants/index.md","filePath":"reference/core/constants/index.md"}'),c={name:"reference/core/constants/index.md"};function d(a,e,m,h,p,u){return l(),n("div",null,[e[0]||(e[0]=t("h1",{id:"constants",tabindex:"-1"},[r("Constants "),t("a",{class:"header-anchor",href:"#constants","aria-label":'Permalink to "Constants"'},"​")],-1)),t("p",null,s(a.$frontmatter.description),1),e[1]||(e[1]=i('

Virtual drive

CODE_EXTENSIONS

An array of file extensions for code-related files

  • Type: string[]

IMAGE_EXTENSIONS

An array of file extensions for image files

  • Type: string[]

Themes

THEMES

A map that transforms theme ids into theme names

  • Type: Record<number, string | null>
',13))])}const b=o(c,[["render",d]]);export{g as __pageData,b as default}; +import{_ as o,c as n,j as t,a as r,t as s,a3 as i,o as l}from"./chunks/framework.BAnOA2-A.js";const g=JSON.parse('{"title":"Constants","description":"Constants for ProzillaOS","frontmatter":{"outline":2,"description":"Constants for ProzillaOS","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Constants | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Constants | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Constants for ProzillaOS"}],["meta",{"name":"twitter:description","content":"Constants for ProzillaOS"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/constants/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/constants/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/constants/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/constants/index.md","filePath":"reference/core/constants/index.md"}'),c={name:"reference/core/constants/index.md"};function d(a,e,m,h,p,u){return l(),n("div",null,[e[0]||(e[0]=t("h1",{id:"constants",tabindex:"-1"},[r("Constants "),t("a",{class:"header-anchor",href:"#constants","aria-label":'Permalink to "Constants"'},"​")],-1)),t("p",null,s(a.$frontmatter.description),1),e[1]||(e[1]=i('

Virtual drive

CODE_EXTENSIONS

An array of file extensions for code-related files

  • Type: string[]

IMAGE_EXTENSIONS

An array of file extensions for image files

  • Type: string[]

Themes

THEMES

A map that transforms theme ids into theme names

  • Type: Record<number, string | null>
',13))])}const b=o(c,[["render",d]]);export{g as __pageData,b as default}; diff --git a/docs/assets/reference_core_functions_browser.md.n910jH-l.js b/docs/assets/reference_core_functions_browser.md.CznM7k5B.js similarity index 93% rename from docs/assets/reference_core_functions_browser.md.n910jH-l.js rename to docs/assets/reference_core_functions_browser.md.CznM7k5B.js index 2ecce47a..54615218 100644 --- a/docs/assets/reference_core_functions_browser.md.n910jH-l.js +++ b/docs/assets/reference_core_functions_browser.md.CznM7k5B.js @@ -1,4 +1,4 @@ -import{_ as a,c as o,j as r,a as i,t as s,a1 as n,o as l}from"./chunks/framework.S1oRGgk6.js";const b=JSON.parse('{"title":"Browser functions","description":"Functions related to the browser","frontmatter":{"outline":2,"description":"Functions related to the browser","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Browser functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Browser functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to the browser"}],["meta",{"name":"twitter:description","content":"Functions related to the browser"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/functions/browser"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/functions/browser"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/functions/browser"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/functions/browser.md","filePath":"reference/core/functions/browser.md"}'),c={name:"reference/core/functions/browser.md"};function p(t,e,h,u,d,g){return l(),o("div",null,[e[0]||(e[0]=r("h1",{id:"browser-functions",tabindex:"-1"},[i("Browser functions "),r("a",{class:"header-anchor",href:"#browser-functions","aria-label":'Permalink to "Browser functions"'},"​")],-1)),r("p",null,s(t.$frontmatter.description),1),e[1]||(e[1]=n(`

closeViewport(requireConfirmation, name)

Simulate closing the viewport by opening a blank page

Parameters

  • requireConfirmation - Whether to ask the user for confirmation before closing
    • Type: boolean | undefined
    • Default: false
  • name - Name of the system
    • Type: string

reloadViewport()

Reload the viewport

isValidUrl(string)

Validate a URL string

Parameters

  • string - Input string
    • Type: string

Returns

  • Type: boolean

setViewportTitle(title)

Change the viewport title by changing meta tags and document title

Parameters

  • title - Viewport title
    • Type: string

setViewportIcon(url)

Change the viewport icon by changing meta tags

Parameters

  • url - URL of the viewport icon
    • Type: string

getViewportParams()

Get the current viewport parameters/search queries

Returns

  • Type: Record<string, string>

generateUrl(options)

Generate a system URL based on some options

Parameters

  • options
    • Type: GenerateUrlOptions
ts
interface GenerateUrlOptions {
+import{_ as a,c as o,j as r,a as s,t as i,a3 as n,o as l}from"./chunks/framework.BAnOA2-A.js";const b=JSON.parse('{"title":"Browser functions","description":"Functions related to the browser","frontmatter":{"outline":2,"description":"Functions related to the browser","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Browser functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Browser functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to the browser"}],["meta",{"name":"twitter:description","content":"Functions related to the browser"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/functions/browser"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/functions/browser"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/functions/browser"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/functions/browser.md","filePath":"reference/core/functions/browser.md"}'),c={name:"reference/core/functions/browser.md"};function p(t,e,h,u,d,g){return l(),o("div",null,[e[0]||(e[0]=r("h1",{id:"browser-functions",tabindex:"-1"},[s("Browser functions "),r("a",{class:"header-anchor",href:"#browser-functions","aria-label":'Permalink to "Browser functions"'},"​")],-1)),r("p",null,i(t.$frontmatter.description),1),e[1]||(e[1]=n(`

closeViewport(requireConfirmation, name)

Simulate closing the viewport by opening a blank page

Parameters

  • requireConfirmation - Whether to ask the user for confirmation before closing
    • Type: boolean | undefined
    • Default: false
  • name - Name of the system
    • Type: string

reloadViewport()

Reload the viewport

isValidUrl(string)

Validate a URL string

Parameters

  • string - Input string
    • Type: string

Returns

  • Type: boolean

setViewportTitle(title)

Change the viewport title by changing meta tags and document title

Parameters

  • title - Viewport title
    • Type: string

setViewportIcon(url)

Change the viewport icon by changing meta tags

Parameters

  • url - URL of the viewport icon
    • Type: string

getViewportParams()

Get the current viewport parameters/search queries

Returns

  • Type: Record<string, string>

generateUrl(options)

Generate a system URL based on some options

Parameters

  • options
    • Type: GenerateUrlOptions
ts
interface GenerateUrlOptions {
  appId?: string;
  fullscreen?: boolean;
  standalone?: boolean;
diff --git a/docs/assets/reference_core_functions_browser.md.n910jH-l.lean.js b/docs/assets/reference_core_functions_browser.md.CznM7k5B.lean.js
similarity index 93%
rename from docs/assets/reference_core_functions_browser.md.n910jH-l.lean.js
rename to docs/assets/reference_core_functions_browser.md.CznM7k5B.lean.js
index 2ecce47a..54615218 100644
--- a/docs/assets/reference_core_functions_browser.md.n910jH-l.lean.js
+++ b/docs/assets/reference_core_functions_browser.md.CznM7k5B.lean.js
@@ -1,4 +1,4 @@
-import{_ as a,c as o,j as r,a as i,t as s,a1 as n,o as l}from"./chunks/framework.S1oRGgk6.js";const b=JSON.parse('{"title":"Browser functions","description":"Functions related to the browser","frontmatter":{"outline":2,"description":"Functions related to the browser","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Browser functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Browser functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to the browser"}],["meta",{"name":"twitter:description","content":"Functions related to the browser"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/functions/browser"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/functions/browser"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/functions/browser"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/functions/browser.md","filePath":"reference/core/functions/browser.md"}'),c={name:"reference/core/functions/browser.md"};function p(t,e,h,u,d,g){return l(),o("div",null,[e[0]||(e[0]=r("h1",{id:"browser-functions",tabindex:"-1"},[i("Browser functions "),r("a",{class:"header-anchor",href:"#browser-functions","aria-label":'Permalink to "Browser functions"'},"​")],-1)),r("p",null,s(t.$frontmatter.description),1),e[1]||(e[1]=n(`

closeViewport(requireConfirmation, name)

Simulate closing the viewport by opening a blank page

Parameters

  • requireConfirmation - Whether to ask the user for confirmation before closing
    • Type: boolean | undefined
    • Default: false
  • name - Name of the system
    • Type: string

reloadViewport()

Reload the viewport

isValidUrl(string)

Validate a URL string

Parameters

  • string - Input string
    • Type: string

Returns

  • Type: boolean

setViewportTitle(title)

Change the viewport title by changing meta tags and document title

Parameters

  • title - Viewport title
    • Type: string

setViewportIcon(url)

Change the viewport icon by changing meta tags

Parameters

  • url - URL of the viewport icon
    • Type: string

getViewportParams()

Get the current viewport parameters/search queries

Returns

  • Type: Record<string, string>

generateUrl(options)

Generate a system URL based on some options

Parameters

  • options
    • Type: GenerateUrlOptions
ts
interface GenerateUrlOptions {
+import{_ as a,c as o,j as r,a as s,t as i,a3 as n,o as l}from"./chunks/framework.BAnOA2-A.js";const b=JSON.parse('{"title":"Browser functions","description":"Functions related to the browser","frontmatter":{"outline":2,"description":"Functions related to the browser","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Browser functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Browser functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to the browser"}],["meta",{"name":"twitter:description","content":"Functions related to the browser"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/functions/browser"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/functions/browser"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/functions/browser"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/functions/browser.md","filePath":"reference/core/functions/browser.md"}'),c={name:"reference/core/functions/browser.md"};function p(t,e,h,u,d,g){return l(),o("div",null,[e[0]||(e[0]=r("h1",{id:"browser-functions",tabindex:"-1"},[s("Browser functions "),r("a",{class:"header-anchor",href:"#browser-functions","aria-label":'Permalink to "Browser functions"'},"​")],-1)),r("p",null,i(t.$frontmatter.description),1),e[1]||(e[1]=n(`

closeViewport(requireConfirmation, name)

Simulate closing the viewport by opening a blank page

Parameters

  • requireConfirmation - Whether to ask the user for confirmation before closing
    • Type: boolean | undefined
    • Default: false
  • name - Name of the system
    • Type: string

reloadViewport()

Reload the viewport

isValidUrl(string)

Validate a URL string

Parameters

  • string - Input string
    • Type: string

Returns

  • Type: boolean

setViewportTitle(title)

Change the viewport title by changing meta tags and document title

Parameters

  • title - Viewport title
    • Type: string

setViewportIcon(url)

Change the viewport icon by changing meta tags

Parameters

  • url - URL of the viewport icon
    • Type: string

getViewportParams()

Get the current viewport parameters/search queries

Returns

  • Type: Record<string, string>

generateUrl(options)

Generate a system URL based on some options

Parameters

  • options
    • Type: GenerateUrlOptions
ts
interface GenerateUrlOptions {
  appId?: string;
  fullscreen?: boolean;
  standalone?: boolean;
diff --git a/docs/assets/reference_core_functions_keyboard.md.jj_WhwmQ.js b/docs/assets/reference_core_functions_keyboard.md.jj_WhwmQ.js
new file mode 100644
index 00000000..a9ffc974
--- /dev/null
+++ b/docs/assets/reference_core_functions_keyboard.md.jj_WhwmQ.js
@@ -0,0 +1,2 @@
+import{_ as o,c as r,j as t,a as s,t as n,a3 as i,o as l}from"./chunks/framework.BAnOA2-A.js";const f=JSON.parse('{"title":"Keyboard functions","description":"Functions related to the keyboard","frontmatter":{"outline":2,"description":"Functions related to the keyboard","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Keyboard functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Keyboard functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to the keyboard"}],["meta",{"name":"twitter:description","content":"Functions related to the keyboard"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/functions/keyboard"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/functions/keyboard"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/functions/keyboard"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/functions/keyboard.md","filePath":"reference/core/functions/keyboard.md"}'),c={name:"reference/core/functions/keyboard.md"};function d(a,e,h,p,u,k){return l(),r("div",null,[e[0]||(e[0]=t("h1",{id:"keyboard-functions",tabindex:"-1"},[s("Keyboard functions "),t("a",{class:"header-anchor",href:"#keyboard-functions","aria-label":'Permalink to "Keyboard functions"'},"​")],-1)),t("p",null,n(a.$frontmatter.description),1),e[1]||(e[1]=i(`

formatShortcut(shortcut)

Formats a shortcut (combination of keys) into a human-readable format.

For a list of valid key values, refer to this page: Key values for keyboard events - Web APIs | MDN

Parameters

  • shortcut - A list of keys
    • Type: string[]

Returns

  • Type: string

Example

ts
formatShortcut(["Control", "a"])
+// Result: "Ctrl+A"
`,10))])}const b=o(c,[["render",d]]);export{f as __pageData,b as default}; diff --git a/docs/assets/reference_core_functions_keyboard.md.jj_WhwmQ.lean.js b/docs/assets/reference_core_functions_keyboard.md.jj_WhwmQ.lean.js new file mode 100644 index 00000000..a9ffc974 --- /dev/null +++ b/docs/assets/reference_core_functions_keyboard.md.jj_WhwmQ.lean.js @@ -0,0 +1,2 @@ +import{_ as o,c as r,j as t,a as s,t as n,a3 as i,o as l}from"./chunks/framework.BAnOA2-A.js";const f=JSON.parse('{"title":"Keyboard functions","description":"Functions related to the keyboard","frontmatter":{"outline":2,"description":"Functions related to the keyboard","package":"@prozilla-os/core","head":[["meta",{"name":"og:title","content":"Keyboard functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Keyboard functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to the keyboard"}],["meta",{"name":"twitter:description","content":"Functions related to the keyboard"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/functions/keyboard"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/functions/keyboard"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/functions/keyboard"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/functions/keyboard.md","filePath":"reference/core/functions/keyboard.md"}'),c={name:"reference/core/functions/keyboard.md"};function d(a,e,h,p,u,k){return l(),r("div",null,[e[0]||(e[0]=t("h1",{id:"keyboard-functions",tabindex:"-1"},[s("Keyboard functions "),t("a",{class:"header-anchor",href:"#keyboard-functions","aria-label":'Permalink to "Keyboard functions"'},"​")],-1)),t("p",null,n(a.$frontmatter.description),1),e[1]||(e[1]=i(`

formatShortcut(shortcut)

Formats a shortcut (combination of keys) into a human-readable format.

For a list of valid key values, refer to this page: Key values for keyboard events - Web APIs | MDN

Parameters

  • shortcut - A list of keys
    • Type: string[]

Returns

  • Type: string

Example

ts
formatShortcut(["Control", "a"])
+// Result: "Ctrl+A"
`,10))])}const b=o(c,[["render",d]]);export{f as __pageData,b as default}; diff --git a/docs/assets/reference_core_index.md.D4Smyti7.lean.js b/docs/assets/reference_core_index.md.Cr8oSWzh.js similarity index 73% rename from docs/assets/reference_core_index.md.D4Smyti7.lean.js rename to docs/assets/reference_core_index.md.Cr8oSWzh.js index 338b7783..afdbd760 100644 --- a/docs/assets/reference_core_index.md.D4Smyti7.lean.js +++ b/docs/assets/reference_core_index.md.Cr8oSWzh.js @@ -1,6 +1,6 @@ -import{_ as s,c as a,a1 as n,o as l}from"./chunks/framework.S1oRGgk6.js";const d=JSON.parse('{"title":"@prozilla-os/core","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/core | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/core | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/index.md","filePath":"reference/core/index.md"}'),t={name:"reference/core/index.md"};function h(k,i,p,e,F,r){return l(),a("div",null,i[0]||(i[0]=[n(`

@prozilla-os/core

About

@prozilla-os/core is a React Vite component library written in TypeScript for building web-based operating systems, made by Prozilla.

Installation

sh
npm install @prozilla-os/core
+import{_ as s,c as a,a3 as n,o as l}from"./chunks/framework.BAnOA2-A.js";const d=JSON.parse('{"title":"@prozilla-os/core","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/core | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/core | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/index.md","filePath":"reference/core/index.md"}'),t={name:"reference/core/index.md"};function h(k,i,F,p,e,r){return l(),a("div",null,i[0]||(i[0]=[n(`

@prozilla-os/core

About

@prozilla-os/core is a React Vite component library written in TypeScript for building web-based operating systems, made by Prozilla.

Installation

sh
npm install @prozilla-os/core
 yarn add @prozilla-os/core
-pnpm add @prozilla-os/core

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "@prozilla-os/core";
+pnpm add @prozilla-os/core

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "@prozilla-os/core";
 
 function App() {
   return (
@@ -11,19 +11,19 @@ import{_ as s,c as a,a1 as n,o as l}from"./chunks/framework.S1oRGgk6.js";const d
       <Desktop/>
     </ProzillaOS>
   );
-}

Configuration

tsx
interface ProzillaOSProps {
+}

Configuration

tsx
interface ProzillaOSProps {
 
   systemName: string,
 
   tagLine: string,
 
-  skin: new Skin({
+  skin: new Skin({
 
     appIcons: Record<number, string> | undefined,
 
  appNames: Record<number, string> | undefined,
 
- wallpapers: string[],
+ wallpapers: string[],
 
  defaultWallpaper: string,
 
@@ -43,91 +43,91 @@ import{_ as s,c as a,a1 as n,o as l}from"./chunks/framework.S1oRGgk6.js";const d
 
  loadStyleSheet: () => void | undefined
 
-  })
+  })
 
   config: {
-    apps: new AppsConfig({
+    apps: new AppsConfig({
 
-      apps: App[]
+      apps: App[]
 
-    }),
-    desktop: new DesktopConfig({
+    }),
+    desktop: new DesktopConfig({
 
-      /**
-       * @default 1
-       */
+      /**
+       * @default 1
+       */
       defaultIconSize: 0 | 1 | 2,
 
-      /**
-       * 0: vertical, 1: horizontal
-       * @default 0
-       * */
+      /**
+       * 0: vertical, 1: horizontal
+       * @default 0
+       * */
       defaultIconDirection: 0 | 1
 
-    }),
- misc: new MiscConfig({
+    }),
+ misc: new MiscConfig({
 
-      /**
-    * @default 250
-    */
+      /**
+    * @default 250
+    */
    doubleClickDelay: number
 
- })
-    modals: new ModalsConfig({
+ })
+    modals: new ModalsConfig({
 
-      /**
-       * Default size of a dialog box
-       * @default new Vector2(400, 200)
-       */
+      /**
+       * Default size of a dialog box
+       * @default new Vector2(400, 200)
+       */
       defaultDialogSize: Vector2,
 
-      /**
-       * Default size of a file selector
-       * @default new Vector2(700, 400)
-       */
+      /**
+       * Default size of a file selector
+       * @default new Vector2(700, 400)
+       */
       defaultFileSelectorSize: Vector2
 
-    }),
-    taskbar: new TaskbarConfig({
+    }),
+    taskbar: new TaskbarConfig({
 
-      /**
-       * Height of the taskbar in CSS pixels
-       * @default 3 * 16
-       */
+      /**
+       * Height of the taskbar in CSS pixels
+       * @default 3 * 16
+       */
       height: number
 
-    }),
-    tracking: new TrackingConfig({
+    }),
+    tracking: new TrackingConfig({
 
-      /**
-       * Enable tracking
-       * @default true
-      */
+      /**
+       * Enable tracking
+       * @default true
+      */
       enabled: boolean,
 
-      /** Google Analytics measurement ID */
+      /** Google Analytics measurement ID */
       GAMeasurementId: string
 
-    }),
-    windows: new WindowsConfig({
+    }),
+    windows: new WindowsConfig({
 
-      /**
-       * @default 32
-       */
+      /**
+       * @default 32
+       */
       screenMargin: number,
 
-      /**
-       * @default "-"
-       */
+      /**
+       * @default "-"
+       */
       titleSeparator: string,
 
-      /**
-       * If the user's screen is smaller than these values, windows will always be maximized
-       * @default new Vector2(350, 350)
-       */
+      /**
+       * If the user's screen is smaller than these values, windows will always be maximized
+       * @default new Vector2(350, 350)
+       */
       minScreenSize: Vector2
 
-    })
+    })
   }
 
-}
`,13)]))}const g=s(t,[["render",h]]);export{d as __pageData,g as default}; +}
`,13)]))}const y=s(t,[["render",h]]);export{d as __pageData,y as default}; diff --git a/docs/assets/reference_core_index.md.D4Smyti7.js b/docs/assets/reference_core_index.md.Cr8oSWzh.lean.js similarity index 73% rename from docs/assets/reference_core_index.md.D4Smyti7.js rename to docs/assets/reference_core_index.md.Cr8oSWzh.lean.js index 338b7783..afdbd760 100644 --- a/docs/assets/reference_core_index.md.D4Smyti7.js +++ b/docs/assets/reference_core_index.md.Cr8oSWzh.lean.js @@ -1,6 +1,6 @@ -import{_ as s,c as a,a1 as n,o as l}from"./chunks/framework.S1oRGgk6.js";const d=JSON.parse('{"title":"@prozilla-os/core","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/core | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/core | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/index.md","filePath":"reference/core/index.md"}'),t={name:"reference/core/index.md"};function h(k,i,p,e,F,r){return l(),a("div",null,i[0]||(i[0]=[n(`

@prozilla-os/core

About

@prozilla-os/core is a React Vite component library written in TypeScript for building web-based operating systems, made by Prozilla.

Installation

sh
npm install @prozilla-os/core
+import{_ as s,c as a,a3 as n,o as l}from"./chunks/framework.BAnOA2-A.js";const d=JSON.parse('{"title":"@prozilla-os/core","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/core | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/core | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/core/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/core/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/core/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/core/index.md","filePath":"reference/core/index.md"}'),t={name:"reference/core/index.md"};function h(k,i,F,p,e,r){return l(),a("div",null,i[0]||(i[0]=[n(`

@prozilla-os/core

About

@prozilla-os/core is a React Vite component library written in TypeScript for building web-based operating systems, made by Prozilla.

Installation

sh
npm install @prozilla-os/core
 yarn add @prozilla-os/core
-pnpm add @prozilla-os/core

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "@prozilla-os/core";
+pnpm add @prozilla-os/core

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "@prozilla-os/core";
 
 function App() {
   return (
@@ -11,19 +11,19 @@ import{_ as s,c as a,a1 as n,o as l}from"./chunks/framework.S1oRGgk6.js";const d
       <Desktop/>
     </ProzillaOS>
   );
-}

Configuration

tsx
interface ProzillaOSProps {
+}

Configuration

tsx
interface ProzillaOSProps {
 
   systemName: string,
 
   tagLine: string,
 
-  skin: new Skin({
+  skin: new Skin({
 
     appIcons: Record<number, string> | undefined,
 
  appNames: Record<number, string> | undefined,
 
- wallpapers: string[],
+ wallpapers: string[],
 
  defaultWallpaper: string,
 
@@ -43,91 +43,91 @@ import{_ as s,c as a,a1 as n,o as l}from"./chunks/framework.S1oRGgk6.js";const d
 
  loadStyleSheet: () => void | undefined
 
-  })
+  })
 
   config: {
-    apps: new AppsConfig({
+    apps: new AppsConfig({
 
-      apps: App[]
+      apps: App[]
 
-    }),
-    desktop: new DesktopConfig({
+    }),
+    desktop: new DesktopConfig({
 
-      /**
-       * @default 1
-       */
+      /**
+       * @default 1
+       */
       defaultIconSize: 0 | 1 | 2,
 
-      /**
-       * 0: vertical, 1: horizontal
-       * @default 0
-       * */
+      /**
+       * 0: vertical, 1: horizontal
+       * @default 0
+       * */
       defaultIconDirection: 0 | 1
 
-    }),
- misc: new MiscConfig({
+    }),
+ misc: new MiscConfig({
 
-      /**
-    * @default 250
-    */
+      /**
+    * @default 250
+    */
    doubleClickDelay: number
 
- })
-    modals: new ModalsConfig({
+ })
+    modals: new ModalsConfig({
 
-      /**
-       * Default size of a dialog box
-       * @default new Vector2(400, 200)
-       */
+      /**
+       * Default size of a dialog box
+       * @default new Vector2(400, 200)
+       */
       defaultDialogSize: Vector2,
 
-      /**
-       * Default size of a file selector
-       * @default new Vector2(700, 400)
-       */
+      /**
+       * Default size of a file selector
+       * @default new Vector2(700, 400)
+       */
       defaultFileSelectorSize: Vector2
 
-    }),
-    taskbar: new TaskbarConfig({
+    }),
+    taskbar: new TaskbarConfig({
 
-      /**
-       * Height of the taskbar in CSS pixels
-       * @default 3 * 16
-       */
+      /**
+       * Height of the taskbar in CSS pixels
+       * @default 3 * 16
+       */
       height: number
 
-    }),
-    tracking: new TrackingConfig({
+    }),
+    tracking: new TrackingConfig({
 
-      /**
-       * Enable tracking
-       * @default true
-      */
+      /**
+       * Enable tracking
+       * @default true
+      */
       enabled: boolean,
 
-      /** Google Analytics measurement ID */
+      /** Google Analytics measurement ID */
       GAMeasurementId: string
 
-    }),
-    windows: new WindowsConfig({
+    }),
+    windows: new WindowsConfig({
 
-      /**
-       * @default 32
-       */
+      /**
+       * @default 32
+       */
       screenMargin: number,
 
-      /**
-       * @default "-"
-       */
+      /**
+       * @default "-"
+       */
       titleSeparator: string,
 
-      /**
-       * If the user's screen is smaller than these values, windows will always be maximized
-       * @default new Vector2(350, 350)
-       */
+      /**
+       * If the user's screen is smaller than these values, windows will always be maximized
+       * @default new Vector2(350, 350)
+       */
       minScreenSize: Vector2
 
-    })
+    })
   }
 
-}
`,13)]))}const g=s(t,[["render",h]]);export{d as __pageData,g as default}; +}
`,13)]))}const y=s(t,[["render",h]]);export{d as __pageData,y as default}; diff --git a/docs/assets/reference_dev-tools_functions_console.md.CWjplJ_9.js b/docs/assets/reference_dev-tools_functions_console.md.DgXAwhqe.js similarity index 69% rename from docs/assets/reference_dev-tools_functions_console.md.CWjplJ_9.js rename to docs/assets/reference_dev-tools_functions_console.md.DgXAwhqe.js index 1eb4cf79..4bd59af7 100644 --- a/docs/assets/reference_dev-tools_functions_console.md.CWjplJ_9.js +++ b/docs/assets/reference_dev-tools_functions_console.md.DgXAwhqe.js @@ -1,11 +1,11 @@ -import{_ as t,c as e,j as i,a as n,t as l,a1 as o,o as h}from"./chunks/framework.S1oRGgk6.js";const g=JSON.parse('{"title":"Console functions","description":"Functions related to the console","frontmatter":{"outline":2,"description":"Functions related to the console","package":"@prozilla-os/dev-tools","head":[["meta",{"name":"og:title","content":"Console functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Console functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to the console"}],["meta",{"name":"twitter:description","content":"Functions related to the console"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/dev-tools/functions/console"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/console"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/console"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/dev-tools/functions/console.md","filePath":"reference/dev-tools/functions/console.md"}'),p={name:"reference/dev-tools/functions/console.md"};function r(a,s,k,D,F,d){return h(),e("div",null,[s[0]||(s[0]=i("h1",{id:"console-functions",tabindex:"-1"},[n("Console functions "),i("a",{class:"header-anchor",href:"#console-functions","aria-label":'Permalink to "Console functions"'},"​")],-1)),i("p",null,l(a.$frontmatter.description),1),s[1]||(s[1]=o(`

Print messages to the console

Parameters

  • message - Message to print to the console
    • Type: string
  • status - Status of the message
    • Type: "error" | "info" | "file" | "success" | "start" | undefined
  • status - If true, prints the message on a new line
    • Type: boolean | undefined

Example

ts
print("Starting application", "start");
-print("Processing information", "info", true);
-print("info.txt", "file");
-print("Information processed", "success");
-print("Application failed", "error", true);
Starting application...
+import{_ as t,c as e,j as i,a as n,t as l,a3 as o,o as F}from"./chunks/framework.BAnOA2-A.js";const g=JSON.parse('{"title":"Console functions","description":"Functions related to the console","frontmatter":{"outline":2,"description":"Functions related to the console","package":"@prozilla-os/dev-tools","head":[["meta",{"name":"og:title","content":"Console functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Console functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to the console"}],["meta",{"name":"twitter:description","content":"Functions related to the console"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/dev-tools/functions/console"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/console"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/console"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/dev-tools/functions/console.md","filePath":"reference/dev-tools/functions/console.md"}'),h={name:"reference/dev-tools/functions/console.md"};function p(a,s,r,k,D,d){return F(),e("div",null,[s[0]||(s[0]=i("h1",{id:"console-functions",tabindex:"-1"},[n("Console functions "),i("a",{class:"header-anchor",href:"#console-functions","aria-label":'Permalink to "Console functions"'},"​")],-1)),i("p",null,l(a.$frontmatter.description),1),s[1]||(s[1]=o(`

Print messages to the console

Parameters

  • message - Message to print to the console
    • Type: string
  • status - Status of the message
    • Type: "error" | "info" | "file" | "success" | "start" | undefined
  • status - If true, prints the message on a new line
    • Type: boolean | undefined

Example

ts
print("Starting application", "start");
+print("Processing information", "info", true);
+print("info.txt", "file");
+print("Information processed", "success");
+print("Application failed", "error", true);
Starting application...
 
-Processing information
-- info.txt
+Processing information
+- info.txt
 ✓ Information processed
 
-⚠ Application failed
`,8))])}const u=t(p,[["render",r]]);export{g as __pageData,u as default}; +⚠ Application failed
`,8))])}const u=t(h,[["render",p]]);export{g as __pageData,u as default}; diff --git a/docs/assets/reference_dev-tools_functions_console.md.CWjplJ_9.lean.js b/docs/assets/reference_dev-tools_functions_console.md.DgXAwhqe.lean.js similarity index 69% rename from docs/assets/reference_dev-tools_functions_console.md.CWjplJ_9.lean.js rename to docs/assets/reference_dev-tools_functions_console.md.DgXAwhqe.lean.js index 1eb4cf79..4bd59af7 100644 --- a/docs/assets/reference_dev-tools_functions_console.md.CWjplJ_9.lean.js +++ b/docs/assets/reference_dev-tools_functions_console.md.DgXAwhqe.lean.js @@ -1,11 +1,11 @@ -import{_ as t,c as e,j as i,a as n,t as l,a1 as o,o as h}from"./chunks/framework.S1oRGgk6.js";const g=JSON.parse('{"title":"Console functions","description":"Functions related to the console","frontmatter":{"outline":2,"description":"Functions related to the console","package":"@prozilla-os/dev-tools","head":[["meta",{"name":"og:title","content":"Console functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Console functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to the console"}],["meta",{"name":"twitter:description","content":"Functions related to the console"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/dev-tools/functions/console"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/console"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/console"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/dev-tools/functions/console.md","filePath":"reference/dev-tools/functions/console.md"}'),p={name:"reference/dev-tools/functions/console.md"};function r(a,s,k,D,F,d){return h(),e("div",null,[s[0]||(s[0]=i("h1",{id:"console-functions",tabindex:"-1"},[n("Console functions "),i("a",{class:"header-anchor",href:"#console-functions","aria-label":'Permalink to "Console functions"'},"​")],-1)),i("p",null,l(a.$frontmatter.description),1),s[1]||(s[1]=o(`

Print messages to the console

Parameters

  • message - Message to print to the console
    • Type: string
  • status - Status of the message
    • Type: "error" | "info" | "file" | "success" | "start" | undefined
  • status - If true, prints the message on a new line
    • Type: boolean | undefined

Example

ts
print("Starting application", "start");
-print("Processing information", "info", true);
-print("info.txt", "file");
-print("Information processed", "success");
-print("Application failed", "error", true);
Starting application...
+import{_ as t,c as e,j as i,a as n,t as l,a3 as o,o as F}from"./chunks/framework.BAnOA2-A.js";const g=JSON.parse('{"title":"Console functions","description":"Functions related to the console","frontmatter":{"outline":2,"description":"Functions related to the console","package":"@prozilla-os/dev-tools","head":[["meta",{"name":"og:title","content":"Console functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Console functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to the console"}],["meta",{"name":"twitter:description","content":"Functions related to the console"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/dev-tools/functions/console"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/console"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/console"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/dev-tools/functions/console.md","filePath":"reference/dev-tools/functions/console.md"}'),h={name:"reference/dev-tools/functions/console.md"};function p(a,s,r,k,D,d){return F(),e("div",null,[s[0]||(s[0]=i("h1",{id:"console-functions",tabindex:"-1"},[n("Console functions "),i("a",{class:"header-anchor",href:"#console-functions","aria-label":'Permalink to "Console functions"'},"​")],-1)),i("p",null,l(a.$frontmatter.description),1),s[1]||(s[1]=o(`

Print messages to the console

Parameters

  • message - Message to print to the console
    • Type: string
  • status - Status of the message
    • Type: "error" | "info" | "file" | "success" | "start" | undefined
  • status - If true, prints the message on a new line
    • Type: boolean | undefined

Example

ts
print("Starting application", "start");
+print("Processing information", "info", true);
+print("info.txt", "file");
+print("Information processed", "success");
+print("Application failed", "error", true);
Starting application...
 
-Processing information
-- info.txt
+Processing information
+- info.txt
 ✓ Information processed
 
-⚠ Application failed
`,8))])}const u=t(p,[["render",r]]);export{g as __pageData,u as default}; +⚠ Application failed
`,8))])}const u=t(h,[["render",p]]);export{g as __pageData,u as default}; diff --git a/docs/assets/reference_dev-tools_functions_vite.md.BwL1oT9Y.js b/docs/assets/reference_dev-tools_functions_vite.md.BOROI5rc.js similarity index 71% rename from docs/assets/reference_dev-tools_functions_vite.md.BwL1oT9Y.js rename to docs/assets/reference_dev-tools_functions_vite.md.BOROI5rc.js index 33f5ee60..8d58f25e 100644 --- a/docs/assets/reference_dev-tools_functions_vite.md.BwL1oT9Y.js +++ b/docs/assets/reference_dev-tools_functions_vite.md.BOROI5rc.js @@ -1,60 +1,60 @@ -import{_ as t,c as n,j as s,a as l,t as e,a1 as h,o as k}from"./chunks/framework.S1oRGgk6.js";const y=JSON.parse('{"title":"Vite functions","description":"Functions related to Vite","frontmatter":{"outline":2,"description":"Functions related to Vite","package":"@prozilla-os/dev-tools","head":[["meta",{"name":"og:title","content":"Vite functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Vite functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to Vite"}],["meta",{"name":"twitter:description","content":"Functions related to Vite"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/dev-tools/functions/vite"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/vite"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/vite"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/dev-tools/functions/vite.md","filePath":"reference/dev-tools/functions/vite.md"}'),p={name:"reference/dev-tools/functions/vite.md"};function D(a,i,r,F,o,d){return k(),n("div",null,[i[0]||(i[0]=s("h1",{id:"vite-functions",tabindex:"-1"},[l("Vite functions "),s("a",{class:"header-anchor",href:"#vite-functions","aria-label":'Permalink to "Vite functions"'},"​")],-1)),s("p",null,e(a.$frontmatter.description),1),i[1]||(i[1]=h(`

appViteConfig(basePath, entryPath)

Helper function for creating Vite configurations for ProzillaOS apps

Parameters

  • basePath - Path of base directory
    • Type: string
  • entryPath - Path of library entry
    • Type: string

Returns

See: https://vitejs.dev/config/

  • Type: vite.UserConfig

Example

ts
// vite.config.ts
+import{_ as t,c as n,j as s,a as l,t as e,a3 as h,o as F}from"./chunks/framework.BAnOA2-A.js";const y=JSON.parse('{"title":"Vite functions","description":"Functions related to Vite","frontmatter":{"outline":2,"description":"Functions related to Vite","package":"@prozilla-os/dev-tools","head":[["meta",{"name":"og:title","content":"Vite functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Vite functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to Vite"}],["meta",{"name":"twitter:description","content":"Functions related to Vite"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/dev-tools/functions/vite"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/vite"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/vite"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/dev-tools/functions/vite.md","filePath":"reference/dev-tools/functions/vite.md"}'),k={name:"reference/dev-tools/functions/vite.md"};function p(a,i,r,D,o,d){return F(),n("div",null,[i[0]||(i[0]=s("h1",{id:"vite-functions",tabindex:"-1"},[l("Vite functions "),s("a",{class:"header-anchor",href:"#vite-functions","aria-label":'Permalink to "Vite functions"'},"​")],-1)),s("p",null,e(a.$frontmatter.description),1),i[1]||(i[1]=h(`

appViteConfig(basePath, entryPath)

Helper function for creating Vite configurations for ProzillaOS apps

Parameters

  • basePath - Path of base directory
    • Type: string
  • entryPath - Path of library entry
    • Type: string

Returns

See: https://vitejs.dev/config/

  • Type: vite.UserConfig

Example

ts
// vite.config.ts
 
-import { defineConfig } from "vite";
-import { appViteConfig } from "@prozilla-os/dev-tools";
+import { defineConfig } from "vite";
+import { appViteConfig } from "@prozilla-os/dev-tools";
 
-export default defineConfig({
-	...appViteConfig(__dirname, "src/main.ts")
-});

stageSitePlugin(options)

A Vite (rollup) plugin for automatically staging a ProzillaOS website during the Vite build process.

This plugin generates meta files and separate HTML files for each application for SEO.

Parameters

  • options
    • Type: StageOptions
ts
interface StageOptions {
+export default defineConfig({
+	...appViteConfig(__dirname, "src/main.ts")
+});

stageSitePlugin(options)

A Vite (rollup) plugin for automatically staging a ProzillaOS website during the Vite build process.

This plugin generates meta files and separate HTML files for each application for SEO.

Parameters

  • options
    • Type: StageOptions
ts
interface StageOptions {
 	appsConfig: AppsConfig;
 
-	/**
-	 * Name of the website 
-	 * @example "ProzillaOS"
-	 */
+	/**
+	 * Name of the website 
+	 * @example "ProzillaOS"
+	 */
 	siteName: string;
 
-	/**
-	 * Tag line of the website
-	 * @example "Web-based Operating System"
-	*/
+	/**
+	 * Tag line of the website
+	 * @example "Web-based Operating System"
+	*/
 	siteTagLine: string;
 
-	/**
-	 * Domain of the live website
-	 * 
-	 * A CNAME file will be generated with this value
-	 * @example "os.prozilla.dev"
-	 */
+	/**
+	 * Domain of the live website
+	 * 
+	 * A CNAME file will be generated with this value
+	 * @example "os.prozilla.dev"
+	 */
 	domain: string;
 
-	/**
-	 * Array of image URLs that will be added to the sitemap
-	 */
-	imageUrls?: string[];
-}

Returns

  • Type: rollup.Plugin

Example

ts
// vite.config.ts
+	/**
+	 * Array of image URLs that will be added to the sitemap
+	 */
+	imageUrls?: string[];
+}

Returns

  • Type: rollup.Plugin

Example

ts
// vite.config.ts
 
-import { defineConfig } from "vite";
-import { AppsConfig, fileExplorer, terminal, textEditor } from "prozilla-os";
+import { defineConfig } from "vite";
+import { AppsConfig, fileExplorer, terminal, textEditor } from "prozilla-os";
 
-export default defineConfig({
+export default defineConfig({
 	build: {
 		outDir: "dist",
 		rollupOptions: {
-			plugins: [
-				stageSitePlugin({
-					appsConfig: new AppsConfig({
-						apps: [
-							fileExplorer.setName("Files")
-							terminal.setName("Commands")
-							textEditor.setName("Notes")
-						],
-					}),
+			plugins: [
+				stageSitePlugin({
+					appsConfig: new AppsConfig({
+						apps: [
+							fileExplorer.setName("Files")
+							terminal.setName("Commands")
+							textEditor.setName("Notes")
+						],
+					}),
 					siteName: "ProzillaOS",
 					siteTagLine: "Web-based Operating System",
 					domain: "os.prozilla.dev"
-				})
-			],
+				})
+			],
 		},
 	}
-});
`,20))])}const c=t(p,[["render",D]]);export{y as __pageData,c as default}; +});
`,20))])}const c=t(k,[["render",p]]);export{y as __pageData,c as default}; diff --git a/docs/assets/reference_dev-tools_functions_vite.md.BwL1oT9Y.lean.js b/docs/assets/reference_dev-tools_functions_vite.md.BOROI5rc.lean.js similarity index 71% rename from docs/assets/reference_dev-tools_functions_vite.md.BwL1oT9Y.lean.js rename to docs/assets/reference_dev-tools_functions_vite.md.BOROI5rc.lean.js index 33f5ee60..8d58f25e 100644 --- a/docs/assets/reference_dev-tools_functions_vite.md.BwL1oT9Y.lean.js +++ b/docs/assets/reference_dev-tools_functions_vite.md.BOROI5rc.lean.js @@ -1,60 +1,60 @@ -import{_ as t,c as n,j as s,a as l,t as e,a1 as h,o as k}from"./chunks/framework.S1oRGgk6.js";const y=JSON.parse('{"title":"Vite functions","description":"Functions related to Vite","frontmatter":{"outline":2,"description":"Functions related to Vite","package":"@prozilla-os/dev-tools","head":[["meta",{"name":"og:title","content":"Vite functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Vite functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to Vite"}],["meta",{"name":"twitter:description","content":"Functions related to Vite"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/dev-tools/functions/vite"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/vite"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/vite"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/dev-tools/functions/vite.md","filePath":"reference/dev-tools/functions/vite.md"}'),p={name:"reference/dev-tools/functions/vite.md"};function D(a,i,r,F,o,d){return k(),n("div",null,[i[0]||(i[0]=s("h1",{id:"vite-functions",tabindex:"-1"},[l("Vite functions "),s("a",{class:"header-anchor",href:"#vite-functions","aria-label":'Permalink to "Vite functions"'},"​")],-1)),s("p",null,e(a.$frontmatter.description),1),i[1]||(i[1]=h(`

appViteConfig(basePath, entryPath)

Helper function for creating Vite configurations for ProzillaOS apps

Parameters

  • basePath - Path of base directory
    • Type: string
  • entryPath - Path of library entry
    • Type: string

Returns

See: https://vitejs.dev/config/

  • Type: vite.UserConfig

Example

ts
// vite.config.ts
+import{_ as t,c as n,j as s,a as l,t as e,a3 as h,o as F}from"./chunks/framework.BAnOA2-A.js";const y=JSON.parse('{"title":"Vite functions","description":"Functions related to Vite","frontmatter":{"outline":2,"description":"Functions related to Vite","package":"@prozilla-os/dev-tools","head":[["meta",{"name":"og:title","content":"Vite functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Vite functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to Vite"}],["meta",{"name":"twitter:description","content":"Functions related to Vite"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/dev-tools/functions/vite"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/vite"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/functions/vite"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/dev-tools/functions/vite.md","filePath":"reference/dev-tools/functions/vite.md"}'),k={name:"reference/dev-tools/functions/vite.md"};function p(a,i,r,D,o,d){return F(),n("div",null,[i[0]||(i[0]=s("h1",{id:"vite-functions",tabindex:"-1"},[l("Vite functions "),s("a",{class:"header-anchor",href:"#vite-functions","aria-label":'Permalink to "Vite functions"'},"​")],-1)),s("p",null,e(a.$frontmatter.description),1),i[1]||(i[1]=h(`

appViteConfig(basePath, entryPath)

Helper function for creating Vite configurations for ProzillaOS apps

Parameters

  • basePath - Path of base directory
    • Type: string
  • entryPath - Path of library entry
    • Type: string

Returns

See: https://vitejs.dev/config/

  • Type: vite.UserConfig

Example

ts
// vite.config.ts
 
-import { defineConfig } from "vite";
-import { appViteConfig } from "@prozilla-os/dev-tools";
+import { defineConfig } from "vite";
+import { appViteConfig } from "@prozilla-os/dev-tools";
 
-export default defineConfig({
-	...appViteConfig(__dirname, "src/main.ts")
-});

stageSitePlugin(options)

A Vite (rollup) plugin for automatically staging a ProzillaOS website during the Vite build process.

This plugin generates meta files and separate HTML files for each application for SEO.

Parameters

  • options
    • Type: StageOptions
ts
interface StageOptions {
+export default defineConfig({
+	...appViteConfig(__dirname, "src/main.ts")
+});

stageSitePlugin(options)

A Vite (rollup) plugin for automatically staging a ProzillaOS website during the Vite build process.

This plugin generates meta files and separate HTML files for each application for SEO.

Parameters

  • options
    • Type: StageOptions
ts
interface StageOptions {
 	appsConfig: AppsConfig;
 
-	/**
-	 * Name of the website 
-	 * @example "ProzillaOS"
-	 */
+	/**
+	 * Name of the website 
+	 * @example "ProzillaOS"
+	 */
 	siteName: string;
 
-	/**
-	 * Tag line of the website
-	 * @example "Web-based Operating System"
-	*/
+	/**
+	 * Tag line of the website
+	 * @example "Web-based Operating System"
+	*/
 	siteTagLine: string;
 
-	/**
-	 * Domain of the live website
-	 * 
-	 * A CNAME file will be generated with this value
-	 * @example "os.prozilla.dev"
-	 */
+	/**
+	 * Domain of the live website
+	 * 
+	 * A CNAME file will be generated with this value
+	 * @example "os.prozilla.dev"
+	 */
 	domain: string;
 
-	/**
-	 * Array of image URLs that will be added to the sitemap
-	 */
-	imageUrls?: string[];
-}

Returns

  • Type: rollup.Plugin

Example

ts
// vite.config.ts
+	/**
+	 * Array of image URLs that will be added to the sitemap
+	 */
+	imageUrls?: string[];
+}

Returns

  • Type: rollup.Plugin

Example

ts
// vite.config.ts
 
-import { defineConfig } from "vite";
-import { AppsConfig, fileExplorer, terminal, textEditor } from "prozilla-os";
+import { defineConfig } from "vite";
+import { AppsConfig, fileExplorer, terminal, textEditor } from "prozilla-os";
 
-export default defineConfig({
+export default defineConfig({
 	build: {
 		outDir: "dist",
 		rollupOptions: {
-			plugins: [
-				stageSitePlugin({
-					appsConfig: new AppsConfig({
-						apps: [
-							fileExplorer.setName("Files")
-							terminal.setName("Commands")
-							textEditor.setName("Notes")
-						],
-					}),
+			plugins: [
+				stageSitePlugin({
+					appsConfig: new AppsConfig({
+						apps: [
+							fileExplorer.setName("Files")
+							terminal.setName("Commands")
+							textEditor.setName("Notes")
+						],
+					}),
 					siteName: "ProzillaOS",
 					siteTagLine: "Web-based Operating System",
 					domain: "os.prozilla.dev"
-				})
-			],
+				})
+			],
 		},
 	}
-});
`,20))])}const c=t(p,[["render",D]]);export{y as __pageData,c as default}; +});
`,20))])}const c=t(k,[["render",p]]);export{y as __pageData,c as default}; diff --git a/docs/assets/reference_dev-tools_index.md.A4Hi_hWd.js b/docs/assets/reference_dev-tools_index.md.3cUMcTOe.js similarity index 85% rename from docs/assets/reference_dev-tools_index.md.A4Hi_hWd.js rename to docs/assets/reference_dev-tools_index.md.3cUMcTOe.js index da1997c7..2ba60b71 100644 --- a/docs/assets/reference_dev-tools_index.md.A4Hi_hWd.js +++ b/docs/assets/reference_dev-tools_index.md.3cUMcTOe.js @@ -1,3 +1,3 @@ -import{_ as a,c as t,a1 as o,o as l}from"./chunks/framework.S1oRGgk6.js";const m=JSON.parse('{"title":"@prozilla-os/dev-tools","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/dev-tools | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/dev-tools | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/dev-tools/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/dev-tools/index.md","filePath":"reference/dev-tools/index.md"}'),s={name:"reference/dev-tools/index.md"};function i(r,e,n,p,d,h){return l(),t("div",null,e[0]||(e[0]=[o(`

@prozilla-os/dev-tools

About

@prozilla-os/dev-tools is a library of tools for the development of ProzillaOS packages.

Installation

sh
npm install @prozilla-os/dev-tools
+import{_ as a,c as t,a3 as o,o as l}from"./chunks/framework.BAnOA2-A.js";const m=JSON.parse('{"title":"@prozilla-os/dev-tools","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/dev-tools | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/dev-tools | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/dev-tools/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/dev-tools/index.md","filePath":"reference/dev-tools/index.md"}'),s={name:"reference/dev-tools/index.md"};function i(r,e,n,p,d,c){return l(),t("div",null,e[0]||(e[0]=[o(`

@prozilla-os/dev-tools

About

@prozilla-os/dev-tools is a library of tools for the development of ProzillaOS packages.

Installation

sh
npm install @prozilla-os/dev-tools
 yarn add @prozilla-os/dev-tools
 pnpm add @prozilla-os/dev-tools
`,7)]))}const k=a(s,[["render",i]]);export{m as __pageData,k as default}; diff --git a/docs/assets/reference_dev-tools_index.md.A4Hi_hWd.lean.js b/docs/assets/reference_dev-tools_index.md.3cUMcTOe.lean.js similarity index 85% rename from docs/assets/reference_dev-tools_index.md.A4Hi_hWd.lean.js rename to docs/assets/reference_dev-tools_index.md.3cUMcTOe.lean.js index da1997c7..2ba60b71 100644 --- a/docs/assets/reference_dev-tools_index.md.A4Hi_hWd.lean.js +++ b/docs/assets/reference_dev-tools_index.md.3cUMcTOe.lean.js @@ -1,3 +1,3 @@ -import{_ as a,c as t,a1 as o,o as l}from"./chunks/framework.S1oRGgk6.js";const m=JSON.parse('{"title":"@prozilla-os/dev-tools","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/dev-tools | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/dev-tools | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/dev-tools/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/dev-tools/index.md","filePath":"reference/dev-tools/index.md"}'),s={name:"reference/dev-tools/index.md"};function i(r,e,n,p,d,h){return l(),t("div",null,e[0]||(e[0]=[o(`

@prozilla-os/dev-tools

About

@prozilla-os/dev-tools is a library of tools for the development of ProzillaOS packages.

Installation

sh
npm install @prozilla-os/dev-tools
+import{_ as a,c as t,a3 as o,o as l}from"./chunks/framework.BAnOA2-A.js";const m=JSON.parse('{"title":"@prozilla-os/dev-tools","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/dev-tools | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/dev-tools | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/dev-tools/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/dev-tools/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/dev-tools/index.md","filePath":"reference/dev-tools/index.md"}'),s={name:"reference/dev-tools/index.md"};function i(r,e,n,p,d,c){return l(),t("div",null,e[0]||(e[0]=[o(`

@prozilla-os/dev-tools

About

@prozilla-os/dev-tools is a library of tools for the development of ProzillaOS packages.

Installation

sh
npm install @prozilla-os/dev-tools
 yarn add @prozilla-os/dev-tools
 pnpm add @prozilla-os/dev-tools
`,7)]))}const k=a(s,[["render",i]]);export{m as __pageData,k as default}; diff --git a/docs/assets/reference_glossary.md.CvYcZi7A.js b/docs/assets/reference_glossary.md.CBMwCpRy.js similarity index 98% rename from docs/assets/reference_glossary.md.CvYcZi7A.js rename to docs/assets/reference_glossary.md.CBMwCpRy.js index 8999d91f..8280d473 100644 --- a/docs/assets/reference_glossary.md.CvYcZi7A.js +++ b/docs/assets/reference_glossary.md.CBMwCpRy.js @@ -1 +1 @@ -import{_ as e,c as t,a1 as o,o as i}from"./chunks/framework.S1oRGgk6.js";const u=JSON.parse('{"title":"Glossary","description":"","frontmatter":{"outline":2,"head":[["meta",{"name":"og:title","content":"Glossary | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Glossary | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/glossary"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/glossary"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/glossary"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/glossary.md","filePath":"reference/glossary.md"}'),n={name:"reference/glossary.md"};function s(r,a,l,c,p,h){return i(),t("div",null,a[0]||(a[0]=[o('

Glossary

Table of Contents

Actions

A React component used to group and display actions together. This is used in the context menu for example, where each option is a separate action. It can take in a certain style and be passed to a modal, it also supports shortcuts and icons.

Application (app)

To the user, applications (often shortened to apps) are processes that open a window when ran. The window allows the user to view and interact with the app. To developers, apps instances of the App class with a reference to a React component.

Categorization

Applications are sorted into these different categories:

  • Primary applications - The main applications that are a crucial part of the ProzillaOS system.
  • Secondary applications - Other applications that are part of the main repository of ProzillaOS.
  • External applications - All other applications.

Installation

To install an application, you simply have to add it to the apps array in your AppsConfig. There is currently no way for users to install apps via the website. There is currently also no support for applications that are not React components.

Modals are modular components that can be instantiated by other components. This feature is mainly used for context menus that are instantiated by windows.

Modals prominently take a position and a callback function as input. When the modal is closed, the callback function is called with optional arguments that usually include whatever the user entered as input while the modal was active. E.g.: A confirmation dialog is usually instantiated at the center of the screen and returns "yes" or "no" to the callback function, depending on which button the user clicked.

Even though modals are very similar to windows, they are also very different. You can look at modals as mini sub-windows that each have their own styling, as opposed to windows that all have a header with a title and some buttons.

Package

A package is a subset of the ProzillaOS ecosystem. Each package constains unique functionality or a ProzillaOS application. Packages can be installed via npm.

Settings

Each group of settings is controlled by a separate xml file. The virtual directory for these files is ~/.config.

Do not confuse settings with configs. Settings are controlled by the user, while configs define the overall behaviour of ProzillaOS and are defined by the developer.

Storage

ProzillaOS makes use of the local storage to store persistent data. The data is loaded by the virtual root during the initialization process. On the first run, the default data is loaded.

The data is converted from class instances to a JSON object and then to a string by the virtual root before it is stored in the local storage. To load data from the local storage, an inverse process is used.

Taskbar

The taskbar serves as a hub for access to various other functionalites, mainly applications. It's very similar to Window's taskbar.

Segments

The taskbar can be split up into 3 main segments:

  • Menus - This includes the home menu, where you can find quick access and a list of applications and the search menu, where you can search for applications by name.
  • App list - This is a list of pinned and active applications.
  • Indicators - This is a group of indicators that are used to display information, like battery power, network connection and volume.

Virtual Drive

The virtual drive is a virtual file and directory system. The root directory is a virtual folder and the access point for all interactions with the virtual drive.

Windows

The windows components are used to view and interact with running applications. Each app opens a window when ran.

',33)]))}const m=e(n,[["render",s]]);export{u as __pageData,m as default}; +import{_ as e,c as t,a3 as o,o as i}from"./chunks/framework.BAnOA2-A.js";const u=JSON.parse('{"title":"Glossary","description":"","frontmatter":{"outline":2,"head":[["meta",{"name":"og:title","content":"Glossary | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Glossary | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/glossary"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/glossary"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/glossary"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/glossary.md","filePath":"reference/glossary.md"}'),n={name:"reference/glossary.md"};function s(r,a,l,c,p,h){return i(),t("div",null,a[0]||(a[0]=[o('

Glossary

Table of Contents

Actions

A React component used to group and display actions together. This is used in the context menu for example, where each option is a separate action. It can take in a certain style and be passed to a modal, it also supports shortcuts and icons.

Application (app)

To the user, applications (often shortened to apps) are processes that open a window when ran. The window allows the user to view and interact with the app. To developers, apps instances of the App class with a reference to a React component.

Categorization

Applications are sorted into these different categories:

  • Primary applications - The main applications that are a crucial part of the ProzillaOS system.
  • Secondary applications - Other applications that are part of the main repository of ProzillaOS.
  • External applications - All other applications.

Installation

To install an application, you simply have to add it to the apps array in your AppsConfig. There is currently no way for users to install apps via the website. There is currently also no support for applications that are not React components.

Modals are modular components that can be instantiated by other components. This feature is mainly used for context menus that are instantiated by windows.

Modals prominently take a position and a callback function as input. When the modal is closed, the callback function is called with optional arguments that usually include whatever the user entered as input while the modal was active. E.g.: A confirmation dialog is usually instantiated at the center of the screen and returns "yes" or "no" to the callback function, depending on which button the user clicked.

Even though modals are very similar to windows, they are also very different. You can look at modals as mini sub-windows that each have their own styling, as opposed to windows that all have a header with a title and some buttons.

Package

A package is a subset of the ProzillaOS ecosystem. Each package constains unique functionality or a ProzillaOS application. Packages can be installed via npm.

Settings

Each group of settings is controlled by a separate xml file. The virtual directory for these files is ~/.config.

Do not confuse settings with configs. Settings are controlled by the user, while configs define the overall behaviour of ProzillaOS and are defined by the developer.

Storage

ProzillaOS makes use of the local storage to store persistent data. The data is loaded by the virtual root during the initialization process. On the first run, the default data is loaded.

The data is converted from class instances to a JSON object and then to a string by the virtual root before it is stored in the local storage. To load data from the local storage, an inverse process is used.

Taskbar

The taskbar serves as a hub for access to various other functionalites, mainly applications. It's very similar to Window's taskbar.

Segments

The taskbar can be split up into 3 main segments:

  • Menus - This includes the home menu, where you can find quick access and a list of applications and the search menu, where you can search for applications by name.
  • App list - This is a list of pinned and active applications.
  • Indicators - This is a group of indicators that are used to display information, like battery power, network connection and volume.

Virtual Drive

The virtual drive is a virtual file and directory system. The root directory is a virtual folder and the access point for all interactions with the virtual drive.

Windows

The windows components are used to view and interact with running applications. Each app opens a window when ran.

',33)]))}const m=e(n,[["render",s]]);export{u as __pageData,m as default}; diff --git a/docs/assets/reference_glossary.md.CvYcZi7A.lean.js b/docs/assets/reference_glossary.md.CBMwCpRy.lean.js similarity index 98% rename from docs/assets/reference_glossary.md.CvYcZi7A.lean.js rename to docs/assets/reference_glossary.md.CBMwCpRy.lean.js index 8999d91f..8280d473 100644 --- a/docs/assets/reference_glossary.md.CvYcZi7A.lean.js +++ b/docs/assets/reference_glossary.md.CBMwCpRy.lean.js @@ -1 +1 @@ -import{_ as e,c as t,a1 as o,o as i}from"./chunks/framework.S1oRGgk6.js";const u=JSON.parse('{"title":"Glossary","description":"","frontmatter":{"outline":2,"head":[["meta",{"name":"og:title","content":"Glossary | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Glossary | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/glossary"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/glossary"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/glossary"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/glossary.md","filePath":"reference/glossary.md"}'),n={name:"reference/glossary.md"};function s(r,a,l,c,p,h){return i(),t("div",null,a[0]||(a[0]=[o('

Glossary

Table of Contents

Actions

A React component used to group and display actions together. This is used in the context menu for example, where each option is a separate action. It can take in a certain style and be passed to a modal, it also supports shortcuts and icons.

Application (app)

To the user, applications (often shortened to apps) are processes that open a window when ran. The window allows the user to view and interact with the app. To developers, apps instances of the App class with a reference to a React component.

Categorization

Applications are sorted into these different categories:

  • Primary applications - The main applications that are a crucial part of the ProzillaOS system.
  • Secondary applications - Other applications that are part of the main repository of ProzillaOS.
  • External applications - All other applications.

Installation

To install an application, you simply have to add it to the apps array in your AppsConfig. There is currently no way for users to install apps via the website. There is currently also no support for applications that are not React components.

Modals are modular components that can be instantiated by other components. This feature is mainly used for context menus that are instantiated by windows.

Modals prominently take a position and a callback function as input. When the modal is closed, the callback function is called with optional arguments that usually include whatever the user entered as input while the modal was active. E.g.: A confirmation dialog is usually instantiated at the center of the screen and returns "yes" or "no" to the callback function, depending on which button the user clicked.

Even though modals are very similar to windows, they are also very different. You can look at modals as mini sub-windows that each have their own styling, as opposed to windows that all have a header with a title and some buttons.

Package

A package is a subset of the ProzillaOS ecosystem. Each package constains unique functionality or a ProzillaOS application. Packages can be installed via npm.

Settings

Each group of settings is controlled by a separate xml file. The virtual directory for these files is ~/.config.

Do not confuse settings with configs. Settings are controlled by the user, while configs define the overall behaviour of ProzillaOS and are defined by the developer.

Storage

ProzillaOS makes use of the local storage to store persistent data. The data is loaded by the virtual root during the initialization process. On the first run, the default data is loaded.

The data is converted from class instances to a JSON object and then to a string by the virtual root before it is stored in the local storage. To load data from the local storage, an inverse process is used.

Taskbar

The taskbar serves as a hub for access to various other functionalites, mainly applications. It's very similar to Window's taskbar.

Segments

The taskbar can be split up into 3 main segments:

  • Menus - This includes the home menu, where you can find quick access and a list of applications and the search menu, where you can search for applications by name.
  • App list - This is a list of pinned and active applications.
  • Indicators - This is a group of indicators that are used to display information, like battery power, network connection and volume.

Virtual Drive

The virtual drive is a virtual file and directory system. The root directory is a virtual folder and the access point for all interactions with the virtual drive.

Windows

The windows components are used to view and interact with running applications. Each app opens a window when ran.

',33)]))}const m=e(n,[["render",s]]);export{u as __pageData,m as default}; +import{_ as e,c as t,a3 as o,o as i}from"./chunks/framework.BAnOA2-A.js";const u=JSON.parse('{"title":"Glossary","description":"","frontmatter":{"outline":2,"head":[["meta",{"name":"og:title","content":"Glossary | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Glossary | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/glossary"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/glossary"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/glossary"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/glossary.md","filePath":"reference/glossary.md"}'),n={name:"reference/glossary.md"};function s(r,a,l,c,p,h){return i(),t("div",null,a[0]||(a[0]=[o('

Glossary

Table of Contents

Actions

A React component used to group and display actions together. This is used in the context menu for example, where each option is a separate action. It can take in a certain style and be passed to a modal, it also supports shortcuts and icons.

Application (app)

To the user, applications (often shortened to apps) are processes that open a window when ran. The window allows the user to view and interact with the app. To developers, apps instances of the App class with a reference to a React component.

Categorization

Applications are sorted into these different categories:

  • Primary applications - The main applications that are a crucial part of the ProzillaOS system.
  • Secondary applications - Other applications that are part of the main repository of ProzillaOS.
  • External applications - All other applications.

Installation

To install an application, you simply have to add it to the apps array in your AppsConfig. There is currently no way for users to install apps via the website. There is currently also no support for applications that are not React components.

Modals are modular components that can be instantiated by other components. This feature is mainly used for context menus that are instantiated by windows.

Modals prominently take a position and a callback function as input. When the modal is closed, the callback function is called with optional arguments that usually include whatever the user entered as input while the modal was active. E.g.: A confirmation dialog is usually instantiated at the center of the screen and returns "yes" or "no" to the callback function, depending on which button the user clicked.

Even though modals are very similar to windows, they are also very different. You can look at modals as mini sub-windows that each have their own styling, as opposed to windows that all have a header with a title and some buttons.

Package

A package is a subset of the ProzillaOS ecosystem. Each package constains unique functionality or a ProzillaOS application. Packages can be installed via npm.

Settings

Each group of settings is controlled by a separate xml file. The virtual directory for these files is ~/.config.

Do not confuse settings with configs. Settings are controlled by the user, while configs define the overall behaviour of ProzillaOS and are defined by the developer.

Storage

ProzillaOS makes use of the local storage to store persistent data. The data is loaded by the virtual root during the initialization process. On the first run, the default data is loaded.

The data is converted from class instances to a JSON object and then to a string by the virtual root before it is stored in the local storage. To load data from the local storage, an inverse process is used.

Taskbar

The taskbar serves as a hub for access to various other functionalites, mainly applications. It's very similar to Window's taskbar.

Segments

The taskbar can be split up into 3 main segments:

  • Menus - This includes the home menu, where you can find quick access and a list of applications and the search menu, where you can search for applications by name.
  • App list - This is a list of pinned and active applications.
  • Indicators - This is a group of indicators that are used to display information, like battery power, network connection and volume.

Virtual Drive

The virtual drive is a virtual file and directory system. The root directory is a virtual folder and the access point for all interactions with the virtual drive.

Windows

The windows components are used to view and interact with running applications. Each app opens a window when ran.

',33)]))}const m=e(n,[["render",s]]);export{u as __pageData,m as default}; diff --git a/docs/assets/reference_packages.md.CcjASakp.js b/docs/assets/reference_packages.md.iP6hdyFQ.js similarity index 97% rename from docs/assets/reference_packages.md.CcjASakp.js rename to docs/assets/reference_packages.md.iP6hdyFQ.js index 2ee9d17b..fa8a34d6 100644 --- a/docs/assets/reference_packages.md.CcjASakp.js +++ b/docs/assets/reference_packages.md.iP6hdyFQ.js @@ -1 +1 @@ -import{_ as a,c as o,a1 as l,o as i}from"./chunks/framework.S1oRGgk6.js";const m=JSON.parse('{"title":"Packages","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Packages | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Packages | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/packages"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/packages"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/packages"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/packages.md","filePath":"reference/packages.md"}'),r={name:"reference/packages.md"};function t(s,e,n,p,c,d){return i(),o("div",null,e[0]||(e[0]=[l('

Packages

This is an overview of all packages related to ProzillaOS. Each package is published to the npm registry.

Bundle

This bundle lets you quickly get started with ProzillaOS without the hassle of installing all packages individually.

  • prozilla-os: A bundle containing @prozilla-os/core and all primary applications of ProzillaOS

Libraries

These libraries are different modules of ProzillaOS that can be installed separately or via the bundle package prozilla-os.

Applications

Primary applications

These applications are included in the prozilla-os bundle.

Secondary applications

External applications

These applications are related to ProzillaOS and used in the demo, but their source code is hosted in a separate repository on GitHub.

',17)]))}const u=a(r,[["render",t]]);export{m as __pageData,u as default}; +import{_ as a,c as o,a3 as l,o as i}from"./chunks/framework.BAnOA2-A.js";const m=JSON.parse('{"title":"Packages","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Packages | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Packages | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/packages"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/packages"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/packages"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/packages.md","filePath":"reference/packages.md"}'),r={name:"reference/packages.md"};function t(s,e,n,p,c,d){return i(),o("div",null,e[0]||(e[0]=[l('

Packages

This is an overview of all packages related to ProzillaOS. Each package is published to the npm registry.

Bundle

This bundle lets you quickly get started with ProzillaOS without the hassle of installing all packages individually.

  • prozilla-os: A bundle containing @prozilla-os/core and all primary applications of ProzillaOS

Libraries

These libraries are different modules of ProzillaOS that can be installed separately or via the bundle package prozilla-os.

Applications

Primary applications

These applications are included in the prozilla-os bundle.

Secondary applications

External applications

These applications are related to ProzillaOS and used in the demo, but their source code is hosted in a separate repository on GitHub.

',17)]))}const u=a(r,[["render",t]]);export{m as __pageData,u as default}; diff --git a/docs/assets/reference_packages.md.CcjASakp.lean.js b/docs/assets/reference_packages.md.iP6hdyFQ.lean.js similarity index 97% rename from docs/assets/reference_packages.md.CcjASakp.lean.js rename to docs/assets/reference_packages.md.iP6hdyFQ.lean.js index 2ee9d17b..fa8a34d6 100644 --- a/docs/assets/reference_packages.md.CcjASakp.lean.js +++ b/docs/assets/reference_packages.md.iP6hdyFQ.lean.js @@ -1 +1 @@ -import{_ as a,c as o,a1 as l,o as i}from"./chunks/framework.S1oRGgk6.js";const m=JSON.parse('{"title":"Packages","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Packages | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Packages | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/packages"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/packages"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/packages"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/packages.md","filePath":"reference/packages.md"}'),r={name:"reference/packages.md"};function t(s,e,n,p,c,d){return i(),o("div",null,e[0]||(e[0]=[l('

Packages

This is an overview of all packages related to ProzillaOS. Each package is published to the npm registry.

Bundle

This bundle lets you quickly get started with ProzillaOS without the hassle of installing all packages individually.

  • prozilla-os: A bundle containing @prozilla-os/core and all primary applications of ProzillaOS

Libraries

These libraries are different modules of ProzillaOS that can be installed separately or via the bundle package prozilla-os.

Applications

Primary applications

These applications are included in the prozilla-os bundle.

Secondary applications

External applications

These applications are related to ProzillaOS and used in the demo, but their source code is hosted in a separate repository on GitHub.

',17)]))}const u=a(r,[["render",t]]);export{m as __pageData,u as default}; +import{_ as a,c as o,a3 as l,o as i}from"./chunks/framework.BAnOA2-A.js";const m=JSON.parse('{"title":"Packages","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"Packages | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Packages | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/packages"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/packages"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/packages"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/packages.md","filePath":"reference/packages.md"}'),r={name:"reference/packages.md"};function t(s,e,n,p,c,d){return i(),o("div",null,e[0]||(e[0]=[l('

Packages

This is an overview of all packages related to ProzillaOS. Each package is published to the npm registry.

Bundle

This bundle lets you quickly get started with ProzillaOS without the hassle of installing all packages individually.

  • prozilla-os: A bundle containing @prozilla-os/core and all primary applications of ProzillaOS

Libraries

These libraries are different modules of ProzillaOS that can be installed separately or via the bundle package prozilla-os.

Applications

Primary applications

These applications are included in the prozilla-os bundle.

Secondary applications

External applications

These applications are related to ProzillaOS and used in the demo, but their source code is hosted in a separate repository on GitHub.

',17)]))}const u=a(r,[["render",t]]);export{m as __pageData,u as default}; diff --git a/docs/assets/reference_prozilla-os_index.md.CIQzNWB3.js b/docs/assets/reference_prozilla-os_index.md.CyccZMbU.js similarity index 74% rename from docs/assets/reference_prozilla-os_index.md.CIQzNWB3.js rename to docs/assets/reference_prozilla-os_index.md.CyccZMbU.js index 95d032ee..cf6a3076 100644 --- a/docs/assets/reference_prozilla-os_index.md.CIQzNWB3.js +++ b/docs/assets/reference_prozilla-os_index.md.CyccZMbU.js @@ -1,6 +1,6 @@ -import{_ as s,c as a,a1 as l,o as n}from"./chunks/framework.S1oRGgk6.js";const d=JSON.parse('{"title":"prozilla-os","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"prozilla-os | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"prozilla-os | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/prozilla-os/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/prozilla-os/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/prozilla-os/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/prozilla-os/index.md","filePath":"reference/prozilla-os/index.md"}'),t={name:"reference/prozilla-os/index.md"};function h(k,i,e,p,F,r){return n(),a("div",null,i[0]||(i[0]=[l(`

prozilla-os

About

prozilla-os is a React Vite component library written in TypeScript for building web-based operating systems, made by Prozilla. This package combines multiple other packages for easy access to different ProzillaOS features. You can also download these packages separately instead.

Live demo: os.prozilla.dev - (source)

Installation

sh
npm install prozilla-os
+import{_ as s,c as a,a3 as l,o as n}from"./chunks/framework.BAnOA2-A.js";const d=JSON.parse('{"title":"prozilla-os","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"prozilla-os | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"prozilla-os | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/prozilla-os/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/prozilla-os/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/prozilla-os/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/prozilla-os/index.md","filePath":"reference/prozilla-os/index.md"}'),t={name:"reference/prozilla-os/index.md"};function h(k,i,e,F,p,r){return n(),a("div",null,i[0]||(i[0]=[l(`

prozilla-os

About

prozilla-os is a React Vite component library written in TypeScript for building web-based operating systems, made by Prozilla. This package combines multiple other packages for easy access to different ProzillaOS features. You can also download these packages separately instead.

Live demo: os.prozilla.dev - (source)

Installation

sh
npm install prozilla-os
 yarn add prozilla-os
-pnpm add prozilla-os

Packages

prozilla-os combines the following packages into one:

Usage

For more information about the in-depth usage of each package, check out the links in the section above.

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "prozilla-os";
+pnpm add prozilla-os

Packages

prozilla-os combines the following packages into one:

Usage

For more information about the in-depth usage of each package, check out the links in the section above.

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "prozilla-os";
 
 function App() {
   return (
@@ -11,19 +11,19 @@ import{_ as s,c as a,a1 as l,o as n}from"./chunks/framework.S1oRGgk6.js";const d
       <Desktop/>
     </ProzillaOS>
   );
-}

Configuration

tsx
interface ProzillaOSProps {
+}

Configuration

tsx
interface ProzillaOSProps {
 
   systemName: string,
 
   tagLine: string,
 
-  skin: new Skin({
+  skin: new Skin({
 
     appIcons: Record<number, string> | undefined,
 
  appNames: Record<number, string> | undefined,
 
- wallpapers: string[],
+ wallpapers: string[],
 
  defaultWallpaper: string,
 
@@ -43,91 +43,91 @@ import{_ as s,c as a,a1 as l,o as n}from"./chunks/framework.S1oRGgk6.js";const d
 
  loadStyleSheet: () => void | undefined
 
-  })
+  })
 
   config: {
-    apps: new AppsConfig({
+    apps: new AppsConfig({
 
-      apps: App[]
+      apps: App[]
 
-    }),
-    desktop: new DesktopConfig({
+    }),
+    desktop: new DesktopConfig({
 
-      /**
-       * @default 1
-       */
+      /**
+       * @default 1
+       */
       defaultIconSize: 0 | 1 | 2,
 
-      /**
-       * 0: vertical, 1: horizontal
-       * @default 0
-       * */
+      /**
+       * 0: vertical, 1: horizontal
+       * @default 0
+       * */
       defaultIconDirection: 0 | 1
 
-    }),
- misc: new MiscConfig({
+    }),
+ misc: new MiscConfig({
 
-      /**
-    * @default 250
-    */
+      /**
+    * @default 250
+    */
    doubleClickDelay: number
 
- })
-    modals: new ModalsConfig({
+ })
+    modals: new ModalsConfig({
 
-      /**
-       * Default size of a dialog box
-       * @default new Vector2(400, 200)
-       */
+      /**
+       * Default size of a dialog box
+       * @default new Vector2(400, 200)
+       */
       defaultDialogSize: Vector2,
 
-      /**
-       * Default size of a file selector
-       * @default new Vector2(700, 400)
-       */
+      /**
+       * Default size of a file selector
+       * @default new Vector2(700, 400)
+       */
       defaultFileSelectorSize: Vector2
 
-    }),
-    taskbar: new TaskbarConfig({
+    }),
+    taskbar: new TaskbarConfig({
 
-      /**
-       * Height of the taskbar in CSS pixels
-       * @default 3 * 16
-       */
+      /**
+       * Height of the taskbar in CSS pixels
+       * @default 3 * 16
+       */
       height: number
 
-    }),
-    tracking: new TrackingConfig({
+    }),
+    tracking: new TrackingConfig({
 
-      /**
-       * Enable tracking
-       * @default true
-      */
+      /**
+       * Enable tracking
+       * @default true
+      */
       enabled: boolean,
 
-      /** Google Analytics measurement ID */
+      /** Google Analytics measurement ID */
       GAMeasurementId: string
 
-    }),
-    windows: new WindowsConfig({
+    }),
+    windows: new WindowsConfig({
 
-      /**
-       * @default 32
-       */
+      /**
+       * @default 32
+       */
       screenMargin: number,
 
-      /**
-       * @default "-"
-       */
+      /**
+       * @default "-"
+       */
       titleSeparator: string,
 
-      /**
-       * If the user's screen is smaller than these values, windows will always be maximized
-       * @default new Vector2(350, 350)
-       */
+      /**
+       * If the user's screen is smaller than these values, windows will always be maximized
+       * @default new Vector2(350, 350)
+       */
       minScreenSize: Vector2
 
-    })
+    })
   }
 
-}
`,18)]))}const g=s(t,[["render",h]]);export{d as __pageData,g as default}; +}
`,18)]))}const o=s(t,[["render",h]]);export{d as __pageData,o as default}; diff --git a/docs/assets/reference_prozilla-os_index.md.CIQzNWB3.lean.js b/docs/assets/reference_prozilla-os_index.md.CyccZMbU.lean.js similarity index 74% rename from docs/assets/reference_prozilla-os_index.md.CIQzNWB3.lean.js rename to docs/assets/reference_prozilla-os_index.md.CyccZMbU.lean.js index 95d032ee..cf6a3076 100644 --- a/docs/assets/reference_prozilla-os_index.md.CIQzNWB3.lean.js +++ b/docs/assets/reference_prozilla-os_index.md.CyccZMbU.lean.js @@ -1,6 +1,6 @@ -import{_ as s,c as a,a1 as l,o as n}from"./chunks/framework.S1oRGgk6.js";const d=JSON.parse('{"title":"prozilla-os","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"prozilla-os | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"prozilla-os | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/prozilla-os/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/prozilla-os/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/prozilla-os/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/prozilla-os/index.md","filePath":"reference/prozilla-os/index.md"}'),t={name:"reference/prozilla-os/index.md"};function h(k,i,e,p,F,r){return n(),a("div",null,i[0]||(i[0]=[l(`

prozilla-os

About

prozilla-os is a React Vite component library written in TypeScript for building web-based operating systems, made by Prozilla. This package combines multiple other packages for easy access to different ProzillaOS features. You can also download these packages separately instead.

Live demo: os.prozilla.dev - (source)

Installation

sh
npm install prozilla-os
+import{_ as s,c as a,a3 as l,o as n}from"./chunks/framework.BAnOA2-A.js";const d=JSON.parse('{"title":"prozilla-os","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"prozilla-os | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"prozilla-os | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/prozilla-os/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/prozilla-os/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/prozilla-os/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/prozilla-os/index.md","filePath":"reference/prozilla-os/index.md"}'),t={name:"reference/prozilla-os/index.md"};function h(k,i,e,F,p,r){return n(),a("div",null,i[0]||(i[0]=[l(`

prozilla-os

About

prozilla-os is a React Vite component library written in TypeScript for building web-based operating systems, made by Prozilla. This package combines multiple other packages for easy access to different ProzillaOS features. You can also download these packages separately instead.

Live demo: os.prozilla.dev - (source)

Installation

sh
npm install prozilla-os
 yarn add prozilla-os
-pnpm add prozilla-os

Packages

prozilla-os combines the following packages into one:

Usage

For more information about the in-depth usage of each package, check out the links in the section above.

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "prozilla-os";
+pnpm add prozilla-os

Packages

prozilla-os combines the following packages into one:

Usage

For more information about the in-depth usage of each package, check out the links in the section above.

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "prozilla-os";
 
 function App() {
   return (
@@ -11,19 +11,19 @@ import{_ as s,c as a,a1 as l,o as n}from"./chunks/framework.S1oRGgk6.js";const d
       <Desktop/>
     </ProzillaOS>
   );
-}

Configuration

tsx
interface ProzillaOSProps {
+}

Configuration

tsx
interface ProzillaOSProps {
 
   systemName: string,
 
   tagLine: string,
 
-  skin: new Skin({
+  skin: new Skin({
 
     appIcons: Record<number, string> | undefined,
 
  appNames: Record<number, string> | undefined,
 
- wallpapers: string[],
+ wallpapers: string[],
 
  defaultWallpaper: string,
 
@@ -43,91 +43,91 @@ import{_ as s,c as a,a1 as l,o as n}from"./chunks/framework.S1oRGgk6.js";const d
 
  loadStyleSheet: () => void | undefined
 
-  })
+  })
 
   config: {
-    apps: new AppsConfig({
+    apps: new AppsConfig({
 
-      apps: App[]
+      apps: App[]
 
-    }),
-    desktop: new DesktopConfig({
+    }),
+    desktop: new DesktopConfig({
 
-      /**
-       * @default 1
-       */
+      /**
+       * @default 1
+       */
       defaultIconSize: 0 | 1 | 2,
 
-      /**
-       * 0: vertical, 1: horizontal
-       * @default 0
-       * */
+      /**
+       * 0: vertical, 1: horizontal
+       * @default 0
+       * */
       defaultIconDirection: 0 | 1
 
-    }),
- misc: new MiscConfig({
+    }),
+ misc: new MiscConfig({
 
-      /**
-    * @default 250
-    */
+      /**
+    * @default 250
+    */
    doubleClickDelay: number
 
- })
-    modals: new ModalsConfig({
+ })
+    modals: new ModalsConfig({
 
-      /**
-       * Default size of a dialog box
-       * @default new Vector2(400, 200)
-       */
+      /**
+       * Default size of a dialog box
+       * @default new Vector2(400, 200)
+       */
       defaultDialogSize: Vector2,
 
-      /**
-       * Default size of a file selector
-       * @default new Vector2(700, 400)
-       */
+      /**
+       * Default size of a file selector
+       * @default new Vector2(700, 400)
+       */
       defaultFileSelectorSize: Vector2
 
-    }),
-    taskbar: new TaskbarConfig({
+    }),
+    taskbar: new TaskbarConfig({
 
-      /**
-       * Height of the taskbar in CSS pixels
-       * @default 3 * 16
-       */
+      /**
+       * Height of the taskbar in CSS pixels
+       * @default 3 * 16
+       */
       height: number
 
-    }),
-    tracking: new TrackingConfig({
+    }),
+    tracking: new TrackingConfig({
 
-      /**
-       * Enable tracking
-       * @default true
-      */
+      /**
+       * Enable tracking
+       * @default true
+      */
       enabled: boolean,
 
-      /** Google Analytics measurement ID */
+      /** Google Analytics measurement ID */
       GAMeasurementId: string
 
-    }),
-    windows: new WindowsConfig({
+    }),
+    windows: new WindowsConfig({
 
-      /**
-       * @default 32
-       */
+      /**
+       * @default 32
+       */
       screenMargin: number,
 
-      /**
-       * @default "-"
-       */
+      /**
+       * @default "-"
+       */
       titleSeparator: string,
 
-      /**
-       * If the user's screen is smaller than these values, windows will always be maximized
-       * @default new Vector2(350, 350)
-       */
+      /**
+       * If the user's screen is smaller than these values, windows will always be maximized
+       * @default new Vector2(350, 350)
+       */
       minScreenSize: Vector2
 
-    })
+    })
   }
 
-}
`,18)]))}const g=s(t,[["render",h]]);export{d as __pageData,g as default}; +}
`,18)]))}const o=s(t,[["render",h]]);export{d as __pageData,o as default}; diff --git a/docs/assets/reference_shared_classes_event-emitter.md.kZRDtPm5.js b/docs/assets/reference_shared_classes_event-emitter.md.kZRDtPm5.js new file mode 100644 index 00000000..c3b4d4c6 --- /dev/null +++ b/docs/assets/reference_shared_classes_event-emitter.md.kZRDtPm5.js @@ -0,0 +1,34 @@ +import{_ as e,c as n,j as s,a,t as l,a3 as h,o as F}from"./chunks/framework.BAnOA2-A.js";const g=JSON.parse('{"title":"Class EventEmitter","description":"An abstract class for creating event emitters","frontmatter":{"outline":3,"description":"An abstract class for creating event emitters","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Class EventEmitter | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class EventEmitter | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"An abstract class for creating event emitters"}],["meta",{"name":"twitter:description","content":"An abstract class for creating event emitters"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/classes/event-emitter"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/classes/event-emitter"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/classes/event-emitter"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/classes/event-emitter.md","filePath":"reference/shared/classes/event-emitter.md"}'),p={name:"reference/shared/classes/event-emitter.md"};function k(t,i,r,D,d,o){return F(),n("div",null,[i[0]||(i[0]=s("h1",{id:"class-eventemitter",tabindex:"-1"},[a("Class "),s("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/shared/src/features/_utils/event.utils.ts",target:"_blank",rel:"noreferrer"},[s("code",null,"EventEmitter")]),a(),s("a",{class:"header-anchor",href:"#class-eventemitter","aria-label":'Permalink to "Class [`EventEmitter`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/shared/src/features/_utils/event.utils.ts)"'},"​")],-1)),s("p",null,l(t.$frontmatter.description),1),i[1]||(i[1]=h(`

Type parameters

<EventMap extends EventNamesMap>

ts
type EventNamesMap = Record<string, string>;

Properties

EVENT_NAMES

A map of valid event names

  • Type: EventNamesMap
  • Default: {}

Methods

on(eventName, callback)

Add event listener for an event

Type parameters

  • <Key extends keyof EventMap>

Parameters

  • eventName
    • Type: Key
  • callback
    • Type: (data: unknown) => void

off(eventName, callback)

Remove event listener for an event

Type parameters

  • <Key extends keyof EventMap>

Parameters

  • eventName
    • Type: Key
  • callback
    • Type: (data: unknown) => void

emit(eventName, data)

Dispatch event

Type parameters

  • <Key extends keyof EventMap>

Parameters

  • eventName
    • Type: Key
  • data
    • Type: unknown | undefined

Example

Here is a class called Stream that sends events when the stream starts, stops and when the stream receives input. Any event listener listening to the "new" event, will receive the input from the stream.

ts
import { EventEmitter } from "@prozilla-os/shared";
+
+const StreamEvents = {
+	new: "new",
+	start: "start",
+	stop: "stop",
+} as const;
+
+export class Stream extends EventEmitter<typeof StreamEvents> {
+	static EVENT_NAMES = StreamEvents;
+
+	enabled: boolean = false;
+
+	start() {
+		if (this.enabled)
+			return;
+
+		this.enabled = true;
+		this.emit("start");
+	}
+
+	stop() {
+		if (!this.enabled)
+			return;
+
+		this.enabled = false;
+		this.emit("stop");
+	}
+
+	send(text: string) {
+		if (this.enabled)
+			this.emit("new", text);
+	}
+}
`,29))])}const y=e(p,[["render",k]]);export{g as __pageData,y as default}; diff --git a/docs/assets/reference_shared_classes_event-emitter.md.kZRDtPm5.lean.js b/docs/assets/reference_shared_classes_event-emitter.md.kZRDtPm5.lean.js new file mode 100644 index 00000000..c3b4d4c6 --- /dev/null +++ b/docs/assets/reference_shared_classes_event-emitter.md.kZRDtPm5.lean.js @@ -0,0 +1,34 @@ +import{_ as e,c as n,j as s,a,t as l,a3 as h,o as F}from"./chunks/framework.BAnOA2-A.js";const g=JSON.parse('{"title":"Class EventEmitter","description":"An abstract class for creating event emitters","frontmatter":{"outline":3,"description":"An abstract class for creating event emitters","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Class EventEmitter | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class EventEmitter | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"An abstract class for creating event emitters"}],["meta",{"name":"twitter:description","content":"An abstract class for creating event emitters"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/classes/event-emitter"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/classes/event-emitter"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/classes/event-emitter"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/classes/event-emitter.md","filePath":"reference/shared/classes/event-emitter.md"}'),p={name:"reference/shared/classes/event-emitter.md"};function k(t,i,r,D,d,o){return F(),n("div",null,[i[0]||(i[0]=s("h1",{id:"class-eventemitter",tabindex:"-1"},[a("Class "),s("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/shared/src/features/_utils/event.utils.ts",target:"_blank",rel:"noreferrer"},[s("code",null,"EventEmitter")]),a(),s("a",{class:"header-anchor",href:"#class-eventemitter","aria-label":'Permalink to "Class [`EventEmitter`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/shared/src/features/_utils/event.utils.ts)"'},"​")],-1)),s("p",null,l(t.$frontmatter.description),1),i[1]||(i[1]=h(`

Type parameters

<EventMap extends EventNamesMap>

ts
type EventNamesMap = Record<string, string>;

Properties

EVENT_NAMES

A map of valid event names

  • Type: EventNamesMap
  • Default: {}

Methods

on(eventName, callback)

Add event listener for an event

Type parameters

  • <Key extends keyof EventMap>

Parameters

  • eventName
    • Type: Key
  • callback
    • Type: (data: unknown) => void

off(eventName, callback)

Remove event listener for an event

Type parameters

  • <Key extends keyof EventMap>

Parameters

  • eventName
    • Type: Key
  • callback
    • Type: (data: unknown) => void

emit(eventName, data)

Dispatch event

Type parameters

  • <Key extends keyof EventMap>

Parameters

  • eventName
    • Type: Key
  • data
    • Type: unknown | undefined

Example

Here is a class called Stream that sends events when the stream starts, stops and when the stream receives input. Any event listener listening to the "new" event, will receive the input from the stream.

ts
import { EventEmitter } from "@prozilla-os/shared";
+
+const StreamEvents = {
+	new: "new",
+	start: "start",
+	stop: "stop",
+} as const;
+
+export class Stream extends EventEmitter<typeof StreamEvents> {
+	static EVENT_NAMES = StreamEvents;
+
+	enabled: boolean = false;
+
+	start() {
+		if (this.enabled)
+			return;
+
+		this.enabled = true;
+		this.emit("start");
+	}
+
+	stop() {
+		if (!this.enabled)
+			return;
+
+		this.enabled = false;
+		this.emit("stop");
+	}
+
+	send(text: string) {
+		if (this.enabled)
+			this.emit("new", text);
+	}
+}
`,29))])}const y=e(p,[["render",k]]);export{g as __pageData,y as default}; diff --git a/docs/assets/reference_shared_constants_ansi.md.BXBDifD3.js b/docs/assets/reference_shared_constants_ansi.md.DGwISokz.js similarity index 86% rename from docs/assets/reference_shared_constants_ansi.md.BXBDifD3.js rename to docs/assets/reference_shared_constants_ansi.md.DGwISokz.js index 6c5a9015..568901b3 100644 --- a/docs/assets/reference_shared_constants_ansi.md.BXBDifD3.js +++ b/docs/assets/reference_shared_constants_ansi.md.DGwISokz.js @@ -1,6 +1,6 @@ -import{_ as t,c as n,j as i,a as e,t as l,a1 as r,o}from"./chunks/framework.S1oRGgk6.js";const D=JSON.parse('{"title":"ANSI constants","description":"ANSI codes for coloring and decorating ANSI text","frontmatter":{"outline":"deep","description":"ANSI codes for coloring and decorating ANSI text","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"ANSI constants | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"ANSI constants | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"ANSI codes for coloring and decorating ANSI text"}],["meta",{"name":"twitter:description","content":"ANSI codes for coloring and decorating ANSI text"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/constants/ansi"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/constants/ansi"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/constants/ansi"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/constants/ansi.md","filePath":"reference/shared/constants/ansi.md"}'),h={name:"reference/shared/constants/ansi.md"};function p(a,s,k,F,d,c){return o(),n("div",null,[s[0]||(s[0]=i("h1",{id:"ansi-constants",tabindex:"-1"},[e("ANSI constants "),i("a",{class:"header-anchor",href:"#ansi-constants","aria-label":'Permalink to "ANSI constants"'},"​")],-1)),i("p",null,l(a.$frontmatter.description),1),s[1]||(s[1]=r(`

ANSI

  • Type: Ansi
ts
interface Ansi {
-	fg: Record<number, string>; // Foreground colors
-	bg: Record<number, string>; // Background colors
+import{_ as t,c as n,j as i,a as e,t as l,a3 as r,o}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"ANSI constants","description":"ANSI codes for coloring and decorating ANSI text","frontmatter":{"outline":"deep","description":"ANSI codes for coloring and decorating ANSI text","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"ANSI constants | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"ANSI constants | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"ANSI codes for coloring and decorating ANSI text"}],["meta",{"name":"twitter:description","content":"ANSI codes for coloring and decorating ANSI text"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/constants/ansi"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/constants/ansi"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/constants/ansi"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/constants/ansi.md","filePath":"reference/shared/constants/ansi.md"}'),h={name:"reference/shared/constants/ansi.md"};function p(a,s,k,F,d,c){return o(),n("div",null,[s[0]||(s[0]=i("h1",{id:"ansi-constants",tabindex:"-1"},[e("ANSI constants "),i("a",{class:"header-anchor",href:"#ansi-constants","aria-label":'Permalink to "ANSI constants"'},"​")],-1)),i("p",null,l(a.$frontmatter.description),1),s[1]||(s[1]=r(`

ANSI

  • Type: Ansi
ts
interface Ansi {
+	fg: Record<number, string>; // Foreground colors
+	bg: Record<number, string>; // Background colors
 	decoration: Record<number, string>;
 	reset: string;
 };
`,4))])}const m=t(h,[["render",p]]);export{D as __pageData,m as default}; diff --git a/docs/assets/reference_shared_constants_ansi.md.BXBDifD3.lean.js b/docs/assets/reference_shared_constants_ansi.md.DGwISokz.lean.js similarity index 86% rename from docs/assets/reference_shared_constants_ansi.md.BXBDifD3.lean.js rename to docs/assets/reference_shared_constants_ansi.md.DGwISokz.lean.js index 6c5a9015..568901b3 100644 --- a/docs/assets/reference_shared_constants_ansi.md.BXBDifD3.lean.js +++ b/docs/assets/reference_shared_constants_ansi.md.DGwISokz.lean.js @@ -1,6 +1,6 @@ -import{_ as t,c as n,j as i,a as e,t as l,a1 as r,o}from"./chunks/framework.S1oRGgk6.js";const D=JSON.parse('{"title":"ANSI constants","description":"ANSI codes for coloring and decorating ANSI text","frontmatter":{"outline":"deep","description":"ANSI codes for coloring and decorating ANSI text","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"ANSI constants | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"ANSI constants | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"ANSI codes for coloring and decorating ANSI text"}],["meta",{"name":"twitter:description","content":"ANSI codes for coloring and decorating ANSI text"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/constants/ansi"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/constants/ansi"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/constants/ansi"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/constants/ansi.md","filePath":"reference/shared/constants/ansi.md"}'),h={name:"reference/shared/constants/ansi.md"};function p(a,s,k,F,d,c){return o(),n("div",null,[s[0]||(s[0]=i("h1",{id:"ansi-constants",tabindex:"-1"},[e("ANSI constants "),i("a",{class:"header-anchor",href:"#ansi-constants","aria-label":'Permalink to "ANSI constants"'},"​")],-1)),i("p",null,l(a.$frontmatter.description),1),s[1]||(s[1]=r(`

ANSI

  • Type: Ansi
ts
interface Ansi {
-	fg: Record<number, string>; // Foreground colors
-	bg: Record<number, string>; // Background colors
+import{_ as t,c as n,j as i,a as e,t as l,a3 as r,o}from"./chunks/framework.BAnOA2-A.js";const D=JSON.parse('{"title":"ANSI constants","description":"ANSI codes for coloring and decorating ANSI text","frontmatter":{"outline":"deep","description":"ANSI codes for coloring and decorating ANSI text","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"ANSI constants | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"ANSI constants | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"ANSI codes for coloring and decorating ANSI text"}],["meta",{"name":"twitter:description","content":"ANSI codes for coloring and decorating ANSI text"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/constants/ansi"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/constants/ansi"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/constants/ansi"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/constants/ansi.md","filePath":"reference/shared/constants/ansi.md"}'),h={name:"reference/shared/constants/ansi.md"};function p(a,s,k,F,d,c){return o(),n("div",null,[s[0]||(s[0]=i("h1",{id:"ansi-constants",tabindex:"-1"},[e("ANSI constants "),i("a",{class:"header-anchor",href:"#ansi-constants","aria-label":'Permalink to "ANSI constants"'},"​")],-1)),i("p",null,l(a.$frontmatter.description),1),s[1]||(s[1]=r(`

ANSI

  • Type: Ansi
ts
interface Ansi {
+	fg: Record<number, string>; // Foreground colors
+	bg: Record<number, string>; // Background colors
 	decoration: Record<number, string>;
 	reset: string;
 };
`,4))])}const m=t(h,[["render",p]]);export{D as __pageData,m as default}; diff --git a/docs/assets/reference_shared_functions_array.md.aBFTyLLx.js b/docs/assets/reference_shared_functions_array.md.Cnu8h0sw.js similarity index 97% rename from docs/assets/reference_shared_functions_array.md.aBFTyLLx.js rename to docs/assets/reference_shared_functions_array.md.Cnu8h0sw.js index e7870aa3..d8732e55 100644 --- a/docs/assets/reference_shared_functions_array.md.aBFTyLLx.js +++ b/docs/assets/reference_shared_functions_array.md.Cnu8h0sw.js @@ -1 +1 @@ -import{_ as t,c as o,j as a,a as n,t as s,a1 as l,o as i}from"./chunks/framework.S1oRGgk6.js";const f=JSON.parse('{"title":"Array functions","description":"Functions related to arrays","frontmatter":{"outline":2,"description":"Functions related to arrays","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Array functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Array functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to arrays"}],["meta",{"name":"twitter:description","content":"Functions related to arrays"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/array"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/array"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/array"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/array.md","filePath":"reference/shared/functions/array.md"}'),m={name:"reference/shared/functions/array.md"};function c(r,e,d,u,p,y){return i(),o("div",null,[e[0]||(e[0]=a("h1",{id:"array-functions",tabindex:"-1"},[n("Array functions "),a("a",{class:"header-anchor",href:"#array-functions","aria-label":'Permalink to "Array functions"'},"​")],-1)),a("p",null,s(r.$frontmatter.description),1),e[1]||(e[1]=l('

removeFromArray(item, array)

Remove an item from an array

Type parameters

  • <ItemType>

Parameters

  • item - Item to remove from the array
    • Type: ItemType
  • array
    • Type: ItemType[]

randomFromArray(array)

Get a random item from an array

Type parameters

  • <ItemType>

Parameters

  • array
    • Type: ItemType[]

Returns

  • Type: ItemType

removeDuplicatesFromArray(array)

Removes all duplicate items from an array and returns the array

Type parameters

  • <ItemType>

Parameters

  • array
    • Type: ItemType[]

Returns

  • Type: ItemType[]
',23))])}const g=t(m,[["render",c]]);export{f as __pageData,g as default}; +import{_ as t,c as o,j as a,a as n,t as s,a3 as l,o as i}from"./chunks/framework.BAnOA2-A.js";const f=JSON.parse('{"title":"Array functions","description":"Functions related to arrays","frontmatter":{"outline":2,"description":"Functions related to arrays","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Array functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Array functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to arrays"}],["meta",{"name":"twitter:description","content":"Functions related to arrays"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/array"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/array"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/array"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/array.md","filePath":"reference/shared/functions/array.md"}'),m={name:"reference/shared/functions/array.md"};function c(r,e,d,u,p,y){return i(),o("div",null,[e[0]||(e[0]=a("h1",{id:"array-functions",tabindex:"-1"},[n("Array functions "),a("a",{class:"header-anchor",href:"#array-functions","aria-label":'Permalink to "Array functions"'},"​")],-1)),a("p",null,s(r.$frontmatter.description),1),e[1]||(e[1]=l('

removeFromArray(item, array)

Remove an item from an array

Type parameters

  • <ItemType>

Parameters

  • item - Item to remove from the array
    • Type: ItemType
  • array
    • Type: ItemType[]

randomFromArray(array)

Get a random item from an array

Type parameters

  • <ItemType>

Parameters

  • array
    • Type: ItemType[]

Returns

  • Type: ItemType

removeDuplicatesFromArray(array)

Removes all duplicate items from an array and returns the array

Type parameters

  • <ItemType>

Parameters

  • array
    • Type: ItemType[]

Returns

  • Type: ItemType[]
',23))])}const g=t(m,[["render",c]]);export{f as __pageData,g as default}; diff --git a/docs/assets/reference_shared_functions_array.md.aBFTyLLx.lean.js b/docs/assets/reference_shared_functions_array.md.Cnu8h0sw.lean.js similarity index 97% rename from docs/assets/reference_shared_functions_array.md.aBFTyLLx.lean.js rename to docs/assets/reference_shared_functions_array.md.Cnu8h0sw.lean.js index e7870aa3..d8732e55 100644 --- a/docs/assets/reference_shared_functions_array.md.aBFTyLLx.lean.js +++ b/docs/assets/reference_shared_functions_array.md.Cnu8h0sw.lean.js @@ -1 +1 @@ -import{_ as t,c as o,j as a,a as n,t as s,a1 as l,o as i}from"./chunks/framework.S1oRGgk6.js";const f=JSON.parse('{"title":"Array functions","description":"Functions related to arrays","frontmatter":{"outline":2,"description":"Functions related to arrays","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Array functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Array functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to arrays"}],["meta",{"name":"twitter:description","content":"Functions related to arrays"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/array"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/array"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/array"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/array.md","filePath":"reference/shared/functions/array.md"}'),m={name:"reference/shared/functions/array.md"};function c(r,e,d,u,p,y){return i(),o("div",null,[e[0]||(e[0]=a("h1",{id:"array-functions",tabindex:"-1"},[n("Array functions "),a("a",{class:"header-anchor",href:"#array-functions","aria-label":'Permalink to "Array functions"'},"​")],-1)),a("p",null,s(r.$frontmatter.description),1),e[1]||(e[1]=l('

removeFromArray(item, array)

Remove an item from an array

Type parameters

  • <ItemType>

Parameters

  • item - Item to remove from the array
    • Type: ItemType
  • array
    • Type: ItemType[]

randomFromArray(array)

Get a random item from an array

Type parameters

  • <ItemType>

Parameters

  • array
    • Type: ItemType[]

Returns

  • Type: ItemType

removeDuplicatesFromArray(array)

Removes all duplicate items from an array and returns the array

Type parameters

  • <ItemType>

Parameters

  • array
    • Type: ItemType[]

Returns

  • Type: ItemType[]
',23))])}const g=t(m,[["render",c]]);export{f as __pageData,g as default}; +import{_ as t,c as o,j as a,a as n,t as s,a3 as l,o as i}from"./chunks/framework.BAnOA2-A.js";const f=JSON.parse('{"title":"Array functions","description":"Functions related to arrays","frontmatter":{"outline":2,"description":"Functions related to arrays","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Array functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Array functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to arrays"}],["meta",{"name":"twitter:description","content":"Functions related to arrays"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/array"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/array"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/array"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/array.md","filePath":"reference/shared/functions/array.md"}'),m={name:"reference/shared/functions/array.md"};function c(r,e,d,u,p,y){return i(),o("div",null,[e[0]||(e[0]=a("h1",{id:"array-functions",tabindex:"-1"},[n("Array functions "),a("a",{class:"header-anchor",href:"#array-functions","aria-label":'Permalink to "Array functions"'},"​")],-1)),a("p",null,s(r.$frontmatter.description),1),e[1]||(e[1]=l('

removeFromArray(item, array)

Remove an item from an array

Type parameters

  • <ItemType>

Parameters

  • item - Item to remove from the array
    • Type: ItemType
  • array
    • Type: ItemType[]

randomFromArray(array)

Get a random item from an array

Type parameters

  • <ItemType>

Parameters

  • array
    • Type: ItemType[]

Returns

  • Type: ItemType

removeDuplicatesFromArray(array)

Removes all duplicate items from an array and returns the array

Type parameters

  • <ItemType>

Parameters

  • array
    • Type: ItemType[]

Returns

  • Type: ItemType[]
',23))])}const g=t(m,[["render",c]]);export{f as __pageData,g as default}; diff --git a/docs/assets/reference_shared_functions_date.md.BVOq1x8p.js b/docs/assets/reference_shared_functions_date.md.BziGsrPl.js similarity index 97% rename from docs/assets/reference_shared_functions_date.md.BVOq1x8p.js rename to docs/assets/reference_shared_functions_date.md.BziGsrPl.js index 09dec680..dc36bfbf 100644 --- a/docs/assets/reference_shared_functions_date.md.BVOq1x8p.js +++ b/docs/assets/reference_shared_functions_date.md.BziGsrPl.js @@ -1 +1 @@ -import{_ as o,c as n,j as t,a as r,t as i,a1 as l,o as s}from"./chunks/framework.S1oRGgk6.js";const p=JSON.parse('{"title":"Date functions","description":"Functions related to dates and time","frontmatter":{"outline":2,"description":"Functions related to dates and time","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Date functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Date functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to dates and time"}],["meta",{"name":"twitter:description","content":"Functions related to dates and time"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/date"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/date"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/date"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/date.md","filePath":"reference/shared/functions/date.md"}'),d={name:"reference/shared/functions/date.md"};function m(a,e,c,u,f,g){return s(),n("div",null,[e[0]||(e[0]=t("h1",{id:"date-functions",tabindex:"-1"},[r("Date functions "),t("a",{class:"header-anchor",href:"#date-functions","aria-label":'Permalink to "Date functions"'},"​")],-1)),t("p",null,i(a.$frontmatter.description),1),e[1]||(e[1]=l('

formatTime(time, maxLength, allowAffixes)

Format a time

Parameters

  • time - Time in milliseconds (negative number represents time in the past)
    • Type: number
  • maxLength - The maximum amount of units, e.g.: 3 => years, months, days
    • Type: number | undefined
    • Default: 3
  • allowAffixes - Allow "... ago" or "in ..."
    • Type: boolean

Returns

  • Type: string

formatRelativeTime(date, maxLength, allowAffixes)

Format a time relative to now

Parameters

  • date
    • Type: Date
  • maxLength - The maximum amount of units, e.g.: 3 => years, months, days
    • Type: number | undefined
      • Default: 3
  • allowAffixes - Allow "... ago" or "in ..."
    • Type: boolean

Returns

  • Type: string
',13))])}const x=o(d,[["render",m]]);export{p as __pageData,x as default}; +import{_ as o,c as n,j as t,a as r,t as i,a3 as l,o as s}from"./chunks/framework.BAnOA2-A.js";const p=JSON.parse('{"title":"Date functions","description":"Functions related to dates and time","frontmatter":{"outline":2,"description":"Functions related to dates and time","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Date functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Date functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to dates and time"}],["meta",{"name":"twitter:description","content":"Functions related to dates and time"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/date"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/date"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/date"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/date.md","filePath":"reference/shared/functions/date.md"}'),d={name:"reference/shared/functions/date.md"};function m(a,e,c,u,f,g){return s(),n("div",null,[e[0]||(e[0]=t("h1",{id:"date-functions",tabindex:"-1"},[r("Date functions "),t("a",{class:"header-anchor",href:"#date-functions","aria-label":'Permalink to "Date functions"'},"​")],-1)),t("p",null,i(a.$frontmatter.description),1),e[1]||(e[1]=l('

formatTime(time, maxLength, allowAffixes)

Format a time

Parameters

  • time - Time in milliseconds (negative number represents time in the past)
    • Type: number
  • maxLength - The maximum amount of units, e.g.: 3 => years, months, days
    • Type: number | undefined
    • Default: 3
  • allowAffixes - Allow "... ago" or "in ..."
    • Type: boolean

Returns

  • Type: string

formatRelativeTime(date, maxLength, allowAffixes)

Format a time relative to now

Parameters

  • date
    • Type: Date
  • maxLength - The maximum amount of units, e.g.: 3 => years, months, days
    • Type: number | undefined
      • Default: 3
  • allowAffixes - Allow "... ago" or "in ..."
    • Type: boolean

Returns

  • Type: string
',13))])}const x=o(d,[["render",m]]);export{p as __pageData,x as default}; diff --git a/docs/assets/reference_shared_functions_date.md.BVOq1x8p.lean.js b/docs/assets/reference_shared_functions_date.md.BziGsrPl.lean.js similarity index 97% rename from docs/assets/reference_shared_functions_date.md.BVOq1x8p.lean.js rename to docs/assets/reference_shared_functions_date.md.BziGsrPl.lean.js index 09dec680..dc36bfbf 100644 --- a/docs/assets/reference_shared_functions_date.md.BVOq1x8p.lean.js +++ b/docs/assets/reference_shared_functions_date.md.BziGsrPl.lean.js @@ -1 +1 @@ -import{_ as o,c as n,j as t,a as r,t as i,a1 as l,o as s}from"./chunks/framework.S1oRGgk6.js";const p=JSON.parse('{"title":"Date functions","description":"Functions related to dates and time","frontmatter":{"outline":2,"description":"Functions related to dates and time","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Date functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Date functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to dates and time"}],["meta",{"name":"twitter:description","content":"Functions related to dates and time"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/date"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/date"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/date"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/date.md","filePath":"reference/shared/functions/date.md"}'),d={name:"reference/shared/functions/date.md"};function m(a,e,c,u,f,g){return s(),n("div",null,[e[0]||(e[0]=t("h1",{id:"date-functions",tabindex:"-1"},[r("Date functions "),t("a",{class:"header-anchor",href:"#date-functions","aria-label":'Permalink to "Date functions"'},"​")],-1)),t("p",null,i(a.$frontmatter.description),1),e[1]||(e[1]=l('

formatTime(time, maxLength, allowAffixes)

Format a time

Parameters

  • time - Time in milliseconds (negative number represents time in the past)
    • Type: number
  • maxLength - The maximum amount of units, e.g.: 3 => years, months, days
    • Type: number | undefined
    • Default: 3
  • allowAffixes - Allow "... ago" or "in ..."
    • Type: boolean

Returns

  • Type: string

formatRelativeTime(date, maxLength, allowAffixes)

Format a time relative to now

Parameters

  • date
    • Type: Date
  • maxLength - The maximum amount of units, e.g.: 3 => years, months, days
    • Type: number | undefined
      • Default: 3
  • allowAffixes - Allow "... ago" or "in ..."
    • Type: boolean

Returns

  • Type: string
',13))])}const x=o(d,[["render",m]]);export{p as __pageData,x as default}; +import{_ as o,c as n,j as t,a as r,t as i,a3 as l,o as s}from"./chunks/framework.BAnOA2-A.js";const p=JSON.parse('{"title":"Date functions","description":"Functions related to dates and time","frontmatter":{"outline":2,"description":"Functions related to dates and time","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Date functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Date functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to dates and time"}],["meta",{"name":"twitter:description","content":"Functions related to dates and time"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/date"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/date"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/date"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/date.md","filePath":"reference/shared/functions/date.md"}'),d={name:"reference/shared/functions/date.md"};function m(a,e,c,u,f,g){return s(),n("div",null,[e[0]||(e[0]=t("h1",{id:"date-functions",tabindex:"-1"},[r("Date functions "),t("a",{class:"header-anchor",href:"#date-functions","aria-label":'Permalink to "Date functions"'},"​")],-1)),t("p",null,i(a.$frontmatter.description),1),e[1]||(e[1]=l('

formatTime(time, maxLength, allowAffixes)

Format a time

Parameters

  • time - Time in milliseconds (negative number represents time in the past)
    • Type: number
  • maxLength - The maximum amount of units, e.g.: 3 => years, months, days
    • Type: number | undefined
    • Default: 3
  • allowAffixes - Allow "... ago" or "in ..."
    • Type: boolean

Returns

  • Type: string

formatRelativeTime(date, maxLength, allowAffixes)

Format a time relative to now

Parameters

  • date
    • Type: Date
  • maxLength - The maximum amount of units, e.g.: 3 => years, months, days
    • Type: number | undefined
      • Default: 3
  • allowAffixes - Allow "... ago" or "in ..."
    • Type: boolean

Returns

  • Type: string
',13))])}const x=o(d,[["render",m]]);export{p as __pageData,x as default}; diff --git a/docs/assets/reference_shared_functions_math.md.CVhEinry.js b/docs/assets/reference_shared_functions_math.md.Crh1YaGW.js similarity index 97% rename from docs/assets/reference_shared_functions_math.md.CVhEinry.js rename to docs/assets/reference_shared_functions_math.md.Crh1YaGW.js index 562fdd55..d6746488 100644 --- a/docs/assets/reference_shared_functions_math.md.CVhEinry.js +++ b/docs/assets/reference_shared_functions_math.md.Crh1YaGW.js @@ -1 +1 @@ -import{_ as r,c as n,j as a,a as o,t as l,a1 as i,o as s}from"./chunks/framework.S1oRGgk6.js";const f=JSON.parse('{"title":"Math functions","description":"Functions related to math","frontmatter":{"outline":2,"description":"Functions related to math","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Math functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Math functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to math"}],["meta",{"name":"twitter:description","content":"Functions related to math"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/math"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/math"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/math"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/math.md","filePath":"reference/shared/functions/math.md"}'),m={name:"reference/shared/functions/math.md"};function u(t,e,c,d,h,p){return s(),n("div",null,[e[0]||(e[0]=a("h1",{id:"math-functions",tabindex:"-1"},[o("Math functions "),a("a",{class:"header-anchor",href:"#math-functions","aria-label":'Permalink to "Math functions"'},"​")],-1)),a("p",null,l(t.$frontmatter.description),1),e[1]||(e[1]=i('

clamp(value, min, max)

Clamp a value between a min and a max value

Parameters

  • value
    • Type: number
  • min
    • Type: number
  • max
    • Type: number

Returns

  • Type: number

randomRange(min, max)

Get a random number in a range between a min and a max value

Parameters

  • min
    • Type: number
  • max
    • Type: number

Returns

  • Type: number

round(value, precision)

Round a number off to a certain amount of digits after the comma

Parameters

  • value - Initial value
    • Type: number
  • precision - Maximum amount of digits allowed after the comma
    • Type: number

Returns

Rounded value

  • Type: number
',20))])}const b=r(m,[["render",u]]);export{f as __pageData,b as default}; +import{_ as r,c as n,j as a,a as o,t as l,a3 as i,o as s}from"./chunks/framework.BAnOA2-A.js";const f=JSON.parse('{"title":"Math functions","description":"Functions related to math","frontmatter":{"outline":2,"description":"Functions related to math","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Math functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Math functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to math"}],["meta",{"name":"twitter:description","content":"Functions related to math"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/math"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/math"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/math"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/math.md","filePath":"reference/shared/functions/math.md"}'),m={name:"reference/shared/functions/math.md"};function u(t,e,c,d,h,p){return s(),n("div",null,[e[0]||(e[0]=a("h1",{id:"math-functions",tabindex:"-1"},[o("Math functions "),a("a",{class:"header-anchor",href:"#math-functions","aria-label":'Permalink to "Math functions"'},"​")],-1)),a("p",null,l(t.$frontmatter.description),1),e[1]||(e[1]=i('

clamp(value, min, max)

Clamp a value between a min and a max value

Parameters

  • value
    • Type: number
  • min
    • Type: number
  • max
    • Type: number

Returns

  • Type: number

randomRange(min, max)

Get a random number in a range between a min and a max value

Parameters

  • min
    • Type: number
  • max
    • Type: number

Returns

  • Type: number

round(value, precision)

Round a number off to a certain amount of digits after the comma

Parameters

  • value - Initial value
    • Type: number
  • precision - Maximum amount of digits allowed after the comma
    • Type: number

Returns

Rounded value

  • Type: number
',20))])}const b=r(m,[["render",u]]);export{f as __pageData,b as default}; diff --git a/docs/assets/reference_shared_functions_math.md.CVhEinry.lean.js b/docs/assets/reference_shared_functions_math.md.Crh1YaGW.lean.js similarity index 97% rename from docs/assets/reference_shared_functions_math.md.CVhEinry.lean.js rename to docs/assets/reference_shared_functions_math.md.Crh1YaGW.lean.js index 562fdd55..d6746488 100644 --- a/docs/assets/reference_shared_functions_math.md.CVhEinry.lean.js +++ b/docs/assets/reference_shared_functions_math.md.Crh1YaGW.lean.js @@ -1 +1 @@ -import{_ as r,c as n,j as a,a as o,t as l,a1 as i,o as s}from"./chunks/framework.S1oRGgk6.js";const f=JSON.parse('{"title":"Math functions","description":"Functions related to math","frontmatter":{"outline":2,"description":"Functions related to math","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Math functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Math functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to math"}],["meta",{"name":"twitter:description","content":"Functions related to math"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/math"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/math"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/math"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/math.md","filePath":"reference/shared/functions/math.md"}'),m={name:"reference/shared/functions/math.md"};function u(t,e,c,d,h,p){return s(),n("div",null,[e[0]||(e[0]=a("h1",{id:"math-functions",tabindex:"-1"},[o("Math functions "),a("a",{class:"header-anchor",href:"#math-functions","aria-label":'Permalink to "Math functions"'},"​")],-1)),a("p",null,l(t.$frontmatter.description),1),e[1]||(e[1]=i('

clamp(value, min, max)

Clamp a value between a min and a max value

Parameters

  • value
    • Type: number
  • min
    • Type: number
  • max
    • Type: number

Returns

  • Type: number

randomRange(min, max)

Get a random number in a range between a min and a max value

Parameters

  • min
    • Type: number
  • max
    • Type: number

Returns

  • Type: number

round(value, precision)

Round a number off to a certain amount of digits after the comma

Parameters

  • value - Initial value
    • Type: number
  • precision - Maximum amount of digits allowed after the comma
    • Type: number

Returns

Rounded value

  • Type: number
',20))])}const b=r(m,[["render",u]]);export{f as __pageData,b as default}; +import{_ as r,c as n,j as a,a as o,t as l,a3 as i,o as s}from"./chunks/framework.BAnOA2-A.js";const f=JSON.parse('{"title":"Math functions","description":"Functions related to math","frontmatter":{"outline":2,"description":"Functions related to math","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Math functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Math functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to math"}],["meta",{"name":"twitter:description","content":"Functions related to math"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/math"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/math"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/math"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/math.md","filePath":"reference/shared/functions/math.md"}'),m={name:"reference/shared/functions/math.md"};function u(t,e,c,d,h,p){return s(),n("div",null,[e[0]||(e[0]=a("h1",{id:"math-functions",tabindex:"-1"},[o("Math functions "),a("a",{class:"header-anchor",href:"#math-functions","aria-label":'Permalink to "Math functions"'},"​")],-1)),a("p",null,l(t.$frontmatter.description),1),e[1]||(e[1]=i('

clamp(value, min, max)

Clamp a value between a min and a max value

Parameters

  • value
    • Type: number
  • min
    • Type: number
  • max
    • Type: number

Returns

  • Type: number

randomRange(min, max)

Get a random number in a range between a min and a max value

Parameters

  • min
    • Type: number
  • max
    • Type: number

Returns

  • Type: number

round(value, precision)

Round a number off to a certain amount of digits after the comma

Parameters

  • value - Initial value
    • Type: number
  • precision - Maximum amount of digits allowed after the comma
    • Type: number

Returns

Rounded value

  • Type: number
',20))])}const b=r(m,[["render",u]]);export{f as __pageData,b as default}; diff --git a/docs/assets/reference_shared_functions_number.md._4jjs5V9.js b/docs/assets/reference_shared_functions_number.md._4jjs5V9.js new file mode 100644 index 00000000..a43c2e93 --- /dev/null +++ b/docs/assets/reference_shared_functions_number.md._4jjs5V9.js @@ -0,0 +1 @@ +import{_ as r,c as a,j as t,a as o,t as s,a3 as i,o as l}from"./chunks/framework.BAnOA2-A.js";const f=JSON.parse('{"title":"Number functions","description":"Functions related to numbers","frontmatter":{"outline":2,"description":"Functions related to numbers","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Number functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Number functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to numbers"}],["meta",{"name":"twitter:description","content":"Functions related to numbers"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/number"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/number"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/number"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/number.md","filePath":"reference/shared/functions/number.md"}'),c={name:"reference/shared/functions/number.md"};function u(n,e,m,d,b,p){return l(),a("div",null,[e[0]||(e[0]=t("h1",{id:"number-functions",tabindex:"-1"},[o("Number functions "),t("a",{class:"header-anchor",href:"#number-functions","aria-label":'Permalink to "Number functions"'},"​")],-1)),t("p",null,s(n.$frontmatter.description),1),e[1]||(e[1]=i('

isValidInteger(number)

Parameters

  • number
    • Type: number | string

Returns

  • Type: number | boolean
',6))])}const g=r(c,[["render",u]]);export{f as __pageData,g as default}; diff --git a/docs/assets/reference_shared_functions_number.md._4jjs5V9.lean.js b/docs/assets/reference_shared_functions_number.md._4jjs5V9.lean.js new file mode 100644 index 00000000..a43c2e93 --- /dev/null +++ b/docs/assets/reference_shared_functions_number.md._4jjs5V9.lean.js @@ -0,0 +1 @@ +import{_ as r,c as a,j as t,a as o,t as s,a3 as i,o as l}from"./chunks/framework.BAnOA2-A.js";const f=JSON.parse('{"title":"Number functions","description":"Functions related to numbers","frontmatter":{"outline":2,"description":"Functions related to numbers","package":"@prozilla-os/shared","head":[["meta",{"name":"og:title","content":"Number functions | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Number functions | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Functions related to numbers"}],["meta",{"name":"twitter:description","content":"Functions related to numbers"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/functions/number"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/number"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/functions/number"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/functions/number.md","filePath":"reference/shared/functions/number.md"}'),c={name:"reference/shared/functions/number.md"};function u(n,e,m,d,b,p){return l(),a("div",null,[e[0]||(e[0]=t("h1",{id:"number-functions",tabindex:"-1"},[o("Number functions "),t("a",{class:"header-anchor",href:"#number-functions","aria-label":'Permalink to "Number functions"'},"​")],-1)),t("p",null,s(n.$frontmatter.description),1),e[1]||(e[1]=i('

isValidInteger(number)

Parameters

  • number
    • Type: number | string

Returns

  • Type: number | boolean
',6))])}const g=r(c,[["render",u]]);export{f as __pageData,g as default}; diff --git a/docs/assets/reference_shared_index.md.D8MzOn41.js b/docs/assets/reference_shared_index.md.BWwJWe2s.js similarity index 86% rename from docs/assets/reference_shared_index.md.D8MzOn41.js rename to docs/assets/reference_shared_index.md.BWwJWe2s.js index 9c3378f9..4193d434 100644 --- a/docs/assets/reference_shared_index.md.D8MzOn41.js +++ b/docs/assets/reference_shared_index.md.BWwJWe2s.js @@ -1,3 +1,3 @@ -import{_ as e,c as t,a1 as s,o as r}from"./chunks/framework.S1oRGgk6.js";const m=JSON.parse('{"title":"@prozilla-os/shared","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/shared | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/shared | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/index.md","filePath":"reference/shared/index.md"}'),i={name:"reference/shared/index.md"};function l(n,a,o,h,p,d){return r(),t("div",null,a[0]||(a[0]=[s(`

@prozilla-os/shared

About

@prozilla-os/shared is a library of shared utility functions and variables for ProzillaOS packages.

Installation

sh
npm install @prozilla-os/shared
+import{_ as e,c as t,a3 as s,o as r}from"./chunks/framework.BAnOA2-A.js";const m=JSON.parse('{"title":"@prozilla-os/shared","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/shared | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/shared | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/index.md","filePath":"reference/shared/index.md"}'),i={name:"reference/shared/index.md"};function l(n,a,o,h,d,p){return r(),t("div",null,a[0]||(a[0]=[s(`

@prozilla-os/shared

About

@prozilla-os/shared is a library of shared utility functions and variables for ProzillaOS packages.

Installation

sh
npm install @prozilla-os/shared
 yarn add @prozilla-os/shared
 pnpm add @prozilla-os/shared
`,7)]))}const k=e(i,[["render",l]]);export{m as __pageData,k as default}; diff --git a/docs/assets/reference_shared_index.md.D8MzOn41.lean.js b/docs/assets/reference_shared_index.md.BWwJWe2s.lean.js similarity index 86% rename from docs/assets/reference_shared_index.md.D8MzOn41.lean.js rename to docs/assets/reference_shared_index.md.BWwJWe2s.lean.js index 9c3378f9..4193d434 100644 --- a/docs/assets/reference_shared_index.md.D8MzOn41.lean.js +++ b/docs/assets/reference_shared_index.md.BWwJWe2s.lean.js @@ -1,3 +1,3 @@ -import{_ as e,c as t,a1 as s,o as r}from"./chunks/framework.S1oRGgk6.js";const m=JSON.parse('{"title":"@prozilla-os/shared","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/shared | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/shared | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/index.md","filePath":"reference/shared/index.md"}'),i={name:"reference/shared/index.md"};function l(n,a,o,h,p,d){return r(),t("div",null,a[0]||(a[0]=[s(`

@prozilla-os/shared

About

@prozilla-os/shared is a library of shared utility functions and variables for ProzillaOS packages.

Installation

sh
npm install @prozilla-os/shared
+import{_ as e,c as t,a3 as s,o as r}from"./chunks/framework.BAnOA2-A.js";const m=JSON.parse('{"title":"@prozilla-os/shared","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/shared | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/shared | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/shared/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/shared/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/shared/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/shared/index.md","filePath":"reference/shared/index.md"}'),i={name:"reference/shared/index.md"};function l(n,a,o,h,d,p){return r(),t("div",null,a[0]||(a[0]=[s(`

@prozilla-os/shared

About

@prozilla-os/shared is a library of shared utility functions and variables for ProzillaOS packages.

Installation

sh
npm install @prozilla-os/shared
 yarn add @prozilla-os/shared
 pnpm add @prozilla-os/shared
`,7)]))}const k=e(i,[["render",l]]);export{m as __pageData,k as default}; diff --git a/docs/assets/reference_skins_classes_skin.md.nXKTCjCd.js b/docs/assets/reference_skins_classes_skin.md.C6Xs6_CQ.js similarity index 89% rename from docs/assets/reference_skins_classes_skin.md.nXKTCjCd.js rename to docs/assets/reference_skins_classes_skin.md.C6Xs6_CQ.js index e90d2ca2..53654bff 100644 --- a/docs/assets/reference_skins_classes_skin.md.nXKTCjCd.js +++ b/docs/assets/reference_skins_classes_skin.md.C6Xs6_CQ.js @@ -1,7 +1,7 @@ -import{_ as e,c as t,j as s,a,t as l,a1 as p,o as h}from"./chunks/framework.S1oRGgk6.js";const k="/docs/assets/file-icons.png",r="/docs/assets/folder-icons.png",m=JSON.parse('{"title":"Class Skin","description":"Change the look and feel of ProzillaOS","frontmatter":{"outline":"deep","description":"Change the look and feel of ProzillaOS","package":"@prozilla-os/skins","head":[["meta",{"name":"og:title","content":"Class Skin | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class Skin | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Change the look and feel of ProzillaOS"}],["meta",{"name":"twitter:description","content":"Change the look and feel of ProzillaOS"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/skins/classes/skin"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/skins/classes/skin"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/skins/classes/skin"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/skins/classes/skin.md","filePath":"reference/skins/classes/skin.md"}'),F={name:"reference/skins/classes/skin.md"};function o(n,i,d,D,c,g){return h(),t("div",null,[i[0]||(i[0]=s("h1",{id:"class-skin",tabindex:"-1"},[a("Class "),s("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/skins/src/core/skin.ts",target:"_blank",rel:"noreferrer"},[s("code",null,"Skin")]),a(),s("a",{class:"header-anchor",href:"#class-skin","aria-label":'Permalink to "Class [`Skin`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/skins/src/core/skin.ts)"'},"​")],-1)),s("p",null,l(n.$frontmatter.description),1),i[1]||(i[1]=p(`

Constructor

new Skin(options)

Parameters

  • options
    • Type: SkinOptions | undefined
ts
interface SkinOptions {
+import{_ as e,c as t,j as s,a,t as l,a3 as p,o as h}from"./chunks/framework.BAnOA2-A.js";const k="/docs/assets/file-icons.png",r="/docs/assets/folder-icons.png",m=JSON.parse('{"title":"Class Skin","description":"Change the look and feel of ProzillaOS","frontmatter":{"outline":"deep","description":"Change the look and feel of ProzillaOS","package":"@prozilla-os/skins","head":[["meta",{"name":"og:title","content":"Class Skin | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class Skin | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Change the look and feel of ProzillaOS"}],["meta",{"name":"twitter:description","content":"Change the look and feel of ProzillaOS"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/skins/classes/skin"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/skins/classes/skin"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/skins/classes/skin"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/skins/classes/skin.md","filePath":"reference/skins/classes/skin.md"}'),F={name:"reference/skins/classes/skin.md"};function o(n,i,d,D,c,g){return h(),t("div",null,[i[0]||(i[0]=s("h1",{id:"class-skin",tabindex:"-1"},[a("Class "),s("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/skins/src/core/skin.ts",target:"_blank",rel:"noreferrer"},[s("code",null,"Skin")]),a(),s("a",{class:"header-anchor",href:"#class-skin","aria-label":'Permalink to "Class [`Skin`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/skins/src/core/skin.ts)"'},"​")],-1)),s("p",null,l(n.$frontmatter.description),1),i[1]||(i[1]=p(`

Constructor

new Skin(options)

Parameters

  • options
    • Type: SkinOptions | undefined
ts
interface SkinOptions {
 	appIcons?: Record<number, string>;
 	appNames?: Record<number, string>;
-	wallpapers: string[];
+	wallpapers: string[];
 	defaultWallpaper: string;
 	fileIcons: {
 		generic: string;
@@ -16,16 +16,16 @@ import{_ as e,c as t,j as s,a,t as l,a1 as p,o as h}from"./chunks/framework.S1oR
 		link?: string;
 	};
 	loadStyleSheet?: () => void;
-}

Properties

appIcons

Replacements for app icons based on app id

  • Type: { [key: string]: string }

appNames

Replacements for app names based on app id

  • Type: { [key: string]: string }

wallpapers

Array of URLs of wallpaper images

  • Type: string[]

defaultWallpaper

URL of default wallpaper image

  • Type: string

Default

"https://os.prozilla.dev/assets/wallpapers/vibrant-wallpaper-blue-purple-red.png"

Default wallpaper

fileIcons

URLs of icons for types of files

  • Type: FileIcons
ts
interface FileIcons {
+}

Properties

appIcons

Replacements for app icons based on app id

  • Type: { [key: string]: string }

appNames

Replacements for app names based on app id

  • Type: { [key: string]: string }

wallpapers

Array of URLs of wallpaper images

  • Type: string[]

defaultWallpaper

URL of default wallpaper image

  • Type: string

Default

"https://os.prozilla.dev/assets/wallpapers/vibrant-wallpaper-blue-purple-red.png"

Default wallpaper

fileIcons

URLs of icons for types of files

  • Type: FileIcons
ts
interface FileIcons {
 	generic: string;
 	info?: string;
 	text?: string;
 	code?: string;
-}

Default

Default file icons

folderIcons

URLs of icons for types of folders

  • Type: FolderIcons
ts
interface FolderIcons {
+}

Default

Default file icons

folderIcons

URLs of icons for types of folders

  • Type: FolderIcons
ts
interface FolderIcons {
 	generic: string;
 	images?: string;
 	text?: string;
 	link?: string;
-}

Default

Default folder icons

loadStyleSheet

Function that dynamically imports style sheet

  • Type: () => void

Example

ts
function loadStyleSheet() {
+}

Default

Default folder icons

loadStyleSheet

Function that dynamically imports style sheet

  • Type: () => void

Example

ts
function loadStyleSheet() {
 	import("../styles/skins/macOs.css");
-}

Instances

macOsSkin

A skin inspired by the macOS interface

minimalSkin

A minimalistic skin with monochrome icons

`,43))])}const B=e(F,[["render",o]]);export{m as __pageData,B as default}; +}

Instances

macOsSkin

A skin inspired by the macOS interface

minimalSkin

A minimalistic skin with monochrome icons

`,43))])}const u=e(F,[["render",o]]);export{m as __pageData,u as default}; diff --git a/docs/assets/reference_skins_classes_skin.md.nXKTCjCd.lean.js b/docs/assets/reference_skins_classes_skin.md.C6Xs6_CQ.lean.js similarity index 89% rename from docs/assets/reference_skins_classes_skin.md.nXKTCjCd.lean.js rename to docs/assets/reference_skins_classes_skin.md.C6Xs6_CQ.lean.js index e90d2ca2..53654bff 100644 --- a/docs/assets/reference_skins_classes_skin.md.nXKTCjCd.lean.js +++ b/docs/assets/reference_skins_classes_skin.md.C6Xs6_CQ.lean.js @@ -1,7 +1,7 @@ -import{_ as e,c as t,j as s,a,t as l,a1 as p,o as h}from"./chunks/framework.S1oRGgk6.js";const k="/docs/assets/file-icons.png",r="/docs/assets/folder-icons.png",m=JSON.parse('{"title":"Class Skin","description":"Change the look and feel of ProzillaOS","frontmatter":{"outline":"deep","description":"Change the look and feel of ProzillaOS","package":"@prozilla-os/skins","head":[["meta",{"name":"og:title","content":"Class Skin | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class Skin | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Change the look and feel of ProzillaOS"}],["meta",{"name":"twitter:description","content":"Change the look and feel of ProzillaOS"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/skins/classes/skin"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/skins/classes/skin"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/skins/classes/skin"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/skins/classes/skin.md","filePath":"reference/skins/classes/skin.md"}'),F={name:"reference/skins/classes/skin.md"};function o(n,i,d,D,c,g){return h(),t("div",null,[i[0]||(i[0]=s("h1",{id:"class-skin",tabindex:"-1"},[a("Class "),s("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/skins/src/core/skin.ts",target:"_blank",rel:"noreferrer"},[s("code",null,"Skin")]),a(),s("a",{class:"header-anchor",href:"#class-skin","aria-label":'Permalink to "Class [`Skin`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/skins/src/core/skin.ts)"'},"​")],-1)),s("p",null,l(n.$frontmatter.description),1),i[1]||(i[1]=p(`

Constructor

new Skin(options)

Parameters

  • options
    • Type: SkinOptions | undefined
ts
interface SkinOptions {
+import{_ as e,c as t,j as s,a,t as l,a3 as p,o as h}from"./chunks/framework.BAnOA2-A.js";const k="/docs/assets/file-icons.png",r="/docs/assets/folder-icons.png",m=JSON.parse('{"title":"Class Skin","description":"Change the look and feel of ProzillaOS","frontmatter":{"outline":"deep","description":"Change the look and feel of ProzillaOS","package":"@prozilla-os/skins","head":[["meta",{"name":"og:title","content":"Class Skin | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"Class Skin | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Change the look and feel of ProzillaOS"}],["meta",{"name":"twitter:description","content":"Change the look and feel of ProzillaOS"}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/skins/classes/skin"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/skins/classes/skin"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/skins/classes/skin"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/skins/classes/skin.md","filePath":"reference/skins/classes/skin.md"}'),F={name:"reference/skins/classes/skin.md"};function o(n,i,d,D,c,g){return h(),t("div",null,[i[0]||(i[0]=s("h1",{id:"class-skin",tabindex:"-1"},[a("Class "),s("a",{href:"https://github.com/prozilla-os/ProzillaOS/blob/main/packages/skins/src/core/skin.ts",target:"_blank",rel:"noreferrer"},[s("code",null,"Skin")]),a(),s("a",{class:"header-anchor",href:"#class-skin","aria-label":'Permalink to "Class [`Skin`](https://github.com/prozilla-os/ProzillaOS/blob/main/packages/skins/src/core/skin.ts)"'},"​")],-1)),s("p",null,l(n.$frontmatter.description),1),i[1]||(i[1]=p(`

Constructor

new Skin(options)

Parameters

  • options
    • Type: SkinOptions | undefined
ts
interface SkinOptions {
 	appIcons?: Record<number, string>;
 	appNames?: Record<number, string>;
-	wallpapers: string[];
+	wallpapers: string[];
 	defaultWallpaper: string;
 	fileIcons: {
 		generic: string;
@@ -16,16 +16,16 @@ import{_ as e,c as t,j as s,a,t as l,a1 as p,o as h}from"./chunks/framework.S1oR
 		link?: string;
 	};
 	loadStyleSheet?: () => void;
-}

Properties

appIcons

Replacements for app icons based on app id

  • Type: { [key: string]: string }

appNames

Replacements for app names based on app id

  • Type: { [key: string]: string }

wallpapers

Array of URLs of wallpaper images

  • Type: string[]

defaultWallpaper

URL of default wallpaper image

  • Type: string

Default

"https://os.prozilla.dev/assets/wallpapers/vibrant-wallpaper-blue-purple-red.png"

Default wallpaper

fileIcons

URLs of icons for types of files

  • Type: FileIcons
ts
interface FileIcons {
+}

Properties

appIcons

Replacements for app icons based on app id

  • Type: { [key: string]: string }

appNames

Replacements for app names based on app id

  • Type: { [key: string]: string }

wallpapers

Array of URLs of wallpaper images

  • Type: string[]

defaultWallpaper

URL of default wallpaper image

  • Type: string

Default

"https://os.prozilla.dev/assets/wallpapers/vibrant-wallpaper-blue-purple-red.png"

Default wallpaper

fileIcons

URLs of icons for types of files

  • Type: FileIcons
ts
interface FileIcons {
 	generic: string;
 	info?: string;
 	text?: string;
 	code?: string;
-}

Default

Default file icons

folderIcons

URLs of icons for types of folders

  • Type: FolderIcons
ts
interface FolderIcons {
+}

Default

Default file icons

folderIcons

URLs of icons for types of folders

  • Type: FolderIcons
ts
interface FolderIcons {
 	generic: string;
 	images?: string;
 	text?: string;
 	link?: string;
-}

Default

Default folder icons

loadStyleSheet

Function that dynamically imports style sheet

  • Type: () => void

Example

ts
function loadStyleSheet() {
+}

Default

Default folder icons

loadStyleSheet

Function that dynamically imports style sheet

  • Type: () => void

Example

ts
function loadStyleSheet() {
 	import("../styles/skins/macOs.css");
-}

Instances

macOsSkin

A skin inspired by the macOS interface

minimalSkin

A minimalistic skin with monochrome icons

`,43))])}const B=e(F,[["render",o]]);export{m as __pageData,B as default}; +}

Instances

macOsSkin

A skin inspired by the macOS interface

minimalSkin

A minimalistic skin with monochrome icons

`,43))])}const u=e(F,[["render",o]]);export{m as __pageData,u as default}; diff --git a/docs/assets/reference_skins_index.md.BP5S9Qx1.js b/docs/assets/reference_skins_index.md.ZwuBCdzG.js similarity index 87% rename from docs/assets/reference_skins_index.md.BP5S9Qx1.js rename to docs/assets/reference_skins_index.md.ZwuBCdzG.js index 65f71515..48b5cc77 100644 --- a/docs/assets/reference_skins_index.md.BP5S9Qx1.js +++ b/docs/assets/reference_skins_index.md.ZwuBCdzG.js @@ -1,3 +1,3 @@ -import{_ as e,c as s,a1 as t,o as i}from"./chunks/framework.S1oRGgk6.js";const k=JSON.parse('{"title":"@prozilla-os/skins","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/skins | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/skins | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/skins/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/skins/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/skins/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/skins/index.md","filePath":"reference/skins/index.md"}'),n={name:"reference/skins/index.md"};function l(r,a,o,p,c,h){return i(),s("div",null,a[0]||(a[0]=[t(`

@prozilla-os/skins

About

@prozilla-os/skins is a React library that contains skins for ProzillaOS.

Installation

sh
npm install @prozilla-os/skins
+import{_ as e,c as s,a3 as t,o as i}from"./chunks/framework.BAnOA2-A.js";const k=JSON.parse('{"title":"@prozilla-os/skins","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/skins | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/skins | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/skins/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/skins/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/skins/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/skins/index.md","filePath":"reference/skins/index.md"}'),n={name:"reference/skins/index.md"};function l(r,a,o,p,c,h){return i(),s("div",null,a[0]||(a[0]=[t(`

@prozilla-os/skins

About

@prozilla-os/skins is a React library that contains skins for ProzillaOS.

Installation

sh
npm install @prozilla-os/skins
 yarn add @prozilla-os/skins
 pnpm add @prozilla-os/skins
`,7)]))}const m=e(n,[["render",l]]);export{k as __pageData,m as default}; diff --git a/docs/assets/reference_skins_index.md.BP5S9Qx1.lean.js b/docs/assets/reference_skins_index.md.ZwuBCdzG.lean.js similarity index 87% rename from docs/assets/reference_skins_index.md.BP5S9Qx1.lean.js rename to docs/assets/reference_skins_index.md.ZwuBCdzG.lean.js index 65f71515..48b5cc77 100644 --- a/docs/assets/reference_skins_index.md.BP5S9Qx1.lean.js +++ b/docs/assets/reference_skins_index.md.ZwuBCdzG.lean.js @@ -1,3 +1,3 @@ -import{_ as e,c as s,a1 as t,o as i}from"./chunks/framework.S1oRGgk6.js";const k=JSON.parse('{"title":"@prozilla-os/skins","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/skins | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/skins | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/skins/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/skins/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/skins/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/skins/index.md","filePath":"reference/skins/index.md"}'),n={name:"reference/skins/index.md"};function l(r,a,o,p,c,h){return i(),s("div",null,a[0]||(a[0]=[t(`

@prozilla-os/skins

About

@prozilla-os/skins is a React library that contains skins for ProzillaOS.

Installation

sh
npm install @prozilla-os/skins
+import{_ as e,c as s,a3 as t,o as i}from"./chunks/framework.BAnOA2-A.js";const k=JSON.parse('{"title":"@prozilla-os/skins","description":"","frontmatter":{"outline":"deep","head":[["meta",{"name":"og:title","content":"@prozilla-os/skins | ProzillaOS Docs"}],["meta",{"name":"twitter:title","content":"@prozilla-os/skins | ProzillaOS Docs"}],["meta",{"name":"og:description","content":"Documentation for ProzillaOS and its packages."}],["meta",{"name":"twitter:description","content":"Documentation for ProzillaOS and its packages."}],["link",{"rel":"canonical","href":"https://os.prozilla.dev/docs/reference/skins/"}],["meta",{"name":"og:url","content":"https://os.prozilla.dev/docs/reference/skins/"}],["meta",{"name":"twitter:url","content":"https://os.prozilla.dev/docs/reference/skins/"}],["meta",{"name":"og:locale","content":"en_US"}],["meta",{"name":"og:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"twitter:image","content":"https://os.prozilla.dev/docs/prozilla-os-title-banner.png"}],["meta",{"name":"og:type","content":"website"}],["meta",{"name":"twitter:card","content":"summary_large_image"}]]},"headers":[],"relativePath":"reference/skins/index.md","filePath":"reference/skins/index.md"}'),n={name:"reference/skins/index.md"};function l(r,a,o,p,c,h){return i(),s("div",null,a[0]||(a[0]=[t(`

@prozilla-os/skins

About

@prozilla-os/skins is a React library that contains skins for ProzillaOS.

Installation

sh
npm install @prozilla-os/skins
 yarn add @prozilla-os/skins
 pnpm add @prozilla-os/skins
`,7)]))}const m=e(n,[["render",l]]);export{k as __pageData,m as default}; diff --git a/docs/assets/style.I6L9t8Q1.css b/docs/assets/style.DaRYdYyK.css similarity index 87% rename from docs/assets/style.I6L9t8Q1.css rename to docs/assets/style.DaRYdYyK.css index 031a54ee..3ed6b6b1 100644 --- a/docs/assets/style.I6L9t8Q1.css +++ b/docs/assets/style.DaRYdYyK.css @@ -1 +1 @@ -@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-cyrillic-ext.BBPuwvHQ.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-cyrillic.C5lxZ8CY.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-greek-ext.CqjqNYQ-.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-greek.BBVDIX6e.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-vietnamese.BjW4sHH5.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-latin-ext.4ZJIpNVo.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-latin.Di8DUHzh.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-cyrillic-ext.r48I6akx.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-cyrillic.By2_1cv3.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-greek-ext.1u6EdAuj.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-greek.DJ8dCoTZ.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-vietnamese.BSbpV94h.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-latin-ext.CN1xVJS-.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-latin.C2AdPX0b.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Punctuation SC;font-weight:400;src:local("PingFang SC Regular"),local("Noto Sans CJK SC"),local("Microsoft YaHei");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:500;src:local("PingFang SC Medium"),local("Noto Sans CJK SC"),local("Microsoft YaHei");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:600;src:local("PingFang SC Semibold"),local("Noto Sans CJK SC Bold"),local("Microsoft YaHei Bold");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:700;src:local("PingFang SC Semibold"),local("Noto Sans CJK SC Bold"),local("Microsoft YaHei Bold");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}:root{--vp-c-white: #ffffff;--vp-c-black: #000000;--vp-c-neutral: var(--vp-c-black);--vp-c-neutral-inverse: var(--vp-c-white)}.dark{--vp-c-neutral: var(--vp-c-white);--vp-c-neutral-inverse: var(--vp-c-black)}:root{--vp-c-gray-1: #dddde3;--vp-c-gray-2: #e4e4e9;--vp-c-gray-3: #ebebef;--vp-c-gray-soft: rgba(142, 150, 170, .14);--vp-c-indigo-1: #3451b2;--vp-c-indigo-2: #3a5ccc;--vp-c-indigo-3: #5672cd;--vp-c-indigo-soft: rgba(100, 108, 255, .14);--vp-c-purple-1: #6f42c1;--vp-c-purple-2: #7e4cc9;--vp-c-purple-3: #8e5cd9;--vp-c-purple-soft: rgba(159, 122, 234, .14);--vp-c-green-1: #18794e;--vp-c-green-2: #299764;--vp-c-green-3: #30a46c;--vp-c-green-soft: rgba(16, 185, 129, .14);--vp-c-yellow-1: #915930;--vp-c-yellow-2: #946300;--vp-c-yellow-3: #9f6a00;--vp-c-yellow-soft: rgba(234, 179, 8, .14);--vp-c-red-1: #b8272c;--vp-c-red-2: #d5393e;--vp-c-red-3: #e0575b;--vp-c-red-soft: rgba(244, 63, 94, .14);--vp-c-sponsor: #db2777}.dark{--vp-c-gray-1: #515c67;--vp-c-gray-2: #414853;--vp-c-gray-3: #32363f;--vp-c-gray-soft: rgba(101, 117, 133, .16);--vp-c-indigo-1: #a8b1ff;--vp-c-indigo-2: #5c73e7;--vp-c-indigo-3: #3e63dd;--vp-c-indigo-soft: rgba(100, 108, 255, .16);--vp-c-purple-1: #c8abfa;--vp-c-purple-2: #a879e6;--vp-c-purple-3: #8e5cd9;--vp-c-purple-soft: rgba(159, 122, 234, .16);--vp-c-green-1: #3dd68c;--vp-c-green-2: #30a46c;--vp-c-green-3: #298459;--vp-c-green-soft: rgba(16, 185, 129, .16);--vp-c-yellow-1: #f9b44e;--vp-c-yellow-2: #da8b17;--vp-c-yellow-3: #a46a0a;--vp-c-yellow-soft: rgba(234, 179, 8, .16);--vp-c-red-1: #f66f81;--vp-c-red-2: #f14158;--vp-c-red-3: #b62a3c;--vp-c-red-soft: rgba(244, 63, 94, .16)}:root{--vp-c-bg: #ffffff;--vp-c-bg-alt: #f6f6f7;--vp-c-bg-elv: #ffffff;--vp-c-bg-soft: #f6f6f7}.dark{--vp-c-bg: #1b1b1f;--vp-c-bg-alt: #161618;--vp-c-bg-elv: #202127;--vp-c-bg-soft: #202127}:root{--vp-c-border: #c2c2c4;--vp-c-divider: #e2e2e3;--vp-c-gutter: #e2e2e3}.dark{--vp-c-border: #3c3f44;--vp-c-divider: #2e2e32;--vp-c-gutter: #000000}:root{--vp-c-text-1: rgba(60, 60, 67);--vp-c-text-2: rgba(60, 60, 67, .78);--vp-c-text-3: rgba(60, 60, 67, .56)}.dark{--vp-c-text-1: rgba(255, 255, 245, .86);--vp-c-text-2: rgba(235, 235, 245, .6);--vp-c-text-3: rgba(235, 235, 245, .38)}:root{--vp-c-default-1: var(--vp-c-gray-1);--vp-c-default-2: var(--vp-c-gray-2);--vp-c-default-3: var(--vp-c-gray-3);--vp-c-default-soft: var(--vp-c-gray-soft);--vp-c-brand-1: var(--vp-c-indigo-1);--vp-c-brand-2: var(--vp-c-indigo-2);--vp-c-brand-3: var(--vp-c-indigo-3);--vp-c-brand-soft: var(--vp-c-indigo-soft);--vp-c-brand: var(--vp-c-brand-1);--vp-c-tip-1: var(--vp-c-brand-1);--vp-c-tip-2: var(--vp-c-brand-2);--vp-c-tip-3: var(--vp-c-brand-3);--vp-c-tip-soft: var(--vp-c-brand-soft);--vp-c-note-1: var(--vp-c-brand-1);--vp-c-note-2: var(--vp-c-brand-2);--vp-c-note-3: var(--vp-c-brand-3);--vp-c-note-soft: var(--vp-c-brand-soft);--vp-c-success-1: var(--vp-c-green-1);--vp-c-success-2: var(--vp-c-green-2);--vp-c-success-3: var(--vp-c-green-3);--vp-c-success-soft: var(--vp-c-green-soft);--vp-c-important-1: var(--vp-c-purple-1);--vp-c-important-2: var(--vp-c-purple-2);--vp-c-important-3: var(--vp-c-purple-3);--vp-c-important-soft: var(--vp-c-purple-soft);--vp-c-warning-1: var(--vp-c-yellow-1);--vp-c-warning-2: var(--vp-c-yellow-2);--vp-c-warning-3: var(--vp-c-yellow-3);--vp-c-warning-soft: var(--vp-c-yellow-soft);--vp-c-danger-1: var(--vp-c-red-1);--vp-c-danger-2: var(--vp-c-red-2);--vp-c-danger-3: var(--vp-c-red-3);--vp-c-danger-soft: var(--vp-c-red-soft);--vp-c-caution-1: var(--vp-c-red-1);--vp-c-caution-2: var(--vp-c-red-2);--vp-c-caution-3: var(--vp-c-red-3);--vp-c-caution-soft: var(--vp-c-red-soft)}:root{--vp-font-family-base: "Inter", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--vp-font-family-mono: ui-monospace, "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;font-optical-sizing:auto}:root:where(:lang(zh)){--vp-font-family-base: "Punctuation SC", "Inter", ui-sans-serif, system-ui, "PingFang SC", "Noto Sans CJK SC", "Noto Sans SC", "Heiti SC", "Microsoft YaHei", "DengXian", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"}:root{--vp-shadow-1: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .06);--vp-shadow-2: 0 3px 12px rgba(0, 0, 0, .07), 0 1px 4px rgba(0, 0, 0, .07);--vp-shadow-3: 0 12px 32px rgba(0, 0, 0, .1), 0 2px 6px rgba(0, 0, 0, .08);--vp-shadow-4: 0 14px 44px rgba(0, 0, 0, .12), 0 3px 9px rgba(0, 0, 0, .12);--vp-shadow-5: 0 18px 56px rgba(0, 0, 0, .16), 0 4px 12px rgba(0, 0, 0, .16)}:root{--vp-z-index-footer: 10;--vp-z-index-local-nav: 20;--vp-z-index-nav: 30;--vp-z-index-layout-top: 40;--vp-z-index-backdrop: 50;--vp-z-index-sidebar: 60}@media (min-width: 960px){:root{--vp-z-index-sidebar: 25}}:root{--vp-layout-max-width: 1440px}:root{--vp-header-anchor-symbol: "#"}:root{--vp-code-line-height: 1.7;--vp-code-font-size: .875em;--vp-code-color: var(--vp-c-brand-1);--vp-code-link-color: var(--vp-c-brand-1);--vp-code-link-hover-color: var(--vp-c-brand-2);--vp-code-bg: var(--vp-c-default-soft);--vp-code-block-color: var(--vp-c-text-2);--vp-code-block-bg: var(--vp-c-bg-alt);--vp-code-block-divider-color: var(--vp-c-gutter);--vp-code-lang-color: var(--vp-c-text-3);--vp-code-line-highlight-color: var(--vp-c-default-soft);--vp-code-line-number-color: var(--vp-c-text-3);--vp-code-line-diff-add-color: var(--vp-c-success-soft);--vp-code-line-diff-add-symbol-color: var(--vp-c-success-1);--vp-code-line-diff-remove-color: var(--vp-c-danger-soft);--vp-code-line-diff-remove-symbol-color: var(--vp-c-danger-1);--vp-code-line-warning-color: var(--vp-c-warning-soft);--vp-code-line-error-color: var(--vp-c-danger-soft);--vp-code-copy-code-border-color: var(--vp-c-divider);--vp-code-copy-code-bg: var(--vp-c-bg-soft);--vp-code-copy-code-hover-border-color: var(--vp-c-divider);--vp-code-copy-code-hover-bg: var(--vp-c-bg);--vp-code-copy-code-active-text: var(--vp-c-text-2);--vp-code-copy-copied-text-content: "Copied";--vp-code-tab-divider: var(--vp-code-block-divider-color);--vp-code-tab-text-color: var(--vp-c-text-2);--vp-code-tab-bg: var(--vp-code-block-bg);--vp-code-tab-hover-text-color: var(--vp-c-text-1);--vp-code-tab-active-text-color: var(--vp-c-text-1);--vp-code-tab-active-bar-color: var(--vp-c-brand-1)}:root{--vp-button-brand-border: transparent;--vp-button-brand-text: var(--vp-c-white);--vp-button-brand-bg: var(--vp-c-brand-3);--vp-button-brand-hover-border: transparent;--vp-button-brand-hover-text: var(--vp-c-white);--vp-button-brand-hover-bg: var(--vp-c-brand-2);--vp-button-brand-active-border: transparent;--vp-button-brand-active-text: var(--vp-c-white);--vp-button-brand-active-bg: var(--vp-c-brand-1);--vp-button-alt-border: transparent;--vp-button-alt-text: var(--vp-c-text-1);--vp-button-alt-bg: var(--vp-c-default-3);--vp-button-alt-hover-border: transparent;--vp-button-alt-hover-text: var(--vp-c-text-1);--vp-button-alt-hover-bg: var(--vp-c-default-2);--vp-button-alt-active-border: transparent;--vp-button-alt-active-text: var(--vp-c-text-1);--vp-button-alt-active-bg: var(--vp-c-default-1);--vp-button-sponsor-border: var(--vp-c-text-2);--vp-button-sponsor-text: var(--vp-c-text-2);--vp-button-sponsor-bg: transparent;--vp-button-sponsor-hover-border: var(--vp-c-sponsor);--vp-button-sponsor-hover-text: var(--vp-c-sponsor);--vp-button-sponsor-hover-bg: transparent;--vp-button-sponsor-active-border: var(--vp-c-sponsor);--vp-button-sponsor-active-text: var(--vp-c-sponsor);--vp-button-sponsor-active-bg: transparent}:root{--vp-custom-block-font-size: 14px;--vp-custom-block-code-font-size: 13px;--vp-custom-block-info-border: transparent;--vp-custom-block-info-text: var(--vp-c-text-1);--vp-custom-block-info-bg: var(--vp-c-default-soft);--vp-custom-block-info-code-bg: var(--vp-c-default-soft);--vp-custom-block-note-border: transparent;--vp-custom-block-note-text: var(--vp-c-text-1);--vp-custom-block-note-bg: var(--vp-c-default-soft);--vp-custom-block-note-code-bg: var(--vp-c-default-soft);--vp-custom-block-tip-border: transparent;--vp-custom-block-tip-text: var(--vp-c-text-1);--vp-custom-block-tip-bg: var(--vp-c-tip-soft);--vp-custom-block-tip-code-bg: var(--vp-c-tip-soft);--vp-custom-block-important-border: transparent;--vp-custom-block-important-text: var(--vp-c-text-1);--vp-custom-block-important-bg: var(--vp-c-important-soft);--vp-custom-block-important-code-bg: var(--vp-c-important-soft);--vp-custom-block-warning-border: transparent;--vp-custom-block-warning-text: var(--vp-c-text-1);--vp-custom-block-warning-bg: var(--vp-c-warning-soft);--vp-custom-block-warning-code-bg: var(--vp-c-warning-soft);--vp-custom-block-danger-border: transparent;--vp-custom-block-danger-text: var(--vp-c-text-1);--vp-custom-block-danger-bg: var(--vp-c-danger-soft);--vp-custom-block-danger-code-bg: var(--vp-c-danger-soft);--vp-custom-block-caution-border: transparent;--vp-custom-block-caution-text: var(--vp-c-text-1);--vp-custom-block-caution-bg: var(--vp-c-caution-soft);--vp-custom-block-caution-code-bg: var(--vp-c-caution-soft);--vp-custom-block-details-border: var(--vp-custom-block-info-border);--vp-custom-block-details-text: var(--vp-custom-block-info-text);--vp-custom-block-details-bg: var(--vp-custom-block-info-bg);--vp-custom-block-details-code-bg: var(--vp-custom-block-info-code-bg)}:root{--vp-input-border-color: var(--vp-c-border);--vp-input-bg-color: var(--vp-c-bg-alt);--vp-input-switch-bg-color: var(--vp-c-default-soft)}:root{--vp-nav-height: 64px;--vp-nav-bg-color: var(--vp-c-bg);--vp-nav-screen-bg-color: var(--vp-c-bg);--vp-nav-logo-height: 24px}.hide-nav{--vp-nav-height: 0px}.hide-nav .VPSidebar{--vp-nav-height: 22px}:root{--vp-local-nav-bg-color: var(--vp-c-bg)}:root{--vp-sidebar-width: 272px;--vp-sidebar-bg-color: var(--vp-c-bg-alt)}:root{--vp-backdrop-bg-color: rgba(0, 0, 0, .6)}:root{--vp-home-hero-name-color: var(--vp-c-brand-1);--vp-home-hero-name-background: transparent;--vp-home-hero-image-background-image: none;--vp-home-hero-image-filter: none}:root{--vp-badge-info-border: transparent;--vp-badge-info-text: var(--vp-c-text-2);--vp-badge-info-bg: var(--vp-c-default-soft);--vp-badge-tip-border: transparent;--vp-badge-tip-text: var(--vp-c-tip-1);--vp-badge-tip-bg: var(--vp-c-tip-soft);--vp-badge-warning-border: transparent;--vp-badge-warning-text: var(--vp-c-warning-1);--vp-badge-warning-bg: var(--vp-c-warning-soft);--vp-badge-danger-border: transparent;--vp-badge-danger-text: var(--vp-c-danger-1);--vp-badge-danger-bg: var(--vp-c-danger-soft)}:root{--vp-carbon-ads-text-color: var(--vp-c-text-1);--vp-carbon-ads-poweredby-color: var(--vp-c-text-2);--vp-carbon-ads-bg-color: var(--vp-c-bg-soft);--vp-carbon-ads-hover-text-color: var(--vp-c-brand-1);--vp-carbon-ads-hover-poweredby-color: var(--vp-c-text-1)}:root{--vp-local-search-bg: var(--vp-c-bg);--vp-local-search-result-bg: var(--vp-c-bg);--vp-local-search-result-border: var(--vp-c-divider);--vp-local-search-result-selected-bg: var(--vp-c-bg);--vp-local-search-result-selected-border: var(--vp-c-brand-1);--vp-local-search-highlight-bg: var(--vp-c-brand-1);--vp-local-search-highlight-text: var(--vp-c-neutral-inverse)}@media (prefers-reduced-motion: reduce){*,:before,:after{animation-delay:-1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;background-attachment:initial!important;scroll-behavior:auto!important;transition-duration:0s!important;transition-delay:0s!important}}*,:before,:after{box-sizing:border-box}html{line-height:1.4;font-size:16px;-webkit-text-size-adjust:100%}html.dark{color-scheme:dark}body{margin:0;width:100%;min-width:320px;min-height:100vh;line-height:24px;font-family:var(--vp-font-family-base);font-size:16px;font-weight:400;color:var(--vp-c-text-1);background-color:var(--vp-c-bg);font-synthesis:style;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{display:block}h1,h2,h3,h4,h5,h6{margin:0;line-height:24px;font-size:16px;font-weight:400}p{margin:0}strong,b{font-weight:600}a,area,button,[role=button],input,label,select,summary,textarea{touch-action:manipulation}a{color:inherit;text-decoration:inherit}ol,ul{list-style:none;margin:0;padding:0}blockquote{margin:0}pre,code,kbd,samp{font-family:var(--vp-font-family-mono)}img,svg,video,canvas,audio,iframe,embed,object{display:block}figure{margin:0}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{border:0;padding:0;line-height:inherit;color:inherit}button{padding:0;font-family:inherit;background-color:transparent;background-image:none}button:enabled,[role=button]:enabled{cursor:pointer}button:focus,button:focus-visible{outline:1px dotted;outline:4px auto -webkit-focus-ring-color}button:focus:not(:focus-visible){outline:none!important}input:focus,textarea:focus,select:focus{outline:none}table{border-collapse:collapse}input{background-color:transparent}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:var(--vp-c-text-3)}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:var(--vp-c-text-3)}input::placeholder,textarea::placeholder{color:var(--vp-c-text-3)}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}textarea{resize:vertical}select{-webkit-appearance:none}fieldset{margin:0;padding:0}h1,h2,h3,h4,h5,h6,li,p{overflow-wrap:break-word}vite-error-overlay{z-index:9999}mjx-container{overflow-x:auto}mjx-container>svg{display:inline-block;margin:auto}[class^=vpi-],[class*=" vpi-"],.vp-icon{width:1em;height:1em}[class^=vpi-].bg,[class*=" vpi-"].bg,.vp-icon.bg{background-size:100% 100%;background-color:transparent}[class^=vpi-]:not(.bg),[class*=" vpi-"]:not(.bg),.vp-icon:not(.bg){-webkit-mask:var(--icon) no-repeat;mask:var(--icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit}.vpi-align-left{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 6H3M15 12H3M17 18H3'/%3E%3C/svg%3E")}.vpi-arrow-right,.vpi-arrow-down,.vpi-arrow-left,.vpi-arrow-up{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E")}.vpi-chevron-right,.vpi-chevron-down,.vpi-chevron-left,.vpi-chevron-up{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E")}.vpi-chevron-down,.vpi-arrow-down{transform:rotate(90deg)}.vpi-chevron-left,.vpi-arrow-left{transform:rotate(180deg)}.vpi-chevron-up,.vpi-arrow-up{transform:rotate(-90deg)}.vpi-square-pen{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7'/%3E%3Cpath d='M18.375 2.625a2.121 2.121 0 1 1 3 3L12 15l-4 1 1-4Z'/%3E%3C/svg%3E")}.vpi-plus{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M12 5v14'/%3E%3C/svg%3E")}.vpi-sun{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/%3E%3C/svg%3E")}.vpi-moon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z'/%3E%3C/svg%3E")}.vpi-more-horizontal{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='1'/%3E%3Ccircle cx='19' cy='12' r='1'/%3E%3Ccircle cx='5' cy='12' r='1'/%3E%3C/svg%3E")}.vpi-languages{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m5 8 6 6M4 14l6-6 2-3M2 5h12M7 2h1M22 22l-5-10-5 10M14 18h6'/%3E%3C/svg%3E")}.vpi-heart{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E")}.vpi-search{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E")}.vpi-layout-list{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='7' height='7' x='3' y='3' rx='1'/%3E%3Crect width='7' height='7' x='3' y='14' rx='1'/%3E%3Cpath d='M14 4h7M14 9h7M14 15h7M14 20h7'/%3E%3C/svg%3E")}.vpi-delete{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M20 5H9l-7 7 7 7h11a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2ZM18 9l-6 6M12 9l6 6'/%3E%3C/svg%3E")}.vpi-corner-down-left{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m9 10-5 5 5 5'/%3E%3Cpath d='M20 4v7a4 4 0 0 1-4 4H4'/%3E%3C/svg%3E")}:root{--vp-icon-copy: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='rgba(128,128,128,1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3C/svg%3E");--vp-icon-copied: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='rgba(128,128,128,1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='m9 14 2 2 4-4'/%3E%3C/svg%3E")}.vpi-social-discord{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.107 13.107 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10.2 10.2 0 0 0 .372-.292.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.299 12.299 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.839 19.839 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418Z'/%3E%3C/svg%3E")}.vpi-social-facebook{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.101 23.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085 1.848-5.978 5.858-5.978.401 0 .955.042 1.468.103a8.68 8.68 0 0 1 1.141.195v3.325a8.623 8.623 0 0 0-.653-.036 26.805 26.805 0 0 0-.733-.009c-.707 0-1.259.096-1.675.309a1.686 1.686 0 0 0-.679.622c-.258.42-.374.995-.374 1.752v1.297h3.919l-.386 2.103-.287 1.564h-3.246v8.245C19.396 23.238 24 18.179 24 12.044c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.628 3.874 10.35 9.101 11.647Z'/%3E%3C/svg%3E")}.vpi-social-github{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E")}.vpi-social-instagram{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7.03.084c-1.277.06-2.149.264-2.91.563a5.874 5.874 0 0 0-2.124 1.388 5.878 5.878 0 0 0-1.38 2.127C.321 4.926.12 5.8.064 7.076.008 8.354-.005 8.764.001 12.023c.007 3.259.021 3.667.083 4.947.061 1.277.264 2.149.563 2.911.308.789.72 1.457 1.388 2.123a5.872 5.872 0 0 0 2.129 1.38c.763.295 1.636.496 2.913.552 1.278.056 1.689.069 4.947.063 3.257-.007 3.668-.021 4.947-.082 1.28-.06 2.147-.265 2.91-.563a5.881 5.881 0 0 0 2.123-1.388 5.881 5.881 0 0 0 1.38-2.129c.295-.763.496-1.636.551-2.912.056-1.28.07-1.69.063-4.948-.006-3.258-.02-3.667-.081-4.947-.06-1.28-.264-2.148-.564-2.911a5.892 5.892 0 0 0-1.387-2.123 5.857 5.857 0 0 0-2.128-1.38C19.074.322 18.202.12 16.924.066 15.647.009 15.236-.006 11.977 0 8.718.008 8.31.021 7.03.084m.14 21.693c-1.17-.05-1.805-.245-2.228-.408a3.736 3.736 0 0 1-1.382-.895 3.695 3.695 0 0 1-.9-1.378c-.165-.423-.363-1.058-.417-2.228-.06-1.264-.072-1.644-.08-4.848-.006-3.204.006-3.583.061-4.848.05-1.169.246-1.805.408-2.228.216-.561.477-.96.895-1.382a3.705 3.705 0 0 1 1.379-.9c.423-.165 1.057-.361 2.227-.417 1.265-.06 1.644-.072 4.848-.08 3.203-.006 3.583.006 4.85.062 1.168.05 1.804.244 2.227.408.56.216.96.475 1.382.895.421.42.681.817.9 1.378.165.422.362 1.056.417 2.227.06 1.265.074 1.645.08 4.848.005 3.203-.006 3.583-.061 4.848-.051 1.17-.245 1.805-.408 2.23-.216.56-.477.96-.896 1.38a3.705 3.705 0 0 1-1.378.9c-.422.165-1.058.362-2.226.418-1.266.06-1.645.072-4.85.079-3.204.007-3.582-.006-4.848-.06m9.783-16.192a1.44 1.44 0 1 0 1.437-1.442 1.44 1.44 0 0 0-1.437 1.442M5.839 12.012a6.161 6.161 0 1 0 12.323-.024 6.162 6.162 0 0 0-12.323.024M8 12.008A4 4 0 1 1 12.008 16 4 4 0 0 1 8 12.008'/%3E%3C/svg%3E")}.vpi-social-linkedin{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 0 1-2.063-2.065 2.064 2.064 0 1 1 2.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z'/%3E%3C/svg%3E")}.vpi-social-mastodon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23.268 5.313c-.35-2.578-2.617-4.61-5.304-5.004C17.51.242 15.792 0 11.813 0h-.03c-3.98 0-4.835.242-5.288.309C3.882.692 1.496 2.518.917 5.127.64 6.412.61 7.837.661 9.143c.074 1.874.088 3.745.26 5.611.118 1.24.325 2.47.62 3.68.55 2.237 2.777 4.098 4.96 4.857 2.336.792 4.849.923 7.256.38.265-.061.527-.132.786-.213.585-.184 1.27-.39 1.774-.753a.057.057 0 0 0 .023-.043v-1.809a.052.052 0 0 0-.02-.041.053.053 0 0 0-.046-.01 20.282 20.282 0 0 1-4.709.545c-2.73 0-3.463-1.284-3.674-1.818a5.593 5.593 0 0 1-.319-1.433.053.053 0 0 1 .066-.054c1.517.363 3.072.546 4.632.546.376 0 .75 0 1.125-.01 1.57-.044 3.224-.124 4.768-.422.038-.008.077-.015.11-.024 2.435-.464 4.753-1.92 4.989-5.604.008-.145.03-1.52.03-1.67.002-.512.167-3.63-.024-5.545zm-3.748 9.195h-2.561V8.29c0-1.309-.55-1.976-1.67-1.976-1.23 0-1.846.79-1.846 2.35v3.403h-2.546V8.663c0-1.56-.617-2.35-1.848-2.35-1.112 0-1.668.668-1.67 1.977v6.218H4.822V8.102c0-1.31.337-2.35 1.011-3.12.696-.77 1.608-1.164 2.74-1.164 1.311 0 2.302.5 2.962 1.498l.638 1.06.638-1.06c.66-.999 1.65-1.498 2.96-1.498 1.13 0 2.043.395 2.74 1.164.675.77 1.012 1.81 1.012 3.12z'/%3E%3C/svg%3E")}.vpi-social-npm{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M1.763 0C.786 0 0 .786 0 1.763v20.474C0 23.214.786 24 1.763 24h20.474c.977 0 1.763-.786 1.763-1.763V1.763C24 .786 23.214 0 22.237 0zM5.13 5.323l13.837.019-.009 13.836h-3.464l.01-10.382h-3.456L12.04 19.17H5.113z'/%3E%3C/svg%3E")}.vpi-social-slack{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5.042 15.165a2.528 2.528 0 0 1-2.52 2.523A2.528 2.528 0 0 1 0 15.165a2.527 2.527 0 0 1 2.522-2.52h2.52v2.52zm1.271 0a2.527 2.527 0 0 1 2.521-2.52 2.527 2.527 0 0 1 2.521 2.52v6.313A2.528 2.528 0 0 1 8.834 24a2.528 2.528 0 0 1-2.521-2.522v-6.313zM8.834 5.042a2.528 2.528 0 0 1-2.521-2.52A2.528 2.528 0 0 1 8.834 0a2.528 2.528 0 0 1 2.521 2.522v2.52H8.834zm0 1.271a2.528 2.528 0 0 1 2.521 2.521 2.528 2.528 0 0 1-2.521 2.521H2.522A2.528 2.528 0 0 1 0 8.834a2.528 2.528 0 0 1 2.522-2.521h6.312zm10.122 2.521a2.528 2.528 0 0 1 2.522-2.521A2.528 2.528 0 0 1 24 8.834a2.528 2.528 0 0 1-2.522 2.521h-2.522V8.834zm-1.268 0a2.528 2.528 0 0 1-2.523 2.521 2.527 2.527 0 0 1-2.52-2.521V2.522A2.527 2.527 0 0 1 15.165 0a2.528 2.528 0 0 1 2.523 2.522v6.312zm-2.523 10.122a2.528 2.528 0 0 1 2.523 2.522A2.528 2.528 0 0 1 15.165 24a2.527 2.527 0 0 1-2.52-2.522v-2.522h2.52zm0-1.268a2.527 2.527 0 0 1-2.52-2.523 2.526 2.526 0 0 1 2.52-2.52h6.313A2.527 2.527 0 0 1 24 15.165a2.528 2.528 0 0 1-2.522 2.523h-6.313z'/%3E%3C/svg%3E")}.vpi-social-twitter,.vpi-social-x{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z'/%3E%3C/svg%3E")}.vpi-social-youtube{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z'/%3E%3C/svg%3E")}.visually-hidden{position:absolute;width:1px;height:1px;white-space:nowrap;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden}.custom-block{border:1px solid transparent;border-radius:8px;padding:16px 16px 8px;line-height:24px;font-size:var(--vp-custom-block-font-size);color:var(--vp-c-text-2)}.custom-block.info{border-color:var(--vp-custom-block-info-border);color:var(--vp-custom-block-info-text);background-color:var(--vp-custom-block-info-bg)}.custom-block.info a,.custom-block.info code{color:var(--vp-c-brand-1)}.custom-block.info a:hover,.custom-block.info a:hover>code{color:var(--vp-c-brand-2)}.custom-block.info code{background-color:var(--vp-custom-block-info-code-bg)}.custom-block.note{border-color:var(--vp-custom-block-note-border);color:var(--vp-custom-block-note-text);background-color:var(--vp-custom-block-note-bg)}.custom-block.note a,.custom-block.note code{color:var(--vp-c-brand-1)}.custom-block.note a:hover,.custom-block.note a:hover>code{color:var(--vp-c-brand-2)}.custom-block.note code{background-color:var(--vp-custom-block-note-code-bg)}.custom-block.tip{border-color:var(--vp-custom-block-tip-border);color:var(--vp-custom-block-tip-text);background-color:var(--vp-custom-block-tip-bg)}.custom-block.tip a,.custom-block.tip code{color:var(--vp-c-tip-1)}.custom-block.tip a:hover,.custom-block.tip a:hover>code{color:var(--vp-c-tip-2)}.custom-block.tip code{background-color:var(--vp-custom-block-tip-code-bg)}.custom-block.important{border-color:var(--vp-custom-block-important-border);color:var(--vp-custom-block-important-text);background-color:var(--vp-custom-block-important-bg)}.custom-block.important a,.custom-block.important code{color:var(--vp-c-important-1)}.custom-block.important a:hover,.custom-block.important a:hover>code{color:var(--vp-c-important-2)}.custom-block.important code{background-color:var(--vp-custom-block-important-code-bg)}.custom-block.warning{border-color:var(--vp-custom-block-warning-border);color:var(--vp-custom-block-warning-text);background-color:var(--vp-custom-block-warning-bg)}.custom-block.warning a,.custom-block.warning code{color:var(--vp-c-warning-1)}.custom-block.warning a:hover,.custom-block.warning a:hover>code{color:var(--vp-c-warning-2)}.custom-block.warning code{background-color:var(--vp-custom-block-warning-code-bg)}.custom-block.danger{border-color:var(--vp-custom-block-danger-border);color:var(--vp-custom-block-danger-text);background-color:var(--vp-custom-block-danger-bg)}.custom-block.danger a,.custom-block.danger code{color:var(--vp-c-danger-1)}.custom-block.danger a:hover,.custom-block.danger a:hover>code{color:var(--vp-c-danger-2)}.custom-block.danger code{background-color:var(--vp-custom-block-danger-code-bg)}.custom-block.caution{border-color:var(--vp-custom-block-caution-border);color:var(--vp-custom-block-caution-text);background-color:var(--vp-custom-block-caution-bg)}.custom-block.caution a,.custom-block.caution code{color:var(--vp-c-caution-1)}.custom-block.caution a:hover,.custom-block.caution a:hover>code{color:var(--vp-c-caution-2)}.custom-block.caution code{background-color:var(--vp-custom-block-caution-code-bg)}.custom-block.details{border-color:var(--vp-custom-block-details-border);color:var(--vp-custom-block-details-text);background-color:var(--vp-custom-block-details-bg)}.custom-block.details a{color:var(--vp-c-brand-1)}.custom-block.details a:hover,.custom-block.details a:hover>code{color:var(--vp-c-brand-2)}.custom-block.details code{background-color:var(--vp-custom-block-details-code-bg)}.custom-block-title{font-weight:600}.custom-block p+p{margin:8px 0}.custom-block.details summary{margin:0 0 8px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none}.custom-block.details summary+p{margin:8px 0}.custom-block a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;transition:opacity .25s}.custom-block a:hover{opacity:.75}.custom-block code{font-size:var(--vp-custom-block-code-font-size)}.custom-block.custom-block th,.custom-block.custom-block blockquote>p{font-size:var(--vp-custom-block-font-size);color:inherit}.dark .vp-code span{color:var(--shiki-dark, inherit)}html:not(.dark) .vp-code span{color:var(--shiki-light, inherit)}.vp-code-group{margin-top:16px}.vp-code-group .tabs{position:relative;display:flex;margin-right:-24px;margin-left:-24px;padding:0 12px;background-color:var(--vp-code-tab-bg);overflow-x:auto;overflow-y:hidden;box-shadow:inset 0 -1px var(--vp-code-tab-divider)}@media (min-width: 640px){.vp-code-group .tabs{margin-right:0;margin-left:0;border-radius:8px 8px 0 0}}.vp-code-group .tabs input{position:fixed;opacity:0;pointer-events:none}.vp-code-group .tabs label{position:relative;display:inline-block;border-bottom:1px solid transparent;padding:0 12px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-code-tab-text-color);white-space:nowrap;cursor:pointer;transition:color .25s}.vp-code-group .tabs label:after{position:absolute;right:8px;bottom:-1px;left:8px;z-index:1;height:2px;border-radius:2px;content:"";background-color:transparent;transition:background-color .25s}.vp-code-group label:hover{color:var(--vp-code-tab-hover-text-color)}.vp-code-group input:checked+label{color:var(--vp-code-tab-active-text-color)}.vp-code-group input:checked+label:after{background-color:var(--vp-code-tab-active-bar-color)}.vp-code-group div[class*=language-],.vp-block{display:none;margin-top:0!important;border-top-left-radius:0!important;border-top-right-radius:0!important}.vp-code-group div[class*=language-].active,.vp-block.active{display:block}.vp-block{padding:20px 24px}.vp-doc h1,.vp-doc h2,.vp-doc h3,.vp-doc h4,.vp-doc h5,.vp-doc h6{position:relative;font-weight:600;outline:none}.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:28px}.vp-doc h2{margin:48px 0 16px;border-top:1px solid var(--vp-c-divider);padding-top:24px;letter-spacing:-.02em;line-height:32px;font-size:24px}.vp-doc h3{margin:32px 0 0;letter-spacing:-.01em;line-height:28px;font-size:20px}.vp-doc h4{margin:24px 0 0;letter-spacing:-.01em;line-height:24px;font-size:18px}.vp-doc .header-anchor{position:absolute;top:0;left:0;margin-left:-.87em;font-weight:500;-webkit-user-select:none;user-select:none;opacity:0;text-decoration:none;transition:color .25s,opacity .25s}.vp-doc .header-anchor:before{content:var(--vp-header-anchor-symbol)}.vp-doc h1:hover .header-anchor,.vp-doc h1 .header-anchor:focus,.vp-doc h2:hover .header-anchor,.vp-doc h2 .header-anchor:focus,.vp-doc h3:hover .header-anchor,.vp-doc h3 .header-anchor:focus,.vp-doc h4:hover .header-anchor,.vp-doc h4 .header-anchor:focus,.vp-doc h5:hover .header-anchor,.vp-doc h5 .header-anchor:focus,.vp-doc h6:hover .header-anchor,.vp-doc h6 .header-anchor:focus{opacity:1}@media (min-width: 768px){.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:32px}}.vp-doc h2 .header-anchor{top:24px}.vp-doc p,.vp-doc summary{margin:16px 0}.vp-doc p{line-height:28px}.vp-doc blockquote{margin:16px 0;border-left:2px solid var(--vp-c-divider);padding-left:16px;transition:border-color .5s;color:var(--vp-c-text-2)}.vp-doc blockquote>p{margin:0;font-size:16px;transition:color .5s}.vp-doc a{font-weight:500;color:var(--vp-c-brand-1);text-decoration:underline;text-underline-offset:2px;transition:color .25s,opacity .25s}.vp-doc a:hover{color:var(--vp-c-brand-2)}.vp-doc strong{font-weight:600}.vp-doc ul,.vp-doc ol{padding-left:1.25rem;margin:16px 0}.vp-doc ul{list-style:disc}.vp-doc ol{list-style:decimal}.vp-doc li+li{margin-top:8px}.vp-doc li>ol,.vp-doc li>ul{margin:8px 0 0}.vp-doc table{display:block;border-collapse:collapse;margin:20px 0;overflow-x:auto}.vp-doc tr{background-color:var(--vp-c-bg);border-top:1px solid var(--vp-c-divider);transition:background-color .5s}.vp-doc tr:nth-child(2n){background-color:var(--vp-c-bg-soft)}.vp-doc th,.vp-doc td{border:1px solid var(--vp-c-divider);padding:8px 16px}.vp-doc th{text-align:left;font-size:14px;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-doc td{font-size:14px}.vp-doc hr{margin:16px 0;border:none;border-top:1px solid var(--vp-c-divider)}.vp-doc .custom-block{margin:16px 0}.vp-doc .custom-block p{margin:8px 0;line-height:24px}.vp-doc .custom-block p:first-child{margin:0}.vp-doc .custom-block div[class*=language-]{margin:8px 0;border-radius:8px}.vp-doc .custom-block div[class*=language-] code{font-weight:400;background-color:transparent}.vp-doc .custom-block .vp-code-group .tabs{margin:0;border-radius:8px 8px 0 0}.vp-doc :not(pre,h1,h2,h3,h4,h5,h6)>code{font-size:var(--vp-code-font-size);color:var(--vp-code-color)}.vp-doc :not(pre)>code{border-radius:4px;padding:3px 6px;background-color:var(--vp-code-bg);transition:color .25s,background-color .5s}.vp-doc a>code{color:var(--vp-code-link-color)}.vp-doc a:hover>code{color:var(--vp-code-link-hover-color)}.vp-doc h1>code,.vp-doc h2>code,.vp-doc h3>code,.vp-doc h4>code{font-size:.9em}.vp-doc div[class*=language-],.vp-block{position:relative;margin:16px -24px;background-color:var(--vp-code-block-bg);overflow-x:auto;transition:background-color .5s}@media (min-width: 640px){.vp-doc div[class*=language-],.vp-block{border-radius:8px;margin:16px 0}}@media (max-width: 639px){.vp-doc li div[class*=language-]{border-radius:8px 0 0 8px}}.vp-doc div[class*=language-]+div[class*=language-],.vp-doc div[class$=-api]+div[class*=language-],.vp-doc div[class*=language-]+div[class$=-api]>div[class*=language-]{margin-top:-8px}.vp-doc [class*=language-] pre,.vp-doc [class*=language-] code{direction:ltr;text-align:left;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;-ms-hyphens:none;hyphens:none}.vp-doc [class*=language-] pre{position:relative;z-index:1;margin:0;padding:20px 0;background:transparent;overflow-x:auto}.vp-doc [class*=language-] code{display:block;padding:0 24px;width:fit-content;min-width:100%;line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-block-color);transition:color .5s}.vp-doc [class*=language-] code .highlighted{background-color:var(--vp-code-line-highlight-color);transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .highlighted.error{background-color:var(--vp-code-line-error-color)}.vp-doc [class*=language-] code .highlighted.warning{background-color:var(--vp-code-line-warning-color)}.vp-doc [class*=language-] code .diff{transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .diff:before{position:absolute;left:10px}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){filter:blur(.095rem);opacity:.4;transition:filter .35s,opacity .35s}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){opacity:.7;transition:filter .35s,opacity .35s}.vp-doc [class*=language-]:hover .has-focused-lines .line:not(.has-focus){filter:blur(0);opacity:1}.vp-doc [class*=language-] code .diff.remove{background-color:var(--vp-code-line-diff-remove-color);opacity:.7}.vp-doc [class*=language-] code .diff.remove:before{content:"-";color:var(--vp-code-line-diff-remove-symbol-color)}.vp-doc [class*=language-] code .diff.add{background-color:var(--vp-code-line-diff-add-color)}.vp-doc [class*=language-] code .diff.add:before{content:"+";color:var(--vp-code-line-diff-add-symbol-color)}.vp-doc div[class*=language-].line-numbers-mode{padding-left:32px}.vp-doc .line-numbers-wrapper{position:absolute;top:0;bottom:0;left:0;z-index:3;border-right:1px solid var(--vp-code-block-divider-color);padding-top:20px;width:32px;text-align:center;font-family:var(--vp-font-family-mono);line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-line-number-color);transition:border-color .5s,color .5s}.vp-doc [class*=language-]>button.copy{direction:ltr;position:absolute;top:12px;right:12px;z-index:3;border:1px solid var(--vp-code-copy-code-border-color);border-radius:4px;width:40px;height:40px;background-color:var(--vp-code-copy-code-bg);opacity:0;cursor:pointer;background-image:var(--vp-icon-copy);background-position:50%;background-size:20px;background-repeat:no-repeat;transition:border-color .25s,background-color .25s,opacity .25s}.vp-doc [class*=language-]:hover>button.copy,.vp-doc [class*=language-]>button.copy:focus{opacity:1}.vp-doc [class*=language-]>button.copy:hover,.vp-doc [class*=language-]>button.copy.copied{border-color:var(--vp-code-copy-code-hover-border-color);background-color:var(--vp-code-copy-code-hover-bg)}.vp-doc [class*=language-]>button.copy.copied,.vp-doc [class*=language-]>button.copy:hover.copied{border-radius:0 4px 4px 0;background-color:var(--vp-code-copy-code-hover-bg);background-image:var(--vp-icon-copied)}.vp-doc [class*=language-]>button.copy.copied:before,.vp-doc [class*=language-]>button.copy:hover.copied:before{position:relative;top:-1px;transform:translate(calc(-100% - 1px));display:flex;justify-content:center;align-items:center;border:1px solid var(--vp-code-copy-code-hover-border-color);border-right:0;border-radius:4px 0 0 4px;padding:0 10px;width:fit-content;height:40px;text-align:center;font-size:12px;font-weight:500;color:var(--vp-code-copy-code-active-text);background-color:var(--vp-code-copy-code-hover-bg);white-space:nowrap;content:var(--vp-code-copy-copied-text-content)}.vp-doc [class*=language-]>span.lang{position:absolute;top:2px;right:8px;z-index:2;font-size:12px;font-weight:500;color:var(--vp-code-lang-color);transition:color .4s,opacity .4s}.vp-doc [class*=language-]:hover>button.copy+span.lang,.vp-doc [class*=language-]>button.copy:focus+span.lang{opacity:0}.vp-doc .VPTeamMembers{margin-top:24px}.vp-doc .VPTeamMembers.small.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}.vp-doc .VPTeamMembers.small.count-2 .container,.vp-doc .VPTeamMembers.small.count-3 .container{max-width:100%!important}.vp-doc .VPTeamMembers.medium.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}:is(.vp-external-link-icon,.vp-doc a[href*="://"],.vp-doc a[target=_blank]):not(.no-icon):after{display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;background:currentColor;color:var(--vp-c-text-3);flex-shrink:0;--icon: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' %3E%3Cpath d='M0 0h24v24H0V0z' fill='none' /%3E%3Cpath d='M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z' /%3E%3C/svg%3E");-webkit-mask-image:var(--icon);mask-image:var(--icon)}.vp-external-link-icon:after{content:""}.external-link-icon-enabled :is(.vp-doc a[href*="://"],.vp-doc a[target=_blank]):after{content:"";color:currentColor}.vp-sponsor{border-radius:16px;overflow:hidden}.vp-sponsor.aside{border-radius:12px}.vp-sponsor-section+.vp-sponsor-section{margin-top:4px}.vp-sponsor-tier{margin:0 0 4px!important;text-align:center;letter-spacing:1px!important;line-height:24px;width:100%;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-sponsor.normal .vp-sponsor-tier{padding:13px 0 11px;font-size:14px}.vp-sponsor.aside .vp-sponsor-tier{padding:9px 0 7px;font-size:12px}.vp-sponsor-grid+.vp-sponsor-tier{margin-top:4px}.vp-sponsor-grid{display:flex;flex-wrap:wrap;gap:4px}.vp-sponsor-grid.xmini .vp-sponsor-grid-link{height:64px}.vp-sponsor-grid.xmini .vp-sponsor-grid-image{max-width:64px;max-height:22px}.vp-sponsor-grid.mini .vp-sponsor-grid-link{height:72px}.vp-sponsor-grid.mini .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.small .vp-sponsor-grid-link{height:96px}.vp-sponsor-grid.small .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.medium .vp-sponsor-grid-link{height:112px}.vp-sponsor-grid.medium .vp-sponsor-grid-image{max-width:120px;max-height:36px}.vp-sponsor-grid.big .vp-sponsor-grid-link{height:184px}.vp-sponsor-grid.big .vp-sponsor-grid-image{max-width:192px;max-height:56px}.vp-sponsor-grid[data-vp-grid="2"] .vp-sponsor-grid-item{width:calc((100% - 4px)/2)}.vp-sponsor-grid[data-vp-grid="3"] .vp-sponsor-grid-item{width:calc((100% - 4px * 2) / 3)}.vp-sponsor-grid[data-vp-grid="4"] .vp-sponsor-grid-item{width:calc((100% - 12px)/4)}.vp-sponsor-grid[data-vp-grid="5"] .vp-sponsor-grid-item{width:calc((100% - 16px)/5)}.vp-sponsor-grid[data-vp-grid="6"] .vp-sponsor-grid-item{width:calc((100% - 4px * 5) / 6)}.vp-sponsor-grid-item{flex-shrink:0;width:100%;background-color:var(--vp-c-bg-soft);transition:background-color .25s}.vp-sponsor-grid-item:hover{background-color:var(--vp-c-default-soft)}.vp-sponsor-grid-item:hover .vp-sponsor-grid-image{filter:grayscale(0) invert(0)}.vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.dark .vp-sponsor-grid-item:hover{background-color:var(--vp-c-white)}.dark .vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.vp-sponsor-grid-link{display:flex}.vp-sponsor-grid-box{display:flex;justify-content:center;align-items:center;width:100%}.vp-sponsor-grid-image{max-width:100%;filter:grayscale(1);transition:filter .25s}.dark .vp-sponsor-grid-image{filter:grayscale(1) invert(1)}.VPBadge{display:inline-block;margin-left:2px;border:1px solid transparent;border-radius:12px;padding:0 10px;line-height:22px;font-size:12px;font-weight:500;transform:translateY(-2px)}.VPBadge.small{padding:0 6px;line-height:18px;font-size:10px;transform:translateY(-8px)}.VPDocFooter .VPBadge{display:none}.vp-doc h1>.VPBadge{margin-top:4px;vertical-align:top}.vp-doc h2>.VPBadge{margin-top:3px;padding:0 8px;vertical-align:top}.vp-doc h3>.VPBadge{vertical-align:middle}.vp-doc h4>.VPBadge,.vp-doc h5>.VPBadge,.vp-doc h6>.VPBadge{vertical-align:middle;line-height:18px}.VPBadge.info{border-color:var(--vp-badge-info-border);color:var(--vp-badge-info-text);background-color:var(--vp-badge-info-bg)}.VPBadge.tip{border-color:var(--vp-badge-tip-border);color:var(--vp-badge-tip-text);background-color:var(--vp-badge-tip-bg)}.VPBadge.warning{border-color:var(--vp-badge-warning-border);color:var(--vp-badge-warning-text);background-color:var(--vp-badge-warning-bg)}.VPBadge.danger{border-color:var(--vp-badge-danger-border);color:var(--vp-badge-danger-text);background-color:var(--vp-badge-danger-bg)}.VPBackdrop[data-v-b06cdb19]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--vp-z-index-backdrop);background:var(--vp-backdrop-bg-color);transition:opacity .5s}.VPBackdrop.fade-enter-from[data-v-b06cdb19],.VPBackdrop.fade-leave-to[data-v-b06cdb19]{opacity:0}.VPBackdrop.fade-leave-active[data-v-b06cdb19]{transition-duration:.25s}@media (min-width: 1280px){.VPBackdrop[data-v-b06cdb19]{display:none}}.NotFound[data-v-951cab6c]{padding:64px 24px 96px;text-align:center}@media (min-width: 768px){.NotFound[data-v-951cab6c]{padding:96px 32px 168px}}.code[data-v-951cab6c]{line-height:64px;font-size:64px;font-weight:600}.title[data-v-951cab6c]{padding-top:12px;letter-spacing:2px;line-height:20px;font-size:20px;font-weight:700}.divider[data-v-951cab6c]{margin:24px auto 18px;width:64px;height:1px;background-color:var(--vp-c-divider)}.quote[data-v-951cab6c]{margin:0 auto;max-width:256px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.action[data-v-951cab6c]{padding-top:20px}.link[data-v-951cab6c]{display:inline-block;border:1px solid var(--vp-c-brand-1);border-radius:16px;padding:3px 16px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:border-color .25s,color .25s}.link[data-v-951cab6c]:hover{border-color:var(--vp-c-brand-2);color:var(--vp-c-brand-2)}.root[data-v-3f927ebe]{position:relative;z-index:1}.nested[data-v-3f927ebe]{padding-right:16px;padding-left:16px}.outline-link[data-v-3f927ebe]{display:block;line-height:32px;font-size:14px;font-weight:400;color:var(--vp-c-text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .5s}.outline-link[data-v-3f927ebe]:hover,.outline-link.active[data-v-3f927ebe]{color:var(--vp-c-text-1);transition:color .25s}.outline-link.nested[data-v-3f927ebe]{padding-left:13px}.VPDocAsideOutline[data-v-b38bf2ff]{display:none}.VPDocAsideOutline.has-outline[data-v-b38bf2ff]{display:block}.content[data-v-b38bf2ff]{position:relative;border-left:1px solid var(--vp-c-divider);padding-left:16px;font-size:13px;font-weight:500}.outline-marker[data-v-b38bf2ff]{position:absolute;top:32px;left:-1px;z-index:0;opacity:0;width:2px;border-radius:2px;height:18px;background-color:var(--vp-c-brand-1);transition:top .25s cubic-bezier(0,1,.5,1),background-color .5s,opacity .25s}.outline-title[data-v-b38bf2ff]{line-height:32px;font-size:14px;font-weight:600}.VPDocAside[data-v-6d7b3c46]{display:flex;flex-direction:column;flex-grow:1}.spacer[data-v-6d7b3c46]{flex-grow:1}.VPDocAside[data-v-6d7b3c46] .spacer+.VPDocAsideSponsors,.VPDocAside[data-v-6d7b3c46] .spacer+.VPDocAsideCarbonAds{margin-top:24px}.VPDocAside[data-v-6d7b3c46] .VPDocAsideSponsors+.VPDocAsideCarbonAds{margin-top:16px}.VPLastUpdated[data-v-475f71b8]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 640px){.VPLastUpdated[data-v-475f71b8]{line-height:32px;font-size:14px;font-weight:500}}.VPDocFooter[data-v-4f9813fa]{margin-top:64px}.edit-info[data-v-4f9813fa]{padding-bottom:18px}@media (min-width: 640px){.edit-info[data-v-4f9813fa]{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px}}.edit-link-button[data-v-4f9813fa]{display:flex;align-items:center;border:0;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.edit-link-button[data-v-4f9813fa]:hover{color:var(--vp-c-brand-2)}.edit-link-icon[data-v-4f9813fa]{margin-right:8px}.prev-next[data-v-4f9813fa]{border-top:1px solid var(--vp-c-divider);padding-top:24px;display:grid;grid-row-gap:8px}@media (min-width: 640px){.prev-next[data-v-4f9813fa]{grid-template-columns:repeat(2,1fr);grid-column-gap:16px}}.pager-link[data-v-4f9813fa]{display:block;border:1px solid var(--vp-c-divider);border-radius:8px;padding:11px 16px 13px;width:100%;height:100%;transition:border-color .25s}.pager-link[data-v-4f9813fa]:hover{border-color:var(--vp-c-brand-1)}.pager-link.next[data-v-4f9813fa]{margin-left:auto;text-align:right}.desc[data-v-4f9813fa]{display:block;line-height:20px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.title[data-v-4f9813fa]{display:block;line-height:20px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.VPDoc[data-v-83890dd9]{padding:32px 24px 96px;width:100%}@media (min-width: 768px){.VPDoc[data-v-83890dd9]{padding:48px 32px 128px}}@media (min-width: 960px){.VPDoc[data-v-83890dd9]{padding:48px 32px 0}.VPDoc:not(.has-sidebar) .container[data-v-83890dd9]{display:flex;justify-content:center;max-width:992px}.VPDoc:not(.has-sidebar) .content[data-v-83890dd9]{max-width:752px}}@media (min-width: 1280px){.VPDoc .container[data-v-83890dd9]{display:flex;justify-content:center}.VPDoc .aside[data-v-83890dd9]{display:block}}@media (min-width: 1440px){.VPDoc:not(.has-sidebar) .content[data-v-83890dd9]{max-width:784px}.VPDoc:not(.has-sidebar) .container[data-v-83890dd9]{max-width:1104px}}.container[data-v-83890dd9]{margin:0 auto;width:100%}.aside[data-v-83890dd9]{position:relative;display:none;order:2;flex-grow:1;padding-left:32px;width:100%;max-width:256px}.left-aside[data-v-83890dd9]{order:1;padding-left:unset;padding-right:32px}.aside-container[data-v-83890dd9]{position:fixed;top:0;padding-top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + var(--vp-doc-top-height, 0px) + 48px);width:224px;height:100vh;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.aside-container[data-v-83890dd9]::-webkit-scrollbar{display:none}.aside-curtain[data-v-83890dd9]{position:fixed;bottom:0;z-index:10;width:224px;height:32px;background:linear-gradient(transparent,var(--vp-c-bg) 70%)}.aside-content[data-v-83890dd9]{display:flex;flex-direction:column;min-height:calc(100vh - (var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 48px));padding-bottom:32px}.content[data-v-83890dd9]{position:relative;margin:0 auto;width:100%}@media (min-width: 960px){.content[data-v-83890dd9]{padding:0 32px 128px}}@media (min-width: 1280px){.content[data-v-83890dd9]{order:1;margin:0;min-width:640px}}.content-container[data-v-83890dd9]{margin:0 auto}.VPDoc.has-aside .content-container[data-v-83890dd9]{max-width:688px}.VPButton[data-v-906d7fb4]{display:inline-block;border:1px solid transparent;text-align:center;font-weight:600;white-space:nowrap;transition:color .25s,border-color .25s,background-color .25s}.VPButton[data-v-906d7fb4]:active{transition:color .1s,border-color .1s,background-color .1s}.VPButton.medium[data-v-906d7fb4]{border-radius:20px;padding:0 20px;line-height:38px;font-size:14px}.VPButton.big[data-v-906d7fb4]{border-radius:24px;padding:0 24px;line-height:46px;font-size:16px}.VPButton.brand[data-v-906d7fb4]{border-color:var(--vp-button-brand-border);color:var(--vp-button-brand-text);background-color:var(--vp-button-brand-bg)}.VPButton.brand[data-v-906d7fb4]:hover{border-color:var(--vp-button-brand-hover-border);color:var(--vp-button-brand-hover-text);background-color:var(--vp-button-brand-hover-bg)}.VPButton.brand[data-v-906d7fb4]:active{border-color:var(--vp-button-brand-active-border);color:var(--vp-button-brand-active-text);background-color:var(--vp-button-brand-active-bg)}.VPButton.alt[data-v-906d7fb4]{border-color:var(--vp-button-alt-border);color:var(--vp-button-alt-text);background-color:var(--vp-button-alt-bg)}.VPButton.alt[data-v-906d7fb4]:hover{border-color:var(--vp-button-alt-hover-border);color:var(--vp-button-alt-hover-text);background-color:var(--vp-button-alt-hover-bg)}.VPButton.alt[data-v-906d7fb4]:active{border-color:var(--vp-button-alt-active-border);color:var(--vp-button-alt-active-text);background-color:var(--vp-button-alt-active-bg)}.VPButton.sponsor[data-v-906d7fb4]{border-color:var(--vp-button-sponsor-border);color:var(--vp-button-sponsor-text);background-color:var(--vp-button-sponsor-bg)}.VPButton.sponsor[data-v-906d7fb4]:hover{border-color:var(--vp-button-sponsor-hover-border);color:var(--vp-button-sponsor-hover-text);background-color:var(--vp-button-sponsor-hover-bg)}.VPButton.sponsor[data-v-906d7fb4]:active{border-color:var(--vp-button-sponsor-active-border);color:var(--vp-button-sponsor-active-text);background-color:var(--vp-button-sponsor-active-bg)}html:not(.dark) .VPImage.dark[data-v-35a7d0b8]{display:none}.dark .VPImage.light[data-v-35a7d0b8]{display:none}.VPHero[data-v-955009fc]{margin-top:calc((var(--vp-nav-height) + var(--vp-layout-top-height, 0px)) * -1);padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 48px) 24px 48px}@media (min-width: 640px){.VPHero[data-v-955009fc]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 48px 64px}}@media (min-width: 960px){.VPHero[data-v-955009fc]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 64px 64px}}.container[data-v-955009fc]{display:flex;flex-direction:column;margin:0 auto;max-width:1152px}@media (min-width: 960px){.container[data-v-955009fc]{flex-direction:row}}.main[data-v-955009fc]{position:relative;z-index:10;order:2;flex-grow:1;flex-shrink:0}.VPHero.has-image .container[data-v-955009fc]{text-align:center}@media (min-width: 960px){.VPHero.has-image .container[data-v-955009fc]{text-align:left}}@media (min-width: 960px){.main[data-v-955009fc]{order:1;width:calc((100% / 3) * 2)}.VPHero.has-image .main[data-v-955009fc]{max-width:592px}}.name[data-v-955009fc],.text[data-v-955009fc]{max-width:392px;letter-spacing:-.4px;line-height:40px;font-size:32px;font-weight:700;white-space:pre-wrap}.VPHero.has-image .name[data-v-955009fc],.VPHero.has-image .text[data-v-955009fc]{margin:0 auto}.name[data-v-955009fc]{color:var(--vp-home-hero-name-color)}.clip[data-v-955009fc]{background:var(--vp-home-hero-name-background);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:var(--vp-home-hero-name-color)}@media (min-width: 640px){.name[data-v-955009fc],.text[data-v-955009fc]{max-width:576px;line-height:56px;font-size:48px}}@media (min-width: 960px){.name[data-v-955009fc],.text[data-v-955009fc]{line-height:64px;font-size:56px}.VPHero.has-image .name[data-v-955009fc],.VPHero.has-image .text[data-v-955009fc]{margin:0}}.tagline[data-v-955009fc]{padding-top:8px;max-width:392px;line-height:28px;font-size:18px;font-weight:500;white-space:pre-wrap;color:var(--vp-c-text-2)}.VPHero.has-image .tagline[data-v-955009fc]{margin:0 auto}@media (min-width: 640px){.tagline[data-v-955009fc]{padding-top:12px;max-width:576px;line-height:32px;font-size:20px}}@media (min-width: 960px){.tagline[data-v-955009fc]{line-height:36px;font-size:24px}.VPHero.has-image .tagline[data-v-955009fc]{margin:0}}.actions[data-v-955009fc]{display:flex;flex-wrap:wrap;margin:-6px;padding-top:24px}.VPHero.has-image .actions[data-v-955009fc]{justify-content:center}@media (min-width: 640px){.actions[data-v-955009fc]{padding-top:32px}}@media (min-width: 960px){.VPHero.has-image .actions[data-v-955009fc]{justify-content:flex-start}}.action[data-v-955009fc]{flex-shrink:0;padding:6px}.image[data-v-955009fc]{order:1;margin:-76px -24px -48px}@media (min-width: 640px){.image[data-v-955009fc]{margin:-108px -24px -48px}}@media (min-width: 960px){.image[data-v-955009fc]{flex-grow:1;order:2;margin:0;min-height:100%}}.image-container[data-v-955009fc]{position:relative;margin:0 auto;width:320px;height:320px}@media (min-width: 640px){.image-container[data-v-955009fc]{width:392px;height:392px}}@media (min-width: 960px){.image-container[data-v-955009fc]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;transform:translate(-32px,-32px)}}.image-bg[data-v-955009fc]{position:absolute;top:50%;left:50%;border-radius:50%;width:192px;height:192px;background-image:var(--vp-home-hero-image-background-image);filter:var(--vp-home-hero-image-filter);transform:translate(-50%,-50%)}@media (min-width: 640px){.image-bg[data-v-955009fc]{width:256px;height:256px}}@media (min-width: 960px){.image-bg[data-v-955009fc]{width:320px;height:320px}}[data-v-955009fc] .image-src{position:absolute;top:50%;left:50%;max-width:192px;max-height:192px;transform:translate(-50%,-50%)}@media (min-width: 640px){[data-v-955009fc] .image-src{max-width:256px;max-height:256px}}@media (min-width: 960px){[data-v-955009fc] .image-src{max-width:320px;max-height:320px}}.VPFeature[data-v-f5e9645b]{display:block;border:1px solid var(--vp-c-bg-soft);border-radius:12px;height:100%;background-color:var(--vp-c-bg-soft);transition:border-color .25s,background-color .25s}.VPFeature.link[data-v-f5e9645b]:hover{border-color:var(--vp-c-brand-1)}.box[data-v-f5e9645b]{display:flex;flex-direction:column;padding:24px;height:100%}.box[data-v-f5e9645b]>.VPImage{margin-bottom:20px}.icon[data-v-f5e9645b]{display:flex;justify-content:center;align-items:center;margin-bottom:20px;border-radius:6px;background-color:var(--vp-c-default-soft);width:48px;height:48px;font-size:24px;transition:background-color .25s}.title[data-v-f5e9645b]{line-height:24px;font-size:16px;font-weight:600}.details[data-v-f5e9645b]{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.link-text[data-v-f5e9645b]{padding-top:8px}.link-text-value[data-v-f5e9645b]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.link-text-icon[data-v-f5e9645b]{margin-left:6px}.VPFeatures[data-v-d0a190d7]{position:relative;padding:0 24px}@media (min-width: 640px){.VPFeatures[data-v-d0a190d7]{padding:0 48px}}@media (min-width: 960px){.VPFeatures[data-v-d0a190d7]{padding:0 64px}}.container[data-v-d0a190d7]{margin:0 auto;max-width:1152px}.items[data-v-d0a190d7]{display:flex;flex-wrap:wrap;margin:-8px}.item[data-v-d0a190d7]{padding:8px;width:100%}@media (min-width: 640px){.item.grid-2[data-v-d0a190d7],.item.grid-4[data-v-d0a190d7],.item.grid-6[data-v-d0a190d7]{width:50%}}@media (min-width: 768px){.item.grid-2[data-v-d0a190d7],.item.grid-4[data-v-d0a190d7]{width:50%}.item.grid-3[data-v-d0a190d7],.item.grid-6[data-v-d0a190d7]{width:calc(100% / 3)}}@media (min-width: 960px){.item.grid-4[data-v-d0a190d7]{width:25%}}.container[data-v-7a48a447]{margin:auto;width:100%;max-width:1280px;padding:0 24px}@media (min-width: 640px){.container[data-v-7a48a447]{padding:0 48px}}@media (min-width: 960px){.container[data-v-7a48a447]{width:100%;padding:0 64px}}.vp-doc[data-v-7a48a447] .VPHomeSponsors,.vp-doc[data-v-7a48a447] .VPTeamPage{margin-left:var(--vp-offset, calc(50% - 50vw) );margin-right:var(--vp-offset, calc(50% - 50vw) )}.vp-doc[data-v-7a48a447] .VPHomeSponsors h2{border-top:none;letter-spacing:normal}.vp-doc[data-v-7a48a447] .VPHomeSponsors a,.vp-doc[data-v-7a48a447] .VPTeamPage a{text-decoration:none}.VPHome[data-v-cbb6ec48]{margin-bottom:96px}@media (min-width: 768px){.VPHome[data-v-cbb6ec48]{margin-bottom:128px}}.VPContent[data-v-91765379]{flex-grow:1;flex-shrink:0;margin:var(--vp-layout-top-height, 0px) auto 0;width:100%}.VPContent.is-home[data-v-91765379]{width:100%;max-width:100%}.VPContent.has-sidebar[data-v-91765379]{margin:0}@media (min-width: 960px){.VPContent[data-v-91765379]{padding-top:var(--vp-nav-height)}.VPContent.has-sidebar[data-v-91765379]{margin:var(--vp-layout-top-height, 0px) 0 0;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPContent.has-sidebar[data-v-91765379]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.VPFooter[data-v-c970a860]{position:relative;z-index:var(--vp-z-index-footer);border-top:1px solid var(--vp-c-gutter);padding:32px 24px;background-color:var(--vp-c-bg)}.VPFooter.has-sidebar[data-v-c970a860]{display:none}.VPFooter[data-v-c970a860] a{text-decoration-line:underline;text-underline-offset:2px;transition:color .25s}.VPFooter[data-v-c970a860] a:hover{color:var(--vp-c-text-1)}@media (min-width: 768px){.VPFooter[data-v-c970a860]{padding:32px}}.container[data-v-c970a860]{margin:0 auto;max-width:var(--vp-layout-max-width);text-align:center}.message[data-v-c970a860],.copyright[data-v-c970a860]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.VPLocalNavOutlineDropdown[data-v-bc9dc845]{padding:12px 20px 11px}@media (min-width: 960px){.VPLocalNavOutlineDropdown[data-v-bc9dc845]{padding:12px 36px 11px}}.VPLocalNavOutlineDropdown button[data-v-bc9dc845]{display:block;font-size:12px;font-weight:500;line-height:24px;color:var(--vp-c-text-2);transition:color .5s;position:relative}.VPLocalNavOutlineDropdown button[data-v-bc9dc845]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPLocalNavOutlineDropdown button.open[data-v-bc9dc845]{color:var(--vp-c-text-1)}.icon[data-v-bc9dc845]{display:inline-block;vertical-align:middle;margin-left:2px;font-size:14px;transform:rotate(0);transition:transform .25s}@media (min-width: 960px){.VPLocalNavOutlineDropdown button[data-v-bc9dc845]{font-size:14px}.icon[data-v-bc9dc845]{font-size:16px}}.open>.icon[data-v-bc9dc845]{transform:rotate(90deg)}.items[data-v-bc9dc845]{position:absolute;top:40px;right:16px;left:16px;display:grid;gap:1px;border:1px solid var(--vp-c-border);border-radius:8px;background-color:var(--vp-c-gutter);max-height:calc(var(--vp-vh, 100vh) - 86px);overflow:hidden auto;box-shadow:var(--vp-shadow-3)}@media (min-width: 960px){.items[data-v-bc9dc845]{right:auto;left:calc(var(--vp-sidebar-width) + 32px);width:320px}}.header[data-v-bc9dc845]{background-color:var(--vp-c-bg-soft)}.top-link[data-v-bc9dc845]{display:block;padding:0 16px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.outline[data-v-bc9dc845]{padding:8px 0;background-color:var(--vp-c-bg-soft)}.flyout-enter-active[data-v-bc9dc845]{transition:all .2s ease-out}.flyout-leave-active[data-v-bc9dc845]{transition:all .15s ease-in}.flyout-enter-from[data-v-bc9dc845],.flyout-leave-to[data-v-bc9dc845]{opacity:0;transform:translateY(-16px)}.VPLocalNav[data-v-070ab83d]{position:sticky;top:0;left:0;z-index:var(--vp-z-index-local-nav);border-bottom:1px solid var(--vp-c-gutter);padding-top:var(--vp-layout-top-height, 0px);width:100%;background-color:var(--vp-local-nav-bg-color)}.VPLocalNav.fixed[data-v-070ab83d]{position:fixed}@media (min-width: 960px){.VPLocalNav[data-v-070ab83d]{top:var(--vp-nav-height)}.VPLocalNav.has-sidebar[data-v-070ab83d]{padding-left:var(--vp-sidebar-width)}.VPLocalNav.empty[data-v-070ab83d]{display:none}}@media (min-width: 1280px){.VPLocalNav[data-v-070ab83d]{display:none}}@media (min-width: 1440px){.VPLocalNav.has-sidebar[data-v-070ab83d]{padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.container[data-v-070ab83d]{display:flex;justify-content:space-between;align-items:center}.menu[data-v-070ab83d]{display:flex;align-items:center;padding:12px 24px 11px;line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.menu[data-v-070ab83d]:hover{color:var(--vp-c-text-1);transition:color .25s}@media (min-width: 768px){.menu[data-v-070ab83d]{padding:0 32px}}@media (min-width: 960px){.menu[data-v-070ab83d]{display:none}}.menu-icon[data-v-070ab83d]{margin-right:8px;font-size:14px}.VPOutlineDropdown[data-v-070ab83d]{padding:12px 24px 11px}@media (min-width: 768px){.VPOutlineDropdown[data-v-070ab83d]{padding:12px 32px 11px}}.VPSwitch[data-v-4a1c76db]{position:relative;border-radius:11px;display:block;width:40px;height:22px;flex-shrink:0;border:1px solid var(--vp-input-border-color);background-color:var(--vp-input-switch-bg-color);transition:border-color .25s!important}.VPSwitch[data-v-4a1c76db]:hover{border-color:var(--vp-c-brand-1)}.check[data-v-4a1c76db]{position:absolute;top:1px;left:1px;width:18px;height:18px;border-radius:50%;background-color:var(--vp-c-neutral-inverse);box-shadow:var(--vp-shadow-1);transition:transform .25s!important}.icon[data-v-4a1c76db]{position:relative;display:block;width:18px;height:18px;border-radius:50%;overflow:hidden}.icon[data-v-4a1c76db] [class^=vpi-]{position:absolute;top:3px;left:3px;width:12px;height:12px;color:var(--vp-c-text-2)}.dark .icon[data-v-4a1c76db] [class^=vpi-]{color:var(--vp-c-text-1);transition:opacity .25s!important}.sun[data-v-e40a8bb6]{opacity:1}.moon[data-v-e40a8bb6],.dark .sun[data-v-e40a8bb6]{opacity:0}.dark .moon[data-v-e40a8bb6]{opacity:1}.dark .VPSwitchAppearance[data-v-e40a8bb6] .check{transform:translate(18px)}.VPNavBarAppearance[data-v-af096f4a]{display:none}@media (min-width: 1280px){.VPNavBarAppearance[data-v-af096f4a]{display:flex;align-items:center}}.VPMenuGroup+.VPMenuLink[data-v-8b74d055]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.link[data-v-8b74d055]{display:block;border-radius:6px;padding:0 12px;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);white-space:nowrap;transition:background-color .25s,color .25s}.link[data-v-8b74d055]:hover{color:var(--vp-c-brand-1);background-color:var(--vp-c-default-soft)}.link.active[data-v-8b74d055]{color:var(--vp-c-brand-1)}.VPMenuGroup[data-v-48c802d0]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.VPMenuGroup[data-v-48c802d0]:first-child{margin-top:0;border-top:0;padding-top:0}.VPMenuGroup+.VPMenuGroup[data-v-48c802d0]{margin-top:12px;border-top:1px solid var(--vp-c-divider)}.title[data-v-48c802d0]{padding:0 12px;line-height:32px;font-size:14px;font-weight:600;color:var(--vp-c-text-2);white-space:nowrap;transition:color .25s}.VPMenu[data-v-7dd3104a]{border-radius:12px;padding:12px;min-width:128px;border:1px solid var(--vp-c-divider);background-color:var(--vp-c-bg-elv);box-shadow:var(--vp-shadow-3);transition:background-color .5s;max-height:calc(100vh - var(--vp-nav-height));overflow-y:auto}.VPMenu[data-v-7dd3104a] .group{margin:0 -12px;padding:0 12px 12px}.VPMenu[data-v-7dd3104a] .group+.group{border-top:1px solid var(--vp-c-divider);padding:11px 12px 12px}.VPMenu[data-v-7dd3104a] .group:last-child{padding-bottom:0}.VPMenu[data-v-7dd3104a] .group+.item{border-top:1px solid var(--vp-c-divider);padding:11px 16px 0}.VPMenu[data-v-7dd3104a] .item{padding:0 16px;white-space:nowrap}.VPMenu[data-v-7dd3104a] .label{flex-grow:1;line-height:28px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.VPMenu[data-v-7dd3104a] .action{padding-left:24px}.VPFlyout[data-v-04f5c5e9]{position:relative}.VPFlyout[data-v-04f5c5e9]:hover{color:var(--vp-c-brand-1);transition:color .25s}.VPFlyout:hover .text[data-v-04f5c5e9]{color:var(--vp-c-text-2)}.VPFlyout:hover .icon[data-v-04f5c5e9]{fill:var(--vp-c-text-2)}.VPFlyout.active .text[data-v-04f5c5e9]{color:var(--vp-c-brand-1)}.VPFlyout.active:hover .text[data-v-04f5c5e9]{color:var(--vp-c-brand-2)}.button[aria-expanded=false]+.menu[data-v-04f5c5e9]{opacity:0;visibility:hidden;transform:translateY(0)}.VPFlyout:hover .menu[data-v-04f5c5e9],.button[aria-expanded=true]+.menu[data-v-04f5c5e9]{opacity:1;visibility:visible;transform:translateY(0)}.button[data-v-04f5c5e9]{display:flex;align-items:center;padding:0 12px;height:var(--vp-nav-height);color:var(--vp-c-text-1);transition:color .5s}.text[data-v-04f5c5e9]{display:flex;align-items:center;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.option-icon[data-v-04f5c5e9]{margin-right:0;font-size:16px}.text-icon[data-v-04f5c5e9]{margin-left:4px;font-size:14px}.icon[data-v-04f5c5e9]{font-size:20px;transition:fill .25s}.menu[data-v-04f5c5e9]{position:absolute;top:calc(var(--vp-nav-height) / 2 + 20px);right:0;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s,transform .25s}.VPSocialLink[data-v-717b8b75]{display:flex;justify-content:center;align-items:center;width:36px;height:36px;color:var(--vp-c-text-2);transition:color .5s}.VPSocialLink[data-v-717b8b75]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPSocialLink[data-v-717b8b75]>svg,.VPSocialLink[data-v-717b8b75]>[class^=vpi-social-]{width:20px;height:20px;fill:currentColor}.VPSocialLinks[data-v-ee7a9424]{display:flex;justify-content:center}.VPNavBarExtra[data-v-925effce]{display:none;margin-right:-12px}@media (min-width: 768px){.VPNavBarExtra[data-v-925effce]{display:block}}@media (min-width: 1280px){.VPNavBarExtra[data-v-925effce]{display:none}}.trans-title[data-v-925effce]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.item.appearance[data-v-925effce],.item.social-links[data-v-925effce]{display:flex;align-items:center;padding:0 12px}.item.appearance[data-v-925effce]{min-width:176px}.appearance-action[data-v-925effce]{margin-right:-2px}.social-links-list[data-v-925effce]{margin:-4px -8px}.VPNavBarHamburger[data-v-5dea55bf]{display:flex;justify-content:center;align-items:center;width:48px;height:var(--vp-nav-height)}@media (min-width: 768px){.VPNavBarHamburger[data-v-5dea55bf]{display:none}}.container[data-v-5dea55bf]{position:relative;width:16px;height:14px;overflow:hidden}.VPNavBarHamburger:hover .top[data-v-5dea55bf]{top:0;left:0;transform:translate(4px)}.VPNavBarHamburger:hover .middle[data-v-5dea55bf]{top:6px;left:0;transform:translate(0)}.VPNavBarHamburger:hover .bottom[data-v-5dea55bf]{top:12px;left:0;transform:translate(8px)}.VPNavBarHamburger.active .top[data-v-5dea55bf]{top:6px;transform:translate(0) rotate(225deg)}.VPNavBarHamburger.active .middle[data-v-5dea55bf]{top:6px;transform:translate(16px)}.VPNavBarHamburger.active .bottom[data-v-5dea55bf]{top:6px;transform:translate(0) rotate(135deg)}.VPNavBarHamburger.active:hover .top[data-v-5dea55bf],.VPNavBarHamburger.active:hover .middle[data-v-5dea55bf],.VPNavBarHamburger.active:hover .bottom[data-v-5dea55bf]{background-color:var(--vp-c-text-2);transition:top .25s,background-color .25s,transform .25s}.top[data-v-5dea55bf],.middle[data-v-5dea55bf],.bottom[data-v-5dea55bf]{position:absolute;width:16px;height:2px;background-color:var(--vp-c-text-1);transition:top .25s,background-color .5s,transform .25s}.top[data-v-5dea55bf]{top:0;left:0;transform:translate(0)}.middle[data-v-5dea55bf]{top:6px;left:0;transform:translate(8px)}.bottom[data-v-5dea55bf]{top:12px;left:0;transform:translate(4px)}.VPNavBarMenuLink[data-v-ed5ac1f6]{display:flex;align-items:center;padding:0 12px;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.VPNavBarMenuLink.active[data-v-ed5ac1f6],.VPNavBarMenuLink[data-v-ed5ac1f6]:hover{color:var(--vp-c-brand-1)}.VPNavBarMenu[data-v-e6d46098]{display:none}@media (min-width: 768px){.VPNavBarMenu[data-v-e6d46098]{display:flex}}/*! @docsearch/css 3.6.2 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */:root{--docsearch-primary-color:#5468ff;--docsearch-text-color:#1c1e21;--docsearch-spacing:12px;--docsearch-icon-stroke-width:1.4;--docsearch-highlight-color:var(--docsearch-primary-color);--docsearch-muted-color:#969faf;--docsearch-container-background:rgba(101,108,133,.8);--docsearch-logo-color:#5468ff;--docsearch-modal-width:560px;--docsearch-modal-height:600px;--docsearch-modal-background:#f5f6f7;--docsearch-modal-shadow:inset 1px 1px 0 0 hsla(0,0%,100%,.5),0 3px 8px 0 #555a64;--docsearch-searchbox-height:56px;--docsearch-searchbox-background:#ebedf0;--docsearch-searchbox-focus-background:#fff;--docsearch-searchbox-shadow:inset 0 0 0 2px var(--docsearch-primary-color);--docsearch-hit-height:56px;--docsearch-hit-color:#444950;--docsearch-hit-active-color:#fff;--docsearch-hit-background:#fff;--docsearch-hit-shadow:0 1px 3px 0 #d4d9e1;--docsearch-key-gradient:linear-gradient(-225deg,#d5dbe4,#f8f8f8);--docsearch-key-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 2px 1px rgba(30,35,90,.4);--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 1px 0 rgba(30,35,90,.4);--docsearch-footer-height:44px;--docsearch-footer-background:#fff;--docsearch-footer-shadow:0 -1px 0 0 #e0e3e8,0 -3px 6px 0 rgba(69,98,155,.12)}html[data-theme=dark]{--docsearch-text-color:#f5f6f7;--docsearch-container-background:rgba(9,10,17,.8);--docsearch-modal-background:#15172a;--docsearch-modal-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;--docsearch-searchbox-background:#090a11;--docsearch-searchbox-focus-background:#000;--docsearch-hit-color:#bec3c9;--docsearch-hit-shadow:none;--docsearch-hit-background:#090a11;--docsearch-key-gradient:linear-gradient(-26.5deg,#565872,#31355b);--docsearch-key-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 2px 2px 0 rgba(3,4,9,.3);--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 1px 1px 0 rgba(3,4,9,.30196078431372547);--docsearch-footer-background:#1e2136;--docsearch-footer-shadow:inset 0 1px 0 0 rgba(73,76,106,.5),0 -4px 8px 0 rgba(0,0,0,.2);--docsearch-logo-color:#fff;--docsearch-muted-color:#7f8497}.DocSearch-Button{align-items:center;background:var(--docsearch-searchbox-background);border:0;border-radius:40px;color:var(--docsearch-muted-color);cursor:pointer;display:flex;font-weight:500;height:36px;justify-content:space-between;margin:0 0 0 16px;padding:0 8px;-webkit-user-select:none;user-select:none}.DocSearch-Button:active,.DocSearch-Button:focus,.DocSearch-Button:hover{background:var(--docsearch-searchbox-focus-background);box-shadow:var(--docsearch-searchbox-shadow);color:var(--docsearch-text-color);outline:none}.DocSearch-Button-Container{align-items:center;display:flex}.DocSearch-Search-Icon{stroke-width:1.6}.DocSearch-Button .DocSearch-Search-Icon{color:var(--docsearch-text-color)}.DocSearch-Button-Placeholder{font-size:1rem;padding:0 12px 0 6px}.DocSearch-Button-Keys{display:flex;min-width:calc(40px + .8em)}.DocSearch-Button-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:3px;box-shadow:var(--docsearch-key-shadow);color:var(--docsearch-muted-color);display:flex;height:18px;justify-content:center;margin-right:.4em;position:relative;padding:0 0 2px;border:0;top:-1px;width:20px}.DocSearch-Button-Key--pressed{transform:translate3d(0,1px,0);box-shadow:var(--docsearch-key-pressed-shadow)}@media (max-width:768px){.DocSearch-Button-Keys,.DocSearch-Button-Placeholder{display:none}}.DocSearch--active{overflow:hidden!important}.DocSearch-Container,.DocSearch-Container *{box-sizing:border-box}.DocSearch-Container{background-color:var(--docsearch-container-background);height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:200}.DocSearch-Container a{text-decoration:none}.DocSearch-Link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;font:inherit;margin:0;padding:0}.DocSearch-Modal{background:var(--docsearch-modal-background);border-radius:6px;box-shadow:var(--docsearch-modal-shadow);flex-direction:column;margin:60px auto auto;max-width:var(--docsearch-modal-width);position:relative}.DocSearch-SearchBar{display:flex;padding:var(--docsearch-spacing) var(--docsearch-spacing) 0}.DocSearch-Form{align-items:center;background:var(--docsearch-searchbox-focus-background);border-radius:4px;box-shadow:var(--docsearch-searchbox-shadow);display:flex;height:var(--docsearch-searchbox-height);margin:0;padding:0 var(--docsearch-spacing);position:relative;width:100%}.DocSearch-Input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--docsearch-text-color);flex:1;font:inherit;font-size:1.2em;height:100%;outline:none;padding:0 0 0 8px;width:80%}.DocSearch-Input::placeholder{color:var(--docsearch-muted-color);opacity:1}.DocSearch-Input::-webkit-search-cancel-button,.DocSearch-Input::-webkit-search-decoration,.DocSearch-Input::-webkit-search-results-button,.DocSearch-Input::-webkit-search-results-decoration{display:none}.DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{margin:0;padding:0}.DocSearch-MagnifierLabel,.DocSearch-Reset{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}.DocSearch-Container--Stalled .DocSearch-MagnifierLabel,.DocSearch-LoadingIndicator{display:none}.DocSearch-Container--Stalled .DocSearch-LoadingIndicator{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Reset{animation:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;right:0;stroke-width:var(--docsearch-icon-stroke-width)}}.DocSearch-Reset{animation:fade-in .1s ease-in forwards;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;padding:2px;right:0;stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Reset[hidden]{display:none}.DocSearch-Reset:hover{color:var(--docsearch-highlight-color)}.DocSearch-LoadingIndicator svg,.DocSearch-MagnifierLabel svg{height:24px;width:24px}.DocSearch-Cancel{display:none}.DocSearch-Dropdown{max-height:calc(var(--docsearch-modal-height) - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height));min-height:var(--docsearch-spacing);overflow-y:auto;overflow-y:overlay;padding:0 var(--docsearch-spacing);scrollbar-color:var(--docsearch-muted-color) var(--docsearch-modal-background);scrollbar-width:thin}.DocSearch-Dropdown::-webkit-scrollbar{width:12px}.DocSearch-Dropdown::-webkit-scrollbar-track{background:transparent}.DocSearch-Dropdown::-webkit-scrollbar-thumb{background-color:var(--docsearch-muted-color);border:3px solid var(--docsearch-modal-background);border-radius:20px}.DocSearch-Dropdown ul{list-style:none;margin:0;padding:0}.DocSearch-Label{font-size:.75em;line-height:1.6em}.DocSearch-Help,.DocSearch-Label{color:var(--docsearch-muted-color)}.DocSearch-Help{font-size:.9em;margin:0;-webkit-user-select:none;user-select:none}.DocSearch-Title{font-size:1.2em}.DocSearch-Logo a{display:flex}.DocSearch-Logo svg{color:var(--docsearch-logo-color);margin-left:8px}.DocSearch-Hits:last-of-type{margin-bottom:24px}.DocSearch-Hits mark{background:none;color:var(--docsearch-highlight-color)}.DocSearch-HitsFooter{color:var(--docsearch-muted-color);display:flex;font-size:.85em;justify-content:center;margin-bottom:var(--docsearch-spacing);padding:var(--docsearch-spacing)}.DocSearch-HitsFooter a{border-bottom:1px solid;color:inherit}.DocSearch-Hit{border-radius:4px;display:flex;padding-bottom:4px;position:relative}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--deleting{transition:none}}.DocSearch-Hit--deleting{opacity:0;transition:all .25s linear}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--favoriting{transition:none}}.DocSearch-Hit--favoriting{transform:scale(0);transform-origin:top center;transition:all .25s linear;transition-delay:.25s}.DocSearch-Hit a{background:var(--docsearch-hit-background);border-radius:4px;box-shadow:var(--docsearch-hit-shadow);display:block;padding-left:var(--docsearch-spacing);width:100%}.DocSearch-Hit-source{background:var(--docsearch-modal-background);color:var(--docsearch-highlight-color);font-size:.85em;font-weight:600;line-height:32px;margin:0 -4px;padding:8px 4px 0;position:sticky;top:0;z-index:10}.DocSearch-Hit-Tree{color:var(--docsearch-muted-color);height:var(--docsearch-hit-height);opacity:.5;stroke-width:var(--docsearch-icon-stroke-width);width:24px}.DocSearch-Hit[aria-selected=true] a{background-color:var(--docsearch-highlight-color)}.DocSearch-Hit[aria-selected=true] mark{text-decoration:underline}.DocSearch-Hit-Container{align-items:center;color:var(--docsearch-hit-color);display:flex;flex-direction:row;height:var(--docsearch-hit-height);padding:0 var(--docsearch-spacing) 0 0}.DocSearch-Hit-icon{height:20px;width:20px}.DocSearch-Hit-action,.DocSearch-Hit-icon{color:var(--docsearch-muted-color);stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Hit-action{align-items:center;display:flex;height:22px;width:22px}.DocSearch-Hit-action svg{display:block;height:18px;width:18px}.DocSearch-Hit-action+.DocSearch-Hit-action{margin-left:6px}.DocSearch-Hit-action-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:inherit;cursor:pointer;padding:2px}svg.DocSearch-Hit-Select-Icon{display:none}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Select-Icon{display:block}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:background-color .1s ease-in}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{transition:none}}.DocSearch-Hit-action-button:focus path,.DocSearch-Hit-action-button:hover path{fill:#fff}.DocSearch-Hit-content-wrapper{display:flex;flex:1 1 auto;flex-direction:column;font-weight:500;justify-content:center;line-height:1.2em;margin:0 8px;overflow-x:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:80%}.DocSearch-Hit-title{font-size:.9em}.DocSearch-Hit-path{color:var(--docsearch-muted-color);font-size:.75em}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-action,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-icon,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-path,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-text,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-title,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Tree,.DocSearch-Hit[aria-selected=true] mark{color:var(--docsearch-hit-active-color)!important}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:none}}.DocSearch-ErrorScreen,.DocSearch-NoResults,.DocSearch-StartScreen{font-size:.9em;margin:0 auto;padding:36px 0;text-align:center;width:80%}.DocSearch-Screen-Icon{color:var(--docsearch-muted-color);padding-bottom:12px}.DocSearch-NoResults-Prefill-List{display:inline-block;padding-bottom:24px;text-align:left}.DocSearch-NoResults-Prefill-List ul{display:inline-block;padding:8px 0 0}.DocSearch-NoResults-Prefill-List li{list-style-position:inside;list-style-type:"» "}.DocSearch-Prefill{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:1em;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;font-size:1em;font-weight:700;padding:0}.DocSearch-Prefill:focus,.DocSearch-Prefill:hover{outline:none;text-decoration:underline}.DocSearch-Footer{align-items:center;background:var(--docsearch-footer-background);border-radius:0 0 8px 8px;box-shadow:var(--docsearch-footer-shadow);display:flex;flex-direction:row-reverse;flex-shrink:0;height:var(--docsearch-footer-height);justify-content:space-between;padding:0 var(--docsearch-spacing);position:relative;-webkit-user-select:none;user-select:none;width:100%;z-index:300}.DocSearch-Commands{color:var(--docsearch-muted-color);display:flex;list-style:none;margin:0;padding:0}.DocSearch-Commands li{align-items:center;display:flex}.DocSearch-Commands li:not(:last-of-type){margin-right:.8em}.DocSearch-Commands-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:2px;box-shadow:var(--docsearch-key-shadow);display:flex;height:18px;justify-content:center;margin-right:.4em;padding:0 0 1px;color:var(--docsearch-muted-color);border:0;width:20px}.DocSearch-VisuallyHiddenForAccessibility{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@media (max-width:768px){:root{--docsearch-spacing:10px;--docsearch-footer-height:40px}.DocSearch-Dropdown{height:100%}.DocSearch-Container{height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);position:absolute}.DocSearch-Footer{border-radius:0;bottom:0;position:absolute}.DocSearch-Hit-content-wrapper{display:flex;position:relative;width:80%}.DocSearch-Modal{border-radius:0;box-shadow:none;height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);margin:0;max-width:100%;width:100%}.DocSearch-Dropdown{max-height:calc(var(--docsearch-vh, 1vh)*100 - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height))}.DocSearch-Cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;flex:none;font:inherit;font-size:1em;font-weight:500;margin-left:var(--docsearch-spacing);outline:none;overflow:hidden;padding:0;-webkit-user-select:none;user-select:none;white-space:nowrap}.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}[class*=DocSearch]{--docsearch-primary-color: var(--vp-c-brand-1);--docsearch-highlight-color: var(--docsearch-primary-color);--docsearch-text-color: var(--vp-c-text-1);--docsearch-muted-color: var(--vp-c-text-2);--docsearch-searchbox-shadow: none;--docsearch-searchbox-background: transparent;--docsearch-searchbox-focus-background: transparent;--docsearch-key-gradient: transparent;--docsearch-key-shadow: none;--docsearch-modal-background: var(--vp-c-bg-soft);--docsearch-footer-background: var(--vp-c-bg)}.dark [class*=DocSearch]{--docsearch-modal-shadow: none;--docsearch-footer-shadow: none;--docsearch-logo-color: var(--vp-c-text-2);--docsearch-hit-background: var(--vp-c-default-soft);--docsearch-hit-color: var(--vp-c-text-2);--docsearch-hit-shadow: none}.DocSearch-Button{display:flex;justify-content:center;align-items:center;margin:0;padding:0;width:48px;height:55px;background:transparent;transition:border-color .25s}.DocSearch-Button:hover{background:transparent}.DocSearch-Button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}.DocSearch-Button-Key--pressed{transform:none;box-shadow:none}.DocSearch-Button:focus:not(:focus-visible){outline:none!important}@media (min-width: 768px){.DocSearch-Button{justify-content:flex-start;border:1px solid transparent;border-radius:8px;padding:0 10px 0 12px;width:100%;height:40px;background-color:var(--vp-c-bg-alt)}.DocSearch-Button:hover{border-color:var(--vp-c-brand-1);background:var(--vp-c-bg-alt)}}.DocSearch-Button .DocSearch-Button-Container{display:flex;align-items:center}.DocSearch-Button .DocSearch-Search-Icon{position:relative;width:16px;height:16px;color:var(--vp-c-text-1);fill:currentColor;transition:color .5s}.DocSearch-Button:hover .DocSearch-Search-Icon{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Search-Icon{top:1px;margin-right:8px;width:14px;height:14px;color:var(--vp-c-text-2)}}.DocSearch-Button .DocSearch-Button-Placeholder{display:none;margin-top:2px;padding:0 16px 0 0;font-size:13px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.DocSearch-Button:hover .DocSearch-Button-Placeholder{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Placeholder{display:inline-block}}.DocSearch-Button .DocSearch-Button-Keys{direction:ltr;display:none;min-width:auto}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Keys{display:flex;align-items:center}}.DocSearch-Button .DocSearch-Button-Key{display:block;margin:2px 0 0;border:1px solid var(--vp-c-divider);border-right:none;border-radius:4px 0 0 4px;padding-left:6px;min-width:0;width:auto;height:22px;line-height:22px;font-family:var(--vp-font-family-base);font-size:12px;font-weight:500;transition:color .5s,border-color .5s}.DocSearch-Button .DocSearch-Button-Key+.DocSearch-Button-Key{border-right:1px solid var(--vp-c-divider);border-left:none;border-radius:0 4px 4px 0;padding-left:2px;padding-right:6px}.DocSearch-Button .DocSearch-Button-Key:first-child{font-size:0!important}.DocSearch-Button .DocSearch-Button-Key:first-child:after{content:"Ctrl";font-size:12px;letter-spacing:normal;color:var(--docsearch-muted-color)}.mac .DocSearch-Button .DocSearch-Button-Key:first-child:after{content:"⌘"}.DocSearch-Button .DocSearch-Button-Key:first-child>*{display:none}.DocSearch-Search-Icon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' stroke-width='1.6' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' d='m14.386 14.386 4.088 4.088-4.088-4.088A7.533 7.533 0 1 1 3.733 3.733a7.533 7.533 0 0 1 10.653 10.653z'/%3E%3C/svg%3E")}.VPNavBarSearch{display:flex;align-items:center}@media (min-width: 768px){.VPNavBarSearch{flex-grow:1;padding-left:24px}}@media (min-width: 960px){.VPNavBarSearch{padding-left:32px}}.dark .DocSearch-Footer{border-top:1px solid var(--vp-c-divider)}.DocSearch-Form{border:1px solid var(--vp-c-brand-1);background-color:var(--vp-c-white)}.dark .DocSearch-Form{background-color:var(--vp-c-default-soft)}.DocSearch-Screen-Icon>svg{margin:auto}.VPNavBarSocialLinks[data-v-164c457f]{display:none}@media (min-width: 1280px){.VPNavBarSocialLinks[data-v-164c457f]{display:flex;align-items:center}}.title[data-v-28a961f9]{display:flex;align-items:center;border-bottom:1px solid transparent;width:100%;height:var(--vp-nav-height);font-size:16px;font-weight:600;color:var(--vp-c-text-1);transition:opacity .25s}@media (min-width: 960px){.title[data-v-28a961f9]{flex-shrink:0}.VPNavBarTitle.has-sidebar .title[data-v-28a961f9]{border-bottom-color:var(--vp-c-divider)}}[data-v-28a961f9] .logo{margin-right:8px;height:var(--vp-nav-logo-height)}.VPNavBarTranslations[data-v-c80d9ad0]{display:none}@media (min-width: 1280px){.VPNavBarTranslations[data-v-c80d9ad0]{display:flex;align-items:center}}.title[data-v-c80d9ad0]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.VPNavBar[data-v-822684d1]{position:relative;height:var(--vp-nav-height);pointer-events:none;white-space:nowrap;transition:background-color .25s}.VPNavBar.screen-open[data-v-822684d1]{transition:none;background-color:var(--vp-nav-bg-color);border-bottom:1px solid var(--vp-c-divider)}.VPNavBar[data-v-822684d1]:not(.home){background-color:var(--vp-nav-bg-color)}@media (min-width: 960px){.VPNavBar[data-v-822684d1]:not(.home){background-color:transparent}.VPNavBar[data-v-822684d1]:not(.has-sidebar):not(.home.top){background-color:var(--vp-nav-bg-color)}}.wrapper[data-v-822684d1]{padding:0 8px 0 24px}@media (min-width: 768px){.wrapper[data-v-822684d1]{padding:0 32px}}@media (min-width: 960px){.VPNavBar.has-sidebar .wrapper[data-v-822684d1]{padding:0}}.container[data-v-822684d1]{display:flex;justify-content:space-between;margin:0 auto;max-width:calc(var(--vp-layout-max-width) - 64px);height:var(--vp-nav-height);pointer-events:none}.container>.title[data-v-822684d1],.container>.content[data-v-822684d1]{pointer-events:none}.container[data-v-822684d1] *{pointer-events:auto}@media (min-width: 960px){.VPNavBar.has-sidebar .container[data-v-822684d1]{max-width:100%}}.title[data-v-822684d1]{flex-shrink:0;height:calc(var(--vp-nav-height) - 1px);transition:background-color .5s}@media (min-width: 960px){.VPNavBar.has-sidebar .title[data-v-822684d1]{position:absolute;top:0;left:0;z-index:2;padding:0 32px;width:var(--vp-sidebar-width);height:var(--vp-nav-height);background-color:transparent}}@media (min-width: 1440px){.VPNavBar.has-sidebar .title[data-v-822684d1]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}.content[data-v-822684d1]{flex-grow:1}@media (min-width: 960px){.VPNavBar.has-sidebar .content[data-v-822684d1]{position:relative;z-index:1;padding-right:32px;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .content[data-v-822684d1]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2 + 32px);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.content-body[data-v-822684d1]{display:flex;justify-content:flex-end;align-items:center;height:var(--vp-nav-height);transition:background-color .5s}@media (min-width: 960px){.VPNavBar:not(.home.top) .content-body[data-v-822684d1]{position:relative;background-color:var(--vp-nav-bg-color)}.VPNavBar:not(.has-sidebar):not(.home.top) .content-body[data-v-822684d1]{background-color:transparent}}@media (max-width: 767px){.content-body[data-v-822684d1]{column-gap:.5rem}}.menu+.translations[data-v-822684d1]:before,.menu+.appearance[data-v-822684d1]:before,.menu+.social-links[data-v-822684d1]:before,.translations+.appearance[data-v-822684d1]:before,.appearance+.social-links[data-v-822684d1]:before{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--vp-c-divider);content:""}.menu+.appearance[data-v-822684d1]:before,.translations+.appearance[data-v-822684d1]:before{margin-right:16px}.appearance+.social-links[data-v-822684d1]:before{margin-left:16px}.social-links[data-v-822684d1]{margin-right:-8px}.divider[data-v-822684d1]{width:100%;height:1px}@media (min-width: 960px){.VPNavBar.has-sidebar .divider[data-v-822684d1]{padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .divider[data-v-822684d1]{padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.divider-line[data-v-822684d1]{width:100%;height:1px;transition:background-color .5s}.VPNavBar:not(.home) .divider-line[data-v-822684d1]{background-color:var(--vp-c-gutter)}@media (min-width: 960px){.VPNavBar:not(.home.top) .divider-line[data-v-822684d1]{background-color:var(--vp-c-gutter)}.VPNavBar:not(.has-sidebar):not(.home.top) .divider[data-v-822684d1]{background-color:var(--vp-c-gutter)}}.VPNavScreenAppearance[data-v-ffb44008]{display:flex;justify-content:space-between;align-items:center;border-radius:8px;padding:12px 14px 12px 16px;background-color:var(--vp-c-bg-soft)}.text[data-v-ffb44008]{line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.VPNavScreenMenuLink[data-v-27d04aeb]{display:block;border-bottom:1px solid var(--vp-c-divider);padding:12px 0 11px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:border-color .25s,color .25s}.VPNavScreenMenuLink[data-v-27d04aeb]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupLink[data-v-7179dbb7]{display:block;margin-left:12px;line-height:32px;font-size:14px;font-weight:400;color:var(--vp-c-text-1);transition:color .25s}.VPNavScreenMenuGroupLink[data-v-7179dbb7]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupSection[data-v-4b8941ac]{display:block}.title[data-v-4b8941ac]{line-height:32px;font-size:13px;font-weight:700;color:var(--vp-c-text-2);transition:color .25s}.VPNavScreenMenuGroup[data-v-875057a5]{border-bottom:1px solid var(--vp-c-divider);height:48px;overflow:hidden;transition:border-color .5s}.VPNavScreenMenuGroup .items[data-v-875057a5]{visibility:hidden}.VPNavScreenMenuGroup.open .items[data-v-875057a5]{visibility:visible}.VPNavScreenMenuGroup.open[data-v-875057a5]{padding-bottom:10px;height:auto}.VPNavScreenMenuGroup.open .button[data-v-875057a5]{padding-bottom:6px;color:var(--vp-c-brand-1)}.VPNavScreenMenuGroup.open .button-icon[data-v-875057a5]{transform:rotate(45deg)}.button[data-v-875057a5]{display:flex;justify-content:space-between;align-items:center;padding:12px 4px 11px 0;width:100%;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.button[data-v-875057a5]:hover{color:var(--vp-c-brand-1)}.button-icon[data-v-875057a5]{transition:transform .25s}.group[data-v-875057a5]:first-child{padding-top:0}.group+.group[data-v-875057a5],.group+.item[data-v-875057a5]{padding-top:4px}.VPNavScreenTranslations[data-v-362991c2]{height:24px;overflow:hidden}.VPNavScreenTranslations.open[data-v-362991c2]{height:auto}.title[data-v-362991c2]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-text-1)}.icon[data-v-362991c2]{font-size:16px}.icon.lang[data-v-362991c2]{margin-right:8px}.icon.chevron[data-v-362991c2]{margin-left:4px}.list[data-v-362991c2]{padding:4px 0 0 24px}.link[data-v-362991c2]{line-height:32px;font-size:13px;color:var(--vp-c-text-1)}.VPNavScreen[data-v-833aabba]{position:fixed;top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px));right:0;bottom:0;left:0;padding:0 32px;width:100%;background-color:var(--vp-nav-screen-bg-color);overflow-y:auto;transition:background-color .25s;pointer-events:auto}.VPNavScreen.fade-enter-active[data-v-833aabba],.VPNavScreen.fade-leave-active[data-v-833aabba]{transition:opacity .25s}.VPNavScreen.fade-enter-active .container[data-v-833aabba],.VPNavScreen.fade-leave-active .container[data-v-833aabba]{transition:transform .25s ease}.VPNavScreen.fade-enter-from[data-v-833aabba],.VPNavScreen.fade-leave-to[data-v-833aabba]{opacity:0}.VPNavScreen.fade-enter-from .container[data-v-833aabba],.VPNavScreen.fade-leave-to .container[data-v-833aabba]{transform:translateY(-8px)}@media (min-width: 768px){.VPNavScreen[data-v-833aabba]{display:none}}.container[data-v-833aabba]{margin:0 auto;padding:24px 0 96px;max-width:288px}.menu+.translations[data-v-833aabba],.menu+.appearance[data-v-833aabba],.translations+.appearance[data-v-833aabba]{margin-top:24px}.menu+.social-links[data-v-833aabba]{margin-top:16px}.appearance+.social-links[data-v-833aabba]{margin-top:16px}.VPNav[data-v-f1e365da]{position:relative;top:var(--vp-layout-top-height, 0px);left:0;z-index:var(--vp-z-index-nav);width:100%;pointer-events:none;transition:background-color .5s}@media (min-width: 960px){.VPNav[data-v-f1e365da]{position:fixed}}.VPSidebarItem.level-0[data-v-196b2e5f]{padding-bottom:24px}.VPSidebarItem.collapsed.level-0[data-v-196b2e5f]{padding-bottom:10px}.item[data-v-196b2e5f]{position:relative;display:flex;width:100%}.VPSidebarItem.collapsible>.item[data-v-196b2e5f]{cursor:pointer}.indicator[data-v-196b2e5f]{position:absolute;top:6px;bottom:6px;left:-17px;width:2px;border-radius:2px;transition:background-color .25s}.VPSidebarItem.level-2.is-active>.item>.indicator[data-v-196b2e5f],.VPSidebarItem.level-3.is-active>.item>.indicator[data-v-196b2e5f],.VPSidebarItem.level-4.is-active>.item>.indicator[data-v-196b2e5f],.VPSidebarItem.level-5.is-active>.item>.indicator[data-v-196b2e5f]{background-color:var(--vp-c-brand-1)}.link[data-v-196b2e5f]{display:flex;align-items:center;flex-grow:1}.text[data-v-196b2e5f]{flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;transition:color .25s}.VPSidebarItem.level-0 .text[data-v-196b2e5f]{font-weight:700;color:var(--vp-c-text-1)}.VPSidebarItem.level-1 .text[data-v-196b2e5f],.VPSidebarItem.level-2 .text[data-v-196b2e5f],.VPSidebarItem.level-3 .text[data-v-196b2e5f],.VPSidebarItem.level-4 .text[data-v-196b2e5f],.VPSidebarItem.level-5 .text[data-v-196b2e5f]{font-weight:500;color:var(--vp-c-text-2)}.VPSidebarItem.level-0.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-1.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-2.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-3.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-4.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-5.is-link>.item>.link:hover .text[data-v-196b2e5f]{color:var(--vp-c-brand-1)}.VPSidebarItem.level-0.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-1.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-2.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-3.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-4.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-5.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-0.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-1.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-2.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-3.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-4.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-5.has-active>.item>.link>.text[data-v-196b2e5f]{color:var(--vp-c-text-1)}.VPSidebarItem.level-0.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-1.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-2.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-3.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-4.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-5.is-active>.item .link>.text[data-v-196b2e5f]{color:var(--vp-c-brand-1)}.caret[data-v-196b2e5f]{display:flex;justify-content:center;align-items:center;margin-right:-7px;width:32px;height:32px;color:var(--vp-c-text-3);cursor:pointer;transition:color .25s;flex-shrink:0}.item:hover .caret[data-v-196b2e5f]{color:var(--vp-c-text-2)}.item:hover .caret[data-v-196b2e5f]:hover{color:var(--vp-c-text-1)}.caret-icon[data-v-196b2e5f]{font-size:18px;transform:rotate(90deg);transition:transform .25s}.VPSidebarItem.collapsed .caret-icon[data-v-196b2e5f]{transform:rotate(0)}.VPSidebarItem.level-1 .items[data-v-196b2e5f],.VPSidebarItem.level-2 .items[data-v-196b2e5f],.VPSidebarItem.level-3 .items[data-v-196b2e5f],.VPSidebarItem.level-4 .items[data-v-196b2e5f],.VPSidebarItem.level-5 .items[data-v-196b2e5f]{border-left:1px solid var(--vp-c-divider);padding-left:16px}.VPSidebarItem.collapsed .items[data-v-196b2e5f]{display:none}.no-transition[data-v-9e426adc] .caret-icon{transition:none}.group+.group[data-v-9e426adc]{border-top:1px solid var(--vp-c-divider);padding-top:10px}@media (min-width: 960px){.group[data-v-9e426adc]{padding-top:10px;width:calc(var(--vp-sidebar-width) - 64px)}}.VPSidebar[data-v-18756405]{position:fixed;top:var(--vp-layout-top-height, 0px);bottom:0;left:0;z-index:var(--vp-z-index-sidebar);padding:32px 32px 96px;width:calc(100vw - 64px);max-width:320px;background-color:var(--vp-sidebar-bg-color);opacity:0;box-shadow:var(--vp-c-shadow-3);overflow-x:hidden;overflow-y:auto;transform:translate(-100%);transition:opacity .5s,transform .25s ease;overscroll-behavior:contain}.VPSidebar.open[data-v-18756405]{opacity:1;visibility:visible;transform:translate(0);transition:opacity .25s,transform .5s cubic-bezier(.19,1,.22,1)}.dark .VPSidebar[data-v-18756405]{box-shadow:var(--vp-shadow-1)}@media (min-width: 960px){.VPSidebar[data-v-18756405]{padding-top:var(--vp-nav-height);width:var(--vp-sidebar-width);max-width:100%;background-color:var(--vp-sidebar-bg-color);opacity:1;visibility:visible;box-shadow:none;transform:translate(0)}}@media (min-width: 1440px){.VPSidebar[data-v-18756405]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}@media (min-width: 960px){.curtain[data-v-18756405]{position:sticky;top:-64px;left:0;z-index:1;margin-top:calc(var(--vp-nav-height) * -1);margin-right:-32px;margin-left:-32px;height:var(--vp-nav-height);background-color:var(--vp-sidebar-bg-color)}}.nav[data-v-18756405]{outline:0}.VPSkipLink[data-v-c3508ec8]{top:8px;left:8px;padding:8px 16px;z-index:999;border-radius:8px;font-size:12px;font-weight:700;text-decoration:none;color:var(--vp-c-brand-1);box-shadow:var(--vp-shadow-3);background-color:var(--vp-c-bg)}.VPSkipLink[data-v-c3508ec8]:focus{height:auto;width:auto;clip:auto;clip-path:none}@media (min-width: 1280px){.VPSkipLink[data-v-c3508ec8]{top:14px;left:16px}}.Layout[data-v-a9a9e638]{display:flex;flex-direction:column;min-height:100vh}.VPHomeSponsors[data-v-db81191c]{border-top:1px solid var(--vp-c-gutter);padding-top:88px!important}.VPHomeSponsors[data-v-db81191c]{margin:96px 0}@media (min-width: 768px){.VPHomeSponsors[data-v-db81191c]{margin:128px 0}}.VPHomeSponsors[data-v-db81191c]{padding:0 24px}@media (min-width: 768px){.VPHomeSponsors[data-v-db81191c]{padding:0 48px}}@media (min-width: 960px){.VPHomeSponsors[data-v-db81191c]{padding:0 64px}}.container[data-v-db81191c]{margin:0 auto;max-width:1152px}.love[data-v-db81191c]{margin:0 auto;width:fit-content;font-size:28px;color:var(--vp-c-text-3)}.icon[data-v-db81191c]{display:inline-block}.message[data-v-db81191c]{margin:0 auto;padding-top:10px;max-width:320px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.sponsors[data-v-db81191c]{padding-top:32px}.action[data-v-db81191c]{padding-top:40px;text-align:center}.VPTeamPage[data-v-c2f8e101]{margin:96px 0}@media (min-width: 768px){.VPTeamPage[data-v-c2f8e101]{margin:128px 0}}.VPHome .VPTeamPageTitle[data-v-c2f8e101-s]{border-top:1px solid var(--vp-c-gutter);padding-top:88px!important}.VPTeamPageSection+.VPTeamPageSection[data-v-c2f8e101-s],.VPTeamMembers+.VPTeamPageSection[data-v-c2f8e101-s]{margin-top:64px}.VPTeamMembers+.VPTeamMembers[data-v-c2f8e101-s]{margin-top:24px}@media (min-width: 768px){.VPTeamPageTitle+.VPTeamPageSection[data-v-c2f8e101-s]{margin-top:16px}.VPTeamPageSection+.VPTeamPageSection[data-v-c2f8e101-s],.VPTeamMembers+.VPTeamPageSection[data-v-c2f8e101-s]{margin-top:96px}}.VPTeamMembers[data-v-c2f8e101-s]{padding:0 24px}@media (min-width: 768px){.VPTeamMembers[data-v-c2f8e101-s]{padding:0 48px}}@media (min-width: 960px){.VPTeamMembers[data-v-c2f8e101-s]{padding:0 64px}}.VPTeamPageTitle[data-v-e277e15c]{padding:48px 32px;text-align:center}@media (min-width: 768px){.VPTeamPageTitle[data-v-e277e15c]{padding:64px 48px 48px}}@media (min-width: 960px){.VPTeamPageTitle[data-v-e277e15c]{padding:80px 64px 48px}}.title[data-v-e277e15c]{letter-spacing:0;line-height:44px;font-size:36px;font-weight:500}@media (min-width: 768px){.title[data-v-e277e15c]{letter-spacing:-.5px;line-height:56px;font-size:48px}}.lead[data-v-e277e15c]{margin:0 auto;max-width:512px;padding-top:12px;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 768px){.lead[data-v-e277e15c]{max-width:592px;letter-spacing:.15px;line-height:28px;font-size:20px}}.VPTeamPageSection[data-v-d43bc49d]{padding:0 32px}@media (min-width: 768px){.VPTeamPageSection[data-v-d43bc49d]{padding:0 48px}}@media (min-width: 960px){.VPTeamPageSection[data-v-d43bc49d]{padding:0 64px}}.title[data-v-d43bc49d]{position:relative;margin:0 auto;max-width:1152px;text-align:center;color:var(--vp-c-text-2)}.title-line[data-v-d43bc49d]{position:absolute;top:16px;left:0;width:100%;height:1px;background-color:var(--vp-c-divider)}.title-text[data-v-d43bc49d]{position:relative;display:inline-block;padding:0 24px;letter-spacing:0;line-height:32px;font-size:20px;font-weight:500;background-color:var(--vp-c-bg)}.lead[data-v-d43bc49d]{margin:0 auto;max-width:480px;padding-top:12px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.members[data-v-d43bc49d]{padding-top:40px}.VPTeamMembersItem[data-v-f9987cb6]{display:flex;flex-direction:column;gap:2px;border-radius:12px;width:100%;height:100%;overflow:hidden}.VPTeamMembersItem.small .profile[data-v-f9987cb6]{padding:32px}.VPTeamMembersItem.small .data[data-v-f9987cb6]{padding-top:20px}.VPTeamMembersItem.small .avatar[data-v-f9987cb6]{width:64px;height:64px}.VPTeamMembersItem.small .name[data-v-f9987cb6]{line-height:24px;font-size:16px}.VPTeamMembersItem.small .affiliation[data-v-f9987cb6]{padding-top:4px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .desc[data-v-f9987cb6]{padding-top:12px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .links[data-v-f9987cb6]{margin:0 -16px -20px;padding:10px 0 0}.VPTeamMembersItem.medium .profile[data-v-f9987cb6]{padding:48px 32px}.VPTeamMembersItem.medium .data[data-v-f9987cb6]{padding-top:24px;text-align:center}.VPTeamMembersItem.medium .avatar[data-v-f9987cb6]{width:96px;height:96px}.VPTeamMembersItem.medium .name[data-v-f9987cb6]{letter-spacing:.15px;line-height:28px;font-size:20px}.VPTeamMembersItem.medium .affiliation[data-v-f9987cb6]{padding-top:4px;font-size:16px}.VPTeamMembersItem.medium .desc[data-v-f9987cb6]{padding-top:16px;max-width:288px;font-size:16px}.VPTeamMembersItem.medium .links[data-v-f9987cb6]{margin:0 -16px -12px;padding:16px 12px 0}.profile[data-v-f9987cb6]{flex-grow:1;background-color:var(--vp-c-bg-soft)}.data[data-v-f9987cb6]{text-align:center}.avatar[data-v-f9987cb6]{position:relative;flex-shrink:0;margin:0 auto;border-radius:50%;box-shadow:var(--vp-shadow-3)}.avatar-img[data-v-f9987cb6]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;object-fit:cover}.name[data-v-f9987cb6]{margin:0;font-weight:600}.affiliation[data-v-f9987cb6]{margin:0;font-weight:500;color:var(--vp-c-text-2)}.org.link[data-v-f9987cb6]{color:var(--vp-c-text-2);transition:color .25s}.org.link[data-v-f9987cb6]:hover{color:var(--vp-c-brand-1)}.desc[data-v-f9987cb6]{margin:0 auto}.desc[data-v-f9987cb6] a{font-weight:500;color:var(--vp-c-brand-1);text-decoration-style:dotted;transition:color .25s}.links[data-v-f9987cb6]{display:flex;justify-content:center;height:56px}.sp-link[data-v-f9987cb6]{display:flex;justify-content:center;align-items:center;text-align:center;padding:16px;font-size:14px;font-weight:500;color:var(--vp-c-sponsor);background-color:var(--vp-c-bg-soft);transition:color .25s,background-color .25s}.sp .sp-link.link[data-v-f9987cb6]:hover,.sp .sp-link.link[data-v-f9987cb6]:focus{outline:none;color:var(--vp-c-white);background-color:var(--vp-c-sponsor)}.sp-icon[data-v-f9987cb6]{margin-right:8px;font-size:16px}.VPTeamMembers.small .container[data-v-fba19bad]{grid-template-columns:repeat(auto-fit,minmax(224px,1fr))}.VPTeamMembers.small.count-1 .container[data-v-fba19bad]{max-width:276px}.VPTeamMembers.small.count-2 .container[data-v-fba19bad]{max-width:576px}.VPTeamMembers.small.count-3 .container[data-v-fba19bad]{max-width:876px}.VPTeamMembers.medium .container[data-v-fba19bad]{grid-template-columns:repeat(auto-fit,minmax(256px,1fr))}@media (min-width: 375px){.VPTeamMembers.medium .container[data-v-fba19bad]{grid-template-columns:repeat(auto-fit,minmax(288px,1fr))}}.VPTeamMembers.medium.count-1 .container[data-v-fba19bad]{max-width:368px}.VPTeamMembers.medium.count-2 .container[data-v-fba19bad]{max-width:760px}.container[data-v-fba19bad]{display:grid;gap:24px;margin:0 auto;max-width:1152px}.package[data-v-580af1dd]{font-size:1rem;margin-bottom:32px}.package>a[data-v-580af1dd]{color:inherit;text-decoration:none;vertical-align:super;white-space:nowrap}:root{--vp-c-default-1: #A0A9B2;--vp-c-default-2: #A0A9B2;--vp-c-default-3: #A0A9B2;--vp-c-default-soft: hsl(210, 100%, 90%);--vp-c-brand-1: #4D9CFF;--vp-c-brand-2: #366DB2;--vp-c-brand-3: #4D9CFF;--vp-c-brand-soft: #366DB2;--vp-c-tip-1: #1F6638;--vp-c-tip-2: #36B261;--vp-c-tip-3: #4DFF8B;--vp-c-tip-soft: #1F6638;--vp-c-note-1: #1F3E66;--vp-c-note-2: #366DB2;--vp-c-note-3: #4D9CFF;--vp-c-note-soft: #1F3E66;--vp-c-success-1: #1F6638;--vp-c-success-2: #36B261;--vp-c-success-3: #4DFF8B;--vp-c-success-soft: #1F6638;--vp-c-important-1: #3C1F66;--vp-c-important-2: #6A36B2;--vp-c-important-3: #974DFF;--vp-c-important-soft: #3C1F66;--vp-c-warning-1: #663C1F;--vp-c-warning-2: #B26A36;--vp-c-warning-3: #FF974D;--vp-c-warning-soft: #663C1F;--vp-c-danger-1: #661F25;--vp-c-danger-2: #B23640;--vp-c-danger-3: #FF4D5B;--vp-c-danger-soft: #661F25;--vp-c-caution-1: #661F25;--vp-c-caution-2: #B23640;--vp-c-caution-3: #FF4D5B;--vp-c-caution-soft: #661F25}.dark{--vp-c-default-1: #393C40;--vp-c-default-2: #222426;--vp-c-default-3: #393C40;--vp-c-default-soft: #222426}:root{--vp-font-family-base: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--vp-font-family-mono: "Roboto Mono", source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace;--vp-custom-block-font-size: 16px}:root{--vp-c-bg: hsl(210, 100%, 95%);--vp-c-bg-alt: hsl(210, 100%, 98.5%);--vp-c-bg-elv: hsl(210, 100%, 95%);--vp-c-bg-soft: hsl(210, 100%, 98.5%)}.dark{--vp-c-bg: #14191F;--vp-c-bg-alt: #0D1114;--vp-c-bg-elv: #0D1114;--vp-c-bg-soft: #0D1114}:root{--vp-c-border: #A0A9B2;--vp-c-divider: #A0A9B2;--vp-c-gutter: #5C6166}.dark{--vp-c-border: #080B0D;--vp-c-divider: #080B0D;--vp-c-gutter: #000000}:root{--vp-c-text-1: rgba(41, 52, 63);--vp-c-text-2: rgba(41, 52, 63, .78);--vp-c-text-3: rgba(41, 52, 63, .56)}.dark{--vp-c-text-1: rgba(229, 242, 255, .86);--vp-c-text-2: rgba(229, 242, 255, .6);--vp-c-text-3: rgba(229, 242, 255, .38)}:root{--vp-button-brand-border: transparent;--vp-button-brand-text: var(--vp-c-white);--vp-button-brand-bg: var(--vp-c-brand-3);--vp-button-brand-hover-border: transparent;--vp-button-brand-hover-text: var(--vp-c-white);--vp-button-brand-hover-bg: var(--vp-c-brand-2);--vp-button-brand-active-border: transparent;--vp-button-brand-active-text: var(--vp-c-white);--vp-button-brand-active-bg: var(--vp-c-brand-1)}:root{--vp-home-hero-name-color: transparent;--vp-home-hero-name-background: -webkit-linear-gradient( 120deg, #4DFFE1 30%, #4D9CFF );--vp-home-hero-image-background-image: linear-gradient( -45deg, #4DFFE1 50%, #4D9CFF 50% );--vp-home-hero-image-filter: blur(44px)}@media (min-width: 640px){:root{--vp-home-hero-image-filter: blur(56px)}}@media (min-width: 960px){:root{--vp-home-hero-image-filter: blur(68px)}}:root{--vp-custom-block-tip-border: var(--vp-c-tip-3);--vp-custom-block-tip-text: var(--vp-c-tip-3);--vp-custom-block-tip-bg: var(--vp-c-tip-soft);--vp-custom-block-tip-code-bg: var(--vp-c-tip-3);--vp-custom-block-note-border: var(--vp-c-note-3);--vp-custom-block-note-text: var(--vp-c-note-3);--vp-custom-block-note-bg: var(--vp-c-note-soft);--vp-custom-block-note-code-bg: var(--vp-c-note-3);--vp-custom-block-success-border: var(--vp-c-success-3);--vp-custom-block-success-text: var(--vp-c-success-3);--vp-custom-block-success-bg: var(--vp-c-success-soft);--vp-custom-block-success-code-bg: var(--vp-c-success-3);--vp-custom-block-important-border: var(--vp-c-important-3);--vp-custom-block-important-text: var(--vp-c-important-3);--vp-custom-block-important-bg: var(--vp-c-important-soft);--vp-custom-block-important-code-bg: var(--vp-c-important-3);--vp-custom-block-warning-border: var(--vp-c-warning-3);--vp-custom-block-warning-text: var(--vp-c-warning-3);--vp-custom-block-warning-bg: var(--vp-c-warning-soft);--vp-custom-block-warning-code-bg: var(--vp-c-warning-3);--vp-custom-block-danger-border: var(--vp-c-danger-3);--vp-custom-block-danger-text: var(--vp-c-danger-3);--vp-custom-block-danger-bg: var(--vp-c-danger-soft);--vp-custom-block-danger-code-bg: var(--vp-c-danger-3);--vp-custom-block-caution-border: var(--vp-c-caution-3);--vp-custom-block-caution-text: var(--vp-c-caution-3);--vp-custom-block-caution-bg: var(--vp-c-caution-soft);--vp-custom-block-caution-code-bg: var(--vp-c-caution-3);--vp-custom-block-info-border: var(--vp-c-note-3);--vp-custom-block-info-text: var(--vp-c-note-3);--vp-custom-block-info-bg: var(--vp-c-note-soft);--vp-custom-block-info-code-bg: var(--vp-c-note-3);--vp-custom-block-details-border: transparent;--vp-custom-block-details-text: var(--vp-c-text-1);--vp-custom-block-details-bg: var(--vp-c-bg-alt);--vp-custom-block-details-code-bg: var(--vp-c-bg)}.DocSearch{--docsearch-primary-color: var(--vp-c-brand-1) !important}.custom-block{--vp-code-block-bg: var(--vp-c-bg);border:none;border-left:5px solid;padding:12px 12px 6px}.custom-block>.custom-block-title{display:flex;gap:.5rem;align-items:center}.custom-block>.custom-block-title:before{content:"";display:block;-webkit-mask:var(--icon) no-repeat;mask:var(--icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100;width:1rem;height:1rem;background-color:currentColor;color:inherit;fill:currentColor}.custom-block.caution{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24V264c0 13.3-10.7 24-24 24s-24-10.7-24-24V152c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z'/%3E%3C/svg%3E") }.custom-block.tip{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M272 384c9.6-31.9 29.5-59.1 49.2-86.2l0 0c5.2-7.1 10.4-14.2 15.4-21.4c19.8-28.5 31.4-63 31.4-100.3C368 78.8 289.2 0 192 0S16 78.8 16 176c0 37.3 11.6 71.9 31.4 100.3c5 7.2 10.2 14.3 15.4 21.4l0 0c19.8 27.1 39.7 54.4 49.2 86.2H272zM192 512c44.2 0 80-35.8 80-80V416H112v16c0 44.2 35.8 80 80 80zM112 176c0 8.8-7.2 16-16 16s-16-7.2-16-16c0-61.9 50.1-112 112-112c8.8 0 16 7.2 16 16s-7.2 16-16 16c-44.2 0-80 35.8-80 80z'/%3E%3C/svg%3E") }.custom-block.note{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336h24V272H216c-13.3 0-24-10.7-24-24s10.7-24 24-24h48c13.3 0 24 10.7 24 24v88h8c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-208a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'/%3E%3C/svg%3E") }.custom-block.warning{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z'/%3E%3C/svg%3E") }.custom-block.details{padding:0}.custom-block.details>summary{padding:12px;margin:0;color:var(--vp-c-text-2);font-weight:400}.custom-block.details>summary~*{margin-left:12px!important;margin-right:12px!important}.custom-block.details>*:nth-child(2){margin-top:0}.custom-block.details>*:last-child{margin-bottom:0}.custom-block.details[open]{padding-bottom:16px}.custom-block ul ul{margin:0!important}.custom-block li+li{margin-top:4px!important}li>p{margin:0!important;line-height:24px!important}.VPContent.is-home .vp-doc{margin:0;padding:0;width:100%;max-width:unset}.vp-doc .VPTeamPage{margin-left:0!important;margin-right:0!important;width:inherit}.vp-doc .VPTeamMembers.center{display:flex;justify-content:center}.vp-doc .VPTeamMembers.center .container{flex:1;grid-template-columns:repeat(auto-fit,minmax(256px,1fr))!important}.vp-doc .VPTeamMembers.medium.count-1.center .container{max-width:368px!important}.vp-doc img{border-radius:8px;margin:16px 0}.vp-doc p{line-height:1.5} +@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-cyrillic-ext.BBPuwvHQ.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-cyrillic.C5lxZ8CY.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-greek-ext.CqjqNYQ-.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-greek.BBVDIX6e.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-vietnamese.BjW4sHH5.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-latin-ext.4ZJIpNVo.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-roman-latin.Di8DUHzh.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-cyrillic-ext.r48I6akx.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-cyrillic.By2_1cv3.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-greek-ext.1u6EdAuj.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-greek.DJ8dCoTZ.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-vietnamese.BSbpV94h.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-latin-ext.CN1xVJS-.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/docs/assets/inter-italic-latin.C2AdPX0b.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Punctuation SC;font-weight:400;src:local("PingFang SC Regular"),local("Noto Sans CJK SC"),local("Microsoft YaHei");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:500;src:local("PingFang SC Medium"),local("Noto Sans CJK SC"),local("Microsoft YaHei");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:600;src:local("PingFang SC Semibold"),local("Noto Sans CJK SC Bold"),local("Microsoft YaHei Bold");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:700;src:local("PingFang SC Semibold"),local("Noto Sans CJK SC Bold"),local("Microsoft YaHei Bold");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}:root{--vp-c-white: #ffffff;--vp-c-black: #000000;--vp-c-neutral: var(--vp-c-black);--vp-c-neutral-inverse: var(--vp-c-white)}.dark{--vp-c-neutral: var(--vp-c-white);--vp-c-neutral-inverse: var(--vp-c-black)}:root{--vp-c-gray-1: #dddde3;--vp-c-gray-2: #e4e4e9;--vp-c-gray-3: #ebebef;--vp-c-gray-soft: rgba(142, 150, 170, .14);--vp-c-indigo-1: #3451b2;--vp-c-indigo-2: #3a5ccc;--vp-c-indigo-3: #5672cd;--vp-c-indigo-soft: rgba(100, 108, 255, .14);--vp-c-purple-1: #6f42c1;--vp-c-purple-2: #7e4cc9;--vp-c-purple-3: #8e5cd9;--vp-c-purple-soft: rgba(159, 122, 234, .14);--vp-c-green-1: #18794e;--vp-c-green-2: #299764;--vp-c-green-3: #30a46c;--vp-c-green-soft: rgba(16, 185, 129, .14);--vp-c-yellow-1: #915930;--vp-c-yellow-2: #946300;--vp-c-yellow-3: #9f6a00;--vp-c-yellow-soft: rgba(234, 179, 8, .14);--vp-c-red-1: #b8272c;--vp-c-red-2: #d5393e;--vp-c-red-3: #e0575b;--vp-c-red-soft: rgba(244, 63, 94, .14);--vp-c-sponsor: #db2777}.dark{--vp-c-gray-1: #515c67;--vp-c-gray-2: #414853;--vp-c-gray-3: #32363f;--vp-c-gray-soft: rgba(101, 117, 133, .16);--vp-c-indigo-1: #a8b1ff;--vp-c-indigo-2: #5c73e7;--vp-c-indigo-3: #3e63dd;--vp-c-indigo-soft: rgba(100, 108, 255, .16);--vp-c-purple-1: #c8abfa;--vp-c-purple-2: #a879e6;--vp-c-purple-3: #8e5cd9;--vp-c-purple-soft: rgba(159, 122, 234, .16);--vp-c-green-1: #3dd68c;--vp-c-green-2: #30a46c;--vp-c-green-3: #298459;--vp-c-green-soft: rgba(16, 185, 129, .16);--vp-c-yellow-1: #f9b44e;--vp-c-yellow-2: #da8b17;--vp-c-yellow-3: #a46a0a;--vp-c-yellow-soft: rgba(234, 179, 8, .16);--vp-c-red-1: #f66f81;--vp-c-red-2: #f14158;--vp-c-red-3: #b62a3c;--vp-c-red-soft: rgba(244, 63, 94, .16)}:root{--vp-c-bg: #ffffff;--vp-c-bg-alt: #f6f6f7;--vp-c-bg-elv: #ffffff;--vp-c-bg-soft: #f6f6f7}.dark{--vp-c-bg: #1b1b1f;--vp-c-bg-alt: #161618;--vp-c-bg-elv: #202127;--vp-c-bg-soft: #202127}:root{--vp-c-border: #c2c2c4;--vp-c-divider: #e2e2e3;--vp-c-gutter: #e2e2e3}.dark{--vp-c-border: #3c3f44;--vp-c-divider: #2e2e32;--vp-c-gutter: #000000}:root{--vp-c-text-1: rgba(60, 60, 67);--vp-c-text-2: rgba(60, 60, 67, .78);--vp-c-text-3: rgba(60, 60, 67, .56)}.dark{--vp-c-text-1: rgba(255, 255, 245, .86);--vp-c-text-2: rgba(235, 235, 245, .6);--vp-c-text-3: rgba(235, 235, 245, .38)}:root{--vp-c-default-1: var(--vp-c-gray-1);--vp-c-default-2: var(--vp-c-gray-2);--vp-c-default-3: var(--vp-c-gray-3);--vp-c-default-soft: var(--vp-c-gray-soft);--vp-c-brand-1: var(--vp-c-indigo-1);--vp-c-brand-2: var(--vp-c-indigo-2);--vp-c-brand-3: var(--vp-c-indigo-3);--vp-c-brand-soft: var(--vp-c-indigo-soft);--vp-c-brand: var(--vp-c-brand-1);--vp-c-tip-1: var(--vp-c-brand-1);--vp-c-tip-2: var(--vp-c-brand-2);--vp-c-tip-3: var(--vp-c-brand-3);--vp-c-tip-soft: var(--vp-c-brand-soft);--vp-c-note-1: var(--vp-c-brand-1);--vp-c-note-2: var(--vp-c-brand-2);--vp-c-note-3: var(--vp-c-brand-3);--vp-c-note-soft: var(--vp-c-brand-soft);--vp-c-success-1: var(--vp-c-green-1);--vp-c-success-2: var(--vp-c-green-2);--vp-c-success-3: var(--vp-c-green-3);--vp-c-success-soft: var(--vp-c-green-soft);--vp-c-important-1: var(--vp-c-purple-1);--vp-c-important-2: var(--vp-c-purple-2);--vp-c-important-3: var(--vp-c-purple-3);--vp-c-important-soft: var(--vp-c-purple-soft);--vp-c-warning-1: var(--vp-c-yellow-1);--vp-c-warning-2: var(--vp-c-yellow-2);--vp-c-warning-3: var(--vp-c-yellow-3);--vp-c-warning-soft: var(--vp-c-yellow-soft);--vp-c-danger-1: var(--vp-c-red-1);--vp-c-danger-2: var(--vp-c-red-2);--vp-c-danger-3: var(--vp-c-red-3);--vp-c-danger-soft: var(--vp-c-red-soft);--vp-c-caution-1: var(--vp-c-red-1);--vp-c-caution-2: var(--vp-c-red-2);--vp-c-caution-3: var(--vp-c-red-3);--vp-c-caution-soft: var(--vp-c-red-soft)}:root{--vp-font-family-base: "Inter", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--vp-font-family-mono: ui-monospace, "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;font-optical-sizing:auto}:root:where(:lang(zh)){--vp-font-family-base: "Punctuation SC", "Inter", ui-sans-serif, system-ui, "PingFang SC", "Noto Sans CJK SC", "Noto Sans SC", "Heiti SC", "Microsoft YaHei", "DengXian", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"}:root{--vp-shadow-1: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .06);--vp-shadow-2: 0 3px 12px rgba(0, 0, 0, .07), 0 1px 4px rgba(0, 0, 0, .07);--vp-shadow-3: 0 12px 32px rgba(0, 0, 0, .1), 0 2px 6px rgba(0, 0, 0, .08);--vp-shadow-4: 0 14px 44px rgba(0, 0, 0, .12), 0 3px 9px rgba(0, 0, 0, .12);--vp-shadow-5: 0 18px 56px rgba(0, 0, 0, .16), 0 4px 12px rgba(0, 0, 0, .16)}:root{--vp-z-index-footer: 10;--vp-z-index-local-nav: 20;--vp-z-index-nav: 30;--vp-z-index-layout-top: 40;--vp-z-index-backdrop: 50;--vp-z-index-sidebar: 60}@media (min-width: 960px){:root{--vp-z-index-sidebar: 25}}:root{--vp-layout-max-width: 1440px}:root{--vp-header-anchor-symbol: "#"}:root{--vp-code-line-height: 1.7;--vp-code-font-size: .875em;--vp-code-color: var(--vp-c-brand-1);--vp-code-link-color: var(--vp-c-brand-1);--vp-code-link-hover-color: var(--vp-c-brand-2);--vp-code-bg: var(--vp-c-default-soft);--vp-code-block-color: var(--vp-c-text-2);--vp-code-block-bg: var(--vp-c-bg-alt);--vp-code-block-divider-color: var(--vp-c-gutter);--vp-code-lang-color: var(--vp-c-text-3);--vp-code-line-highlight-color: var(--vp-c-default-soft);--vp-code-line-number-color: var(--vp-c-text-3);--vp-code-line-diff-add-color: var(--vp-c-success-soft);--vp-code-line-diff-add-symbol-color: var(--vp-c-success-1);--vp-code-line-diff-remove-color: var(--vp-c-danger-soft);--vp-code-line-diff-remove-symbol-color: var(--vp-c-danger-1);--vp-code-line-warning-color: var(--vp-c-warning-soft);--vp-code-line-error-color: var(--vp-c-danger-soft);--vp-code-copy-code-border-color: var(--vp-c-divider);--vp-code-copy-code-bg: var(--vp-c-bg-soft);--vp-code-copy-code-hover-border-color: var(--vp-c-divider);--vp-code-copy-code-hover-bg: var(--vp-c-bg);--vp-code-copy-code-active-text: var(--vp-c-text-2);--vp-code-copy-copied-text-content: "Copied";--vp-code-tab-divider: var(--vp-code-block-divider-color);--vp-code-tab-text-color: var(--vp-c-text-2);--vp-code-tab-bg: var(--vp-code-block-bg);--vp-code-tab-hover-text-color: var(--vp-c-text-1);--vp-code-tab-active-text-color: var(--vp-c-text-1);--vp-code-tab-active-bar-color: var(--vp-c-brand-1)}:root{--vp-button-brand-border: transparent;--vp-button-brand-text: var(--vp-c-white);--vp-button-brand-bg: var(--vp-c-brand-3);--vp-button-brand-hover-border: transparent;--vp-button-brand-hover-text: var(--vp-c-white);--vp-button-brand-hover-bg: var(--vp-c-brand-2);--vp-button-brand-active-border: transparent;--vp-button-brand-active-text: var(--vp-c-white);--vp-button-brand-active-bg: var(--vp-c-brand-1);--vp-button-alt-border: transparent;--vp-button-alt-text: var(--vp-c-text-1);--vp-button-alt-bg: var(--vp-c-default-3);--vp-button-alt-hover-border: transparent;--vp-button-alt-hover-text: var(--vp-c-text-1);--vp-button-alt-hover-bg: var(--vp-c-default-2);--vp-button-alt-active-border: transparent;--vp-button-alt-active-text: var(--vp-c-text-1);--vp-button-alt-active-bg: var(--vp-c-default-1);--vp-button-sponsor-border: var(--vp-c-text-2);--vp-button-sponsor-text: var(--vp-c-text-2);--vp-button-sponsor-bg: transparent;--vp-button-sponsor-hover-border: var(--vp-c-sponsor);--vp-button-sponsor-hover-text: var(--vp-c-sponsor);--vp-button-sponsor-hover-bg: transparent;--vp-button-sponsor-active-border: var(--vp-c-sponsor);--vp-button-sponsor-active-text: var(--vp-c-sponsor);--vp-button-sponsor-active-bg: transparent}:root{--vp-custom-block-font-size: 14px;--vp-custom-block-code-font-size: 13px;--vp-custom-block-info-border: transparent;--vp-custom-block-info-text: var(--vp-c-text-1);--vp-custom-block-info-bg: var(--vp-c-default-soft);--vp-custom-block-info-code-bg: var(--vp-c-default-soft);--vp-custom-block-note-border: transparent;--vp-custom-block-note-text: var(--vp-c-text-1);--vp-custom-block-note-bg: var(--vp-c-default-soft);--vp-custom-block-note-code-bg: var(--vp-c-default-soft);--vp-custom-block-tip-border: transparent;--vp-custom-block-tip-text: var(--vp-c-text-1);--vp-custom-block-tip-bg: var(--vp-c-tip-soft);--vp-custom-block-tip-code-bg: var(--vp-c-tip-soft);--vp-custom-block-important-border: transparent;--vp-custom-block-important-text: var(--vp-c-text-1);--vp-custom-block-important-bg: var(--vp-c-important-soft);--vp-custom-block-important-code-bg: var(--vp-c-important-soft);--vp-custom-block-warning-border: transparent;--vp-custom-block-warning-text: var(--vp-c-text-1);--vp-custom-block-warning-bg: var(--vp-c-warning-soft);--vp-custom-block-warning-code-bg: var(--vp-c-warning-soft);--vp-custom-block-danger-border: transparent;--vp-custom-block-danger-text: var(--vp-c-text-1);--vp-custom-block-danger-bg: var(--vp-c-danger-soft);--vp-custom-block-danger-code-bg: var(--vp-c-danger-soft);--vp-custom-block-caution-border: transparent;--vp-custom-block-caution-text: var(--vp-c-text-1);--vp-custom-block-caution-bg: var(--vp-c-caution-soft);--vp-custom-block-caution-code-bg: var(--vp-c-caution-soft);--vp-custom-block-details-border: var(--vp-custom-block-info-border);--vp-custom-block-details-text: var(--vp-custom-block-info-text);--vp-custom-block-details-bg: var(--vp-custom-block-info-bg);--vp-custom-block-details-code-bg: var(--vp-custom-block-info-code-bg)}:root{--vp-input-border-color: var(--vp-c-border);--vp-input-bg-color: var(--vp-c-bg-alt);--vp-input-switch-bg-color: var(--vp-c-default-soft)}:root{--vp-nav-height: 64px;--vp-nav-bg-color: var(--vp-c-bg);--vp-nav-screen-bg-color: var(--vp-c-bg);--vp-nav-logo-height: 24px}.hide-nav{--vp-nav-height: 0px}.hide-nav .VPSidebar{--vp-nav-height: 22px}:root{--vp-local-nav-bg-color: var(--vp-c-bg)}:root{--vp-sidebar-width: 272px;--vp-sidebar-bg-color: var(--vp-c-bg-alt)}:root{--vp-backdrop-bg-color: rgba(0, 0, 0, .6)}:root{--vp-home-hero-name-color: var(--vp-c-brand-1);--vp-home-hero-name-background: transparent;--vp-home-hero-image-background-image: none;--vp-home-hero-image-filter: none}:root{--vp-badge-info-border: transparent;--vp-badge-info-text: var(--vp-c-text-2);--vp-badge-info-bg: var(--vp-c-default-soft);--vp-badge-tip-border: transparent;--vp-badge-tip-text: var(--vp-c-tip-1);--vp-badge-tip-bg: var(--vp-c-tip-soft);--vp-badge-warning-border: transparent;--vp-badge-warning-text: var(--vp-c-warning-1);--vp-badge-warning-bg: var(--vp-c-warning-soft);--vp-badge-danger-border: transparent;--vp-badge-danger-text: var(--vp-c-danger-1);--vp-badge-danger-bg: var(--vp-c-danger-soft)}:root{--vp-carbon-ads-text-color: var(--vp-c-text-1);--vp-carbon-ads-poweredby-color: var(--vp-c-text-2);--vp-carbon-ads-bg-color: var(--vp-c-bg-soft);--vp-carbon-ads-hover-text-color: var(--vp-c-brand-1);--vp-carbon-ads-hover-poweredby-color: var(--vp-c-text-1)}:root{--vp-local-search-bg: var(--vp-c-bg);--vp-local-search-result-bg: var(--vp-c-bg);--vp-local-search-result-border: var(--vp-c-divider);--vp-local-search-result-selected-bg: var(--vp-c-bg);--vp-local-search-result-selected-border: var(--vp-c-brand-1);--vp-local-search-highlight-bg: var(--vp-c-brand-1);--vp-local-search-highlight-text: var(--vp-c-neutral-inverse)}@media (prefers-reduced-motion: reduce){*,:before,:after{animation-delay:-1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;background-attachment:initial!important;scroll-behavior:auto!important;transition-duration:0s!important;transition-delay:0s!important}}*,:before,:after{box-sizing:border-box}html{line-height:1.4;font-size:16px;-webkit-text-size-adjust:100%}html.dark{color-scheme:dark}body{margin:0;width:100%;min-width:320px;min-height:100vh;line-height:24px;font-family:var(--vp-font-family-base);font-size:16px;font-weight:400;color:var(--vp-c-text-1);background-color:var(--vp-c-bg);font-synthesis:style;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{display:block}h1,h2,h3,h4,h5,h6{margin:0;line-height:24px;font-size:16px;font-weight:400}p{margin:0}strong,b{font-weight:600}a,area,button,[role=button],input,label,select,summary,textarea{touch-action:manipulation}a{color:inherit;text-decoration:inherit}ol,ul{list-style:none;margin:0;padding:0}blockquote{margin:0}pre,code,kbd,samp{font-family:var(--vp-font-family-mono)}img,svg,video,canvas,audio,iframe,embed,object{display:block}figure{margin:0}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{border:0;padding:0;line-height:inherit;color:inherit}button{padding:0;font-family:inherit;background-color:transparent;background-image:none}button:enabled,[role=button]:enabled{cursor:pointer}button:focus,button:focus-visible{outline:1px dotted;outline:4px auto -webkit-focus-ring-color}button:focus:not(:focus-visible){outline:none!important}input:focus,textarea:focus,select:focus{outline:none}table{border-collapse:collapse}input{background-color:transparent}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:var(--vp-c-text-3)}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:var(--vp-c-text-3)}input::placeholder,textarea::placeholder{color:var(--vp-c-text-3)}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}textarea{resize:vertical}select{-webkit-appearance:none}fieldset{margin:0;padding:0}h1,h2,h3,h4,h5,h6,li,p{overflow-wrap:break-word}vite-error-overlay{z-index:9999}mjx-container{overflow-x:auto}mjx-container>svg{display:inline-block;margin:auto}[class^=vpi-],[class*=" vpi-"],.vp-icon{width:1em;height:1em}[class^=vpi-].bg,[class*=" vpi-"].bg,.vp-icon.bg{background-size:100% 100%;background-color:transparent}[class^=vpi-]:not(.bg),[class*=" vpi-"]:not(.bg),.vp-icon:not(.bg){-webkit-mask:var(--icon) no-repeat;mask:var(--icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit}.vpi-align-left{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 6H3M15 12H3M17 18H3'/%3E%3C/svg%3E")}.vpi-arrow-right,.vpi-arrow-down,.vpi-arrow-left,.vpi-arrow-up{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E")}.vpi-chevron-right,.vpi-chevron-down,.vpi-chevron-left,.vpi-chevron-up{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E")}.vpi-chevron-down,.vpi-arrow-down{transform:rotate(90deg)}.vpi-chevron-left,.vpi-arrow-left{transform:rotate(180deg)}.vpi-chevron-up,.vpi-arrow-up{transform:rotate(-90deg)}.vpi-square-pen{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7'/%3E%3Cpath d='M18.375 2.625a2.121 2.121 0 1 1 3 3L12 15l-4 1 1-4Z'/%3E%3C/svg%3E")}.vpi-plus{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M12 5v14'/%3E%3C/svg%3E")}.vpi-sun{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/%3E%3C/svg%3E")}.vpi-moon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z'/%3E%3C/svg%3E")}.vpi-more-horizontal{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='1'/%3E%3Ccircle cx='19' cy='12' r='1'/%3E%3Ccircle cx='5' cy='12' r='1'/%3E%3C/svg%3E")}.vpi-languages{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m5 8 6 6M4 14l6-6 2-3M2 5h12M7 2h1M22 22l-5-10-5 10M14 18h6'/%3E%3C/svg%3E")}.vpi-heart{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E")}.vpi-search{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E")}.vpi-layout-list{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='7' height='7' x='3' y='3' rx='1'/%3E%3Crect width='7' height='7' x='3' y='14' rx='1'/%3E%3Cpath d='M14 4h7M14 9h7M14 15h7M14 20h7'/%3E%3C/svg%3E")}.vpi-delete{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M20 5H9l-7 7 7 7h11a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2ZM18 9l-6 6M12 9l6 6'/%3E%3C/svg%3E")}.vpi-corner-down-left{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m9 10-5 5 5 5'/%3E%3Cpath d='M20 4v7a4 4 0 0 1-4 4H4'/%3E%3C/svg%3E")}:root{--vp-icon-copy: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='rgba(128,128,128,1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3C/svg%3E");--vp-icon-copied: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='rgba(128,128,128,1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='m9 14 2 2 4-4'/%3E%3C/svg%3E")}.vpi-social-discord{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.107 13.107 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10.2 10.2 0 0 0 .372-.292.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.299 12.299 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.839 19.839 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418Z'/%3E%3C/svg%3E")}.vpi-social-facebook{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.101 23.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085 1.848-5.978 5.858-5.978.401 0 .955.042 1.468.103a8.68 8.68 0 0 1 1.141.195v3.325a8.623 8.623 0 0 0-.653-.036 26.805 26.805 0 0 0-.733-.009c-.707 0-1.259.096-1.675.309a1.686 1.686 0 0 0-.679.622c-.258.42-.374.995-.374 1.752v1.297h3.919l-.386 2.103-.287 1.564h-3.246v8.245C19.396 23.238 24 18.179 24 12.044c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.628 3.874 10.35 9.101 11.647Z'/%3E%3C/svg%3E")}.vpi-social-github{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E")}.vpi-social-instagram{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7.03.084c-1.277.06-2.149.264-2.91.563a5.874 5.874 0 0 0-2.124 1.388 5.878 5.878 0 0 0-1.38 2.127C.321 4.926.12 5.8.064 7.076.008 8.354-.005 8.764.001 12.023c.007 3.259.021 3.667.083 4.947.061 1.277.264 2.149.563 2.911.308.789.72 1.457 1.388 2.123a5.872 5.872 0 0 0 2.129 1.38c.763.295 1.636.496 2.913.552 1.278.056 1.689.069 4.947.063 3.257-.007 3.668-.021 4.947-.082 1.28-.06 2.147-.265 2.91-.563a5.881 5.881 0 0 0 2.123-1.388 5.881 5.881 0 0 0 1.38-2.129c.295-.763.496-1.636.551-2.912.056-1.28.07-1.69.063-4.948-.006-3.258-.02-3.667-.081-4.947-.06-1.28-.264-2.148-.564-2.911a5.892 5.892 0 0 0-1.387-2.123 5.857 5.857 0 0 0-2.128-1.38C19.074.322 18.202.12 16.924.066 15.647.009 15.236-.006 11.977 0 8.718.008 8.31.021 7.03.084m.14 21.693c-1.17-.05-1.805-.245-2.228-.408a3.736 3.736 0 0 1-1.382-.895 3.695 3.695 0 0 1-.9-1.378c-.165-.423-.363-1.058-.417-2.228-.06-1.264-.072-1.644-.08-4.848-.006-3.204.006-3.583.061-4.848.05-1.169.246-1.805.408-2.228.216-.561.477-.96.895-1.382a3.705 3.705 0 0 1 1.379-.9c.423-.165 1.057-.361 2.227-.417 1.265-.06 1.644-.072 4.848-.08 3.203-.006 3.583.006 4.85.062 1.168.05 1.804.244 2.227.408.56.216.96.475 1.382.895.421.42.681.817.9 1.378.165.422.362 1.056.417 2.227.06 1.265.074 1.645.08 4.848.005 3.203-.006 3.583-.061 4.848-.051 1.17-.245 1.805-.408 2.23-.216.56-.477.96-.896 1.38a3.705 3.705 0 0 1-1.378.9c-.422.165-1.058.362-2.226.418-1.266.06-1.645.072-4.85.079-3.204.007-3.582-.006-4.848-.06m9.783-16.192a1.44 1.44 0 1 0 1.437-1.442 1.44 1.44 0 0 0-1.437 1.442M5.839 12.012a6.161 6.161 0 1 0 12.323-.024 6.162 6.162 0 0 0-12.323.024M8 12.008A4 4 0 1 1 12.008 16 4 4 0 0 1 8 12.008'/%3E%3C/svg%3E")}.vpi-social-linkedin{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 0 1-2.063-2.065 2.064 2.064 0 1 1 2.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z'/%3E%3C/svg%3E")}.vpi-social-mastodon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23.268 5.313c-.35-2.578-2.617-4.61-5.304-5.004C17.51.242 15.792 0 11.813 0h-.03c-3.98 0-4.835.242-5.288.309C3.882.692 1.496 2.518.917 5.127.64 6.412.61 7.837.661 9.143c.074 1.874.088 3.745.26 5.611.118 1.24.325 2.47.62 3.68.55 2.237 2.777 4.098 4.96 4.857 2.336.792 4.849.923 7.256.38.265-.061.527-.132.786-.213.585-.184 1.27-.39 1.774-.753a.057.057 0 0 0 .023-.043v-1.809a.052.052 0 0 0-.02-.041.053.053 0 0 0-.046-.01 20.282 20.282 0 0 1-4.709.545c-2.73 0-3.463-1.284-3.674-1.818a5.593 5.593 0 0 1-.319-1.433.053.053 0 0 1 .066-.054c1.517.363 3.072.546 4.632.546.376 0 .75 0 1.125-.01 1.57-.044 3.224-.124 4.768-.422.038-.008.077-.015.11-.024 2.435-.464 4.753-1.92 4.989-5.604.008-.145.03-1.52.03-1.67.002-.512.167-3.63-.024-5.545zm-3.748 9.195h-2.561V8.29c0-1.309-.55-1.976-1.67-1.976-1.23 0-1.846.79-1.846 2.35v3.403h-2.546V8.663c0-1.56-.617-2.35-1.848-2.35-1.112 0-1.668.668-1.67 1.977v6.218H4.822V8.102c0-1.31.337-2.35 1.011-3.12.696-.77 1.608-1.164 2.74-1.164 1.311 0 2.302.5 2.962 1.498l.638 1.06.638-1.06c.66-.999 1.65-1.498 2.96-1.498 1.13 0 2.043.395 2.74 1.164.675.77 1.012 1.81 1.012 3.12z'/%3E%3C/svg%3E")}.vpi-social-npm{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M1.763 0C.786 0 0 .786 0 1.763v20.474C0 23.214.786 24 1.763 24h20.474c.977 0 1.763-.786 1.763-1.763V1.763C24 .786 23.214 0 22.237 0zM5.13 5.323l13.837.019-.009 13.836h-3.464l.01-10.382h-3.456L12.04 19.17H5.113z'/%3E%3C/svg%3E")}.vpi-social-slack{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5.042 15.165a2.528 2.528 0 0 1-2.52 2.523A2.528 2.528 0 0 1 0 15.165a2.527 2.527 0 0 1 2.522-2.52h2.52v2.52zm1.271 0a2.527 2.527 0 0 1 2.521-2.52 2.527 2.527 0 0 1 2.521 2.52v6.313A2.528 2.528 0 0 1 8.834 24a2.528 2.528 0 0 1-2.521-2.522v-6.313zM8.834 5.042a2.528 2.528 0 0 1-2.521-2.52A2.528 2.528 0 0 1 8.834 0a2.528 2.528 0 0 1 2.521 2.522v2.52H8.834zm0 1.271a2.528 2.528 0 0 1 2.521 2.521 2.528 2.528 0 0 1-2.521 2.521H2.522A2.528 2.528 0 0 1 0 8.834a2.528 2.528 0 0 1 2.522-2.521h6.312zm10.122 2.521a2.528 2.528 0 0 1 2.522-2.521A2.528 2.528 0 0 1 24 8.834a2.528 2.528 0 0 1-2.522 2.521h-2.522V8.834zm-1.268 0a2.528 2.528 0 0 1-2.523 2.521 2.527 2.527 0 0 1-2.52-2.521V2.522A2.527 2.527 0 0 1 15.165 0a2.528 2.528 0 0 1 2.523 2.522v6.312zm-2.523 10.122a2.528 2.528 0 0 1 2.523 2.522A2.528 2.528 0 0 1 15.165 24a2.527 2.527 0 0 1-2.52-2.522v-2.522h2.52zm0-1.268a2.527 2.527 0 0 1-2.52-2.523 2.526 2.526 0 0 1 2.52-2.52h6.313A2.527 2.527 0 0 1 24 15.165a2.528 2.528 0 0 1-2.522 2.523h-6.313z'/%3E%3C/svg%3E")}.vpi-social-twitter,.vpi-social-x{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z'/%3E%3C/svg%3E")}.vpi-social-youtube{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z'/%3E%3C/svg%3E")}.visually-hidden{position:absolute;width:1px;height:1px;white-space:nowrap;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden}.custom-block{border:1px solid transparent;border-radius:8px;padding:16px 16px 8px;line-height:24px;font-size:var(--vp-custom-block-font-size);color:var(--vp-c-text-2)}.custom-block.info{border-color:var(--vp-custom-block-info-border);color:var(--vp-custom-block-info-text);background-color:var(--vp-custom-block-info-bg)}.custom-block.info a,.custom-block.info code{color:var(--vp-c-brand-1)}.custom-block.info a:hover,.custom-block.info a:hover>code{color:var(--vp-c-brand-2)}.custom-block.info code{background-color:var(--vp-custom-block-info-code-bg)}.custom-block.note{border-color:var(--vp-custom-block-note-border);color:var(--vp-custom-block-note-text);background-color:var(--vp-custom-block-note-bg)}.custom-block.note a,.custom-block.note code{color:var(--vp-c-brand-1)}.custom-block.note a:hover,.custom-block.note a:hover>code{color:var(--vp-c-brand-2)}.custom-block.note code{background-color:var(--vp-custom-block-note-code-bg)}.custom-block.tip{border-color:var(--vp-custom-block-tip-border);color:var(--vp-custom-block-tip-text);background-color:var(--vp-custom-block-tip-bg)}.custom-block.tip a,.custom-block.tip code{color:var(--vp-c-tip-1)}.custom-block.tip a:hover,.custom-block.tip a:hover>code{color:var(--vp-c-tip-2)}.custom-block.tip code{background-color:var(--vp-custom-block-tip-code-bg)}.custom-block.important{border-color:var(--vp-custom-block-important-border);color:var(--vp-custom-block-important-text);background-color:var(--vp-custom-block-important-bg)}.custom-block.important a,.custom-block.important code{color:var(--vp-c-important-1)}.custom-block.important a:hover,.custom-block.important a:hover>code{color:var(--vp-c-important-2)}.custom-block.important code{background-color:var(--vp-custom-block-important-code-bg)}.custom-block.warning{border-color:var(--vp-custom-block-warning-border);color:var(--vp-custom-block-warning-text);background-color:var(--vp-custom-block-warning-bg)}.custom-block.warning a,.custom-block.warning code{color:var(--vp-c-warning-1)}.custom-block.warning a:hover,.custom-block.warning a:hover>code{color:var(--vp-c-warning-2)}.custom-block.warning code{background-color:var(--vp-custom-block-warning-code-bg)}.custom-block.danger{border-color:var(--vp-custom-block-danger-border);color:var(--vp-custom-block-danger-text);background-color:var(--vp-custom-block-danger-bg)}.custom-block.danger a,.custom-block.danger code{color:var(--vp-c-danger-1)}.custom-block.danger a:hover,.custom-block.danger a:hover>code{color:var(--vp-c-danger-2)}.custom-block.danger code{background-color:var(--vp-custom-block-danger-code-bg)}.custom-block.caution{border-color:var(--vp-custom-block-caution-border);color:var(--vp-custom-block-caution-text);background-color:var(--vp-custom-block-caution-bg)}.custom-block.caution a,.custom-block.caution code{color:var(--vp-c-caution-1)}.custom-block.caution a:hover,.custom-block.caution a:hover>code{color:var(--vp-c-caution-2)}.custom-block.caution code{background-color:var(--vp-custom-block-caution-code-bg)}.custom-block.details{border-color:var(--vp-custom-block-details-border);color:var(--vp-custom-block-details-text);background-color:var(--vp-custom-block-details-bg)}.custom-block.details a{color:var(--vp-c-brand-1)}.custom-block.details a:hover,.custom-block.details a:hover>code{color:var(--vp-c-brand-2)}.custom-block.details code{background-color:var(--vp-custom-block-details-code-bg)}.custom-block-title{font-weight:600}.custom-block p+p{margin:8px 0}.custom-block.details summary{margin:0 0 8px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none}.custom-block.details summary+p{margin:8px 0}.custom-block a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;transition:opacity .25s}.custom-block a:hover{opacity:.75}.custom-block code{font-size:var(--vp-custom-block-code-font-size)}.custom-block.custom-block th,.custom-block.custom-block blockquote>p{font-size:var(--vp-custom-block-font-size);color:inherit}.dark .vp-code span{color:var(--shiki-dark, inherit)}html:not(.dark) .vp-code span{color:var(--shiki-light, inherit)}.vp-code-group{margin-top:16px}.vp-code-group .tabs{position:relative;display:flex;margin-right:-24px;margin-left:-24px;padding:0 12px;background-color:var(--vp-code-tab-bg);overflow-x:auto;overflow-y:hidden;box-shadow:inset 0 -1px var(--vp-code-tab-divider)}@media (min-width: 640px){.vp-code-group .tabs{margin-right:0;margin-left:0;border-radius:8px 8px 0 0}}.vp-code-group .tabs input{position:fixed;opacity:0;pointer-events:none}.vp-code-group .tabs label{position:relative;display:inline-block;border-bottom:1px solid transparent;padding:0 12px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-code-tab-text-color);white-space:nowrap;cursor:pointer;transition:color .25s}.vp-code-group .tabs label:after{position:absolute;right:8px;bottom:-1px;left:8px;z-index:1;height:2px;border-radius:2px;content:"";background-color:transparent;transition:background-color .25s}.vp-code-group label:hover{color:var(--vp-code-tab-hover-text-color)}.vp-code-group input:checked+label{color:var(--vp-code-tab-active-text-color)}.vp-code-group input:checked+label:after{background-color:var(--vp-code-tab-active-bar-color)}.vp-code-group div[class*=language-],.vp-block{display:none;margin-top:0!important;border-top-left-radius:0!important;border-top-right-radius:0!important}.vp-code-group div[class*=language-].active,.vp-block.active{display:block}.vp-block{padding:20px 24px}.vp-doc h1,.vp-doc h2,.vp-doc h3,.vp-doc h4,.vp-doc h5,.vp-doc h6{position:relative;font-weight:600;outline:none}.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:28px}.vp-doc h2{margin:48px 0 16px;border-top:1px solid var(--vp-c-divider);padding-top:24px;letter-spacing:-.02em;line-height:32px;font-size:24px}.vp-doc h3{margin:32px 0 0;letter-spacing:-.01em;line-height:28px;font-size:20px}.vp-doc h4{margin:24px 0 0;letter-spacing:-.01em;line-height:24px;font-size:18px}.vp-doc .header-anchor{position:absolute;top:0;left:0;margin-left:-.87em;font-weight:500;-webkit-user-select:none;user-select:none;opacity:0;text-decoration:none;transition:color .25s,opacity .25s}.vp-doc .header-anchor:before{content:var(--vp-header-anchor-symbol)}.vp-doc h1:hover .header-anchor,.vp-doc h1 .header-anchor:focus,.vp-doc h2:hover .header-anchor,.vp-doc h2 .header-anchor:focus,.vp-doc h3:hover .header-anchor,.vp-doc h3 .header-anchor:focus,.vp-doc h4:hover .header-anchor,.vp-doc h4 .header-anchor:focus,.vp-doc h5:hover .header-anchor,.vp-doc h5 .header-anchor:focus,.vp-doc h6:hover .header-anchor,.vp-doc h6 .header-anchor:focus{opacity:1}@media (min-width: 768px){.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:32px}}.vp-doc h2 .header-anchor{top:24px}.vp-doc p,.vp-doc summary{margin:16px 0}.vp-doc p{line-height:28px}.vp-doc blockquote{margin:16px 0;border-left:2px solid var(--vp-c-divider);padding-left:16px;transition:border-color .5s;color:var(--vp-c-text-2)}.vp-doc blockquote>p{margin:0;font-size:16px;transition:color .5s}.vp-doc a{font-weight:500;color:var(--vp-c-brand-1);text-decoration:underline;text-underline-offset:2px;transition:color .25s,opacity .25s}.vp-doc a:hover{color:var(--vp-c-brand-2)}.vp-doc strong{font-weight:600}.vp-doc ul,.vp-doc ol{padding-left:1.25rem;margin:16px 0}.vp-doc ul{list-style:disc}.vp-doc ol{list-style:decimal}.vp-doc li+li{margin-top:8px}.vp-doc li>ol,.vp-doc li>ul{margin:8px 0 0}.vp-doc table{display:block;border-collapse:collapse;margin:20px 0;overflow-x:auto}.vp-doc tr{background-color:var(--vp-c-bg);border-top:1px solid var(--vp-c-divider);transition:background-color .5s}.vp-doc tr:nth-child(2n){background-color:var(--vp-c-bg-soft)}.vp-doc th,.vp-doc td{border:1px solid var(--vp-c-divider);padding:8px 16px}.vp-doc th{text-align:left;font-size:14px;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-doc td{font-size:14px}.vp-doc hr{margin:16px 0;border:none;border-top:1px solid var(--vp-c-divider)}.vp-doc .custom-block{margin:16px 0}.vp-doc .custom-block p{margin:8px 0;line-height:24px}.vp-doc .custom-block p:first-child{margin:0}.vp-doc .custom-block div[class*=language-]{margin:8px 0;border-radius:8px}.vp-doc .custom-block div[class*=language-] code{font-weight:400;background-color:transparent}.vp-doc .custom-block .vp-code-group .tabs{margin:0;border-radius:8px 8px 0 0}.vp-doc :not(pre,h1,h2,h3,h4,h5,h6)>code{font-size:var(--vp-code-font-size);color:var(--vp-code-color)}.vp-doc :not(pre)>code{border-radius:4px;padding:3px 6px;background-color:var(--vp-code-bg);transition:color .25s,background-color .5s}.vp-doc a>code{color:var(--vp-code-link-color)}.vp-doc a:hover>code{color:var(--vp-code-link-hover-color)}.vp-doc h1>code,.vp-doc h2>code,.vp-doc h3>code,.vp-doc h4>code{font-size:.9em}.vp-doc div[class*=language-],.vp-block{position:relative;margin:16px -24px;background-color:var(--vp-code-block-bg);overflow-x:auto;transition:background-color .5s}@media (min-width: 640px){.vp-doc div[class*=language-],.vp-block{border-radius:8px;margin:16px 0}}@media (max-width: 639px){.vp-doc li div[class*=language-]{border-radius:8px 0 0 8px}}.vp-doc div[class*=language-]+div[class*=language-],.vp-doc div[class$=-api]+div[class*=language-],.vp-doc div[class*=language-]+div[class$=-api]>div[class*=language-]{margin-top:-8px}.vp-doc [class*=language-] pre,.vp-doc [class*=language-] code{direction:ltr;text-align:left;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;-ms-hyphens:none;hyphens:none}.vp-doc [class*=language-] pre{position:relative;z-index:1;margin:0;padding:20px 0;background:transparent;overflow-x:auto}.vp-doc [class*=language-] code{display:block;padding:0 24px;width:fit-content;min-width:100%;line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-block-color);transition:color .5s}.vp-doc [class*=language-] code .highlighted{background-color:var(--vp-code-line-highlight-color);transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .highlighted.error{background-color:var(--vp-code-line-error-color)}.vp-doc [class*=language-] code .highlighted.warning{background-color:var(--vp-code-line-warning-color)}.vp-doc [class*=language-] code .diff{transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .diff:before{position:absolute;left:10px}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){filter:blur(.095rem);opacity:.4;transition:filter .35s,opacity .35s}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){opacity:.7;transition:filter .35s,opacity .35s}.vp-doc [class*=language-]:hover .has-focused-lines .line:not(.has-focus){filter:blur(0);opacity:1}.vp-doc [class*=language-] code .diff.remove{background-color:var(--vp-code-line-diff-remove-color);opacity:.7}.vp-doc [class*=language-] code .diff.remove:before{content:"-";color:var(--vp-code-line-diff-remove-symbol-color)}.vp-doc [class*=language-] code .diff.add{background-color:var(--vp-code-line-diff-add-color)}.vp-doc [class*=language-] code .diff.add:before{content:"+";color:var(--vp-code-line-diff-add-symbol-color)}.vp-doc div[class*=language-].line-numbers-mode{padding-left:32px}.vp-doc .line-numbers-wrapper{position:absolute;top:0;bottom:0;left:0;z-index:3;border-right:1px solid var(--vp-code-block-divider-color);padding-top:20px;width:32px;text-align:center;font-family:var(--vp-font-family-mono);line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-line-number-color);transition:border-color .5s,color .5s}.vp-doc [class*=language-]>button.copy{direction:ltr;position:absolute;top:12px;right:12px;z-index:3;border:1px solid var(--vp-code-copy-code-border-color);border-radius:4px;width:40px;height:40px;background-color:var(--vp-code-copy-code-bg);opacity:0;cursor:pointer;background-image:var(--vp-icon-copy);background-position:50%;background-size:20px;background-repeat:no-repeat;transition:border-color .25s,background-color .25s,opacity .25s}.vp-doc [class*=language-]:hover>button.copy,.vp-doc [class*=language-]>button.copy:focus{opacity:1}.vp-doc [class*=language-]>button.copy:hover,.vp-doc [class*=language-]>button.copy.copied{border-color:var(--vp-code-copy-code-hover-border-color);background-color:var(--vp-code-copy-code-hover-bg)}.vp-doc [class*=language-]>button.copy.copied,.vp-doc [class*=language-]>button.copy:hover.copied{border-radius:0 4px 4px 0;background-color:var(--vp-code-copy-code-hover-bg);background-image:var(--vp-icon-copied)}.vp-doc [class*=language-]>button.copy.copied:before,.vp-doc [class*=language-]>button.copy:hover.copied:before{position:relative;top:-1px;transform:translate(calc(-100% - 1px));display:flex;justify-content:center;align-items:center;border:1px solid var(--vp-code-copy-code-hover-border-color);border-right:0;border-radius:4px 0 0 4px;padding:0 10px;width:fit-content;height:40px;text-align:center;font-size:12px;font-weight:500;color:var(--vp-code-copy-code-active-text);background-color:var(--vp-code-copy-code-hover-bg);white-space:nowrap;content:var(--vp-code-copy-copied-text-content)}.vp-doc [class*=language-]>span.lang{position:absolute;top:2px;right:8px;z-index:2;font-size:12px;font-weight:500;color:var(--vp-code-lang-color);transition:color .4s,opacity .4s}.vp-doc [class*=language-]:hover>button.copy+span.lang,.vp-doc [class*=language-]>button.copy:focus+span.lang{opacity:0}.vp-doc .VPTeamMembers{margin-top:24px}.vp-doc .VPTeamMembers.small.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}.vp-doc .VPTeamMembers.small.count-2 .container,.vp-doc .VPTeamMembers.small.count-3 .container{max-width:100%!important}.vp-doc .VPTeamMembers.medium.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}:is(.vp-external-link-icon,.vp-doc a[href*="://"],.vp-doc a[target=_blank]):not(.no-icon):after{display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;background:currentColor;color:var(--vp-c-text-3);flex-shrink:0;--icon: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' %3E%3Cpath d='M0 0h24v24H0V0z' fill='none' /%3E%3Cpath d='M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z' /%3E%3C/svg%3E");-webkit-mask-image:var(--icon);mask-image:var(--icon)}.vp-external-link-icon:after{content:""}.external-link-icon-enabled :is(.vp-doc a[href*="://"],.vp-doc a[target=_blank]):after{content:"";color:currentColor}.vp-sponsor{border-radius:16px;overflow:hidden}.vp-sponsor.aside{border-radius:12px}.vp-sponsor-section+.vp-sponsor-section{margin-top:4px}.vp-sponsor-tier{margin:0 0 4px!important;text-align:center;letter-spacing:1px!important;line-height:24px;width:100%;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-sponsor.normal .vp-sponsor-tier{padding:13px 0 11px;font-size:14px}.vp-sponsor.aside .vp-sponsor-tier{padding:9px 0 7px;font-size:12px}.vp-sponsor-grid+.vp-sponsor-tier{margin-top:4px}.vp-sponsor-grid{display:flex;flex-wrap:wrap;gap:4px}.vp-sponsor-grid.xmini .vp-sponsor-grid-link{height:64px}.vp-sponsor-grid.xmini .vp-sponsor-grid-image{max-width:64px;max-height:22px}.vp-sponsor-grid.mini .vp-sponsor-grid-link{height:72px}.vp-sponsor-grid.mini .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.small .vp-sponsor-grid-link{height:96px}.vp-sponsor-grid.small .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.medium .vp-sponsor-grid-link{height:112px}.vp-sponsor-grid.medium .vp-sponsor-grid-image{max-width:120px;max-height:36px}.vp-sponsor-grid.big .vp-sponsor-grid-link{height:184px}.vp-sponsor-grid.big .vp-sponsor-grid-image{max-width:192px;max-height:56px}.vp-sponsor-grid[data-vp-grid="2"] .vp-sponsor-grid-item{width:calc((100% - 4px)/2)}.vp-sponsor-grid[data-vp-grid="3"] .vp-sponsor-grid-item{width:calc((100% - 4px * 2) / 3)}.vp-sponsor-grid[data-vp-grid="4"] .vp-sponsor-grid-item{width:calc((100% - 12px)/4)}.vp-sponsor-grid[data-vp-grid="5"] .vp-sponsor-grid-item{width:calc((100% - 16px)/5)}.vp-sponsor-grid[data-vp-grid="6"] .vp-sponsor-grid-item{width:calc((100% - 4px * 5) / 6)}.vp-sponsor-grid-item{flex-shrink:0;width:100%;background-color:var(--vp-c-bg-soft);transition:background-color .25s}.vp-sponsor-grid-item:hover{background-color:var(--vp-c-default-soft)}.vp-sponsor-grid-item:hover .vp-sponsor-grid-image{filter:grayscale(0) invert(0)}.vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.dark .vp-sponsor-grid-item:hover{background-color:var(--vp-c-white)}.dark .vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.vp-sponsor-grid-link{display:flex}.vp-sponsor-grid-box{display:flex;justify-content:center;align-items:center;width:100%}.vp-sponsor-grid-image{max-width:100%;filter:grayscale(1);transition:filter .25s}.dark .vp-sponsor-grid-image{filter:grayscale(1) invert(1)}.VPBadge{display:inline-block;margin-left:2px;border:1px solid transparent;border-radius:12px;padding:0 10px;line-height:22px;font-size:12px;font-weight:500;transform:translateY(-2px)}.VPBadge.small{padding:0 6px;line-height:18px;font-size:10px;transform:translateY(-8px)}.VPDocFooter .VPBadge{display:none}.vp-doc h1>.VPBadge{margin-top:4px;vertical-align:top}.vp-doc h2>.VPBadge{margin-top:3px;padding:0 8px;vertical-align:top}.vp-doc h3>.VPBadge{vertical-align:middle}.vp-doc h4>.VPBadge,.vp-doc h5>.VPBadge,.vp-doc h6>.VPBadge{vertical-align:middle;line-height:18px}.VPBadge.info{border-color:var(--vp-badge-info-border);color:var(--vp-badge-info-text);background-color:var(--vp-badge-info-bg)}.VPBadge.tip{border-color:var(--vp-badge-tip-border);color:var(--vp-badge-tip-text);background-color:var(--vp-badge-tip-bg)}.VPBadge.warning{border-color:var(--vp-badge-warning-border);color:var(--vp-badge-warning-text);background-color:var(--vp-badge-warning-bg)}.VPBadge.danger{border-color:var(--vp-badge-danger-border);color:var(--vp-badge-danger-text);background-color:var(--vp-badge-danger-bg)}.VPBackdrop[data-v-b06cdb19]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--vp-z-index-backdrop);background:var(--vp-backdrop-bg-color);transition:opacity .5s}.VPBackdrop.fade-enter-from[data-v-b06cdb19],.VPBackdrop.fade-leave-to[data-v-b06cdb19]{opacity:0}.VPBackdrop.fade-leave-active[data-v-b06cdb19]{transition-duration:.25s}@media (min-width: 1280px){.VPBackdrop[data-v-b06cdb19]{display:none}}.NotFound[data-v-951cab6c]{padding:64px 24px 96px;text-align:center}@media (min-width: 768px){.NotFound[data-v-951cab6c]{padding:96px 32px 168px}}.code[data-v-951cab6c]{line-height:64px;font-size:64px;font-weight:600}.title[data-v-951cab6c]{padding-top:12px;letter-spacing:2px;line-height:20px;font-size:20px;font-weight:700}.divider[data-v-951cab6c]{margin:24px auto 18px;width:64px;height:1px;background-color:var(--vp-c-divider)}.quote[data-v-951cab6c]{margin:0 auto;max-width:256px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.action[data-v-951cab6c]{padding-top:20px}.link[data-v-951cab6c]{display:inline-block;border:1px solid var(--vp-c-brand-1);border-radius:16px;padding:3px 16px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:border-color .25s,color .25s}.link[data-v-951cab6c]:hover{border-color:var(--vp-c-brand-2);color:var(--vp-c-brand-2)}.root[data-v-3f927ebe]{position:relative;z-index:1}.nested[data-v-3f927ebe]{padding-right:16px;padding-left:16px}.outline-link[data-v-3f927ebe]{display:block;line-height:32px;font-size:14px;font-weight:400;color:var(--vp-c-text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .5s}.outline-link[data-v-3f927ebe]:hover,.outline-link.active[data-v-3f927ebe]{color:var(--vp-c-text-1);transition:color .25s}.outline-link.nested[data-v-3f927ebe]{padding-left:13px}.VPDocAsideOutline[data-v-b38bf2ff]{display:none}.VPDocAsideOutline.has-outline[data-v-b38bf2ff]{display:block}.content[data-v-b38bf2ff]{position:relative;border-left:1px solid var(--vp-c-divider);padding-left:16px;font-size:13px;font-weight:500}.outline-marker[data-v-b38bf2ff]{position:absolute;top:32px;left:-1px;z-index:0;opacity:0;width:2px;border-radius:2px;height:18px;background-color:var(--vp-c-brand-1);transition:top .25s cubic-bezier(0,1,.5,1),background-color .5s,opacity .25s}.outline-title[data-v-b38bf2ff]{line-height:32px;font-size:14px;font-weight:600}.VPDocAside[data-v-6d7b3c46]{display:flex;flex-direction:column;flex-grow:1}.spacer[data-v-6d7b3c46]{flex-grow:1}.VPDocAside[data-v-6d7b3c46] .spacer+.VPDocAsideSponsors,.VPDocAside[data-v-6d7b3c46] .spacer+.VPDocAsideCarbonAds{margin-top:24px}.VPDocAside[data-v-6d7b3c46] .VPDocAsideSponsors+.VPDocAsideCarbonAds{margin-top:16px}.VPLastUpdated[data-v-475f71b8]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 640px){.VPLastUpdated[data-v-475f71b8]{line-height:32px;font-size:14px;font-weight:500}}.VPDocFooter[data-v-4f9813fa]{margin-top:64px}.edit-info[data-v-4f9813fa]{padding-bottom:18px}@media (min-width: 640px){.edit-info[data-v-4f9813fa]{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px}}.edit-link-button[data-v-4f9813fa]{display:flex;align-items:center;border:0;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.edit-link-button[data-v-4f9813fa]:hover{color:var(--vp-c-brand-2)}.edit-link-icon[data-v-4f9813fa]{margin-right:8px}.prev-next[data-v-4f9813fa]{border-top:1px solid var(--vp-c-divider);padding-top:24px;display:grid;grid-row-gap:8px}@media (min-width: 640px){.prev-next[data-v-4f9813fa]{grid-template-columns:repeat(2,1fr);grid-column-gap:16px}}.pager-link[data-v-4f9813fa]{display:block;border:1px solid var(--vp-c-divider);border-radius:8px;padding:11px 16px 13px;width:100%;height:100%;transition:border-color .25s}.pager-link[data-v-4f9813fa]:hover{border-color:var(--vp-c-brand-1)}.pager-link.next[data-v-4f9813fa]{margin-left:auto;text-align:right}.desc[data-v-4f9813fa]{display:block;line-height:20px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.title[data-v-4f9813fa]{display:block;line-height:20px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.VPDoc[data-v-83890dd9]{padding:32px 24px 96px;width:100%}@media (min-width: 768px){.VPDoc[data-v-83890dd9]{padding:48px 32px 128px}}@media (min-width: 960px){.VPDoc[data-v-83890dd9]{padding:48px 32px 0}.VPDoc:not(.has-sidebar) .container[data-v-83890dd9]{display:flex;justify-content:center;max-width:992px}.VPDoc:not(.has-sidebar) .content[data-v-83890dd9]{max-width:752px}}@media (min-width: 1280px){.VPDoc .container[data-v-83890dd9]{display:flex;justify-content:center}.VPDoc .aside[data-v-83890dd9]{display:block}}@media (min-width: 1440px){.VPDoc:not(.has-sidebar) .content[data-v-83890dd9]{max-width:784px}.VPDoc:not(.has-sidebar) .container[data-v-83890dd9]{max-width:1104px}}.container[data-v-83890dd9]{margin:0 auto;width:100%}.aside[data-v-83890dd9]{position:relative;display:none;order:2;flex-grow:1;padding-left:32px;width:100%;max-width:256px}.left-aside[data-v-83890dd9]{order:1;padding-left:unset;padding-right:32px}.aside-container[data-v-83890dd9]{position:fixed;top:0;padding-top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + var(--vp-doc-top-height, 0px) + 48px);width:224px;height:100vh;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.aside-container[data-v-83890dd9]::-webkit-scrollbar{display:none}.aside-curtain[data-v-83890dd9]{position:fixed;bottom:0;z-index:10;width:224px;height:32px;background:linear-gradient(transparent,var(--vp-c-bg) 70%)}.aside-content[data-v-83890dd9]{display:flex;flex-direction:column;min-height:calc(100vh - (var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 48px));padding-bottom:32px}.content[data-v-83890dd9]{position:relative;margin:0 auto;width:100%}@media (min-width: 960px){.content[data-v-83890dd9]{padding:0 32px 128px}}@media (min-width: 1280px){.content[data-v-83890dd9]{order:1;margin:0;min-width:640px}}.content-container[data-v-83890dd9]{margin:0 auto}.VPDoc.has-aside .content-container[data-v-83890dd9]{max-width:688px}.VPButton[data-v-906d7fb4]{display:inline-block;border:1px solid transparent;text-align:center;font-weight:600;white-space:nowrap;transition:color .25s,border-color .25s,background-color .25s}.VPButton[data-v-906d7fb4]:active{transition:color .1s,border-color .1s,background-color .1s}.VPButton.medium[data-v-906d7fb4]{border-radius:20px;padding:0 20px;line-height:38px;font-size:14px}.VPButton.big[data-v-906d7fb4]{border-radius:24px;padding:0 24px;line-height:46px;font-size:16px}.VPButton.brand[data-v-906d7fb4]{border-color:var(--vp-button-brand-border);color:var(--vp-button-brand-text);background-color:var(--vp-button-brand-bg)}.VPButton.brand[data-v-906d7fb4]:hover{border-color:var(--vp-button-brand-hover-border);color:var(--vp-button-brand-hover-text);background-color:var(--vp-button-brand-hover-bg)}.VPButton.brand[data-v-906d7fb4]:active{border-color:var(--vp-button-brand-active-border);color:var(--vp-button-brand-active-text);background-color:var(--vp-button-brand-active-bg)}.VPButton.alt[data-v-906d7fb4]{border-color:var(--vp-button-alt-border);color:var(--vp-button-alt-text);background-color:var(--vp-button-alt-bg)}.VPButton.alt[data-v-906d7fb4]:hover{border-color:var(--vp-button-alt-hover-border);color:var(--vp-button-alt-hover-text);background-color:var(--vp-button-alt-hover-bg)}.VPButton.alt[data-v-906d7fb4]:active{border-color:var(--vp-button-alt-active-border);color:var(--vp-button-alt-active-text);background-color:var(--vp-button-alt-active-bg)}.VPButton.sponsor[data-v-906d7fb4]{border-color:var(--vp-button-sponsor-border);color:var(--vp-button-sponsor-text);background-color:var(--vp-button-sponsor-bg)}.VPButton.sponsor[data-v-906d7fb4]:hover{border-color:var(--vp-button-sponsor-hover-border);color:var(--vp-button-sponsor-hover-text);background-color:var(--vp-button-sponsor-hover-bg)}.VPButton.sponsor[data-v-906d7fb4]:active{border-color:var(--vp-button-sponsor-active-border);color:var(--vp-button-sponsor-active-text);background-color:var(--vp-button-sponsor-active-bg)}html:not(.dark) .VPImage.dark[data-v-35a7d0b8]{display:none}.dark .VPImage.light[data-v-35a7d0b8]{display:none}.VPHero[data-v-955009fc]{margin-top:calc((var(--vp-nav-height) + var(--vp-layout-top-height, 0px)) * -1);padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 48px) 24px 48px}@media (min-width: 640px){.VPHero[data-v-955009fc]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 48px 64px}}@media (min-width: 960px){.VPHero[data-v-955009fc]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 64px 64px}}.container[data-v-955009fc]{display:flex;flex-direction:column;margin:0 auto;max-width:1152px}@media (min-width: 960px){.container[data-v-955009fc]{flex-direction:row}}.main[data-v-955009fc]{position:relative;z-index:10;order:2;flex-grow:1;flex-shrink:0}.VPHero.has-image .container[data-v-955009fc]{text-align:center}@media (min-width: 960px){.VPHero.has-image .container[data-v-955009fc]{text-align:left}}@media (min-width: 960px){.main[data-v-955009fc]{order:1;width:calc((100% / 3) * 2)}.VPHero.has-image .main[data-v-955009fc]{max-width:592px}}.name[data-v-955009fc],.text[data-v-955009fc]{max-width:392px;letter-spacing:-.4px;line-height:40px;font-size:32px;font-weight:700;white-space:pre-wrap}.VPHero.has-image .name[data-v-955009fc],.VPHero.has-image .text[data-v-955009fc]{margin:0 auto}.name[data-v-955009fc]{color:var(--vp-home-hero-name-color)}.clip[data-v-955009fc]{background:var(--vp-home-hero-name-background);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:var(--vp-home-hero-name-color)}@media (min-width: 640px){.name[data-v-955009fc],.text[data-v-955009fc]{max-width:576px;line-height:56px;font-size:48px}}@media (min-width: 960px){.name[data-v-955009fc],.text[data-v-955009fc]{line-height:64px;font-size:56px}.VPHero.has-image .name[data-v-955009fc],.VPHero.has-image .text[data-v-955009fc]{margin:0}}.tagline[data-v-955009fc]{padding-top:8px;max-width:392px;line-height:28px;font-size:18px;font-weight:500;white-space:pre-wrap;color:var(--vp-c-text-2)}.VPHero.has-image .tagline[data-v-955009fc]{margin:0 auto}@media (min-width: 640px){.tagline[data-v-955009fc]{padding-top:12px;max-width:576px;line-height:32px;font-size:20px}}@media (min-width: 960px){.tagline[data-v-955009fc]{line-height:36px;font-size:24px}.VPHero.has-image .tagline[data-v-955009fc]{margin:0}}.actions[data-v-955009fc]{display:flex;flex-wrap:wrap;margin:-6px;padding-top:24px}.VPHero.has-image .actions[data-v-955009fc]{justify-content:center}@media (min-width: 640px){.actions[data-v-955009fc]{padding-top:32px}}@media (min-width: 960px){.VPHero.has-image .actions[data-v-955009fc]{justify-content:flex-start}}.action[data-v-955009fc]{flex-shrink:0;padding:6px}.image[data-v-955009fc]{order:1;margin:-76px -24px -48px}@media (min-width: 640px){.image[data-v-955009fc]{margin:-108px -24px -48px}}@media (min-width: 960px){.image[data-v-955009fc]{flex-grow:1;order:2;margin:0;min-height:100%}}.image-container[data-v-955009fc]{position:relative;margin:0 auto;width:320px;height:320px}@media (min-width: 640px){.image-container[data-v-955009fc]{width:392px;height:392px}}@media (min-width: 960px){.image-container[data-v-955009fc]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;transform:translate(-32px,-32px)}}.image-bg[data-v-955009fc]{position:absolute;top:50%;left:50%;border-radius:50%;width:192px;height:192px;background-image:var(--vp-home-hero-image-background-image);filter:var(--vp-home-hero-image-filter);transform:translate(-50%,-50%)}@media (min-width: 640px){.image-bg[data-v-955009fc]{width:256px;height:256px}}@media (min-width: 960px){.image-bg[data-v-955009fc]{width:320px;height:320px}}[data-v-955009fc] .image-src{position:absolute;top:50%;left:50%;max-width:192px;max-height:192px;transform:translate(-50%,-50%)}@media (min-width: 640px){[data-v-955009fc] .image-src{max-width:256px;max-height:256px}}@media (min-width: 960px){[data-v-955009fc] .image-src{max-width:320px;max-height:320px}}.VPFeature[data-v-f5e9645b]{display:block;border:1px solid var(--vp-c-bg-soft);border-radius:12px;height:100%;background-color:var(--vp-c-bg-soft);transition:border-color .25s,background-color .25s}.VPFeature.link[data-v-f5e9645b]:hover{border-color:var(--vp-c-brand-1)}.box[data-v-f5e9645b]{display:flex;flex-direction:column;padding:24px;height:100%}.box[data-v-f5e9645b]>.VPImage{margin-bottom:20px}.icon[data-v-f5e9645b]{display:flex;justify-content:center;align-items:center;margin-bottom:20px;border-radius:6px;background-color:var(--vp-c-default-soft);width:48px;height:48px;font-size:24px;transition:background-color .25s}.title[data-v-f5e9645b]{line-height:24px;font-size:16px;font-weight:600}.details[data-v-f5e9645b]{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.link-text[data-v-f5e9645b]{padding-top:8px}.link-text-value[data-v-f5e9645b]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.link-text-icon[data-v-f5e9645b]{margin-left:6px}.VPFeatures[data-v-d0a190d7]{position:relative;padding:0 24px}@media (min-width: 640px){.VPFeatures[data-v-d0a190d7]{padding:0 48px}}@media (min-width: 960px){.VPFeatures[data-v-d0a190d7]{padding:0 64px}}.container[data-v-d0a190d7]{margin:0 auto;max-width:1152px}.items[data-v-d0a190d7]{display:flex;flex-wrap:wrap;margin:-8px}.item[data-v-d0a190d7]{padding:8px;width:100%}@media (min-width: 640px){.item.grid-2[data-v-d0a190d7],.item.grid-4[data-v-d0a190d7],.item.grid-6[data-v-d0a190d7]{width:50%}}@media (min-width: 768px){.item.grid-2[data-v-d0a190d7],.item.grid-4[data-v-d0a190d7]{width:50%}.item.grid-3[data-v-d0a190d7],.item.grid-6[data-v-d0a190d7]{width:calc(100% / 3)}}@media (min-width: 960px){.item.grid-4[data-v-d0a190d7]{width:25%}}.container[data-v-7a48a447]{margin:auto;width:100%;max-width:1280px;padding:0 24px}@media (min-width: 640px){.container[data-v-7a48a447]{padding:0 48px}}@media (min-width: 960px){.container[data-v-7a48a447]{width:100%;padding:0 64px}}.vp-doc[data-v-7a48a447] .VPHomeSponsors,.vp-doc[data-v-7a48a447] .VPTeamPage{margin-left:var(--vp-offset, calc(50% - 50vw) );margin-right:var(--vp-offset, calc(50% - 50vw) )}.vp-doc[data-v-7a48a447] .VPHomeSponsors h2{border-top:none;letter-spacing:normal}.vp-doc[data-v-7a48a447] .VPHomeSponsors a,.vp-doc[data-v-7a48a447] .VPTeamPage a{text-decoration:none}.VPHome[data-v-cbb6ec48]{margin-bottom:96px}@media (min-width: 768px){.VPHome[data-v-cbb6ec48]{margin-bottom:128px}}.VPContent[data-v-91765379]{flex-grow:1;flex-shrink:0;margin:var(--vp-layout-top-height, 0px) auto 0;width:100%}.VPContent.is-home[data-v-91765379]{width:100%;max-width:100%}.VPContent.has-sidebar[data-v-91765379]{margin:0}@media (min-width: 960px){.VPContent[data-v-91765379]{padding-top:var(--vp-nav-height)}.VPContent.has-sidebar[data-v-91765379]{margin:var(--vp-layout-top-height, 0px) 0 0;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPContent.has-sidebar[data-v-91765379]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.VPFooter[data-v-c970a860]{position:relative;z-index:var(--vp-z-index-footer);border-top:1px solid var(--vp-c-gutter);padding:32px 24px;background-color:var(--vp-c-bg)}.VPFooter.has-sidebar[data-v-c970a860]{display:none}.VPFooter[data-v-c970a860] a{text-decoration-line:underline;text-underline-offset:2px;transition:color .25s}.VPFooter[data-v-c970a860] a:hover{color:var(--vp-c-text-1)}@media (min-width: 768px){.VPFooter[data-v-c970a860]{padding:32px}}.container[data-v-c970a860]{margin:0 auto;max-width:var(--vp-layout-max-width);text-align:center}.message[data-v-c970a860],.copyright[data-v-c970a860]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.VPLocalNavOutlineDropdown[data-v-bc9dc845]{padding:12px 20px 11px}@media (min-width: 960px){.VPLocalNavOutlineDropdown[data-v-bc9dc845]{padding:12px 36px 11px}}.VPLocalNavOutlineDropdown button[data-v-bc9dc845]{display:block;font-size:12px;font-weight:500;line-height:24px;color:var(--vp-c-text-2);transition:color .5s;position:relative}.VPLocalNavOutlineDropdown button[data-v-bc9dc845]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPLocalNavOutlineDropdown button.open[data-v-bc9dc845]{color:var(--vp-c-text-1)}.icon[data-v-bc9dc845]{display:inline-block;vertical-align:middle;margin-left:2px;font-size:14px;transform:rotate(0);transition:transform .25s}@media (min-width: 960px){.VPLocalNavOutlineDropdown button[data-v-bc9dc845]{font-size:14px}.icon[data-v-bc9dc845]{font-size:16px}}.open>.icon[data-v-bc9dc845]{transform:rotate(90deg)}.items[data-v-bc9dc845]{position:absolute;top:40px;right:16px;left:16px;display:grid;gap:1px;border:1px solid var(--vp-c-border);border-radius:8px;background-color:var(--vp-c-gutter);max-height:calc(var(--vp-vh, 100vh) - 86px);overflow:hidden auto;box-shadow:var(--vp-shadow-3)}@media (min-width: 960px){.items[data-v-bc9dc845]{right:auto;left:calc(var(--vp-sidebar-width) + 32px);width:320px}}.header[data-v-bc9dc845]{background-color:var(--vp-c-bg-soft)}.top-link[data-v-bc9dc845]{display:block;padding:0 16px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.outline[data-v-bc9dc845]{padding:8px 0;background-color:var(--vp-c-bg-soft)}.flyout-enter-active[data-v-bc9dc845]{transition:all .2s ease-out}.flyout-leave-active[data-v-bc9dc845]{transition:all .15s ease-in}.flyout-enter-from[data-v-bc9dc845],.flyout-leave-to[data-v-bc9dc845]{opacity:0;transform:translateY(-16px)}.VPLocalNav[data-v-070ab83d]{position:sticky;top:0;left:0;z-index:var(--vp-z-index-local-nav);border-bottom:1px solid var(--vp-c-gutter);padding-top:var(--vp-layout-top-height, 0px);width:100%;background-color:var(--vp-local-nav-bg-color)}.VPLocalNav.fixed[data-v-070ab83d]{position:fixed}@media (min-width: 960px){.VPLocalNav[data-v-070ab83d]{top:var(--vp-nav-height)}.VPLocalNav.has-sidebar[data-v-070ab83d]{padding-left:var(--vp-sidebar-width)}.VPLocalNav.empty[data-v-070ab83d]{display:none}}@media (min-width: 1280px){.VPLocalNav[data-v-070ab83d]{display:none}}@media (min-width: 1440px){.VPLocalNav.has-sidebar[data-v-070ab83d]{padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.container[data-v-070ab83d]{display:flex;justify-content:space-between;align-items:center}.menu[data-v-070ab83d]{display:flex;align-items:center;padding:12px 24px 11px;line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.menu[data-v-070ab83d]:hover{color:var(--vp-c-text-1);transition:color .25s}@media (min-width: 768px){.menu[data-v-070ab83d]{padding:0 32px}}@media (min-width: 960px){.menu[data-v-070ab83d]{display:none}}.menu-icon[data-v-070ab83d]{margin-right:8px;font-size:14px}.VPOutlineDropdown[data-v-070ab83d]{padding:12px 24px 11px}@media (min-width: 768px){.VPOutlineDropdown[data-v-070ab83d]{padding:12px 32px 11px}}.VPSwitch[data-v-4a1c76db]{position:relative;border-radius:11px;display:block;width:40px;height:22px;flex-shrink:0;border:1px solid var(--vp-input-border-color);background-color:var(--vp-input-switch-bg-color);transition:border-color .25s!important}.VPSwitch[data-v-4a1c76db]:hover{border-color:var(--vp-c-brand-1)}.check[data-v-4a1c76db]{position:absolute;top:1px;left:1px;width:18px;height:18px;border-radius:50%;background-color:var(--vp-c-neutral-inverse);box-shadow:var(--vp-shadow-1);transition:transform .25s!important}.icon[data-v-4a1c76db]{position:relative;display:block;width:18px;height:18px;border-radius:50%;overflow:hidden}.icon[data-v-4a1c76db] [class^=vpi-]{position:absolute;top:3px;left:3px;width:12px;height:12px;color:var(--vp-c-text-2)}.dark .icon[data-v-4a1c76db] [class^=vpi-]{color:var(--vp-c-text-1);transition:opacity .25s!important}.sun[data-v-e40a8bb6]{opacity:1}.moon[data-v-e40a8bb6],.dark .sun[data-v-e40a8bb6]{opacity:0}.dark .moon[data-v-e40a8bb6]{opacity:1}.dark .VPSwitchAppearance[data-v-e40a8bb6] .check{transform:translate(18px)}.VPNavBarAppearance[data-v-af096f4a]{display:none}@media (min-width: 1280px){.VPNavBarAppearance[data-v-af096f4a]{display:flex;align-items:center}}.VPMenuGroup+.VPMenuLink[data-v-8b74d055]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.link[data-v-8b74d055]{display:block;border-radius:6px;padding:0 12px;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);white-space:nowrap;transition:background-color .25s,color .25s}.link[data-v-8b74d055]:hover{color:var(--vp-c-brand-1);background-color:var(--vp-c-default-soft)}.link.active[data-v-8b74d055]{color:var(--vp-c-brand-1)}.VPMenuGroup[data-v-48c802d0]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.VPMenuGroup[data-v-48c802d0]:first-child{margin-top:0;border-top:0;padding-top:0}.VPMenuGroup+.VPMenuGroup[data-v-48c802d0]{margin-top:12px;border-top:1px solid var(--vp-c-divider)}.title[data-v-48c802d0]{padding:0 12px;line-height:32px;font-size:14px;font-weight:600;color:var(--vp-c-text-2);white-space:nowrap;transition:color .25s}.VPMenu[data-v-7dd3104a]{border-radius:12px;padding:12px;min-width:128px;border:1px solid var(--vp-c-divider);background-color:var(--vp-c-bg-elv);box-shadow:var(--vp-shadow-3);transition:background-color .5s;max-height:calc(100vh - var(--vp-nav-height));overflow-y:auto}.VPMenu[data-v-7dd3104a] .group{margin:0 -12px;padding:0 12px 12px}.VPMenu[data-v-7dd3104a] .group+.group{border-top:1px solid var(--vp-c-divider);padding:11px 12px 12px}.VPMenu[data-v-7dd3104a] .group:last-child{padding-bottom:0}.VPMenu[data-v-7dd3104a] .group+.item{border-top:1px solid var(--vp-c-divider);padding:11px 16px 0}.VPMenu[data-v-7dd3104a] .item{padding:0 16px;white-space:nowrap}.VPMenu[data-v-7dd3104a] .label{flex-grow:1;line-height:28px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.VPMenu[data-v-7dd3104a] .action{padding-left:24px}.VPFlyout[data-v-04f5c5e9]{position:relative}.VPFlyout[data-v-04f5c5e9]:hover{color:var(--vp-c-brand-1);transition:color .25s}.VPFlyout:hover .text[data-v-04f5c5e9]{color:var(--vp-c-text-2)}.VPFlyout:hover .icon[data-v-04f5c5e9]{fill:var(--vp-c-text-2)}.VPFlyout.active .text[data-v-04f5c5e9]{color:var(--vp-c-brand-1)}.VPFlyout.active:hover .text[data-v-04f5c5e9]{color:var(--vp-c-brand-2)}.button[aria-expanded=false]+.menu[data-v-04f5c5e9]{opacity:0;visibility:hidden;transform:translateY(0)}.VPFlyout:hover .menu[data-v-04f5c5e9],.button[aria-expanded=true]+.menu[data-v-04f5c5e9]{opacity:1;visibility:visible;transform:translateY(0)}.button[data-v-04f5c5e9]{display:flex;align-items:center;padding:0 12px;height:var(--vp-nav-height);color:var(--vp-c-text-1);transition:color .5s}.text[data-v-04f5c5e9]{display:flex;align-items:center;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.option-icon[data-v-04f5c5e9]{margin-right:0;font-size:16px}.text-icon[data-v-04f5c5e9]{margin-left:4px;font-size:14px}.icon[data-v-04f5c5e9]{font-size:20px;transition:fill .25s}.menu[data-v-04f5c5e9]{position:absolute;top:calc(var(--vp-nav-height) / 2 + 20px);right:0;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s,transform .25s}.VPSocialLink[data-v-717b8b75]{display:flex;justify-content:center;align-items:center;width:36px;height:36px;color:var(--vp-c-text-2);transition:color .5s}.VPSocialLink[data-v-717b8b75]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPSocialLink[data-v-717b8b75]>svg,.VPSocialLink[data-v-717b8b75]>[class^=vpi-social-]{width:20px;height:20px;fill:currentColor}.VPSocialLinks[data-v-ee7a9424]{display:flex;justify-content:center}.VPNavBarExtra[data-v-925effce]{display:none;margin-right:-12px}@media (min-width: 768px){.VPNavBarExtra[data-v-925effce]{display:block}}@media (min-width: 1280px){.VPNavBarExtra[data-v-925effce]{display:none}}.trans-title[data-v-925effce]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.item.appearance[data-v-925effce],.item.social-links[data-v-925effce]{display:flex;align-items:center;padding:0 12px}.item.appearance[data-v-925effce]{min-width:176px}.appearance-action[data-v-925effce]{margin-right:-2px}.social-links-list[data-v-925effce]{margin:-4px -8px}.VPNavBarHamburger[data-v-5dea55bf]{display:flex;justify-content:center;align-items:center;width:48px;height:var(--vp-nav-height)}@media (min-width: 768px){.VPNavBarHamburger[data-v-5dea55bf]{display:none}}.container[data-v-5dea55bf]{position:relative;width:16px;height:14px;overflow:hidden}.VPNavBarHamburger:hover .top[data-v-5dea55bf]{top:0;left:0;transform:translate(4px)}.VPNavBarHamburger:hover .middle[data-v-5dea55bf]{top:6px;left:0;transform:translate(0)}.VPNavBarHamburger:hover .bottom[data-v-5dea55bf]{top:12px;left:0;transform:translate(8px)}.VPNavBarHamburger.active .top[data-v-5dea55bf]{top:6px;transform:translate(0) rotate(225deg)}.VPNavBarHamburger.active .middle[data-v-5dea55bf]{top:6px;transform:translate(16px)}.VPNavBarHamburger.active .bottom[data-v-5dea55bf]{top:6px;transform:translate(0) rotate(135deg)}.VPNavBarHamburger.active:hover .top[data-v-5dea55bf],.VPNavBarHamburger.active:hover .middle[data-v-5dea55bf],.VPNavBarHamburger.active:hover .bottom[data-v-5dea55bf]{background-color:var(--vp-c-text-2);transition:top .25s,background-color .25s,transform .25s}.top[data-v-5dea55bf],.middle[data-v-5dea55bf],.bottom[data-v-5dea55bf]{position:absolute;width:16px;height:2px;background-color:var(--vp-c-text-1);transition:top .25s,background-color .5s,transform .25s}.top[data-v-5dea55bf]{top:0;left:0;transform:translate(0)}.middle[data-v-5dea55bf]{top:6px;left:0;transform:translate(8px)}.bottom[data-v-5dea55bf]{top:12px;left:0;transform:translate(4px)}.VPNavBarMenuLink[data-v-ed5ac1f6]{display:flex;align-items:center;padding:0 12px;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.VPNavBarMenuLink.active[data-v-ed5ac1f6],.VPNavBarMenuLink[data-v-ed5ac1f6]:hover{color:var(--vp-c-brand-1)}.VPNavBarMenu[data-v-e6d46098]{display:none}@media (min-width: 768px){.VPNavBarMenu[data-v-e6d46098]{display:flex}}/*! @docsearch/css 3.6.2 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */:root{--docsearch-primary-color:#5468ff;--docsearch-text-color:#1c1e21;--docsearch-spacing:12px;--docsearch-icon-stroke-width:1.4;--docsearch-highlight-color:var(--docsearch-primary-color);--docsearch-muted-color:#969faf;--docsearch-container-background:rgba(101,108,133,.8);--docsearch-logo-color:#5468ff;--docsearch-modal-width:560px;--docsearch-modal-height:600px;--docsearch-modal-background:#f5f6f7;--docsearch-modal-shadow:inset 1px 1px 0 0 hsla(0,0%,100%,.5),0 3px 8px 0 #555a64;--docsearch-searchbox-height:56px;--docsearch-searchbox-background:#ebedf0;--docsearch-searchbox-focus-background:#fff;--docsearch-searchbox-shadow:inset 0 0 0 2px var(--docsearch-primary-color);--docsearch-hit-height:56px;--docsearch-hit-color:#444950;--docsearch-hit-active-color:#fff;--docsearch-hit-background:#fff;--docsearch-hit-shadow:0 1px 3px 0 #d4d9e1;--docsearch-key-gradient:linear-gradient(-225deg,#d5dbe4,#f8f8f8);--docsearch-key-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 2px 1px rgba(30,35,90,.4);--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 1px 0 rgba(30,35,90,.4);--docsearch-footer-height:44px;--docsearch-footer-background:#fff;--docsearch-footer-shadow:0 -1px 0 0 #e0e3e8,0 -3px 6px 0 rgba(69,98,155,.12)}html[data-theme=dark]{--docsearch-text-color:#f5f6f7;--docsearch-container-background:rgba(9,10,17,.8);--docsearch-modal-background:#15172a;--docsearch-modal-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;--docsearch-searchbox-background:#090a11;--docsearch-searchbox-focus-background:#000;--docsearch-hit-color:#bec3c9;--docsearch-hit-shadow:none;--docsearch-hit-background:#090a11;--docsearch-key-gradient:linear-gradient(-26.5deg,#565872,#31355b);--docsearch-key-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 2px 2px 0 rgba(3,4,9,.3);--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 1px 1px 0 rgba(3,4,9,.30196078431372547);--docsearch-footer-background:#1e2136;--docsearch-footer-shadow:inset 0 1px 0 0 rgba(73,76,106,.5),0 -4px 8px 0 rgba(0,0,0,.2);--docsearch-logo-color:#fff;--docsearch-muted-color:#7f8497}.DocSearch-Button{align-items:center;background:var(--docsearch-searchbox-background);border:0;border-radius:40px;color:var(--docsearch-muted-color);cursor:pointer;display:flex;font-weight:500;height:36px;justify-content:space-between;margin:0 0 0 16px;padding:0 8px;-webkit-user-select:none;user-select:none}.DocSearch-Button:active,.DocSearch-Button:focus,.DocSearch-Button:hover{background:var(--docsearch-searchbox-focus-background);box-shadow:var(--docsearch-searchbox-shadow);color:var(--docsearch-text-color);outline:none}.DocSearch-Button-Container{align-items:center;display:flex}.DocSearch-Search-Icon{stroke-width:1.6}.DocSearch-Button .DocSearch-Search-Icon{color:var(--docsearch-text-color)}.DocSearch-Button-Placeholder{font-size:1rem;padding:0 12px 0 6px}.DocSearch-Button-Keys{display:flex;min-width:calc(40px + .8em)}.DocSearch-Button-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:3px;box-shadow:var(--docsearch-key-shadow);color:var(--docsearch-muted-color);display:flex;height:18px;justify-content:center;margin-right:.4em;position:relative;padding:0 0 2px;border:0;top:-1px;width:20px}.DocSearch-Button-Key--pressed{transform:translate3d(0,1px,0);box-shadow:var(--docsearch-key-pressed-shadow)}@media (max-width:768px){.DocSearch-Button-Keys,.DocSearch-Button-Placeholder{display:none}}.DocSearch--active{overflow:hidden!important}.DocSearch-Container,.DocSearch-Container *{box-sizing:border-box}.DocSearch-Container{background-color:var(--docsearch-container-background);height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:200}.DocSearch-Container a{text-decoration:none}.DocSearch-Link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;font:inherit;margin:0;padding:0}.DocSearch-Modal{background:var(--docsearch-modal-background);border-radius:6px;box-shadow:var(--docsearch-modal-shadow);flex-direction:column;margin:60px auto auto;max-width:var(--docsearch-modal-width);position:relative}.DocSearch-SearchBar{display:flex;padding:var(--docsearch-spacing) var(--docsearch-spacing) 0}.DocSearch-Form{align-items:center;background:var(--docsearch-searchbox-focus-background);border-radius:4px;box-shadow:var(--docsearch-searchbox-shadow);display:flex;height:var(--docsearch-searchbox-height);margin:0;padding:0 var(--docsearch-spacing);position:relative;width:100%}.DocSearch-Input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--docsearch-text-color);flex:1;font:inherit;font-size:1.2em;height:100%;outline:none;padding:0 0 0 8px;width:80%}.DocSearch-Input::placeholder{color:var(--docsearch-muted-color);opacity:1}.DocSearch-Input::-webkit-search-cancel-button,.DocSearch-Input::-webkit-search-decoration,.DocSearch-Input::-webkit-search-results-button,.DocSearch-Input::-webkit-search-results-decoration{display:none}.DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{margin:0;padding:0}.DocSearch-MagnifierLabel,.DocSearch-Reset{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}.DocSearch-Container--Stalled .DocSearch-MagnifierLabel,.DocSearch-LoadingIndicator{display:none}.DocSearch-Container--Stalled .DocSearch-LoadingIndicator{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Reset{animation:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;right:0;stroke-width:var(--docsearch-icon-stroke-width)}}.DocSearch-Reset{animation:fade-in .1s ease-in forwards;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;padding:2px;right:0;stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Reset[hidden]{display:none}.DocSearch-Reset:hover{color:var(--docsearch-highlight-color)}.DocSearch-LoadingIndicator svg,.DocSearch-MagnifierLabel svg{height:24px;width:24px}.DocSearch-Cancel{display:none}.DocSearch-Dropdown{max-height:calc(var(--docsearch-modal-height) - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height));min-height:var(--docsearch-spacing);overflow-y:auto;overflow-y:overlay;padding:0 var(--docsearch-spacing);scrollbar-color:var(--docsearch-muted-color) var(--docsearch-modal-background);scrollbar-width:thin}.DocSearch-Dropdown::-webkit-scrollbar{width:12px}.DocSearch-Dropdown::-webkit-scrollbar-track{background:transparent}.DocSearch-Dropdown::-webkit-scrollbar-thumb{background-color:var(--docsearch-muted-color);border:3px solid var(--docsearch-modal-background);border-radius:20px}.DocSearch-Dropdown ul{list-style:none;margin:0;padding:0}.DocSearch-Label{font-size:.75em;line-height:1.6em}.DocSearch-Help,.DocSearch-Label{color:var(--docsearch-muted-color)}.DocSearch-Help{font-size:.9em;margin:0;-webkit-user-select:none;user-select:none}.DocSearch-Title{font-size:1.2em}.DocSearch-Logo a{display:flex}.DocSearch-Logo svg{color:var(--docsearch-logo-color);margin-left:8px}.DocSearch-Hits:last-of-type{margin-bottom:24px}.DocSearch-Hits mark{background:none;color:var(--docsearch-highlight-color)}.DocSearch-HitsFooter{color:var(--docsearch-muted-color);display:flex;font-size:.85em;justify-content:center;margin-bottom:var(--docsearch-spacing);padding:var(--docsearch-spacing)}.DocSearch-HitsFooter a{border-bottom:1px solid;color:inherit}.DocSearch-Hit{border-radius:4px;display:flex;padding-bottom:4px;position:relative}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--deleting{transition:none}}.DocSearch-Hit--deleting{opacity:0;transition:all .25s linear}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--favoriting{transition:none}}.DocSearch-Hit--favoriting{transform:scale(0);transform-origin:top center;transition:all .25s linear;transition-delay:.25s}.DocSearch-Hit a{background:var(--docsearch-hit-background);border-radius:4px;box-shadow:var(--docsearch-hit-shadow);display:block;padding-left:var(--docsearch-spacing);width:100%}.DocSearch-Hit-source{background:var(--docsearch-modal-background);color:var(--docsearch-highlight-color);font-size:.85em;font-weight:600;line-height:32px;margin:0 -4px;padding:8px 4px 0;position:sticky;top:0;z-index:10}.DocSearch-Hit-Tree{color:var(--docsearch-muted-color);height:var(--docsearch-hit-height);opacity:.5;stroke-width:var(--docsearch-icon-stroke-width);width:24px}.DocSearch-Hit[aria-selected=true] a{background-color:var(--docsearch-highlight-color)}.DocSearch-Hit[aria-selected=true] mark{text-decoration:underline}.DocSearch-Hit-Container{align-items:center;color:var(--docsearch-hit-color);display:flex;flex-direction:row;height:var(--docsearch-hit-height);padding:0 var(--docsearch-spacing) 0 0}.DocSearch-Hit-icon{height:20px;width:20px}.DocSearch-Hit-action,.DocSearch-Hit-icon{color:var(--docsearch-muted-color);stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Hit-action{align-items:center;display:flex;height:22px;width:22px}.DocSearch-Hit-action svg{display:block;height:18px;width:18px}.DocSearch-Hit-action+.DocSearch-Hit-action{margin-left:6px}.DocSearch-Hit-action-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:inherit;cursor:pointer;padding:2px}svg.DocSearch-Hit-Select-Icon{display:none}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Select-Icon{display:block}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:background-color .1s ease-in}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{transition:none}}.DocSearch-Hit-action-button:focus path,.DocSearch-Hit-action-button:hover path{fill:#fff}.DocSearch-Hit-content-wrapper{display:flex;flex:1 1 auto;flex-direction:column;font-weight:500;justify-content:center;line-height:1.2em;margin:0 8px;overflow-x:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:80%}.DocSearch-Hit-title{font-size:.9em}.DocSearch-Hit-path{color:var(--docsearch-muted-color);font-size:.75em}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-action,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-icon,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-path,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-text,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-title,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Tree,.DocSearch-Hit[aria-selected=true] mark{color:var(--docsearch-hit-active-color)!important}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:none}}.DocSearch-ErrorScreen,.DocSearch-NoResults,.DocSearch-StartScreen{font-size:.9em;margin:0 auto;padding:36px 0;text-align:center;width:80%}.DocSearch-Screen-Icon{color:var(--docsearch-muted-color);padding-bottom:12px}.DocSearch-NoResults-Prefill-List{display:inline-block;padding-bottom:24px;text-align:left}.DocSearch-NoResults-Prefill-List ul{display:inline-block;padding:8px 0 0}.DocSearch-NoResults-Prefill-List li{list-style-position:inside;list-style-type:"» "}.DocSearch-Prefill{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:1em;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;font-size:1em;font-weight:700;padding:0}.DocSearch-Prefill:focus,.DocSearch-Prefill:hover{outline:none;text-decoration:underline}.DocSearch-Footer{align-items:center;background:var(--docsearch-footer-background);border-radius:0 0 8px 8px;box-shadow:var(--docsearch-footer-shadow);display:flex;flex-direction:row-reverse;flex-shrink:0;height:var(--docsearch-footer-height);justify-content:space-between;padding:0 var(--docsearch-spacing);position:relative;-webkit-user-select:none;user-select:none;width:100%;z-index:300}.DocSearch-Commands{color:var(--docsearch-muted-color);display:flex;list-style:none;margin:0;padding:0}.DocSearch-Commands li{align-items:center;display:flex}.DocSearch-Commands li:not(:last-of-type){margin-right:.8em}.DocSearch-Commands-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:2px;box-shadow:var(--docsearch-key-shadow);display:flex;height:18px;justify-content:center;margin-right:.4em;padding:0 0 1px;color:var(--docsearch-muted-color);border:0;width:20px}.DocSearch-VisuallyHiddenForAccessibility{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@media (max-width:768px){:root{--docsearch-spacing:10px;--docsearch-footer-height:40px}.DocSearch-Dropdown{height:100%}.DocSearch-Container{height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);position:absolute}.DocSearch-Footer{border-radius:0;bottom:0;position:absolute}.DocSearch-Hit-content-wrapper{display:flex;position:relative;width:80%}.DocSearch-Modal{border-radius:0;box-shadow:none;height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);margin:0;max-width:100%;width:100%}.DocSearch-Dropdown{max-height:calc(var(--docsearch-vh, 1vh)*100 - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height))}.DocSearch-Cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;flex:none;font:inherit;font-size:1em;font-weight:500;margin-left:var(--docsearch-spacing);outline:none;overflow:hidden;padding:0;-webkit-user-select:none;user-select:none;white-space:nowrap}.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}[class*=DocSearch]{--docsearch-primary-color: var(--vp-c-brand-1);--docsearch-highlight-color: var(--docsearch-primary-color);--docsearch-text-color: var(--vp-c-text-1);--docsearch-muted-color: var(--vp-c-text-2);--docsearch-searchbox-shadow: none;--docsearch-searchbox-background: transparent;--docsearch-searchbox-focus-background: transparent;--docsearch-key-gradient: transparent;--docsearch-key-shadow: none;--docsearch-modal-background: var(--vp-c-bg-soft);--docsearch-footer-background: var(--vp-c-bg)}.dark [class*=DocSearch]{--docsearch-modal-shadow: none;--docsearch-footer-shadow: none;--docsearch-logo-color: var(--vp-c-text-2);--docsearch-hit-background: var(--vp-c-default-soft);--docsearch-hit-color: var(--vp-c-text-2);--docsearch-hit-shadow: none}.DocSearch-Button{display:flex;justify-content:center;align-items:center;margin:0;padding:0;width:48px;height:55px;background:transparent;transition:border-color .25s}.DocSearch-Button:hover{background:transparent}.DocSearch-Button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}.DocSearch-Button-Key--pressed{transform:none;box-shadow:none}.DocSearch-Button:focus:not(:focus-visible){outline:none!important}@media (min-width: 768px){.DocSearch-Button{justify-content:flex-start;border:1px solid transparent;border-radius:8px;padding:0 10px 0 12px;width:100%;height:40px;background-color:var(--vp-c-bg-alt)}.DocSearch-Button:hover{border-color:var(--vp-c-brand-1);background:var(--vp-c-bg-alt)}}.DocSearch-Button .DocSearch-Button-Container{display:flex;align-items:center}.DocSearch-Button .DocSearch-Search-Icon{position:relative;width:16px;height:16px;color:var(--vp-c-text-1);fill:currentColor;transition:color .5s}.DocSearch-Button:hover .DocSearch-Search-Icon{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Search-Icon{top:1px;margin-right:8px;width:14px;height:14px;color:var(--vp-c-text-2)}}.DocSearch-Button .DocSearch-Button-Placeholder{display:none;margin-top:2px;padding:0 16px 0 0;font-size:13px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.DocSearch-Button:hover .DocSearch-Button-Placeholder{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Placeholder{display:inline-block}}.DocSearch-Button .DocSearch-Button-Keys{direction:ltr;display:none;min-width:auto}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Keys{display:flex;align-items:center}}.DocSearch-Button .DocSearch-Button-Key{display:block;margin:2px 0 0;border:1px solid var(--vp-c-divider);border-right:none;border-radius:4px 0 0 4px;padding-left:6px;min-width:0;width:auto;height:22px;line-height:22px;font-family:var(--vp-font-family-base);font-size:12px;font-weight:500;transition:color .5s,border-color .5s}.DocSearch-Button .DocSearch-Button-Key+.DocSearch-Button-Key{border-right:1px solid var(--vp-c-divider);border-left:none;border-radius:0 4px 4px 0;padding-left:2px;padding-right:6px}.DocSearch-Button .DocSearch-Button-Key:first-child{font-size:0!important}.DocSearch-Button .DocSearch-Button-Key:first-child:after{content:"Ctrl";font-size:12px;letter-spacing:normal;color:var(--docsearch-muted-color)}.mac .DocSearch-Button .DocSearch-Button-Key:first-child:after{content:"⌘"}.DocSearch-Button .DocSearch-Button-Key:first-child>*{display:none}.DocSearch-Search-Icon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' stroke-width='1.6' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' d='m14.386 14.386 4.088 4.088-4.088-4.088A7.533 7.533 0 1 1 3.733 3.733a7.533 7.533 0 0 1 10.653 10.653z'/%3E%3C/svg%3E")}.VPNavBarSearch{display:flex;align-items:center}@media (min-width: 768px){.VPNavBarSearch{flex-grow:1;padding-left:24px}}@media (min-width: 960px){.VPNavBarSearch{padding-left:32px}}.dark .DocSearch-Footer{border-top:1px solid var(--vp-c-divider)}.DocSearch-Form{border:1px solid var(--vp-c-brand-1);background-color:var(--vp-c-white)}.dark .DocSearch-Form{background-color:var(--vp-c-default-soft)}.DocSearch-Screen-Icon>svg{margin:auto}.VPNavBarSocialLinks[data-v-164c457f]{display:none}@media (min-width: 1280px){.VPNavBarSocialLinks[data-v-164c457f]{display:flex;align-items:center}}.title[data-v-28a961f9]{display:flex;align-items:center;border-bottom:1px solid transparent;width:100%;height:var(--vp-nav-height);font-size:16px;font-weight:600;color:var(--vp-c-text-1);transition:opacity .25s}@media (min-width: 960px){.title[data-v-28a961f9]{flex-shrink:0}.VPNavBarTitle.has-sidebar .title[data-v-28a961f9]{border-bottom-color:var(--vp-c-divider)}}[data-v-28a961f9] .logo{margin-right:8px;height:var(--vp-nav-logo-height)}.VPNavBarTranslations[data-v-c80d9ad0]{display:none}@media (min-width: 1280px){.VPNavBarTranslations[data-v-c80d9ad0]{display:flex;align-items:center}}.title[data-v-c80d9ad0]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.VPNavBar[data-v-822684d1]{position:relative;height:var(--vp-nav-height);pointer-events:none;white-space:nowrap;transition:background-color .25s}.VPNavBar.screen-open[data-v-822684d1]{transition:none;background-color:var(--vp-nav-bg-color);border-bottom:1px solid var(--vp-c-divider)}.VPNavBar[data-v-822684d1]:not(.home){background-color:var(--vp-nav-bg-color)}@media (min-width: 960px){.VPNavBar[data-v-822684d1]:not(.home){background-color:transparent}.VPNavBar[data-v-822684d1]:not(.has-sidebar):not(.home.top){background-color:var(--vp-nav-bg-color)}}.wrapper[data-v-822684d1]{padding:0 8px 0 24px}@media (min-width: 768px){.wrapper[data-v-822684d1]{padding:0 32px}}@media (min-width: 960px){.VPNavBar.has-sidebar .wrapper[data-v-822684d1]{padding:0}}.container[data-v-822684d1]{display:flex;justify-content:space-between;margin:0 auto;max-width:calc(var(--vp-layout-max-width) - 64px);height:var(--vp-nav-height);pointer-events:none}.container>.title[data-v-822684d1],.container>.content[data-v-822684d1]{pointer-events:none}.container[data-v-822684d1] *{pointer-events:auto}@media (min-width: 960px){.VPNavBar.has-sidebar .container[data-v-822684d1]{max-width:100%}}.title[data-v-822684d1]{flex-shrink:0;height:calc(var(--vp-nav-height) - 1px);transition:background-color .5s}@media (min-width: 960px){.VPNavBar.has-sidebar .title[data-v-822684d1]{position:absolute;top:0;left:0;z-index:2;padding:0 32px;width:var(--vp-sidebar-width);height:var(--vp-nav-height);background-color:transparent}}@media (min-width: 1440px){.VPNavBar.has-sidebar .title[data-v-822684d1]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}.content[data-v-822684d1]{flex-grow:1}@media (min-width: 960px){.VPNavBar.has-sidebar .content[data-v-822684d1]{position:relative;z-index:1;padding-right:32px;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .content[data-v-822684d1]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2 + 32px);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.content-body[data-v-822684d1]{display:flex;justify-content:flex-end;align-items:center;height:var(--vp-nav-height);transition:background-color .5s}@media (min-width: 960px){.VPNavBar:not(.home.top) .content-body[data-v-822684d1]{position:relative;background-color:var(--vp-nav-bg-color)}.VPNavBar:not(.has-sidebar):not(.home.top) .content-body[data-v-822684d1]{background-color:transparent}}@media (max-width: 767px){.content-body[data-v-822684d1]{column-gap:.5rem}}.menu+.translations[data-v-822684d1]:before,.menu+.appearance[data-v-822684d1]:before,.menu+.social-links[data-v-822684d1]:before,.translations+.appearance[data-v-822684d1]:before,.appearance+.social-links[data-v-822684d1]:before{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--vp-c-divider);content:""}.menu+.appearance[data-v-822684d1]:before,.translations+.appearance[data-v-822684d1]:before{margin-right:16px}.appearance+.social-links[data-v-822684d1]:before{margin-left:16px}.social-links[data-v-822684d1]{margin-right:-8px}.divider[data-v-822684d1]{width:100%;height:1px}@media (min-width: 960px){.VPNavBar.has-sidebar .divider[data-v-822684d1]{padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .divider[data-v-822684d1]{padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.divider-line[data-v-822684d1]{width:100%;height:1px;transition:background-color .5s}.VPNavBar:not(.home) .divider-line[data-v-822684d1]{background-color:var(--vp-c-gutter)}@media (min-width: 960px){.VPNavBar:not(.home.top) .divider-line[data-v-822684d1]{background-color:var(--vp-c-gutter)}.VPNavBar:not(.has-sidebar):not(.home.top) .divider[data-v-822684d1]{background-color:var(--vp-c-gutter)}}.VPNavScreenAppearance[data-v-ffb44008]{display:flex;justify-content:space-between;align-items:center;border-radius:8px;padding:12px 14px 12px 16px;background-color:var(--vp-c-bg-soft)}.text[data-v-ffb44008]{line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.VPNavScreenMenuLink[data-v-27d04aeb]{display:block;border-bottom:1px solid var(--vp-c-divider);padding:12px 0 11px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:border-color .25s,color .25s}.VPNavScreenMenuLink[data-v-27d04aeb]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupLink[data-v-7179dbb7]{display:block;margin-left:12px;line-height:32px;font-size:14px;font-weight:400;color:var(--vp-c-text-1);transition:color .25s}.VPNavScreenMenuGroupLink[data-v-7179dbb7]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupSection[data-v-4b8941ac]{display:block}.title[data-v-4b8941ac]{line-height:32px;font-size:13px;font-weight:700;color:var(--vp-c-text-2);transition:color .25s}.VPNavScreenMenuGroup[data-v-875057a5]{border-bottom:1px solid var(--vp-c-divider);height:48px;overflow:hidden;transition:border-color .5s}.VPNavScreenMenuGroup .items[data-v-875057a5]{visibility:hidden}.VPNavScreenMenuGroup.open .items[data-v-875057a5]{visibility:visible}.VPNavScreenMenuGroup.open[data-v-875057a5]{padding-bottom:10px;height:auto}.VPNavScreenMenuGroup.open .button[data-v-875057a5]{padding-bottom:6px;color:var(--vp-c-brand-1)}.VPNavScreenMenuGroup.open .button-icon[data-v-875057a5]{transform:rotate(45deg)}.button[data-v-875057a5]{display:flex;justify-content:space-between;align-items:center;padding:12px 4px 11px 0;width:100%;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.button[data-v-875057a5]:hover{color:var(--vp-c-brand-1)}.button-icon[data-v-875057a5]{transition:transform .25s}.group[data-v-875057a5]:first-child{padding-top:0}.group+.group[data-v-875057a5],.group+.item[data-v-875057a5]{padding-top:4px}.VPNavScreenTranslations[data-v-362991c2]{height:24px;overflow:hidden}.VPNavScreenTranslations.open[data-v-362991c2]{height:auto}.title[data-v-362991c2]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-text-1)}.icon[data-v-362991c2]{font-size:16px}.icon.lang[data-v-362991c2]{margin-right:8px}.icon.chevron[data-v-362991c2]{margin-left:4px}.list[data-v-362991c2]{padding:4px 0 0 24px}.link[data-v-362991c2]{line-height:32px;font-size:13px;color:var(--vp-c-text-1)}.VPNavScreen[data-v-833aabba]{position:fixed;top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px));right:0;bottom:0;left:0;padding:0 32px;width:100%;background-color:var(--vp-nav-screen-bg-color);overflow-y:auto;transition:background-color .25s;pointer-events:auto}.VPNavScreen.fade-enter-active[data-v-833aabba],.VPNavScreen.fade-leave-active[data-v-833aabba]{transition:opacity .25s}.VPNavScreen.fade-enter-active .container[data-v-833aabba],.VPNavScreen.fade-leave-active .container[data-v-833aabba]{transition:transform .25s ease}.VPNavScreen.fade-enter-from[data-v-833aabba],.VPNavScreen.fade-leave-to[data-v-833aabba]{opacity:0}.VPNavScreen.fade-enter-from .container[data-v-833aabba],.VPNavScreen.fade-leave-to .container[data-v-833aabba]{transform:translateY(-8px)}@media (min-width: 768px){.VPNavScreen[data-v-833aabba]{display:none}}.container[data-v-833aabba]{margin:0 auto;padding:24px 0 96px;max-width:288px}.menu+.translations[data-v-833aabba],.menu+.appearance[data-v-833aabba],.translations+.appearance[data-v-833aabba]{margin-top:24px}.menu+.social-links[data-v-833aabba]{margin-top:16px}.appearance+.social-links[data-v-833aabba]{margin-top:16px}.VPNav[data-v-f1e365da]{position:relative;top:var(--vp-layout-top-height, 0px);left:0;z-index:var(--vp-z-index-nav);width:100%;pointer-events:none;transition:background-color .5s}@media (min-width: 960px){.VPNav[data-v-f1e365da]{position:fixed}}.VPSidebarItem.level-0[data-v-196b2e5f]{padding-bottom:24px}.VPSidebarItem.collapsed.level-0[data-v-196b2e5f]{padding-bottom:10px}.item[data-v-196b2e5f]{position:relative;display:flex;width:100%}.VPSidebarItem.collapsible>.item[data-v-196b2e5f]{cursor:pointer}.indicator[data-v-196b2e5f]{position:absolute;top:6px;bottom:6px;left:-17px;width:2px;border-radius:2px;transition:background-color .25s}.VPSidebarItem.level-2.is-active>.item>.indicator[data-v-196b2e5f],.VPSidebarItem.level-3.is-active>.item>.indicator[data-v-196b2e5f],.VPSidebarItem.level-4.is-active>.item>.indicator[data-v-196b2e5f],.VPSidebarItem.level-5.is-active>.item>.indicator[data-v-196b2e5f]{background-color:var(--vp-c-brand-1)}.link[data-v-196b2e5f]{display:flex;align-items:center;flex-grow:1}.text[data-v-196b2e5f]{flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;transition:color .25s}.VPSidebarItem.level-0 .text[data-v-196b2e5f]{font-weight:700;color:var(--vp-c-text-1)}.VPSidebarItem.level-1 .text[data-v-196b2e5f],.VPSidebarItem.level-2 .text[data-v-196b2e5f],.VPSidebarItem.level-3 .text[data-v-196b2e5f],.VPSidebarItem.level-4 .text[data-v-196b2e5f],.VPSidebarItem.level-5 .text[data-v-196b2e5f]{font-weight:500;color:var(--vp-c-text-2)}.VPSidebarItem.level-0.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-1.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-2.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-3.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-4.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-5.is-link>.item>.link:hover .text[data-v-196b2e5f]{color:var(--vp-c-brand-1)}.VPSidebarItem.level-0.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-1.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-2.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-3.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-4.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-5.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-0.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-1.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-2.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-3.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-4.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-5.has-active>.item>.link>.text[data-v-196b2e5f]{color:var(--vp-c-text-1)}.VPSidebarItem.level-0.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-1.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-2.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-3.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-4.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-5.is-active>.item .link>.text[data-v-196b2e5f]{color:var(--vp-c-brand-1)}.caret[data-v-196b2e5f]{display:flex;justify-content:center;align-items:center;margin-right:-7px;width:32px;height:32px;color:var(--vp-c-text-3);cursor:pointer;transition:color .25s;flex-shrink:0}.item:hover .caret[data-v-196b2e5f]{color:var(--vp-c-text-2)}.item:hover .caret[data-v-196b2e5f]:hover{color:var(--vp-c-text-1)}.caret-icon[data-v-196b2e5f]{font-size:18px;transform:rotate(90deg);transition:transform .25s}.VPSidebarItem.collapsed .caret-icon[data-v-196b2e5f]{transform:rotate(0)}.VPSidebarItem.level-1 .items[data-v-196b2e5f],.VPSidebarItem.level-2 .items[data-v-196b2e5f],.VPSidebarItem.level-3 .items[data-v-196b2e5f],.VPSidebarItem.level-4 .items[data-v-196b2e5f],.VPSidebarItem.level-5 .items[data-v-196b2e5f]{border-left:1px solid var(--vp-c-divider);padding-left:16px}.VPSidebarItem.collapsed .items[data-v-196b2e5f]{display:none}.no-transition[data-v-9e426adc] .caret-icon{transition:none}.group+.group[data-v-9e426adc]{border-top:1px solid var(--vp-c-divider);padding-top:10px}@media (min-width: 960px){.group[data-v-9e426adc]{padding-top:10px;width:calc(var(--vp-sidebar-width) - 64px)}}.VPSidebar[data-v-18756405]{position:fixed;top:var(--vp-layout-top-height, 0px);bottom:0;left:0;z-index:var(--vp-z-index-sidebar);padding:32px 32px 96px;width:calc(100vw - 64px);max-width:320px;background-color:var(--vp-sidebar-bg-color);opacity:0;box-shadow:var(--vp-c-shadow-3);overflow-x:hidden;overflow-y:auto;transform:translate(-100%);transition:opacity .5s,transform .25s ease;overscroll-behavior:contain}.VPSidebar.open[data-v-18756405]{opacity:1;visibility:visible;transform:translate(0);transition:opacity .25s,transform .5s cubic-bezier(.19,1,.22,1)}.dark .VPSidebar[data-v-18756405]{box-shadow:var(--vp-shadow-1)}@media (min-width: 960px){.VPSidebar[data-v-18756405]{padding-top:var(--vp-nav-height);width:var(--vp-sidebar-width);max-width:100%;background-color:var(--vp-sidebar-bg-color);opacity:1;visibility:visible;box-shadow:none;transform:translate(0)}}@media (min-width: 1440px){.VPSidebar[data-v-18756405]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}@media (min-width: 960px){.curtain[data-v-18756405]{position:sticky;top:-64px;left:0;z-index:1;margin-top:calc(var(--vp-nav-height) * -1);margin-right:-32px;margin-left:-32px;height:var(--vp-nav-height);background-color:var(--vp-sidebar-bg-color)}}.nav[data-v-18756405]{outline:0}.VPSkipLink[data-v-c3508ec8]{top:8px;left:8px;padding:8px 16px;z-index:999;border-radius:8px;font-size:12px;font-weight:700;text-decoration:none;color:var(--vp-c-brand-1);box-shadow:var(--vp-shadow-3);background-color:var(--vp-c-bg)}.VPSkipLink[data-v-c3508ec8]:focus{height:auto;width:auto;clip:auto;clip-path:none}@media (min-width: 1280px){.VPSkipLink[data-v-c3508ec8]{top:14px;left:16px}}.Layout[data-v-a9a9e638]{display:flex;flex-direction:column;min-height:100vh}.VPHomeSponsors[data-v-db81191c]{border-top:1px solid var(--vp-c-gutter);padding-top:88px!important}.VPHomeSponsors[data-v-db81191c]{margin:96px 0}@media (min-width: 768px){.VPHomeSponsors[data-v-db81191c]{margin:128px 0}}.VPHomeSponsors[data-v-db81191c]{padding:0 24px}@media (min-width: 768px){.VPHomeSponsors[data-v-db81191c]{padding:0 48px}}@media (min-width: 960px){.VPHomeSponsors[data-v-db81191c]{padding:0 64px}}.container[data-v-db81191c]{margin:0 auto;max-width:1152px}.love[data-v-db81191c]{margin:0 auto;width:fit-content;font-size:28px;color:var(--vp-c-text-3)}.icon[data-v-db81191c]{display:inline-block}.message[data-v-db81191c]{margin:0 auto;padding-top:10px;max-width:320px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.sponsors[data-v-db81191c]{padding-top:32px}.action[data-v-db81191c]{padding-top:40px;text-align:center}.VPTeamPage[data-v-c2f8e101]{margin:96px 0}@media (min-width: 768px){.VPTeamPage[data-v-c2f8e101]{margin:128px 0}}.VPHome .VPTeamPageTitle[data-v-c2f8e101-s]{border-top:1px solid var(--vp-c-gutter);padding-top:88px!important}.VPTeamPageSection+.VPTeamPageSection[data-v-c2f8e101-s],.VPTeamMembers+.VPTeamPageSection[data-v-c2f8e101-s]{margin-top:64px}.VPTeamMembers+.VPTeamMembers[data-v-c2f8e101-s]{margin-top:24px}@media (min-width: 768px){.VPTeamPageTitle+.VPTeamPageSection[data-v-c2f8e101-s]{margin-top:16px}.VPTeamPageSection+.VPTeamPageSection[data-v-c2f8e101-s],.VPTeamMembers+.VPTeamPageSection[data-v-c2f8e101-s]{margin-top:96px}}.VPTeamMembers[data-v-c2f8e101-s]{padding:0 24px}@media (min-width: 768px){.VPTeamMembers[data-v-c2f8e101-s]{padding:0 48px}}@media (min-width: 960px){.VPTeamMembers[data-v-c2f8e101-s]{padding:0 64px}}.VPTeamPageTitle[data-v-e277e15c]{padding:48px 32px;text-align:center}@media (min-width: 768px){.VPTeamPageTitle[data-v-e277e15c]{padding:64px 48px 48px}}@media (min-width: 960px){.VPTeamPageTitle[data-v-e277e15c]{padding:80px 64px 48px}}.title[data-v-e277e15c]{letter-spacing:0;line-height:44px;font-size:36px;font-weight:500}@media (min-width: 768px){.title[data-v-e277e15c]{letter-spacing:-.5px;line-height:56px;font-size:48px}}.lead[data-v-e277e15c]{margin:0 auto;max-width:512px;padding-top:12px;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 768px){.lead[data-v-e277e15c]{max-width:592px;letter-spacing:.15px;line-height:28px;font-size:20px}}.VPTeamPageSection[data-v-d43bc49d]{padding:0 32px}@media (min-width: 768px){.VPTeamPageSection[data-v-d43bc49d]{padding:0 48px}}@media (min-width: 960px){.VPTeamPageSection[data-v-d43bc49d]{padding:0 64px}}.title[data-v-d43bc49d]{position:relative;margin:0 auto;max-width:1152px;text-align:center;color:var(--vp-c-text-2)}.title-line[data-v-d43bc49d]{position:absolute;top:16px;left:0;width:100%;height:1px;background-color:var(--vp-c-divider)}.title-text[data-v-d43bc49d]{position:relative;display:inline-block;padding:0 24px;letter-spacing:0;line-height:32px;font-size:20px;font-weight:500;background-color:var(--vp-c-bg)}.lead[data-v-d43bc49d]{margin:0 auto;max-width:480px;padding-top:12px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.members[data-v-d43bc49d]{padding-top:40px}.VPTeamMembersItem[data-v-f9987cb6]{display:flex;flex-direction:column;gap:2px;border-radius:12px;width:100%;height:100%;overflow:hidden}.VPTeamMembersItem.small .profile[data-v-f9987cb6]{padding:32px}.VPTeamMembersItem.small .data[data-v-f9987cb6]{padding-top:20px}.VPTeamMembersItem.small .avatar[data-v-f9987cb6]{width:64px;height:64px}.VPTeamMembersItem.small .name[data-v-f9987cb6]{line-height:24px;font-size:16px}.VPTeamMembersItem.small .affiliation[data-v-f9987cb6]{padding-top:4px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .desc[data-v-f9987cb6]{padding-top:12px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .links[data-v-f9987cb6]{margin:0 -16px -20px;padding:10px 0 0}.VPTeamMembersItem.medium .profile[data-v-f9987cb6]{padding:48px 32px}.VPTeamMembersItem.medium .data[data-v-f9987cb6]{padding-top:24px;text-align:center}.VPTeamMembersItem.medium .avatar[data-v-f9987cb6]{width:96px;height:96px}.VPTeamMembersItem.medium .name[data-v-f9987cb6]{letter-spacing:.15px;line-height:28px;font-size:20px}.VPTeamMembersItem.medium .affiliation[data-v-f9987cb6]{padding-top:4px;font-size:16px}.VPTeamMembersItem.medium .desc[data-v-f9987cb6]{padding-top:16px;max-width:288px;font-size:16px}.VPTeamMembersItem.medium .links[data-v-f9987cb6]{margin:0 -16px -12px;padding:16px 12px 0}.profile[data-v-f9987cb6]{flex-grow:1;background-color:var(--vp-c-bg-soft)}.data[data-v-f9987cb6]{text-align:center}.avatar[data-v-f9987cb6]{position:relative;flex-shrink:0;margin:0 auto;border-radius:50%;box-shadow:var(--vp-shadow-3)}.avatar-img[data-v-f9987cb6]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;object-fit:cover}.name[data-v-f9987cb6]{margin:0;font-weight:600}.affiliation[data-v-f9987cb6]{margin:0;font-weight:500;color:var(--vp-c-text-2)}.org.link[data-v-f9987cb6]{color:var(--vp-c-text-2);transition:color .25s}.org.link[data-v-f9987cb6]:hover{color:var(--vp-c-brand-1)}.desc[data-v-f9987cb6]{margin:0 auto}.desc[data-v-f9987cb6] a{font-weight:500;color:var(--vp-c-brand-1);text-decoration-style:dotted;transition:color .25s}.links[data-v-f9987cb6]{display:flex;justify-content:center;height:56px}.sp-link[data-v-f9987cb6]{display:flex;justify-content:center;align-items:center;text-align:center;padding:16px;font-size:14px;font-weight:500;color:var(--vp-c-sponsor);background-color:var(--vp-c-bg-soft);transition:color .25s,background-color .25s}.sp .sp-link.link[data-v-f9987cb6]:hover,.sp .sp-link.link[data-v-f9987cb6]:focus{outline:none;color:var(--vp-c-white);background-color:var(--vp-c-sponsor)}.sp-icon[data-v-f9987cb6]{margin-right:8px;font-size:16px}.VPTeamMembers.small .container[data-v-fba19bad]{grid-template-columns:repeat(auto-fit,minmax(224px,1fr))}.VPTeamMembers.small.count-1 .container[data-v-fba19bad]{max-width:276px}.VPTeamMembers.small.count-2 .container[data-v-fba19bad]{max-width:576px}.VPTeamMembers.small.count-3 .container[data-v-fba19bad]{max-width:876px}.VPTeamMembers.medium .container[data-v-fba19bad]{grid-template-columns:repeat(auto-fit,minmax(256px,1fr))}@media (min-width: 375px){.VPTeamMembers.medium .container[data-v-fba19bad]{grid-template-columns:repeat(auto-fit,minmax(288px,1fr))}}.VPTeamMembers.medium.count-1 .container[data-v-fba19bad]{max-width:368px}.VPTeamMembers.medium.count-2 .container[data-v-fba19bad]{max-width:760px}.container[data-v-fba19bad]{display:grid;gap:24px;margin:0 auto;max-width:1152px}.package[data-v-580af1dd]{font-size:1rem;margin-bottom:32px}.package>a[data-v-580af1dd]{color:inherit;text-decoration:none;vertical-align:super;white-space:nowrap}:root{--red-0: #FF4D5B;--red-1: #B23640;--red-2: #661F25;--orange-0: #FF974D;--orange-1: #B26A36;--orange-2: #663C1F;--yellow-0: #FED24C;--yellow-1: #B29336;--yellow-2: #66541F;--green-0: #4DFF8B;--green-1: #36B261;--green-2: #1F6638;--cyan-0: #4DFFE1;--cyan-1: #36B29E;--cyan-2: #1F665A;--light-blue-0: #4CDFFF;--light-blue-1: #369CB2;--light-blue-2: #1F5966;--blue-0: #4D9CFF;--blue-1: #366DB2;--blue-2: #1F3E66;--purple-0: #974DFF;--purple-1: #6A36B2;--purple-2: #3C1F66;--pink-0: #FF4DFF;--pink-1: #B236B2;--pink-2: #661F66;--white-0: #E5F2FF;--white-1: #A0A9B2;--white-2: #5C6166;--white-3: #393C40;--white-4: #222426;--black-0: #29343F;--black-1: #1E262E;--black-2: #14191F;--black-3: #0D1114;--black-4: #080B0D}:root{--foreground-color-0: var(--white-0);--foreground-color-1: var(--white-1);--foreground-color-2: var(--white-2);--background-color-0: var(--black-0);--background-color-1: var(--black-1);--background-color-2: var(--black-2);--background-color-3: var(--black-3);--background-color-4: var(--black-4);--scrollbar-color: color-mix(in srgb, var(--background-color-0) 25%, transparent)}:root{--border-radius-0: .2rem;--border-radius-1: .375rem;--border-radius-99: 9999px;--svg-drop-shadow-color: var(--black-0);--svg-drop-shadow-0: drop-shadow(.1rem .1rem .2rem color-mix(in srgb, var(--svg-drop-shadow-color) 50%, transparent));--svg-drop-shadow-1: drop-shadow(.1rem .1rem .2rem color-mix(in srgb, var(--svg-drop-shadow-color) 75%, transparent));--window-shadow-size: .3rem;--window-shadow-opacity: 35%;--window-shadow-spread: 3;--window-box-shadow: calc(var(--window-shadow-size) * -1) var(--window-shadow-size) calc(var(--window-shadow-size) * var(--window-shadow-spread)) 0px rgba(0, 0, 0, var(--window-shadow-opacity));--taskbar-height: 3rem;--taskbar-color: var(--background-color-2);--taskbar-opacity: .75;--taskbar-menu-color: var(--background-color-1);--taskbar-menu-opacity: .5;--taskbar-button-hover-color: rgba(255, 255, 255, 5%);--taskbar-filter: blur(1rem)}:root{--vp-c-default-1: var(--white-1);--vp-c-default-2: var(--white-1);--vp-c-default-3: var(--white-1);--vp-c-default-soft: hsl(210, 100%, 90%);--vp-c-brand-1: var(--blue-0);--vp-c-brand-2: var(--blue-1);--vp-c-brand-3: var(--blue-0);--vp-c-brand-soft: var(--blue-1);--vp-c-tip-1: var(--green-2);--vp-c-tip-2: var(--green-1);--vp-c-tip-3: var(--green-0);--vp-c-tip-soft: var(--green-2);--vp-c-note-1: var(--blue-2);--vp-c-note-2: var(--blue-1);--vp-c-note-3: var(--blue-0);--vp-c-note-soft: var(--blue-2);--vp-c-success-1: var(--green-2);--vp-c-success-2: var(--green-1);--vp-c-success-3: var(--green-0);--vp-c-success-soft: var(--green-2);--vp-c-important-1: var(--purple-2);--vp-c-important-2: var(--purple-1);--vp-c-important-3: var(--purple-0);--vp-c-important-soft: var(--purple-2);--vp-c-warning-1: var(--orange-2);--vp-c-warning-2: var(--orange-1);--vp-c-warning-3: var(--orange-0);--vp-c-warning-soft: var(--orange-2);--vp-c-danger-1: var(--red-2);--vp-c-danger-2: var(--red-1);--vp-c-danger-3: var(--red-0);--vp-c-danger-soft: var(--red-2);--vp-c-caution-1: var(--red-2);--vp-c-caution-2: var(--red-1);--vp-c-caution-3: var(--red-0);--vp-c-caution-soft: var(--red-2);--vp-c-neutral-inverse: var(--white-0);--vp-input-switch-bg-color: var(--vp-c-bg-soft)}.dark{--vp-c-default-1: var(--white-3);--vp-c-default-2: var(--white-4);--vp-c-default-3: var(--white-3);--vp-c-default-soft: var(--white-4);--vp-c-neutral-inverse: var(--black-3)}:root{--vp-font-family-base: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--vp-font-family-mono: "Roboto Mono", source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace;--vp-custom-block-font-size: 16px}:root{--vp-c-bg: hsl(210, 100%, 95%);--vp-c-bg-alt: hsl(210, 100%, 98.5%);--vp-c-bg-elv: hsl(210, 100%, 95%);--vp-c-bg-soft: hsl(210, 100%, 98.5%)}.dark{--vp-c-bg: var(--black-2);--vp-c-bg-alt: var(--black-3);--vp-c-bg-elv: var(--black-3);--vp-c-bg-soft: var(--black-3)}:root{--vp-c-border: var(--white-1);--vp-c-divider: var(--white-1);--vp-c-gutter: var(--white-2)}.dark{--vp-c-border: var(--black-4);--vp-c-divider: var(--black-4);--vp-c-gutter: var(--black-4)}:root{--vp-c-text-1: rgba(41, 52, 63);--vp-c-text-2: rgba(41, 52, 63, .78);--vp-c-text-3: rgba(41, 52, 63, .56)}.dark{--vp-c-text-1: rgba(229, 242, 255, .86);--vp-c-text-2: rgba(229, 242, 255, .6);--vp-c-text-3: rgba(229, 242, 255, .38)}:root{--vp-button-brand-border: transparent;--vp-button-brand-text: var(--vp-c-white);--vp-button-brand-bg: var(--vp-c-brand-3);--vp-button-brand-hover-border: transparent;--vp-button-brand-hover-text: var(--vp-c-white);--vp-button-brand-hover-bg: var(--vp-c-brand-2);--vp-button-brand-active-border: transparent;--vp-button-brand-active-text: var(--vp-c-white);--vp-button-brand-active-bg: var(--vp-c-brand-1)}:root{--vp-home-hero-name-color: transparent;--vp-home-hero-name-background: -webkit-linear-gradient( 120deg, var(--cyan-0) 30%, var(--blue-0) );--vp-home-hero-image-background-image: linear-gradient( -45deg, var(--cyan-0) 50%, var(--blue-0) 50% );--vp-home-hero-image-filter: blur(44px)}@media (min-width: 640px){:root{--vp-home-hero-image-filter: blur(56px)}}@media (min-width: 960px){:root{--vp-home-hero-image-filter: blur(68px)}}:root{--vp-custom-block-tip-border: var(--vp-c-tip-3);--vp-custom-block-tip-text: var(--vp-c-tip-3);--vp-custom-block-tip-bg: var(--vp-c-tip-soft);--vp-custom-block-tip-code-bg: var(--vp-c-tip-3);--vp-custom-block-note-border: var(--vp-c-note-3);--vp-custom-block-note-text: var(--vp-c-note-3);--vp-custom-block-note-bg: var(--vp-c-note-soft);--vp-custom-block-note-code-bg: var(--vp-c-note-3);--vp-custom-block-success-border: var(--vp-c-success-3);--vp-custom-block-success-text: var(--vp-c-success-3);--vp-custom-block-success-bg: var(--vp-c-success-soft);--vp-custom-block-success-code-bg: var(--vp-c-success-3);--vp-custom-block-important-border: var(--vp-c-important-3);--vp-custom-block-important-text: var(--vp-c-important-3);--vp-custom-block-important-bg: var(--vp-c-important-soft);--vp-custom-block-important-code-bg: var(--vp-c-important-3);--vp-custom-block-warning-border: var(--vp-c-warning-3);--vp-custom-block-warning-text: var(--vp-c-warning-3);--vp-custom-block-warning-bg: var(--vp-c-warning-soft);--vp-custom-block-warning-code-bg: var(--vp-c-warning-3);--vp-custom-block-danger-border: var(--vp-c-danger-3);--vp-custom-block-danger-text: var(--vp-c-danger-3);--vp-custom-block-danger-bg: var(--vp-c-danger-soft);--vp-custom-block-danger-code-bg: var(--vp-c-danger-3);--vp-custom-block-caution-border: var(--vp-c-caution-3);--vp-custom-block-caution-text: var(--vp-c-caution-3);--vp-custom-block-caution-bg: var(--vp-c-caution-soft);--vp-custom-block-caution-code-bg: var(--vp-c-caution-3);--vp-custom-block-info-border: var(--vp-c-note-3);--vp-custom-block-info-text: var(--vp-c-note-3);--vp-custom-block-info-bg: var(--vp-c-note-soft);--vp-custom-block-info-code-bg: var(--vp-c-note-3);--vp-custom-block-details-border: transparent;--vp-custom-block-details-text: var(--vp-c-text-1);--vp-custom-block-details-bg: var(--vp-c-bg-alt);--vp-custom-block-details-code-bg: var(--vp-c-bg)}.DocSearch{--docsearch-primary-color: var(--vp-c-brand-1) !important}.custom-block{--vp-code-block-bg: var(--vp-c-bg);border:none;border-left:5px solid;padding:12px 12px 6px}.custom-block>.custom-block-title{display:flex;gap:.5rem;align-items:center}.custom-block>.custom-block-title:before{content:"";display:block;-webkit-mask:var(--icon) no-repeat;mask:var(--icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100;width:1rem;height:1rem;background-color:currentColor;color:inherit;fill:currentColor}.custom-block.caution{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24V264c0 13.3-10.7 24-24 24s-24-10.7-24-24V152c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z'/%3E%3C/svg%3E") }.custom-block.tip{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M272 384c9.6-31.9 29.5-59.1 49.2-86.2l0 0c5.2-7.1 10.4-14.2 15.4-21.4c19.8-28.5 31.4-63 31.4-100.3C368 78.8 289.2 0 192 0S16 78.8 16 176c0 37.3 11.6 71.9 31.4 100.3c5 7.2 10.2 14.3 15.4 21.4l0 0c19.8 27.1 39.7 54.4 49.2 86.2H272zM192 512c44.2 0 80-35.8 80-80V416H112v16c0 44.2 35.8 80 80 80zM112 176c0 8.8-7.2 16-16 16s-16-7.2-16-16c0-61.9 50.1-112 112-112c8.8 0 16 7.2 16 16s-7.2 16-16 16c-44.2 0-80 35.8-80 80z'/%3E%3C/svg%3E") }.custom-block.note{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336h24V272H216c-13.3 0-24-10.7-24-24s10.7-24 24-24h48c13.3 0 24 10.7 24 24v88h8c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-208a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'/%3E%3C/svg%3E") }.custom-block.warning{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z'/%3E%3C/svg%3E") }.custom-block.details{padding:0}.custom-block.details>summary{padding:12px;margin:0;color:var(--vp-c-text-2);font-weight:400}.custom-block.details>summary~*{margin-left:12px!important;margin-right:12px!important}.custom-block.details>*:nth-child(2){margin-top:0}.custom-block.details>*:last-child{margin-bottom:0}.custom-block.details[open]{padding-bottom:16px}.custom-block ul ul{margin:0!important}.custom-block li+li{margin-top:4px!important}li>p{margin:0!important;line-height:24px!important}.VPContent.is-home .vp-doc{margin:0;padding:0;width:100%;max-width:unset}.vp-doc .VPTeamPage{margin-left:0!important;margin-right:0!important;width:inherit}.vp-doc .VPTeamMembers.center{display:flex;justify-content:center}.vp-doc .VPTeamMembers.center .container{flex:1;grid-template-columns:repeat(auto-fit,minmax(256px,1fr))!important}.vp-doc .VPTeamMembers.medium.count-1.center .container{max-width:368px!important}.vp-doc img{border-radius:8px;margin:16px 0}.vp-doc p{line-height:1.5}.vp-doc .VPBadge{font-size:var(--vp-code-font-size)}.VPNavBar.has-sidebar .title,.VPSidebar,.VPDocAside,.vp-doc{--vp-c-divider: var(--vp-c-default-soft)}.VPHome{--vp-c-gutter: var(--vp-c-default-soft)}.VPBadge{border-radius:var(--border-radius-1)}.vp-doc :not(pre)>code{border-radius:var(--border-radius-0);padding:.125em .25em}.pager-link{border-radius:var(--border-radius-1)!important}.DocSearch-Button{border-radius:var(--border-radius-1)}.VPFeature,.VPButton.medium,.VPTeamMembersItem{border-radius:var(--border-radius-1)!important}.vpi-heart{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E")}.vpi-moon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z'/%3E%3C/svg%3E")}.vp-doc img{border-radius:var(--border-radius-1)}.vp-doc [class*=language-]>button.copy{border-radius:var(--border-radius-1)}.vp-doc div[class*=language-],.vp-block,.custom-block{border-radius:var(--border-radius-1)}.icon,.VPLocalSearchBox .shell{border-radius:var(--border-radius-1)!important}.VPSwitch .check{background-color:transparent;box-shadow:none}.VPSwitch .check .icon [class^=vpi-]{color:var(--vp-c-text-2)}.VPLocalSearchBox[data-v-5b749456]{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:flex}.backdrop[data-v-5b749456]{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--vp-backdrop-bg-color);transition:opacity .5s}.shell[data-v-5b749456]{position:relative;padding:12px;margin:64px auto;display:flex;flex-direction:column;gap:16px;background:var(--vp-local-search-bg);width:min(100vw - 60px,900px);height:min-content;max-height:min(100vh - 128px,900px);border-radius:6px}@media (max-width: 767px){.shell[data-v-5b749456]{margin:0;width:100vw;height:100vh;max-height:none;border-radius:0}}.search-bar[data-v-5b749456]{border:1px solid var(--vp-c-divider);border-radius:4px;display:flex;align-items:center;padding:0 12px;cursor:text}@media (max-width: 767px){.search-bar[data-v-5b749456]{padding:0 8px}}.search-bar[data-v-5b749456]:focus-within{border-color:var(--vp-c-brand-1)}.local-search-icon[data-v-5b749456]{display:block;font-size:18px}.navigate-icon[data-v-5b749456]{display:block;font-size:14px}.search-icon[data-v-5b749456]{margin:8px}@media (max-width: 767px){.search-icon[data-v-5b749456]{display:none}}.search-input[data-v-5b749456]{padding:6px 12px;font-size:inherit;width:100%}@media (max-width: 767px){.search-input[data-v-5b749456]{padding:6px 4px}}.search-actions[data-v-5b749456]{display:flex;gap:4px}@media (any-pointer: coarse){.search-actions[data-v-5b749456]{gap:8px}}@media (min-width: 769px){.search-actions.before[data-v-5b749456]{display:none}}.search-actions button[data-v-5b749456]{padding:8px}.search-actions button[data-v-5b749456]:not([disabled]):hover,.toggle-layout-button.detailed-list[data-v-5b749456]{color:var(--vp-c-brand-1)}.search-actions button.clear-button[data-v-5b749456]:disabled{opacity:.37}.search-keyboard-shortcuts[data-v-5b749456]{font-size:.8rem;opacity:75%;display:flex;flex-wrap:wrap;gap:16px;line-height:14px}.search-keyboard-shortcuts span[data-v-5b749456]{display:flex;align-items:center;gap:4px}@media (max-width: 767px){.search-keyboard-shortcuts[data-v-5b749456]{display:none}}.search-keyboard-shortcuts kbd[data-v-5b749456]{background:#8080801a;border-radius:4px;padding:3px 6px;min-width:24px;display:inline-block;text-align:center;vertical-align:middle;border:1px solid rgba(128,128,128,.15);box-shadow:0 2px 2px #0000001a}.results[data-v-5b749456]{display:flex;flex-direction:column;gap:6px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.result[data-v-5b749456]{display:flex;align-items:center;gap:8px;border-radius:4px;transition:none;line-height:1rem;border:solid 2px var(--vp-local-search-result-border);outline:none}.result>div[data-v-5b749456]{margin:12px;width:100%;overflow:hidden}@media (max-width: 767px){.result>div[data-v-5b749456]{margin:8px}}.titles[data-v-5b749456]{display:flex;flex-wrap:wrap;gap:4px;position:relative;z-index:1001;padding:2px 0}.title[data-v-5b749456]{display:flex;align-items:center;gap:4px}.title.main[data-v-5b749456]{font-weight:500}.title-icon[data-v-5b749456]{opacity:.5;font-weight:500;color:var(--vp-c-brand-1)}.title svg[data-v-5b749456]{opacity:.5}.result.selected[data-v-5b749456]{--vp-local-search-result-bg: var(--vp-local-search-result-selected-bg);border-color:var(--vp-local-search-result-selected-border)}.excerpt-wrapper[data-v-5b749456]{position:relative}.excerpt[data-v-5b749456]{opacity:50%;pointer-events:none;max-height:140px;overflow:hidden;position:relative;margin-top:4px}.result.selected .excerpt[data-v-5b749456]{opacity:1}.excerpt[data-v-5b749456] *{font-size:.8rem!important;line-height:130%!important}.titles[data-v-5b749456] mark,.excerpt[data-v-5b749456] mark{background-color:var(--vp-local-search-highlight-bg);color:var(--vp-local-search-highlight-text);border-radius:2px;padding:0 2px}.excerpt[data-v-5b749456] .vp-code-group .tabs{display:none}.excerpt[data-v-5b749456] .vp-code-group div[class*=language-]{border-radius:8px!important}.excerpt-gradient-bottom[data-v-5b749456]{position:absolute;bottom:-1px;left:0;width:100%;height:8px;background:linear-gradient(transparent,var(--vp-local-search-result-bg));z-index:1000}.excerpt-gradient-top[data-v-5b749456]{position:absolute;top:-1px;left:0;width:100%;height:8px;background:linear-gradient(var(--vp-local-search-result-bg),transparent);z-index:1000}.result.selected .titles[data-v-5b749456],.result.selected .title-icon[data-v-5b749456]{color:var(--vp-c-brand-1)!important}.no-results[data-v-5b749456]{font-size:.9rem;text-align:center;padding:12px}svg[data-v-5b749456]{flex:none} diff --git a/docs/guides/custom-app.html b/docs/guides/custom-app.html index 0cedd640..0e9561eb 100644 --- a/docs/guides/custom-app.html +++ b/docs/guides/custom-app.html @@ -6,13 +6,13 @@ Making a custom app | ProzillaOS Docs - + - + - - - + + + @@ -33,8 +33,8 @@ -
Skip to content

Making a custom app

There are two main ways to create custom applications for ProzillaOS:

  1. Internal app
  2. External app

An internal app lives inside the same repository as the OS itself. An external app has a separate repository and must therefore also be published to a package directory, like npm, before being usable in a ProzillaOS project. The internal app approach is the simplest one and easiest one to set up, while the other approach is a bit more technical.

1. Internal app

Prerequisites

This guide assumes you have already set up a basic project that implements ProzillaOS. You can use to getting started guide to set up a project with ProzillaOS.

Setup

Create a new folder where you can put the source code of your custom ProzillaOS application.

2. External app

Prerequisites

This guide assumes you have already set up a basic React project with TypeScript. To learn more about how to set up a React project, check out the official React documentation. The React documentation also has a guide on how to start using TypeScript in your React project.

Setup

Built by Prozilla

- +
Skip to content

Making a custom app

There are two main ways to create custom applications for ProzillaOS:

  1. Internal app
  2. External app

An internal app lives inside the same repository as the OS itself. An external app has a separate repository and must therefore also be published to a package directory, like npm, before being usable in a ProzillaOS project. The internal app approach is the simplest one and easiest one to set up, while the other approach is a bit more technical.

1. Internal app

Prerequisites

This guide assumes you have already set up a basic project that implements ProzillaOS. You can use to getting started guide to set up a project with ProzillaOS.

Setup

Create a new folder where you can put the source code of your custom ProzillaOS application.

2. External app

Prerequisites

This guide assumes you have already set up a basic React project with TypeScript. To learn more about how to set up a React project, check out the official React documentation. The React documentation also has a guide on how to start using TypeScript in your React project.

Setup

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/guides/getting-started.html b/docs/guides/getting-started.html index f32952db..1943385c 100644 --- a/docs/guides/getting-started.html +++ b/docs/guides/getting-started.html @@ -6,13 +6,13 @@ Getting started | ProzillaOS Docs - + - + - - - + + + @@ -33,23 +33,23 @@ -
Skip to content

Getting started

Prerequisites

This guide assumes you have already set up a basic React project with TypeScript. To learn more about how to set up a React project, check out the official React documentation. The React documentation also has a guide on how to start using TypeScript in your React project.

Installation

There are multiple ways to install ProzillaOS. The simplest way is to install the bundle package prozilla-os, which contains the core functionality as well as all standard applications.

bash
$ npm install prozilla-os
bash
$ yarn add prozilla-os
bash
$ pnpm add prozilla-os
bash
$ bun add prozilla-os

Alternatively, you can install the @prozilla-os/core package, which only contains the core functionality, and install the apps manually or create custom apps.

bash
$ npm install @prozilla-os/core
bash
$ yarn add @prozilla-os/core
bash
$ pnpm add @prozilla-os/core
bash
$ bun add @prozilla-os/core

Installing apps

Install apps by running the command below. Replace [app] with the id of the app you want to install.

bash
$ npm install @prozilla-os/[app]
bash
$ yarn add @prozilla-os/[app]
bash
$ pnpm add @prozilla-os/[app]
bash
$ bun add @prozilla-os/[app]

Usage

Your entry file should look something like this:

tsx
// index.tsx
+    
Skip to content

Getting started

Prerequisites

This guide assumes you have already set up a basic React project with TypeScript. To learn more about how to set up a React project, check out the official React documentation. The React documentation also has a guide on how to start using TypeScript in your React project.

Installation

There are multiple ways to install ProzillaOS. The simplest way is to install the bundle package prozilla-os, which contains the core functionality as well as all standard applications.

bash
$ npm install prozilla-os
bash
$ yarn add prozilla-os
bash
$ pnpm add prozilla-os
bash
$ bun add prozilla-os

Alternatively, you can install the @prozilla-os/core package, which only contains the core functionality, and install the apps manually or create custom apps.

bash
$ npm install @prozilla-os/core
bash
$ yarn add @prozilla-os/core
bash
$ pnpm add @prozilla-os/core
bash
$ bun add @prozilla-os/core

Installing apps

Install apps by running the command below. Replace [app] with the id of the app you want to install.

bash
$ npm install @prozilla-os/[app]
bash
$ yarn add @prozilla-os/[app]
bash
$ pnpm add @prozilla-os/[app]
bash
$ bun add @prozilla-os/[app]

Usage

Your entry file should look something like this:

tsx
// index.tsx
 
-import React from "react";
-import ReactDOM from "react-dom/client";
-import { App } from "./App.tsx";
+import React from "react";
+import ReactDOM from "react-dom/client";
+import { App } from "./App.tsx";
 
-const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement);
-root.render(<React.StrictMode><App/></React.StrictMode>);

Change your <App> component to:

tsx
// App.tsx
+const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement);
+root.render(<React.StrictMode><App/></React.StrictMode>);

Change your <App> component to:

tsx
// App.tsx
 
-import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "prozilla-os";
+import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "prozilla-os";
 
 export function App(): ReactElement {
 	return <ProzillaOS
 		systemName={"Example"}
 		tagLine={"Powered by ProzillaOS"}
 		config={{
-			// Configuration
+			// Configuration
 		}}
 	>
 		<Taskbar/>
@@ -57,28 +57,28 @@
 		<ModalsView/>
 		<Desktop/>
 	</ProzillaOS>;
-}

Replace "Example" with a system name of your choosing and "Power by ProzillaOS" by your tag line/short description.

If you don't want a taskbar/desktop/modal in your project, you can leave those components out. Unless you don't want to be able to open applications in your project, you will need to keep the <WindowsView> component.

CAUTION

Depending on how you installed ProzillaOS, your import statement will look slightly different. Make sure you are importing from the correct package that you installed previously.

Using apps

To start using applications in your project, use the appsConfig class to add a list of apps to your configuration.

tsx
<ProzillaOS
-	{/* Other props */}
+}

Replace "Example" with a system name of your choosing and "Power by ProzillaOS" by your tag line/short description.

If you don't want a taskbar/desktop/modal in your project, you can leave those components out. Unless you don't want to be able to open applications in your project, you will need to keep the <WindowsView> component.

CAUTION

Depending on how you installed ProzillaOS, your import statement will look slightly different. Make sure you are importing from the correct package that you installed previously.

Using apps

To start using applications in your project, use the appsConfig class to add a list of apps to your configuration.

tsx
<ProzillaOS
+	{/* Other props */}
 	config={{
-		apps: new appsConfig({
-			apps: [
-				// Applications go here
-			]
-		})
+		apps: new appsConfig({
+			apps: [
+				// Applications go here
+			]
+		})
 	}}
->

Example

Here is an example that shows you how to add the fileExplorer app:

tsx
import { fileExplorer } from "prozilla-os"
tsx
<ProzillaOS
-	{/* Other props */}
+>

Example

Here is an example that shows you how to add the fileExplorer app:

tsx
import { fileExplorer } from "prozilla-os"
tsx
<ProzillaOS
+	{/* Other props */}
 	config={{
-		apps: new appsConfig({
-			apps: [
-				fileExplorer.setName("Files")
-					.setDescription("Browse and manage your virtual files on ProzillaOS.")
-					.setIconUrl("/assets/apps/icons/file-explorer.svg")
-			]
-		})
+		apps: new appsConfig({
+			apps: [
+				fileExplorer.setName("Files")
+					.setDescription("Browse and manage your virtual files on ProzillaOS.")
+					.setIconUrl("/assets/apps/icons/file-explorer.svg")
+			]
+		})
 	}}
 >

TIP

Move your configurations to separate files to make them more readable and keep a better overview of your different configurations. You can then import these configurations into your App.tsx file and use them as values for the config prop of the <ProzillaOS> component.

Once that's done, go ahead and start your project and open it in your browser to check it out. Congratulations, you've made your own operating system inside the browser!

Community

If you have questions or need help, reach out to the community on Discord.

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/guides/self-hosting.html b/docs/guides/self-hosting.html index 276394a1..a47e7c82 100644 --- a/docs/guides/self-hosting.html +++ b/docs/guides/self-hosting.html @@ -6,13 +6,13 @@ Self-hosting | ProzillaOS Docs - + - + - - - + + + @@ -33,8 +33,10 @@ -
Skip to content

Self-hosting

This guide explains how to host ProzillaOS locally on your own device or on your own server.

Installation

WARNING

In a local environment, ProzillaOS packages will try to import uncompiled versions of other ProzillaOS packages from their respective src directory. If this does not happen correctly and a package tries to import a compiled version of another package from its respective dist directory, you might run into an error message saying module not found. Executing the command pnpm run packages:build will compile each package into their dist directories and resolve this error.

Scripts

ProzillaOS uses the package manager pnpm to run scripts.

General

ScriptDescription
pnpm run start
Run pnpm run demo:start. VSCode is configured to run this script whenever the project is opened.
pnpm run build
Build every package in sequential order.
pnpm run stage
Copy and combine the build of each package that comprises the website in the dist directory at the root.
pnpm run deploy
Clear the dist directory, stage each package that comprises the website, then deploy to GitHub pages. This should trigger a GitHub Action that deploys the build to production.

Public packages

ScriptDescription
pnpm run packages:build
Build all dependencies of the prozilla-os package in sequential order and output to respective dist directories.
pnpm run packages:update
Create a new changeset for packages and update their version accordingly.
pnpm run packages:release
Publish the latest versions of each package to the npm registry.

TIP

Use pnpm --filter <package_selector> build to build a sepecific subset of packages or a single package and output to respective dist directory/directories. For more information about selecting/filtering specific packages, read pnpm's documentation on filtering.

Internal packages

@prozilla-os/demo

ScriptDescription
pnpm run demo:start
Start Vite dev server at localhost:3000. Changes to module will dynamically be hot-reloaded, so normally there is no need for hard-refreshes. VSCode is configured to run this script whenever the project is opened.
pnpm run demo:build
Compile project using TypeScript and bundle all files into the dist directory, or the directory specified in config file. This directory can be uploaded to a web server.
pnpm run demo:preview
Start web server with preview of build at localhost:8080. Can be useful for validating build before deploying.
pnpm run demo:stage
Execute staging script, which stages the build and prepares it for deployment. Script will generate a sitemap, robots.txt and all other necessary files.
pnpm run demo:fetch
Fetch the repository tree using GitHub's API and store it as a JSON file that will be used to populate the virtual drive.

@prozilla-os/docs

ScriptDescription
pnpm run docs:start
Start VitePress dev server at localhost:3000. Changes to module will dynamically be hot-reloaded, so normally there is no need for hard-refreshes.
pnpm run docs:build
Compile project using VitePress and output to the dist directory.
pnpm run docs:preview
Start web server with preview of build at localhost:8080. Can be useful for validating build before deploying.
pnpm run docs:generate
Generate basic information files in JSON format to use as a base for writing the documentation and output to the data directory.

Built by Prozilla

- +
Skip to content

Self-hosting

This guide explains how to host ProzillaOS locally on your own device or on your own server.

Installation

Make sure you have NodeJS (version v18.12 or higher) installed on your device.

  1. Clone the GitHub repository.

    sh
    git clone https://github.com/prozilla-os/ProzillaOS.git ProzillaOS
    +cd ProzillaOS
  2. Install package manager and dependencies

    sh
    npm install pnpm -g
    +pnpm install
  3. Run project

    sh
    pnpm start
  4. Test local dev server by visiting localhost:3000

WARNING

In a local environment, ProzillaOS packages will try to import uncompiled versions of other ProzillaOS packages from their respective src directory. If this does not happen correctly and a package tries to import a compiled version of another package from its respective dist directory, you might run into an error message saying module not found. Executing the command pnpm run packages:build will compile each package into their dist directories and resolve this error.

Scripts

ProzillaOS uses the package manager pnpm to run scripts.

General

ScriptDescription
pnpm run start
Run pnpm run demo:start. VSCode is configured to run this script whenever the project is opened.
pnpm run build
Build every package in sequential order.
pnpm run stage
Copy and combine the build of each package that comprises the website in the dist directory at the root.
pnpm run deploy
Clear the dist directory, stage each package that comprises the website, then deploy to GitHub pages. This should trigger a GitHub Action that deploys the build to production.

Public packages

ScriptDescription
pnpm run packages:build
Build all dependencies of the prozilla-os package in sequential order and output to respective dist directories.
pnpm run packages:update
Create a new changeset for packages and update their version accordingly.
pnpm run packages:release
Publish the latest versions of each package to the npm registry.

TIP

Use pnpm --filter <package_selector> build to build a sepecific subset of packages or a single package and output to respective dist directory/directories. For more information about selecting/filtering specific packages, read pnpm's documentation on filtering.

Internal packages

@prozilla-os/demo

ScriptDescription
pnpm run demo:start
Start Vite dev server at localhost:3000. Changes to module will dynamically be hot-reloaded, so normally there is no need for hard-refreshes. VSCode is configured to run this script whenever the project is opened.
pnpm run demo:build
Compile project using TypeScript and bundle all files into the dist directory, or the directory specified in config file. This directory can be uploaded to a web server.
pnpm run demo:preview
Start web server with preview of build at localhost:8080. Can be useful for validating build before deploying.
pnpm run demo:stage
Execute staging script, which stages the build and prepares it for deployment. Script will generate a sitemap, robots.txt and all other necessary files.
pnpm run demo:fetch
Fetch the repository tree using GitHub's API and store it as a JSON file that will be used to populate the virtual drive.

@prozilla-os/docs

ScriptDescription
pnpm run docs:start
Start VitePress dev server at localhost:3000. Changes to module will dynamically be hot-reloaded, so normally there is no need for hard-refreshes.
pnpm run docs:build
Compile project using VitePress and output to the dist directory.
pnpm run docs:preview
Start web server with preview of build at localhost:8080. Can be useful for validating build before deploying.
pnpm run docs:generate
Generate basic information files in JSON format to use as a base for writing the documentation and output to the data directory.

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/hashmap.json b/docs/hashmap.json index aaec1a7a..217d948b 100644 --- a/docs/hashmap.json +++ b/docs/hashmap.json @@ -1 +1 @@ -{"about_features.md":"Co2RiGGA","about_introduction.md":"C7RNvPBg","guides_custom-app.md":"CCQq_MFP","guides_getting-started.md":"Bah3S_dU","guides_self-hosting.md":"CEDqz1nI","index.md":"DCZ_f0AC","reference_apps_browser_index.md":"D6PasAIp","reference_apps_calculator_index.md":"EW--gfTz","reference_apps_file-explorer_index.md":"Clt-EzRv","reference_apps_logic-sim_index.md":"C9mpnn3d","reference_apps_media-viewer_index.md":"J6Rwheou","reference_apps_settings_index.md":"BcWK4HN0","reference_apps_terminal_index.md":"BFUCmzNG","reference_apps_text-editor_index.md":"qYSbViYR","reference_configuration.md":"BUycfrpV","reference_core_classes_apps_app.md":"aYUDD6qD","reference_core_classes_system_apps-config.md":"Byh2xKai","reference_core_classes_system_desktop-config.md":"N1aoQ5rL","reference_core_classes_system_misc-config.md":"Duv8Y2DT","reference_core_classes_system_modals-config.md":"DmZ-iT4l","reference_core_classes_system_taskbar-config.md":"DQ_C2jN7","reference_core_classes_system_tracking-config.md":"Ddb19QSL","reference_core_classes_system_windows-config.md":"DXbY1oUF","reference_core_classes_utils_vector2.md":"BnLM4qTx","reference_core_constants_index.md":"CcEhXc8b","reference_core_functions_browser.md":"n910jH-l","reference_core_index.md":"D4Smyti7","reference_dev-tools_functions_console.md":"CWjplJ_9","reference_dev-tools_functions_vite.md":"BwL1oT9Y","reference_dev-tools_index.md":"A4Hi_hWd","reference_glossary.md":"CvYcZi7A","reference_packages.md":"CcjASakp","reference_prozilla-os_index.md":"CIQzNWB3","reference_shared_constants_ansi.md":"BXBDifD3","reference_shared_functions_array.md":"aBFTyLLx","reference_shared_functions_date.md":"BVOq1x8p","reference_shared_functions_math.md":"CVhEinry","reference_shared_index.md":"D8MzOn41","reference_skins_classes_skin.md":"nXKTCjCd","reference_skins_index.md":"BP5S9Qx1"} +{"about_features.md":"Ctrp-qfc","about_introduction.md":"mDPCVGZp","guides_custom-app.md":"BUZaBU3U","guides_getting-started.md":"5c5bIai6","guides_self-hosting.md":"C_aU7rBt","index.md":"CMZ46jBx","reference_apps_browser_index.md":"qzTCNjkF","reference_apps_calculator_index.md":"CRvkjJ1P","reference_apps_file-explorer_index.md":"DSQB8Qq-","reference_apps_logic-sim_index.md":"Dz7VR7Ab","reference_apps_media-viewer_index.md":"D2X13k4k","reference_apps_settings_index.md":"LaJCirFa","reference_apps_terminal_index.md":"BnB8V4Ta","reference_apps_text-editor_index.md":"0W2TpYZ2","reference_configuration.md":"BEC0zcQJ","reference_core_classes_apps_app.md":"CG3juEaZ","reference_core_classes_system_apps-config.md":"DDxlHG5A","reference_core_classes_system_desktop-config.md":"DrnhEsNH","reference_core_classes_system_misc-config.md":"D2lB9p7j","reference_core_classes_system_modals-config.md":"CDx3Kzph","reference_core_classes_system_taskbar-config.md":"kPydnc6f","reference_core_classes_system_tracking-config.md":"CCsZ1t_S","reference_core_classes_system_windows-config.md":"BhIB0-74","reference_core_classes_utils_time-manager.md":"rlOGehB_","reference_core_classes_utils_vector2.md":"BYfMU85_","reference_core_constants_index.md":"DND70KY8","reference_core_functions_browser.md":"CznM7k5B","reference_core_functions_keyboard.md":"jj_WhwmQ","reference_core_index.md":"Cr8oSWzh","reference_dev-tools_functions_console.md":"DgXAwhqe","reference_dev-tools_functions_vite.md":"BOROI5rc","reference_dev-tools_index.md":"3cUMcTOe","reference_glossary.md":"CBMwCpRy","reference_packages.md":"iP6hdyFQ","reference_prozilla-os_index.md":"CyccZMbU","reference_shared_classes_event-emitter.md":"kZRDtPm5","reference_shared_constants_ansi.md":"DGwISokz","reference_shared_functions_array.md":"Cnu8h0sw","reference_shared_functions_date.md":"BziGsrPl","reference_shared_functions_math.md":"Crh1YaGW","reference_shared_functions_number.md":"_4jjs5V9","reference_shared_index.md":"BWwJWe2s","reference_skins_classes_skin.md":"C6Xs6_CQ","reference_skins_index.md":"ZwuBCdzG"} diff --git a/docs/index.html b/docs/index.html index 3c6bd234..f26c3a59 100644 --- a/docs/index.html +++ b/docs/index.html @@ -6,13 +6,13 @@ ProzillaOS Docs - + - + - - - + + + @@ -33,8 +33,8 @@ -
Skip to content

ProzillaOS

Web-based operating system

A highly customizable and feature-rich desktop environment inside your browser

Developer

Built by Prozilla

- +
Skip to content

ProzillaOS

Web-based operating system

A highly customizable and feature-rich desktop environment inside your browser

Developer

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/apps/browser/index.html b/docs/reference/apps/browser/index.html index 4b1bb96a..7d35f379 100644 --- a/docs/reference/apps/browser/index.html +++ b/docs/reference/apps/browser/index.html @@ -6,13 +6,13 @@ @prozilla-os/browser | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

@prozilla-os/browser

About

@prozilla-os/browser is a ProzillaOS application for browsing the internet.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/browser
+    
Skip to content

@prozilla-os/browser

About

@prozilla-os/browser is a ProzillaOS application for browsing the internet.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/browser
 yarn add @prozilla-os/core @prozilla-os/browser
-pnpm add @prozilla-os/core @prozilla-os/browser

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { browser } from "@prozilla-os/browser";
+pnpm add @prozilla-os/core @prozilla-os/browser

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { browser } from "@prozilla-os/browser";
 
 function App() {
   return (
@@ -44,9 +44,9 @@
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ browser ]
-        })
+        apps: new AppsConfig({
+          apps: [ browser ]
+        })
       }}
     >
       <Taskbar/>
@@ -55,11 +55,11 @@
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * URL to open
- */
-url: string;

Built by Prozilla

- +}

Window options

tsx
/**
+ * URL to open
+ */
+url: string;

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/apps/calculator/index.html b/docs/reference/apps/calculator/index.html index aa6bae92..202f9d05 100644 --- a/docs/reference/apps/calculator/index.html +++ b/docs/reference/apps/calculator/index.html @@ -6,13 +6,13 @@ @prozilla-os/calculator | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

@prozilla-os/calculator

About

@prozilla-os/calculator is a ProzillaOS application for making basic calculations.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/calculator
+    
Skip to content

@prozilla-os/calculator

About

@prozilla-os/calculator is a ProzillaOS application for making basic calculations.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/calculator
 yarn add @prozilla-os/core @prozilla-os/calculator
-pnpm add @prozilla-os/core @prozilla-os/calculator

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { calculator } from "@prozilla-os/calculator";
+pnpm add @prozilla-os/core @prozilla-os/calculator

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { calculator } from "@prozilla-os/calculator";
 
 function App() {
   return (
@@ -44,9 +44,9 @@
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ calculator ]
-        })
+        apps: new AppsConfig({
+          apps: [ calculator ]
+        })
       }}
     >
       <Taskbar/>
@@ -56,7 +56,7 @@
     </ProzillaOS>
   );
 }

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/apps/file-explorer/index.html b/docs/reference/apps/file-explorer/index.html index dd60d548..b4637629 100644 --- a/docs/reference/apps/file-explorer/index.html +++ b/docs/reference/apps/file-explorer/index.html @@ -6,13 +6,13 @@ @prozilla-os/file-explorer | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

@prozilla-os/file-explorer

About

@prozilla-os/file-explorer is a standard ProzillaOS application for browsing files.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/file-explorer
+    
Skip to content

@prozilla-os/file-explorer

About

@prozilla-os/file-explorer is a standard ProzillaOS application for browsing files.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/file-explorer
 yarn add @prozilla-os/core @prozilla-os/file-explorer
-pnpm add @prozilla-os/core @prozilla-os/file-explorer

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { fileExplorer } from "@prozilla-os/file-explorer";
+pnpm add @prozilla-os/core @prozilla-os/file-explorer

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { fileExplorer } from "@prozilla-os/file-explorer";
 
 function App() {
   return (
@@ -44,9 +44,9 @@
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ fileExplorer ]
-        })
+        apps: new AppsConfig({
+          apps: [ fileExplorer ]
+        })
       }}
     >
       <Taskbar/>
@@ -55,37 +55,37 @@
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * Initial path that the app will open
- * @default "~" - Home directory
- */
-path: string;
+}

Window options

tsx
/**
+ * Initial path that the app will open
+ * @default "~" - Home directory
+ */
+path: string;
 
-/**
- * Defines in which mode the application is running
- * 0: None
- * 1: Single
- * 2: Multiple
- * @default 0
- */
-selectorMode: number;
+/**
+ * Defines in which mode the application is running
+ * 0: None
+ * 1: Single
+ * 2: Multiple
+ * @default 0
+ */
+selectorMode: number;
 
-/**
- * Footer component that will be displayed when `selectorMode` != 0
- * Can be used to display a list of selected files for example
- */
-Footer: React.FC;
+/**
+ * Footer component that will be displayed when `selectorMode` != 0
+ * Can be used to display a list of selected files for example
+ */
+Footer: React.FC;
 
-/**
- * Gets called each time the selection changes if `selectorMode` != 0
- */
-onSelectionChange: (params: OnSelectionChangeParams) => void;
+/**
+ * Gets called each time the selection changes if `selectorMode` != 0
+ */
+onSelectionChange: (params: OnSelectionChangeParams) => void;
 
-/**
- * Gets called when the selection is finished if `selectorMode` != 0
- */
-onSelectionFinish: Function;

Built by Prozilla

- +/** + * Gets called when the selection is finished if `selectorMode` != 0 + */ +onSelectionFinish: Function;

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/apps/logic-sim/index.html b/docs/reference/apps/logic-sim/index.html index dd4bff30..7f2fe544 100644 --- a/docs/reference/apps/logic-sim/index.html +++ b/docs/reference/apps/logic-sim/index.html @@ -6,13 +6,13 @@ @prozilla-os/logic-sim | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

@prozilla-os/logic-sim

About

@prozilla-os/logic-sim is a ProzillaOS application for simulating digital logic. Inspired by Digital Logic Sim by Sebastian Lague.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/logic-sim
+    
Skip to content

@prozilla-os/logic-sim

About

@prozilla-os/logic-sim is a ProzillaOS application for simulating digital logic. Inspired by Digital Logic Sim by Sebastian Lague.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/logic-sim
 yarn add @prozilla-os/core @prozilla-os/logic-sim
-pnpm add @prozilla-os/core @prozilla-os/logic-sim

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { logicSim } from "@prozilla-os/logic-sim";
+pnpm add @prozilla-os/core @prozilla-os/logic-sim

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { logicSim } from "@prozilla-os/logic-sim";
 
 function App() {
   return (
@@ -44,9 +44,9 @@
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ logicSim ]
-        })
+        apps: new AppsConfig({
+          apps: [ logicSim ]
+        })
       }}
     >
       <Taskbar/>
@@ -56,7 +56,7 @@
     </ProzillaOS>
   );
 }

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/apps/media-viewer/index.html b/docs/reference/apps/media-viewer/index.html index 2a7a680b..db67dd75 100644 --- a/docs/reference/apps/media-viewer/index.html +++ b/docs/reference/apps/media-viewer/index.html @@ -6,13 +6,13 @@ @prozilla-os/media-viewer | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

@prozilla-os/media-viewer

About

@prozilla-os/media-viewer is a ProzillaOS application for viewing different kinds of media.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/media-viewer
+    
Skip to content

@prozilla-os/media-viewer

About

@prozilla-os/media-viewer is a ProzillaOS application for viewing different kinds of media.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/media-viewer
 yarn add @prozilla-os/core @prozilla-os/media-viewer
-pnpm add @prozilla-os/core @prozilla-os/media-viewer

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { mediaViewer } from "@prozilla-os/media-viewer";
+pnpm add @prozilla-os/core @prozilla-os/media-viewer

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { mediaViewer } from "@prozilla-os/media-viewer";
 
 function App() {
   return (
@@ -44,9 +44,9 @@
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ mediaViewer ]
-        })
+        apps: new AppsConfig({
+          apps: [ mediaViewer ]
+        })
       }}
     >
       <Taskbar/>
@@ -55,11 +55,11 @@
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * A virtual file containing media to open
- */
-file: VirtualFile;

Built by Prozilla

- +}

Window options

tsx
/**
+ * A virtual file containing media to open
+ */
+file: VirtualFile;

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/apps/settings/index.html b/docs/reference/apps/settings/index.html index d8fb5cfa..832074fa 100644 --- a/docs/reference/apps/settings/index.html +++ b/docs/reference/apps/settings/index.html @@ -6,13 +6,13 @@ @prozilla-os/settings | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

@prozilla-os/settings

About

@prozilla-os/settings is a ProzillaOS application for configuring settings.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/settings
+    
Skip to content

@prozilla-os/settings

About

@prozilla-os/settings is a ProzillaOS application for configuring settings.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/settings
 yarn add @prozilla-os/core @prozilla-os/settings
-pnpm add @prozilla-os/core @prozilla-os/settings

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { settings } from "@prozilla-os/settings";
+pnpm add @prozilla-os/core @prozilla-os/settings

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { settings } from "@prozilla-os/settings";
 
 function App() {
   return (
@@ -44,9 +44,9 @@
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ settings ]
-        })
+        apps: new AppsConfig({
+          apps: [ settings ]
+        })
       }}
     >
       <Taskbar/>
@@ -55,12 +55,12 @@
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * Initial tab to open
- * @default 0
- */
-tab: number;

Built by Prozilla

- +}

Window options

tsx
/**
+ * Initial tab to open
+ * @default 0
+ */
+tab: number;

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/apps/terminal/index.html b/docs/reference/apps/terminal/index.html index bf66158d..269afc83 100644 --- a/docs/reference/apps/terminal/index.html +++ b/docs/reference/apps/terminal/index.html @@ -6,13 +6,13 @@ @prozilla-os/terminal | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

@prozilla-os/terminal

About

@prozilla-os/terminal is a terminal/shell application for ProzillaOS.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/terminal
+    
Skip to content

@prozilla-os/terminal

About

@prozilla-os/terminal is a terminal/shell application for ProzillaOS.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/terminal
 yarn add @prozilla-os/core @prozilla-os/terminal
-pnpm add @prozilla-os/core @prozilla-os/terminal

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { terminal } from "@prozilla-os/terminal";
+pnpm add @prozilla-os/core @prozilla-os/terminal

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { terminal } from "@prozilla-os/terminal";
 
 function App() {
   return (
@@ -44,9 +44,9 @@
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ terminal ]
-        })
+        apps: new AppsConfig({
+          apps: [ terminal ]
+        })
       }}
     >
       <Taskbar/>
@@ -55,17 +55,17 @@
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * Initial path that the app will open
- * @default "~" - Home directory
- */
-path: string;
+}

Window options

tsx
/**
+ * Initial path that the app will open
+ * @default "~" - Home directory
+ */
+path: string;
 
-/**
- * Initial input
- */
-input: string;

Built by Prozilla

- +/** + * Initial input + */ +input: string;

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/apps/text-editor/index.html b/docs/reference/apps/text-editor/index.html index 995de12b..f90e113c 100644 --- a/docs/reference/apps/text-editor/index.html +++ b/docs/reference/apps/text-editor/index.html @@ -6,13 +6,13 @@ @prozilla-os/text-editor | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

@prozilla-os/text-editor

About

@prozilla-os/text-editor is a text editor application for ProzillaOS.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/text-editor
+    
Skip to content

@prozilla-os/text-editor

About

@prozilla-os/text-editor is a text editor application for ProzillaOS.

Installation

@prozilla-os/core is required to run this application.

sh
npm install @prozilla-os/core @prozilla-os/text-editor
 yarn add @prozilla-os/core @prozilla-os/text-editor
-pnpm add @prozilla-os/core @prozilla-os/text-editor

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
-import { textEditor } from "@prozilla-os/text-editor";
+pnpm add @prozilla-os/core @prozilla-os/text-editor

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView, AppsConfig } from "@prozilla-os/core";
+import { textEditor } from "@prozilla-os/text-editor";
 
 function App() {
   return (
@@ -44,9 +44,9 @@
       systemName="Example"
       tagLine="Powered by ProzillaOS"
       config={{
-        apps: new AppsConfig({
-          apps: [ textEditor ]
-        })
+        apps: new AppsConfig({
+          apps: [ textEditor ]
+        })
       }}
     >
       <Taskbar/>
@@ -55,24 +55,24 @@
       <Desktop/>
     </ProzillaOS>
   );
-}

Window options

tsx
/**
- * Initial path that the app will open
- * @default "~" - Home directory
- */
-path: string;
+}

Window options

tsx
/**
+ * Initial path that the app will open
+ * @default "~" - Home directory
+ */
+path: string;
 
-/**
- * Virtual file to open the app with
- */
-file: VirtualFile;
+/**
+ * Virtual file to open the app with
+ */
+file: VirtualFile;
 
-/**
- * Mode in which to run the app
- * "view" - Renders markdown files and renders syntax highlighting of other file formats, disables text editing
- * "edit" - Raw text editor
- */
+/**
+ * Mode in which to run the app
+ * "view" - Renders markdown files and renders syntax highlighting of other file formats, disables text editing
+ * "edit" - Raw text editor
+ */
 mode: "view" | "edit";

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/configuration.html b/docs/reference/configuration.html index 9ee9e759..bd78ea4d 100644 --- a/docs/reference/configuration.html +++ b/docs/reference/configuration.html @@ -6,13 +6,13 @@ Configuration | ProzillaOS Docs - + - + - - - + + + @@ -33,7 +33,7 @@ -
Skip to content

Configuration

To configure ProzillaOS, pass the following properties inside to the config prop on the <ProzillaOS> component.

<ProzillaOS> props

systemName

Name of the system

  • Optional
  • Type: string
  • Default: "ProzillaOS"

tagLine

Tag line or short description of the system

  • Optional
  • Type: string
  • Default: "Web-based Operating System"

skin

Configurations for assets, stylesheets and other visual elements

  • Optional
  • Type: Skin
  • Default: new Skin()

config

Configurations for functional elements and features

  • Optional
  • Type: ConfigOptions
ts
interface ConfigOptions {
+    
Skip to content

Configuration

To configure ProzillaOS, pass the following properties inside to the config prop on the <ProzillaOS> component.

<ProzillaOS> props

systemName

Name of the system

  • Optional
  • Type: string
  • Default: "ProzillaOS"

tagLine

Tag line or short description of the system

  • Optional
  • Type: string
  • Default: "Web-based Operating System"

skin

Configurations for assets, stylesheets and other visual elements

  • Optional
  • Type: Skin
  • Default: new Skin()

config

Configurations for functional elements and features

  • Optional
  • Type: ConfigOptions
ts
interface ConfigOptions {
 	apps?: AppsConfig;
 	desktop?: DesktopConfig;
 	misc?: MiscConfig;
@@ -41,35 +41,35 @@
 	taskbar?: TaskbarConfig;
 	tracking?: TrackingConfig;
 	windows?: WindowsConfig;
-}

Example

tsx
<ProzillaOS
+}

Example

tsx
<ProzillaOS
 	systemName={"ProzillaOS"}
 	tagLine={"Web-based Operating System"}
-	skin={new Skin({
+	skin={new Skin({
 		defaultWallpaper: "/assets/wallpapers/abstract-mesh-gradient-orange-red-purple.png"
-	})}
+	})}
 	config={{
-		apps: new AppsConfig({
-			apps: [
-				fileExplorer.setName("Files")
-					.setDescription("Browse and manage your virtual files on ProzillaOS.")
-					.setIconUrl("/assets/apps/icons/file-explorer.svg"),
-				terminal.setName("Commands")
-					.setDescription("A command line tool inspired by the Unix shell that runs entirely in your browser using ProzillaOS. Allows you to interact and manipulate the virtual drive and run silly commands.")
-					.setIconUrl("/assets/apps/icons/terminal.svg"),
-				settings.setName("Settings")
-					.setDescription(`Configure ProzillaOS's settings and customize your experience.`)
-					.setIconUrl("/assets/apps/icons/settings.svg"),
-			],
-		}),
-		desktop: new DesktopConfig({
+		apps: new AppsConfig({
+			apps: [
+				fileExplorer.setName("Files")
+					.setDescription("Browse and manage your virtual files on ProzillaOS.")
+					.setIconUrl("/assets/apps/icons/file-explorer.svg"),
+				terminal.setName("Commands")
+					.setDescription("A command line tool inspired by the Unix shell that runs entirely in your browser using ProzillaOS. Allows you to interact and manipulate the virtual drive and run silly commands.")
+					.setIconUrl("/assets/apps/icons/terminal.svg"),
+				settings.setName("Settings")
+					.setDescription(`Configure ProzillaOS's settings and customize your experience.`)
+					.setIconUrl("/assets/apps/icons/settings.svg"),
+			],
+		}),
+		desktop: new DesktopConfig({
 			defaultWallpaper: "/assets/wallpapers/abstract-mesh-gradient-orange-red-purple.png"
-		}),
-		taskbar: new TaskbarConfig({
+		}),
+		taskbar: new TaskbarConfig({
 			height: 48
-		}),
+		}),
 	}}
 >

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/core/classes/apps/app.html b/docs/reference/core/classes/apps/app.html index 5989610d..a94f6298 100644 --- a/docs/reference/core/classes/apps/app.html +++ b/docs/reference/core/classes/apps/app.html @@ -6,13 +6,13 @@ Class App | ProzillaOS Docs - + - + - - - + + + @@ -33,14 +33,14 @@ -
Skip to content

Class App

An application that can be run by ProzillaOS

Applications can be installed by adding them to the apps array in AppsConfig

Type parameters

<AppProps extends WindowProps = WindowProps>

Constructor

new App(name, id, windowContent, windowOptions)

Parameters

  • name
    • Type: string
  • id
    • Type: string
  • windowContent
    • Type: React.FC<AppProps>
  • windowOptions
    • Type: WindowOptions | undefined
ts
interface WindowOptions {
+    
Skip to content

Class App

An application that can be run by ProzillaOS

Applications can be installed by adding them to the apps array in AppsConfig

Type parameters

<AppProps extends WindowProps = WindowProps>

Constructor

new App(name, id, windowContent, windowOptions)

Parameters

  • name
    • Type: string
  • id
    • Type: string
  • windowContent
    • Type: React.FC<AppProps>
  • windowOptions
    • Type: WindowOptions | undefined
ts
interface WindowOptions {
 	size?: Vector2;
-	[key: string]: unknown;
-}

References

Properties

name

The display name of this application

  • Type: string
  • Default: "App"

id

The unique ID of this application

  • Type: string
  • Default: "app"

WARNING

Every app must have a unique ID that only contains lower case letters (a-z), numbers (0-9) and dashes (-).

windowContent

React component that renders this app inside a window when the app is running

  • Type: React.FC<AppProps>

windowOptions

Default options that get passed to the windowContent component

  • Type: WindowOptions
ts
interface WindowOptions {
+	[key: string]: unknown;
+}

References

Properties

name

The display name of this application

  • Type: string
  • Default: "App"

id

The unique ID of this application

  • Type: string
  • Default: "app"

WARNING

Every app must have a unique ID that only contains lower case letters (a-z), numbers (0-9) and dashes (-).

windowContent

React component that renders this app inside a window when the app is running

  • Type: React.FC<AppProps>

windowOptions

Default options that get passed to the windowContent component

  • Type: WindowOptions
ts
interface WindowOptions {
 	size?: Vector2;
-	[key: string]: unknown;
+	[key: string]: unknown;
 }

References

description

Description of this application

  • Type: string | null

iconUrl

URL of the icon of this application

  • Type: string | null

role

Defines what parts of the OS this app is responsible for and how it can be used by other apps

  • Type: string | null

associatedExtensions

An array of file extensions that this application is used to open and read

  • Type: string | null

pinnedByDefault

Determines whether the app is pinned by default

  • Type: boolean
  • Default: true

launchAtStartup

Determines whether the app is launched at startup

  • Type: boolean
  • Default: false

Methods

setName(name)

Set the display name of this application

  • Parameters
    • name
      • Type: string
  • Returns
    • Type: this

setDescription(description)

Set the description of this application

  • Parameters
    • description
      • Type: string
  • Returns
    • Type: this

setIconUrl(iconUrl)

Set the URL of the icon of this application

  • Parameters
    • iconUrl
      • Type: string | null
  • Returns
    • Type: this

setRole(role)

Set the role of this application

  • Parameters
    • role
      • Type: string | null
  • Returns
    • Type: this

setAssociatedExtensions(extensions)

Set the associated extensions of this application

  • Parameters
    • extensions
      • Type: string[] | null
  • Returns
    • Type: this

setPinnedByDefault(pinnedByDefault)

Changes whether this application is pinned by default or not

  • Parameters
    • pinnedByDefault
      • Type: boolean
  • Returns
    • Type: this

setLaunchAtStartup(launchAtStartup)

Changes whether this application is launched at startup or not

  • Parameters
    • launchAtStartup
      • Type: boolean
  • Returns
    • Type: this

WindowContent(props)

Renders the app as a React component

  • Parameters
    • props
      • Type: AppProps
  • Returns
    • Type: React.ReactElement

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/core/classes/system/apps-config.html b/docs/reference/core/classes/system/apps-config.html index 3e74aed4..d5c69139 100644 --- a/docs/reference/core/classes/system/apps-config.html +++ b/docs/reference/core/classes/system/apps-config.html @@ -6,13 +6,13 @@ Class AppsConfig | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

Class AppsConfig

Constructor

new AppsConfig(options)

Parameters

  • options
    • Type: AppsConfigOptions | undefined
ts
interface AppsConfigOptions {
-	apps?: App[];
+    
Skip to content

Class AppsConfig

Constructor

new AppsConfig(options)

Parameters

  • options
    • Type: AppsConfigOptions | undefined
ts
interface AppsConfigOptions {
+	apps?: App[];
 }

References

Properties

apps

An array of applications

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/core/classes/system/desktop-config.html b/docs/reference/core/classes/system/desktop-config.html index 2b66fc13..44f85809 100644 --- a/docs/reference/core/classes/system/desktop-config.html +++ b/docs/reference/core/classes/system/desktop-config.html @@ -6,13 +6,13 @@ Class DesktopConfig | ProzillaOS Docs - + - + - - - + + + @@ -33,11 +33,11 @@ -
Skip to content

Class DesktopConfig

Constructor

new DesktopConfig(options)

Parameters

  • options
    • Type: DesktopConfigOptions | undefined
ts
interface DesktopConfigOptions {
+    
Skip to content

Class DesktopConfig

Constructor

new DesktopConfig(options)

Parameters

  • options
    • Type: DesktopConfigOptions | undefined
ts
interface DesktopConfigOptions {
 	defaultIconSize?: 0 | 1 | 2;
 	defaultIconDirection?: 0 | 1;
 }

Properties

defaultIconSize

The default size of the desktop icons

ValueDescription
0Small
1Medium
2Large
  • Type: 0 | 1 | 2
  • Default: 1 (Medium)

defaultIconDirection

The default direction of the desktop icons

ValueDescription
0Vertical
1Horizontal
  • Type: 0 | 1
  • Default: 0 (Vertical)

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/core/classes/system/misc-config.html b/docs/reference/core/classes/system/misc-config.html index 692e3f8b..c7bfd09a 100644 --- a/docs/reference/core/classes/system/misc-config.html +++ b/docs/reference/core/classes/system/misc-config.html @@ -6,13 +6,13 @@ Class MiscConfig | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

Class MiscConfig

Constructor

new MiscConfig(options)

Parameters

  • options
    • Type: MiscConfigOptions | undefined
ts
interface MiscConfigOptions {
+    
Skip to content

Class MiscConfig

Constructor

new MiscConfig(options)

Parameters

  • options
    • Type: MiscConfigOptions | undefined
ts
interface MiscConfigOptions {
 	doubleClickDelay?: number;
 }

Properties

doubleClickDelay

The maximum time between two clicks for those clicks to register as a double click in milliseconds

  • Type: number
  • Default: 250

NOTE

Also applies to touch devices.

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/core/classes/system/modals-config.html b/docs/reference/core/classes/system/modals-config.html index 1c6e60bd..cc9c2281 100644 --- a/docs/reference/core/classes/system/modals-config.html +++ b/docs/reference/core/classes/system/modals-config.html @@ -6,13 +6,13 @@ Class ModalsConfig | ProzillaOS Docs - + - + - - - + + + @@ -33,11 +33,11 @@ -
Skip to content

Class ModalsConfig

Constructor

new ModalsConfig(options)

Parameters

  • options
    • Type: ModalsConfigOptions | undefined
ts
interface ModalsConfigOptions {
+    
Skip to content

Class ModalsConfig

Constructor

new ModalsConfig(options)

Parameters

  • options
    • Type: ModalsConfigOptions | undefined
ts
interface ModalsConfigOptions {
 	defaultDialogSize?: Vector2;
 	defaultFileSelectorSize?: Vector2;
 }

References

Properties

defaultDialogSize

Default size of a dialog box

  • Type: Vector2
  • Default: new Vector2(400, 200)

defaultFileSelectorSize

Default size of a file selector

  • Type: Vector2
  • Default: new Vector2(700, 400)

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/core/classes/system/taskbar-config.html b/docs/reference/core/classes/system/taskbar-config.html index bb82936a..068a1efa 100644 --- a/docs/reference/core/classes/system/taskbar-config.html +++ b/docs/reference/core/classes/system/taskbar-config.html @@ -6,13 +6,13 @@ Class TaskbarConfig | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

Class TaskbarConfig

Constructor

new TaskbarConfig(options)

Parameters

  • options
    • Type: TaskbarConfigOptions | undefined
ts
interface TaskbarConfigOptions {
+    
Skip to content

Class TaskbarConfig

Constructor

new TaskbarConfig(options)

Parameters

  • options
    • Type: TaskbarConfigOptions | undefined
ts
interface TaskbarConfigOptions {
 	height?: number;
 }

Properties

height

Height of the taskbar in CSS pixels

  • Type: number
  • Default: 48

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/core/classes/system/tracking-config.html b/docs/reference/core/classes/system/tracking-config.html index b158ad10..7236c673 100644 --- a/docs/reference/core/classes/system/tracking-config.html +++ b/docs/reference/core/classes/system/tracking-config.html @@ -6,13 +6,13 @@ Class TrackingConfig | ProzillaOS Docs - + - + - - - + + + @@ -33,11 +33,11 @@ -
Skip to content

Class TrackingConfig

Constructor

new TrackingConfig(options)

Parameters

  • options
    • Type: TrackingConfigOptions | undefined
ts
interface TrackingConfigOptions {
+    
Skip to content

Class TrackingConfig

Constructor

new TrackingConfig(options)

Parameters

  • options
    • Type: TrackingConfigOptions | undefined
ts
interface TrackingConfigOptions {
 	enabled?: boolean;
 	GAMeasurementId?: string;
 }

Properties

enabled

Determines whether tracking is enabled

  • Type: boolean
  • Default: true

GAMeasurementId

Google Analytics measurement ID

  • Type: string

WARNING

This option is required if you want to enable tracking. The tracking feature currently only supports tracking via Google Analytics.

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/core/classes/system/windows-config.html b/docs/reference/core/classes/system/windows-config.html index 19a5b76a..708a88d5 100644 --- a/docs/reference/core/classes/system/windows-config.html +++ b/docs/reference/core/classes/system/windows-config.html @@ -6,13 +6,13 @@ Class WindowsConfig | ProzillaOS Docs - + - + - - - + + + @@ -33,12 +33,12 @@ -
Skip to content

Class WindowsConfig

Constructor

new WindowsConfig(options)

Parameters


  • options
    • Type: WindowsConfigOptions | undefined
ts
interface WindowsConfigOptions {
+    
Skip to content

Class WindowsConfig

Constructor

new WindowsConfig(options)

Parameters


  • options
    • Type: WindowsConfigOptions | undefined
ts
interface WindowsConfigOptions {
 	screenMargin?: number;
 	titleSeparator?: string;
 	minScreenSize?: Vector2;
-}

References

Properties

screenMargin

The margin in CSS pixels that windows will keep between them and the edges of the screen on smaller devices

  • Type: number
  • Default: 32

titleSeparator

A string that is placed between different parts of a window title

  • Type: string
  • Default: "-"

minScreenSize

If the user's screen is smaller than these values, windows will always be maximized

  • Type: Vector2
  • Default: new Vector2(350, 350)

WARNING

Keep these values as low as possible, as this limits some functionality of the OS on devices with certain screen sizes.

Built by Prozilla

- +}

References

Properties

screenMargin

The margin in CSS pixels that windows will keep between them and the edges of the screen on smaller devices

  • Type: number
  • Default: 32

titleSeparator

A string that is placed between different parts of a window title

  • Type: string
  • Default: "-"

minScreenSize

If the user's screen is smaller than these values, windows will always be maximized

  • Type: Vector2
  • Default: new Vector2(350, 350)

WARNING

Keep these values as low as possible, as this limits some functionality of the OS on devices with certain screen sizes.

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/core/classes/utils/time-manager.html b/docs/reference/core/classes/utils/time-manager.html new file mode 100644 index 00000000..e92b9812 --- /dev/null +++ b/docs/reference/core/classes/utils/time-manager.html @@ -0,0 +1,47 @@ + + + + + + Class TimeManager | ProzillaOS Docs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Skip to content

Class TimeManager

A utility class for keeping track of time

Properties

startDate static

  • Static
  • Type: Date

Methods

reset() static

Resets the time

getUptime(precision) static

Get the current uptime

Parameters

  • precision - Determines how many units of time the uptime is displayed in
    • Type: number
    • Default: 2

Returns

The current uptime in a human-readable format

  • Type: string

Example

ts
TimeManager.getUptime(1);
+// Result: 4 hours
+
+TimeManager.getUptime(2);
+// Result: 4 hours, 15 minutes 
+
+TimeManager.getUptime(3);
+// Result: 4 hours, 15 minutes, 56 seconds

Built by Prozilla

+ + + + \ No newline at end of file diff --git a/docs/reference/core/classes/utils/vector2.html b/docs/reference/core/classes/utils/vector2.html index 5feacc8f..ee227558 100644 --- a/docs/reference/core/classes/utils/vector2.html +++ b/docs/reference/core/classes/utils/vector2.html @@ -6,13 +6,13 @@ Class Vector2 | ProzillaOS Docs - + - + - - - + + + @@ -33,14 +33,14 @@ -
Skip to content

Class Vector2

A 2-dimensional vector, set of coordinates or dimensions

Constructor

new Vector2(x, y)

Parameters

  • x
    • Type: number
  • y
    • Type: number | undefined

Examples

ts
new Vector2(2, 4)
-// Result: Vector2(2, 4)
+    
Skip to content

Class Vector2

A 2-dimensional vector, set of coordinates or dimensions

Constructor

new Vector2(x, y)

Parameters

  • x
    • Type: number
  • y
    • Type: number | undefined

Examples

ts
new Vector2(2, 4)
+// Result: Vector2(2, 4)
 
-new Vector2(3)
-// Result: Vector2(3, 3)

Properties

x

  • Type: number

y

  • Type: number

ZERO

Returns a vector with each value set to zero

  • Static

  • Type: Vector2

  • Example

    ts
    Vector2.ZERO
    -// Result: Vector2(0, 0)

clone

Returns a clone of this vector

  • Type: Vector2

Methods

round()

Round the values of this vector to whole numbers

Details
  • Returns

    • Type: this
  • Example

    ts
    new Vector2(3.6, 1.3).round()
    -// Result: Vector2(4, 1)

getDistance(x, y)

Get the distance between this vector and another

Details
  • Parameters
    • x
      • Type: number
    • y
      • Type: number
  • Returns
    • Type: number

getDistance(vector2)

Get the distance between this vector and another

Details
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: number

add(vector2A, vector2B)

Add two vectors together

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: Vector2

subtract(vector2A, vector2B)

Subtract two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: Vector2

scale(vector2, scalar)

Scale a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
    • scalar
      • Type: number
  • Returns
    • Type: Vector2

magnitude(vector2)

Get the magnitude of a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: number

normalize(vector2)

Normalize a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: Vector2

sqrDistance (vector2A, vector2B)

Get the square distance between two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: number

lerp(vector2A, vector2B, t)

Lerp between two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
    • t
      • Type: number
  • Returns
    • Type: Vector2

Built by Prozilla

- +new Vector2(3) +// Result: Vector2(3, 3)

Properties

x

  • Type: number

y

  • Type: number

ZERO

Returns a vector with each value set to zero

  • Static

  • Type: Vector2

  • Example

    ts
    Vector2.ZERO
    +// Result: Vector2(0, 0)

clone

Returns a clone of this vector

  • Type: Vector2

Methods

round()

Round the values of this vector to whole numbers

Details
  • Returns

    • Type: this
  • Example

    ts
    new Vector2(3.6, 1.3).round()
    +// Result: Vector2(4, 1)

getDistance(x, y)

Get the distance between this vector and another

Details
  • Parameters
    • x
      • Type: number
    • y
      • Type: number
  • Returns
    • Type: number

getDistance(vector2)

Get the distance between this vector and another

Details
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: number

add(vector2A, vector2B)

Add two vectors together

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: Vector2

subtract(vector2A, vector2B)

Subtract two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: Vector2

scale(vector2, scalar)

Scale a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
    • scalar
      • Type: number
  • Returns
    • Type: Vector2

magnitude(vector2)

Get the magnitude of a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: number

normalize(vector2)

Normalize a vector

Details
  • Static
  • Parameters
    • vector2
      • Type: Vector2
  • Returns
    • Type: Vector2

sqrDistance (vector2A, vector2B)

Get the square distance between two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
  • Returns
    • Type: number

lerp(vector2A, vector2B, t)

Lerp between two vectors

Details
  • Static
  • Parameters
    • vector2A
      • Type: Vector2
    • vector2B
      • Type: Vector2
    • t
      • Type: number
  • Returns
    • Type: Vector2

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/core/constants/index.html b/docs/reference/core/constants/index.html index 3480d53d..4302f37a 100644 --- a/docs/reference/core/constants/index.html +++ b/docs/reference/core/constants/index.html @@ -6,13 +6,13 @@ Constants | ProzillaOS Docs - + - + - - - + + + @@ -33,8 +33,8 @@ -
Skip to content

Constants

Constants for ProzillaOS

Virtual drive

CODE_EXTENSIONS

An array of file extensions for code-related files

  • Type: string[]

IMAGE_EXTENSIONS

An array of file extensions for image files

  • Type: string[]

Themes

THEMES

A map that transforms theme ids into theme names

  • Type: Record<number, string | null>

Built by Prozilla

- +
Skip to content

Constants

Constants for ProzillaOS

Virtual drive

CODE_EXTENSIONS

An array of file extensions for code-related files

  • Type: string[]

IMAGE_EXTENSIONS

An array of file extensions for image files

  • Type: string[]

Themes

THEMES

A map that transforms theme ids into theme names

  • Type: Record<number, string | null>

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/core/functions/browser.html b/docs/reference/core/functions/browser.html index 850eb5dc..96376c0c 100644 --- a/docs/reference/core/functions/browser.html +++ b/docs/reference/core/functions/browser.html @@ -6,13 +6,13 @@ Browser functions | ProzillaOS Docs - + - + - - - + + + @@ -33,12 +33,12 @@ -
Skip to content

Browser functions

Functions related to the browser

closeViewport(requireConfirmation, name)

Simulate closing the viewport by opening a blank page

Parameters

  • requireConfirmation - Whether to ask the user for confirmation before closing
    • Type: boolean | undefined
    • Default: false
  • name - Name of the system
    • Type: string

reloadViewport()

Reload the viewport

isValidUrl(string)

Validate a URL string

Parameters

  • string - Input string
    • Type: string

Returns

  • Type: boolean

setViewportTitle(title)

Change the viewport title by changing meta tags and document title

Parameters

  • title - Viewport title
    • Type: string

setViewportIcon(url)

Change the viewport icon by changing meta tags

Parameters

  • url - URL of the viewport icon
    • Type: string

getViewportParams()

Get the current viewport parameters/search queries

Returns

  • Type: Record<string, string>

generateUrl(options)

Generate a system URL based on some options

Parameters

  • options
    • Type: GenerateUrlOptions
ts
interface GenerateUrlOptions {
+    
Skip to content

Browser functions

Functions related to the browser

closeViewport(requireConfirmation, name)

Simulate closing the viewport by opening a blank page

Parameters

  • requireConfirmation - Whether to ask the user for confirmation before closing
    • Type: boolean | undefined
    • Default: false
  • name - Name of the system
    • Type: string

reloadViewport()

Reload the viewport

isValidUrl(string)

Validate a URL string

Parameters

  • string - Input string
    • Type: string

Returns

  • Type: boolean

setViewportTitle(title)

Change the viewport title by changing meta tags and document title

Parameters

  • title - Viewport title
    • Type: string

setViewportIcon(url)

Change the viewport icon by changing meta tags

Parameters

  • url - URL of the viewport icon
    • Type: string

getViewportParams()

Get the current viewport parameters/search queries

Returns

  • Type: Record<string, string>

generateUrl(options)

Generate a system URL based on some options

Parameters

  • options
    • Type: GenerateUrlOptions
ts
interface GenerateUrlOptions {
  appId?: string;
  fullscreen?: boolean;
  standalone?: boolean;
 }

Returns

The generated URL

  • Type: string

openUrl(url, target)

Open a URL in an optional target or the current window

Parameters

  • url
    • Type: string
  • target
    • Type: React.HTMLAttributeAnchorTarget | undefined

removeUrlProtocol(url)

Remove the protocol from a URL string

Parameters

  • url
    • Type: string

Returns

URL without protocol

  • Type: string

copyToClipboard(string, onSuccess, onFail)

Copy text to the user's clipboard

Parameters

  • string
    • Type: string
  • onSuccess
    • Type: Function
  • onFail
    • Type: Function

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/core/functions/keyboard.html b/docs/reference/core/functions/keyboard.html new file mode 100644 index 00000000..1da9f887 --- /dev/null +++ b/docs/reference/core/functions/keyboard.html @@ -0,0 +1,41 @@ + + + + + + Keyboard functions | ProzillaOS Docs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Skip to content

Keyboard functions

Functions related to the keyboard

formatShortcut(shortcut)

Formats a shortcut (combination of keys) into a human-readable format.

For a list of valid key values, refer to this page: Key values for keyboard events - Web APIs | MDN

Parameters

  • shortcut - A list of keys
    • Type: string[]

Returns

  • Type: string

Example

ts
formatShortcut(["Control", "a"])
+// Result: "Ctrl+A"

Built by Prozilla

+ + + + \ No newline at end of file diff --git a/docs/reference/core/index.html b/docs/reference/core/index.html index 2b5c179c..c5839ed5 100644 --- a/docs/reference/core/index.html +++ b/docs/reference/core/index.html @@ -6,13 +6,13 @@ @prozilla-os/core | ProzillaOS Docs - + - + - - - + + + @@ -33,9 +33,9 @@ -
Skip to content

@prozilla-os/core

About

@prozilla-os/core is a React Vite component library written in TypeScript for building web-based operating systems, made by Prozilla.

Installation

sh
npm install @prozilla-os/core
+    
Skip to content

@prozilla-os/core

About

@prozilla-os/core is a React Vite component library written in TypeScript for building web-based operating systems, made by Prozilla.

Installation

sh
npm install @prozilla-os/core
 yarn add @prozilla-os/core
-pnpm add @prozilla-os/core

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "@prozilla-os/core";
+pnpm add @prozilla-os/core

Usage

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "@prozilla-os/core";
 
 function App() {
   return (
@@ -46,19 +46,19 @@
       <Desktop/>
     </ProzillaOS>
   );
-}

Configuration

tsx
interface ProzillaOSProps {
+}

Configuration

tsx
interface ProzillaOSProps {
 
   systemName: string,
 
   tagLine: string,
 
-  skin: new Skin({
+  skin: new Skin({
 
     appIcons: Record<number, string> | undefined,
 
  appNames: Record<number, string> | undefined,
 
- wallpapers: string[],
+ wallpapers: string[],
 
  defaultWallpaper: string,
 
@@ -78,95 +78,95 @@
 
  loadStyleSheet: () => void | undefined
 
-  })
+  })
 
   config: {
-    apps: new AppsConfig({
+    apps: new AppsConfig({
 
-      apps: App[]
+      apps: App[]
 
-    }),
-    desktop: new DesktopConfig({
+    }),
+    desktop: new DesktopConfig({
 
-      /**
-       * @default 1
-       */
+      /**
+       * @default 1
+       */
       defaultIconSize: 0 | 1 | 2,
 
-      /**
-       * 0: vertical, 1: horizontal
-       * @default 0
-       * */
+      /**
+       * 0: vertical, 1: horizontal
+       * @default 0
+       * */
       defaultIconDirection: 0 | 1
 
-    }),
- misc: new MiscConfig({
+    }),
+ misc: new MiscConfig({
 
-      /**
-    * @default 250
-    */
+      /**
+    * @default 250
+    */
    doubleClickDelay: number
 
- })
-    modals: new ModalsConfig({
+ })
+    modals: new ModalsConfig({
 
-      /**
-       * Default size of a dialog box
-       * @default new Vector2(400, 200)
-       */
+      /**
+       * Default size of a dialog box
+       * @default new Vector2(400, 200)
+       */
       defaultDialogSize: Vector2,
 
-      /**
-       * Default size of a file selector
-       * @default new Vector2(700, 400)
-       */
+      /**
+       * Default size of a file selector
+       * @default new Vector2(700, 400)
+       */
       defaultFileSelectorSize: Vector2
 
-    }),
-    taskbar: new TaskbarConfig({
+    }),
+    taskbar: new TaskbarConfig({
 
-      /**
-       * Height of the taskbar in CSS pixels
-       * @default 3 * 16
-       */
+      /**
+       * Height of the taskbar in CSS pixels
+       * @default 3 * 16
+       */
       height: number
 
-    }),
-    tracking: new TrackingConfig({
+    }),
+    tracking: new TrackingConfig({
 
-      /**
-       * Enable tracking
-       * @default true
-      */
+      /**
+       * Enable tracking
+       * @default true
+      */
       enabled: boolean,
 
-      /** Google Analytics measurement ID */
+      /** Google Analytics measurement ID */
       GAMeasurementId: string
 
-    }),
-    windows: new WindowsConfig({
+    }),
+    windows: new WindowsConfig({
 
-      /**
-       * @default 32
-       */
+      /**
+       * @default 32
+       */
       screenMargin: number,
 
-      /**
-       * @default "-"
-       */
+      /**
+       * @default "-"
+       */
       titleSeparator: string,
 
-      /**
-       * If the user's screen is smaller than these values, windows will always be maximized
-       * @default new Vector2(350, 350)
-       */
+      /**
+       * If the user's screen is smaller than these values, windows will always be maximized
+       * @default new Vector2(350, 350)
+       */
       minScreenSize: Vector2
 
-    })
+    })
   }
 
 }

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/dev-tools/functions/console.html b/docs/reference/dev-tools/functions/console.html index 97d9d87a..29301771 100644 --- a/docs/reference/dev-tools/functions/console.html +++ b/docs/reference/dev-tools/functions/console.html @@ -6,13 +6,13 @@ Console functions | ProzillaOS Docs - + - + - - - + + + @@ -33,18 +33,18 @@ -
Skip to content

Console functions

Functions related to the console

Print messages to the console

Parameters

  • message - Message to print to the console
    • Type: string
  • status - Status of the message
    • Type: "error" | "info" | "file" | "success" | "start" | undefined
  • status - If true, prints the message on a new line
    • Type: boolean | undefined

Example

ts
print("Starting application", "start");
-print("Processing information", "info", true);
-print("info.txt", "file");
-print("Information processed", "success");
-print("Application failed", "error", true);
Starting application...
+    
Skip to content

Console functions

Functions related to the console

Print messages to the console

Parameters

  • message - Message to print to the console
    • Type: string
  • status - Status of the message
    • Type: "error" | "info" | "file" | "success" | "start" | undefined
  • status - If true, prints the message on a new line
    • Type: boolean | undefined

Example

ts
print("Starting application", "start");
+print("Processing information", "info", true);
+print("info.txt", "file");
+print("Information processed", "success");
+print("Application failed", "error", true);
Starting application...
 
-Processing information
-- info.txt
+Processing information
+- info.txt
 ✓ Information processed
 
 ⚠ Application failed

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/dev-tools/functions/vite.html b/docs/reference/dev-tools/functions/vite.html index f3b1c4be..9d5eeb3b 100644 --- a/docs/reference/dev-tools/functions/vite.html +++ b/docs/reference/dev-tools/functions/vite.html @@ -6,13 +6,13 @@ Vite functions | ProzillaOS Docs - + - + - - - + + + @@ -33,67 +33,67 @@ -
Skip to content

Vite functions

Functions related to Vite

appViteConfig(basePath, entryPath)

Helper function for creating Vite configurations for ProzillaOS apps

Parameters

  • basePath - Path of base directory
    • Type: string
  • entryPath - Path of library entry
    • Type: string

Returns

See: https://vitejs.dev/config/

  • Type: vite.UserConfig

Example

ts
// vite.config.ts
+    
Skip to content

Vite functions

Functions related to Vite

appViteConfig(basePath, entryPath)

Helper function for creating Vite configurations for ProzillaOS apps

Parameters

  • basePath - Path of base directory
    • Type: string
  • entryPath - Path of library entry
    • Type: string

Returns

See: https://vitejs.dev/config/

  • Type: vite.UserConfig

Example

ts
// vite.config.ts
 
-import { defineConfig } from "vite";
-import { appViteConfig } from "@prozilla-os/dev-tools";
+import { defineConfig } from "vite";
+import { appViteConfig } from "@prozilla-os/dev-tools";
 
-export default defineConfig({
-	...appViteConfig(__dirname, "src/main.ts")
-});

stageSitePlugin(options)

A Vite (rollup) plugin for automatically staging a ProzillaOS website during the Vite build process.

This plugin generates meta files and separate HTML files for each application for SEO.

Parameters

  • options
    • Type: StageOptions
ts
interface StageOptions {
+export default defineConfig({
+	...appViteConfig(__dirname, "src/main.ts")
+});

stageSitePlugin(options)

A Vite (rollup) plugin for automatically staging a ProzillaOS website during the Vite build process.

This plugin generates meta files and separate HTML files for each application for SEO.

Parameters

  • options
    • Type: StageOptions
ts
interface StageOptions {
 	appsConfig: AppsConfig;
 
-	/**
-	 * Name of the website 
-	 * @example "ProzillaOS"
-	 */
+	/**
+	 * Name of the website 
+	 * @example "ProzillaOS"
+	 */
 	siteName: string;
 
-	/**
-	 * Tag line of the website
-	 * @example "Web-based Operating System"
-	*/
+	/**
+	 * Tag line of the website
+	 * @example "Web-based Operating System"
+	*/
 	siteTagLine: string;
 
-	/**
-	 * Domain of the live website
-	 * 
-	 * A CNAME file will be generated with this value
-	 * @example "os.prozilla.dev"
-	 */
+	/**
+	 * Domain of the live website
+	 * 
+	 * A CNAME file will be generated with this value
+	 * @example "os.prozilla.dev"
+	 */
 	domain: string;
 
-	/**
-	 * Array of image URLs that will be added to the sitemap
-	 */
-	imageUrls?: string[];
-}

Returns

  • Type: rollup.Plugin

Example

ts
// vite.config.ts
+	/**
+	 * Array of image URLs that will be added to the sitemap
+	 */
+	imageUrls?: string[];
+}

Returns

  • Type: rollup.Plugin

Example

ts
// vite.config.ts
 
-import { defineConfig } from "vite";
-import { AppsConfig, fileExplorer, terminal, textEditor } from "prozilla-os";
+import { defineConfig } from "vite";
+import { AppsConfig, fileExplorer, terminal, textEditor } from "prozilla-os";
 
-export default defineConfig({
+export default defineConfig({
 	build: {
 		outDir: "dist",
 		rollupOptions: {
-			plugins: [
-				stageSitePlugin({
-					appsConfig: new AppsConfig({
-						apps: [
-							fileExplorer.setName("Files")
-							terminal.setName("Commands")
-							textEditor.setName("Notes")
-						],
-					}),
+			plugins: [
+				stageSitePlugin({
+					appsConfig: new AppsConfig({
+						apps: [
+							fileExplorer.setName("Files")
+							terminal.setName("Commands")
+							textEditor.setName("Notes")
+						],
+					}),
 					siteName: "ProzillaOS",
 					siteTagLine: "Web-based Operating System",
 					domain: "os.prozilla.dev"
-				})
-			],
+				})
+			],
 		},
 	}
-});

Built by Prozilla

- +});

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/dev-tools/index.html b/docs/reference/dev-tools/index.html index 5b1198ac..a3721251 100644 --- a/docs/reference/dev-tools/index.html +++ b/docs/reference/dev-tools/index.html @@ -6,13 +6,13 @@ @prozilla-os/dev-tools | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

@prozilla-os/dev-tools

About

@prozilla-os/dev-tools is a library of tools for the development of ProzillaOS packages.

Installation

sh
npm install @prozilla-os/dev-tools
+    
Skip to content

@prozilla-os/dev-tools

About

@prozilla-os/dev-tools is a library of tools for the development of ProzillaOS packages.

Installation

sh
npm install @prozilla-os/dev-tools
 yarn add @prozilla-os/dev-tools
 pnpm add @prozilla-os/dev-tools

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/glossary.html b/docs/reference/glossary.html index 7be77b2e..4a10a648 100644 --- a/docs/reference/glossary.html +++ b/docs/reference/glossary.html @@ -6,13 +6,13 @@ Glossary | ProzillaOS Docs - + - + - - - + + + @@ -33,8 +33,8 @@ -
Skip to content

Glossary

Table of Contents

Actions

A React component used to group and display actions together. This is used in the context menu for example, where each option is a separate action. It can take in a certain style and be passed to a modal, it also supports shortcuts and icons.

Application (app)

To the user, applications (often shortened to apps) are processes that open a window when ran. The window allows the user to view and interact with the app. To developers, apps instances of the App class with a reference to a React component.

Categorization

Applications are sorted into these different categories:

  • Primary applications - The main applications that are a crucial part of the ProzillaOS system.
  • Secondary applications - Other applications that are part of the main repository of ProzillaOS.
  • External applications - All other applications.

Installation

To install an application, you simply have to add it to the apps array in your AppsConfig. There is currently no way for users to install apps via the website. There is currently also no support for applications that are not React components.

Modals are modular components that can be instantiated by other components. This feature is mainly used for context menus that are instantiated by windows.

Modals prominently take a position and a callback function as input. When the modal is closed, the callback function is called with optional arguments that usually include whatever the user entered as input while the modal was active. E.g.: A confirmation dialog is usually instantiated at the center of the screen and returns "yes" or "no" to the callback function, depending on which button the user clicked.

Even though modals are very similar to windows, they are also very different. You can look at modals as mini sub-windows that each have their own styling, as opposed to windows that all have a header with a title and some buttons.

Package

A package is a subset of the ProzillaOS ecosystem. Each package constains unique functionality or a ProzillaOS application. Packages can be installed via npm.

Settings

Each group of settings is controlled by a separate xml file. The virtual directory for these files is ~/.config.

Do not confuse settings with configs. Settings are controlled by the user, while configs define the overall behaviour of ProzillaOS and are defined by the developer.

Storage

ProzillaOS makes use of the local storage to store persistent data. The data is loaded by the virtual root during the initialization process. On the first run, the default data is loaded.

The data is converted from class instances to a JSON object and then to a string by the virtual root before it is stored in the local storage. To load data from the local storage, an inverse process is used.

Taskbar

The taskbar serves as a hub for access to various other functionalites, mainly applications. It's very similar to Window's taskbar.

Segments

The taskbar can be split up into 3 main segments:

  • Menus - This includes the home menu, where you can find quick access and a list of applications and the search menu, where you can search for applications by name.
  • App list - This is a list of pinned and active applications.
  • Indicators - This is a group of indicators that are used to display information, like battery power, network connection and volume.

Virtual Drive

The virtual drive is a virtual file and directory system. The root directory is a virtual folder and the access point for all interactions with the virtual drive.

Windows

The windows components are used to view and interact with running applications. Each app opens a window when ran.

Built by Prozilla

- +
Skip to content

Glossary

Table of Contents

Actions

A React component used to group and display actions together. This is used in the context menu for example, where each option is a separate action. It can take in a certain style and be passed to a modal, it also supports shortcuts and icons.

Application (app)

To the user, applications (often shortened to apps) are processes that open a window when ran. The window allows the user to view and interact with the app. To developers, apps instances of the App class with a reference to a React component.

Categorization

Applications are sorted into these different categories:

  • Primary applications - The main applications that are a crucial part of the ProzillaOS system.
  • Secondary applications - Other applications that are part of the main repository of ProzillaOS.
  • External applications - All other applications.

Installation

To install an application, you simply have to add it to the apps array in your AppsConfig. There is currently no way for users to install apps via the website. There is currently also no support for applications that are not React components.

Modals are modular components that can be instantiated by other components. This feature is mainly used for context menus that are instantiated by windows.

Modals prominently take a position and a callback function as input. When the modal is closed, the callback function is called with optional arguments that usually include whatever the user entered as input while the modal was active. E.g.: A confirmation dialog is usually instantiated at the center of the screen and returns "yes" or "no" to the callback function, depending on which button the user clicked.

Even though modals are very similar to windows, they are also very different. You can look at modals as mini sub-windows that each have their own styling, as opposed to windows that all have a header with a title and some buttons.

Package

A package is a subset of the ProzillaOS ecosystem. Each package constains unique functionality or a ProzillaOS application. Packages can be installed via npm.

Settings

Each group of settings is controlled by a separate xml file. The virtual directory for these files is ~/.config.

Do not confuse settings with configs. Settings are controlled by the user, while configs define the overall behaviour of ProzillaOS and are defined by the developer.

Storage

ProzillaOS makes use of the local storage to store persistent data. The data is loaded by the virtual root during the initialization process. On the first run, the default data is loaded.

The data is converted from class instances to a JSON object and then to a string by the virtual root before it is stored in the local storage. To load data from the local storage, an inverse process is used.

Taskbar

The taskbar serves as a hub for access to various other functionalites, mainly applications. It's very similar to Window's taskbar.

Segments

The taskbar can be split up into 3 main segments:

  • Menus - This includes the home menu, where you can find quick access and a list of applications and the search menu, where you can search for applications by name.
  • App list - This is a list of pinned and active applications.
  • Indicators - This is a group of indicators that are used to display information, like battery power, network connection and volume.

Virtual Drive

The virtual drive is a virtual file and directory system. The root directory is a virtual folder and the access point for all interactions with the virtual drive.

Windows

The windows components are used to view and interact with running applications. Each app opens a window when ran.

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/packages.html b/docs/reference/packages.html index e875a5c6..0be88b65 100644 --- a/docs/reference/packages.html +++ b/docs/reference/packages.html @@ -6,13 +6,13 @@ Packages | ProzillaOS Docs - + - + - - - + + + @@ -33,8 +33,8 @@ -
Skip to content

Packages

This is an overview of all packages related to ProzillaOS. Each package is published to the npm registry.

Bundle

This bundle lets you quickly get started with ProzillaOS without the hassle of installing all packages individually.

  • prozilla-os: A bundle containing @prozilla-os/core and all primary applications of ProzillaOS

Libraries

These libraries are different modules of ProzillaOS that can be installed separately or via the bundle package prozilla-os.

Applications

Primary applications

These applications are included in the prozilla-os bundle.

Secondary applications

External applications

These applications are related to ProzillaOS and used in the demo, but their source code is hosted in a separate repository on GitHub.

Built by Prozilla

- +
Skip to content

Packages

This is an overview of all packages related to ProzillaOS. Each package is published to the npm registry.

Bundle

This bundle lets you quickly get started with ProzillaOS without the hassle of installing all packages individually.

  • prozilla-os: A bundle containing @prozilla-os/core and all primary applications of ProzillaOS

Libraries

These libraries are different modules of ProzillaOS that can be installed separately or via the bundle package prozilla-os.

Applications

Primary applications

These applications are included in the prozilla-os bundle.

Secondary applications

External applications

These applications are related to ProzillaOS and used in the demo, but their source code is hosted in a separate repository on GitHub.

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/prozilla-os/index.html b/docs/reference/prozilla-os/index.html index d6d2d2c1..99ac5d27 100644 --- a/docs/reference/prozilla-os/index.html +++ b/docs/reference/prozilla-os/index.html @@ -6,13 +6,13 @@ prozilla-os | ProzillaOS Docs - + - + - - - + + + @@ -33,9 +33,9 @@ -
Skip to content

prozilla-os

About

prozilla-os is a React Vite component library written in TypeScript for building web-based operating systems, made by Prozilla. This package combines multiple other packages for easy access to different ProzillaOS features. You can also download these packages separately instead.

Live demo: os.prozilla.dev - (source)

Installation

sh
npm install prozilla-os
+    
Skip to content

prozilla-os

About

prozilla-os is a React Vite component library written in TypeScript for building web-based operating systems, made by Prozilla. This package combines multiple other packages for easy access to different ProzillaOS features. You can also download these packages separately instead.

Live demo: os.prozilla.dev - (source)

Installation

sh
npm install prozilla-os
 yarn add prozilla-os
-pnpm add prozilla-os

Packages

prozilla-os combines the following packages into one:

Usage

For more information about the in-depth usage of each package, check out the links in the section above.

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "prozilla-os";
+pnpm add prozilla-os

Packages

prozilla-os combines the following packages into one:

Usage

For more information about the in-depth usage of each package, check out the links in the section above.

Basic setup

tsx
import { Desktop, ModalsView, ProzillaOS, Taskbar, WindowsView } from "prozilla-os";
 
 function App() {
   return (
@@ -46,19 +46,19 @@
       <Desktop/>
     </ProzillaOS>
   );
-}

Configuration

tsx
interface ProzillaOSProps {
+}

Configuration

tsx
interface ProzillaOSProps {
 
   systemName: string,
 
   tagLine: string,
 
-  skin: new Skin({
+  skin: new Skin({
 
     appIcons: Record<number, string> | undefined,
 
  appNames: Record<number, string> | undefined,
 
- wallpapers: string[],
+ wallpapers: string[],
 
  defaultWallpaper: string,
 
@@ -78,95 +78,95 @@
 
  loadStyleSheet: () => void | undefined
 
-  })
+  })
 
   config: {
-    apps: new AppsConfig({
+    apps: new AppsConfig({
 
-      apps: App[]
+      apps: App[]
 
-    }),
-    desktop: new DesktopConfig({
+    }),
+    desktop: new DesktopConfig({
 
-      /**
-       * @default 1
-       */
+      /**
+       * @default 1
+       */
       defaultIconSize: 0 | 1 | 2,
 
-      /**
-       * 0: vertical, 1: horizontal
-       * @default 0
-       * */
+      /**
+       * 0: vertical, 1: horizontal
+       * @default 0
+       * */
       defaultIconDirection: 0 | 1
 
-    }),
- misc: new MiscConfig({
+    }),
+ misc: new MiscConfig({
 
-      /**
-    * @default 250
-    */
+      /**
+    * @default 250
+    */
    doubleClickDelay: number
 
- })
-    modals: new ModalsConfig({
+ })
+    modals: new ModalsConfig({
 
-      /**
-       * Default size of a dialog box
-       * @default new Vector2(400, 200)
-       */
+      /**
+       * Default size of a dialog box
+       * @default new Vector2(400, 200)
+       */
       defaultDialogSize: Vector2,
 
-      /**
-       * Default size of a file selector
-       * @default new Vector2(700, 400)
-       */
+      /**
+       * Default size of a file selector
+       * @default new Vector2(700, 400)
+       */
       defaultFileSelectorSize: Vector2
 
-    }),
-    taskbar: new TaskbarConfig({
+    }),
+    taskbar: new TaskbarConfig({
 
-      /**
-       * Height of the taskbar in CSS pixels
-       * @default 3 * 16
-       */
+      /**
+       * Height of the taskbar in CSS pixels
+       * @default 3 * 16
+       */
       height: number
 
-    }),
-    tracking: new TrackingConfig({
+    }),
+    tracking: new TrackingConfig({
 
-      /**
-       * Enable tracking
-       * @default true
-      */
+      /**
+       * Enable tracking
+       * @default true
+      */
       enabled: boolean,
 
-      /** Google Analytics measurement ID */
+      /** Google Analytics measurement ID */
       GAMeasurementId: string
 
-    }),
-    windows: new WindowsConfig({
+    }),
+    windows: new WindowsConfig({
 
-      /**
-       * @default 32
-       */
+      /**
+       * @default 32
+       */
       screenMargin: number,
 
-      /**
-       * @default "-"
-       */
+      /**
+       * @default "-"
+       */
       titleSeparator: string,
 
-      /**
-       * If the user's screen is smaller than these values, windows will always be maximized
-       * @default new Vector2(350, 350)
-       */
+      /**
+       * If the user's screen is smaller than these values, windows will always be maximized
+       * @default new Vector2(350, 350)
+       */
       minScreenSize: Vector2
 
-    })
+    })
   }
 
 }

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/shared/classes/event-emitter.html b/docs/reference/shared/classes/event-emitter.html new file mode 100644 index 00000000..c97b8c4a --- /dev/null +++ b/docs/reference/shared/classes/event-emitter.html @@ -0,0 +1,73 @@ + + + + + + Class EventEmitter | ProzillaOS Docs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Skip to content

Class EventEmitter

An abstract class for creating event emitters

Type parameters

<EventMap extends EventNamesMap>

ts
type EventNamesMap = Record<string, string>;

Properties

EVENT_NAMES

A map of valid event names

  • Type: EventNamesMap
  • Default: {}

Methods

on(eventName, callback)

Add event listener for an event

Type parameters

  • <Key extends keyof EventMap>

Parameters

  • eventName
    • Type: Key
  • callback
    • Type: (data: unknown) => void

off(eventName, callback)

Remove event listener for an event

Type parameters

  • <Key extends keyof EventMap>

Parameters

  • eventName
    • Type: Key
  • callback
    • Type: (data: unknown) => void

emit(eventName, data)

Dispatch event

Type parameters

  • <Key extends keyof EventMap>

Parameters

  • eventName
    • Type: Key
  • data
    • Type: unknown | undefined

Example

Here is a class called Stream that sends events when the stream starts, stops and when the stream receives input. Any event listener listening to the "new" event, will receive the input from the stream.

ts
import { EventEmitter } from "@prozilla-os/shared";
+
+const StreamEvents = {
+	new: "new",
+	start: "start",
+	stop: "stop",
+} as const;
+
+export class Stream extends EventEmitter<typeof StreamEvents> {
+	static EVENT_NAMES = StreamEvents;
+
+	enabled: boolean = false;
+
+	start() {
+		if (this.enabled)
+			return;
+
+		this.enabled = true;
+		this.emit("start");
+	}
+
+	stop() {
+		if (!this.enabled)
+			return;
+
+		this.enabled = false;
+		this.emit("stop");
+	}
+
+	send(text: string) {
+		if (this.enabled)
+			this.emit("new", text);
+	}
+}

Built by Prozilla

+ + + + \ No newline at end of file diff --git a/docs/reference/shared/constants/ansi.html b/docs/reference/shared/constants/ansi.html index 811a6a4f..8a8ef28a 100644 --- a/docs/reference/shared/constants/ansi.html +++ b/docs/reference/shared/constants/ansi.html @@ -6,13 +6,13 @@ ANSI constants | ProzillaOS Docs - + - + - - - + + + @@ -33,13 +33,13 @@ -
Skip to content

ANSI constants

ANSI codes for coloring and decorating ANSI text

ANSI

  • Type: Ansi
ts
interface Ansi {
-	fg: Record<number, string>; // Foreground colors
-	bg: Record<number, string>; // Background colors
+    
Skip to content

ANSI constants

ANSI codes for coloring and decorating ANSI text

ANSI

  • Type: Ansi
ts
interface Ansi {
+	fg: Record<number, string>; // Foreground colors
+	bg: Record<number, string>; // Background colors
 	decoration: Record<number, string>;
 	reset: string;
 };

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/shared/functions/array.html b/docs/reference/shared/functions/array.html index b994376a..88168b3e 100644 --- a/docs/reference/shared/functions/array.html +++ b/docs/reference/shared/functions/array.html @@ -6,13 +6,13 @@ Array functions | ProzillaOS Docs - + - + - - - + + + @@ -33,8 +33,8 @@ -
Skip to content

Array functions

Functions related to arrays

removeFromArray(item, array)

Remove an item from an array

Type parameters

  • <ItemType>

Parameters

  • item - Item to remove from the array
    • Type: ItemType
  • array
    • Type: ItemType[]

randomFromArray(array)

Get a random item from an array

Type parameters

  • <ItemType>

Parameters

  • array
    • Type: ItemType[]

Returns

  • Type: ItemType

removeDuplicatesFromArray(array)

Removes all duplicate items from an array and returns the array

Type parameters

  • <ItemType>

Parameters

  • array
    • Type: ItemType[]

Returns

  • Type: ItemType[]

Built by Prozilla

- +
Skip to content

Array functions

Functions related to arrays

removeFromArray(item, array)

Remove an item from an array

Type parameters

  • <ItemType>

Parameters

  • item - Item to remove from the array
    • Type: ItemType
  • array
    • Type: ItemType[]

randomFromArray(array)

Get a random item from an array

Type parameters

  • <ItemType>

Parameters

  • array
    • Type: ItemType[]

Returns

  • Type: ItemType

removeDuplicatesFromArray(array)

Removes all duplicate items from an array and returns the array

Type parameters

  • <ItemType>

Parameters

  • array
    • Type: ItemType[]

Returns

  • Type: ItemType[]

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/shared/functions/date.html b/docs/reference/shared/functions/date.html index 2ecada97..983dfd7f 100644 --- a/docs/reference/shared/functions/date.html +++ b/docs/reference/shared/functions/date.html @@ -6,13 +6,13 @@ Date functions | ProzillaOS Docs - + - + - - - + + + @@ -33,8 +33,8 @@ -
Skip to content

Date functions

Functions related to dates and time

formatTime(time, maxLength, allowAffixes)

Format a time

Parameters

  • time - Time in milliseconds (negative number represents time in the past)
    • Type: number
  • maxLength - The maximum amount of units, e.g.: 3 => years, months, days
    • Type: number | undefined
    • Default: 3
  • allowAffixes - Allow "... ago" or "in ..."
    • Type: boolean

Returns

  • Type: string

formatRelativeTime(date, maxLength, allowAffixes)

Format a time relative to now

Parameters

  • date
    • Type: Date
  • maxLength - The maximum amount of units, e.g.: 3 => years, months, days
    • Type: number | undefined
      • Default: 3
  • allowAffixes - Allow "... ago" or "in ..."
    • Type: boolean

Returns

  • Type: string

Built by Prozilla

- +
Skip to content

Date functions

Functions related to dates and time

formatTime(time, maxLength, allowAffixes)

Format a time

Parameters

  • time - Time in milliseconds (negative number represents time in the past)
    • Type: number
  • maxLength - The maximum amount of units, e.g.: 3 => years, months, days
    • Type: number | undefined
    • Default: 3
  • allowAffixes - Allow "... ago" or "in ..."
    • Type: boolean

Returns

  • Type: string

formatRelativeTime(date, maxLength, allowAffixes)

Format a time relative to now

Parameters

  • date
    • Type: Date
  • maxLength - The maximum amount of units, e.g.: 3 => years, months, days
    • Type: number | undefined
      • Default: 3
  • allowAffixes - Allow "... ago" or "in ..."
    • Type: boolean

Returns

  • Type: string

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/shared/functions/math.html b/docs/reference/shared/functions/math.html index a48ce179..55a291ba 100644 --- a/docs/reference/shared/functions/math.html +++ b/docs/reference/shared/functions/math.html @@ -6,13 +6,13 @@ Math functions | ProzillaOS Docs - + - + - - - + + + @@ -33,8 +33,8 @@ -
Skip to content

Math functions

Functions related to math

clamp(value, min, max)

Clamp a value between a min and a max value

Parameters

  • value
    • Type: number
  • min
    • Type: number
  • max
    • Type: number

Returns

  • Type: number

randomRange(min, max)

Get a random number in a range between a min and a max value

Parameters

  • min
    • Type: number
  • max
    • Type: number

Returns

  • Type: number

round(value, precision)

Round a number off to a certain amount of digits after the comma

Parameters

  • value - Initial value
    • Type: number
  • precision - Maximum amount of digits allowed after the comma
    • Type: number

Returns

Rounded value

  • Type: number

Built by Prozilla

- +
Skip to content

Math functions

Functions related to math

clamp(value, min, max)

Clamp a value between a min and a max value

Parameters

  • value
    • Type: number
  • min
    • Type: number
  • max
    • Type: number

Returns

  • Type: number

randomRange(min, max)

Get a random number in a range between a min and a max value

Parameters

  • min
    • Type: number
  • max
    • Type: number

Returns

  • Type: number

round(value, precision)

Round a number off to a certain amount of digits after the comma

Parameters

  • value - Initial value
    • Type: number
  • precision - Maximum amount of digits allowed after the comma
    • Type: number

Returns

Rounded value

  • Type: number

Built by Prozilla

+ \ No newline at end of file diff --git a/docs/reference/shared/functions/number.html b/docs/reference/shared/functions/number.html new file mode 100644 index 00000000..3a37193d --- /dev/null +++ b/docs/reference/shared/functions/number.html @@ -0,0 +1,40 @@ + + + + + + Number functions | ProzillaOS Docs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Skip to content

Number functions

Functions related to numbers

isValidInteger(number)

Parameters

  • number
    • Type: number | string

Returns

  • Type: number | boolean

Built by Prozilla

+ + + + \ No newline at end of file diff --git a/docs/reference/shared/index.html b/docs/reference/shared/index.html index 82b87663..297bcfb0 100644 --- a/docs/reference/shared/index.html +++ b/docs/reference/shared/index.html @@ -6,13 +6,13 @@ @prozilla-os/shared | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

@prozilla-os/shared

About

@prozilla-os/shared is a library of shared utility functions and variables for ProzillaOS packages.

Installation

sh
npm install @prozilla-os/shared
+    
Skip to content

@prozilla-os/shared

About

@prozilla-os/shared is a library of shared utility functions and variables for ProzillaOS packages.

Installation

sh
npm install @prozilla-os/shared
 yarn add @prozilla-os/shared
 pnpm add @prozilla-os/shared

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/skins/classes/skin.html b/docs/reference/skins/classes/skin.html index f528ee38..4f20d72b 100644 --- a/docs/reference/skins/classes/skin.html +++ b/docs/reference/skins/classes/skin.html @@ -6,13 +6,13 @@ Class Skin | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

Class Skin

Change the look and feel of ProzillaOS

Constructor

new Skin(options)

Parameters

  • options
    • Type: SkinOptions | undefined
ts
interface SkinOptions {
+    
Skip to content

Class Skin

Change the look and feel of ProzillaOS

Constructor

new Skin(options)

Parameters

  • options
    • Type: SkinOptions | undefined
ts
interface SkinOptions {
 	appIcons?: Record<number, string>;
 	appNames?: Record<number, string>;
-	wallpapers: string[];
+	wallpapers: string[];
 	defaultWallpaper: string;
 	fileIcons: {
 		generic: string;
@@ -51,20 +51,20 @@
 		link?: string;
 	};
 	loadStyleSheet?: () => void;
-}

Properties

appIcons

Replacements for app icons based on app id

  • Type: { [key: string]: string }

appNames

Replacements for app names based on app id

  • Type: { [key: string]: string }

wallpapers

Array of URLs of wallpaper images

  • Type: string[]

defaultWallpaper

URL of default wallpaper image

  • Type: string

Default

"https://os.prozilla.dev/assets/wallpapers/vibrant-wallpaper-blue-purple-red.png"

Default wallpaper

fileIcons

URLs of icons for types of files

  • Type: FileIcons
ts
interface FileIcons {
+}

Properties

appIcons

Replacements for app icons based on app id

  • Type: { [key: string]: string }

appNames

Replacements for app names based on app id

  • Type: { [key: string]: string }

wallpapers

Array of URLs of wallpaper images

  • Type: string[]

defaultWallpaper

URL of default wallpaper image

  • Type: string

Default

"https://os.prozilla.dev/assets/wallpapers/vibrant-wallpaper-blue-purple-red.png"

Default wallpaper

fileIcons

URLs of icons for types of files

  • Type: FileIcons
ts
interface FileIcons {
 	generic: string;
 	info?: string;
 	text?: string;
 	code?: string;
-}

Default

Default file icons

folderIcons

URLs of icons for types of folders

  • Type: FolderIcons
ts
interface FolderIcons {
+}

Default

Default file icons

folderIcons

URLs of icons for types of folders

  • Type: FolderIcons
ts
interface FolderIcons {
 	generic: string;
 	images?: string;
 	text?: string;
 	link?: string;
-}

Default

Default folder icons

loadStyleSheet

Function that dynamically imports style sheet

  • Type: () => void

Example

ts
function loadStyleSheet() {
+}

Default

Default folder icons

loadStyleSheet

Function that dynamically imports style sheet

  • Type: () => void

Example

ts
function loadStyleSheet() {
 	import("../styles/skins/macOs.css");
 }

Instances

macOsSkin

A skin inspired by the macOS interface

minimalSkin

A minimalistic skin with monochrome icons

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/reference/skins/index.html b/docs/reference/skins/index.html index 30534725..a1f6944b 100644 --- a/docs/reference/skins/index.html +++ b/docs/reference/skins/index.html @@ -6,13 +6,13 @@ @prozilla-os/skins | ProzillaOS Docs - + - + - - - + + + @@ -33,10 +33,10 @@ -
Skip to content

@prozilla-os/skins

About

@prozilla-os/skins is a React library that contains skins for ProzillaOS.

Installation

sh
npm install @prozilla-os/skins
+    
Skip to content

@prozilla-os/skins

About

@prozilla-os/skins is a React library that contains skins for ProzillaOS.

Installation

sh
npm install @prozilla-os/skins
 yarn add @prozilla-os/skins
 pnpm add @prozilla-os/skins

Built by Prozilla

- + \ No newline at end of file diff --git a/docs/sitemap.xml b/docs/sitemap.xml index 351e1730..1cf26073 100644 --- a/docs/sitemap.xml +++ b/docs/sitemap.xml @@ -1 +1 @@ -https://os.prozilla.dev/docs/about/featureshttps://os.prozilla.dev/docs/about/introductionhttps://os.prozilla.dev/docs/guides/custom-apphttps://os.prozilla.dev/docs/guides/getting-startedhttps://os.prozilla.dev/docs/guides/self-hostinghttps://os.prozilla.dev/docs/https://os.prozilla.dev/docs/reference/apps/browser/https://os.prozilla.dev/docs/reference/apps/calculator/https://os.prozilla.dev/docs/reference/apps/file-explorer/https://os.prozilla.dev/docs/reference/apps/logic-sim/https://os.prozilla.dev/docs/reference/apps/media-viewer/https://os.prozilla.dev/docs/reference/apps/settings/https://os.prozilla.dev/docs/reference/apps/terminal/https://os.prozilla.dev/docs/reference/apps/text-editor/https://os.prozilla.dev/docs/reference/configurationhttps://os.prozilla.dev/docs/reference/core/classes/apps/apphttps://os.prozilla.dev/docs/reference/core/classes/system/apps-confighttps://os.prozilla.dev/docs/reference/core/classes/system/desktop-confighttps://os.prozilla.dev/docs/reference/core/classes/system/misc-confighttps://os.prozilla.dev/docs/reference/core/classes/system/modals-confighttps://os.prozilla.dev/docs/reference/core/classes/system/taskbar-confighttps://os.prozilla.dev/docs/reference/core/classes/system/tracking-confighttps://os.prozilla.dev/docs/reference/core/classes/system/windows-confighttps://os.prozilla.dev/docs/reference/core/classes/utils/vector2https://os.prozilla.dev/docs/reference/core/constants/https://os.prozilla.dev/docs/reference/core/functions/browserhttps://os.prozilla.dev/docs/reference/core/https://os.prozilla.dev/docs/reference/dev-tools/functions/consolehttps://os.prozilla.dev/docs/reference/dev-tools/functions/vitehttps://os.prozilla.dev/docs/reference/dev-tools/https://os.prozilla.dev/docs/reference/glossaryhttps://os.prozilla.dev/docs/reference/packageshttps://os.prozilla.dev/docs/reference/prozilla-os/https://os.prozilla.dev/docs/reference/shared/constants/ansihttps://os.prozilla.dev/docs/reference/shared/functions/arrayhttps://os.prozilla.dev/docs/reference/shared/functions/datehttps://os.prozilla.dev/docs/reference/shared/functions/mathhttps://os.prozilla.dev/docs/reference/shared/https://os.prozilla.dev/docs/reference/skins/classes/skinhttps://os.prozilla.dev/docs/reference/skins/ \ No newline at end of file +https://os.prozilla.dev/docs/about/featureshttps://os.prozilla.dev/docs/about/introductionhttps://os.prozilla.dev/docs/guides/custom-apphttps://os.prozilla.dev/docs/guides/getting-startedhttps://os.prozilla.dev/docs/guides/self-hostinghttps://os.prozilla.dev/docs/https://os.prozilla.dev/docs/reference/apps/browser/https://os.prozilla.dev/docs/reference/apps/calculator/https://os.prozilla.dev/docs/reference/apps/file-explorer/https://os.prozilla.dev/docs/reference/apps/logic-sim/https://os.prozilla.dev/docs/reference/apps/media-viewer/https://os.prozilla.dev/docs/reference/apps/settings/https://os.prozilla.dev/docs/reference/apps/terminal/https://os.prozilla.dev/docs/reference/apps/text-editor/https://os.prozilla.dev/docs/reference/configurationhttps://os.prozilla.dev/docs/reference/core/classes/apps/apphttps://os.prozilla.dev/docs/reference/core/classes/system/apps-confighttps://os.prozilla.dev/docs/reference/core/classes/system/desktop-confighttps://os.prozilla.dev/docs/reference/core/classes/system/misc-confighttps://os.prozilla.dev/docs/reference/core/classes/system/modals-confighttps://os.prozilla.dev/docs/reference/core/classes/system/taskbar-confighttps://os.prozilla.dev/docs/reference/core/classes/system/tracking-confighttps://os.prozilla.dev/docs/reference/core/classes/system/windows-confighttps://os.prozilla.dev/docs/reference/core/classes/utils/time-managerhttps://os.prozilla.dev/docs/reference/core/classes/utils/vector2https://os.prozilla.dev/docs/reference/core/constants/https://os.prozilla.dev/docs/reference/core/functions/browserhttps://os.prozilla.dev/docs/reference/core/functions/keyboardhttps://os.prozilla.dev/docs/reference/core/https://os.prozilla.dev/docs/reference/dev-tools/functions/consolehttps://os.prozilla.dev/docs/reference/dev-tools/functions/vitehttps://os.prozilla.dev/docs/reference/dev-tools/https://os.prozilla.dev/docs/reference/glossaryhttps://os.prozilla.dev/docs/reference/packageshttps://os.prozilla.dev/docs/reference/prozilla-os/https://os.prozilla.dev/docs/reference/shared/classes/event-emitterhttps://os.prozilla.dev/docs/reference/shared/constants/ansihttps://os.prozilla.dev/docs/reference/shared/functions/arrayhttps://os.prozilla.dev/docs/reference/shared/functions/datehttps://os.prozilla.dev/docs/reference/shared/functions/mathhttps://os.prozilla.dev/docs/reference/shared/functions/numberhttps://os.prozilla.dev/docs/reference/shared/https://os.prozilla.dev/docs/reference/skins/classes/skinhttps://os.prozilla.dev/docs/reference/skins/ \ No newline at end of file