From 716a155bd477bb729625df2a96cda5185cbfb21e Mon Sep 17 00:00:00 2001 From: fonghehe Date: Thu, 1 Jun 2023 11:05:04 +0000 Subject: [PATCH] deploy: 00dc099b2382879009a92040ebc5633f743d47f4 --- 404.html | 8 +- assets/app.88821414.js | 1 + assets/app.aaa0e4d3.js | 1 - assets/chunks/VPAlgoliaSearchBox.036fc84c.js | 14 - assets/chunks/VPAlgoliaSearchBox.81ddc2b4.js | 14 + assets/chunks/framework.522debca.js | 2 - assets/chunks/framework.6241eaf2.js | 2 + assets/chunks/theme.c3b80f96.js | 7 - assets/chunks/theme.c4d303ac.js | 7 + assets/guide_about_index.md.253c741c.js | 1 + assets/guide_about_index.md.253c741c.lean.js | 1 + assets/guide_about_index.md.4fa84a09.js | 1 - assets/guide_about_index.md.4fa84a09.lean.js | 1 - assets/guide_edit.md.2f737706.js | 11 + assets/guide_edit.md.2f737706.lean.js | 1 + assets/guide_edit.md.67c9e928.js | 14 - assets/guide_edit.md.67c9e928.lean.js | 1 - assets/guide_index.md.14f8cbf3.js | 1 - assets/guide_index.md.14f8cbf3.lean.js | 1 - assets/guide_index.md.8916baf2.js | 1 + assets/guide_index.md.8916baf2.lean.js | 1 + assets/guide_other_index.md.24383439.js | 1 + assets/guide_other_index.md.24383439.lean.js | 1 + assets/guide_other_index.md.c2f17cfe.js | 1 - assets/guide_other_index.md.c2f17cfe.lean.js | 1 - assets/guide_start.md.73063b28.js | 1 + assets/guide_start.md.73063b28.lean.js | 1 + assets/guide_start.md.e6abe1c0.js | 1 - assets/guide_start.md.e6abe1c0.lean.js | 1 - ...ef9.js => guide_vue2_alias.md.8e3eac08.js} | 5 +- assets/guide_vue2_alias.md.8e3eac08.lean.js | 1 + assets/guide_vue2_alias.md.c70e0ef9.lean.js | 1 - assets/guide_vue2_axios.md.04119e90.lean.js | 1 - ...e90.js => guide_vue2_axios.md.3e1f1726.js} | 11 +- assets/guide_vue2_axios.md.3e1f1726.lean.js | 1 + ...64f8.js => guide_vue2_base.md.464b144c.js} | 7 +- assets/guide_vue2_base.md.464b144c.lean.js | 1 + assets/guide_vue2_base.md.4d4b64f8.lean.js | 1 - ...cb.js => guide_vue2_bundle.md.d9d24eef.js} | 6 +- assets/guide_vue2_bundle.md.d9d24eef.lean.js | 1 + assets/guide_vue2_bundle.md.df9a7fcb.lean.js | 1 - ...ce.js => guide_vue2_chunks.md.0a3d1312.js} | 5 +- assets/guide_vue2_chunks.md.0a3d1312.lean.js | 1 + assets/guide_vue2_chunks.md.1003bcce.lean.js | 1 - assets/guide_vue2_console.md.b11c98af.lean.js | 1 - ...f.js => guide_vue2_console.md.d624aac3.js} | 6 +- assets/guide_vue2_console.md.d624aac3.lean.js | 1 + assets/guide_vue2_env.md.22af29a2.lean.js | 1 - ...f29a2.js => guide_vue2_env.md.6e6e570e.js} | 24 +- assets/guide_vue2_env.md.6e6e570e.lean.js | 1 + ...js => guide_vue2_externals.md.81bec8dc.js} | 8 +- .../guide_vue2_externals.md.81bec8dc.lean.js | 1 + .../guide_vue2_externals.md.8f341913.lean.js | 1 - assets/guide_vue2_ie.md.8d30e4b5.lean.js | 1 - ...30e4b5.js => guide_vue2_ie.md.bf16d405.js} | 9 +- assets/guide_vue2_ie.md.bf16d405.lean.js | 1 + assets/guide_vue2_lint.md.9f9c0612.js | 152 ---------- assets/guide_vue2_lint.md.9f9c0612.lean.js | 1 - assets/guide_vue2_lint.md.bcdbf636.js | 149 ++++++++++ assets/guide_vue2_lint.md.bcdbf636.lean.js | 1 + assets/guide_vue2_proxy.md.2993ab5e.lean.js | 1 - ...b5e.js => guide_vue2_proxy.md.e19a725e.js} | 8 +- assets/guide_vue2_proxy.md.e19a725e.lean.js | 1 + assets/guide_vue2_rem.md.c59d4c40.lean.js | 1 - ...d4c40.js => guide_vue2_rem.md.dc03687e.js} | 9 +- assets/guide_vue2_rem.md.dc03687e.lean.js | 1 + assets/guide_vue2_router.md.047bd988.lean.js | 1 - ...88.js => guide_vue2_router.md.b749e959.js} | 5 +- assets/guide_vue2_router.md.b749e959.lean.js | 1 + ...0269.js => guide_vue2_sass.md.0540c1bd.js} | 23 +- assets/guide_vue2_sass.md.0540c1bd.lean.js | 1 + assets/guide_vue2_sass.md.55760269.lean.js | 1 - assets/guide_vue2_start.md.3a872719.lean.js | 1 - ...719.js => guide_vue2_start.md.50e4a44d.js} | 7 +- assets/guide_vue2_start.md.50e4a44d.lean.js | 1 + assets/guide_vue2_vant.md.406861fd.lean.js | 1 - ...61fd.js => guide_vue2_vant.md.7f5e95c2.js} | 9 +- assets/guide_vue2_vant.md.7f5e95c2.lean.js | 1 + ...559a.js => guide_vue2_vuex.md.ac525cdf.js} | 11 +- assets/guide_vue2_vuex.md.ac525cdf.lean.js | 1 + assets/guide_vue2_vuex.md.b3b7559a.lean.js | 1 - ...bc4a4c.js => guide_vue2_vw.md.2e9f914f.js} | 14 +- assets/guide_vue2_vw.md.2e9f914f.lean.js | 1 + assets/guide_vue2_vw.md.7dbc4a4c.lean.js | 1 - ...7e2.js => guide_vue3_alias.md.5df8d842.js} | 5 +- assets/guide_vue3_alias.md.5df8d842.lean.js | 1 + assets/guide_vue3_alias.md.e516d7e2.lean.js | 1 - ...294.js => guide_vue3_axios.md.9929e968.js} | 5 +- assets/guide_vue3_axios.md.9929e968.lean.js | 1 + assets/guide_vue3_axios.md.b2916294.lean.js | 1 - ...686c.js => guide_vue3_base.md.22bdbcc7.js} | 7 +- assets/guide_vue3_base.md.22bdbcc7.lean.js | 1 + assets/guide_vue3_base.md.2504686c.lean.js | 1 - ...0f1b6.js => guide_vue3_env.md.15c44b72.js} | 5 +- assets/guide_vue3_env.md.15c44b72.lean.js | 1 + assets/guide_vue3_env.md.5710f1b6.lean.js | 1 - assets/guide_vue3_i18n.md.6236059c.lean.js | 1 - ...059c.js => guide_vue3_i18n.md.efcc4870.js} | 14 +- assets/guide_vue3_i18n.md.efcc4870.lean.js | 1 + assets/guide_vue3_lint.md.a1cc197f.js | 1 - assets/guide_vue3_lint.md.a1cc197f.lean.js | 1 - assets/guide_vue3_lint.md.c956f53d.js | 1 + assets/guide_vue3_lint.md.c956f53d.lean.js | 1 + assets/guide_vue3_pinia.md.100e26e9.lean.js | 1 - ...6e9.js => guide_vue3_pinia.md.f90c3d06.js} | 14 +- assets/guide_vue3_pinia.md.f90c3d06.lean.js | 1 + ...8e9.js => guide_vue3_proxy.md.15dd8725.js} | 5 +- assets/guide_vue3_proxy.md.15dd8725.lean.js | 1 + assets/guide_vue3_proxy.md.835d58e9.lean.js | 1 - ...cd.js => guide_vue3_router.md.f8e4c12f.js} | 5 +- assets/guide_vue3_router.md.f8e4c12f.lean.js | 1 + assets/guide_vue3_router.md.fdac12cd.lean.js | 1 - assets/guide_vue3_start.md.1d5e24be.js | 8 + assets/guide_vue3_start.md.1d5e24be.lean.js | 1 + assets/guide_vue3_start.md.8ee8532d.js | 11 - assets/guide_vue3_start.md.8ee8532d.lean.js | 1 - assets/guide_vue3_ui.md.433fee9a.js | 22 -- assets/guide_vue3_ui.md.433fee9a.lean.js | 1 - assets/guide_vue3_ui.md.6b9ab25c.js | 18 ++ assets/guide_vue3_ui.md.6b9ab25c.lean.js | 1 + ....js => guide_vue3_viewport.md.25648aaa.js} | 9 +- .../guide_vue3_viewport.md.25648aaa.lean.js | 1 + .../guide_vue3_viewport.md.3fbaef14.lean.js | 1 - assets/guide_vue3_vite.md.52761283.js | 1 + assets/guide_vue3_vite.md.52761283.lean.js | 1 + assets/guide_vue3_vite.md.58cc24bc.js | 1 - assets/guide_vue3_vite.md.58cc24bc.lean.js | 1 - ....496a2785.lean.js => index.md.87fecdd2.js} | 2 +- ....496a2785.js => index.md.87fecdd2.lean.js} | 2 +- assets/style.4618a6a3.css | 1 + assets/style.d5313337.css | 1 - guide/about/index.html | 14 +- guide/edit.html | 19 +- guide/index.html | 14 +- guide/other/index.html | 14 +- guide/start.html | 14 +- guide/vue2/alias.html | 17 +- guide/vue2/axios.html | 23 +- guide/vue2/base.html | 19 +- guide/vue2/bundle.html | 18 +- guide/vue2/chunks.html | 17 +- guide/vue2/console.html | 18 +- guide/vue2/env.html | 36 +-- guide/vue2/externals.html | 20 +- guide/vue2/ie.html | 21 +- guide/vue2/lint.html | 267 +++++++++--------- guide/vue2/proxy.html | 20 +- guide/vue2/rem.html | 21 +- guide/vue2/router.html | 17 +- guide/vue2/sass.html | 35 +-- guide/vue2/start.html | 19 +- guide/vue2/vant.html | 21 +- guide/vue2/vuex.html | 23 +- guide/vue2/vw.html | 26 +- guide/vue3/alias.html | 17 +- guide/vue3/axios.html | 17 +- guide/vue3/base.html | 19 +- guide/vue3/env.html | 17 +- guide/vue3/i18n.html | 26 +- guide/vue3/lint.html | 14 +- guide/vue3/pinia.html | 26 +- guide/vue3/proxy.html | 17 +- guide/vue3/router.html | 17 +- guide/vue3/start.html | 19 +- guide/vue3/ui.html | 26 +- guide/vue3/viewport.html | 21 +- guide/vue3/vite.html | 14 +- hashmap.json | 2 +- index.html | 14 +- 169 files changed, 788 insertions(+), 958 deletions(-) create mode 100644 assets/app.88821414.js delete mode 100644 assets/app.aaa0e4d3.js delete mode 100644 assets/chunks/VPAlgoliaSearchBox.036fc84c.js create mode 100644 assets/chunks/VPAlgoliaSearchBox.81ddc2b4.js delete mode 100644 assets/chunks/framework.522debca.js create mode 100644 assets/chunks/framework.6241eaf2.js delete mode 100644 assets/chunks/theme.c3b80f96.js create mode 100644 assets/chunks/theme.c4d303ac.js create mode 100644 assets/guide_about_index.md.253c741c.js create mode 100644 assets/guide_about_index.md.253c741c.lean.js delete mode 100644 assets/guide_about_index.md.4fa84a09.js delete mode 100644 assets/guide_about_index.md.4fa84a09.lean.js create mode 100644 assets/guide_edit.md.2f737706.js create mode 100644 assets/guide_edit.md.2f737706.lean.js delete mode 100644 assets/guide_edit.md.67c9e928.js delete mode 100644 assets/guide_edit.md.67c9e928.lean.js delete mode 100644 assets/guide_index.md.14f8cbf3.js delete mode 100644 assets/guide_index.md.14f8cbf3.lean.js create mode 100644 assets/guide_index.md.8916baf2.js create mode 100644 assets/guide_index.md.8916baf2.lean.js create mode 100644 assets/guide_other_index.md.24383439.js create mode 100644 assets/guide_other_index.md.24383439.lean.js delete mode 100644 assets/guide_other_index.md.c2f17cfe.js delete mode 100644 assets/guide_other_index.md.c2f17cfe.lean.js create mode 100644 assets/guide_start.md.73063b28.js create mode 100644 assets/guide_start.md.73063b28.lean.js delete mode 100644 assets/guide_start.md.e6abe1c0.js delete mode 100644 assets/guide_start.md.e6abe1c0.lean.js rename assets/{guide_vue2_alias.md.c70e0ef9.js => guide_vue2_alias.md.8e3eac08.js} (83%) create mode 100644 assets/guide_vue2_alias.md.8e3eac08.lean.js delete mode 100644 assets/guide_vue2_alias.md.c70e0ef9.lean.js delete mode 100644 assets/guide_vue2_axios.md.04119e90.lean.js rename assets/{guide_vue2_axios.md.04119e90.js => guide_vue2_axios.md.3e1f1726.js} (85%) create mode 100644 assets/guide_vue2_axios.md.3e1f1726.lean.js rename assets/{guide_vue2_base.md.4d4b64f8.js => guide_vue2_base.md.464b144c.js} (81%) create mode 100644 assets/guide_vue2_base.md.464b144c.lean.js delete mode 100644 assets/guide_vue2_base.md.4d4b64f8.lean.js rename assets/{guide_vue2_bundle.md.df9a7fcb.js => guide_vue2_bundle.md.d9d24eef.js} (70%) create mode 100644 assets/guide_vue2_bundle.md.d9d24eef.lean.js delete mode 100644 assets/guide_vue2_bundle.md.df9a7fcb.lean.js rename assets/{guide_vue2_chunks.md.1003bcce.js => guide_vue2_chunks.md.0a3d1312.js} (91%) create mode 100644 assets/guide_vue2_chunks.md.0a3d1312.lean.js delete mode 100644 assets/guide_vue2_chunks.md.1003bcce.lean.js delete mode 100644 assets/guide_vue2_console.md.b11c98af.lean.js rename assets/{guide_vue2_console.md.b11c98af.js => guide_vue2_console.md.d624aac3.js} (77%) create mode 100644 assets/guide_vue2_console.md.d624aac3.lean.js delete mode 100644 assets/guide_vue2_env.md.22af29a2.lean.js rename assets/{guide_vue2_env.md.22af29a2.js => guide_vue2_env.md.6e6e570e.js} (53%) create mode 100644 assets/guide_vue2_env.md.6e6e570e.lean.js rename assets/{guide_vue2_externals.md.8f341913.js => guide_vue2_externals.md.81bec8dc.js} (88%) create mode 100644 assets/guide_vue2_externals.md.81bec8dc.lean.js delete mode 100644 assets/guide_vue2_externals.md.8f341913.lean.js delete mode 100644 assets/guide_vue2_ie.md.8d30e4b5.lean.js rename assets/{guide_vue2_ie.md.8d30e4b5.js => guide_vue2_ie.md.bf16d405.js} (52%) create mode 100644 assets/guide_vue2_ie.md.bf16d405.lean.js delete mode 100644 assets/guide_vue2_lint.md.9f9c0612.js delete mode 100644 assets/guide_vue2_lint.md.9f9c0612.lean.js create mode 100644 assets/guide_vue2_lint.md.bcdbf636.js create mode 100644 assets/guide_vue2_lint.md.bcdbf636.lean.js delete mode 100644 assets/guide_vue2_proxy.md.2993ab5e.lean.js rename assets/{guide_vue2_proxy.md.2993ab5e.js => guide_vue2_proxy.md.e19a725e.js} (70%) create mode 100644 assets/guide_vue2_proxy.md.e19a725e.lean.js delete mode 100644 assets/guide_vue2_rem.md.c59d4c40.lean.js rename assets/{guide_vue2_rem.md.c59d4c40.js => guide_vue2_rem.md.dc03687e.js} (52%) create mode 100644 assets/guide_vue2_rem.md.dc03687e.lean.js delete mode 100644 assets/guide_vue2_router.md.047bd988.lean.js rename assets/{guide_vue2_router.md.047bd988.js => guide_vue2_router.md.b749e959.js} (81%) create mode 100644 assets/guide_vue2_router.md.b749e959.lean.js rename assets/{guide_vue2_sass.md.55760269.js => guide_vue2_sass.md.0540c1bd.js} (66%) create mode 100644 assets/guide_vue2_sass.md.0540c1bd.lean.js delete mode 100644 assets/guide_vue2_sass.md.55760269.lean.js delete mode 100644 assets/guide_vue2_start.md.3a872719.lean.js rename assets/{guide_vue2_start.md.3a872719.js => guide_vue2_start.md.50e4a44d.js} (61%) create mode 100644 assets/guide_vue2_start.md.50e4a44d.lean.js delete mode 100644 assets/guide_vue2_vant.md.406861fd.lean.js rename assets/{guide_vue2_vant.md.406861fd.js => guide_vue2_vant.md.7f5e95c2.js} (69%) create mode 100644 assets/guide_vue2_vant.md.7f5e95c2.lean.js rename assets/{guide_vue2_vuex.md.b3b7559a.js => guide_vue2_vuex.md.ac525cdf.js} (77%) create mode 100644 assets/guide_vue2_vuex.md.ac525cdf.lean.js delete mode 100644 assets/guide_vue2_vuex.md.b3b7559a.lean.js rename assets/{guide_vue2_vw.md.7dbc4a4c.js => guide_vue2_vw.md.2e9f914f.js} (65%) create mode 100644 assets/guide_vue2_vw.md.2e9f914f.lean.js delete mode 100644 assets/guide_vue2_vw.md.7dbc4a4c.lean.js rename assets/{guide_vue3_alias.md.e516d7e2.js => guide_vue3_alias.md.5df8d842.js} (82%) create mode 100644 assets/guide_vue3_alias.md.5df8d842.lean.js delete mode 100644 assets/guide_vue3_alias.md.e516d7e2.lean.js rename assets/{guide_vue3_axios.md.b2916294.js => guide_vue3_axios.md.9929e968.js} (91%) create mode 100644 assets/guide_vue3_axios.md.9929e968.lean.js delete mode 100644 assets/guide_vue3_axios.md.b2916294.lean.js rename assets/{guide_vue3_base.md.2504686c.js => guide_vue3_base.md.22bdbcc7.js} (66%) create mode 100644 assets/guide_vue3_base.md.22bdbcc7.lean.js delete mode 100644 assets/guide_vue3_base.md.2504686c.lean.js rename assets/{guide_vue3_env.md.5710f1b6.js => guide_vue3_env.md.15c44b72.js} (51%) create mode 100644 assets/guide_vue3_env.md.15c44b72.lean.js delete mode 100644 assets/guide_vue3_env.md.5710f1b6.lean.js delete mode 100644 assets/guide_vue3_i18n.md.6236059c.lean.js rename assets/{guide_vue3_i18n.md.6236059c.js => guide_vue3_i18n.md.efcc4870.js} (82%) create mode 100644 assets/guide_vue3_i18n.md.efcc4870.lean.js delete mode 100644 assets/guide_vue3_lint.md.a1cc197f.js delete mode 100644 assets/guide_vue3_lint.md.a1cc197f.lean.js create mode 100644 assets/guide_vue3_lint.md.c956f53d.js create mode 100644 assets/guide_vue3_lint.md.c956f53d.lean.js delete mode 100644 assets/guide_vue3_pinia.md.100e26e9.lean.js rename assets/{guide_vue3_pinia.md.100e26e9.js => guide_vue3_pinia.md.f90c3d06.js} (83%) create mode 100644 assets/guide_vue3_pinia.md.f90c3d06.lean.js rename assets/{guide_vue3_proxy.md.835d58e9.js => guide_vue3_proxy.md.15dd8725.js} (72%) create mode 100644 assets/guide_vue3_proxy.md.15dd8725.lean.js delete mode 100644 assets/guide_vue3_proxy.md.835d58e9.lean.js rename assets/{guide_vue3_router.md.fdac12cd.js => guide_vue3_router.md.f8e4c12f.js} (77%) create mode 100644 assets/guide_vue3_router.md.f8e4c12f.lean.js delete mode 100644 assets/guide_vue3_router.md.fdac12cd.lean.js create mode 100644 assets/guide_vue3_start.md.1d5e24be.js create mode 100644 assets/guide_vue3_start.md.1d5e24be.lean.js delete mode 100644 assets/guide_vue3_start.md.8ee8532d.js delete mode 100644 assets/guide_vue3_start.md.8ee8532d.lean.js delete mode 100644 assets/guide_vue3_ui.md.433fee9a.js delete mode 100644 assets/guide_vue3_ui.md.433fee9a.lean.js create mode 100644 assets/guide_vue3_ui.md.6b9ab25c.js create mode 100644 assets/guide_vue3_ui.md.6b9ab25c.lean.js rename assets/{guide_vue3_viewport.md.3fbaef14.js => guide_vue3_viewport.md.25648aaa.js} (69%) create mode 100644 assets/guide_vue3_viewport.md.25648aaa.lean.js delete mode 100644 assets/guide_vue3_viewport.md.3fbaef14.lean.js create mode 100644 assets/guide_vue3_vite.md.52761283.js create mode 100644 assets/guide_vue3_vite.md.52761283.lean.js delete mode 100644 assets/guide_vue3_vite.md.58cc24bc.js delete mode 100644 assets/guide_vue3_vite.md.58cc24bc.lean.js rename assets/{index.md.496a2785.lean.js => index.md.87fecdd2.js} (73%) rename assets/{index.md.496a2785.js => index.md.87fecdd2.lean.js} (73%) create mode 100644 assets/style.4618a6a3.css delete mode 100644 assets/style.d5313337.css diff --git a/404.html b/404.html index 05414ea..4543d68 100644 --- a/404.html +++ b/404.html @@ -5,15 +5,15 @@ 404 | Vue-H5-Template - - + + -
Skip to content

404

PAGE NOT FOUND

But if you don't change your direction, and if you keep looking, you may end up where you are heading.

Released under the MIT License.

- diff --git a/assets/app.88821414.js b/assets/app.88821414.js new file mode 100644 index 0000000..69c7a8e --- /dev/null +++ b/assets/app.88821414.js @@ -0,0 +1 @@ +import{M as s,a4 as p,a5 as i,a6 as u,a7 as c,a8 as l,a9 as d,aa as f,ab as m,ac as h,ad as A,J as g,d as P,u as v,p as y,k as C,ae as w,af as _,ag as b,ah as E}from"./chunks/framework.6241eaf2.js";import{t as R}from"./chunks/theme.c4d303ac.js";function r(e){if(e.extends){const a=r(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const n=r(R),D=P({name:"VitePressApp",setup(){const{site:e}=v();return y(()=>{C(()=>{document.documentElement.lang=e.value.lang,document.documentElement.dir=e.value.dir})}),w(),_(),b(),n.setup&&n.setup(),()=>E(n.Layout)}});async function O(){const e=T(),a=S();a.provide(i,e);const t=u(e.route);return a.provide(c,t),a.component("Content",l),a.component("ClientOnly",d),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),n.enhanceApp&&await n.enhanceApp({app:a,router:e,siteData:f}),{app:a,router:e,data:t}}function S(){return m(D)}function T(){let e=s,a;return h(t=>{let o=A(t);return e&&(a=o),(e||a===o)&&(o=o.replace(/\.js$/,".lean.js")),s&&(e=!1),g(()=>import(o),[])},n.NotFound)}s&&O().then(({app:e,router:a,data:t})=>{a.go().then(()=>{p(a.route,t.site),e.mount("#app")})});export{O as createApp}; diff --git a/assets/app.aaa0e4d3.js b/assets/app.aaa0e4d3.js deleted file mode 100644 index 1615e12..0000000 --- a/assets/app.aaa0e4d3.js +++ /dev/null @@ -1 +0,0 @@ -import{d as p,K as s,a3 as i,u,h as c,l,a4 as d,a5 as f,a6 as m,a7 as h,a8 as A,a9 as g,aa as P,ab as v,ac as y,ad as C,ae as w,af as _,ag as b,H as E}from"./chunks/framework.522debca.js";import{t as R}from"./chunks/theme.c3b80f96.js";function r(e){if(e.extends){const a=r(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const n=r(R),D=p({name:"VitePressApp",setup(){const{site:e}=u();return c(()=>{l(()=>{document.documentElement.lang=e.value.lang,document.documentElement.dir=e.value.dir})}),d(),f(),m(),n.setup&&n.setup(),()=>h(n.Layout)}});async function O(){const e=T(),a=S();a.provide(A,e);const t=g(e.route);return a.provide(P,t),a.component("Content",v),a.component("ClientOnly",y),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),n.enhanceApp&&await n.enhanceApp({app:a,router:e,siteData:C}),{app:a,router:e,data:t}}function S(){return w(D)}function T(){let e=s,a;return _(t=>{let o=b(t);return e&&(a=o),(e||a===o)&&(o=o.replace(/\.js$/,".lean.js")),s&&(e=!1),E(()=>import(o),[])},n.NotFound)}s&&O().then(({app:e,router:a,data:t})=>{a.go().then(()=>{i(a.route,t.site),e.mount("#app")})});export{O as createApp}; diff --git a/assets/chunks/VPAlgoliaSearchBox.036fc84c.js b/assets/chunks/VPAlgoliaSearchBox.036fc84c.js deleted file mode 100644 index 153c4bb..0000000 --- a/assets/chunks/VPAlgoliaSearchBox.036fc84c.js +++ /dev/null @@ -1,14 +0,0 @@ -import{d as jr,ah as Pr,s as Ir,h as kr,w as Dr,o as Cr,c as Ar}from"./framework.522debca.js";import{u as xr}from"./theme.c3b80f96.js";/*! @docsearch/js 3.3.3 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */function Ct(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function P(e){for(var t=1;t=0||(c[l]=i[l]);return c}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function Ve(e,t){return function(n){if(Array.isArray(n))return n}(e)||function(n,r){var o=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(o!=null){var a,i,u=[],l=!0,s=!1;try{for(o=o.call(n);!(l=(a=o.next()).done)&&(u.push(a.value),!r||u.length!==r);l=!0);}catch(c){s=!0,i=c}finally{try{l||o.return==null||o.return()}finally{if(s)throw i}}return u}}(e,t)||qn(e,t)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function We(e){return function(t){if(Array.isArray(t))return ft(t)}(e)||function(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}(e)||qn(e)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function qn(e,t){if(e){if(typeof e=="string")return ft(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ft(e,t):void 0}}function ft(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n3)for(n=[n],a=3;a0?Se(p.type,p.props,p.key,null,p.__v):p)!=null){if(p.__=n,p.__b=n.__b+1,(m=v[c])===null||m&&p.key==m.key&&p.type===m.type)v[c]=void 0;else for(d=0;d3)for(n=[n],a=3;a=n.__.length&&n.__.push({}),n.__[e]}function Qn(e){return ue=1,Zn(Gn,e)}function Zn(e,t,n){var r=ke(le++,2);return r.t=e,r.__c||(r.__=[n?n(t):Gn(void 0,t),function(o){var a=r.t(r.__[0],o);r.__[0]!==a&&(r.__=[a,r.__[1]],r.__c.setState({}))}],r.__c=T),r.__}function Yn(e,t){var n=ke(le++,3);!w.__s&&jt(n.__H,t)&&(n.__=e,n.__H=t,T.__H.__h.push(n))}function Ft(e,t){var n=ke(le++,4);!w.__s&&jt(n.__H,t)&&(n.__=e,n.__H=t,T.__h.push(n))}function rt(e,t){var n=ke(le++,7);return jt(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function Hr(){mt.forEach(function(e){if(e.__P)try{e.__H.__h.forEach(He),e.__H.__h.forEach(dt),e.__H.__h=[]}catch(t){e.__H.__h=[],w.__e(t,e.__v)}}),mt=[]}w.__b=function(e){T=null,Lt&&Lt(e)},w.__r=function(e){qt&&qt(e),le=0;var t=(T=e.__c).__H;t&&(t.__h.forEach(He),t.__h.forEach(dt),t.__h=[])},w.diffed=function(e){Mt&&Mt(e);var t=e.__c;t&&t.__H&&t.__H.__h.length&&(mt.push(t)!==1&&Tt===w.requestAnimationFrame||((Tt=w.requestAnimationFrame)||function(n){var r,o=function(){clearTimeout(a),Bt&&cancelAnimationFrame(r),setTimeout(n)},a=setTimeout(o,100);Bt&&(r=requestAnimationFrame(o))})(Hr)),T=void 0},w.__c=function(e,t){t.some(function(n){try{n.__h.forEach(He),n.__h=n.__h.filter(function(r){return!r.__||dt(r)})}catch(r){t.some(function(o){o.__h&&(o.__h=[])}),t=[],w.__e(r,n.__v)}}),Ht&&Ht(e,t)},w.unmount=function(e){Ut&&Ut(e);var t=e.__c;if(t&&t.__H)try{t.__H.__.forEach(He)}catch(n){w.__e(n,t.__v)}};var Bt=typeof requestAnimationFrame=="function";function He(e){var t=T;typeof e.__c=="function"&&e.__c(),T=t}function dt(e){var t=T;e.__c=e.__(),T=t}function jt(e,t){return!e||e.length!==t.length||t.some(function(n,r){return n!==e[r]})}function Gn(e,t){return typeof t=="function"?t(e):t}function Xn(e,t){for(var n in t)e[n]=t[n];return e}function ht(e,t){for(var n in e)if(n!=="__source"&&!(n in t))return!0;for(var r in t)if(r!=="__source"&&e[r]!==t[r])return!0;return!1}function vt(e){this.props=e}(vt.prototype=new W).isPureReactComponent=!0,vt.prototype.shouldComponentUpdate=function(e,t){return ht(this.props,e)||ht(this.state,t)};var Vt=w.__b;w.__b=function(e){e.type&&e.type.__f&&e.ref&&(e.props.ref=e.ref,e.ref=null),Vt&&Vt(e)};var Ur=typeof Symbol<"u"&&Symbol.for&&Symbol.for("react.forward_ref")||3911,Wt=function(e,t){return e==null?null:J(J(e).map(t))},Fr={map:Wt,forEach:Wt,count:function(e){return e?J(e).length:0},only:function(e){var t=J(e);if(t.length!==1)throw"Children.only";return t[0]},toArray:J},Br=w.__e;function Ue(){this.__u=0,this.t=null,this.__b=null}function er(e){var t=e.__.__c;return t&&t.__e&&t.__e(e)}function ge(){this.u=null,this.o=null}w.__e=function(e,t,n){if(e.then){for(var r,o=t;o=o.__;)if((r=o.__c)&&r.__c)return t.__e==null&&(t.__e=n.__e,t.__k=n.__k),r.__c(e,t)}Br(e,t,n)},(Ue.prototype=new W).__c=function(e,t){var n=t.__c,r=this;r.t==null&&(r.t=[]),r.t.push(n);var o=er(r.__v),a=!1,i=function(){a||(a=!0,n.componentWillUnmount=n.__c,o?o(u):u())};n.__c=n.componentWillUnmount,n.componentWillUnmount=function(){i(),n.__c&&n.__c()};var u=function(){if(!--r.__u){if(r.state.__e){var s=r.state.__e;r.__v.__k[0]=function d(m,p,_){return m&&(m.__v=null,m.__k=m.__k&&m.__k.map(function(h){return d(h,p,_)}),m.__c&&m.__c.__P===p&&(m.__e&&_.insertBefore(m.__e,m.__d),m.__c.__e=!0,m.__c.__P=_)),m}(s,s.__c.__P,s.__c.__O)}var c;for(r.setState({__e:r.__b=null});c=r.t.pop();)c.forceUpdate()}},l=t.__h===!0;r.__u++||l||r.setState({__e:r.__b=r.__v.__k[0]}),e.then(i,i)},Ue.prototype.componentWillUnmount=function(){this.t=[]},Ue.prototype.render=function(e,t){if(this.__b){if(this.__v.__k){var n=document.createElement("div"),r=this.__v.__k[0].__c;this.__v.__k[0]=function a(i,u,l){return i&&(i.__c&&i.__c.__H&&(i.__c.__H.__.forEach(function(s){typeof s.__c=="function"&&s.__c()}),i.__c.__H=null),(i=Xn({},i)).__c!=null&&(i.__c.__P===l&&(i.__c.__P=u),i.__c=null),i.__k=i.__k&&i.__k.map(function(s){return a(s,u,l)})),i}(this.__b,n,r.__O=r.__P)}this.__b=null}var o=t.__e&&V(Z,null,e.fallback);return o&&(o.__h=null),[V(Z,null,t.__e?null:e.children),o]};var Kt=function(e,t,n){if(++n[1]===n[0]&&e.o.delete(t),e.props.revealOrder&&(e.props.revealOrder[0]!=="t"||!e.o.size))for(n=e.u;n;){for(;n.length>3;)n.pop()();if(n[1]>>1,1),t.i.removeChild(r)}}),Pe(V(Vr,{context:t.context},e.__v),t.l)):t.l&&t.componentWillUnmount()}function tr(e,t){return V(Wr,{__v:e,i:t})}(ge.prototype=new W).__e=function(e){var t=this,n=er(t.__v),r=t.o.get(e);return r[0]++,function(o){var a=function(){t.props.revealOrder?(r.push(o),Kt(t,e,r)):o()};n?n(a):a()}},ge.prototype.render=function(e){this.u=null,this.o=new Map;var t=J(e.children);e.revealOrder&&e.revealOrder[0]==="b"&&t.reverse();for(var n=t.length;n--;)this.o.set(t[n],this.u=[1,0,this.u]);return e.children},ge.prototype.componentDidUpdate=ge.prototype.componentDidMount=function(){var e=this;this.o.forEach(function(t,n){Kt(e,n,t)})};var nr=typeof Symbol<"u"&&Symbol.for&&Symbol.for("react.element")||60103,Kr=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|fill|flood|font|glyph(?!R)|horiz|marker(?!H|W|U)|overline|paint|stop|strikethrough|stroke|text(?!L)|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,zr=function(e){return(typeof Symbol<"u"&&Ee(Symbol())=="symbol"?/fil|che|rad/i:/fil|che|ra/i).test(e)};function rr(e,t,n){return t.__k==null&&(t.textContent=""),Pe(e,t),typeof n=="function"&&n(),e?e.__c:null}W.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(e){Object.defineProperty(W.prototype,e,{configurable:!0,get:function(){return this["UNSAFE_"+e]},set:function(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,value:t})}})});var zt=w.event;function Jr(){}function $r(){return this.cancelBubble}function Qr(){return this.defaultPrevented}w.event=function(e){return zt&&(e=zt(e)),e.persist=Jr,e.isPropagationStopped=$r,e.isDefaultPrevented=Qr,e.nativeEvent=e};var or,Jt={configurable:!0,get:function(){return this.class}},$t=w.vnode;w.vnode=function(e){var t=e.type,n=e.props,r=n;if(typeof t=="string"){for(var o in r={},n){var a=n[o];o==="value"&&"defaultValue"in n&&a==null||(o==="defaultValue"&&"value"in n&&n.value==null?o="value":o==="download"&&a===!0?a="":/ondoubleclick/i.test(o)?o="ondblclick":/^onchange(textarea|input)/i.test(o+t)&&!zr(n.type)?o="oninput":/^on(Ani|Tra|Tou|BeforeInp)/.test(o)?o=o.toLowerCase():Kr.test(o)?o=o.replace(/[A-Z0-9]/,"-$&").toLowerCase():a===null&&(a=void 0),r[o]=a)}t=="select"&&r.multiple&&Array.isArray(r.value)&&(r.value=J(n.children).forEach(function(i){i.props.selected=r.value.indexOf(i.props.value)!=-1})),t=="select"&&r.defaultValue!=null&&(r.value=J(n.children).forEach(function(i){i.props.selected=r.multiple?r.defaultValue.indexOf(i.props.value)!=-1:r.defaultValue==i.props.value})),e.props=r}t&&n.class!=n.className&&(Jt.enumerable="className"in n,n.className!=null&&(r.class=n.className),Object.defineProperty(r,"className",Jt)),e.$$typeof=nr,$t&&$t(e)};var Qt=w.__r;w.__r=function(e){Qt&&Qt(e),or=e.__c};var Zr={ReactCurrentDispatcher:{current:{readContext:function(e){return or.__n[e.__c].props.value}}}};(typeof performance>"u"?"undefined":Ee(performance))=="object"&&typeof performance.now=="function"&&performance.now.bind(performance);function Zt(e){return!!e&&e.$$typeof===nr}var f={useState:Qn,useReducer:Zn,useEffect:Yn,useLayoutEffect:Ft,useRef:function(e){return ue=5,rt(function(){return{current:e}},[])},useImperativeHandle:function(e,t,n){ue=6,Ft(function(){typeof e=="function"?e(t()):e&&(e.current=t())},n==null?n:n.concat(e))},useMemo:rt,useCallback:function(e,t){return ue=8,rt(function(){return e},t)},useContext:function(e){var t=T.context[e.__c],n=ke(le++,9);return n.__c=e,t?(n.__==null&&(n.__=!0,t.sub(T)),t.props.value):e.__},useDebugValue:function(e,t){w.useDebugValue&&w.useDebugValue(t?t(e):e)},version:"16.8.0",Children:Fr,render:rr,hydrate:function(e,t,n){return $n(e,t),typeof n=="function"&&n(),e?e.__c:null},unmountComponentAtNode:function(e){return!!e.__k&&(Pe(null,e),!0)},createPortal:tr,createElement:V,createContext:function(e,t){var n={__c:t="__cC"+Hn++,__:e,Consumer:function(r,o){return r.children(o)},Provider:function(r){var o,a;return this.getChildContext||(o=[],(a={})[t]=this,this.getChildContext=function(){return a},this.shouldComponentUpdate=function(i){this.props.value!==i.value&&o.some(pt)},this.sub=function(i){o.push(i);var u=i.componentWillUnmount;i.componentWillUnmount=function(){o.splice(o.indexOf(i),1),u&&u.call(i)}}),r.children}};return n.Provider.__=n.Consumer.contextType=n},createFactory:function(e){return V.bind(null,e)},cloneElement:function(e){return Zt(e)?Mr.apply(null,arguments):e},createRef:function(){return{current:null}},Fragment:Z,isValidElement:Zt,findDOMNode:function(e){return e&&(e.base||e.nodeType===1&&e)||null},Component:W,PureComponent:vt,memo:function(e,t){function n(o){var a=this.props.ref,i=a==o.ref;return!i&&a&&(a.call?a(null):a.current=null),t?!t(this.props,o)||!i:ht(this.props,o)}function r(o){return this.shouldComponentUpdate=n,V(e,o)}return r.displayName="Memo("+(e.displayName||e.name)+")",r.prototype.isReactComponent=!0,r.__f=!0,r},forwardRef:function(e){function t(n,r){var o=Xn({},n);return delete o.ref,e(o,(r=n.ref||r)&&(Ee(r)!="object"||"current"in r)?r:null)}return t.$$typeof=Ur,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(e.displayName||e.name)+")",t},unstable_batchedUpdates:function(e,t){return e(t)},StrictMode:Z,Suspense:Ue,SuspenseList:ge,lazy:function(e){var t,n,r;function o(a){if(t||(t=e()).then(function(i){n=i.default||i},function(i){r=i}),r)throw r;if(!n)throw t;return V(n,a)}return o.displayName="Lazy",o.__f=!0,o},__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:Zr};function Yr(){return f.createElement("svg",{width:"15",height:"15",className:"DocSearch-Control-Key-Icon"},f.createElement("path",{d:"M4.505 4.496h2M5.505 5.496v5M8.216 4.496l.055 5.993M10 7.5c.333.333.5.667.5 1v2M12.326 4.5v5.996M8.384 4.496c1.674 0 2.116 0 2.116 1.5s-.442 1.5-2.116 1.5M3.205 9.303c-.09.448-.277 1.21-1.241 1.203C1 10.5.5 9.513.5 8V7c0-1.57.5-2.5 1.464-2.494.964.006 1.134.598 1.24 1.342M12.553 10.5h1.953",strokeWidth:"1.2",stroke:"currentColor",fill:"none",strokeLinecap:"square"}))}function ar(){return f.createElement("svg",{width:"20",height:"20",className:"DocSearch-Search-Icon",viewBox:"0 0 20 20"},f.createElement("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}var Gr=["translations"];function yt(){return yt=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(c[l]=i[l]);return c}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var to=f.forwardRef(function(e,t){var n=e.translations,r=n===void 0?{}:n,o=eo(e,Gr),a=r.buttonText,i=a===void 0?"Search":a,u=r.buttonAriaLabel,l=u===void 0?"Search":u,s=Xr(Qn(null),2),c=s[0],d=s[1];return Yn(function(){typeof navigator<"u"&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?d("⌘"):d("Ctrl"))},[]),f.createElement("button",yt({type:"button",className:"DocSearch DocSearch-Button","aria-label":l},o,{ref:t}),f.createElement("span",{className:"DocSearch-Button-Container"},f.createElement(ar,null),f.createElement("span",{className:"DocSearch-Button-Placeholder"},i)),f.createElement("span",{className:"DocSearch-Button-Keys"},c!==null&&f.createElement(f.Fragment,null,f.createElement("kbd",{className:"DocSearch-Button-Key"},c==="Ctrl"?f.createElement(Yr,null):c),f.createElement("kbd",{className:"DocSearch-Button-Key"},"K"))))});function Ie(e){return e.reduce(function(t,n){return t.concat(n)},[])}var no=0;function _t(e){return e.collections.length===0?0:e.collections.reduce(function(t,n){return t+n.items.length},0)}var ir=function(){},ro=[{segment:"autocomplete-core",version:"1.7.4"}];function Fe(e,t){var n=t;return{then:function(r,o){return Fe(e.then(xe(r,n,e),xe(o,n,e)),n)},catch:function(r){return Fe(e.catch(xe(r,n,e)),n)},finally:function(r){return r&&n.onCancelList.push(r),Fe(e.finally(xe(r&&function(){return n.onCancelList=[],r()},n,e)),n)},cancel:function(){n.isCanceled=!0;var r=n.onCancelList;n.onCancelList=[],r.forEach(function(o){o()})},isCanceled:function(){return n.isCanceled===!0}}}function Gt(e){return Fe(e,{isCanceled:!1,onCancelList:[]})}function xe(e,t,n){return e?function(r){return t.isCanceled?r:e(r)}:n}function Xt(e,t,n,r){if(!n)return null;if(e<0&&(t===null||r!==null&&t===0))return n+e;var o=(t===null?-1:t)+e;return o<=-1||o>=n?r===null?null:0:o}function en(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function oo(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ao(e,t){var n=[];return Promise.resolve(e(t)).then(function(r){return Promise.all(r.filter(function(o){return!!o}).map(function(o){if(o.sourceId,n.includes(o.sourceId))throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(o.sourceId)," is not unique."));n.push(o.sourceId);var a=function(i){for(var u=1;ue.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(c[l]=i[l]);return c}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var sn,it,qe,ye=null,fn=(sn=-1,it=-1,qe=void 0,function(e){var t=++sn;return Promise.resolve(e).then(function(n){return qe&&t=0||(c[l]=i[l]);return c}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var jo=["props","refresh","store"],Po=["inputElement","formElement","panelElement"],Io=["inputElement"],ko=["inputElement","maxLength"],Do=["item","source"];function mn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function x(e){for(var t=1;t=0||(c[l]=i[l]);return c}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function Ao(e){var t=e.props,n=e.refresh,r=e.store,o=_e(e,jo);return{getEnvironmentProps:function(a){var i=a.inputElement,u=a.formElement,l=a.panelElement;function s(c){!r.getState().isOpen&&r.pendingRequests.isEmpty()||c.target===i||[u,l].some(function(d){return m=d,p=c.target,m===p||m.contains(p);var m,p})===!1&&(r.dispatch("blur",null),t.debug||r.pendingRequests.cancelAll())}return x({onTouchStart:s,onMouseDown:s,onTouchMove:function(c){r.getState().isOpen!==!1&&i===t.environment.document.activeElement&&c.target!==i&&i.blur()}},_e(a,Po))},getRootProps:function(a){return x({role:"combobox","aria-expanded":r.getState().isOpen,"aria-haspopup":"listbox","aria-owns":r.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label")},a)},getFormProps:function(a){return a.inputElement,x({action:"",noValidate:!0,role:"search",onSubmit:function(i){var u;i.preventDefault(),t.onSubmit(x({event:i,refresh:n,state:r.getState()},o)),r.dispatch("submit",null),(u=a.inputElement)===null||u===void 0||u.blur()},onReset:function(i){var u;i.preventDefault(),t.onReset(x({event:i,refresh:n,state:r.getState()},o)),r.dispatch("reset",null),(u=a.inputElement)===null||u===void 0||u.focus()}},_e(a,Io))},getLabelProps:function(a){return x({htmlFor:"".concat(t.id,"-input"),id:"".concat(t.id,"-label")},a)},getInputProps:function(a){var i;function u(h){(t.openOnFocus||r.getState().query)&&ae(x({event:h,props:t,query:r.getState().completion||r.getState().query,refresh:n,store:r},o)),r.dispatch("focus",null)}var l=a||{},s=(l.inputElement,l.maxLength),c=s===void 0?512:s,d=_e(l,ko),m=ie(r.getState()),p=function(h){return!!(h&&h.match(io))}(((i=t.environment.navigator)===null||i===void 0?void 0:i.userAgent)||""),_=m!=null&&m.itemUrl&&!p?"go":"search";return x({"aria-autocomplete":"both","aria-activedescendant":r.getState().isOpen&&r.getState().activeItemId!==null?"".concat(t.id,"-item-").concat(r.getState().activeItemId):void 0,"aria-controls":r.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label"),value:r.getState().completion||r.getState().query,id:"".concat(t.id,"-input"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",enterKeyHint:_,spellCheck:"false",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:c,type:"search",onChange:function(h){ae(x({event:h,props:t,query:h.currentTarget.value.slice(0,c),refresh:n,store:r},o))},onKeyDown:function(h){(function(g){var v=g.event,S=g.props,O=g.refresh,y=g.store,b=Eo(g,So);if(v.key==="ArrowUp"||v.key==="ArrowDown"){var I=function(){var q=S.environment.document.getElementById("".concat(S.id,"-item-").concat(y.getState().activeItemId));q&&(q.scrollIntoViewIfNeeded?q.scrollIntoViewIfNeeded(!1):q.scrollIntoView(!1))},N=function(){var q=ie(y.getState());if(y.getState().activeItemId!==null&&q){var De=q.item,Y=q.itemInputValue,Xe=q.itemUrl,se=q.source;se.onActive(X({event:v,item:De,itemInputValue:Y,itemUrl:Xe,refresh:O,source:se,state:y.getState()},b))}};v.preventDefault(),y.getState().isOpen===!1&&(S.openOnFocus||y.getState().query)?ae(X({event:v,props:S,query:y.getState().query,refresh:O,store:y},b)).then(function(){y.dispatch(v.key,{nextActiveItemId:S.defaultActiveItemId}),N(),setTimeout(I,0)}):(y.dispatch(v.key,{}),N(),I())}else if(v.key==="Escape")v.preventDefault(),y.dispatch(v.key,null),y.pendingRequests.cancelAll();else if(v.key==="Tab")y.dispatch("blur",null),y.pendingRequests.cancelAll();else if(v.key==="Enter"){if(y.getState().activeItemId===null||y.getState().collections.every(function(q){return q.items.length===0}))return void(S.debug||y.pendingRequests.cancelAll());v.preventDefault();var A=ie(y.getState()),k=A.item,R=A.itemInputValue,L=A.itemUrl,B=A.source;if(v.metaKey||v.ctrlKey)L!==void 0&&(B.onSelect(X({event:v,item:k,itemInputValue:R,itemUrl:L,refresh:O,source:B,state:y.getState()},b)),S.navigator.navigateNewTab({itemUrl:L,item:k,state:y.getState()}));else if(v.shiftKey)L!==void 0&&(B.onSelect(X({event:v,item:k,itemInputValue:R,itemUrl:L,refresh:O,source:B,state:y.getState()},b)),S.navigator.navigateNewWindow({itemUrl:L,item:k,state:y.getState()}));else if(!v.altKey){if(L!==void 0)return B.onSelect(X({event:v,item:k,itemInputValue:R,itemUrl:L,refresh:O,source:B,state:y.getState()},b)),void S.navigator.navigate({itemUrl:L,item:k,state:y.getState()});ae(X({event:v,nextState:{isOpen:!1},props:S,query:R,refresh:O,store:y},b)).then(function(){B.onSelect(X({event:v,item:k,itemInputValue:R,itemUrl:L,refresh:O,source:B,state:y.getState()},b))})}}})(x({event:h,props:t,refresh:n,store:r},o))},onFocus:u,onBlur:ir,onClick:function(h){a.inputElement!==t.environment.document.activeElement||r.getState().isOpen||u(h)}},d)},getPanelProps:function(a){return x({onMouseDown:function(i){i.preventDefault()},onMouseLeave:function(){r.dispatch("mouseleave",null)}},a)},getListProps:function(a){return x({role:"listbox","aria-labelledby":"".concat(t.id,"-label"),id:"".concat(t.id,"-list")},a)},getItemProps:function(a){var i=a.item,u=a.source,l=_e(a,Do);return x({id:"".concat(t.id,"-item-").concat(i.__autocomplete_id),role:"option","aria-selected":r.getState().activeItemId===i.__autocomplete_id,onMouseMove:function(s){if(i.__autocomplete_id!==r.getState().activeItemId){r.dispatch("mousemove",i.__autocomplete_id);var c=ie(r.getState());if(r.getState().activeItemId!==null&&c){var d=c.item,m=c.itemInputValue,p=c.itemUrl,_=c.source;_.onActive(x({event:s,item:d,itemInputValue:m,itemUrl:p,refresh:n,source:_,state:r.getState()},o))}}},onMouseDown:function(s){s.preventDefault()},onClick:function(s){var c=u.getItemInputValue({item:i,state:r.getState()}),d=u.getItemUrl({item:i,state:r.getState()});(d?Promise.resolve():ae(x({event:s,nextState:{isOpen:!1},props:t,query:c,refresh:n,store:r},o))).then(function(){u.onSelect(x({event:s,item:i,itemInputValue:c,itemUrl:d,refresh:n,source:u,state:r.getState()},o))})}},l)}}}function dn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function xo(e){for(var t=1;t0},reshape:function(m){return m.sources}},u),{},{id:(s=u.id)!==null&&s!==void 0?s:"autocomplete-".concat(no++),plugins:d,initialState:re({activeItemId:null,query:"",completion:null,collections:[],isOpen:!1,status:"idle",context:{}},u.initialState),onStateChange:function(m){var p;(p=u.onStateChange)===null||p===void 0||p.call(u,m),d.forEach(function(_){var h;return(h=_.onStateChange)===null||h===void 0?void 0:h.call(_,m)})},onSubmit:function(m){var p;(p=u.onSubmit)===null||p===void 0||p.call(u,m),d.forEach(function(_){var h;return(h=_.onSubmit)===null||h===void 0?void 0:h.call(_,m)})},onReset:function(m){var p;(p=u.onReset)===null||p===void 0||p.call(u,m),d.forEach(function(_){var h;return(h=_.onReset)===null||h===void 0?void 0:h.call(_,m)})},getSources:function(m){return Promise.all([].concat(fo(d.map(function(p){return p.getSources})),[u.getSources]).filter(Boolean).map(function(p){return ao(p,m)})).then(function(p){return Ie(p)}).then(function(p){return p.map(function(_){return re(re({},_),{},{onSelect:function(h){_.onSelect(h),l.forEach(function(g){var v;return(v=g.onSelect)===null||v===void 0?void 0:v.call(g,h)})},onActive:function(h){_.onActive(h),l.forEach(function(g){var v;return(v=g.onActive)===null||v===void 0?void 0:v.call(g,h)})}})})})},navigator:re({navigate:function(m){var p=m.itemUrl;c.location.assign(p)},navigateNewTab:function(m){var p=m.itemUrl,_=c.open(p,"_blank","noopener");_==null||_.focus()},navigateNewWindow:function(m){var p=m.itemUrl;c.open(p,"_blank","noopener")}},u.navigator)})}(e,t),r=lo(To,n,function(u){var l=u.prevState,s=u.state;n.onStateChange(ee({prevState:l,state:s,refresh:i},o))}),o=function(u){var l=u.store;return{setActiveItemId:function(s){l.dispatch("setActiveItemId",s)},setQuery:function(s){l.dispatch("setQuery",s)},setCollections:function(s){var c=0,d=s.map(function(m){return Re(Re({},m),{},{items:Ie(m.items).map(function(p){return Re(Re({},p),{},{__autocomplete_id:c++})})})});l.dispatch("setCollections",d)},setIsOpen:function(s){l.dispatch("setIsOpen",s)},setStatus:function(s){l.dispatch("setStatus",s)},setContext:function(s){l.dispatch("setContext",s)}}}({store:r}),a=Ao(ee({props:n,refresh:i,store:r},o));function i(){return ae(ee({event:new Event("input"),nextState:{isOpen:r.getState().isOpen},props:n,query:r.getState().query,refresh:i,store:r},o))}return n.plugins.forEach(function(u){var l;return(l=u.subscribe)===null||l===void 0?void 0:l.call(u,ee(ee({},o),{},{refresh:i,onSelect:function(s){t.push({onSelect:s})},onActive:function(s){t.push({onActive:s})}}))}),function(u){var l,s,c=u.metadata,d=u.environment;if(!((l=d.navigator)===null||l===void 0||(s=l.userAgent)===null||s===void 0)&&s.includes("Algolia Crawler")){var m=d.document.createElement("meta"),p=d.document.querySelector("head");m.name="algolia:metadata",setTimeout(function(){m.content=JSON.stringify(c),p.appendChild(m)},0)}}({metadata:No({plugins:n.plugins,options:e}),environment:n.environment}),ee(ee({refresh:i},a),o)}function Mo(e){var t=e.translations,n=(t===void 0?{}:t).searchByText,r=n===void 0?"Search by":n;return f.createElement("a",{href:"https://www.algolia.com/ref/docsearch/?utm_source=".concat(window.location.hostname,"&utm_medium=referral&utm_content=powered_by&utm_campaign=docsearch"),target:"_blank",rel:"noopener noreferrer"},f.createElement("span",{className:"DocSearch-Label"},r),f.createElement("svg",{width:"77",height:"19","aria-label":"Algolia",role:"img",id:"Layer_1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 2196.2 500"},f.createElement("defs",null,f.createElement("style",null,".cls-1,.cls-2{fill:#003dff;}.cls-2{fill-rule:evenodd;}")),f.createElement("path",{className:"cls-2",d:"M1070.38,275.3V5.91c0-3.63-3.24-6.39-6.82-5.83l-50.46,7.94c-2.87,.45-4.99,2.93-4.99,5.84l.17,273.22c0,12.92,0,92.7,95.97,95.49,3.33,.1,6.09-2.58,6.09-5.91v-40.78c0-2.96-2.19-5.51-5.12-5.84-34.85-4.01-34.85-47.57-34.85-54.72Z"}),f.createElement("rect",{className:"cls-1",x:"1845.88",y:"104.73",width:"62.58",height:"277.9",rx:"5.9",ry:"5.9"}),f.createElement("path",{className:"cls-2",d:"M1851.78,71.38h50.77c3.26,0,5.9-2.64,5.9-5.9V5.9c0-3.62-3.24-6.39-6.82-5.83l-50.77,7.95c-2.87,.45-4.99,2.92-4.99,5.83v51.62c0,3.26,2.64,5.9,5.9,5.9Z"}),f.createElement("path",{className:"cls-2",d:"M1764.03,275.3V5.91c0-3.63-3.24-6.39-6.82-5.83l-50.46,7.94c-2.87,.45-4.99,2.93-4.99,5.84l.17,273.22c0,12.92,0,92.7,95.97,95.49,3.33,.1,6.09-2.58,6.09-5.91v-40.78c0-2.96-2.19-5.51-5.12-5.84-34.85-4.01-34.85-47.57-34.85-54.72Z"}),f.createElement("path",{className:"cls-2",d:"M1631.95,142.72c-11.14-12.25-24.83-21.65-40.78-28.31-15.92-6.53-33.26-9.85-52.07-9.85-18.78,0-36.15,3.17-51.92,9.85-15.59,6.66-29.29,16.05-40.76,28.31-11.47,12.23-20.38,26.87-26.76,44.03-6.38,17.17-9.24,37.37-9.24,58.36,0,20.99,3.19,36.87,9.55,54.21,6.38,17.32,15.14,32.11,26.45,44.36,11.29,12.23,24.83,21.62,40.6,28.46,15.77,6.83,40.12,10.33,52.4,10.48,12.25,0,36.78-3.82,52.7-10.48,15.92-6.68,29.46-16.23,40.78-28.46,11.29-12.25,20.05-27.04,26.25-44.36,6.22-17.34,9.24-33.22,9.24-54.21,0-20.99-3.34-41.19-10.03-58.36-6.38-17.17-15.14-31.8-26.43-44.03Zm-44.43,163.75c-11.47,15.75-27.56,23.7-48.09,23.7-20.55,0-36.63-7.8-48.1-23.7-11.47-15.75-17.21-34.01-17.21-61.2,0-26.89,5.59-49.14,17.06-64.87,11.45-15.75,27.54-23.52,48.07-23.52,20.55,0,36.63,7.78,48.09,23.52,11.47,15.57,17.36,37.98,17.36,64.87,0,27.19-5.72,45.3-17.19,61.2Z"}),f.createElement("path",{className:"cls-2",d:"M894.42,104.73h-49.33c-48.36,0-90.91,25.48-115.75,64.1-14.52,22.58-22.99,49.63-22.99,78.73,0,44.89,20.13,84.92,51.59,111.1,2.93,2.6,6.05,4.98,9.31,7.14,12.86,8.49,28.11,13.47,44.52,13.47,1.23,0,2.46-.03,3.68-.09,.36-.02,.71-.05,1.07-.07,.87-.05,1.75-.11,2.62-.2,.34-.03,.68-.08,1.02-.12,.91-.1,1.82-.21,2.73-.34,.21-.03,.42-.07,.63-.1,32.89-5.07,61.56-30.82,70.9-62.81v57.83c0,3.26,2.64,5.9,5.9,5.9h50.42c3.26,0,5.9-2.64,5.9-5.9V110.63c0-3.26-2.64-5.9-5.9-5.9h-56.32Zm0,206.92c-12.2,10.16-27.97,13.98-44.84,15.12-.16,.01-.33,.03-.49,.04-1.12,.07-2.24,.1-3.36,.1-42.24,0-77.12-35.89-77.12-79.37,0-10.25,1.96-20.01,5.42-28.98,11.22-29.12,38.77-49.74,71.06-49.74h49.33v142.83Z"}),f.createElement("path",{className:"cls-2",d:"M2133.97,104.73h-49.33c-48.36,0-90.91,25.48-115.75,64.1-14.52,22.58-22.99,49.63-22.99,78.73,0,44.89,20.13,84.92,51.59,111.1,2.93,2.6,6.05,4.98,9.31,7.14,12.86,8.49,28.11,13.47,44.52,13.47,1.23,0,2.46-.03,3.68-.09,.36-.02,.71-.05,1.07-.07,.87-.05,1.75-.11,2.62-.2,.34-.03,.68-.08,1.02-.12,.91-.1,1.82-.21,2.73-.34,.21-.03,.42-.07,.63-.1,32.89-5.07,61.56-30.82,70.9-62.81v57.83c0,3.26,2.64,5.9,5.9,5.9h50.42c3.26,0,5.9-2.64,5.9-5.9V110.63c0-3.26-2.64-5.9-5.9-5.9h-56.32Zm0,206.92c-12.2,10.16-27.97,13.98-44.84,15.12-.16,.01-.33,.03-.49,.04-1.12,.07-2.24,.1-3.36,.1-42.24,0-77.12-35.89-77.12-79.37,0-10.25,1.96-20.01,5.42-28.98,11.22-29.12,38.77-49.74,71.06-49.74h49.33v142.83Z"}),f.createElement("path",{className:"cls-2",d:"M1314.05,104.73h-49.33c-48.36,0-90.91,25.48-115.75,64.1-11.79,18.34-19.6,39.64-22.11,62.59-.58,5.3-.88,10.68-.88,16.14s.31,11.15,.93,16.59c4.28,38.09,23.14,71.61,50.66,94.52,2.93,2.6,6.05,4.98,9.31,7.14,12.86,8.49,28.11,13.47,44.52,13.47h0c17.99,0,34.61-5.93,48.16-15.97,16.29-11.58,28.88-28.54,34.48-47.75v50.26h-.11v11.08c0,21.84-5.71,38.27-17.34,49.36-11.61,11.08-31.04,16.63-58.25,16.63-11.12,0-28.79-.59-46.6-2.41-2.83-.29-5.46,1.5-6.27,4.22l-12.78,43.11c-1.02,3.46,1.27,7.02,4.83,7.53,21.52,3.08,42.52,4.68,54.65,4.68,48.91,0,85.16-10.75,108.89-32.21,21.48-19.41,33.15-48.89,35.2-88.52V110.63c0-3.26-2.64-5.9-5.9-5.9h-56.32Zm0,64.1s.65,139.13,0,143.36c-12.08,9.77-27.11,13.59-43.49,14.7-.16,.01-.33,.03-.49,.04-1.12,.07-2.24,.1-3.36,.1-1.32,0-2.63-.03-3.94-.1-40.41-2.11-74.52-37.26-74.52-79.38,0-10.25,1.96-20.01,5.42-28.98,11.22-29.12,38.77-49.74,71.06-49.74h49.33Z"}),f.createElement("path",{className:"cls-1",d:"M249.83,0C113.3,0,2,110.09,.03,246.16c-2,138.19,110.12,252.7,248.33,253.5,42.68,.25,83.79-10.19,120.3-30.03,3.56-1.93,4.11-6.83,1.08-9.51l-23.38-20.72c-4.75-4.21-11.51-5.4-17.36-2.92-25.48,10.84-53.17,16.38-81.71,16.03-111.68-1.37-201.91-94.29-200.13-205.96,1.76-110.26,92-199.41,202.67-199.41h202.69V407.41l-115-102.18c-3.72-3.31-9.42-2.66-12.42,1.31-18.46,24.44-48.53,39.64-81.93,37.34-46.33-3.2-83.87-40.5-87.34-86.81-4.15-55.24,39.63-101.52,94-101.52,49.18,0,89.68,37.85,93.91,85.95,.38,4.28,2.31,8.27,5.52,11.12l29.95,26.55c3.4,3.01,8.79,1.17,9.63-3.3,2.16-11.55,2.92-23.58,2.07-35.92-4.82-70.34-61.8-126.93-132.17-131.26-80.68-4.97-148.13,58.14-150.27,137.25-2.09,77.1,61.08,143.56,138.19,145.26,32.19,.71,62.03-9.41,86.14-26.95l150.26,133.2c6.44,5.71,16.61,1.14,16.61-7.47V9.48C499.66,4.25,495.42,0,490.18,0H249.83Z"})))}function Me(e){return f.createElement("svg",{width:"15",height:"15","aria-label":e.ariaLabel,role:"img"},f.createElement("g",{fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"},e.children))}function Ho(e){var t=e.translations,n=t===void 0?{}:t,r=n.selectText,o=r===void 0?"to select":r,a=n.selectKeyAriaLabel,i=a===void 0?"Enter key":a,u=n.navigateText,l=u===void 0?"to navigate":u,s=n.navigateUpKeyAriaLabel,c=s===void 0?"Arrow up":s,d=n.navigateDownKeyAriaLabel,m=d===void 0?"Arrow down":d,p=n.closeText,_=p===void 0?"to close":p,h=n.closeKeyAriaLabel,g=h===void 0?"Escape key":h,v=n.searchByText,S=v===void 0?"Search by":v;return f.createElement(f.Fragment,null,f.createElement("div",{className:"DocSearch-Logo"},f.createElement(Mo,{translations:{searchByText:S}})),f.createElement("ul",{className:"DocSearch-Commands"},f.createElement("li",null,f.createElement("kbd",{className:"DocSearch-Commands-Key"},f.createElement(Me,{ariaLabel:i},f.createElement("path",{d:"M12 3.53088v3c0 1-1 2-2 2H4M7 11.53088l-3-3 3-3"}))),f.createElement("span",{className:"DocSearch-Label"},o)),f.createElement("li",null,f.createElement("kbd",{className:"DocSearch-Commands-Key"},f.createElement(Me,{ariaLabel:m},f.createElement("path",{d:"M7.5 3.5v8M10.5 8.5l-3 3-3-3"}))),f.createElement("kbd",{className:"DocSearch-Commands-Key"},f.createElement(Me,{ariaLabel:c},f.createElement("path",{d:"M7.5 11.5v-8M10.5 6.5l-3-3-3 3"}))),f.createElement("span",{className:"DocSearch-Label"},l)),f.createElement("li",null,f.createElement("kbd",{className:"DocSearch-Commands-Key"},f.createElement(Me,{ariaLabel:g},f.createElement("path",{d:"M13.6167 8.936c-.1065.3583-.6883.962-1.4875.962-.7993 0-1.653-.9165-1.653-2.1258v-.5678c0-1.2548.7896-2.1016 1.653-2.1016.8634 0 1.3601.4778 1.4875 1.0724M9 6c-.1352-.4735-.7506-.9219-1.46-.8972-.7092.0246-1.344.57-1.344 1.2166s.4198.8812 1.3445.9805C8.465 7.3992 8.968 7.9337 9 8.5c.032.5663-.454 1.398-1.4595 1.398C6.6593 9.898 6 9 5.963 8.4851m-1.4748.5368c-.2635.5941-.8099.876-1.5443.876s-1.7073-.6248-1.7073-2.204v-.4603c0-1.0416.721-2.131 1.7073-2.131.9864 0 1.6425 1.031 1.5443 2.2492h-2.956"}))),f.createElement("span",{className:"DocSearch-Label"},_))))}function Uo(e){var t=e.hit,n=e.children;return f.createElement("a",{href:t.url},n)}function Fo(){return f.createElement("svg",{viewBox:"0 0 38 38",stroke:"currentColor",strokeOpacity:".5"},f.createElement("g",{fill:"none",fillRule:"evenodd"},f.createElement("g",{transform:"translate(1 1)",strokeWidth:"2"},f.createElement("circle",{strokeOpacity:".3",cx:"18",cy:"18",r:"18"}),f.createElement("path",{d:"M36 18c0-9.94-8.06-18-18-18"},f.createElement("animateTransform",{attributeName:"transform",type:"rotate",from:"0 18 18",to:"360 18 18",dur:"1s",repeatCount:"indefinite"})))))}function Bo(){return f.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},f.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},f.createElement("path",{d:"M3.18 6.6a8.23 8.23 0 1112.93 9.94h0a8.23 8.23 0 01-11.63 0"}),f.createElement("path",{d:"M6.44 7.25H2.55V3.36M10.45 6v5.6M10.45 11.6L13 13"})))}function gt(){return f.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},f.createElement("path",{d:"M10 10l5.09-5.09L10 10l5.09 5.09L10 10zm0 0L4.91 4.91 10 10l-5.09 5.09L10 10z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}function Vo(){return f.createElement("svg",{className:"DocSearch-Hit-Select-Icon",width:"20",height:"20",viewBox:"0 0 20 20"},f.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},f.createElement("path",{d:"M18 3v4c0 2-2 4-4 4H2"}),f.createElement("path",{d:"M8 17l-6-6 6-6"})))}var Wo=function(){return f.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},f.createElement("path",{d:"M17 6v12c0 .52-.2 1-1 1H4c-.7 0-1-.33-1-1V2c0-.55.42-1 1-1h8l5 5zM14 8h-3.13c-.51 0-.87-.34-.87-.87V4",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinejoin:"round"}))};function Ko(e){switch(e.type){case"lvl1":return f.createElement(Wo,null);case"content":return f.createElement(Jo,null);default:return f.createElement(zo,null)}}function zo(){return f.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},f.createElement("path",{d:"M13 13h4-4V8H7v5h6v4-4H7V8H3h4V3v5h6V3v5h4-4v5zm-6 0v4-4H3h4z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}function Jo(){return f.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},f.createElement("path",{d:"M17 5H3h14zm0 5H3h14zm0 5H3h14z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinejoin:"round"}))}function _n(){return f.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},f.createElement("path",{d:"M10 14.2L5 17l1-5.6-4-4 5.5-.7 2.5-5 2.5 5 5.6.8-4 4 .9 5.5z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinejoin:"round"}))}function $o(){return f.createElement("svg",{width:"40",height:"40",viewBox:"0 0 20 20",fill:"none",fillRule:"evenodd",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},f.createElement("path",{d:"M19 4.8a16 16 0 00-2-1.2m-3.3-1.2A16 16 0 001.1 4.7M16.7 8a12 12 0 00-2.8-1.4M10 6a12 12 0 00-6.7 2M12.3 14.7a4 4 0 00-4.5 0M14.5 11.4A8 8 0 0010 10M3 16L18 2M10 18h0"}))}function Qo(){return f.createElement("svg",{width:"40",height:"40",viewBox:"0 0 20 20",fill:"none",fillRule:"evenodd",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},f.createElement("path",{d:"M15.5 4.8c2 3 1.7 7-1 9.7h0l4.3 4.3-4.3-4.3a7.8 7.8 0 01-9.8 1m-2.2-2.2A7.8 7.8 0 0113.2 2.4M2 18L18 2"}))}function Zo(e){var t=e.translations,n=t===void 0?{}:t,r=n.titleText,o=r===void 0?"Unable to fetch results":r,a=n.helpText,i=a===void 0?"You might want to check your network connection.":a;return f.createElement("div",{className:"DocSearch-ErrorScreen"},f.createElement("div",{className:"DocSearch-Screen-Icon"},f.createElement($o,null)),f.createElement("p",{className:"DocSearch-Title"},o),f.createElement("p",{className:"DocSearch-Help"},i))}var Yo=["translations"];function Go(e){return function(t){if(Array.isArray(t))return ct(t)}(e)||function(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}(e)||function(t,n){if(t){if(typeof t=="string")return ct(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor&&(r=t.constructor.name),r==="Map"||r==="Set")return Array.from(t);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return ct(t,n)}}(e)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function ct(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(c[l]=i[l]);return c}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function ea(e){var t=e.translations,n=t===void 0?{}:t,r=Xo(e,Yo),o=n.noResultsText,a=o===void 0?"No results for":o,i=n.suggestedQueryText,u=i===void 0?"Try searching for":i,l=n.reportMissingResultsText,s=l===void 0?"Believe this query should return results?":l,c=n.reportMissingResultsLinkText,d=c===void 0?"Let us know.":c,m=r.state.context.searchSuggestions;return f.createElement("div",{className:"DocSearch-NoResults"},f.createElement("div",{className:"DocSearch-Screen-Icon"},f.createElement(Qo,null)),f.createElement("p",{className:"DocSearch-Title"},a,' "',f.createElement("strong",null,r.state.query),'"'),m&&m.length>0&&f.createElement("div",{className:"DocSearch-NoResults-Prefill-List"},f.createElement("p",{className:"DocSearch-Help"},u,":"),f.createElement("ul",null,m.slice(0,3).reduce(function(p,_){return[].concat(Go(p),[f.createElement("li",{key:_},f.createElement("button",{className:"DocSearch-Prefill",key:_,type:"button",onClick:function(){r.setQuery(_.toLowerCase()+" "),r.refresh(),r.inputRef.current.focus()}},_))])},[]))),r.getMissingResultsUrl&&f.createElement("p",{className:"DocSearch-Help"},"".concat(s," "),f.createElement("a",{href:r.getMissingResultsUrl({query:r.state.query}),target:"_blank",rel:"noopener noreferrer"},d)))}var ta=["hit","attribute","tagName"];function gn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function bn(e){for(var t=1;t=0||(c[l]=i[l]);return c}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function On(e,t){return t.split(".").reduce(function(n,r){return n!=null&&n[r]?n[r]:null},e)}function oe(e){var t=e.hit,n=e.attribute,r=e.tagName;return V(r===void 0?"span":r,bn(bn({},ra(e,ta)),{},{dangerouslySetInnerHTML:{__html:On(t,"_snippetResult.".concat(n,".value"))||On(t,n)}}))}function Sn(e,t){return function(n){if(Array.isArray(n))return n}(e)||function(n,r){var o=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(o!=null){var a,i,u=[],l=!0,s=!1;try{for(o=o.call(n);!(l=(a=o.next()).done)&&(u.push(a.value),!r||u.length!==r);l=!0);}catch(c){s=!0,i=c}finally{try{l||o.return==null||o.return()}finally{if(s)throw i}}return u}}(e,t)||function(n,r){if(n){if(typeof n=="string")return wn(n,r);var o=Object.prototype.toString.call(n).slice(8,-1);if(o==="Object"&&n.constructor&&(o=n.constructor.name),o==="Map"||o==="Set")return Array.from(n);if(o==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return wn(n,r)}}(e,t)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function wn(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n|<\/mark>)/g,ia=RegExp(lr.source);function sr(e){var t,n,r,o,a,i=e;if(!i.__docsearch_parent&&!e._highlightResult)return e.hierarchy.lvl0;var u=((i.__docsearch_parent?(t=i.__docsearch_parent)===null||t===void 0||(n=t._highlightResult)===null||n===void 0||(r=n.hierarchy)===null||r===void 0?void 0:r.lvl0:(o=e._highlightResult)===null||o===void 0||(a=o.hierarchy)===null||a===void 0?void 0:a.lvl0)||{}).value;return u&&ia.test(u)?u.replace(lr,""):u}function Ot(){return Ot=Object.assign||function(e){for(var t=1;t=0||(c[l]=i[l]);return c}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function sa(e){var t=e.translations,n=t===void 0?{}:t,r=la(e,ua),o=n.recentSearchesTitle,a=o===void 0?"Recent":o,i=n.noRecentSearchesText,u=i===void 0?"No recent searches":i,l=n.saveRecentSearchButtonTitle,s=l===void 0?"Save this search":l,c=n.removeRecentSearchButtonTitle,d=c===void 0?"Remove this search from history":c,m=n.favoriteSearchesTitle,p=m===void 0?"Favorite":m,_=n.removeFavoriteSearchButtonTitle,h=_===void 0?"Remove this search from favorites":_;return r.state.status==="idle"&&r.hasCollections===!1?r.disableUserPersonalization?null:f.createElement("div",{className:"DocSearch-StartScreen"},f.createElement("p",{className:"DocSearch-Help"},u)):r.hasCollections===!1?null:f.createElement("div",{className:"DocSearch-Dropdown-Container"},f.createElement(bt,$e({},r,{title:a,collection:r.state.collections[0],renderIcon:function(){return f.createElement("div",{className:"DocSearch-Hit-icon"},f.createElement(Bo,null))},renderAction:function(g){var v=g.item,S=g.runFavoriteTransition,O=g.runDeleteTransition;return f.createElement(f.Fragment,null,f.createElement("div",{className:"DocSearch-Hit-action"},f.createElement("button",{className:"DocSearch-Hit-action-button",title:s,type:"submit",onClick:function(y){y.preventDefault(),y.stopPropagation(),S(function(){r.favoriteSearches.add(v),r.recentSearches.remove(v),r.refresh()})}},f.createElement(_n,null))),f.createElement("div",{className:"DocSearch-Hit-action"},f.createElement("button",{className:"DocSearch-Hit-action-button",title:d,type:"submit",onClick:function(y){y.preventDefault(),y.stopPropagation(),O(function(){r.recentSearches.remove(v),r.refresh()})}},f.createElement(gt,null))))}})),f.createElement(bt,$e({},r,{title:p,collection:r.state.collections[1],renderIcon:function(){return f.createElement("div",{className:"DocSearch-Hit-icon"},f.createElement(_n,null))},renderAction:function(g){var v=g.item,S=g.runDeleteTransition;return f.createElement("div",{className:"DocSearch-Hit-action"},f.createElement("button",{className:"DocSearch-Hit-action-button",title:h,type:"submit",onClick:function(O){O.preventDefault(),O.stopPropagation(),S(function(){r.favoriteSearches.remove(v),r.refresh()})}},f.createElement(gt,null)))}})))}var fa=["translations"];function Qe(){return Qe=Object.assign||function(e){for(var t=1;t=0||(c[l]=i[l]);return c}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var ma=f.memo(function(e){var t=e.translations,n=t===void 0?{}:t,r=pa(e,fa);if(r.state.status==="error")return f.createElement(Zo,{translations:n==null?void 0:n.errorScreen});var o=r.state.collections.some(function(a){return a.items.length>0});return r.state.query?o===!1?f.createElement(ea,Qe({},r,{translations:n==null?void 0:n.noResultsScreen})):f.createElement(ca,r):f.createElement(sa,Qe({},r,{hasCollections:o,translations:n==null?void 0:n.startScreen}))},function(e,t){return t.state.status==="loading"||t.state.status==="stalled"}),da=["translations"];function Ze(){return Ze=Object.assign||function(e){for(var t=1;t=0||(c[l]=i[l]);return c}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function va(e){var t=e.translations,n=t===void 0?{}:t,r=ha(e,da),o=n.resetButtonTitle,a=o===void 0?"Clear the query":o,i=n.resetButtonAriaLabel,u=i===void 0?"Clear the query":i,l=n.cancelButtonText,s=l===void 0?"Cancel":l,c=n.cancelButtonAriaLabel,d=c===void 0?"Cancel":c,m=r.getFormProps({inputElement:r.inputRef.current}).onReset;return f.useEffect(function(){r.autoFocus&&r.inputRef.current&&r.inputRef.current.focus()},[r.autoFocus,r.inputRef]),f.useEffect(function(){r.isFromSelection&&r.inputRef.current&&r.inputRef.current.select()},[r.isFromSelection,r.inputRef]),f.createElement(f.Fragment,null,f.createElement("form",{className:"DocSearch-Form",onSubmit:function(p){p.preventDefault()},onReset:m},f.createElement("label",Ze({className:"DocSearch-MagnifierLabel"},r.getLabelProps()),f.createElement(ar,null)),f.createElement("div",{className:"DocSearch-LoadingIndicator"},f.createElement(Fo,null)),f.createElement("input",Ze({className:"DocSearch-Input",ref:r.inputRef},r.getInputProps({inputElement:r.inputRef.current,autoFocus:r.autoFocus,maxLength:64}))),f.createElement("button",{type:"reset",title:a,className:"DocSearch-Reset","aria-label":u,hidden:!r.state.query},f.createElement(gt,null))),f.createElement("button",{className:"DocSearch-Cancel",type:"reset","aria-label":d,onClick:r.onClose},s))}var ya=["_highlightResult","_snippetResult"];function _a(e,t){if(e==null)return{};var n,r,o=function(i,u){if(i==null)return{};var l,s,c={},d=Object.keys(i);for(s=0;s=0||(c[l]=i[l]);return c}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function ga(e){return function(){var t="__TEST_KEY__";try{return localStorage.setItem(t,""),localStorage.removeItem(t),!0}catch{return!1}}()===!1?{setItem:function(){},getItem:function(){return[]}}:{setItem:function(t){return window.localStorage.setItem(e,JSON.stringify(t))},getItem:function(){var t=window.localStorage.getItem(e);return t?JSON.parse(t):[]}}}function Pn(e){var t=e.key,n=e.limit,r=n===void 0?5:n,o=ga(t),a=o.getItem().slice(0,r);return{add:function(i){var u=i,l=(u._highlightResult,u._snippetResult,_a(u,ya)),s=a.findIndex(function(c){return c.objectID===l.objectID});s>-1&&a.splice(s,1),a.unshift(l),a=a.slice(0,r),o.setItem(a)},remove:function(i){a=a.filter(function(u){return u.objectID!==i.objectID}),o.setItem(a)},getAll:function(){return a}}}var ba=["facetName","facetQuery"];function Oa(e){var t,n="algoliasearch-client-js-".concat(e.key),r=function(){return t===void 0&&(t=e.localStorage||window.localStorage),t},o=function(){return JSON.parse(r().getItem(n)||"{}")};return{get:function(a,i){var u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then(function(){var l=JSON.stringify(a),s=o()[l];return Promise.all([s||i(),s!==void 0])}).then(function(l){var s=Ve(l,2),c=s[0],d=s[1];return Promise.all([c,d||u.miss(c)])}).then(function(l){return Ve(l,1)[0]})},set:function(a,i){return Promise.resolve().then(function(){var u=o();return u[JSON.stringify(a)]=i,r().setItem(n,JSON.stringify(u)),i})},delete:function(a){return Promise.resolve().then(function(){var i=o();delete i[JSON.stringify(a)],r().setItem(n,JSON.stringify(i))})},clear:function(){return Promise.resolve().then(function(){r().removeItem(n)})}}}function be(e){var t=We(e.caches),n=t.shift();return n===void 0?{get:function(r,o){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}};return o().then(function(i){return Promise.all([i,a.miss(i)])}).then(function(i){return Ve(i,1)[0]})},set:function(r,o){return Promise.resolve(o)},delete:function(r){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(r,o){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}};return n.get(r,o,a).catch(function(){return be({caches:t}).get(r,o,a)})},set:function(r,o){return n.set(r,o).catch(function(){return be({caches:t}).set(r,o)})},delete:function(r){return n.delete(r).catch(function(){return be({caches:t}).delete(r)})},clear:function(){return n.clear().catch(function(){return be({caches:t}).clear()})}}}function ut(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{serializable:!0},t={};return{get:function(n,r){var o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}},a=JSON.stringify(n);if(a in t)return Promise.resolve(e.serializable?JSON.parse(t[a]):t[a]);var i=r(),u=o&&o.miss||function(){return Promise.resolve()};return i.then(function(l){return u(l)}).then(function(){return i})},set:function(n,r){return t[JSON.stringify(n)]=e.serializable?JSON.stringify(r):r,Promise.resolve(r)},delete:function(n){return delete t[JSON.stringify(n)],Promise.resolve()},clear:function(){return t={},Promise.resolve()}}}function Sa(e){for(var t=e.length-1;t>0;t--){var n=Math.floor(Math.random()*(t+1)),r=e[t];e[t]=e[n],e[n]=r}return e}function fr(e,t){return t&&Object.keys(t).forEach(function(n){e[n]=t[n](e)}),e}function Ye(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r0?r:void 0,timeout:n.timeout||t,headers:n.headers||{},queryParameters:n.queryParameters||{},cacheable:n.cacheable}}var ce={Read:1,Write:2,Any:3},pr=1,wa=2,mr=3;function dr(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:pr;return P(P({},e),{},{status:t,lastUpdate:Date.now()})}function hr(e){return typeof e=="string"?{protocol:"https",url:e,accept:ce.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||ce.Any}}var kn="GET",Ge="POST";function Ea(e,t){return Promise.all(t.map(function(n){return e.get(n,function(){return Promise.resolve(dr(n))})})).then(function(n){var r=n.filter(function(i){return function(u){return u.status===pr||Date.now()-u.lastUpdate>12e4}(i)}),o=n.filter(function(i){return function(u){return u.status===mr&&Date.now()-u.lastUpdate<=12e4}(i)}),a=[].concat(We(r),We(o));return{getTimeout:function(i,u){return(o.length===0&&i===0?1:o.length+3+i)*u},statelessHosts:a.length>0?a.map(function(i){return hr(i)}):t}})}function Dn(e,t,n,r){var o=[],a=function(m,p){if(!(m.method===kn||m.data===void 0&&p.data===void 0)){var _=Array.isArray(m.data)?m.data:P(P({},m.data),p.data);return JSON.stringify(_)}}(n,r),i=function(m,p){var _=P(P({},m.headers),p.headers),h={};return Object.keys(_).forEach(function(g){var v=_[g];h[g.toLowerCase()]=v}),h}(e,r),u=n.method,l=n.method!==kn?{}:P(P({},n.data),r.data),s=P(P(P({"x-algolia-agent":e.userAgent.value},e.queryParameters),l),r.queryParameters),c=0,d=function m(p,_){var h=p.pop();if(h===void 0)throw{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:Cn(o)};var g={data:a,headers:i,method:u,url:Pa(h,n.path,s),connectTimeout:_(c,e.timeouts.connect),responseTimeout:_(c,r.timeout)},v=function(O){var y={request:g,response:O,host:h,triesLeft:p.length};return o.push(y),y},S={onSucess:function(O){return function(y){try{return JSON.parse(y.content)}catch(b){throw function(I,N){return{name:"DeserializationError",message:I,response:N}}(b.message,y)}}(O)},onRetry:function(O){var y=v(O);return O.isTimedOut&&c++,Promise.all([e.logger.info("Retryable failure",yr(y)),e.hostsCache.set(h,dr(h,O.isTimedOut?mr:wa))]).then(function(){return m(p,_)})},onFail:function(O){throw v(O),function(y,b){var I=y.content,N=y.status,A=I;try{A=JSON.parse(I).message}catch{}return function(k,R,L){return{name:"ApiError",message:k,status:R,transporterStackTrace:L}}(A,N,b)}(O,Cn(o))}};return e.requester.send(g).then(function(O){return function(y,b){return function(I){var N=I.status;return I.isTimedOut||function(A){var k=A.isTimedOut,R=A.status;return!k&&~~R==0}(I)||~~(N/100)!=2&&~~(N/100)!=4}(y)?b.onRetry(y):~~(y.status/100)==2?b.onSucess(y):b.onFail(y)}(O,S)})};return Ea(e.hostsCache,t).then(function(m){return d(We(m.statelessHosts).reverse(),m.getTimeout)})}function ja(e){var t={value:"Algolia for JavaScript (".concat(e,")"),add:function(n){var r="; ".concat(n.segment).concat(n.version!==void 0?" (".concat(n.version,")"):"");return t.value.indexOf(r)===-1&&(t.value="".concat(t.value).concat(r)),t}};return t}function Pa(e,t,n){var r=vr(n),o="".concat(e.protocol,"://").concat(e.url,"/").concat(t.charAt(0)==="/"?t.substr(1):t);return r.length&&(o+="?".concat(r)),o}function vr(e){return Object.keys(e).map(function(t){return Ye("%s=%s",t,(n=e[t],Object.prototype.toString.call(n)==="[object Object]"||Object.prototype.toString.call(n)==="[object Array]"?JSON.stringify(e[t]):e[t]));var n}).join("&")}function Cn(e){return e.map(function(t){return yr(t)})}function yr(e){var t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return P(P({},e),{},{request:P(P({},e.request),{},{headers:P(P({},e.request.headers),t)})})}var Ia=function(e){var t=e.appId,n=function(a,i,u){var l={"x-algolia-api-key":u,"x-algolia-application-id":i};return{headers:function(){return a===Be.WithinHeaders?l:{}},queryParameters:function(){return a===Be.WithinQueryParameters?l:{}}}}(e.authMode!==void 0?e.authMode:Be.WithinHeaders,t,e.apiKey),r=function(a){var i=a.hostsCache,u=a.logger,l=a.requester,s=a.requestsCache,c=a.responsesCache,d=a.timeouts,m=a.userAgent,p=a.hosts,_=a.queryParameters,h={hostsCache:i,logger:u,requester:l,requestsCache:s,responsesCache:c,timeouts:d,userAgent:m,headers:a.headers,queryParameters:_,hosts:p.map(function(g){return hr(g)}),read:function(g,v){var S=In(v,h.timeouts.read),O=function(){return Dn(h,h.hosts.filter(function(b){return(b.accept&ce.Read)!=0}),g,S)};if((S.cacheable!==void 0?S.cacheable:g.cacheable)!==!0)return O();var y={request:g,mappedRequestOptions:S,transporter:{queryParameters:h.queryParameters,headers:h.headers}};return h.responsesCache.get(y,function(){return h.requestsCache.get(y,function(){return h.requestsCache.set(y,O()).then(function(b){return Promise.all([h.requestsCache.delete(y),b])},function(b){return Promise.all([h.requestsCache.delete(y),Promise.reject(b)])}).then(function(b){var I=Ve(b,2);return I[0],I[1]})})},{miss:function(b){return h.responsesCache.set(y,b)}})},write:function(g,v){return Dn(h,h.hosts.filter(function(S){return(S.accept&ce.Write)!=0}),g,In(v,h.timeouts.write))}};return h}(P(P({hosts:[{url:"".concat(t,"-dsn.algolia.net"),accept:ce.Read},{url:"".concat(t,".algolia.net"),accept:ce.Write}].concat(Sa([{url:"".concat(t,"-1.algolianet.com")},{url:"".concat(t,"-2.algolianet.com")},{url:"".concat(t,"-3.algolianet.com")}]))},e),{},{headers:P(P(P({},n.headers()),{"content-type":"application/x-www-form-urlencoded"}),e.headers),queryParameters:P(P({},n.queryParameters()),e.queryParameters)})),o={transporter:r,appId:t,addAlgoliaAgent:function(a,i){r.userAgent.add({segment:a,version:i})},clearCache:function(){return Promise.all([r.requestsCache.clear(),r.responsesCache.clear()]).then(function(){})}};return fr(o,e.methods)},_r=function(e){return function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r={transporter:e.transporter,appId:e.appId,indexName:t};return fr(r,n.methods)}},An=function(e){return function(t,n){var r=t.map(function(o){return P(P({},o),{},{params:vr(o.params||{})})});return e.transporter.read({method:Ge,path:"1/indexes/*/queries",data:{requests:r},cacheable:!0},n)}},xn=function(e){return function(t,n){return Promise.all(t.map(function(r){var o=r.params,a=o.facetName,i=o.facetQuery,u=Rr(o,ba);return _r(e)(r.indexName,{methods:{searchForFacetValues:gr}}).searchForFacetValues(a,i,P(P({},n),u))}))}},ka=function(e){return function(t,n,r){return e.transporter.read({method:Ge,path:Ye("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:n},cacheable:!0},r)}},Da=function(e){return function(t,n){return e.transporter.read({method:Ge,path:Ye("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},n)}},gr=function(e){return function(t,n,r){return e.transporter.read({method:Ge,path:Ye("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:n},cacheable:!0},r)}},Ca=1,Aa=2,xa=3;function br(e,t,n){var r,o={appId:e,apiKey:t,timeouts:{connect:1,read:2,write:30},requester:{send:function(a){return new Promise(function(i){var u=new XMLHttpRequest;u.open(a.method,a.url,!0),Object.keys(a.headers).forEach(function(d){return u.setRequestHeader(d,a.headers[d])});var l,s=function(d,m){return setTimeout(function(){u.abort(),i({status:0,content:m,isTimedOut:!0})},1e3*d)},c=s(a.connectTimeout,"Connection timeout");u.onreadystatechange=function(){u.readyState>u.OPENED&&l===void 0&&(clearTimeout(c),l=s(a.responseTimeout,"Socket timeout"))},u.onerror=function(){u.status===0&&(clearTimeout(c),clearTimeout(l),i({content:u.responseText||"Network request failed",status:u.status,isTimedOut:!1}))},u.onload=function(){clearTimeout(c),clearTimeout(l),i({content:u.responseText,status:u.status,isTimedOut:!1})},u.send(a.data)})}},logger:(r=xa,{debug:function(a,i){return Ca>=r&&console.debug(a,i),Promise.resolve()},info:function(a,i){return Aa>=r&&console.info(a,i),Promise.resolve()},error:function(a,i){return console.error(a,i),Promise.resolve()}}),responsesCache:ut(),requestsCache:ut({serializable:!1}),hostsCache:be({caches:[Oa({key:"".concat("4.8.5","-").concat(e)}),ut()]}),userAgent:ja("4.8.5").add({segment:"Browser",version:"lite"}),authMode:Be.WithinQueryParameters};return Ia(P(P(P({},o),n),{},{methods:{search:An,searchForFacetValues:xn,multipleQueries:An,multipleSearchForFacetValues:xn,initIndex:function(a){return function(i){return _r(a)(i,{methods:{search:Da,searchForFacetValues:gr,findAnswers:ka}})}}}}))}br.version="4.8.5";var Na=["footer","searchBox"];function we(){return we=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(c[l]=i[l]);return c}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function qa(e){var t=e.appId,n=e.apiKey,r=e.indexName,o=e.placeholder,a=o===void 0?"Search docs":o,i=e.searchParameters,u=e.onClose,l=u===void 0?aa:u,s=e.transformItems,c=s===void 0?jn:s,d=e.hitComponent,m=d===void 0?Uo:d,p=e.resultsFooterComponent,_=p===void 0?function(){return null}:p,h=e.navigator,g=e.initialScrollY,v=g===void 0?0:g,S=e.transformSearchClient,O=S===void 0?jn:S,y=e.disableUserPersonalization,b=y!==void 0&&y,I=e.initialQuery,N=I===void 0?"":I,A=e.translations,k=A===void 0?{}:A,R=e.getMissingResultsUrl,L=k.footer,B=k.searchBox,q=La(k,Na),De=Ta(f.useState({query:"",collections:[],completion:null,context:{},isOpen:!1,activeItemId:null,status:"idle"}),2),Y=De[0],Xe=De[1],se=f.useRef(null),et=f.useRef(null),Pt=f.useRef(null),Ce=f.useRef(null),fe=f.useRef(null),$=f.useRef(10),It=f.useRef(typeof window<"u"?window.getSelection().toString().slice(0,64):"").current,G=f.useRef(N||It).current,kt=function(j,D,M){return f.useMemo(function(){var H=br(j,D);return H.addAlgoliaAgent("docsearch","3.3.3"),/docsearch.js \(.*\)/.test(H.transporter.userAgent.value)===!1&&H.addAlgoliaAgent("docsearch-react","3.3.3"),M(H)},[j,D,M])}(t,n,O),te=f.useRef(Pn({key:"__DOCSEARCH_FAVORITE_SEARCHES__".concat(r),limit:10})).current,pe=f.useRef(Pn({key:"__DOCSEARCH_RECENT_SEARCHES__".concat(r),limit:te.getAll().length===0?7:4})).current,me=f.useCallback(function(j){if(!b){var D=j.type==="content"?j.__docsearch_parent:j;D&&te.getAll().findIndex(function(M){return M.objectID===D.objectID})===-1&&pe.add(D)}},[te,pe,b]),de=f.useMemo(function(){return qo({id:"docsearch",defaultActiveItemId:0,placeholder:a,openOnFocus:!0,initialState:{query:G,context:{searchSuggestions:[]}},navigator:h,onStateChange:function(j){Xe(j.state)},getSources:function(j){var D=j.query,M=j.state,H=j.setContext,Q=j.setStatus;return D?kt.search([{query:D,indexName:r,params:lt({attributesToRetrieve:["hierarchy.lvl0","hierarchy.lvl1","hierarchy.lvl2","hierarchy.lvl3","hierarchy.lvl4","hierarchy.lvl5","hierarchy.lvl6","content","type","url"],attributesToSnippet:["hierarchy.lvl1:".concat($.current),"hierarchy.lvl2:".concat($.current),"hierarchy.lvl3:".concat($.current),"hierarchy.lvl4:".concat($.current),"hierarchy.lvl5:".concat($.current),"hierarchy.lvl6:".concat($.current),"content:".concat($.current)],snippetEllipsisText:"…",highlightPreTag:"",highlightPostTag:"",hitsPerPage:20},i)}]).catch(function(C){throw C.name==="RetryError"&&Q("error"),C}).then(function(C){var U=C.results[0],F=U.hits,wr=U.nbHits,tt=En(F,function(nt){return sr(nt)});return M.context.searchSuggestions.length0&&(Dt(),fe.current&&fe.current.focus())},[G,Dt]),f.useEffect(function(){function j(){if(et.current){var D=.01*window.innerHeight;et.current.style.setProperty("--docsearch-vh","".concat(D,"px"))}}return j(),window.addEventListener("resize",j),function(){window.removeEventListener("resize",j)}},[]),f.createElement("div",we({ref:se},Sr({"aria-expanded":!0}),{className:["DocSearch","DocSearch-Container",Y.status==="stalled"&&"DocSearch-Container--Stalled",Y.status==="error"&&"DocSearch-Container--Errored"].filter(Boolean).join(" "),role:"button",tabIndex:0,onMouseDown:function(j){j.target===j.currentTarget&&l()}}),f.createElement("div",{className:"DocSearch-Modal",ref:et},f.createElement("header",{className:"DocSearch-SearchBar",ref:Pt},f.createElement(va,we({},de,{state:Y,autoFocus:G.length===0,inputRef:fe,isFromSelection:!!G&&G===It,translations:B,onClose:l}))),f.createElement("div",{className:"DocSearch-Dropdown",ref:Ce},f.createElement(ma,we({},de,{indexName:r,state:Y,hitComponent:m,resultsFooterComponent:_,disableUserPersonalization:b,recentSearches:pe,favoriteSearches:te,inputRef:fe,translations:q,getMissingResultsUrl:R,onItemClick:function(j){me(j),l()}}))),f.createElement("footer",{className:"DocSearch-Footer"},f.createElement(Ho,{translations:L}))))}function St(){return St=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n1&&arguments[1]!==void 0?arguments[1]:window;return typeof t=="string"?n.document.querySelector(t):t}(e.container,e.environment))}const Ua={id:"docsearch"},Va=jr({__name:"VPAlgoliaSearchBox",props:{algolia:null},setup(e){const t=e,n=Pr(),r=Ir(),{site:o,localeIndex:a,lang:i}=xr();kr(u),Dr(a,u);function u(){var p,_;const c={...t.algolia,...(p=t.algolia.locales)==null?void 0:p[a.value]},d=((_=c.searchParameters)==null?void 0:_.facetFilters)??[],m=[...(Array.isArray(d)?d:[d]).filter(h=>!h.startsWith("lang:")),`lang:${i.value}`];l({...c,searchParameters:{...c.searchParameters,facetFilters:m}})}function l(c){const d=Object.assign({},c,{container:"#docsearch",navigator:{navigate({itemUrl:m}){const{pathname:p}=new URL(window.location.origin+m);r.path===p?window.location.assign(window.location.origin+m):n.go(m)}},transformItems(m){return m.map(p=>Object.assign({},p,{url:s(p.url)}))},hitComponent({hit:m,children:p}){return{__v:null,type:"a",ref:void 0,constructor:void 0,key:void 0,props:{href:m.url,children:p}}}});Ha(d)}function s(c){const{pathname:d,hash:m}=new URL(c);return d.replace(/\.html$/,o.value.cleanUrls?"":".html")+m}return(c,d)=>(Cr(),Ar("div",Ua))}});export{Va as default}; diff --git a/assets/chunks/VPAlgoliaSearchBox.81ddc2b4.js b/assets/chunks/VPAlgoliaSearchBox.81ddc2b4.js new file mode 100644 index 0000000..5c75868 --- /dev/null +++ b/assets/chunks/VPAlgoliaSearchBox.81ddc2b4.js @@ -0,0 +1,14 @@ +import{d as Dr,ai as Cr,x as xr,p as Ar,w as Nr,o as Rr,c as Tr}from"./framework.6241eaf2.js";import{u as Lr}from"./theme.c4d303ac.js";/*! @docsearch/js 3.4.0 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */function Rt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function I(e){for(var t=1;t=0||(l[u]=c[u]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function ze(e,t){return function(n){if(Array.isArray(n))return n}(e)||function(n,r){var o=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(o!=null){var a,c,i=[],u=!0,s=!1;try{for(o=o.call(n);!(u=(a=o.next()).done)&&(i.push(a.value),!r||i.length!==r);u=!0);}catch(l){s=!0,c=l}finally{try{u||o.return==null||o.return()}finally{if(s)throw c}}return i}}(e,t)||Fn(e,t)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function Je(e){return function(t){if(Array.isArray(t))return dt(t)}(e)||function(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}(e)||Fn(e)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function Fn(e,t){if(e){if(typeof e=="string")return dt(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?dt(e,t):void 0}}function dt(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n3)for(n=[n],a=3;a0?Ee(d.type,d.props,d.key,null,d.__v):d)!=null){if(d.__=n,d.__b=n.__b+1,(m=S[l])===null||m&&d.key==m.key&&d.type===m.type)S[l]=void 0;else for(p=0;p3)for(n=[n],a=3;a=n.__.length&&n.__.push({}),n.__[e]}function Xn(e){return se=1,er(nr,e)}function er(e,t,n){var r=De(fe++,2);return r.t=e,r.__c||(r.__=[n?n(t):nr(void 0,t),function(o){var a=r.t(r.__[0],o);r.__[0]!==a&&(r.__=[a,r.__[1]],r.__c.setState({}))}],r.__c=T),r.__}function tr(e,t){var n=De(fe++,3);!E.__s&&Dt(n.__H,t)&&(n.__=e,n.__H=t,T.__H.__h.push(n))}function Kt(e,t){var n=De(fe++,4);!E.__s&&Dt(n.__H,t)&&(n.__=e,n.__H=t,T.__h.push(n))}function ct(e,t){var n=De(fe++,7);return Dt(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function Vr(){vt.forEach(function(e){if(e.__P)try{e.__H.__h.forEach(Be),e.__H.__h.forEach(yt),e.__H.__h=[]}catch(t){e.__H.__h=[],E.__e(t,e.__v)}}),vt=[]}E.__b=function(e){T=null,Ut&&Ut(e)},E.__r=function(e){Ft&&Ft(e),fe=0;var t=(T=e.__c).__H;t&&(t.__h.forEach(Be),t.__h.forEach(yt),t.__h=[])},E.diffed=function(e){Bt&&Bt(e);var t=e.__c;t&&t.__H&&t.__H.__h.length&&(vt.push(t)!==1&&Ht===E.requestAnimationFrame||((Ht=E.requestAnimationFrame)||function(n){var r,o=function(){clearTimeout(a),zt&&cancelAnimationFrame(r),setTimeout(n)},a=setTimeout(o,100);zt&&(r=requestAnimationFrame(o))})(Vr)),T=void 0},E.__c=function(e,t){t.some(function(n){try{n.__h.forEach(Be),n.__h=n.__h.filter(function(r){return!r.__||yt(r)})}catch(r){t.some(function(o){o.__h&&(o.__h=[])}),t=[],E.__e(r,n.__v)}}),Vt&&Vt(e,t)},E.unmount=function(e){Wt&&Wt(e);var t=e.__c;if(t&&t.__H)try{t.__H.__.forEach(Be)}catch(n){E.__e(n,t.__v)}};var zt=typeof requestAnimationFrame=="function";function Be(e){var t=T;typeof e.__c=="function"&&e.__c(),T=t}function yt(e){var t=T;e.__c=e.__(),T=t}function Dt(e,t){return!e||e.length!==t.length||t.some(function(n,r){return n!==e[r]})}function nr(e,t){return typeof t=="function"?t(e):t}function rr(e,t){for(var n in t)e[n]=t[n];return e}function _t(e,t){for(var n in e)if(n!=="__source"&&!(n in t))return!0;for(var r in t)if(r!=="__source"&&e[r]!==t[r])return!0;return!1}function gt(e){this.props=e}(gt.prototype=new W).isPureReactComponent=!0,gt.prototype.shouldComponentUpdate=function(e,t){return _t(this.props,e)||_t(this.state,t)};var Jt=E.__b;E.__b=function(e){e.type&&e.type.__f&&e.ref&&(e.props.ref=e.ref,e.ref=null),Jt&&Jt(e)};var Wr=typeof Symbol<"u"&&Symbol.for&&Symbol.for("react.forward_ref")||3911,$t=function(e,t){return e==null?null:J(J(e).map(t))},Kr={map:$t,forEach:$t,count:function(e){return e?J(e).length:0},only:function(e){var t=J(e);if(t.length!==1)throw"Children.only";return t[0]},toArray:J},zr=E.__e;function Ve(){this.__u=0,this.t=null,this.__b=null}function or(e){var t=e.__.__c;return t&&t.__e&&t.__e(e)}function be(){this.u=null,this.o=null}E.__e=function(e,t,n){if(e.then){for(var r,o=t;o=o.__;)if((r=o.__c)&&r.__c)return t.__e==null&&(t.__e=n.__e,t.__k=n.__k),r.__c(e,t)}zr(e,t,n)},(Ve.prototype=new W).__c=function(e,t){var n=t.__c,r=this;r.t==null&&(r.t=[]),r.t.push(n);var o=or(r.__v),a=!1,c=function(){a||(a=!0,n.componentWillUnmount=n.__c,o?o(i):i())};n.__c=n.componentWillUnmount,n.componentWillUnmount=function(){c(),n.__c&&n.__c()};var i=function(){if(!--r.__u){if(r.state.__e){var s=r.state.__e;r.__v.__k[0]=function p(m,d,_){return m&&(m.__v=null,m.__k=m.__k&&m.__k.map(function(h){return p(h,d,_)}),m.__c&&m.__c.__P===d&&(m.__e&&_.insertBefore(m.__e,m.__d),m.__c.__e=!0,m.__c.__P=_)),m}(s,s.__c.__P,s.__c.__O)}var l;for(r.setState({__e:r.__b=null});l=r.t.pop();)l.forceUpdate()}},u=t.__h===!0;r.__u++||u||r.setState({__e:r.__b=r.__v.__k[0]}),e.then(c,c)},Ve.prototype.componentWillUnmount=function(){this.t=[]},Ve.prototype.render=function(e,t){if(this.__b){if(this.__v.__k){var n=document.createElement("div"),r=this.__v.__k[0].__c;this.__v.__k[0]=function a(c,i,u){return c&&(c.__c&&c.__c.__H&&(c.__c.__H.__.forEach(function(s){typeof s.__c=="function"&&s.__c()}),c.__c.__H=null),(c=rr({},c)).__c!=null&&(c.__c.__P===u&&(c.__c.__P=i),c.__c=null),c.__k=c.__k&&c.__k.map(function(s){return a(s,i,u)})),c}(this.__b,n,r.__O=r.__P)}this.__b=null}var o=t.__e&&V(Y,null,e.fallback);return o&&(o.__h=null),[V(Y,null,t.__e?null:e.children),o]};var Qt=function(e,t,n){if(++n[1]===n[0]&&e.o.delete(t),e.props.revealOrder&&(e.props.revealOrder[0]!=="t"||!e.o.size))for(n=e.u;n;){for(;n.length>3;)n.pop()();if(n[1]>>1,1),t.i.removeChild(r)}}),Ie(V(Jr,{context:t.context},e.__v),t.l)):t.l&&t.componentWillUnmount()}function ar(e,t){return V($r,{__v:e,i:t})}(be.prototype=new W).__e=function(e){var t=this,n=or(t.__v),r=t.o.get(e);return r[0]++,function(o){var a=function(){t.props.revealOrder?(r.push(o),Qt(t,e,r)):o()};n?n(a):a()}},be.prototype.render=function(e){this.u=null,this.o=new Map;var t=J(e.children);e.revealOrder&&e.revealOrder[0]==="b"&&t.reverse();for(var n=t.length;n--;)this.o.set(t[n],this.u=[1,0,this.u]);return e.children},be.prototype.componentDidUpdate=be.prototype.componentDidMount=function(){var e=this;this.o.forEach(function(t,n){Qt(e,n,t)})};var cr=typeof Symbol<"u"&&Symbol.for&&Symbol.for("react.element")||60103,Qr=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|fill|flood|font|glyph(?!R)|horiz|marker(?!H|W|U)|overline|paint|stop|strikethrough|stroke|text(?!L)|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,Zr=function(e){return(typeof Symbol<"u"&&je(Symbol())=="symbol"?/fil|che|rad/i:/fil|che|ra/i).test(e)};function ir(e,t,n){return t.__k==null&&(t.textContent=""),Ie(e,t),typeof n=="function"&&n(),e?e.__c:null}W.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(e){Object.defineProperty(W.prototype,e,{configurable:!0,get:function(){return this["UNSAFE_"+e]},set:function(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,value:t})}})});var Zt=E.event;function Yr(){}function Gr(){return this.cancelBubble}function Xr(){return this.defaultPrevented}E.event=function(e){return Zt&&(e=Zt(e)),e.persist=Yr,e.isPropagationStopped=Gr,e.isDefaultPrevented=Xr,e.nativeEvent=e};var ur,Yt={configurable:!0,get:function(){return this.class}},Gt=E.vnode;E.vnode=function(e){var t=e.type,n=e.props,r=n;if(typeof t=="string"){for(var o in r={},n){var a=n[o];o==="value"&&"defaultValue"in n&&a==null||(o==="defaultValue"&&"value"in n&&n.value==null?o="value":o==="download"&&a===!0?a="":/ondoubleclick/i.test(o)?o="ondblclick":/^onchange(textarea|input)/i.test(o+t)&&!Zr(n.type)?o="oninput":/^on(Ani|Tra|Tou|BeforeInp)/.test(o)?o=o.toLowerCase():Qr.test(o)?o=o.replace(/[A-Z0-9]/,"-$&").toLowerCase():a===null&&(a=void 0),r[o]=a)}t=="select"&&r.multiple&&Array.isArray(r.value)&&(r.value=J(n.children).forEach(function(c){c.props.selected=r.value.indexOf(c.props.value)!=-1})),t=="select"&&r.defaultValue!=null&&(r.value=J(n.children).forEach(function(c){c.props.selected=r.multiple?r.defaultValue.indexOf(c.props.value)!=-1:r.defaultValue==c.props.value})),e.props=r}t&&n.class!=n.className&&(Yt.enumerable="className"in n,n.className!=null&&(r.class=n.className),Object.defineProperty(r,"className",Yt)),e.$$typeof=cr,Gt&&Gt(e)};var Xt=E.__r;E.__r=function(e){Xt&&Xt(e),ur=e.__c};var eo={ReactCurrentDispatcher:{current:{readContext:function(e){return ur.__n[e.__c].props.value}}}};(typeof performance>"u"?"undefined":je(performance))=="object"&&typeof performance.now=="function"&&performance.now.bind(performance);function en(e){return!!e&&e.$$typeof===cr}var f={useState:Xn,useReducer:er,useEffect:tr,useLayoutEffect:Kt,useRef:function(e){return se=5,ct(function(){return{current:e}},[])},useImperativeHandle:function(e,t,n){se=6,Kt(function(){typeof e=="function"?e(t()):e&&(e.current=t())},n==null?n:n.concat(e))},useMemo:ct,useCallback:function(e,t){return se=8,ct(function(){return e},t)},useContext:function(e){var t=T.context[e.__c],n=De(fe++,9);return n.__c=e,t?(n.__==null&&(n.__=!0,t.sub(T)),t.props.value):e.__},useDebugValue:function(e,t){E.useDebugValue&&E.useDebugValue(t?t(e):e)},version:"16.8.0",Children:Kr,render:ir,hydrate:function(e,t,n){return Gn(e,t),typeof n=="function"&&n(),e?e.__c:null},unmountComponentAtNode:function(e){return!!e.__k&&(Ie(null,e),!0)},createPortal:ar,createElement:V,createContext:function(e,t){var n={__c:t="__cC"+Vn++,__:e,Consumer:function(r,o){return r.children(o)},Provider:function(r){var o,a;return this.getChildContext||(o=[],(a={})[t]=this,this.getChildContext=function(){return a},this.shouldComponentUpdate=function(c){this.props.value!==c.value&&o.some(ht)},this.sub=function(c){o.push(c);var i=c.componentWillUnmount;c.componentWillUnmount=function(){o.splice(o.indexOf(c),1),i&&i.call(c)}}),r.children}};return n.Provider.__=n.Consumer.contextType=n},createFactory:function(e){return V.bind(null,e)},cloneElement:function(e){return en(e)?Br.apply(null,arguments):e},createRef:function(){return{current:null}},Fragment:Y,isValidElement:en,findDOMNode:function(e){return e&&(e.base||e.nodeType===1&&e)||null},Component:W,PureComponent:gt,memo:function(e,t){function n(o){var a=this.props.ref,c=a==o.ref;return!c&&a&&(a.call?a(null):a.current=null),t?!t(this.props,o)||!c:_t(this.props,o)}function r(o){return this.shouldComponentUpdate=n,V(e,o)}return r.displayName="Memo("+(e.displayName||e.name)+")",r.prototype.isReactComponent=!0,r.__f=!0,r},forwardRef:function(e){function t(n,r){var o=rr({},n);return delete o.ref,e(o,(r=n.ref||r)&&(je(r)!="object"||"current"in r)?r:null)}return t.$$typeof=Wr,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(e.displayName||e.name)+")",t},unstable_batchedUpdates:function(e,t){return e(t)},StrictMode:Y,Suspense:Ve,SuspenseList:be,lazy:function(e){var t,n,r;function o(a){if(t||(t=e()).then(function(c){n=c.default||c},function(c){r=c}),r)throw r;if(!n)throw t;return V(n,a)}return o.displayName="Lazy",o.__f=!0,o},__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:eo};function to(){return f.createElement("svg",{width:"15",height:"15",className:"DocSearch-Control-Key-Icon"},f.createElement("path",{d:"M4.505 4.496h2M5.505 5.496v5M8.216 4.496l.055 5.993M10 7.5c.333.333.5.667.5 1v2M12.326 4.5v5.996M8.384 4.496c1.674 0 2.116 0 2.116 1.5s-.442 1.5-2.116 1.5M3.205 9.303c-.09.448-.277 1.21-1.241 1.203C1 10.5.5 9.513.5 8V7c0-1.57.5-2.5 1.464-2.494.964.006 1.134.598 1.24 1.342M12.553 10.5h1.953",strokeWidth:"1.2",stroke:"currentColor",fill:"none",strokeLinecap:"square"}))}function lr(){return f.createElement("svg",{width:"20",height:"20",className:"DocSearch-Search-Icon",viewBox:"0 0 20 20"},f.createElement("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}var no=["translations"];function bt(){return bt=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(l[u]=c[u]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var ao=f.forwardRef(function(e,t){var n=e.translations,r=n===void 0?{}:n,o=oo(e,no),a=r.buttonText,c=a===void 0?"Search":a,i=r.buttonAriaLabel,u=i===void 0?"Search":i,s=ro(Xn(null),2),l=s[0],p=s[1];return tr(function(){typeof navigator<"u"&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?p("⌘"):p("Ctrl"))},[]),f.createElement("button",bt({type:"button",className:"DocSearch DocSearch-Button","aria-label":u},o,{ref:t}),f.createElement("span",{className:"DocSearch-Button-Container"},f.createElement(lr,null),f.createElement("span",{className:"DocSearch-Button-Placeholder"},c)),f.createElement("span",{className:"DocSearch-Button-Keys"},l!==null&&f.createElement(f.Fragment,null,f.createElement("kbd",{className:"DocSearch-Button-Key"},l==="Ctrl"?f.createElement(to,null):l),f.createElement("kbd",{className:"DocSearch-Button-Key"},"K"))))});function ke(e){return e.reduce(function(t,n){return t.concat(n)},[])}var co=0;function Ot(e){return e.collections.length===0?0:e.collections.reduce(function(t,n){return t+n.items.length},0)}var St=function(){},io=[{segment:"autocomplete-core",version:"1.8.2"}];function We(e,t){var n=t;return{then:function(r,o){return We(e.then(Re(r,n,e),Re(o,n,e)),n)},catch:function(r){return We(e.catch(Re(r,n,e)),n)},finally:function(r){return r&&n.onCancelList.push(r),We(e.finally(Re(r&&function(){return n.onCancelList=[],r()},n,e)),n)},cancel:function(){n.isCanceled=!0;var r=n.onCancelList;n.onCancelList=[],r.forEach(function(o){o()})},isCanceled:function(){return n.isCanceled===!0}}}function nn(e){return We(e,{isCanceled:!1,onCancelList:[]})}function Re(e,t,n){return e?function(r){return t.isCanceled?r:e(r)}:n}function rn(e,t,n,r){if(!n)return null;if(e<0&&(t===null||r!==null&&t===0))return n+e;var o=(t===null?-1:t)+e;return o<=-1||o>=n?r===null?null:0:o}function on(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function an(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n0},reshape:function(a){return a.sources}},e),{},{id:(n=e.id)!==null&&n!==void 0?n:"autocomplete-".concat(co++),plugins:o,initialState:oe({activeItemId:null,query:"",completion:null,collections:[],isOpen:!1,status:"idle",context:{}},e.initialState),onStateChange:function(a){var c;(c=e.onStateChange)===null||c===void 0||c.call(e,a),o.forEach(function(i){var u;return(u=i.onStateChange)===null||u===void 0?void 0:u.call(i,a)})},onSubmit:function(a){var c;(c=e.onSubmit)===null||c===void 0||c.call(e,a),o.forEach(function(i){var u;return(u=i.onSubmit)===null||u===void 0?void 0:u.call(i,a)})},onReset:function(a){var c;(c=e.onReset)===null||c===void 0||c.call(e,a),o.forEach(function(i){var u;return(u=i.onReset)===null||u===void 0?void 0:u.call(i,a)})},getSources:function(a){return Promise.all([].concat(ho(o.map(function(c){return c.getSources})),[e.getSources]).filter(Boolean).map(function(c){return function(i,u){var s=[];return Promise.resolve(i(u)).then(function(l){return Promise.all(l.filter(function(p){return!!p}).map(function(p){if(p.sourceId,s.includes(p.sourceId))throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(p.sourceId)," is not unique."));s.push(p.sourceId);var m={getItemInputValue:function(_){return _.state.query},getItemUrl:function(){},onSelect:function(_){(0,_.setIsOpen)(!1)},onActive:St,onResolve:St};Object.keys(m).forEach(function(_){m[_].__default=!0});var d=an(an({},m),p);return Promise.resolve(d)}))})}(c,a)})).then(function(c){return ke(c)}).then(function(c){return c.map(function(i){return oe(oe({},i),{},{onSelect:function(u){i.onSelect(u),t.forEach(function(s){var l;return(l=s.onSelect)===null||l===void 0?void 0:l.call(s,u)})},onActive:function(u){i.onActive(u),t.forEach(function(s){var l;return(l=s.onActive)===null||l===void 0?void 0:l.call(s,u)})},onResolve:function(u){i.onResolve(u),t.forEach(function(s){var l;return(l=s.onResolve)===null||l===void 0?void 0:l.call(s,u)})}})})})},navigator:oe({navigate:function(a){var c=a.itemUrl;r.location.assign(c)},navigateNewTab:function(a){var c=a.itemUrl,i=r.open(c,"_blank","noopener");i==null||i.focus()},navigateNewWindow:function(a){var c=a.itemUrl;r.open(c,"_blank","noopener")}},e.navigator)})}function fn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function qe(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(l[u]=c[u]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var dn,lt,He,ge=null,hn=(dn=-1,lt=-1,He=void 0,function(e){var t=++dn;return Promise.resolve(e).then(function(n){return He&&t=0||(l[u]=c[u]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var ko=["props","refresh","store"],Do=["inputElement","formElement","panelElement"],Co=["inputElement"],xo=["inputElement","maxLength"],Ao=["sourceIndex"],No=["sourceIndex"],Ro=["item","source","sourceIndex"];function yn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function R(e){for(var t=1;t=0||(l[u]=c[u]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function Lo(e){var t=e.props,n=e.refresh,r=e.store,o=te(e,ko),a=function(c,i){return i!==void 0?"".concat(c,"-").concat(i):c};return{getEnvironmentProps:function(c){var i=c.inputElement,u=c.formElement,s=c.panelElement;function l(p){!r.getState().isOpen&&r.pendingRequests.isEmpty()||p.target===i||[u,s].some(function(m){return d=m,_=p.target,d===_||d.contains(_);var d,_})===!1&&(r.dispatch("blur",null),t.debug||r.pendingRequests.cancelAll())}return R({onTouchStart:l,onMouseDown:l,onTouchMove:function(p){r.getState().isOpen!==!1&&i===t.environment.document.activeElement&&p.target!==i&&i.blur()}},te(c,Do))},getRootProps:function(c){return R({role:"combobox","aria-expanded":r.getState().isOpen,"aria-haspopup":"listbox","aria-owns":r.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label")},c)},getFormProps:function(c){return c.inputElement,R({action:"",noValidate:!0,role:"search",onSubmit:function(i){var u;i.preventDefault(),t.onSubmit(R({event:i,refresh:n,state:r.getState()},o)),r.dispatch("submit",null),(u=c.inputElement)===null||u===void 0||u.blur()},onReset:function(i){var u;i.preventDefault(),t.onReset(R({event:i,refresh:n,state:r.getState()},o)),r.dispatch("reset",null),(u=c.inputElement)===null||u===void 0||u.focus()}},te(c,Co))},getLabelProps:function(c){var i=c||{},u=i.sourceIndex,s=te(i,Ao);return R({htmlFor:"".concat(a(t.id,u),"-input"),id:"".concat(a(t.id,u),"-label")},s)},getInputProps:function(c){var i;function u(y){(t.openOnFocus||r.getState().query)&&ie(R({event:y,props:t,query:r.getState().completion||r.getState().query,refresh:n,store:r},o)),r.dispatch("focus",null)}var s=c||{},l=(s.inputElement,s.maxLength),p=l===void 0?512:l,m=te(s,xo),d=ue(r.getState()),_=function(y){return!!(y&&y.match(lo))}(((i=t.environment.navigator)===null||i===void 0?void 0:i.userAgent)||""),h=d!=null&&d.itemUrl&&!_?"go":"search";return R({"aria-autocomplete":"both","aria-activedescendant":r.getState().isOpen&&r.getState().activeItemId!==null?"".concat(t.id,"-item-").concat(r.getState().activeItemId):void 0,"aria-controls":r.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label"),value:r.getState().completion||r.getState().query,id:"".concat(t.id,"-input"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",enterKeyHint:h,spellCheck:"false",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:p,type:"search",onChange:function(y){ie(R({event:y,props:t,query:y.currentTarget.value.slice(0,p),refresh:n,store:r},o))},onKeyDown:function(y){(function(S){var g=S.event,O=S.props,b=S.refresh,v=S.store,j=Io(S,jo);if(g.key==="ArrowUp"||g.key==="ArrowDown"){var C=function(){var q=O.environment.document.getElementById("".concat(O.id,"-item-").concat(v.getState().activeItemId));q&&(q.scrollIntoViewIfNeeded?q.scrollIntoViewIfNeeded(!1):q.scrollIntoView(!1))},L=function(){var q=ue(v.getState());if(v.getState().activeItemId!==null&&q){var Ce=q.item,G=q.itemInputValue,nt=q.itemUrl,pe=q.source;pe.onActive(ee({event:g,item:Ce,itemInputValue:G,itemUrl:nt,refresh:b,source:pe,state:v.getState()},j))}};g.preventDefault(),v.getState().isOpen===!1&&(O.openOnFocus||v.getState().query)?ie(ee({event:g,props:O,query:v.getState().query,refresh:b,store:v},j)).then(function(){v.dispatch(g.key,{nextActiveItemId:O.defaultActiveItemId}),L(),setTimeout(C,0)}):(v.dispatch(g.key,{}),L(),C())}else if(g.key==="Escape")g.preventDefault(),v.dispatch(g.key,null),v.pendingRequests.cancelAll();else if(g.key==="Tab")v.dispatch("blur",null),v.pendingRequests.cancelAll();else if(g.key==="Enter"){if(v.getState().activeItemId===null||v.getState().collections.every(function(q){return q.items.length===0}))return void(O.debug||v.pendingRequests.cancelAll());g.preventDefault();var A=ue(v.getState()),D=A.item,N=A.itemInputValue,F=A.itemUrl,B=A.source;if(g.metaKey||g.ctrlKey)F!==void 0&&(B.onSelect(ee({event:g,item:D,itemInputValue:N,itemUrl:F,refresh:b,source:B,state:v.getState()},j)),O.navigator.navigateNewTab({itemUrl:F,item:D,state:v.getState()}));else if(g.shiftKey)F!==void 0&&(B.onSelect(ee({event:g,item:D,itemInputValue:N,itemUrl:F,refresh:b,source:B,state:v.getState()},j)),O.navigator.navigateNewWindow({itemUrl:F,item:D,state:v.getState()}));else if(!g.altKey){if(F!==void 0)return B.onSelect(ee({event:g,item:D,itemInputValue:N,itemUrl:F,refresh:b,source:B,state:v.getState()},j)),void O.navigator.navigate({itemUrl:F,item:D,state:v.getState()});ie(ee({event:g,nextState:{isOpen:!1},props:O,query:N,refresh:b,store:v},j)).then(function(){B.onSelect(ee({event:g,item:D,itemInputValue:N,itemUrl:F,refresh:b,source:B,state:v.getState()},j))})}}})(R({event:y,props:t,refresh:n,store:r},o))},onFocus:u,onBlur:St,onClick:function(y){c.inputElement!==t.environment.document.activeElement||r.getState().isOpen||u(y)}},m)},getPanelProps:function(c){return R({onMouseDown:function(i){i.preventDefault()},onMouseLeave:function(){r.dispatch("mouseleave",null)}},c)},getListProps:function(c){var i=c||{},u=i.sourceIndex,s=te(i,No);return R({role:"listbox","aria-labelledby":"".concat(a(t.id,u),"-label"),id:"".concat(a(t.id,u),"-list")},s)},getItemProps:function(c){var i=c.item,u=c.source,s=c.sourceIndex,l=te(c,Ro);return R({id:"".concat(a(t.id,s),"-item-").concat(i.__autocomplete_id),role:"option","aria-selected":r.getState().activeItemId===i.__autocomplete_id,onMouseMove:function(p){if(i.__autocomplete_id!==r.getState().activeItemId){r.dispatch("mousemove",i.__autocomplete_id);var m=ue(r.getState());if(r.getState().activeItemId!==null&&m){var d=m.item,_=m.itemInputValue,h=m.itemUrl,y=m.source;y.onActive(R({event:p,item:d,itemInputValue:_,itemUrl:h,refresh:n,source:y,state:r.getState()},o))}}},onMouseDown:function(p){p.preventDefault()},onClick:function(p){var m=u.getItemInputValue({item:i,state:r.getState()}),d=u.getItemUrl({item:i,state:r.getState()});(d?Promise.resolve():ie(R({event:p,nextState:{isOpen:!1},props:t,query:m,refresh:n,store:r},o))).then(function(){u.onSelect(R({event:p,item:i,itemInputValue:m,itemUrl:d,refresh:n,source:u,state:r.getState()},o))})}},l)}}}function _n(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function qo(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(l[u]=c[u]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function aa(e){var t=e.translations,n=t===void 0?{}:t,r=oa(e,na),o=n.noResultsText,a=o===void 0?"No results for":o,c=n.suggestedQueryText,i=c===void 0?"Try searching for":c,u=n.reportMissingResultsText,s=u===void 0?"Believe this query should return results?":u,l=n.reportMissingResultsLinkText,p=l===void 0?"Let us know.":l,m=r.state.context.searchSuggestions;return f.createElement("div",{className:"DocSearch-NoResults"},f.createElement("div",{className:"DocSearch-Screen-Icon"},f.createElement(ea,null)),f.createElement("p",{className:"DocSearch-Title"},a,' "',f.createElement("strong",null,r.state.query),'"'),m&&m.length>0&&f.createElement("div",{className:"DocSearch-NoResults-Prefill-List"},f.createElement("p",{className:"DocSearch-Help"},i,":"),f.createElement("ul",null,m.slice(0,3).reduce(function(d,_){return[].concat(ra(d),[f.createElement("li",{key:_},f.createElement("button",{className:"DocSearch-Prefill",key:_,type:"button",onClick:function(){r.setQuery(_.toLowerCase()+" "),r.refresh(),r.inputRef.current.focus()}},_))])},[]))),r.getMissingResultsUrl&&f.createElement("p",{className:"DocSearch-Help"},"".concat(s," "),f.createElement("a",{href:r.getMissingResultsUrl({query:r.state.query}),target:"_blank",rel:"noopener noreferrer"},p)))}var ca=["hit","attribute","tagName"];function En(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function wn(e){for(var t=1;t=0||(l[u]=c[u]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function jn(e,t){return t.split(".").reduce(function(n,r){return n!=null&&n[r]?n[r]:null},e)}function ce(e){var t=e.hit,n=e.attribute,r=e.tagName;return V(r===void 0?"span":r,wn(wn({},ua(e,ca)),{},{dangerouslySetInnerHTML:{__html:jn(t,"_snippetResult.".concat(n,".value"))||jn(t,n)}}))}function Pn(e,t){return function(n){if(Array.isArray(n))return n}(e)||function(n,r){var o=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(o!=null){var a,c,i=[],u=!0,s=!1;try{for(o=o.call(n);!(u=(a=o.next()).done)&&(i.push(a.value),!r||i.length!==r);u=!0);}catch(l){s=!0,c=l}finally{try{u||o.return==null||o.return()}finally{if(s)throw c}}return i}}(e,t)||function(n,r){if(n){if(typeof n=="string")return In(n,r);var o=Object.prototype.toString.call(n).slice(8,-1);if(o==="Object"&&n.constructor&&(o=n.constructor.name),o==="Map"||o==="Set")return Array.from(n);if(o==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return In(n,r)}}(e,t)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function In(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n|<\/mark>)/g,fa=RegExp(mr.source);function dr(e){var t,n,r,o,a,c=e;if(!c.__docsearch_parent&&!e._highlightResult)return e.hierarchy.lvl0;var i=((c.__docsearch_parent?(t=c.__docsearch_parent)===null||t===void 0||(n=t._highlightResult)===null||n===void 0||(r=n.hierarchy)===null||r===void 0?void 0:r.lvl0:(o=e._highlightResult)===null||o===void 0||(a=o.hierarchy)===null||a===void 0?void 0:a.lvl0)||{}).value;return i&&fa.test(i)?i.replace(mr,""):i}function jt(){return jt=Object.assign||function(e){for(var t=1;t=0||(l[u]=c[u]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function ha(e){var t=e.translations,n=t===void 0?{}:t,r=da(e,ma),o=n.recentSearchesTitle,a=o===void 0?"Recent":o,c=n.noRecentSearchesText,i=c===void 0?"No recent searches":c,u=n.saveRecentSearchButtonTitle,s=u===void 0?"Save this search":u,l=n.removeRecentSearchButtonTitle,p=l===void 0?"Remove this search from history":l,m=n.favoriteSearchesTitle,d=m===void 0?"Favorite":m,_=n.removeFavoriteSearchButtonTitle,h=_===void 0?"Remove this search from favorites":_;return r.state.status==="idle"&&r.hasCollections===!1?r.disableUserPersonalization?null:f.createElement("div",{className:"DocSearch-StartScreen"},f.createElement("p",{className:"DocSearch-Help"},i)):r.hasCollections===!1?null:f.createElement("div",{className:"DocSearch-Dropdown-Container"},f.createElement(wt,Ye({},r,{title:a,collection:r.state.collections[0],renderIcon:function(){return f.createElement("div",{className:"DocSearch-Hit-icon"},f.createElement(Jo,null))},renderAction:function(y){var S=y.item,g=y.runFavoriteTransition,O=y.runDeleteTransition;return f.createElement(f.Fragment,null,f.createElement("div",{className:"DocSearch-Hit-action"},f.createElement("button",{className:"DocSearch-Hit-action-button",title:s,type:"submit",onClick:function(b){b.preventDefault(),b.stopPropagation(),g(function(){r.favoriteSearches.add(S),r.recentSearches.remove(S),r.refresh()})}},f.createElement(Sn,null))),f.createElement("div",{className:"DocSearch-Hit-action"},f.createElement("button",{className:"DocSearch-Hit-action-button",title:p,type:"submit",onClick:function(b){b.preventDefault(),b.stopPropagation(),O(function(){r.recentSearches.remove(S),r.refresh()})}},f.createElement(Et,null))))}})),f.createElement(wt,Ye({},r,{title:d,collection:r.state.collections[1],renderIcon:function(){return f.createElement("div",{className:"DocSearch-Hit-icon"},f.createElement(Sn,null))},renderAction:function(y){var S=y.item,g=y.runDeleteTransition;return f.createElement("div",{className:"DocSearch-Hit-action"},f.createElement("button",{className:"DocSearch-Hit-action-button",title:h,type:"submit",onClick:function(O){O.preventDefault(),O.stopPropagation(),g(function(){r.favoriteSearches.remove(S),r.refresh()})}},f.createElement(Et,null)))}})))}var va=["translations"];function Ge(){return Ge=Object.assign||function(e){for(var t=1;t=0||(l[u]=c[u]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var _a=f.memo(function(e){var t=e.translations,n=t===void 0?{}:t,r=ya(e,va);if(r.state.status==="error")return f.createElement(ta,{translations:n==null?void 0:n.errorScreen});var o=r.state.collections.some(function(a){return a.items.length>0});return r.state.query?o===!1?f.createElement(aa,Ge({},r,{translations:n==null?void 0:n.noResultsScreen})):f.createElement(pa,r):f.createElement(ha,Ge({},r,{hasCollections:o,translations:n==null?void 0:n.startScreen}))},function(e,t){return t.state.status==="loading"||t.state.status==="stalled"}),ga=["translations"];function Xe(){return Xe=Object.assign||function(e){for(var t=1;t=0||(l[u]=c[u]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function Oa(e){var t=e.translations,n=t===void 0?{}:t,r=ba(e,ga),o=n.resetButtonTitle,a=o===void 0?"Clear the query":o,c=n.resetButtonAriaLabel,i=c===void 0?"Clear the query":c,u=n.cancelButtonText,s=u===void 0?"Cancel":u,l=n.cancelButtonAriaLabel,p=l===void 0?"Cancel":l,m=r.getFormProps({inputElement:r.inputRef.current}).onReset;return f.useEffect(function(){r.autoFocus&&r.inputRef.current&&r.inputRef.current.focus()},[r.autoFocus,r.inputRef]),f.useEffect(function(){r.isFromSelection&&r.inputRef.current&&r.inputRef.current.select()},[r.isFromSelection,r.inputRef]),f.createElement(f.Fragment,null,f.createElement("form",{className:"DocSearch-Form",onSubmit:function(d){d.preventDefault()},onReset:m},f.createElement("label",Xe({className:"DocSearch-MagnifierLabel"},r.getLabelProps()),f.createElement(lr,null)),f.createElement("div",{className:"DocSearch-LoadingIndicator"},f.createElement(zo,null)),f.createElement("input",Xe({className:"DocSearch-Input",ref:r.inputRef},r.getInputProps({inputElement:r.inputRef.current,autoFocus:r.autoFocus,maxLength:64}))),f.createElement("button",{type:"reset",title:a,className:"DocSearch-Reset","aria-label":i,hidden:!r.state.query},f.createElement(Et,null))),f.createElement("button",{className:"DocSearch-Cancel",type:"reset","aria-label":p,onClick:r.onClose},s))}var Sa=["_highlightResult","_snippetResult"];function Ea(e,t){if(e==null)return{};var n,r,o=function(c,i){if(c==null)return{};var u,s,l={},p=Object.keys(c);for(s=0;s=0||(l[u]=c[u]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function wa(e){return function(){var t="__TEST_KEY__";try{return localStorage.setItem(t,""),localStorage.removeItem(t),!0}catch{return!1}}()===!1?{setItem:function(){},getItem:function(){return[]}}:{setItem:function(t){return window.localStorage.setItem(e,JSON.stringify(t))},getItem:function(){var t=window.localStorage.getItem(e);return t?JSON.parse(t):[]}}}function Cn(e){var t=e.key,n=e.limit,r=n===void 0?5:n,o=wa(t),a=o.getItem().slice(0,r);return{add:function(c){var i=c,u=(i._highlightResult,i._snippetResult,Ea(i,Sa)),s=a.findIndex(function(l){return l.objectID===u.objectID});s>-1&&a.splice(s,1),a.unshift(u),a=a.slice(0,r),o.setItem(a)},remove:function(c){a=a.filter(function(i){return i.objectID!==c.objectID}),o.setItem(a)},getAll:function(){return a}}}var ja=["facetName","facetQuery"];function Pa(e){var t,n="algoliasearch-client-js-".concat(e.key),r=function(){return t===void 0&&(t=e.localStorage||window.localStorage),t},o=function(){return JSON.parse(r().getItem(n)||"{}")};return{get:function(a,c){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then(function(){var u=JSON.stringify(a),s=o()[u];return Promise.all([s||c(),s!==void 0])}).then(function(u){var s=ze(u,2),l=s[0],p=s[1];return Promise.all([l,p||i.miss(l)])}).then(function(u){return ze(u,1)[0]})},set:function(a,c){return Promise.resolve().then(function(){var i=o();return i[JSON.stringify(a)]=c,r().setItem(n,JSON.stringify(i)),c})},delete:function(a){return Promise.resolve().then(function(){var c=o();delete c[JSON.stringify(a)],r().setItem(n,JSON.stringify(c))})},clear:function(){return Promise.resolve().then(function(){r().removeItem(n)})}}}function Oe(e){var t=Je(e.caches),n=t.shift();return n===void 0?{get:function(r,o){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}};return o().then(function(c){return Promise.all([c,a.miss(c)])}).then(function(c){return ze(c,1)[0]})},set:function(r,o){return Promise.resolve(o)},delete:function(r){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(r,o){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}};return n.get(r,o,a).catch(function(){return Oe({caches:t}).get(r,o,a)})},set:function(r,o){return n.set(r,o).catch(function(){return Oe({caches:t}).set(r,o)})},delete:function(r){return n.delete(r).catch(function(){return Oe({caches:t}).delete(r)})},clear:function(){return n.clear().catch(function(){return Oe({caches:t}).clear()})}}}function ft(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{serializable:!0},t={};return{get:function(n,r){var o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}},a=JSON.stringify(n);if(a in t)return Promise.resolve(e.serializable?JSON.parse(t[a]):t[a]);var c=r(),i=o&&o.miss||function(){return Promise.resolve()};return c.then(function(u){return i(u)}).then(function(){return c})},set:function(n,r){return t[JSON.stringify(n)]=e.serializable?JSON.stringify(r):r,Promise.resolve(r)},delete:function(n){return delete t[JSON.stringify(n)],Promise.resolve()},clear:function(){return t={},Promise.resolve()}}}function Ia(e){for(var t=e.length-1;t>0;t--){var n=Math.floor(Math.random()*(t+1)),r=e[t];e[t]=e[n],e[n]=r}return e}function hr(e,t){return t&&Object.keys(t).forEach(function(n){e[n]=t[n](e)}),e}function et(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r0?r:void 0,timeout:n.timeout||t,headers:n.headers||{},queryParameters:n.queryParameters||{},cacheable:n.cacheable}}var le={Read:1,Write:2,Any:3},vr=1,ka=2,yr=3;function _r(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:vr;return I(I({},e),{},{status:t,lastUpdate:Date.now()})}function gr(e){return typeof e=="string"?{protocol:"https",url:e,accept:le.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||le.Any}}var An="GET",tt="POST";function Da(e,t){return Promise.all(t.map(function(n){return e.get(n,function(){return Promise.resolve(_r(n))})})).then(function(n){var r=n.filter(function(c){return function(i){return i.status===vr||Date.now()-i.lastUpdate>12e4}(c)}),o=n.filter(function(c){return function(i){return i.status===yr&&Date.now()-i.lastUpdate<=12e4}(c)}),a=[].concat(Je(r),Je(o));return{getTimeout:function(c,i){return(o.length===0&&c===0?1:o.length+3+c)*i},statelessHosts:a.length>0?a.map(function(c){return gr(c)}):t}})}function Nn(e,t,n,r){var o=[],a=function(m,d){if(!(m.method===An||m.data===void 0&&d.data===void 0)){var _=Array.isArray(m.data)?m.data:I(I({},m.data),d.data);return JSON.stringify(_)}}(n,r),c=function(m,d){var _=I(I({},m.headers),d.headers),h={};return Object.keys(_).forEach(function(y){var S=_[y];h[y.toLowerCase()]=S}),h}(e,r),i=n.method,u=n.method!==An?{}:I(I({},n.data),r.data),s=I(I(I({"x-algolia-agent":e.userAgent.value},e.queryParameters),u),r.queryParameters),l=0,p=function m(d,_){var h=d.pop();if(h===void 0)throw{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:Rn(o)};var y={data:a,headers:c,method:i,url:xa(h,n.path,s),connectTimeout:_(l,e.timeouts.connect),responseTimeout:_(l,r.timeout)},S=function(O){var b={request:y,response:O,host:h,triesLeft:d.length};return o.push(b),b},g={onSucess:function(O){return function(b){try{return JSON.parse(b.content)}catch(v){throw function(j,C){return{name:"DeserializationError",message:j,response:C}}(v.message,b)}}(O)},onRetry:function(O){var b=S(O);return O.isTimedOut&&l++,Promise.all([e.logger.info("Retryable failure",Or(b)),e.hostsCache.set(h,_r(h,O.isTimedOut?yr:ka))]).then(function(){return m(d,_)})},onFail:function(O){throw S(O),function(b,v){var j=b.content,C=b.status,L=j;try{L=JSON.parse(j).message}catch{}return function(A,D,N){return{name:"ApiError",message:A,status:D,transporterStackTrace:N}}(L,C,v)}(O,Rn(o))}};return e.requester.send(y).then(function(O){return function(b,v){return function(j){var C=j.status;return j.isTimedOut||function(L){var A=L.isTimedOut,D=L.status;return!A&&~~D==0}(j)||~~(C/100)!=2&&~~(C/100)!=4}(b)?v.onRetry(b):~~(b.status/100)==2?v.onSucess(b):v.onFail(b)}(O,g)})};return Da(e.hostsCache,t).then(function(m){return p(Je(m.statelessHosts).reverse(),m.getTimeout)})}function Ca(e){var t={value:"Algolia for JavaScript (".concat(e,")"),add:function(n){var r="; ".concat(n.segment).concat(n.version!==void 0?" (".concat(n.version,")"):"");return t.value.indexOf(r)===-1&&(t.value="".concat(t.value).concat(r)),t}};return t}function xa(e,t,n){var r=br(n),o="".concat(e.protocol,"://").concat(e.url,"/").concat(t.charAt(0)==="/"?t.substr(1):t);return r.length&&(o+="?".concat(r)),o}function br(e){return Object.keys(e).map(function(t){return et("%s=%s",t,(n=e[t],Object.prototype.toString.call(n)==="[object Object]"||Object.prototype.toString.call(n)==="[object Array]"?JSON.stringify(e[t]):e[t]));var n}).join("&")}function Rn(e){return e.map(function(t){return Or(t)})}function Or(e){var t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return I(I({},e),{},{request:I(I({},e.request),{},{headers:I(I({},e.request.headers),t)})})}var Aa=function(e){var t=e.appId,n=function(a,c,i){var u={"x-algolia-api-key":i,"x-algolia-application-id":c};return{headers:function(){return a===Ke.WithinHeaders?u:{}},queryParameters:function(){return a===Ke.WithinQueryParameters?u:{}}}}(e.authMode!==void 0?e.authMode:Ke.WithinHeaders,t,e.apiKey),r=function(a){var c=a.hostsCache,i=a.logger,u=a.requester,s=a.requestsCache,l=a.responsesCache,p=a.timeouts,m=a.userAgent,d=a.hosts,_=a.queryParameters,h={hostsCache:c,logger:i,requester:u,requestsCache:s,responsesCache:l,timeouts:p,userAgent:m,headers:a.headers,queryParameters:_,hosts:d.map(function(y){return gr(y)}),read:function(y,S){var g=xn(S,h.timeouts.read),O=function(){return Nn(h,h.hosts.filter(function(v){return(v.accept&le.Read)!=0}),y,g)};if((g.cacheable!==void 0?g.cacheable:y.cacheable)!==!0)return O();var b={request:y,mappedRequestOptions:g,transporter:{queryParameters:h.queryParameters,headers:h.headers}};return h.responsesCache.get(b,function(){return h.requestsCache.get(b,function(){return h.requestsCache.set(b,O()).then(function(v){return Promise.all([h.requestsCache.delete(b),v])},function(v){return Promise.all([h.requestsCache.delete(b),Promise.reject(v)])}).then(function(v){var j=ze(v,2);return j[0],j[1]})})},{miss:function(v){return h.responsesCache.set(b,v)}})},write:function(y,S){return Nn(h,h.hosts.filter(function(g){return(g.accept&le.Write)!=0}),y,xn(S,h.timeouts.write))}};return h}(I(I({hosts:[{url:"".concat(t,"-dsn.algolia.net"),accept:le.Read},{url:"".concat(t,".algolia.net"),accept:le.Write}].concat(Ia([{url:"".concat(t,"-1.algolianet.com")},{url:"".concat(t,"-2.algolianet.com")},{url:"".concat(t,"-3.algolianet.com")}]))},e),{},{headers:I(I(I({},n.headers()),{"content-type":"application/x-www-form-urlencoded"}),e.headers),queryParameters:I(I({},n.queryParameters()),e.queryParameters)})),o={transporter:r,appId:t,addAlgoliaAgent:function(a,c){r.userAgent.add({segment:a,version:c})},clearCache:function(){return Promise.all([r.requestsCache.clear(),r.responsesCache.clear()]).then(function(){})}};return hr(o,e.methods)},Sr=function(e){return function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r={transporter:e.transporter,appId:e.appId,indexName:t};return hr(r,n.methods)}},Tn=function(e){return function(t,n){var r=t.map(function(o){return I(I({},o),{},{params:br(o.params||{})})});return e.transporter.read({method:tt,path:"1/indexes/*/queries",data:{requests:r},cacheable:!0},n)}},Ln=function(e){return function(t,n){return Promise.all(t.map(function(r){var o=r.params,a=o.facetName,c=o.facetQuery,i=Mr(o,ja);return Sr(e)(r.indexName,{methods:{searchForFacetValues:Er}}).searchForFacetValues(a,c,I(I({},n),i))}))}},Na=function(e){return function(t,n,r){return e.transporter.read({method:tt,path:et("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:n},cacheable:!0},r)}},Ra=function(e){return function(t,n){return e.transporter.read({method:tt,path:et("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},n)}},Er=function(e){return function(t,n,r){return e.transporter.read({method:tt,path:et("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:n},cacheable:!0},r)}},Ta=1,La=2,qa=3;function wr(e,t,n){var r,o={appId:e,apiKey:t,timeouts:{connect:1,read:2,write:30},requester:{send:function(a){return new Promise(function(c){var i=new XMLHttpRequest;i.open(a.method,a.url,!0),Object.keys(a.headers).forEach(function(p){return i.setRequestHeader(p,a.headers[p])});var u,s=function(p,m){return setTimeout(function(){i.abort(),c({status:0,content:m,isTimedOut:!0})},1e3*p)},l=s(a.connectTimeout,"Connection timeout");i.onreadystatechange=function(){i.readyState>i.OPENED&&u===void 0&&(clearTimeout(l),u=s(a.responseTimeout,"Socket timeout"))},i.onerror=function(){i.status===0&&(clearTimeout(l),clearTimeout(u),c({content:i.responseText||"Network request failed",status:i.status,isTimedOut:!1}))},i.onload=function(){clearTimeout(l),clearTimeout(u),c({content:i.responseText,status:i.status,isTimedOut:!1})},i.send(a.data)})}},logger:(r=qa,{debug:function(a,c){return Ta>=r&&console.debug(a,c),Promise.resolve()},info:function(a,c){return La>=r&&console.info(a,c),Promise.resolve()},error:function(a,c){return console.error(a,c),Promise.resolve()}}),responsesCache:ft(),requestsCache:ft({serializable:!1}),hostsCache:Oe({caches:[Pa({key:"".concat("4.8.5","-").concat(e)}),ft()]}),userAgent:Ca("4.8.5").add({segment:"Browser",version:"lite"}),authMode:Ke.WithinQueryParameters};return Aa(I(I(I({},o),n),{},{methods:{search:Tn,searchForFacetValues:Ln,multipleQueries:Tn,multipleSearchForFacetValues:Ln,initIndex:function(a){return function(c){return Sr(a)(c,{methods:{search:Ra,searchForFacetValues:Er,findAnswers:Na}})}}}}))}wr.version="4.8.5";var Ma=["footer","searchBox"];function we(){return we=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(l[u]=c[u]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function Ba(e){var t=e.appId,n=e.apiKey,r=e.indexName,o=e.placeholder,a=o===void 0?"Search docs":o,c=e.searchParameters,i=e.maxResultsPerGroup,u=e.onClose,s=u===void 0?sa:u,l=e.transformItems,p=l===void 0?Dn:l,m=e.hitComponent,d=m===void 0?Ko:m,_=e.resultsFooterComponent,h=_===void 0?function(){return null}:_,y=e.navigator,S=e.initialScrollY,g=S===void 0?0:S,O=e.transformSearchClient,b=O===void 0?Dn:O,v=e.disableUserPersonalization,j=v!==void 0&&v,C=e.initialQuery,L=C===void 0?"":C,A=e.translations,D=A===void 0?{}:A,N=e.getMissingResultsUrl,F=D.footer,B=D.searchBox,q=Fa(D,Ma),Ce=Ua(f.useState({query:"",collections:[],completion:null,context:{},isOpen:!1,activeItemId:null,status:"idle"}),2),G=Ce[0],nt=Ce[1],pe=f.useRef(null),rt=f.useRef(null),Ct=f.useRef(null),xe=f.useRef(null),me=f.useRef(null),$=f.useRef(10),xt=f.useRef(typeof window<"u"?window.getSelection().toString().slice(0,64):"").current,X=f.useRef(L||xt).current,At=function(P,k,M){return f.useMemo(function(){var H=wr(P,k);return H.addAlgoliaAgent("docsearch","3.4.0"),/docsearch.js \(.*\)/.test(H.transporter.userAgent.value)===!1&&H.addAlgoliaAgent("docsearch-react","3.4.0"),M(H)},[P,k,M])}(t,n,b),re=f.useRef(Cn({key:"__DOCSEARCH_FAVORITE_SEARCHES__".concat(r),limit:10})).current,de=f.useRef(Cn({key:"__DOCSEARCH_RECENT_SEARCHES__".concat(r),limit:re.getAll().length===0?7:4})).current,he=f.useCallback(function(P){if(!j){var k=P.type==="content"?P.__docsearch_parent:P;k&&re.getAll().findIndex(function(M){return M.objectID===k.objectID})===-1&&de.add(k)}},[re,de,j]),ve=f.useMemo(function(){return Bo({id:"docsearch",defaultActiveItemId:0,placeholder:a,openOnFocus:!0,initialState:{query:X,context:{searchSuggestions:[]}},navigator:y,onStateChange:function(P){nt(P.state)},getSources:function(P){var k=P.query,M=P.state,H=P.setContext,Q=P.setStatus;return k?At.search([{query:k,indexName:r,params:pt({attributesToRetrieve:["hierarchy.lvl0","hierarchy.lvl1","hierarchy.lvl2","hierarchy.lvl3","hierarchy.lvl4","hierarchy.lvl5","hierarchy.lvl6","content","type","url"],attributesToSnippet:["hierarchy.lvl1:".concat($.current),"hierarchy.lvl2:".concat($.current),"hierarchy.lvl3:".concat($.current),"hierarchy.lvl4:".concat($.current),"hierarchy.lvl5:".concat($.current),"hierarchy.lvl6:".concat($.current),"content:".concat($.current)],snippetEllipsisText:"…",highlightPreTag:"",highlightPostTag:"",hitsPerPage:20},c)}]).catch(function(x){throw x.name==="RetryError"&&Q("error"),x}).then(function(x){var U=x.results[0],Z=U.hits,Ir=U.nbHits,ot=kn(Z,function(at){return dr(at)},i);return M.context.searchSuggestions.length0&&(Nt(),me.current&&me.current.focus())},[X,Nt]),f.useEffect(function(){function P(){if(rt.current){var k=.01*window.innerHeight;rt.current.style.setProperty("--docsearch-vh","".concat(k,"px"))}}return P(),window.addEventListener("resize",P),function(){window.removeEventListener("resize",P)}},[]),f.createElement("div",we({ref:pe},Pr({"aria-expanded":!0}),{className:["DocSearch","DocSearch-Container",G.status==="stalled"&&"DocSearch-Container--Stalled",G.status==="error"&&"DocSearch-Container--Errored"].filter(Boolean).join(" "),role:"button",tabIndex:0,onMouseDown:function(P){P.target===P.currentTarget&&s()}}),f.createElement("div",{className:"DocSearch-Modal",ref:rt},f.createElement("header",{className:"DocSearch-SearchBar",ref:Ct},f.createElement(Oa,we({},ve,{state:G,autoFocus:X.length===0,inputRef:me,isFromSelection:!!X&&X===xt,translations:B,onClose:s}))),f.createElement("div",{className:"DocSearch-Dropdown",ref:xe},f.createElement(_a,we({},ve,{indexName:r,state:G,hitComponent:d,resultsFooterComponent:h,disableUserPersonalization:j,recentSearches:de,favoriteSearches:re,inputRef:me,translations:q,getMissingResultsUrl:N,onItemClick:function(P,k){he(P),Fe(k)||s()}}))),f.createElement("footer",{className:"DocSearch-Footer"},f.createElement(Wo,{translations:F}))))}function Pt(){return Pt=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n1&&arguments[1]!==void 0?arguments[1]:window;return typeof t=="string"?n.document.querySelector(t):t}(e.container,e.environment))}const Ka={id:"docsearch"},$a=Dr({__name:"VPAlgoliaSearchBox",props:{algolia:{}},setup(e){const t=e,n=Cr(),r=xr(),{site:o,localeIndex:a,lang:c}=Lr();Ar(i),Nr(a,i);function i(){var d,_;const l={...t.algolia,...(d=t.algolia.locales)==null?void 0:d[a.value]},p=((_=l.searchParameters)==null?void 0:_.facetFilters)??[],m=[...(Array.isArray(p)?p:[p]).filter(h=>!h.startsWith("lang:")),`lang:${c.value}`];u({...l,searchParameters:{...l.searchParameters,facetFilters:m}})}function u(l){const p=Object.assign({},l,{container:"#docsearch",navigator:{navigate({itemUrl:m}){const{pathname:d}=new URL(window.location.origin+m);r.path===d?window.location.assign(window.location.origin+m):n.go(m)}},transformItems(m){return m.map(d=>Object.assign({},d,{url:s(d.url)}))},hitComponent({hit:m,children:d}){return{__v:null,type:"a",ref:void 0,constructor:void 0,key:void 0,props:{href:m.url,children:d}}}});Wa(p)}function s(l){const{pathname:p,hash:m}=new URL(l);return p.replace(/\.html$/,o.value.cleanUrls?"":".html")+m}return(l,p)=>(Rr(),Tr("div",Ka))}});export{$a as default}; diff --git a/assets/chunks/framework.522debca.js b/assets/chunks/framework.522debca.js deleted file mode 100644 index 74b7baf..0000000 --- a/assets/chunks/framework.522debca.js +++ /dev/null @@ -1,2 +0,0 @@ -function zn(e,t){const n=Object.create(null),s=e.split(",");for(let r=0;r!!n[r.toLowerCase()]:r=>!!n[r]}function Yn(e){if(N(e)){const t={};for(let n=0;n{if(n){const s=n.split(wi);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Jn(e){let t="";if(ie(e))t=e;else if(N(e))for(let n=0;nie(e)?e:e==null?"":N(e)||ee(e)&&(e.toString===ar||!j(e.toString))?JSON.stringify(e,cr,2):String(e),cr=(e,t)=>t&&t.__v_isRef?cr(e,t.value):ut(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r])=>(n[`${s} =>`]=r,n),{})}:fr(t)?{[`Set(${t.size})`]:[...t.values()]}:ee(t)&&!N(t)&&!dr(t)?String(t):t,te={},ft=[],Oe=()=>{},vi=()=>!1,Ai=/^on[^a-z]/,Nt=e=>Ai.test(e),Xn=e=>e.startsWith("onUpdate:"),le=Object.assign,Zn=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Ri=Object.prototype.hasOwnProperty,V=(e,t)=>Ri.call(e,t),N=Array.isArray,ut=e=>fn(e)==="[object Map]",fr=e=>fn(e)==="[object Set]",j=e=>typeof e=="function",ie=e=>typeof e=="string",Qn=e=>typeof e=="symbol",ee=e=>e!==null&&typeof e=="object",ur=e=>ee(e)&&j(e.then)&&j(e.catch),ar=Object.prototype.toString,fn=e=>ar.call(e),Oi=e=>fn(e).slice(8,-1),dr=e=>fn(e)==="[object Object]",Gn=e=>ie(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,vt=zn(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),un=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Ii=/-(\w)/g,Se=un(e=>e.replace(Ii,(t,n)=>n?n.toUpperCase():"")),Fi=/\B([A-Z])/g,it=un(e=>e.replace(Fi,"-$1").toLowerCase()),an=un(e=>e.charAt(0).toUpperCase()+e.slice(1)),Zt=un(e=>e?`on${an(e)}`:""),Ft=(e,t)=>!Object.is(e,t),xn=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},Pi=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Mi=e=>{const t=ie(e)?Number(e):NaN;return isNaN(t)?e:t};let ws;const Si=()=>ws||(ws=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});let _e;class Li{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=_e,!t&&_e&&(this.index=(_e.scopes||(_e.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=_e;try{return _e=this,t()}finally{_e=n}}}on(){_e=this}off(){_e=this.parent}stop(t){if(this._active){let n,s;for(n=0,s=this.effects.length;n{const t=new Set(e);return t.w=0,t.n=0,t},hr=e=>(e.w&qe)>0,pr=e=>(e.n&qe)>0,Hi=({deps:e})=>{if(e.length)for(let t=0;t{const{deps:t}=e;if(t.length){let n=0;for(let s=0;s{(d==="length"||d>=c)&&l.push(a)})}else switch(n!==void 0&&l.push(o.get(n)),t){case"add":N(e)?Gn(n)&&l.push(o.get("length")):(l.push(o.get(st)),ut(e)&&l.push(o.get(Ln)));break;case"delete":N(e)||(l.push(o.get(st)),ut(e)&&l.push(o.get(Ln)));break;case"set":ut(e)&&l.push(o.get(st));break}if(l.length===1)l[0]&&Nn(l[0]);else{const c=[];for(const a of l)a&&c.push(...a);Nn(es(c))}}function Nn(e,t){const n=N(e)?e:[...e];for(const s of n)s.computed&&xs(s);for(const s of n)s.computed||xs(s)}function xs(e,t){(e!==Ae||e.allowRecurse)&&(e.scheduler?e.scheduler():e.run())}const Ui=zn("__proto__,__v_isRef,__isVue"),_r=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Qn)),ji=ns(),Di=ns(!1,!0),Ki=ns(!0),Es=ki();function ki(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const s=Y(this);for(let i=0,o=this.length;i{e[t]=function(...n){wt();const s=Y(this)[t].apply(this,n);return Ct(),s}}),e}function Wi(e){const t=Y(this);return pe(t,"has",e),t.hasOwnProperty(e)}function ns(e=!1,t=!1){return function(s,r,i){if(r==="__v_isReactive")return!e;if(r==="__v_isReadonly")return e;if(r==="__v_isShallow")return t;if(r==="__v_raw"&&i===(e?t?oo:xr:t?Cr:wr).get(s))return s;const o=N(s);if(!e){if(o&&V(Es,r))return Reflect.get(Es,r,i);if(r==="hasOwnProperty")return Wi}const l=Reflect.get(s,r,i);return(Qn(r)?_r.has(r):Ui(r))||(e||pe(s,"get",r),t)?l:fe(l)?o&&Gn(r)?l:l.value:ee(l)?e?Er(l):hn(l):l}}const qi=br(),Vi=br(!0);function br(e=!1){return function(n,s,r,i){let o=n[s];if(mt(o)&&fe(o)&&!fe(r))return!1;if(!e&&(!nn(r)&&!mt(r)&&(o=Y(o),r=Y(r)),!N(n)&&fe(o)&&!fe(r)))return o.value=r,!0;const l=N(n)&&Gn(s)?Number(s)e,dn=e=>Reflect.getPrototypeOf(e);function Kt(e,t,n=!1,s=!1){e=e.__v_raw;const r=Y(e),i=Y(t);n||(t!==i&&pe(r,"get",t),pe(r,"get",i));const{has:o}=dn(r),l=s?ss:n?os:Pt;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 kt(e,t=!1){const n=this.__v_raw,s=Y(n),r=Y(e);return t||(e!==r&&pe(s,"has",e),pe(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function Wt(e,t=!1){return e=e.__v_raw,!t&&pe(Y(e),"iterate",st),Reflect.get(e,"size",e)}function Ts(e){e=Y(e);const t=Y(this);return dn(t).has.call(t,e)||(t.add(e),$e(t,"add",e,e)),this}function vs(e,t){t=Y(t);const n=Y(this),{has:s,get:r}=dn(n);let i=s.call(n,e);i||(e=Y(e),i=s.call(n,e));const o=r.call(n,e);return n.set(e,t),i?Ft(t,o)&&$e(n,"set",e,t):$e(n,"add",e,t),this}function As(e){const t=Y(this),{has:n,get:s}=dn(t);let r=n.call(t,e);r||(e=Y(e),r=n.call(t,e)),s&&s.call(t,e);const i=t.delete(e);return r&&$e(t,"delete",e,void 0),i}function Rs(){const e=Y(this),t=e.size!==0,n=e.clear();return t&&$e(e,"clear",void 0,void 0),n}function qt(e,t){return function(s,r){const i=this,o=i.__v_raw,l=Y(o),c=t?ss:e?os:Pt;return!e&&pe(l,"iterate",st),o.forEach((a,d)=>s.call(r,c(a),c(d),i))}}function Vt(e,t,n){return function(...s){const r=this.__v_raw,i=Y(r),o=ut(i),l=e==="entries"||e===Symbol.iterator&&o,c=e==="keys"&&o,a=r[e](...s),d=n?ss:t?os:Pt;return!t&&pe(i,"iterate",c?Ln:st),{next(){const{value:p,done:y}=a.next();return y?{value:p,done:y}:{value:l?[d(p[0]),d(p[1])]:d(p),done:y}},[Symbol.iterator](){return this}}}}function Be(e){return function(...t){return e==="delete"?!1:this}}function Qi(){const e={get(i){return Kt(this,i)},get size(){return Wt(this)},has:kt,add:Ts,set:vs,delete:As,clear:Rs,forEach:qt(!1,!1)},t={get(i){return Kt(this,i,!1,!0)},get size(){return Wt(this)},has:kt,add:Ts,set:vs,delete:As,clear:Rs,forEach:qt(!1,!0)},n={get(i){return Kt(this,i,!0)},get size(){return Wt(this,!0)},has(i){return kt.call(this,i,!0)},add:Be("add"),set:Be("set"),delete:Be("delete"),clear:Be("clear"),forEach:qt(!0,!1)},s={get(i){return Kt(this,i,!0,!0)},get size(){return Wt(this,!0)},has(i){return kt.call(this,i,!0)},add:Be("add"),set:Be("set"),delete:Be("delete"),clear:Be("clear"),forEach:qt(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=Vt(i,!1,!1),n[i]=Vt(i,!0,!1),t[i]=Vt(i,!1,!0),s[i]=Vt(i,!0,!0)}),[e,n,t,s]}const[Gi,eo,to,no]=Qi();function rs(e,t){const n=t?e?no:to:e?eo:Gi;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(V(n,r)&&r in s?n:s,r,i)}const so={get:rs(!1,!1)},ro={get:rs(!1,!0)},io={get:rs(!0,!1)},wr=new WeakMap,Cr=new WeakMap,xr=new WeakMap,oo=new WeakMap;function lo(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function co(e){return e.__v_skip||!Object.isExtensible(e)?0:lo(Oi(e))}function hn(e){return mt(e)?e:is(e,!1,yr,so,wr)}function fo(e){return is(e,!1,Zi,ro,Cr)}function Er(e){return is(e,!0,Xi,io,xr)}function is(e,t,n,s,r){if(!ee(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=co(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function at(e){return mt(e)?at(e.__v_raw):!!(e&&e.__v_isReactive)}function mt(e){return!!(e&&e.__v_isReadonly)}function nn(e){return!!(e&&e.__v_isShallow)}function Tr(e){return at(e)||mt(e)}function Y(e){const t=e&&e.__v_raw;return t?Y(t):e}function At(e){return tn(e,"__v_skip",!0),e}const Pt=e=>ee(e)?hn(e):e,os=e=>ee(e)?Er(e):e;function vr(e){ke&&Ae&&(e=Y(e),mr(e.dep||(e.dep=es())))}function Ar(e,t){e=Y(e);const n=e.dep;n&&Nn(n)}function fe(e){return!!(e&&e.__v_isRef===!0)}function Rt(e){return Rr(e,!1)}function uo(e){return Rr(e,!0)}function Rr(e,t){return fe(e)?e:new ao(e,t)}class ao{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:Y(t),this._value=n?t:Pt(t)}get value(){return vr(this),this._value}set value(t){const n=this.__v_isShallow||nn(t)||mt(t);t=n?t:Y(t),Ft(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:Pt(t),Ar(this))}}function ho(e){return fe(e)?e.value:e}const po={get:(e,t,n)=>ho(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return fe(r)&&!fe(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function Or(e){return at(e)?e:new Proxy(e,po)}var Ir;class go{constructor(t,n,s,r){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this[Ir]=!1,this._dirty=!0,this.effect=new ts(t,()=>{this._dirty||(this._dirty=!0,Ar(this))}),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=s}get value(){const t=Y(this);return vr(t),(t._dirty||!t._cacheable)&&(t._dirty=!1,t._value=t.effect.run()),t._value}set value(t){this._setter(t)}}Ir="__v_isReadonly";function mo(e,t,n=!1){let s,r;const i=j(e);return i?(s=e,r=Oe):(s=e.get,r=e.set),new go(s,r,i||!r,n)}function We(e,t,n,s){let r;try{r=s?e(...s):e()}catch(i){$t(i,t,n)}return r}function xe(e,t,n,s){if(j(e)){const i=We(e,t,n,s);return i&&ur(i)&&i.catch(o=>{$t(o,t,n)}),i}const r=[];for(let i=0;i>>1;St(ce[s])Me&&ce.splice(t,1)}function wo(e){N(e)?dt.push(...e):(!Ne||!Ne.includes(e,e.allowRecurse?Ge+1:Ge))&&dt.push(e),Mr()}function Os(e,t=Mt?Me+1:0){for(;tSt(n)-St(s)),Ge=0;Gee.id==null?1/0:e.id,Co=(e,t)=>{const n=St(e)-St(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Sr(e){$n=!1,Mt=!0,ce.sort(Co);const t=Oe;try{for(Me=0;Meie(T)?T.trim():T)),p&&(r=n.map(Pi))}let l,c=s[l=Zt(t)]||s[l=Zt(Se(t))];!c&&i&&(c=s[l=Zt(it(t))]),c&&xe(c,e,6,r);const a=s[l+"Once"];if(a){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,xe(a,e,6,r)}}function Lr(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(!j(e)){const c=a=>{const d=Lr(a,t,!0);d&&(l=!0,le(o,d))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!l?(ee(e)&&s.set(e,null),null):(N(i)?i.forEach(c=>o[c]=null):le(o,i),ee(e)&&s.set(e,o),o)}function gn(e,t){return!e||!Nt(t)?!1:(t=t.slice(2).replace(/Once$/,""),V(e,t[0].toLowerCase()+t.slice(1))||V(e,it(t))||V(e,t))}let ue=null,mn=null;function rn(e){const t=ue;return ue=e,mn=e&&e.type.__scopeId||null,t}function vc(e){mn=e}function Ac(){mn=null}function Eo(e,t=ue,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&Bs(-1);const i=rn(t);let o;try{o=e(...r)}finally{rn(i),s._d&&Bs(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function En(e){const{type:t,vnode:n,proxy:s,withProxy:r,props:i,propsOptions:[o],slots:l,attrs:c,emit:a,render:d,renderCache:p,data:y,setupState:T,ctx:R,inheritAttrs:I}=e;let B,g;const w=rn(e);try{if(n.shapeFlag&4){const H=r||s;B=ve(d.call(H,H,p,i,T,y,R)),g=c}else{const H=t;B=ve(H.length>1?H(i,{attrs:c,slots:l,emit:a}):H(i,null)),g=t.props?c:To(c)}}catch(H){It.length=0,$t(H,e,1),B=re(be)}let O=B;if(g&&I!==!1){const H=Object.keys(g),{shapeFlag:K}=O;H.length&&K&7&&(o&&H.some(Xn)&&(g=vo(g,o)),O=Ve(O,g))}return n.dirs&&(O=Ve(O),O.dirs=O.dirs?O.dirs.concat(n.dirs):n.dirs),n.transition&&(O.transition=n.transition),B=O,rn(w),B}const To=e=>{let t;for(const n in e)(n==="class"||n==="style"||Nt(n))&&((t||(t={}))[n]=e[n]);return t},vo=(e,t)=>{const n={};for(const s in e)(!Xn(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function Ao(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:c}=t,a=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?Is(s,o,a):!!o;if(c&8){const d=t.dynamicProps;for(let p=0;pe.__isSuspense;function Nr(e,t){t&&t.pendingBranch?N(e)?t.effects.push(...e):t.effects.push(e):wo(e)}function Io(e,t){if(se){let n=se.provides;const s=se.parent&&se.parent.provides;s===n&&(n=se.provides=Object.create(s)),n[e]=t}}function ht(e,t,n=!1){const s=se||ue;if(s){const r=s.parent==null?s.vnode.appContext&&s.vnode.appContext.provides:s.parent.provides;if(r&&e in r)return r[e];if(arguments.length>1)return n&&j(t)?t.call(s.proxy):t}}function Fo(e,t){return _n(e,null,t)}function Po(e,t){return _n(e,null,{flush:"post"})}const zt={};function Qt(e,t,n){return _n(e,t,n)}function _n(e,t,{immediate:n,deep:s,flush:r,onTrack:i,onTrigger:o}=te){const l=$i()===(se==null?void 0:se.scope)?se:null;let c,a=!1,d=!1;if(fe(e)?(c=()=>e.value,a=nn(e)):at(e)?(c=()=>e,s=!0):N(e)?(d=!0,a=e.some(O=>at(O)||nn(O)),c=()=>e.map(O=>{if(fe(O))return O.value;if(at(O))return ct(O);if(j(O))return We(O,l,2)})):j(e)?t?c=()=>We(e,l,2):c=()=>{if(!(l&&l.isUnmounted))return p&&p(),xe(e,l,3,[y])}:c=Oe,t&&s){const O=c;c=()=>ct(O())}let p,y=O=>{p=g.onStop=()=>{We(O,l,4)}},T;if(yt)if(y=Oe,t?n&&xe(t,l,3,[c(),d?[]:void 0,y]):c(),r==="sync"){const O=El();T=O.__watcherHandles||(O.__watcherHandles=[])}else return Oe;let R=d?new Array(e.length).fill(zt):zt;const I=()=>{if(g.active)if(t){const O=g.run();(s||a||(d?O.some((H,K)=>Ft(H,R[K])):Ft(O,R)))&&(p&&p(),xe(t,l,3,[O,R===zt?void 0:d&&R[0]===zt?[]:R,y]),R=O)}else g.run()};I.allowRecurse=!!t;let B;r==="sync"?B=I:r==="post"?B=()=>he(I,l&&l.suspense):(I.pre=!0,l&&(I.id=l.uid),B=()=>pn(I));const g=new ts(c,B);t?n?I():R=g.run():r==="post"?he(g.run.bind(g),l&&l.suspense):g.run();const w=()=>{g.stop(),l&&l.scope&&Zn(l.scope.effects,g)};return T&&T.push(w),w}function Mo(e,t,n){const s=this.proxy,r=ie(e)?e.includes(".")?$r(s,e):()=>s[e]:e.bind(s,s);let i;j(t)?i=t:(i=t.handler,n=t);const o=se;bt(this);const l=_n(r,i.bind(s),n);return o?bt(o):rt(),l}function $r(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r{ct(n,t)});else if(dr(e))for(const n in e)ct(e[n],t);return e}function So(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Bt(()=>{e.isMounted=!0}),Dr(()=>{e.isUnmounting=!0}),e}const ye=[Function,Array],Lo={name:"BaseTransition",props:{mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:ye,onEnter:ye,onAfterEnter:ye,onEnterCancelled:ye,onBeforeLeave:ye,onLeave:ye,onAfterLeave:ye,onLeaveCancelled:ye,onBeforeAppear:ye,onAppear:ye,onAfterAppear:ye,onAppearCancelled:ye},setup(e,{slots:t}){const n=hs(),s=So();let r;return()=>{const i=t.default&&Ur(t.default(),!0);if(!i||!i.length)return;let o=i[0];if(i.length>1){for(const I of i)if(I.type!==be){o=I;break}}const l=Y(e),{mode:c}=l;if(s.isLeaving)return Tn(o);const a=Fs(o);if(!a)return Tn(o);const d=Hn(a,l,s,n);Bn(a,d);const p=n.subTree,y=p&&Fs(p);let T=!1;const{getTransitionKey:R}=a.type;if(R){const I=R();r===void 0?r=I:I!==r&&(r=I,T=!0)}if(y&&y.type!==be&&(!et(a,y)||T)){const I=Hn(y,l,s,n);if(Bn(y,I),c==="out-in")return s.isLeaving=!0,I.afterLeave=()=>{s.isLeaving=!1,n.update.active!==!1&&n.update()},Tn(o);c==="in-out"&&a.type!==be&&(I.delayLeave=(B,g,w)=>{const O=Br(s,y);O[String(y.key)]=y,B._leaveCb=()=>{g(),B._leaveCb=void 0,delete d.delayedLeave},d.delayedLeave=w})}return o}}},Hr=Lo;function Br(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 Hn(e,t,n,s){const{appear:r,mode:i,persisted:o=!1,onBeforeEnter:l,onEnter:c,onAfterEnter:a,onEnterCancelled:d,onBeforeLeave:p,onLeave:y,onAfterLeave:T,onLeaveCancelled:R,onBeforeAppear:I,onAppear:B,onAfterAppear:g,onAppearCancelled:w}=t,O=String(e.key),H=Br(n,e),K=(A,D)=>{A&&xe(A,s,9,D)},Z=(A,D)=>{const U=D[1];K(A,D),N(A)?A.every(z=>z.length<=1)&&U():A.length<=1&&U()},q={mode:i,persisted:o,beforeEnter(A){let D=l;if(!n.isMounted)if(r)D=I||l;else return;A._leaveCb&&A._leaveCb(!0);const U=H[O];U&&et(e,U)&&U.el._leaveCb&&U.el._leaveCb(),K(D,[A])},enter(A){let D=c,U=a,z=d;if(!n.isMounted)if(r)D=B||c,U=g||a,z=w||d;else return;let F=!1;const k=A._enterCb=M=>{F||(F=!0,M?K(z,[A]):K(U,[A]),q.delayedLeave&&q.delayedLeave(),A._enterCb=void 0)};D?Z(D,[A,k]):k()},leave(A,D){const U=String(e.key);if(A._enterCb&&A._enterCb(!0),n.isUnmounting)return D();K(p,[A]);let z=!1;const F=A._leaveCb=k=>{z||(z=!0,D(),k?K(R,[A]):K(T,[A]),A._leaveCb=void 0,H[U]===e&&delete H[U])};H[U]=e,y?Z(y,[A,F]):F()},clone(A){return Hn(A,t,n,s)}};return q}function Tn(e){if(Ht(e))return e=Ve(e),e.children=null,e}function Fs(e){return Ht(e)?e.children?e.children[0]:void 0:e}function Bn(e,t){e.shapeFlag&6&&e.component?Bn(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 Ur(e,t=!1,n){let s=[],r=0;for(let i=0;i1)for(let i=0;i!!e.type.__asyncLoader;function Rc(e){j(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:r=200,timeout:i,suspensible:o=!0,onError:l}=e;let c=null,a,d=0;const p=()=>(d++,c=null,y()),y=()=>{let T;return c||(T=c=t().catch(R=>{if(R=R instanceof Error?R:new Error(String(R)),l)return new Promise((I,B)=>{l(R,()=>I(p()),()=>B(R),d+1)});throw R}).then(R=>T!==c&&c?c:(R&&(R.__esModule||R[Symbol.toStringTag]==="Module")&&(R=R.default),a=R,R)))};return cs({name:"AsyncComponentWrapper",__asyncLoader:y,get __asyncResolved(){return a},setup(){const T=se;if(a)return()=>vn(a,T);const R=w=>{c=null,$t(w,T,13,!s)};if(o&&T.suspense||yt)return y().then(w=>()=>vn(w,T)).catch(w=>(R(w),()=>s?re(s,{error:w}):null));const I=Rt(!1),B=Rt(),g=Rt(!!r);return r&&setTimeout(()=>{g.value=!1},r),i!=null&&setTimeout(()=>{if(!I.value&&!B.value){const w=new Error(`Async component timed out after ${i}ms.`);R(w),B.value=w}},i),y().then(()=>{I.value=!0,T.parent&&Ht(T.parent.vnode)&&pn(T.parent.update)}).catch(w=>{R(w),B.value=w}),()=>{if(I.value&&a)return vn(a,T);if(B.value&&s)return re(s,{error:B.value});if(n&&!g.value)return re(n)}}})}function vn(e,t){const{ref:n,props:s,children:r,ce:i}=t.vnode,o=re(e,s,r);return o.ref=n,o.ce=i,delete t.vnode.ce,o}const Ht=e=>e.type.__isKeepAlive;function No(e,t){jr(e,"a",t)}function $o(e,t){jr(e,"da",t)}function jr(e,t,n=se){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(bn(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Ht(r.parent.vnode)&&Ho(s,t,n,r),r=r.parent}}function Ho(e,t,n,s){const r=bn(t,e,s,!0);Ut(()=>{Zn(s[t],r)},n)}function bn(e,t,n=se,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;wt(),bt(n);const l=xe(t,n,e,o);return rt(),Ct(),l});return s?r.unshift(i):r.push(i),i}}const He=e=>(t,n=se)=>(!yt||e==="sp")&&bn(e,(...s)=>t(...s),n),Bo=He("bm"),Bt=He("m"),Uo=He("bu"),jo=He("u"),Dr=He("bum"),Ut=He("um"),Do=He("sp"),Ko=He("rtg"),ko=He("rtc");function Wo(e,t=se){bn("ec",e,t)}function Pe(e,t,n,s){const r=e.dirs,i=t&&t.dirs;for(let o=0;ot(o,l,void 0,i&&i[l]));else{const o=Object.keys(e);r=new Array(o.length);for(let l=0,c=o.length;lcn(t)?!(t.type===be||t.type===de&&!Wr(t.children)):!0)?e:null}function Mc(e,t){const n={};for(const s in e)n[t&&/[A-Z]/.test(s)?`on:${s}`:Zt(s)]=e[s];return n}const Un=e=>e?ii(e)?ps(e)||e.proxy:Un(e.parent):null,Ot=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=>Un(e.parent),$root:e=>Un(e.root),$emit:e=>e.emit,$options:e=>us(e),$forceUpdate:e=>e.f||(e.f=()=>pn(e.update)),$nextTick:e=>e.n||(e.n=Pr.bind(e.proxy)),$watch:e=>Mo.bind(e)}),An=(e,t)=>e!==te&&!e.__isScriptSetup&&V(e,t),qo={get({_:e},t){const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:c}=e;let a;if(t[0]!=="$"){const T=o[t];if(T!==void 0)switch(T){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(An(s,t))return o[t]=1,s[t];if(r!==te&&V(r,t))return o[t]=2,r[t];if((a=e.propsOptions[0])&&V(a,t))return o[t]=3,i[t];if(n!==te&&V(n,t))return o[t]=4,n[t];jn&&(o[t]=0)}}const d=Ot[t];let p,y;if(d)return t==="$attrs"&&pe(e,"get",t),d(e);if((p=l.__cssModules)&&(p=p[t]))return p;if(n!==te&&V(n,t))return o[t]=4,n[t];if(y=c.config.globalProperties,V(y,t))return y[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return An(r,t)?(r[t]=n,!0):s!==te&&V(s,t)?(s[t]=n,!0):V(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&&V(e,o)||An(t,o)||(l=i[0])&&V(l,o)||V(s,o)||V(Ot,o)||V(r.config.globalProperties,o)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:V(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};let jn=!0;function Vo(e){const t=us(e),n=e.proxy,s=e.ctx;jn=!1,t.beforeCreate&&Ms(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:o,watch:l,provide:c,inject:a,created:d,beforeMount:p,mounted:y,beforeUpdate:T,updated:R,activated:I,deactivated:B,beforeDestroy:g,beforeUnmount:w,destroyed:O,unmounted:H,render:K,renderTracked:Z,renderTriggered:q,errorCaptured:A,serverPrefetch:D,expose:U,inheritAttrs:z,components:F,directives:k,filters:M}=t;if(a&&zo(a,s,null,e.appContext.config.unwrapInjectedRef),o)for(const ne in o){const Q=o[ne];j(Q)&&(s[ne]=Q.bind(n))}if(r){const ne=r.call(n,n);ee(ne)&&(e.data=hn(ne))}if(jn=!0,i)for(const ne in i){const Q=i[ne],ze=j(Q)?Q.bind(n,n):j(Q.get)?Q.get.bind(n,n):Oe,jt=!j(Q)&&j(Q.set)?Q.set.bind(n):Oe,Ye=Te({get:ze,set:jt});Object.defineProperty(s,ne,{enumerable:!0,configurable:!0,get:()=>Ye.value,set:Ie=>Ye.value=Ie})}if(l)for(const ne in l)qr(l[ne],s,n,ne);if(c){const ne=j(c)?c.call(n):c;Reflect.ownKeys(ne).forEach(Q=>{Io(Q,ne[Q])})}d&&Ms(d,e,"c");function J(ne,Q){N(Q)?Q.forEach(ze=>ne(ze.bind(n))):Q&&ne(Q.bind(n))}if(J(Bo,p),J(Bt,y),J(Uo,T),J(jo,R),J(No,I),J($o,B),J(Wo,A),J(ko,Z),J(Ko,q),J(Dr,w),J(Ut,H),J(Do,D),N(U))if(U.length){const ne=e.exposed||(e.exposed={});U.forEach(Q=>{Object.defineProperty(ne,Q,{get:()=>n[Q],set:ze=>n[Q]=ze})})}else e.exposed||(e.exposed={});K&&e.render===Oe&&(e.render=K),z!=null&&(e.inheritAttrs=z),F&&(e.components=F),k&&(e.directives=k)}function zo(e,t,n=Oe,s=!1){N(e)&&(e=Dn(e));for(const r in e){const i=e[r];let o;ee(i)?"default"in i?o=ht(i.from||r,i.default,!0):o=ht(i.from||r):o=ht(i),fe(o)&&s?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>o.value,set:l=>o.value=l}):t[r]=o}}function Ms(e,t,n){xe(N(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function qr(e,t,n,s){const r=s.includes(".")?$r(n,s):()=>n[s];if(ie(e)){const i=t[e];j(i)&&Qt(r,i)}else if(j(e))Qt(r,e.bind(n));else if(ee(e))if(N(e))e.forEach(i=>qr(i,t,n,s));else{const i=j(e.handler)?e.handler.bind(n):t[e.handler];j(i)&&Qt(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(a=>on(c,a,o,!0)),on(c,t,o)),ee(t)&&i.set(t,c),c}function on(e,t,n,s=!1){const{mixins:r,extends:i}=t;i&&on(e,i,n,!0),r&&r.forEach(o=>on(e,o,n,!0));for(const o in t)if(!(s&&o==="expose")){const l=Yo[o]||n&&n[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const Yo={data:Ss,props:Qe,emits:Qe,methods:Qe,computed:Qe,beforeCreate:ae,created:ae,beforeMount:ae,mounted:ae,beforeUpdate:ae,updated:ae,beforeDestroy:ae,beforeUnmount:ae,destroyed:ae,unmounted:ae,activated:ae,deactivated:ae,errorCaptured:ae,serverPrefetch:ae,components:Qe,directives:Qe,watch:Xo,provide:Ss,inject:Jo};function Ss(e,t){return t?e?function(){return le(j(e)?e.call(this,this):e,j(t)?t.call(this,this):t)}:t:e}function Jo(e,t){return Qe(Dn(e),Dn(t))}function Dn(e){if(N(e)){const t={};for(let n=0;n0)&&!(o&16)){if(o&8){const d=e.vnode.dynamicProps;for(let p=0;p{c=!0;const[y,T]=zr(p,t,!0);le(o,y),T&&l.push(...T)};!n&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!i&&!c)return ee(e)&&s.set(e,ft),ft;if(N(i))for(let d=0;d-1,T[1]=I<0||R-1||V(T,"default"))&&l.push(p)}}}const a=[o,l];return ee(e)&&s.set(e,a),a}function Ls(e){return e[0]!=="$"}function Ns(e){const t=e&&e.toString().match(/^\s*(function|class) (\w+)/);return t?t[2]:e===null?"null":""}function $s(e,t){return Ns(e)===Ns(t)}function Hs(e,t){return N(t)?t.findIndex(n=>$s(n,e)):j(t)&&$s(t,e)?0:-1}const Yr=e=>e[0]==="_"||e==="$stable",as=e=>N(e)?e.map(ve):[ve(e)],Go=(e,t,n)=>{if(t._n)return t;const s=Eo((...r)=>as(t(...r)),n);return s._c=!1,s},Jr=(e,t,n)=>{const s=e._ctx;for(const r in e){if(Yr(r))continue;const i=e[r];if(j(i))t[r]=Go(r,i,s);else if(i!=null){const o=as(i);t[r]=()=>o}}},Xr=(e,t)=>{const n=as(t);e.slots.default=()=>n},el=(e,t)=>{if(e.vnode.shapeFlag&32){const n=t._;n?(e.slots=Y(t),tn(t,"_",n)):Jr(t,e.slots={})}else e.slots={},t&&Xr(e,t);tn(e.slots,yn,1)},tl=(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:(le(r,t),!n&&l===1&&delete r._):(i=!t.$stable,Jr(t,r)),o=t}else t&&(Xr(e,t),o={default:1});if(i)for(const l in r)!Yr(l)&&!(l in o)&&delete r[l]};function Zr(){return{app:null,config:{isNativeTag:vi,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let nl=0;function sl(e,t){return function(s,r=null){j(s)||(s=Object.assign({},s)),r!=null&&!ee(r)&&(r=null);const i=Zr(),o=new Set;let l=!1;const c=i.app={_uid:nl++,_component:s,_props:r,_container:null,_context:i,_instance:null,version:Tl,get config(){return i.config},set config(a){},use(a,...d){return o.has(a)||(a&&j(a.install)?(o.add(a),a.install(c,...d)):j(a)&&(o.add(a),a(c,...d))),c},mixin(a){return i.mixins.includes(a)||i.mixins.push(a),c},component(a,d){return d?(i.components[a]=d,c):i.components[a]},directive(a,d){return d?(i.directives[a]=d,c):i.directives[a]},mount(a,d,p){if(!l){const y=re(s,r);return y.appContext=i,d&&t?t(y,a):e(y,a,p),l=!0,c._container=a,a.__vue_app__=c,ps(y.component)||y.component.proxy}},unmount(){l&&(e(null,c._container),delete c._container.__vue_app__)},provide(a,d){return i.provides[a]=d,c}};return c}}function ln(e,t,n,s,r=!1){if(N(e)){e.forEach((y,T)=>ln(y,t&&(N(t)?t[T]:t),n,s,r));return}if(pt(s)&&!r)return;const i=s.shapeFlag&4?ps(s.component)||s.component.proxy:s.el,o=r?null:i,{i:l,r:c}=e,a=t&&t.r,d=l.refs===te?l.refs={}:l.refs,p=l.setupState;if(a!=null&&a!==c&&(ie(a)?(d[a]=null,V(p,a)&&(p[a]=null)):fe(a)&&(a.value=null)),j(c))We(c,l,12,[o,d]);else{const y=ie(c),T=fe(c);if(y||T){const R=()=>{if(e.f){const I=y?V(p,c)?p[c]:d[c]:c.value;r?N(I)&&Zn(I,i):N(I)?I.includes(i)||I.push(i):y?(d[c]=[i],V(p,c)&&(p[c]=d[c])):(c.value=[i],e.k&&(d[e.k]=c.value))}else y?(d[c]=o,V(p,c)&&(p[c]=o)):T&&(c.value=o,e.k&&(d[e.k]=o))};o?(R.id=-1,he(R,n)):R()}}}let Ue=!1;const Yt=e=>/svg/.test(e.namespaceURI)&&e.tagName!=="foreignObject",Jt=e=>e.nodeType===8;function rl(e){const{mt:t,p:n,o:{patchProp:s,createText:r,nextSibling:i,parentNode:o,remove:l,insert:c,createComment:a}}=e,d=(g,w)=>{if(!w.hasChildNodes()){n(null,g,w),sn(),w._vnode=g;return}Ue=!1,p(w.firstChild,g,null,null,null),sn(),w._vnode=g,Ue&&console.error("Hydration completed but contains mismatches.")},p=(g,w,O,H,K,Z=!1)=>{const q=Jt(g)&&g.data==="[",A=()=>I(g,w,O,H,K,q),{type:D,ref:U,shapeFlag:z,patchFlag:F}=w;let k=g.nodeType;w.el=g,F===-2&&(Z=!1,w.dynamicChildren=null);let M=null;switch(D){case _t:k!==3?w.children===""?(c(w.el=r(""),o(g),g),M=g):M=A():(g.data!==w.children&&(Ue=!0,g.data=w.children),M=i(g));break;case be:k!==8||q?M=A():M=i(g);break;case gt:if(q&&(g=i(g),k=g.nodeType),k===1||k===3){M=g;const ge=!w.children.length;for(let J=0;J{Z=Z||!!w.dynamicChildren;const{type:q,props:A,patchFlag:D,shapeFlag:U,dirs:z}=w,F=q==="input"&&z||q==="option";if(F||D!==-1){if(z&&Pe(w,null,O,"created"),A)if(F||!Z||D&48)for(const M in A)(F&&M.endsWith("value")||Nt(M)&&!vt(M))&&s(g,M,null,A[M],!1,void 0,O);else A.onClick&&s(g,"onClick",null,A.onClick,!1,void 0,O);let k;if((k=A&&A.onVnodeBeforeMount)&&we(k,O,w),z&&Pe(w,null,O,"beforeMount"),((k=A&&A.onVnodeMounted)||z)&&Nr(()=>{k&&we(k,O,w),z&&Pe(w,null,O,"mounted")},H),U&16&&!(A&&(A.innerHTML||A.textContent))){let M=T(g.firstChild,w,g,O,H,K,Z);for(;M;){Ue=!0;const ge=M;M=M.nextSibling,l(ge)}}else U&8&&g.textContent!==w.children&&(Ue=!0,g.textContent=w.children)}return g.nextSibling},T=(g,w,O,H,K,Z,q)=>{q=q||!!w.dynamicChildren;const A=w.children,D=A.length;for(let U=0;U{const{slotScopeIds:q}=w;q&&(K=K?K.concat(q):q);const A=o(g),D=T(i(g),w,A,O,H,K,Z);return D&&Jt(D)&&D.data==="]"?i(w.anchor=D):(Ue=!0,c(w.anchor=a("]"),A,D),D)},I=(g,w,O,H,K,Z)=>{if(Ue=!0,w.el=null,Z){const D=B(g);for(;;){const U=i(g);if(U&&U!==D)l(U);else break}}const q=i(g),A=o(g);return l(g),n(null,w,A,q,O,H,Yt(A),K),q},B=g=>{let w=0;for(;g;)if(g=i(g),g&&Jt(g)&&(g.data==="["&&w++,g.data==="]")){if(w===0)return i(g);w--}return g};return[d,p]}const he=Nr;function il(e){return ol(e,rl)}function ol(e,t){const n=Si();n.__VUE__=!0;const{insert:s,remove:r,patchProp:i,createElement:o,createText:l,createComment:c,setText:a,setElementText:d,parentNode:p,nextSibling:y,setScopeId:T=Oe,insertStaticContent:R}=e,I=(f,u,h,_=null,m=null,x=null,v=!1,C=null,E=!!u.dynamicChildren)=>{if(f===u)return;f&&!et(f,u)&&(_=Dt(f),Ie(f,m,x,!0),f=null),u.patchFlag===-2&&(E=!1,u.dynamicChildren=null);const{type:b,ref:S,shapeFlag:P}=u;switch(b){case _t:B(f,u,h,_);break;case be:g(f,u,h,_);break;case gt:f==null&&w(u,h,_,v);break;case de:F(f,u,h,_,m,x,v,C,E);break;default:P&1?K(f,u,h,_,m,x,v,C,E):P&6?k(f,u,h,_,m,x,v,C,E):(P&64||P&128)&&b.process(f,u,h,_,m,x,v,C,E,ot)}S!=null&&m&&ln(S,f&&f.ref,x,u||f,!u)},B=(f,u,h,_)=>{if(f==null)s(u.el=l(u.children),h,_);else{const m=u.el=f.el;u.children!==f.children&&a(m,u.children)}},g=(f,u,h,_)=>{f==null?s(u.el=c(u.children||""),h,_):u.el=f.el},w=(f,u,h,_)=>{[f.el,f.anchor]=R(f.children,u,h,_,f.el,f.anchor)},O=({el:f,anchor:u},h,_)=>{let m;for(;f&&f!==u;)m=y(f),s(f,h,_),f=m;s(u,h,_)},H=({el:f,anchor:u})=>{let h;for(;f&&f!==u;)h=y(f),r(f),f=h;r(u)},K=(f,u,h,_,m,x,v,C,E)=>{v=v||u.type==="svg",f==null?Z(u,h,_,m,x,v,C,E):D(f,u,m,x,v,C,E)},Z=(f,u,h,_,m,x,v,C)=>{let E,b;const{type:S,props:P,shapeFlag:L,transition:$,dirs:W}=f;if(E=f.el=o(f.type,x,P&&P.is,P),L&8?d(E,f.children):L&16&&A(f.children,E,null,_,m,x&&S!=="foreignObject",v,C),W&&Pe(f,null,_,"created"),q(E,f,f.scopeId,v,_),P){for(const X in P)X!=="value"&&!vt(X)&&i(E,X,null,P[X],x,f.children,_,m,Le);"value"in P&&i(E,"value",null,P.value),(b=P.onVnodeBeforeMount)&&we(b,_,f)}W&&Pe(f,null,_,"beforeMount");const G=(!m||m&&!m.pendingBranch)&&$&&!$.persisted;G&&$.beforeEnter(E),s(E,u,h),((b=P&&P.onVnodeMounted)||G||W)&&he(()=>{b&&we(b,_,f),G&&$.enter(E),W&&Pe(f,null,_,"mounted")},m)},q=(f,u,h,_,m)=>{if(h&&T(f,h),_)for(let x=0;x<_.length;x++)T(f,_[x]);if(m){let x=m.subTree;if(u===x){const v=m.vnode;q(f,v,v.scopeId,v.slotScopeIds,m.parent)}}},A=(f,u,h,_,m,x,v,C,E=0)=>{for(let b=E;b{const C=u.el=f.el;let{patchFlag:E,dynamicChildren:b,dirs:S}=u;E|=f.patchFlag&16;const P=f.props||te,L=u.props||te;let $;h&&Je(h,!1),($=L.onVnodeBeforeUpdate)&&we($,h,u,f),S&&Pe(u,f,h,"beforeUpdate"),h&&Je(h,!0);const W=m&&u.type!=="foreignObject";if(b?U(f.dynamicChildren,b,C,h,_,W,x):v||Q(f,u,C,null,h,_,W,x,!1),E>0){if(E&16)z(C,u,P,L,h,_,m);else if(E&2&&P.class!==L.class&&i(C,"class",null,L.class,m),E&4&&i(C,"style",P.style,L.style,m),E&8){const G=u.dynamicProps;for(let X=0;X{$&&we($,h,u,f),S&&Pe(u,f,h,"updated")},_)},U=(f,u,h,_,m,x,v)=>{for(let C=0;C{if(h!==_){if(h!==te)for(const C in h)!vt(C)&&!(C in _)&&i(f,C,h[C],null,v,u.children,m,x,Le);for(const C in _){if(vt(C))continue;const E=_[C],b=h[C];E!==b&&C!=="value"&&i(f,C,b,E,v,u.children,m,x,Le)}"value"in _&&i(f,"value",h.value,_.value)}},F=(f,u,h,_,m,x,v,C,E)=>{const b=u.el=f?f.el:l(""),S=u.anchor=f?f.anchor:l("");let{patchFlag:P,dynamicChildren:L,slotScopeIds:$}=u;$&&(C=C?C.concat($):$),f==null?(s(b,h,_),s(S,h,_),A(u.children,h,S,m,x,v,C,E)):P>0&&P&64&&L&&f.dynamicChildren?(U(f.dynamicChildren,L,h,m,x,v,C),(u.key!=null||m&&u===m.subTree)&&Qr(f,u,!0)):Q(f,u,h,S,m,x,v,C,E)},k=(f,u,h,_,m,x,v,C,E)=>{u.slotScopeIds=C,f==null?u.shapeFlag&512?m.ctx.activate(u,h,_,v,E):M(u,h,_,m,x,v,E):ge(f,u,E)},M=(f,u,h,_,m,x,v)=>{const C=f.component=gl(f,_,m);if(Ht(f)&&(C.ctx.renderer=ot),ml(C),C.asyncDep){if(m&&m.registerDep(C,J),!f.el){const E=C.subTree=re(be);g(null,E,u,h)}return}J(C,f,u,h,m,x,v)},ge=(f,u,h)=>{const _=u.component=f.component;if(Ao(f,u,h))if(_.asyncDep&&!_.asyncResolved){ne(_,u,h);return}else _.next=u,yo(_.update),_.update();else u.el=f.el,_.vnode=u},J=(f,u,h,_,m,x,v)=>{const C=()=>{if(f.isMounted){let{next:S,bu:P,u:L,parent:$,vnode:W}=f,G=S,X;Je(f,!1),S?(S.el=W.el,ne(f,S,v)):S=W,P&&xn(P),(X=S.props&&S.props.onVnodeBeforeUpdate)&&we(X,$,S,W),Je(f,!0);const oe=En(f),Ee=f.subTree;f.subTree=oe,I(Ee,oe,p(Ee.el),Dt(Ee),f,m,x),S.el=oe.el,G===null&&Ro(f,oe.el),L&&he(L,m),(X=S.props&&S.props.onVnodeUpdated)&&he(()=>we(X,$,S,W),m)}else{let S;const{el:P,props:L}=u,{bm:$,m:W,parent:G}=f,X=pt(u);if(Je(f,!1),$&&xn($),!X&&(S=L&&L.onVnodeBeforeMount)&&we(S,G,u),Je(f,!0),P&&Cn){const oe=()=>{f.subTree=En(f),Cn(P,f.subTree,f,m,null)};X?u.type.__asyncLoader().then(()=>!f.isUnmounted&&oe()):oe()}else{const oe=f.subTree=En(f);I(null,oe,h,_,f,m,x),u.el=oe.el}if(W&&he(W,m),!X&&(S=L&&L.onVnodeMounted)){const oe=u;he(()=>we(S,G,oe),m)}(u.shapeFlag&256||G&&pt(G.vnode)&&G.vnode.shapeFlag&256)&&f.a&&he(f.a,m),f.isMounted=!0,u=h=_=null}},E=f.effect=new ts(C,()=>pn(b),f.scope),b=f.update=()=>E.run();b.id=f.uid,Je(f,!0),b()},ne=(f,u,h)=>{u.component=f;const _=f.vnode.props;f.vnode=u,f.next=null,Qo(f,u.props,_,h),tl(f,u.children,h),wt(),Os(),Ct()},Q=(f,u,h,_,m,x,v,C,E=!1)=>{const b=f&&f.children,S=f?f.shapeFlag:0,P=u.children,{patchFlag:L,shapeFlag:$}=u;if(L>0){if(L&128){jt(b,P,h,_,m,x,v,C,E);return}else if(L&256){ze(b,P,h,_,m,x,v,C,E);return}}$&8?(S&16&&Le(b,m,x),P!==b&&d(h,P)):S&16?$&16?jt(b,P,h,_,m,x,v,C,E):Le(b,m,x,!0):(S&8&&d(h,""),$&16&&A(P,h,_,m,x,v,C,E))},ze=(f,u,h,_,m,x,v,C,E)=>{f=f||ft,u=u||ft;const b=f.length,S=u.length,P=Math.min(b,S);let L;for(L=0;LS?Le(f,m,x,!0,!1,P):A(u,h,_,m,x,v,C,E,P)},jt=(f,u,h,_,m,x,v,C,E)=>{let b=0;const S=u.length;let P=f.length-1,L=S-1;for(;b<=P&&b<=L;){const $=f[b],W=u[b]=E?Ke(u[b]):ve(u[b]);if(et($,W))I($,W,h,null,m,x,v,C,E);else break;b++}for(;b<=P&&b<=L;){const $=f[P],W=u[L]=E?Ke(u[L]):ve(u[L]);if(et($,W))I($,W,h,null,m,x,v,C,E);else break;P--,L--}if(b>P){if(b<=L){const $=L+1,W=$L)for(;b<=P;)Ie(f[b],m,x,!0),b++;else{const $=b,W=b,G=new Map;for(b=W;b<=L;b++){const me=u[b]=E?Ke(u[b]):ve(u[b]);me.key!=null&&G.set(me.key,b)}let X,oe=0;const Ee=L-W+1;let lt=!1,_s=0;const xt=new Array(Ee);for(b=0;b=Ee){Ie(me,m,x,!0);continue}let Fe;if(me.key!=null)Fe=G.get(me.key);else for(X=W;X<=L;X++)if(xt[X-W]===0&&et(me,u[X])){Fe=X;break}Fe===void 0?Ie(me,m,x,!0):(xt[Fe-W]=b+1,Fe>=_s?_s=Fe:lt=!0,I(me,u[Fe],h,null,m,x,v,C,E),oe++)}const bs=lt?ll(xt):ft;for(X=bs.length-1,b=Ee-1;b>=0;b--){const me=W+b,Fe=u[me],ys=me+1{const{el:x,type:v,transition:C,children:E,shapeFlag:b}=f;if(b&6){Ye(f.component.subTree,u,h,_);return}if(b&128){f.suspense.move(u,h,_);return}if(b&64){v.move(f,u,h,ot);return}if(v===de){s(x,u,h);for(let P=0;PC.enter(x),m);else{const{leave:P,delayLeave:L,afterLeave:$}=C,W=()=>s(x,u,h),G=()=>{P(x,()=>{W(),$&&$()})};L?L(x,W,G):G()}else s(x,u,h)},Ie=(f,u,h,_=!1,m=!1)=>{const{type:x,props:v,ref:C,children:E,dynamicChildren:b,shapeFlag:S,patchFlag:P,dirs:L}=f;if(C!=null&&ln(C,null,h,f,!0),S&256){u.ctx.deactivate(f);return}const $=S&1&&L,W=!pt(f);let G;if(W&&(G=v&&v.onVnodeBeforeUnmount)&&we(G,u,f),S&6)bi(f.component,h,_);else{if(S&128){f.suspense.unmount(h,_);return}$&&Pe(f,null,u,"beforeUnmount"),S&64?f.type.remove(f,u,h,m,ot,_):b&&(x!==de||P>0&&P&64)?Le(b,u,h,!1,!0):(x===de&&P&384||!m&&S&16)&&Le(E,u,h),_&&gs(f)}(W&&(G=v&&v.onVnodeUnmounted)||$)&&he(()=>{G&&we(G,u,f),$&&Pe(f,null,u,"unmounted")},h)},gs=f=>{const{type:u,el:h,anchor:_,transition:m}=f;if(u===de){_i(h,_);return}if(u===gt){H(f);return}const x=()=>{r(h),m&&!m.persisted&&m.afterLeave&&m.afterLeave()};if(f.shapeFlag&1&&m&&!m.persisted){const{leave:v,delayLeave:C}=m,E=()=>v(h,x);C?C(f.el,x,E):E()}else x()},_i=(f,u)=>{let h;for(;f!==u;)h=y(f),r(f),f=h;r(u)},bi=(f,u,h)=>{const{bum:_,scope:m,update:x,subTree:v,um:C}=f;_&&xn(_),m.stop(),x&&(x.active=!1,Ie(v,f,u,h)),C&&he(C,u),he(()=>{f.isUnmounted=!0},u),u&&u.pendingBranch&&!u.isUnmounted&&f.asyncDep&&!f.asyncResolved&&f.suspenseId===u.pendingId&&(u.deps--,u.deps===0&&u.resolve())},Le=(f,u,h,_=!1,m=!1,x=0)=>{for(let v=x;vf.shapeFlag&6?Dt(f.component.subTree):f.shapeFlag&128?f.suspense.next():y(f.anchor||f.el),ms=(f,u,h)=>{f==null?u._vnode&&Ie(u._vnode,null,null,!0):I(u._vnode||null,f,u,null,null,null,h),Os(),sn(),u._vnode=f},ot={p:I,um:Ie,m:Ye,r:gs,mt:M,mc:A,pc:Q,pbc:U,n:Dt,o:e};let wn,Cn;return t&&([wn,Cn]=t(ot)),{render:ms,hydrate:wn,createApp:sl(ms,wn)}}function Je({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function Qr(e,t,n=!1){const s=e.children,r=t.children;if(N(s)&&N(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}const cl=e=>e.__isTeleport,de=Symbol(void 0),_t=Symbol(void 0),be=Symbol(void 0),gt=Symbol(void 0),It=[];let Re=null;function Gr(e=!1){It.push(Re=e?null:[])}function fl(){It.pop(),Re=It[It.length-1]||null}let Lt=1;function Bs(e){Lt+=e}function ei(e){return e.dynamicChildren=Lt>0?Re||ft:null,fl(),Lt>0&&Re&&Re.push(e),e}function Sc(e,t,n,s,r,i){return ei(si(e,t,n,s,r,i,!0))}function ti(e,t,n,s,r){return ei(re(e,t,n,s,r,!0))}function cn(e){return e?e.__v_isVNode===!0:!1}function et(e,t){return e.type===t.type&&e.key===t.key}const yn="__vInternal",ni=({key:e})=>e??null,Gt=({ref:e,ref_key:t,ref_for:n})=>e!=null?ie(e)||fe(e)||j(e)?{i:ue,r:e,k:t,f:!!n}:e:null;function si(e,t=null,n=null,s=0,r=null,i=e===de?0:1,o=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&ni(t),ref:t&&Gt(t),scopeId:mn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:ue};return l?(ds(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=ie(n)?8:16),Lt>0&&!o&&Re&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&Re.push(c),c}const re=ul;function ul(e,t=null,n=null,s=0,r=null,i=!1){if((!e||e===Kr)&&(e=be),cn(e)){const l=Ve(e,t,!0);return n&&ds(l,n),Lt>0&&!i&&Re&&(l.shapeFlag&6?Re[Re.indexOf(e)]=l:Re.push(l)),l.patchFlag|=-2,l}if(wl(e)&&(e=e.__vccOpts),t){t=al(t);let{class:l,style:c}=t;l&&!ie(l)&&(t.class=Jn(l)),ee(c)&&(Tr(c)&&!N(c)&&(c=le({},c)),t.style=Yn(c))}const o=ie(e)?1:Oo(e)?128:cl(e)?64:ee(e)?4:j(e)?2:0;return si(e,t,n,s,r,o,i,!0)}function al(e){return e?Tr(e)||yn in e?le({},e):e:null}function Ve(e,t,n=!1){const{props:s,ref:r,patchFlag:i,children:o}=e,l=t?dl(s||{},t):s;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&ni(l),ref:t&&t.ref?n&&r?N(r)?r.concat(Gt(t)):[r,Gt(t)]:Gt(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:o,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==de?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ve(e.ssContent),ssFallback:e.ssFallback&&Ve(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}}function ri(e=" ",t=0){return re(_t,null,e,t)}function Lc(e,t){const n=re(gt,null,e);return n.staticCount=t,n}function Nc(e="",t=!1){return t?(Gr(),ti(be,null,e)):re(be,null,e)}function ve(e){return e==null||typeof e=="boolean"?re(be):N(e)?re(de,null,e.slice()):typeof e=="object"?Ke(e):re(_t,null,String(e))}function Ke(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ve(e)}function ds(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(N(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),ds(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!(yn in t)?t._ctx=ue:r===3&&ue&&(ue.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else j(t)?(t={default:t,_ctx:ue},n=32):(t=String(t),s&64?(n=16,t=[ri(t)]):n=8);e.children=t,e.shapeFlag|=n}function dl(...e){const t={};for(let n=0;nse||ue,bt=e=>{se=e,e.scope.on()},rt=()=>{se&&se.scope.off(),se=null};function ii(e){return e.vnode.shapeFlag&4}let yt=!1;function ml(e,t=!1){yt=t;const{props:n,children:s}=e.vnode,r=ii(e);Zo(e,n,r,t),el(e,s);const i=r?_l(e,t):void 0;return yt=!1,i}function _l(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=At(new Proxy(e.ctx,qo));const{setup:s}=n;if(s){const r=e.setupContext=s.length>1?li(e):null;bt(e),wt();const i=We(s,e,0,[e.props,r]);if(Ct(),rt(),ur(i)){if(i.then(rt,rt),t)return i.then(o=>{Us(e,o,t)}).catch(o=>{$t(o,e,0)});e.asyncDep=i}else Us(e,i,t)}else oi(e,t)}function Us(e,t,n){j(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ee(t)&&(e.setupState=Or(t)),oi(e,n)}let js;function oi(e,t,n){const s=e.type;if(!e.render){if(!t&&js&&!s.render){const r=s.template||us(e).template;if(r){const{isCustomElement:i,compilerOptions:o}=e.appContext.config,{delimiters:l,compilerOptions:c}=s,a=le(le({isCustomElement:i,delimiters:l},o),c);s.render=js(r,a)}}e.render=s.render||Oe}bt(e),wt(),Vo(e),Ct(),rt()}function bl(e){return new Proxy(e.attrs,{get(t,n){return pe(e,"get","$attrs"),t[n]}})}function li(e){const t=s=>{e.exposed=s||{}};let n;return{get attrs(){return n||(n=bl(e))},slots:e.slots,emit:e.emit,expose:t}}function ps(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(Or(At(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Ot)return Ot[n](e)},has(t,n){return n in t||n in Ot}}))}function yl(e,t=!0){return j(e)?e.displayName||e.name:e.name||t&&e.__name}function wl(e){return j(e)&&"__vccOpts"in e}const Te=(e,t)=>mo(e,t,yt);function $c(){return Cl().slots}function Cl(){const e=hs();return e.setupContext||(e.setupContext=li(e))}function kn(e,t,n){const s=arguments.length;return s===2?ee(t)&&!N(t)?cn(t)?re(e,null,[t]):re(e,t):re(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&cn(n)&&(n=[n]),re(e,t,n))}const xl=Symbol(""),El=()=>ht(xl),Tl="3.2.47",vl="http://www.w3.org/2000/svg",tt=typeof document<"u"?document:null,Ds=tt&&tt.createElement("template"),Al={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?tt.createElementNS(vl,e):tt.createElement(e,n?{is:n}:void 0);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>tt.createTextNode(e),createComment:e=>tt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>tt.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{Ds.innerHTML=s?`${e}`:e;const l=Ds.content;if(s){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]}};function Rl(e,t,n){const s=e._vtc;s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}function Ol(e,t,n){const s=e.style,r=ie(n);if(n&&!r){if(t&&!ie(t))for(const i in t)n[i]==null&&Wn(s,i,"");for(const i in n)Wn(s,i,n[i])}else{const i=s.display;r?t!==n&&(s.cssText=n):t&&e.removeAttribute("style"),"_vod"in e&&(s.display=i)}}const Ks=/\s*!important$/;function Wn(e,t,n){if(N(n))n.forEach(s=>Wn(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=Il(e,t);Ks.test(n)?e.setProperty(it(s),n.replace(Ks,""),"important"):e[s]=n}}const ks=["Webkit","Moz","ms"],Rn={};function Il(e,t){const n=Rn[t];if(n)return n;let s=Se(t);if(s!=="filter"&&s in e)return Rn[t]=s;s=an(s);for(let r=0;rOn||($l.then(()=>On=0),On=Date.now());function Bl(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;xe(Ul(s,n.value),t,5,[s])};return n.value=e,n.attached=Hl(),n}function Ul(e,t){if(N(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 Vs=/^on[a-z]/,jl=(e,t,n,s,r=!1,i,o,l,c)=>{t==="class"?Rl(e,s,r):t==="style"?Ol(e,n,s):Nt(t)?Xn(t)||Ll(e,t,n,s,o):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Dl(e,t,s,r))?Pl(e,t,s,i,o,l,c):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Fl(e,t,s,r))};function Dl(e,t,n,s){return s?!!(t==="innerHTML"||t==="textContent"||t in e&&Vs.test(t)&&j(n)):t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA"||Vs.test(t)&&ie(n)?!1:t in e}function Hc(e){const t=hs();if(!t)return;const n=t.ut=(r=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(i=>Vn(i,r))},s=()=>{const r=e(t.proxy);qn(t.subTree,r),n(r)};Po(s),Bt(()=>{const r=new MutationObserver(s);r.observe(t.subTree.el.parentNode,{childList:!0}),Ut(()=>r.disconnect())})}function qn(e,t){if(e.shapeFlag&128){const n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{qn(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)Vn(e.el,t);else if(e.type===de)e.children.forEach(n=>qn(n,t));else if(e.type===gt){let{el:n,anchor:s}=e;for(;n&&(Vn(n,t),n!==s);)n=n.nextSibling}}function Vn(e,t){if(e.nodeType===1){const n=e.style;for(const s in t)n.setProperty(`--${s}`,t[s])}}const je="transition",Et="animation",ci=(e,{slots:t})=>kn(Hr,Kl(e),t);ci.displayName="Transition";const fi={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};ci.props=le({},Hr.props,fi);const Xe=(e,t=[])=>{N(e)?e.forEach(n=>n(...t)):e&&e(...t)},zs=e=>e?N(e)?e.some(t=>t.length>1):e.length>1:!1;function Kl(e){const t={};for(const F in e)F in fi||(t[F]=e[F]);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:a=o,appearToClass:d=l,leaveFromClass:p=`${n}-leave-from`,leaveActiveClass:y=`${n}-leave-active`,leaveToClass:T=`${n}-leave-to`}=e,R=kl(r),I=R&&R[0],B=R&&R[1],{onBeforeEnter:g,onEnter:w,onEnterCancelled:O,onLeave:H,onLeaveCancelled:K,onBeforeAppear:Z=g,onAppear:q=w,onAppearCancelled:A=O}=t,D=(F,k,M)=>{Ze(F,k?d:l),Ze(F,k?a:o),M&&M()},U=(F,k)=>{F._isLeaving=!1,Ze(F,p),Ze(F,T),Ze(F,y),k&&k()},z=F=>(k,M)=>{const ge=F?q:w,J=()=>D(k,F,M);Xe(ge,[k,J]),Ys(()=>{Ze(k,F?c:i),De(k,F?d:l),zs(ge)||Js(k,s,I,J)})};return le(t,{onBeforeEnter(F){Xe(g,[F]),De(F,i),De(F,o)},onBeforeAppear(F){Xe(Z,[F]),De(F,c),De(F,a)},onEnter:z(!1),onAppear:z(!0),onLeave(F,k){F._isLeaving=!0;const M=()=>U(F,k);De(F,p),Vl(),De(F,y),Ys(()=>{F._isLeaving&&(Ze(F,p),De(F,T),zs(H)||Js(F,s,B,M))}),Xe(H,[F,M])},onEnterCancelled(F){D(F,!1),Xe(O,[F])},onAppearCancelled(F){D(F,!0),Xe(A,[F])},onLeaveCancelled(F){U(F),Xe(K,[F])}})}function kl(e){if(e==null)return null;if(ee(e))return[In(e.enter),In(e.leave)];{const t=In(e);return[t,t]}}function In(e){return Mi(e)}function De(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e._vtc||(e._vtc=new Set)).add(t)}function Ze(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const{_vtc:n}=e;n&&(n.delete(t),n.size||(e._vtc=void 0))}function Ys(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Wl=0;function Js(e,t,n,s){const r=e._endId=++Wl,i=()=>{r===e._endId&&s()};if(n)return setTimeout(i,n);const{type:o,timeout:l,propCount:c}=ql(e,t);if(!o)return s();const a=o+"end";let d=0;const p=()=>{e.removeEventListener(a,y),i()},y=T=>{T.target===e&&++d>=c&&p()};setTimeout(()=>{d(n[R]||"").split(", "),r=s(`${je}Delay`),i=s(`${je}Duration`),o=Xs(r,i),l=s(`${Et}Delay`),c=s(`${Et}Duration`),a=Xs(l,c);let d=null,p=0,y=0;t===je?o>0&&(d=je,p=o,y=i.length):t===Et?a>0&&(d=Et,p=a,y=c.length):(p=Math.max(o,a),d=p>0?o>a?je:Et:null,y=d?d===je?i.length:c.length:0);const T=d===je&&/\b(transform|all)(,|$)/.test(s(`${je}Property`).toString());return{type:d,timeout:p,propCount:y,hasTransform:T}}function Xs(e,t){for(;e.lengthZs(n)+Zs(e[s])))}function Zs(e){return Number(e.slice(0,-1).replace(",","."))*1e3}function Vl(){return document.body.offsetHeight}const zl=["ctrl","shift","alt","meta"],Yl={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)=>zl.some(n=>e[`${n}Key`]&&!t.includes(n))},Bc=(e,t)=>(n,...s)=>{for(let r=0;rn=>{if(!("key"in n))return;const s=it(n.key);if(t.some(r=>r===s||Jl[r]===s))return e(n)},Xl=le({patchProp:jl},Al);let Fn,Qs=!1;function Zl(){return Fn=Qs?Fn:il(Xl),Qs=!0,Fn}const jc=(...e)=>{const t=Zl().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=Ql(s);if(r)return n(r,!0,r instanceof SVGElement)},t};function Ql(e){return ie(e)?document.querySelector(e):e}const Dc=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},Gl=window.__VP_SITE_DATA__,ui=/^[a-z]+:/i,Kc=/^pathname:\/\//,kc="vitepress-theme-appearance",ai=/#.*$/,ec=/(index)?\.(md|html)$/,Ce=typeof document<"u",di={relativePath:"",title:"404",description:"Not Found",headers:[],frontmatter:{sidebar:!1,layout:"page"},lastUpdated:0,isNotFound:!0};function tc(e,t,n=!1){if(t===void 0)return!1;if(e=Gs(`/${e}`),n)return new RegExp(t).test(e);if(Gs(t)!==e)return!1;const s=t.match(ai);return s?(Ce?location.hash:"")===s[0]:!0}function Gs(e){return decodeURI(e).replace(ai,"").replace(ec,"")}function nc(e){return ui.test(e)}function sc(e,t){var s,r,i,o,l,c,a;const n=Object.keys(e.locales).find(d=>d!=="root"&&!nc(d)&&tc(t,`/${d}/`,!0))||"root";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:pi(e.head,((c=e.locales[n])==null?void 0:c.head)??[]),themeConfig:{...e.themeConfig,...(a=e.locales[n])==null?void 0:a.themeConfig}})}function hi(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=rc(e.title,s);return`${n}${r}`}function rc(e,t){return t===!1?"":t===!0||t===void 0?` | ${e}`:e===t?"":` | ${t}`}function ic(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 pi(e,t){return[...e.filter(n=>!ic(t,n)),...t]}const oc=/[\u0000-\u001F"#$&*+,:;<=>?[\]^`{|}\u007F]/g,lc=/^[a-z]:/i;function er(e){const t=lc.exec(e),n=t?t[0]:"";return n+e.slice(n.length).replace(oc,"_").replace(/(^|\/)_+(?=[^/]*$)/,"$1")}const cc=Symbol(),nt=uo(Gl);function Wc(e){const t=Te(()=>sc(nt.value,e.data.relativePath));return{site:t,theme:Te(()=>t.value.themeConfig),page:Te(()=>e.data),frontmatter:Te(()=>e.data.frontmatter),params:Te(()=>e.data.params),lang:Te(()=>t.value.lang),dir:Te(()=>t.value.dir),localeIndex:Te(()=>t.value.localeIndex||"root"),title:Te(()=>hi(t.value,e.data)),description:Te(()=>e.data.description||t.value.description),isDark:Rt(!1)}}function qc(){const e=ht(cc);if(!e)throw new Error("vitepress data not properly injected in app");return e}function fc(e,t){return`${e}${t}`.replace(/\/+/g,"/")}function tr(e){return ui.test(e)||e.startsWith(".")?e:fc(nt.value.base,e)}function uc(e){let t=e.replace(/\.html$/,"");if(t=decodeURIComponent(t),t=t.replace(/\/$/,"/index"),Ce){const n="/vue-h5-template/";t=er(t.slice(n.length).replace(/\//g,"_")||"index")+".md";let s=__VP_HASH_MAP__[t.toLowerCase()];s||(t=t.endsWith("_index.md")?t.slice(0,-9)+".md":t.slice(0,-3)+"_index.md",s=__VP_HASH_MAP__[t.toLowerCase()]),t=`${n}assets/${t}.${s}.js`}else t=`./${er(t.slice(1).replace(/\//g,"_"))}.md.js`;return t}let en=[];function Vc(e){en.push(e),Ut(()=>{en=en.filter(t=>t!==e)})}const ac=Symbol(),nr="http://a.com",dc=()=>({path:"/",component:null,data:di});function zc(e,t){const n=hn(dc()),s={route:n,go:r};async function r(l=Ce?location.href:"/"){var a,d;await((a=s.onBeforeRouteChange)==null?void 0:a.call(s,l));const c=new URL(l,nr);nt.value.cleanUrls||!c.pathname.endsWith("/")&&!c.pathname.endsWith(".html")&&(c.pathname+=".html",l=c.pathname+c.search+c.hash),Ce&&l!==location.href&&(history.replaceState({scrollPosition:window.scrollY},document.title),history.pushState(null,"",l)),await o(l),await((d=s.onAfterRouteChanged)==null?void 0:d.call(s,l))}let i=null;async function o(l,c=0,a=!1){const d=new URL(l,nr),p=i=d.pathname;try{let y=await e(p);if(i===p){i=null;const{default:T,__pageData:R}=y;if(!T)throw new Error(`Invalid route component: ${T}`);n.path=Ce?p:tr(p),n.component=At(T),n.data=At(R),Ce&&Pr(()=>{let I=nt.value.base+R.relativePath.replace(/(?:(^|\/)index)?\.md$/,"$1");if(!nt.value.cleanUrls&&!I.endsWith("/")&&(I+=".html"),I!==d.pathname&&(d.pathname=I,l=I+d.search+d.hash,history.replaceState(null,"",l)),d.hash&&!c){let B=null;try{B=document.querySelector(decodeURIComponent(d.hash))}catch(g){console.warn(g)}if(B){sr(B,d.hash);return}}window.scrollTo(0,c)})}}catch(y){if(!/fetch/.test(y.message)&&!/^\/404(\.html|\/)?$/.test(l)&&console.error(y),!a)try{const T=await fetch(nt.value.base+"hashmap.json");window.__VP_HASH_MAP__=await T.json(),await o(l,c,!0);return}catch{}i===p&&(i=null,n.path=Ce?p:tr(p),n.component=t?At(t):null,n.data=di)}}return Ce&&(window.addEventListener("click",l=>{if(l.target.closest("button"))return;const a=l.target.closest("a");if(a&&!a.closest(".vp-raw")&&(a instanceof SVGElement||!a.download)){const{target:d}=a,{href:p,origin:y,pathname:T,hash:R,search:I}=new URL(a.href instanceof SVGAnimatedString?a.href.animVal:a.href,a.baseURI),B=window.location,g=T.match(/\.\w+$/);!l.ctrlKey&&!l.shiftKey&&!l.altKey&&!l.metaKey&&d!=="_blank"&&y===B.origin&&!(g&&g[0]!==".html")&&(l.preventDefault(),T===B.pathname&&I===B.search?R&&R!==B.hash&&(history.pushState(null,"",R),window.dispatchEvent(new Event("hashchange")),sr(a,R,a.classList.contains("header-anchor"))):r(p))}},{capture:!0}),window.addEventListener("popstate",l=>{o(location.href,l.state&&l.state.scrollPosition||0)}),window.addEventListener("hashchange",l=>{l.preventDefault()})),s}function hc(){const e=ht(ac);if(!e)throw new Error("useRouter() is called without provider.");return e}function gi(){return hc().route}function sr(e,t,n=!1){let s=null;try{s=e.classList.contains("header-anchor")?e:document.querySelector(decodeURIComponent(t))}catch(r){console.warn(r)}if(s){const r=nt.value.scrollOffset;let i=0;if(typeof r=="number")i=r;else if(typeof r=="string")i=rr(r);else if(Array.isArray(r))for(const c of r){const a=rr(c);if(a){i=a;break}}const o=parseInt(window.getComputedStyle(s).paddingTop,10),l=window.scrollY+s.getBoundingClientRect().top-i+o;!n||Math.abs(l-window.scrollY)>window.innerHeight?window.scrollTo(0,l):window.scrollTo({left:0,top:l,behavior:"smooth"})}}function rr(e){const t=document.querySelector(e);if(!t)return 0;const n=t.getBoundingClientRect().bottom;return n<0?0:n+24}const ir=()=>en.forEach(e=>e()),Yc=cs({name:"VitePressContent",props:{as:{type:[Object,String],default:"div"}},setup(e){const t=gi();return()=>kn(e.as,{style:{position:"relative"}},[t.component?kn(t.component,{onVnodeMounted:ir,onVnodeUpdated:ir}):"404 Page Not Found"])}}),pc="modulepreload",gc=function(e){return"/vue-h5-template/"+e},or={},Jc=function(t,n,s){if(!n||n.length===0)return t();const r=document.getElementsByTagName("link");return Promise.all(n.map(i=>{if(i=gc(i),i in or)return;or[i]=!0;const o=i.endsWith(".css"),l=o?'[rel="stylesheet"]':"";if(!!s)for(let d=r.length-1;d>=0;d--){const p=r[d];if(p.href===i&&(!o||p.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${i}"]${l}`))return;const a=document.createElement("link");if(a.rel=o?"stylesheet":pc,o||(a.as="script",a.crossOrigin=""),a.href=i,document.head.appendChild(a),o)return new Promise((d,p)=>{a.addEventListener("load",d),a.addEventListener("error",()=>p(new Error(`Unable to preload CSS for ${i}`)))})})).then(()=>t())};function Xc(e,t){let n=[],s=!0;const r=i=>{if(s){s=!1;return}n.forEach(o=>document.head.removeChild(o)),n=[],i.forEach(o=>{const l=mc(o);document.head.appendChild(l),n.push(l)})};Fo(()=>{const i=e.data,o=t.value,l=i&&i.description,c=i&&i.frontmatter.head||[];document.title=hi(o,i),document.querySelector("meta[name=description]").setAttribute("content",l||o.description),r(pi(o.head,bc(c)))})}function mc([e,t,n]){const s=document.createElement(e);for(const r in t)s.setAttribute(r,t[r]);return n&&(s.innerHTML=n),s}function _c(e){return e[0]==="meta"&&e[1]&&e[1].name==="description"}function bc(e){return e.filter(t=>!_c(t))}const Pn=new Set,mi=()=>document.createElement("link"),yc=e=>{const t=mi();t.rel="prefetch",t.href=e,document.head.appendChild(t)},wc=e=>{const t=new XMLHttpRequest;t.open("GET",e,t.withCredentials=!0),t.send()};let Xt;const Cc=Ce&&(Xt=mi())&&Xt.relList&&Xt.relList.supports&&Xt.relList.supports("prefetch")?yc:wc;function Zc(){if(!Ce||!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(!Pn.has(c)){Pn.add(c);const a=uc(c);Cc(a)}}})}),t(()=>{document.querySelectorAll("#app a").forEach(i=>{const{target:o}=i,{hostname:l,pathname:c}=new URL(i.href instanceof SVGAnimatedString?i.href.animVal:i.href,i.baseURI),a=c.match(/\.\w+$/);a&&a[0]!==".html"||o!=="_blank"&&l===location.hostname&&(c!==location.pathname?n.observe(i):Pn.add(c))})})};Bt(s);const r=gi();Qt(()=>r.path,s),Ut(()=>{n&&n.disconnect()})}const Qc=cs({setup(e,{slots:t}){const n=Rt(!1);return Bt(()=>{n.value=!0}),()=>n.value&&t.default?t.default():null}});function Gc(){if(Ce){const e=new Map;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);let l="";i.querySelectorAll("span.line:not(.diff.remove)").forEach(c=>l+=(c.textContent||"")+` -`),l=l.slice(0,-1),o&&(l=l.replace(/^ *(\$|>) /gm,"").trim()),xc(l).then(()=>{n.classList.add("copied"),clearTimeout(e.get(n));const c=setTimeout(()=>{n.classList.remove("copied"),n.blur(),e.delete(n)},2e3);e.set(n,c)})}})}}async function xc(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 ef(){Ce&&window.addEventListener("click",e=>{var n,s;const t=e.target;if(t.matches(".vp-code-group input")){const r=(n=t.parentElement)==null?void 0:n.parentElement,i=Array.from((r==null?void 0:r.querySelectorAll("input"))||[]).indexOf(t),o=r==null?void 0:r.querySelector('div[class*="language-"].active'),l=(s=r==null?void 0:r.querySelectorAll('div[class*="language-"]:not(.language-id)'))==null?void 0:s[i];o&&l&&o!==l&&(o.classList.remove("active"),l.classList.add("active"))}})}export{Mc as $,Nc as A,dl as B,re as C,Oc as D,Rc as E,de as F,Hc as G,Jc as H,Ic as I,ui as J,Ce as K,Er as L,Fc as M,vc as N,Ac as O,Kc as P,Lc as Q,kc as R,ht as S,ci as T,Io as U,jo as V,Vc as W,uo as X,Yn as Y,Uc as Z,Dc as _,ri as a,Po as a0,Bc as a1,$c as a2,Xc as a3,Zc as a4,Gc as a5,ef as a6,kn as a7,ac as a8,Wc as a9,cc as aa,Yc as ab,Qc as ac,nt as ad,jc as ae,zc as af,uc as ag,hc as ah,ho as b,Sc as c,cs as d,Te as e,Rt as f,hs as g,Bt as h,Pr as i,$i as j,Tc as k,Fo as l,nc as m,Jn as n,Gr as o,tr as p,tc as q,Pc as r,gi as s,Ec as t,qc as u,Ut as v,Qt as w,si as x,ti as y,Eo as z}; diff --git a/assets/chunks/framework.6241eaf2.js b/assets/chunks/framework.6241eaf2.js new file mode 100644 index 0000000..c6ca624 --- /dev/null +++ b/assets/chunks/framework.6241eaf2.js @@ -0,0 +1,2 @@ +function Yn(e,t){const n=Object.create(null),s=e.split(",");for(let r=0;r!!n[r.toLowerCase()]:r=>!!n[r]}const te={},ft=[],Pe=()=>{},xi=()=>!1,Ei=/^on[^a-z]/,Ht=e=>Ei.test(e),Jn=e=>e.startsWith("onUpdate:"),oe=Object.assign,Xn=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Ti=Object.prototype.hasOwnProperty,q=(e,t)=>Ti.call(e,t),N=Array.isArray,at=e=>an(e)==="[object Map]",hr=e=>an(e)==="[object Set]",B=e=>typeof e=="function",re=e=>typeof e=="string",Zn=e=>typeof e=="symbol",ee=e=>e!==null&&typeof e=="object",pr=e=>ee(e)&&B(e.then)&&B(e.catch),gr=Object.prototype.toString,an=e=>gr.call(e),Ai=e=>an(e).slice(8,-1),mr=e=>an(e)==="[object Object]",Qn=e=>re(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,At=Yn(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),un=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Ri=/-(\w)/g,Me=un(e=>e.replace(Ri,(t,n)=>n?n.toUpperCase():"")),Pi=/\B([A-Z])/g,rt=un(e=>e.replace(Pi,"-$1").toLowerCase()),dn=un(e=>e.charAt(0).toUpperCase()+e.slice(1)),Xt=un(e=>e?`on${dn(e)}`:""),Ft=(e,t)=>!Object.is(e,t),Tn=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},Ii=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Oi=e=>{const t=re(e)?Number(e):NaN;return isNaN(t)?e:t};let xs;const Nn=()=>xs||(xs=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Gn(e){if(N(e)){const t={};for(let n=0;n{if(n){const s=n.split(Si);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function es(e){let t="";if(re(e))t=e;else if(N(e))for(let n=0;nre(e)?e:e==null?"":N(e)||ee(e)&&(e.toString===gr||!B(e.toString))?JSON.stringify(e,br,2):String(e),br=(e,t)=>t&&t.__v_isRef?br(e,t.value):at(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r])=>(n[`${s} =>`]=r,n),{})}:hr(t)?{[`Set(${t.size})`]:[...t.values()]}:ee(t)&&!N(t)&&!mr(t)?String(t):t;let _e;class $i{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=_e,!t&&_e&&(this.index=(_e.scopes||(_e.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=_e;try{return _e=this,t()}finally{_e=n}}}on(){_e=this}off(){_e=this.parent}stop(t){if(this._active){let n,s;for(n=0,s=this.effects.length;n{const t=new Set(e);return t.w=0,t.n=0,t},yr=e=>(e.w&Ve)>0,vr=e=>(e.n&Ve)>0,Bi=({deps:e})=>{if(e.length)for(let t=0;t{const{deps:t}=e;if(t.length){let n=0;for(let s=0;s{(d==="length"||d>=c)&&l.push(a)})}else switch(n!==void 0&&l.push(o.get(n)),t){case"add":N(e)?Qn(n)&&l.push(o.get("length")):(l.push(o.get(nt)),at(e)&&l.push(o.get($n)));break;case"delete":N(e)||(l.push(o.get(nt)),at(e)&&l.push(o.get($n)));break;case"set":at(e)&&l.push(o.get(nt));break}if(l.length===1)l[0]&&Un(l[0]);else{const c=[];for(const a of l)a&&c.push(...a);Un(ts(c))}}function Un(e,t){const n=N(e)?e:[...e];for(const s of n)s.computed&&Ts(s);for(const s of n)s.computed||Ts(s)}function Ts(e,t){(e!==Ae||e.allowRecurse)&&(e.scheduler?e.scheduler():e.run())}function Ki(e,t){var n;return(n=tn.get(e))==null?void 0:n.get(t)}const ki=Yn("__proto__,__v_isRef,__isVue"),xr=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Zn)),Wi=ss(),Vi=ss(!1,!0),qi=ss(!0),As=zi();function zi(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const s=z(this);for(let i=0,o=this.length;i{e[t]=function(...n){vt();const s=z(this)[t].apply(this,n);return Ct(),s}}),e}function Yi(e){const t=z(this);return pe(t,"has",e),t.hasOwnProperty(e)}function ss(e=!1,t=!1){return function(s,r,i){if(r==="__v_isReactive")return!e;if(r==="__v_isReadonly")return e;if(r==="__v_isShallow")return t;if(r==="__v_raw"&&i===(e?t?ao:Pr:t?Rr:Ar).get(s))return s;const o=N(s);if(!e){if(o&&q(As,r))return Reflect.get(As,r,i);if(r==="hasOwnProperty")return Yi}const l=Reflect.get(s,r,i);return(Zn(r)?xr.has(r):ki(r))||(e||pe(s,"get",r),t)?l:ce(l)?o&&Qn(r)?l:l.value:ee(l)?e?Ir(l):pn(l):l}}const Ji=Er(),Xi=Er(!0);function Er(e=!1){return function(n,s,r,i){let o=n[s];if(mt(o)&&ce(o)&&!ce(r))return!1;if(!e&&(!nn(r)&&!mt(r)&&(o=z(o),r=z(r)),!N(n)&&ce(o)&&!ce(r)))return o.value=r,!0;const l=N(n)&&Qn(s)?Number(s)e,hn=e=>Reflect.getPrototypeOf(e);function Dt(e,t,n=!1,s=!1){e=e.__v_raw;const r=z(e),i=z(t);n||(t!==i&&pe(r,"get",t),pe(r,"get",i));const{has:o}=hn(r),l=s?rs:n?ls:St;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 Kt(e,t=!1){const n=this.__v_raw,s=z(n),r=z(e);return t||(e!==r&&pe(s,"has",e),pe(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function kt(e,t=!1){return e=e.__v_raw,!t&&pe(z(e),"iterate",nt),Reflect.get(e,"size",e)}function Rs(e){e=z(e);const t=z(this);return hn(t).has.call(t,e)||(t.add(e),He(t,"add",e,e)),this}function Ps(e,t){t=z(t);const n=z(this),{has:s,get:r}=hn(n);let i=s.call(n,e);i||(e=z(e),i=s.call(n,e));const o=r.call(n,e);return n.set(e,t),i?Ft(t,o)&&He(n,"set",e,t):He(n,"add",e,t),this}function Is(e){const t=z(this),{has:n,get:s}=hn(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&&He(t,"delete",e,void 0),i}function Os(){const e=z(this),t=e.size!==0,n=e.clear();return t&&He(e,"clear",void 0,void 0),n}function Wt(e,t){return function(s,r){const i=this,o=i.__v_raw,l=z(o),c=t?rs:e?ls:St;return!e&&pe(l,"iterate",nt),o.forEach((a,d)=>s.call(r,c(a),c(d),i))}}function Vt(e,t,n){return function(...s){const r=this.__v_raw,i=z(r),o=at(i),l=e==="entries"||e===Symbol.iterator&&o,c=e==="keys"&&o,a=r[e](...s),d=n?rs:t?ls:St;return!t&&pe(i,"iterate",c?$n:nt),{next(){const{value:p,done:y}=a.next();return y?{value:p,done:y}:{value:l?[d(p[0]),d(p[1])]:d(p),done:y}},[Symbol.iterator](){return this}}}}function Ue(e){return function(...t){return e==="delete"?!1:this}}function no(){const e={get(i){return Dt(this,i)},get size(){return kt(this)},has:Kt,add:Rs,set:Ps,delete:Is,clear:Os,forEach:Wt(!1,!1)},t={get(i){return Dt(this,i,!1,!0)},get size(){return kt(this)},has:Kt,add:Rs,set:Ps,delete:Is,clear:Os,forEach:Wt(!1,!0)},n={get(i){return Dt(this,i,!0)},get size(){return kt(this,!0)},has(i){return Kt.call(this,i,!0)},add:Ue("add"),set:Ue("set"),delete:Ue("delete"),clear:Ue("clear"),forEach:Wt(!0,!1)},s={get(i){return Dt(this,i,!0,!0)},get size(){return kt(this,!0)},has(i){return Kt.call(this,i,!0)},add:Ue("add"),set:Ue("set"),delete:Ue("delete"),clear:Ue("clear"),forEach:Wt(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=Vt(i,!1,!1),n[i]=Vt(i,!0,!1),t[i]=Vt(i,!1,!0),s[i]=Vt(i,!0,!0)}),[e,n,t,s]}const[so,ro,io,oo]=no();function is(e,t){const n=t?e?oo:io:e?ro:so;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(q(n,r)&&r in s?n:s,r,i)}const lo={get:is(!1,!1)},co={get:is(!1,!0)},fo={get:is(!0,!1)},Ar=new WeakMap,Rr=new WeakMap,Pr=new WeakMap,ao=new WeakMap;function uo(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function ho(e){return e.__v_skip||!Object.isExtensible(e)?0:uo(Ai(e))}function pn(e){return mt(e)?e:os(e,!1,Tr,lo,Ar)}function po(e){return os(e,!1,to,co,Rr)}function Ir(e){return os(e,!0,eo,fo,Pr)}function os(e,t,n,s,r){if(!ee(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=ho(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function ut(e){return mt(e)?ut(e.__v_raw):!!(e&&e.__v_isReactive)}function mt(e){return!!(e&&e.__v_isReadonly)}function nn(e){return!!(e&&e.__v_isShallow)}function Or(e){return ut(e)||mt(e)}function z(e){const t=e&&e.__v_raw;return t?z(t):e}function Rt(e){return en(e,"__v_skip",!0),e}const St=e=>ee(e)?pn(e):e,ls=e=>ee(e)?Ir(e):e;function cs(e){ke&&Ae&&(e=z(e),wr(e.dep||(e.dep=ts())))}function fs(e,t){e=z(e);const n=e.dep;n&&Un(n)}function ce(e){return!!(e&&e.__v_isRef===!0)}function dt(e){return Fr(e,!1)}function go(e){return Fr(e,!0)}function Fr(e,t){return ce(e)?e:new mo(e,t)}class mo{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:z(t),this._value=n?t:St(t)}get value(){return cs(this),this._value}set value(t){const n=this.__v_isShallow||nn(t)||mt(t);t=n?t:z(t),Ft(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:St(t),fs(this))}}function _o(e){return ce(e)?e.value:e}const bo={get:(e,t,n)=>_o(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 Sr(e){return ut(e)?e:new Proxy(e,bo)}class yo{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:s}=t(()=>cs(this),()=>fs(this));this._get=n,this._set=s}get value(){return this._get()}set value(t){this._set(t)}}function Mc(e){return new yo(e)}class vo{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return Ki(z(this._object),this._key)}}class Co{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Lc(e,t,n){return ce(e)?e:B(e)?new Co(e):ee(e)&&arguments.length>1?wo(e,t,n):dt(e)}function wo(e,t,n){const s=e[t];return ce(s)?s:new vo(e,t,n)}class xo{constructor(t,n,s,r){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this._dirty=!0,this.effect=new ns(t,()=>{this._dirty||(this._dirty=!0,fs(this))}),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=s}get value(){const t=z(this);return cs(t),(t._dirty||!t._cacheable)&&(t._dirty=!1,t._value=t.effect.run()),t._value}set value(t){this._setter(t)}}function Eo(e,t,n=!1){let s,r;const i=B(e);return i?(s=e,r=Pe):(s=e.get,r=e.set),new xo(s,r,i||!r,n)}function We(e,t,n,s){let r;try{r=s?e(...s):e()}catch(i){$t(i,t,n)}return r}function we(e,t,n,s){if(B(e)){const i=We(e,t,n,s);return i&&pr(i)&&i.catch(o=>{$t(o,t,n)}),i}const r=[];for(let i=0;i>>1;Lt(fe[s])Se&&fe.splice(t,1)}function Po(e){N(e)?ht.push(...e):(!Ne||!Ne.includes(e,e.allowRecurse?Qe+1:Qe))&&ht.push(e),Nr()}function Fs(e,t=Mt?Se+1:0){for(;tLt(n)-Lt(s)),Qe=0;Qee.id==null?1/0:e.id,Io=(e,t)=>{const n=Lt(e)-Lt(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Hr(e){jn=!1,Mt=!0,fe.sort(Io);const t=Pe;try{for(Se=0;Sere(x)?x.trim():x)),p&&(r=n.map(Ii))}let l,c=s[l=Xt(t)]||s[l=Xt(Me(t))];!c&&i&&(c=s[l=Xt(rt(t))]),c&&we(c,e,6,r);const a=s[l+"Once"];if(a){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,we(a,e,6,r)}}function $r(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(!B(e)){const c=a=>{const d=$r(a,t,!0);d&&(l=!0,oe(o,d))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!l?(ee(e)&&s.set(e,null),null):(N(i)?i.forEach(c=>o[c]=null):oe(o,i),ee(e)&&s.set(e,o),o)}function mn(e,t){return!e||!Ht(t)?!1:(t=t.slice(2).replace(/Once$/,""),q(e,t[0].toLowerCase()+t.slice(1))||q(e,rt(t))||q(e,t))}let ae=null,_n=null;function rn(e){const t=ae;return ae=e,_n=e&&e.type.__scopeId||null,t}function Nc(e){_n=e}function Hc(){_n=null}function Fo(e,t=ae,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&ks(-1);const i=rn(t);let o;try{o=e(...r)}finally{rn(i),s._d&&ks(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function An(e){const{type:t,vnode:n,proxy:s,withProxy:r,props:i,propsOptions:[o],slots:l,attrs:c,emit:a,render:d,renderCache:p,data:y,setupState:x,ctx:I,inheritAttrs:R}=e;let $,_;const b=rn(e);try{if(n.shapeFlag&4){const P=r||s;$=Te(d.call(P,P,p,i,x,y,I)),_=c}else{const P=t;$=Te(P.length>1?P(i,{attrs:c,slots:l,emit:a}):P(i,null)),_=t.props?c:So(c)}}catch(P){Ot.length=0,$t(P,e,1),$=se(be)}let H=$;if(_&&R!==!1){const P=Object.keys(_),{shapeFlag:K}=H;P.length&&K&7&&(o&&P.some(Jn)&&(_=Mo(_,o)),H=qe(H,_))}return n.dirs&&(H=qe(H),H.dirs=H.dirs?H.dirs.concat(n.dirs):n.dirs),n.transition&&(H.transition=n.transition),$=H,rn(b),$}const So=e=>{let t;for(const n in e)(n==="class"||n==="style"||Ht(n))&&((t||(t={}))[n]=e[n]);return t},Mo=(e,t)=>{const n={};for(const s in e)(!Jn(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function Lo(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:c}=t,a=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?Ss(s,o,a):!!o;if(c&8){const d=t.dynamicProps;for(let p=0;pe.__isSuspense;function Ur(e,t){t&&t.pendingBranch?N(e)?t.effects.push(...e):t.effects.push(e):Po(e)}function $o(e,t){return bn(e,null,t)}function $c(e,t){return bn(e,null,{flush:"post"})}const qt={};function Zt(e,t,n){return bn(e,t,n)}function bn(e,t,{immediate:n,deep:s,flush:r,onTrack:i,onTrigger:o}=te){var l;const c=ji()===((l=le)==null?void 0:l.scope)?le:null;let a,d=!1,p=!1;if(ce(e)?(a=()=>e.value,d=nn(e)):ut(e)?(a=()=>e,s=!0):N(e)?(p=!0,d=e.some(P=>ut(P)||nn(P)),a=()=>e.map(P=>{if(ce(P))return P.value;if(ut(P))return ct(P);if(B(P))return We(P,c,2)})):B(e)?t?a=()=>We(e,c,2):a=()=>{if(!(c&&c.isUnmounted))return y&&y(),we(e,c,3,[x])}:a=Pe,t&&s){const P=a;a=()=>ct(P())}let y,x=P=>{y=b.onStop=()=>{We(P,c,4)}},I;if(yt)if(x=Pe,t?n&&we(t,c,3,[a(),p?[]:void 0,x]):a(),r==="sync"){const P=Fl();I=P.__watcherHandles||(P.__watcherHandles=[])}else return Pe;let R=p?new Array(e.length).fill(qt):qt;const $=()=>{if(b.active)if(t){const P=b.run();(s||d||(p?P.some((K,J)=>Ft(K,R[J])):Ft(P,R)))&&(y&&y(),we(t,c,3,[P,R===qt?void 0:p&&R[0]===qt?[]:R,x]),R=P)}else b.run()};$.allowRecurse=!!t;let _;r==="sync"?_=$:r==="post"?_=()=>de($,c&&c.suspense):($.pre=!0,c&&($.id=c.uid),_=()=>gn($));const b=new ns(a,_);t?n?$():R=b.run():r==="post"?de(b.run.bind(b),c&&c.suspense):b.run();const H=()=>{b.stop(),c&&c.scope&&Xn(c.scope.effects,b)};return I&&I.push(H),H}function Uo(e,t,n){const s=this.proxy,r=re(e)?e.includes(".")?jr(s,e):()=>s[e]:e.bind(s,s);let i;B(t)?i=t:(i=t.handler,n=t);const o=le;bt(this);const l=bn(r,i.bind(s),n);return o?bt(o):st(),l}function jr(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r{ct(n,t)});else if(mr(e))for(const n in e)ct(e[n],t);return e}function Fe(e,t,n,s){const r=e.dirs,i=t&&t.dirs;for(let o=0;o{e.isMounted=!0}),Wr(()=>{e.isUnmounting=!0}),e}const ye=[Function,Array],Br={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:ye,onEnter:ye,onAfterEnter:ye,onEnterCancelled:ye,onBeforeLeave:ye,onLeave:ye,onAfterLeave:ye,onLeaveCancelled:ye,onBeforeAppear:ye,onAppear:ye,onAfterAppear:ye,onAppearCancelled:ye},Bo={name:"BaseTransition",props:Br,setup(e,{slots:t}){const n=ci(),s=jo();let r;return()=>{const i=t.default&&Kr(t.default(),!0);if(!i||!i.length)return;let o=i[0];if(i.length>1){for(const R of i)if(R.type!==be){o=R;break}}const l=z(e),{mode:c}=l;if(s.isLeaving)return Rn(o);const a=Ms(o);if(!a)return Rn(o);const d=Bn(a,l,s,n);Dn(a,d);const p=n.subTree,y=p&&Ms(p);let x=!1;const{getTransitionKey:I}=a.type;if(I){const R=I();r===void 0?r=R:R!==r&&(r=R,x=!0)}if(y&&y.type!==be&&(!Ge(a,y)||x)){const R=Bn(y,l,s,n);if(Dn(y,R),c==="out-in")return s.isLeaving=!0,R.afterLeave=()=>{s.isLeaving=!1,n.update.active!==!1&&n.update()},Rn(o);c==="in-out"&&a.type!==be&&(R.delayLeave=($,_,b)=>{const H=Dr(s,y);H[String(y.key)]=y,$._leaveCb=()=>{_(),$._leaveCb=void 0,delete d.delayedLeave},d.delayedLeave=b})}return o}}},Do=Bo;function Dr(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 Bn(e,t,n,s){const{appear:r,mode:i,persisted:o=!1,onBeforeEnter:l,onEnter:c,onAfterEnter:a,onEnterCancelled:d,onBeforeLeave:p,onLeave:y,onAfterLeave:x,onLeaveCancelled:I,onBeforeAppear:R,onAppear:$,onAfterAppear:_,onAppearCancelled:b}=t,H=String(e.key),P=Dr(n,e),K=(A,D)=>{A&&we(A,s,9,D)},J=(A,D)=>{const j=D[1];K(A,D),N(A)?A.every(Y=>Y.length<=1)&&j():A.length<=1&&j()},V={mode:i,persisted:o,beforeEnter(A){let D=l;if(!n.isMounted)if(r)D=R||l;else return;A._leaveCb&&A._leaveCb(!0);const j=P[H];j&&Ge(e,j)&&j.el._leaveCb&&j.el._leaveCb(),K(D,[A])},enter(A){let D=c,j=a,Y=d;if(!n.isMounted)if(r)D=$||c,j=_||a,Y=b||d;else return;let O=!1;const k=A._enterCb=S=>{O||(O=!0,S?K(Y,[A]):K(j,[A]),V.delayedLeave&&V.delayedLeave(),A._enterCb=void 0)};D?J(D,[A,k]):k()},leave(A,D){const j=String(e.key);if(A._enterCb&&A._enterCb(!0),n.isUnmounting)return D();K(p,[A]);let Y=!1;const O=A._leaveCb=k=>{Y||(Y=!0,D(),k?K(I,[A]):K(x,[A]),A._leaveCb=void 0,P[j]===e&&delete P[j])};P[j]=e,y?J(y,[A,O]):O()},clone(A){return Bn(A,t,n,s)}};return V}function Rn(e){if(Ut(e))return e=qe(e),e.children=null,e}function Ms(e){return Ut(e)?e.children?e.children[0]:void 0:e}function Dn(e,t){e.shapeFlag&6&&e.component?Dn(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 Kr(e,t=!1,n){let s=[],r=0;for(let i=0;i1)for(let i=0;ioe({name:e.name},t,{setup:e}))():e}const pt=e=>!!e.type.__asyncLoader;function Uc(e){B(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:r=200,timeout:i,suspensible:o=!0,onError:l}=e;let c=null,a,d=0;const p=()=>(d++,c=null,y()),y=()=>{let x;return c||(x=c=t().catch(I=>{if(I=I instanceof Error?I:new Error(String(I)),l)return new Promise((R,$)=>{l(I,()=>R(p()),()=>$(I),d+1)});throw I}).then(I=>x!==c&&c?c:(I&&(I.__esModule||I[Symbol.toStringTag]==="Module")&&(I=I.default),a=I,I)))};return us({name:"AsyncComponentWrapper",__asyncLoader:y,get __asyncResolved(){return a},setup(){const x=le;if(a)return()=>Pn(a,x);const I=b=>{c=null,$t(b,x,13,!s)};if(o&&x.suspense||yt)return y().then(b=>()=>Pn(b,x)).catch(b=>(I(b),()=>s?se(s,{error:b}):null));const R=dt(!1),$=dt(),_=dt(!!r);return r&&setTimeout(()=>{_.value=!1},r),i!=null&&setTimeout(()=>{if(!R.value&&!$.value){const b=new Error(`Async component timed out after ${i}ms.`);I(b),$.value=b}},i),y().then(()=>{R.value=!0,x.parent&&Ut(x.parent.vnode)&&gn(x.parent.update)}).catch(b=>{I(b),$.value=b}),()=>{if(R.value&&a)return Pn(a,x);if($.value&&s)return se(s,{error:$.value});if(n&&!_.value)return se(n)}}})}function Pn(e,t){const{ref:n,props:s,children:r,ce:i}=t.vnode,o=se(e,s,r);return o.ref=n,o.ce=i,delete t.vnode.ce,o}const Ut=e=>e.type.__isKeepAlive;function Ko(e,t){kr(e,"a",t)}function ko(e,t){kr(e,"da",t)}function kr(e,t,n=le){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(yn(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Ut(r.parent.vnode)&&Wo(s,t,n,r),r=r.parent}}function Wo(e,t,n,s){const r=yn(t,e,s,!0);Cn(()=>{Xn(s[t],r)},n)}function yn(e,t,n=le,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;vt(),bt(n);const l=we(t,n,e,o);return st(),Ct(),l});return s?r.unshift(i):r.push(i),i}}const $e=e=>(t,n=le)=>(!yt||e==="sp")&&yn(e,(...s)=>t(...s),n),Vo=$e("bm"),vn=$e("m"),qo=$e("bu"),zo=$e("u"),Wr=$e("bum"),Cn=$e("um"),Yo=$e("sp"),Jo=$e("rtg"),Xo=$e("rtc");function Zo(e,t=le){yn("ec",e,t)}const ds="components";function jc(e,t){return qr(ds,e,!0,t)||e}const Vr=Symbol.for("v-ndc");function Bc(e){return re(e)?qr(ds,e,!1)||e:e||Vr}function qr(e,t,n=!0,s=!1){const r=ae||le;if(r){const i=r.type;if(e===ds){const l=Pl(i,!1);if(l&&(l===t||l===Me(t)||l===dn(Me(t))))return i}const o=Ls(r[e]||i[e],t)||Ls(r.appContext[e],t);return!o&&s?i:o}}function Ls(e,t){return e&&(e[t]||e[Me(t)]||e[dn(Me(t))])}function Dc(e,t,n,s){let r;const i=n&&n[s];if(N(e)||re(e)){r=new Array(e.length);for(let o=0,l=e.length;ot(o,l,void 0,i&&i[l]));else{const o=Object.keys(e);r=new Array(o.length);for(let l=0,c=o.length;lfn(t)?!(t.type===be||t.type===he&&!zr(t.children)):!0)?e:null}function kc(e,t){const n={};for(const s in e)n[t&&/[A-Z]/.test(s)?`on:${s}`:Xt(s)]=e[s];return n}const Kn=e=>e?fi(e)?_s(e)||e.proxy:Kn(e.parent):null,Pt=oe(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=>Kn(e.parent),$root:e=>Kn(e.root),$emit:e=>e.emit,$options:e=>hs(e),$forceUpdate:e=>e.f||(e.f=()=>gn(e.update)),$nextTick:e=>e.n||(e.n=Lr.bind(e.proxy)),$watch:e=>Uo.bind(e)}),In=(e,t)=>e!==te&&!e.__isScriptSetup&&q(e,t),Qo={get({_:e},t){const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:c}=e;let a;if(t[0]!=="$"){const x=o[t];if(x!==void 0)switch(x){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(In(s,t))return o[t]=1,s[t];if(r!==te&&q(r,t))return o[t]=2,r[t];if((a=e.propsOptions[0])&&q(a,t))return o[t]=3,i[t];if(n!==te&&q(n,t))return o[t]=4,n[t];kn&&(o[t]=0)}}const d=Pt[t];let p,y;if(d)return t==="$attrs"&&pe(e,"get",t),d(e);if((p=l.__cssModules)&&(p=p[t]))return p;if(n!==te&&q(n,t))return o[t]=4,n[t];if(y=c.config.globalProperties,q(y,t))return y[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return In(r,t)?(r[t]=n,!0):s!==te&&q(s,t)?(s[t]=n,!0):q(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&&q(e,o)||In(t,o)||(l=i[0])&&q(l,o)||q(s,o)||q(Pt,o)||q(r.config.globalProperties,o)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:q(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Wc(){return Go().slots}function Go(){const e=ci();return e.setupContext||(e.setupContext=ui(e))}function Ns(e){return N(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let kn=!0;function el(e){const t=hs(e),n=e.proxy,s=e.ctx;kn=!1,t.beforeCreate&&Hs(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:o,watch:l,provide:c,inject:a,created:d,beforeMount:p,mounted:y,beforeUpdate:x,updated:I,activated:R,deactivated:$,beforeDestroy:_,beforeUnmount:b,destroyed:H,unmounted:P,render:K,renderTracked:J,renderTriggered:V,errorCaptured:A,serverPrefetch:D,expose:j,inheritAttrs:Y,components:O,directives:k,filters:S}=t;if(a&&tl(a,s,null),o)for(const ne in o){const Q=o[ne];B(Q)&&(s[ne]=Q.bind(n))}if(r){const ne=r.call(n,n);ee(ne)&&(e.data=pn(ne))}if(kn=!0,i)for(const ne in i){const Q=i[ne],ze=B(Q)?Q.bind(n,n):B(Q.get)?Q.get.bind(n,n):Pe,jt=!B(Q)&&B(Q.set)?Q.set.bind(n):Pe,Ye=Ee({get:ze,set:jt});Object.defineProperty(s,ne,{enumerable:!0,configurable:!0,get:()=>Ye.value,set:Ie=>Ye.value=Ie})}if(l)for(const ne in l)Yr(l[ne],s,n,ne);if(c){const ne=B(c)?c.call(n):c;Reflect.ownKeys(ne).forEach(Q=>{ll(Q,ne[Q])})}d&&Hs(d,e,"c");function X(ne,Q){N(Q)?Q.forEach(ze=>ne(ze.bind(n))):Q&&ne(Q.bind(n))}if(X(Vo,p),X(vn,y),X(qo,x),X(zo,I),X(Ko,R),X(ko,$),X(Zo,A),X(Xo,J),X(Jo,V),X(Wr,b),X(Cn,P),X(Yo,D),N(j))if(j.length){const ne=e.exposed||(e.exposed={});j.forEach(Q=>{Object.defineProperty(ne,Q,{get:()=>n[Q],set:ze=>n[Q]=ze})})}else e.exposed||(e.exposed={});K&&e.render===Pe&&(e.render=K),Y!=null&&(e.inheritAttrs=Y),O&&(e.components=O),k&&(e.directives=k)}function tl(e,t,n=Pe){N(e)&&(e=Wn(e));for(const s in e){const r=e[s];let i;ee(r)?"default"in r?i=gt(r.from||s,r.default,!0):i=gt(r.from||s):i=gt(r),ce(i)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[s]=i}}function Hs(e,t,n){we(N(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function Yr(e,t,n,s){const r=s.includes(".")?jr(n,s):()=>n[s];if(re(e)){const i=t[e];B(i)&&Zt(r,i)}else if(B(e))Zt(r,e.bind(n));else if(ee(e))if(N(e))e.forEach(i=>Yr(i,t,n,s));else{const i=B(e.handler)?e.handler.bind(n):t[e.handler];B(i)&&Zt(r,i,e)}}function hs(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(a=>on(c,a,o,!0)),on(c,t,o)),ee(t)&&i.set(t,c),c}function on(e,t,n,s=!1){const{mixins:r,extends:i}=t;i&&on(e,i,n,!0),r&&r.forEach(o=>on(e,o,n,!0));for(const o in t)if(!(s&&o==="expose")){const l=nl[o]||n&&n[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const nl={data:$s,props:Us,emits:Us,methods:Tt,computed:Tt,beforeCreate:ue,created:ue,beforeMount:ue,mounted:ue,beforeUpdate:ue,updated:ue,beforeDestroy:ue,beforeUnmount:ue,destroyed:ue,unmounted:ue,activated:ue,deactivated:ue,errorCaptured:ue,serverPrefetch:ue,components:Tt,directives:Tt,watch:rl,provide:$s,inject:sl};function $s(e,t){return t?e?function(){return oe(B(e)?e.call(this,this):e,B(t)?t.call(this,this):t)}:t:e}function sl(e,t){return Tt(Wn(e),Wn(t))}function Wn(e){if(N(e)){const t={};for(let n=0;n1)return n&&B(t)?t.call(s&&s.proxy):t}}function cl(e,t,n,s=!1){const r={},i={};en(i,wn,1),e.propsDefaults=Object.create(null),Xr(e,t,r,i);for(const o in e.propsOptions[0])o in r||(r[o]=void 0);n?e.props=s?r:po(r):e.type.props?e.props=r:e.props=i,e.attrs=i}function fl(e,t,n,s){const{props:r,attrs:i,vnode:{patchFlag:o}}=e,l=z(r),[c]=e.propsOptions;let a=!1;if((s||o>0)&&!(o&16)){if(o&8){const d=e.vnode.dynamicProps;for(let p=0;p{c=!0;const[y,x]=Zr(p,t,!0);oe(o,y),x&&l.push(...x)};!n&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!i&&!c)return ee(e)&&s.set(e,ft),ft;if(N(i))for(let d=0;d-1,x[1]=R<0||I-1||q(x,"default"))&&l.push(p)}}}const a=[o,l];return ee(e)&&s.set(e,a),a}function js(e){return e[0]!=="$"}function Bs(e){const t=e&&e.toString().match(/^\s*(function|class) (\w+)/);return t?t[2]:e===null?"null":""}function Ds(e,t){return Bs(e)===Bs(t)}function Ks(e,t){return N(t)?t.findIndex(n=>Ds(n,e)):B(t)&&Ds(t,e)?0:-1}const Qr=e=>e[0]==="_"||e==="$stable",ps=e=>N(e)?e.map(Te):[Te(e)],al=(e,t,n)=>{if(t._n)return t;const s=Fo((...r)=>ps(t(...r)),n);return s._c=!1,s},Gr=(e,t,n)=>{const s=e._ctx;for(const r in e){if(Qr(r))continue;const i=e[r];if(B(i))t[r]=al(r,i,s);else if(i!=null){const o=ps(i);t[r]=()=>o}}},ei=(e,t)=>{const n=ps(t);e.slots.default=()=>n},ul=(e,t)=>{if(e.vnode.shapeFlag&32){const n=t._;n?(e.slots=z(t),en(t,"_",n)):Gr(t,e.slots={})}else e.slots={},t&&ei(e,t);en(e.slots,wn,1)},dl=(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:(oe(r,t),!n&&l===1&&delete r._):(i=!t.$stable,Gr(t,r)),o=t}else t&&(ei(e,t),o={default:1});if(i)for(const l in r)!Qr(l)&&!(l in o)&&delete r[l]};function cn(e,t,n,s,r=!1){if(N(e)){e.forEach((y,x)=>cn(y,t&&(N(t)?t[x]:t),n,s,r));return}if(pt(s)&&!r)return;const i=s.shapeFlag&4?_s(s.component)||s.component.proxy:s.el,o=r?null:i,{i:l,r:c}=e,a=t&&t.r,d=l.refs===te?l.refs={}:l.refs,p=l.setupState;if(a!=null&&a!==c&&(re(a)?(d[a]=null,q(p,a)&&(p[a]=null)):ce(a)&&(a.value=null)),B(c))We(c,l,12,[o,d]);else{const y=re(c),x=ce(c);if(y||x){const I=()=>{if(e.f){const R=y?q(p,c)?p[c]:d[c]:c.value;r?N(R)&&Xn(R,i):N(R)?R.includes(i)||R.push(i):y?(d[c]=[i],q(p,c)&&(p[c]=d[c])):(c.value=[i],e.k&&(d[e.k]=c.value))}else y?(d[c]=o,q(p,c)&&(p[c]=o)):x&&(c.value=o,e.k&&(d[e.k]=o))};o?(I.id=-1,de(I,n)):I()}}}let je=!1;const zt=e=>/svg/.test(e.namespaceURI)&&e.tagName!=="foreignObject",Yt=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:a}}=e,d=(_,b)=>{if(!b.hasChildNodes()){n(null,_,b),sn(),b._vnode=_;return}je=!1,p(b.firstChild,_,null,null,null),sn(),b._vnode=_,je&&console.error("Hydration completed but contains mismatches.")},p=(_,b,H,P,K,J=!1)=>{const V=Yt(_)&&_.data==="[",A=()=>R(_,b,H,P,K,V),{type:D,ref:j,shapeFlag:Y,patchFlag:O}=b;let k=_.nodeType;b.el=_,O===-2&&(J=!1,b.dynamicChildren=null);let S=null;switch(D){case _t:k!==3?b.children===""?(c(b.el=r(""),o(_),_),S=_):S=A():(_.data!==b.children&&(je=!0,_.data=b.children),S=i(_));break;case be:k!==8||V?S=A():S=i(_);break;case It:if(V&&(_=i(_),k=_.nodeType),k===1||k===3){S=_;const ge=!b.children.length;for(let X=0;X{J=J||!!b.dynamicChildren;const{type:V,props:A,patchFlag:D,shapeFlag:j,dirs:Y}=b,O=V==="input"&&Y||V==="option";if(O||D!==-1){if(Y&&Fe(b,null,H,"created"),A)if(O||!J||D&48)for(const S in A)(O&&S.endsWith("value")||Ht(S)&&!At(S))&&s(_,S,null,A[S],!1,void 0,H);else A.onClick&&s(_,"onClick",null,A.onClick,!1,void 0,H);let k;if((k=A&&A.onVnodeBeforeMount)&&ve(k,H,b),Y&&Fe(b,null,H,"beforeMount"),((k=A&&A.onVnodeMounted)||Y)&&Ur(()=>{k&&ve(k,H,b),Y&&Fe(b,null,H,"mounted")},P),j&16&&!(A&&(A.innerHTML||A.textContent))){let S=x(_.firstChild,b,_,H,P,K,J);for(;S;){je=!0;const ge=S;S=S.nextSibling,l(ge)}}else j&8&&_.textContent!==b.children&&(je=!0,_.textContent=b.children)}return _.nextSibling},x=(_,b,H,P,K,J,V)=>{V=V||!!b.dynamicChildren;const A=b.children,D=A.length;for(let j=0;j{const{slotScopeIds:V}=b;V&&(K=K?K.concat(V):V);const A=o(_),D=x(i(_),b,A,H,P,K,J);return D&&Yt(D)&&D.data==="]"?i(b.anchor=D):(je=!0,c(b.anchor=a("]"),A,D),D)},R=(_,b,H,P,K,J)=>{if(je=!0,b.el=null,J){const D=$(_);for(;;){const j=i(_);if(j&&j!==D)l(j);else break}}const V=i(_),A=o(_);return l(_),n(null,b,A,V,H,P,zt(A),K),V},$=_=>{let b=0;for(;_;)if(_=i(_),_&&Yt(_)&&(_.data==="["&&b++,_.data==="]")){if(b===0)return i(_);b--}return _};return[d,p]}const de=Ur;function pl(e){return gl(e,hl)}function gl(e,t){const n=Nn();n.__VUE__=!0;const{insert:s,remove:r,patchProp:i,createElement:o,createText:l,createComment:c,setText:a,setElementText:d,parentNode:p,nextSibling:y,setScopeId:x=Pe,insertStaticContent:I}=e,R=(f,u,h,m=null,g=null,w=null,T=!1,C=null,E=!!u.dynamicChildren)=>{if(f===u)return;f&&!Ge(f,u)&&(m=Bt(f),Ie(f,g,w,!0),f=null),u.patchFlag===-2&&(E=!1,u.dynamicChildren=null);const{type:v,ref:M,shapeFlag:F}=u;switch(v){case _t:$(f,u,h,m);break;case be:_(f,u,h,m);break;case It:f==null&&b(u,h,m,T);break;case he:O(f,u,h,m,g,w,T,C,E);break;default:F&1?K(f,u,h,m,g,w,T,C,E):F&6?k(f,u,h,m,g,w,T,C,E):(F&64||F&128)&&v.process(f,u,h,m,g,w,T,C,E,it)}M!=null&&g&&cn(M,f&&f.ref,w,u||f,!u)},$=(f,u,h,m)=>{if(f==null)s(u.el=l(u.children),h,m);else{const g=u.el=f.el;u.children!==f.children&&a(g,u.children)}},_=(f,u,h,m)=>{f==null?s(u.el=c(u.children||""),h,m):u.el=f.el},b=(f,u,h,m)=>{[f.el,f.anchor]=I(f.children,u,h,m,f.el,f.anchor)},H=({el:f,anchor:u},h,m)=>{let g;for(;f&&f!==u;)g=y(f),s(f,h,m),f=g;s(u,h,m)},P=({el:f,anchor:u})=>{let h;for(;f&&f!==u;)h=y(f),r(f),f=h;r(u)},K=(f,u,h,m,g,w,T,C,E)=>{T=T||u.type==="svg",f==null?J(u,h,m,g,w,T,C,E):D(f,u,g,w,T,C,E)},J=(f,u,h,m,g,w,T,C)=>{let E,v;const{type:M,props:F,shapeFlag:L,transition:U,dirs:W}=f;if(E=f.el=o(f.type,w,F&&F.is,F),L&8?d(E,f.children):L&16&&A(f.children,E,null,m,g,w&&M!=="foreignObject",T,C),W&&Fe(f,null,m,"created"),V(E,f,f.scopeId,T,m),F){for(const Z in F)Z!=="value"&&!At(Z)&&i(E,Z,null,F[Z],w,f.children,m,g,Le);"value"in F&&i(E,"value",null,F.value),(v=F.onVnodeBeforeMount)&&ve(v,m,f)}W&&Fe(f,null,m,"beforeMount");const G=(!g||g&&!g.pendingBranch)&&U&&!U.persisted;G&&U.beforeEnter(E),s(E,u,h),((v=F&&F.onVnodeMounted)||G||W)&&de(()=>{v&&ve(v,m,f),G&&U.enter(E),W&&Fe(f,null,m,"mounted")},g)},V=(f,u,h,m,g)=>{if(h&&x(f,h),m)for(let w=0;w{for(let v=E;v{const C=u.el=f.el;let{patchFlag:E,dynamicChildren:v,dirs:M}=u;E|=f.patchFlag&16;const F=f.props||te,L=u.props||te;let U;h&&Je(h,!1),(U=L.onVnodeBeforeUpdate)&&ve(U,h,u,f),M&&Fe(u,f,h,"beforeUpdate"),h&&Je(h,!0);const W=g&&u.type!=="foreignObject";if(v?j(f.dynamicChildren,v,C,h,m,W,w):T||Q(f,u,C,null,h,m,W,w,!1),E>0){if(E&16)Y(C,u,F,L,h,m,g);else if(E&2&&F.class!==L.class&&i(C,"class",null,L.class,g),E&4&&i(C,"style",F.style,L.style,g),E&8){const G=u.dynamicProps;for(let Z=0;Z{U&&ve(U,h,u,f),M&&Fe(u,f,h,"updated")},m)},j=(f,u,h,m,g,w,T)=>{for(let C=0;C{if(h!==m){if(h!==te)for(const C in h)!At(C)&&!(C in m)&&i(f,C,h[C],null,T,u.children,g,w,Le);for(const C in m){if(At(C))continue;const E=m[C],v=h[C];E!==v&&C!=="value"&&i(f,C,v,E,T,u.children,g,w,Le)}"value"in m&&i(f,"value",h.value,m.value)}},O=(f,u,h,m,g,w,T,C,E)=>{const v=u.el=f?f.el:l(""),M=u.anchor=f?f.anchor:l("");let{patchFlag:F,dynamicChildren:L,slotScopeIds:U}=u;U&&(C=C?C.concat(U):U),f==null?(s(v,h,m),s(M,h,m),A(u.children,h,M,g,w,T,C,E)):F>0&&F&64&&L&&f.dynamicChildren?(j(f.dynamicChildren,L,h,g,w,T,C),(u.key!=null||g&&u===g.subTree)&&ti(f,u,!0)):Q(f,u,h,M,g,w,T,C,E)},k=(f,u,h,m,g,w,T,C,E)=>{u.slotScopeIds=C,f==null?u.shapeFlag&512?g.ctx.activate(u,h,m,T,E):S(u,h,m,g,w,T,E):ge(f,u,E)},S=(f,u,h,m,g,w,T)=>{const C=f.component=El(f,m,g);if(Ut(f)&&(C.ctx.renderer=it),Tl(C),C.asyncDep){if(g&&g.registerDep(C,X),!f.el){const E=C.subTree=se(be);_(null,E,u,h)}return}X(C,f,u,h,g,w,T)},ge=(f,u,h)=>{const m=u.component=f.component;if(Lo(f,u,h))if(m.asyncDep&&!m.asyncResolved){ne(m,u,h);return}else m.next=u,Ro(m.update),m.update();else u.el=f.el,m.vnode=u},X=(f,u,h,m,g,w,T)=>{const C=()=>{if(f.isMounted){let{next:M,bu:F,u:L,parent:U,vnode:W}=f,G=M,Z;Je(f,!1),M?(M.el=W.el,ne(f,M,T)):M=W,F&&Tn(F),(Z=M.props&&M.props.onVnodeBeforeUpdate)&&ve(Z,U,M,W),Je(f,!0);const ie=An(f),xe=f.subTree;f.subTree=ie,R(xe,ie,p(xe.el),Bt(xe),f,g,w),M.el=ie.el,G===null&&No(f,ie.el),L&&de(L,g),(Z=M.props&&M.props.onVnodeUpdated)&&de(()=>ve(Z,U,M,W),g)}else{let M;const{el:F,props:L}=u,{bm:U,m:W,parent:G}=f,Z=pt(u);if(Je(f,!1),U&&Tn(U),!Z&&(M=L&&L.onVnodeBeforeMount)&&ve(M,G,u),Je(f,!0),F&&En){const ie=()=>{f.subTree=An(f),En(F,f.subTree,f,g,null)};Z?u.type.__asyncLoader().then(()=>!f.isUnmounted&&ie()):ie()}else{const ie=f.subTree=An(f);R(null,ie,h,m,f,g,w),u.el=ie.el}if(W&&de(W,g),!Z&&(M=L&&L.onVnodeMounted)){const ie=u;de(()=>ve(M,G,ie),g)}(u.shapeFlag&256||G&&pt(G.vnode)&&G.vnode.shapeFlag&256)&&f.a&&de(f.a,g),f.isMounted=!0,u=h=m=null}},E=f.effect=new ns(C,()=>gn(v),f.scope),v=f.update=()=>E.run();v.id=f.uid,Je(f,!0),v()},ne=(f,u,h)=>{u.component=f;const m=f.vnode.props;f.vnode=u,f.next=null,fl(f,u.props,m,h),dl(f,u.children,h),vt(),Fs(),Ct()},Q=(f,u,h,m,g,w,T,C,E=!1)=>{const v=f&&f.children,M=f?f.shapeFlag:0,F=u.children,{patchFlag:L,shapeFlag:U}=u;if(L>0){if(L&128){jt(v,F,h,m,g,w,T,C,E);return}else if(L&256){ze(v,F,h,m,g,w,T,C,E);return}}U&8?(M&16&&Le(v,g,w),F!==v&&d(h,F)):M&16?U&16?jt(v,F,h,m,g,w,T,C,E):Le(v,g,w,!0):(M&8&&d(h,""),U&16&&A(F,h,m,g,w,T,C,E))},ze=(f,u,h,m,g,w,T,C,E)=>{f=f||ft,u=u||ft;const v=f.length,M=u.length,F=Math.min(v,M);let L;for(L=0;LM?Le(f,g,w,!0,!1,F):A(u,h,m,g,w,T,C,E,F)},jt=(f,u,h,m,g,w,T,C,E)=>{let v=0;const M=u.length;let F=f.length-1,L=M-1;for(;v<=F&&v<=L;){const U=f[v],W=u[v]=E?Ke(u[v]):Te(u[v]);if(Ge(U,W))R(U,W,h,null,g,w,T,C,E);else break;v++}for(;v<=F&&v<=L;){const U=f[F],W=u[L]=E?Ke(u[L]):Te(u[L]);if(Ge(U,W))R(U,W,h,null,g,w,T,C,E);else break;F--,L--}if(v>F){if(v<=L){const U=L+1,W=UL)for(;v<=F;)Ie(f[v],g,w,!0),v++;else{const U=v,W=v,G=new Map;for(v=W;v<=L;v++){const me=u[v]=E?Ke(u[v]):Te(u[v]);me.key!=null&&G.set(me.key,v)}let Z,ie=0;const xe=L-W+1;let ot=!1,vs=0;const wt=new Array(xe);for(v=0;v=xe){Ie(me,g,w,!0);continue}let Oe;if(me.key!=null)Oe=G.get(me.key);else for(Z=W;Z<=L;Z++)if(wt[Z-W]===0&&Ge(me,u[Z])){Oe=Z;break}Oe===void 0?Ie(me,g,w,!0):(wt[Oe-W]=v+1,Oe>=vs?vs=Oe:ot=!0,R(me,u[Oe],h,null,g,w,T,C,E),ie++)}const Cs=ot?ml(wt):ft;for(Z=Cs.length-1,v=xe-1;v>=0;v--){const me=W+v,Oe=u[me],ws=me+1{const{el:w,type:T,transition:C,children:E,shapeFlag:v}=f;if(v&6){Ye(f.component.subTree,u,h,m);return}if(v&128){f.suspense.move(u,h,m);return}if(v&64){T.move(f,u,h,it);return}if(T===he){s(w,u,h);for(let F=0;FC.enter(w),g);else{const{leave:F,delayLeave:L,afterLeave:U}=C,W=()=>s(w,u,h),G=()=>{F(w,()=>{W(),U&&U()})};L?L(w,W,G):G()}else s(w,u,h)},Ie=(f,u,h,m=!1,g=!1)=>{const{type:w,props:T,ref:C,children:E,dynamicChildren:v,shapeFlag:M,patchFlag:F,dirs:L}=f;if(C!=null&&cn(C,null,h,f,!0),M&256){u.ctx.deactivate(f);return}const U=M&1&&L,W=!pt(f);let G;if(W&&(G=T&&T.onVnodeBeforeUnmount)&&ve(G,u,f),M&6)wi(f.component,h,m);else{if(M&128){f.suspense.unmount(h,m);return}U&&Fe(f,null,u,"beforeUnmount"),M&64?f.type.remove(f,u,h,g,it,m):v&&(w!==he||F>0&&F&64)?Le(v,u,h,!1,!0):(w===he&&F&384||!g&&M&16)&&Le(E,u,h),m&&bs(f)}(W&&(G=T&&T.onVnodeUnmounted)||U)&&de(()=>{G&&ve(G,u,f),U&&Fe(f,null,u,"unmounted")},h)},bs=f=>{const{type:u,el:h,anchor:m,transition:g}=f;if(u===he){Ci(h,m);return}if(u===It){P(f);return}const w=()=>{r(h),g&&!g.persisted&&g.afterLeave&&g.afterLeave()};if(f.shapeFlag&1&&g&&!g.persisted){const{leave:T,delayLeave:C}=g,E=()=>T(h,w);C?C(f.el,w,E):E()}else w()},Ci=(f,u)=>{let h;for(;f!==u;)h=y(f),r(f),f=h;r(u)},wi=(f,u,h)=>{const{bum:m,scope:g,update:w,subTree:T,um:C}=f;m&&Tn(m),g.stop(),w&&(w.active=!1,Ie(T,f,u,h)),C&&de(C,u),de(()=>{f.isUnmounted=!0},u),u&&u.pendingBranch&&!u.isUnmounted&&f.asyncDep&&!f.asyncResolved&&f.suspenseId===u.pendingId&&(u.deps--,u.deps===0&&u.resolve())},Le=(f,u,h,m=!1,g=!1,w=0)=>{for(let T=w;Tf.shapeFlag&6?Bt(f.component.subTree):f.shapeFlag&128?f.suspense.next():y(f.anchor||f.el),ys=(f,u,h)=>{f==null?u._vnode&&Ie(u._vnode,null,null,!0):R(u._vnode||null,f,u,null,null,null,h),Fs(),sn(),u._vnode=f},it={p:R,um:Ie,m:Ye,r:bs,mt:S,mc:A,pc:Q,pbc:j,n:Bt,o:e};let xn,En;return t&&([xn,En]=t(it)),{render:ys,hydrate:xn,createApp:ol(ys,xn)}}function Je({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function ti(e,t,n=!1){const s=e.children,r=t.children;if(N(s)&&N(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}const _l=e=>e.__isTeleport,he=Symbol.for("v-fgt"),_t=Symbol.for("v-txt"),be=Symbol.for("v-cmt"),It=Symbol.for("v-stc"),Ot=[];let Re=null;function ni(e=!1){Ot.push(Re=e?null:[])}function bl(){Ot.pop(),Re=Ot[Ot.length-1]||null}let Nt=1;function ks(e){Nt+=e}function si(e){return e.dynamicChildren=Nt>0?Re||ft:null,bl(),Nt>0&&Re&&Re.push(e),e}function Vc(e,t,n,s,r,i){return si(oi(e,t,n,s,r,i,!0))}function ri(e,t,n,s,r){return si(se(e,t,n,s,r,!0))}function fn(e){return e?e.__v_isVNode===!0:!1}function Ge(e,t){return e.type===t.type&&e.key===t.key}const wn="__vInternal",ii=({key:e})=>e??null,Qt=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?re(e)||ce(e)||B(e)?{i:ae,r:e,k:t,f:!!n}:e:null);function oi(e,t=null,n=null,s=0,r=null,i=e===he?0:1,o=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&ii(t),ref:t&&Qt(t),scopeId:_n,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:ae};return l?(gs(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=re(n)?8:16),Nt>0&&!o&&Re&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&Re.push(c),c}const se=yl;function yl(e,t=null,n=null,s=0,r=null,i=!1){if((!e||e===Vr)&&(e=be),fn(e)){const l=qe(e,t,!0);return n&&gs(l,n),Nt>0&&!i&&Re&&(l.shapeFlag&6?Re[Re.indexOf(e)]=l:Re.push(l)),l.patchFlag|=-2,l}if(Il(e)&&(e=e.__vccOpts),t){t=vl(t);let{class:l,style:c}=t;l&&!re(l)&&(t.class=es(l)),ee(c)&&(Or(c)&&!N(c)&&(c=oe({},c)),t.style=Gn(c))}const o=re(e)?1:Ho(e)?128:_l(e)?64:ee(e)?4:B(e)?2:0;return oi(e,t,n,s,r,o,i,!0)}function vl(e){return e?Or(e)||wn in e?oe({},e):e:null}function qe(e,t,n=!1){const{props:s,ref:r,patchFlag:i,children:o}=e,l=t?Cl(s||{},t):s;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&ii(l),ref:t&&t.ref?n&&r?N(r)?r.concat(Qt(t)):[r,Qt(t)]:Qt(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:o,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==he?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&qe(e.ssContent),ssFallback:e.ssFallback&&qe(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}}function li(e=" ",t=0){return se(_t,null,e,t)}function qc(e,t){const n=se(It,null,e);return n.staticCount=t,n}function zc(e="",t=!1){return t?(ni(),ri(be,null,e)):se(be,null,e)}function Te(e){return e==null||typeof e=="boolean"?se(be):N(e)?se(he,null,e.slice()):typeof e=="object"?Ke(e):se(_t,null,String(e))}function Ke(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:qe(e)}function gs(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(N(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),gs(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!(wn in t)?t._ctx=ae:r===3&&ae&&(ae.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else B(t)?(t={default:t,_ctx:ae},n=32):(t=String(t),s&64?(n=16,t=[li(t)]):n=8);e.children=t,e.shapeFlag|=n}function Cl(...e){const t={};for(let n=0;nle||ae;let ms,lt,Ws="__VUE_INSTANCE_SETTERS__";(lt=Nn()[Ws])||(lt=Nn()[Ws]=[]),lt.push(e=>le=e),ms=e=>{lt.length>1?lt.forEach(t=>t(e)):lt[0](e)};const bt=e=>{ms(e),e.scope.on()},st=()=>{le&&le.scope.off(),ms(null)};function fi(e){return e.vnode.shapeFlag&4}let yt=!1;function Tl(e,t=!1){yt=t;const{props:n,children:s}=e.vnode,r=fi(e);cl(e,n,r,t),ul(e,s);const i=r?Al(e,t):void 0;return yt=!1,i}function Al(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=Rt(new Proxy(e.ctx,Qo));const{setup:s}=n;if(s){const r=e.setupContext=s.length>1?ui(e):null;bt(e),vt();const i=We(s,e,0,[e.props,r]);if(Ct(),st(),pr(i)){if(i.then(st,st),t)return i.then(o=>{Vs(e,o,t)}).catch(o=>{$t(o,e,0)});e.asyncDep=i}else Vs(e,i,t)}else ai(e,t)}function Vs(e,t,n){B(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ee(t)&&(e.setupState=Sr(t)),ai(e,n)}let qs;function ai(e,t,n){const s=e.type;if(!e.render){if(!t&&qs&&!s.render){const r=s.template||hs(e).template;if(r){const{isCustomElement:i,compilerOptions:o}=e.appContext.config,{delimiters:l,compilerOptions:c}=s,a=oe(oe({isCustomElement:i,delimiters:l},o),c);s.render=qs(r,a)}}e.render=s.render||Pe}bt(e),vt(),el(e),Ct(),st()}function Rl(e){return e.attrsProxy||(e.attrsProxy=new Proxy(e.attrs,{get(t,n){return pe(e,"get","$attrs"),t[n]}}))}function ui(e){const t=n=>{e.exposed=n||{}};return{get attrs(){return Rl(e)},slots:e.slots,emit:e.emit,expose:t}}function _s(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(Sr(Rt(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Pt)return Pt[n](e)},has(t,n){return n in t||n in Pt}}))}function Pl(e,t=!0){return B(e)?e.displayName||e.name:e.name||t&&e.__name}function Il(e){return B(e)&&"__vccOpts"in e}const Ee=(e,t)=>Eo(e,t,yt);function qn(e,t,n){const s=arguments.length;return s===2?ee(t)&&!N(t)?fn(t)?se(e,null,[t]):se(e,t):se(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&fn(n)&&(n=[n]),se(e,t,n))}const Ol=Symbol.for("v-scx"),Fl=()=>gt(Ol),Sl="3.3.4",Ml="http://www.w3.org/2000/svg",et=typeof document<"u"?document:null,zs=et&&et.createElement("template"),Ll={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?et.createElementNS(Ml,e):et.createElement(e,n?{is:n}:void 0);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>et.createTextNode(e),createComment:e=>et.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>et.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{zs.innerHTML=s?`${e}`:e;const l=zs.content;if(s){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]}};function Nl(e,t,n){const s=e._vtc;s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}function Hl(e,t,n){const s=e.style,r=re(n);if(n&&!r){if(t&&!re(t))for(const i in t)n[i]==null&&zn(s,i,"");for(const i in n)zn(s,i,n[i])}else{const i=s.display;r?t!==n&&(s.cssText=n):t&&e.removeAttribute("style"),"_vod"in e&&(s.display=i)}}const Ys=/\s*!important$/;function zn(e,t,n){if(N(n))n.forEach(s=>zn(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=$l(e,t);Ys.test(n)?e.setProperty(rt(s),n.replace(Ys,""),"important"):e[s]=n}}const Js=["Webkit","Moz","ms"],On={};function $l(e,t){const n=On[t];if(n)return n;let s=Me(t);if(s!=="filter"&&s in e)return On[t]=s;s=dn(s);for(let r=0;rFn||(Wl.then(()=>Fn=0),Fn=Date.now());function ql(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;we(zl(s,n.value),t,5,[s])};return n.value=e,n.attached=Vl(),n}function zl(e,t){if(N(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 Qs=/^on[a-z]/,Yl=(e,t,n,s,r=!1,i,o,l,c)=>{t==="class"?Nl(e,s,r):t==="style"?Hl(e,n,s):Ht(t)?Jn(t)||Kl(e,t,n,s,o):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Jl(e,t,s,r))?jl(e,t,s,i,o,l,c):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Ul(e,t,s,r))};function Jl(e,t,n,s){return s?!!(t==="innerHTML"||t==="textContent"||t in e&&Qs.test(t)&&B(n)):t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA"||Qs.test(t)&&re(n)?!1:t in e}const Be="transition",xt="animation",di=(e,{slots:t})=>qn(Do,Xl(e),t);di.displayName="Transition";const hi={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};di.props=oe({},Br,hi);const Xe=(e,t=[])=>{N(e)?e.forEach(n=>n(...t)):e&&e(...t)},Gs=e=>e?N(e)?e.some(t=>t.length>1):e.length>1:!1;function Xl(e){const t={};for(const O in e)O in hi||(t[O]=e[O]);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:a=o,appearToClass:d=l,leaveFromClass:p=`${n}-leave-from`,leaveActiveClass:y=`${n}-leave-active`,leaveToClass:x=`${n}-leave-to`}=e,I=Zl(r),R=I&&I[0],$=I&&I[1],{onBeforeEnter:_,onEnter:b,onEnterCancelled:H,onLeave:P,onLeaveCancelled:K,onBeforeAppear:J=_,onAppear:V=b,onAppearCancelled:A=H}=t,D=(O,k,S)=>{Ze(O,k?d:l),Ze(O,k?a:o),S&&S()},j=(O,k)=>{O._isLeaving=!1,Ze(O,p),Ze(O,x),Ze(O,y),k&&k()},Y=O=>(k,S)=>{const ge=O?V:b,X=()=>D(k,O,S);Xe(ge,[k,X]),er(()=>{Ze(k,O?c:i),De(k,O?d:l),Gs(ge)||tr(k,s,R,X)})};return oe(t,{onBeforeEnter(O){Xe(_,[O]),De(O,i),De(O,o)},onBeforeAppear(O){Xe(J,[O]),De(O,c),De(O,a)},onEnter:Y(!1),onAppear:Y(!0),onLeave(O,k){O._isLeaving=!0;const S=()=>j(O,k);De(O,p),ec(),De(O,y),er(()=>{O._isLeaving&&(Ze(O,p),De(O,x),Gs(P)||tr(O,s,$,S))}),Xe(P,[O,S])},onEnterCancelled(O){D(O,!1),Xe(H,[O])},onAppearCancelled(O){D(O,!0),Xe(A,[O])},onLeaveCancelled(O){j(O),Xe(K,[O])}})}function Zl(e){if(e==null)return null;if(ee(e))return[Sn(e.enter),Sn(e.leave)];{const t=Sn(e);return[t,t]}}function Sn(e){return Oi(e)}function De(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e._vtc||(e._vtc=new Set)).add(t)}function Ze(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const{_vtc:n}=e;n&&(n.delete(t),n.size||(e._vtc=void 0))}function er(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Ql=0;function tr(e,t,n,s){const r=e._endId=++Ql,i=()=>{r===e._endId&&s()};if(n)return setTimeout(i,n);const{type:o,timeout:l,propCount:c}=Gl(e,t);if(!o)return s();const a=o+"end";let d=0;const p=()=>{e.removeEventListener(a,y),i()},y=x=>{x.target===e&&++d>=c&&p()};setTimeout(()=>{d(n[I]||"").split(", "),r=s(`${Be}Delay`),i=s(`${Be}Duration`),o=nr(r,i),l=s(`${xt}Delay`),c=s(`${xt}Duration`),a=nr(l,c);let d=null,p=0,y=0;t===Be?o>0&&(d=Be,p=o,y=i.length):t===xt?a>0&&(d=xt,p=a,y=c.length):(p=Math.max(o,a),d=p>0?o>a?Be:xt:null,y=d?d===Be?i.length:c.length:0);const x=d===Be&&/\b(transform|all)(,|$)/.test(s(`${Be}Property`).toString());return{type:d,timeout:p,propCount:y,hasTransform:x}}function nr(e,t){for(;e.lengthsr(n)+sr(e[s])))}function sr(e){return Number(e.slice(0,-1).replace(",","."))*1e3}function ec(){return document.body.offsetHeight}const tc=["ctrl","shift","alt","meta"],nc={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)=>tc.some(n=>e[`${n}Key`]&&!t.includes(n))},Yc=(e,t)=>(n,...s)=>{for(let r=0;rn=>{if(!("key"in n))return;const s=rt(n.key);if(t.some(r=>r===s||sc[r]===s))return e(n)},rc=oe({patchProp:Yl},Ll);let Mn,rr=!1;function ic(){return Mn=rr?Mn:pl(rc),rr=!0,Mn}const Xc=(...e)=>{const t=ic().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=oc(s);if(r)return n(r,!0,r instanceof SVGElement)},t};function oc(e){return re(e)?document.querySelector(e):e}const Zc=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},lc=window.__VP_SITE_DATA__,pi=/^[a-z]+:/i,Qc=/^pathname:\/\//,Gc="vitepress-theme-appearance",gi=/#.*$/,cc=/(index)?\.(md|html)$/,Ce=typeof document<"u",mi={relativePath:"",filePath:"",title:"404",description:"Not Found",headers:[],frontmatter:{sidebar:!1,layout:"page"},lastUpdated:0,isNotFound:!0};function fc(e,t,n=!1){if(t===void 0)return!1;if(e=ir(`/${e}`),n)return new RegExp(t).test(e);if(ir(t)!==e)return!1;const s=t.match(gi);return s?(Ce?location.hash:"")===s[0]:!0}function ir(e){return decodeURI(e).replace(gi,"").replace(cc,"")}function ac(e){return pi.test(e)}function uc(e,t){var s,r,i,o,l,c,a;const n=Object.keys(e.locales).find(d=>d!=="root"&&!ac(d)&&fc(t,`/${d}/`,!0))||"root";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:bi(e.head,((c=e.locales[n])==null?void 0:c.head)??[]),themeConfig:{...e.themeConfig,...(a=e.locales[n])==null?void 0:a.themeConfig}})}function _i(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=dc(e.title,s);return`${n}${r}`}function dc(e,t){return t===!1?"":t===!0||t===void 0?` | ${e}`:e===t?"":` | ${t}`}function hc(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 bi(e,t){return[...e.filter(n=>!hc(t,n)),...t]}const pc=/[\u0000-\u001F"#$&*+,:;<=>?[\]^`{|}\u007F]/g,gc=/^[a-z]:/i;function or(e){const t=gc.exec(e),n=t?t[0]:"";return n+e.slice(n.length).replace(pc,"_").replace(/(^|\/)_+(?=[^/]*$)/,"$1")}const mc=Symbol(),tt=go(lc);function ef(e){const t=Ee(()=>uc(tt.value,e.data.relativePath));return{site:t,theme:Ee(()=>t.value.themeConfig),page:Ee(()=>e.data),frontmatter:Ee(()=>e.data.frontmatter),params:Ee(()=>e.data.params),lang:Ee(()=>t.value.lang),dir:Ee(()=>t.value.dir),localeIndex:Ee(()=>t.value.localeIndex||"root"),title:Ee(()=>_i(t.value,e.data)),description:Ee(()=>e.data.description||t.value.description),isDark:dt(!1)}}function tf(){const e=gt(mc);if(!e)throw new Error("vitepress data not properly injected in app");return e}function _c(e,t){return`${e}${t}`.replace(/\/+/g,"/")}function lr(e){return pi.test(e)||e.startsWith(".")?e:_c(tt.value.base,e)}function bc(e){let t=e.replace(/\.html$/,"");if(t=decodeURIComponent(t),t=t.replace(/\/$/,"/index"),Ce){const n="/vue-h5-template/";t=or(t.slice(n.length).replace(/\//g,"_")||"index")+".md";let s=__VP_HASH_MAP__[t.toLowerCase()];s||(t=t.endsWith("_index.md")?t.slice(0,-9)+".md":t.slice(0,-3)+"_index.md",s=__VP_HASH_MAP__[t.toLowerCase()]),t=`${n}assets/${t}.${s}.js`}else t=`./${or(t.slice(1).replace(/\//g,"_"))}.md.js`;return t}let Gt=[];function nf(e){Gt.push(e),Cn(()=>{Gt=Gt.filter(t=>t!==e)})}const yc=Symbol(),cr="http://a.com",vc=()=>({path:"/",component:null,data:mi});function sf(e,t){const n=pn(vc()),s={route:n,go:r};async function r(l=Ce?location.href:"/"){var a,d;await((a=s.onBeforeRouteChange)==null?void 0:a.call(s,l));const c=new URL(l,cr);tt.value.cleanUrls||!c.pathname.endsWith("/")&&!c.pathname.endsWith(".html")&&(c.pathname+=".html",l=c.pathname+c.search+c.hash),Ce&&l!==location.href&&(history.replaceState({scrollPosition:window.scrollY},document.title),history.pushState(null,"",l)),await o(l),await((d=s.onAfterRouteChanged)==null?void 0:d.call(s,l))}let i=null;async function o(l,c=0,a=!1){const d=new URL(l,cr),p=i=d.pathname;try{let y=await e(p);if(i===p){i=null;const{default:x,__pageData:I}=y;if(!x)throw new Error(`Invalid route component: ${x}`);n.path=Ce?p:lr(p),n.component=Rt(x),n.data=Rt(I),Ce&&Lr(()=>{let R=tt.value.base+I.relativePath.replace(/(?:(^|\/)index)?\.md$/,"$1");if(!tt.value.cleanUrls&&!R.endsWith("/")&&(R+=".html"),R!==d.pathname&&(d.pathname=R,l=R+d.search+d.hash,history.replaceState(null,"",l)),d.hash&&!c){let $=null;try{$=document.querySelector(decodeURIComponent(d.hash))}catch(_){console.warn(_)}if($){fr($,d.hash);return}}window.scrollTo(0,c)})}}catch(y){if(!/fetch/.test(y.message)&&!/^\/404(\.html|\/)?$/.test(l)&&console.error(y),!a)try{const x=await fetch(tt.value.base+"hashmap.json");window.__VP_HASH_MAP__=await x.json(),await o(l,c,!0);return}catch{}i===p&&(i=null,n.path=Ce?p:lr(p),n.component=t?Rt(t):null,n.data=mi)}}return Ce&&(window.addEventListener("click",l=>{if(l.target.closest("button"))return;const a=l.target.closest("a");if(a&&!a.closest(".vp-raw")&&(a instanceof SVGElement||!a.download)){const{target:d}=a,{href:p,origin:y,pathname:x,hash:I,search:R}=new URL(a.href instanceof SVGAnimatedString?a.href.animVal:a.href,a.baseURI),$=window.location,_=x.match(/\.\w+$/);!l.ctrlKey&&!l.shiftKey&&!l.altKey&&!l.metaKey&&d!=="_blank"&&y===$.origin&&!(_&&_[0]!==".html")&&(l.preventDefault(),x===$.pathname&&R===$.search?I&&(I!==$.hash&&(history.pushState(null,"",I),window.dispatchEvent(new Event("hashchange"))),fr(a,I,a.classList.contains("header-anchor"))):r(p))}},{capture:!0}),window.addEventListener("popstate",l=>{o(location.href,l.state&&l.state.scrollPosition||0)}),window.addEventListener("hashchange",l=>{l.preventDefault()})),s}function Cc(){const e=gt(yc);if(!e)throw new Error("useRouter() is called without provider.");return e}function yi(){return Cc().route}function fr(e,t,n=!1){let s=null;try{s=e.classList.contains("header-anchor")?e:document.querySelector(decodeURIComponent(t))}catch(r){console.warn(r)}if(s){const r=tt.value.scrollOffset;let i=0;if(typeof r=="number")i=r;else if(typeof r=="string")i=ar(r);else if(Array.isArray(r))for(const c of r){const a=ar(c);if(a){i=a;break}}const o=parseInt(window.getComputedStyle(s).paddingTop,10),l=window.scrollY+s.getBoundingClientRect().top-i+o;!n||Math.abs(l-window.scrollY)>window.innerHeight?window.scrollTo(0,l):window.scrollTo({left:0,top:l,behavior:"smooth"})}}function ar(e){const t=document.querySelector(e);if(!t)return 0;const n=t.getBoundingClientRect().bottom;return n<0?0:n+24}const ur=()=>Gt.forEach(e=>e()),rf=us({name:"VitePressContent",props:{as:{type:[Object,String],default:"div"}},setup(e){const t=yi();return()=>qn(e.as,{style:{position:"relative"}},[t.component?qn(t.component,{onVnodeMounted:ur,onVnodeUpdated:ur}):"404 Page Not Found"])}}),wc="modulepreload",xc=function(e){return"/vue-h5-template/"+e},dr={},of=function(t,n,s){if(!n||n.length===0)return t();const r=document.getElementsByTagName("link");return Promise.all(n.map(i=>{if(i=xc(i),i in dr)return;dr[i]=!0;const o=i.endsWith(".css"),l=o?'[rel="stylesheet"]':"";if(!!s)for(let d=r.length-1;d>=0;d--){const p=r[d];if(p.href===i&&(!o||p.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${i}"]${l}`))return;const a=document.createElement("link");if(a.rel=o?"stylesheet":wc,o||(a.as="script",a.crossOrigin=""),a.href=i,document.head.appendChild(a),o)return new Promise((d,p)=>{a.addEventListener("load",d),a.addEventListener("error",()=>p(new Error(`Unable to preload CSS for ${i}`)))})})).then(()=>t())};function lf(e,t){let n=[],s=!0;const r=i=>{if(s){s=!1;return}n.forEach(o=>document.head.removeChild(o)),n=[],i.forEach(o=>{const l=Ec(o);document.head.appendChild(l),n.push(l)})};$o(()=>{const i=e.data,o=t.value,l=i&&i.description,c=i&&i.frontmatter.head||[];document.title=_i(o,i),document.querySelector("meta[name=description]").setAttribute("content",l||o.description),r(bi(o.head,Ac(c)))})}function Ec([e,t,n]){const s=document.createElement(e);for(const r in t)s.setAttribute(r,t[r]);return n&&(s.innerHTML=n),s}function Tc(e){return e[0]==="meta"&&e[1]&&e[1].name==="description"}function Ac(e){return e.filter(t=>!Tc(t))}const Ln=new Set,vi=()=>document.createElement("link"),Rc=e=>{const t=vi();t.rel="prefetch",t.href=e,document.head.appendChild(t)},Pc=e=>{const t=new XMLHttpRequest;t.open("GET",e,t.withCredentials=!0),t.send()};let Jt;const Ic=Ce&&(Jt=vi())&&Jt.relList&&Jt.relList.supports&&Jt.relList.supports("prefetch")?Rc:Pc;function cf(){if(!Ce||!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(!Ln.has(c)){Ln.add(c);const a=bc(c);Ic(a)}}})}),t(()=>{document.querySelectorAll("#app a").forEach(i=>{const{target:o}=i,{hostname:l,pathname:c}=new URL(i.href instanceof SVGAnimatedString?i.href.animVal:i.href,i.baseURI),a=c.match(/\.\w+$/);a&&a[0]!==".html"||o!=="_blank"&&l===location.hostname&&(c!==location.pathname?n.observe(i):Ln.add(c))})})};vn(s);const r=yi();Zt(()=>r.path,s),Cn(()=>{n&&n.disconnect()})}const ff=us({setup(e,{slots:t}){const n=dt(!1);return vn(()=>{n.value=!0}),()=>n.value&&t.default?t.default():null}});function af(){if(Ce){const e=new Map;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);let l="";i.querySelectorAll("span.line:not(.diff.remove)").forEach(c=>l+=(c.textContent||"")+` +`),l=l.slice(0,-1),o&&(l=l.replace(/^ *(\$|>) /gm,"").trim()),Oc(l).then(()=>{n.classList.add("copied"),clearTimeout(e.get(n));const c=setTimeout(()=>{n.classList.remove("copied"),n.blur(),e.delete(n)},2e3);e.set(n,c)})}})}}async function Oc(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 uf(){Ce&&window.addEventListener("click",e=>{var n,s;const t=e.target;if(t.matches(".vp-code-group input")){const r=(n=t.parentElement)==null?void 0:n.parentElement,i=Array.from((r==null?void 0:r.querySelectorAll("input"))||[]).indexOf(t),o=r==null?void 0:r.querySelector('div[class*="language-"].active'),l=(s=r==null?void 0:r.querySelectorAll('div[class*="language-"]:not(.language-id)'))==null?void 0:s[i];o&&l&&o!==l&&(o.classList.remove("active"),l.classList.add("active"))}})}export{Jc as $,ri as A,Fo as B,zc as C,jc as D,Cl as E,he as F,se as G,Gn as H,Uc as I,of as J,Bc as K,pi as L,Ce as M,Dc as N,Nc as O,Qc as P,Hc as Q,qc as R,Gc as S,di as T,gt as U,ll as V,zo as W,nf as X,go as Y,Lr as Z,Zc as _,li as a,kc as a0,$c as a1,Yc as a2,Wc as a3,lf as a4,yc as a5,ef as a6,mc as a7,rf as a8,ff as a9,tt as aa,Xc as ab,sf as ac,bc as ad,cf as ae,af,uf as ag,qn as ah,Cc as ai,_o as b,Vc as c,us as d,Lc as e,Ir as f,Mc as g,dt as h,ji as i,Sc as j,$o as k,Ee as l,ci as m,es as n,ni as o,vn as p,ac as q,Kc as r,lr as s,Fc as t,tf as u,fc as v,Zt as w,yi as x,Cn as y,oi as z}; diff --git a/assets/chunks/theme.c3b80f96.js b/assets/chunks/theme.c3b80f96.js deleted file mode 100644 index fe3da6c..0000000 --- a/assets/chunks/theme.c3b80f96.js +++ /dev/null @@ -1,7 +0,0 @@ -import{d as g,o as a,c as i,r as u,n as M,a as C,t as w,_ as p,u as tt,b as c,e as b,f as x,g as nt,h as G,i as ze,j as st,k as ot,w as q,l as Y,m as at,P as ct,p as ve,q as K,s as Z,v as ce,x as r,F as I,y,z as v,T as fe,A as m,B as te,C as h,D as R,E as lt,G as it,H as rt,I as U,J as De,K as ut,L as dt,M as B,N as E,O as H,Q as _t,R as Ie,S as he,U as ne,V as vt,W as X,X as pe,Y as ft,Z as ht,$ as pt,a0 as mt,a1 as gt,a2 as yt}from"./framework.522debca.js";const bt=g({__name:"VPBadge",props:{text:null,type:null},setup(e){return(t,n)=>(a(),i("span",{class:M(["VPBadge",e.type??"tip"])},[u(t.$slots,"default",{},()=>[C(w(e.text),1)],!0)],2))}});const kt=p(bt,[["__scopeId","data-v-350d3852"]]),V=tt;var Ce;const Fe=typeof window<"u",$t=e=>typeof e=="string",Pt=()=>{};Fe&&((Ce=window==null?void 0:window.navigator)!=null&&Ce.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent);function Ge(e){return typeof e=="function"?e():c(e)}function wt(e){return e}function Re(e){return st()?(ot(e),!0):!1}function Vt(e){return typeof e=="function"?b(e):x(e)}function xt(e,t=!0){nt()?G(e):t?e():ze(e)}function St(e){var t;const n=Ge(e);return(t=n==null?void 0:n.$el)!=null?t:n}const me=Fe?window:void 0;function Lt(...e){let t,n,s,o;if($t(e[0])||Array.isArray(e[0])?([n,s,o]=e,t=me):[t,n,s,o]=e,!t)return Pt;Array.isArray(n)||(n=[n]),Array.isArray(s)||(s=[s]);const l=[],d=()=>{l.forEach($=>$()),l.length=0},f=($,L,P,S)=>($.addEventListener(L,P,S),()=>$.removeEventListener(L,P,S)),_=q(()=>[St(t),Ge(o)],([$,L])=>{d(),$&&l.push(...n.flatMap(P=>s.map(S=>f($,P,S,L))))},{immediate:!0,flush:"post"}),k=()=>{_(),d()};return Re(k),k}function Mt(e,t=!1){const n=x(),s=()=>n.value=!!e();return s(),xt(s,t),n}function ue(e,t={}){const{window:n=me}=t,s=Mt(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let o;const l=x(!1),d=()=>{o&&("removeEventListener"in o?o.removeEventListener("change",f):o.removeListener(f))},f=()=>{s.value&&(d(),o=n.matchMedia(Vt(e).value),l.value=o.matches,"addEventListener"in o?o.addEventListener("change",f):o.addListener(f))};return Y(f),Re(()=>d()),l}const Te=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Be="__vueuse_ssr_handlers__";Te[Be]=Te[Be]||{};var Ne;(function(e){e.UP="UP",e.RIGHT="RIGHT",e.DOWN="DOWN",e.LEFT="LEFT",e.NONE="NONE"})(Ne||(Ne={}));var It=Object.defineProperty,Ae=Object.getOwnPropertySymbols,Ct=Object.prototype.hasOwnProperty,Tt=Object.prototype.propertyIsEnumerable,Ee=(e,t,n)=>t in e?It(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Bt=(e,t)=>{for(var n in t||(t={}))Ct.call(t,n)&&Ee(e,n,t[n]);if(Ae)for(var n of Ae(t))Tt.call(t,n)&&Ee(e,n,t[n]);return e};const Nt={easeInSine:[.12,0,.39,0],easeOutSine:[.61,1,.88,1],easeInOutSine:[.37,0,.63,1],easeInQuad:[.11,0,.5,0],easeOutQuad:[.5,1,.89,1],easeInOutQuad:[.45,0,.55,1],easeInCubic:[.32,0,.67,0],easeOutCubic:[.33,1,.68,1],easeInOutCubic:[.65,0,.35,1],easeInQuart:[.5,0,.75,0],easeOutQuart:[.25,1,.5,1],easeInOutQuart:[.76,0,.24,1],easeInQuint:[.64,0,.78,0],easeOutQuint:[.22,1,.36,1],easeInOutQuint:[.83,0,.17,1],easeInExpo:[.7,0,.84,0],easeOutExpo:[.16,1,.3,1],easeInOutExpo:[.87,0,.13,1],easeInCirc:[.55,0,1,.45],easeOutCirc:[0,.55,.45,1],easeInOutCirc:[.85,0,.15,1],easeInBack:[.36,0,.66,-.56],easeOutBack:[.34,1.56,.64,1],easeInOutBack:[.68,-.6,.32,1.6]};Bt({linear:wt},Nt);function At({window:e=me}={}){if(!e)return{x:x(0),y:x(0)};const t=x(e.scrollX),n=x(e.scrollY);return Lt(e,"scroll",()=>{t.value=e.scrollX,n.value=e.scrollY},{capture:!1,passive:!0}),{x:t,y:n}}function Et(e,t){let n,s=!1;return()=>{n&&clearTimeout(n),s?n=setTimeout(e,t):(e(),s=!0,setTimeout(()=>{s=!1},t))}}function de(e){return/^\//.test(e)?e:`/${e}`}function J(e){if(at(e))return e.replace(ct,"");const{site:t}=V(),{pathname:n,search:s,hash:o}=new URL(e,"http://example.com"),l=n.endsWith("/")||n.endsWith(".html")?e:e.replace(/(?:(^\.+)\/)?.*$/,`$1${n.replace(/(\.md)?$/,t.value.cleanUrls?"":".html")}${s}${o}`);return ve(l)}function Ue(e,t){if(Array.isArray(e))return e;if(e==null)return[];t=de(t);const n=Object.keys(e).sort((s,o)=>o.split("/").length-s.split("/").length).find(s=>t.startsWith(de(s)));return n?e[n]:[]}function Ht(e){const t=[];let n=0;for(const s in e){const o=e[s];if(o.items){n=t.push(o);continue}t[n]||t.push({items:[]}),t[n].items.push(o)}return t}function Ot(e){const t=[];function n(s){for(const o of s)o.text&&o.link&&t.push({text:o.text,link:o.link}),o.items&&n(o.items)}return n(e),t}function _e(e,t){return Array.isArray(t)?t.some(n=>_e(e,n)):K(e,t.link)?!0:t.items?_e(e,t.items):!1}function O(){const e=Z(),{theme:t,frontmatter:n}=V(),s=ue("(min-width: 960px)"),o=x(!1),l=b(()=>{const T=t.value.sidebar,N=e.data.relativePath;return T?Ue(T,N):[]}),d=b(()=>n.value.sidebar!==!1&&l.value.length>0&&n.value.layout!=="home"),f=b(()=>_?n.value.aside==null?t.value.aside==="left":n.value.aside==="left":!1),_=b(()=>n.value.layout==="home"?!1:n.value.aside!=null?!!n.value.aside:t.value.aside!==!1),k=b(()=>d.value&&s.value),$=b(()=>d.value?Ht(l.value):[]);function L(){o.value=!0}function P(){o.value=!1}function S(){o.value?P():L()}return{isOpen:o,sidebar:l,sidebarGroups:$,hasSidebar:d,hasAside:_,leftAside:f,isSidebarEnabled:k,open:L,close:P,toggle:S}}function zt(e,t){let n;Y(()=>{n=e.value?document.activeElement:void 0}),G(()=>{window.addEventListener("keyup",s)}),ce(()=>{window.removeEventListener("keyup",s)});function s(o){o.key==="Escape"&&e.value&&(t(),n==null||n.focus())}}function Dt(e){const{page:t}=V(),n=x(!1),s=b(()=>e.value.collapsed!=null),o=b(()=>!!e.value.link),l=b(()=>K(t.value.relativePath,e.value.link)),d=b(()=>l.value?!0:e.value.items?_e(t.value.relativePath,e.value.items):!1),f=b(()=>!!(e.value.items&&e.value.items.length));Y(()=>{n.value=!!(s.value&&e.value.collapsed)}),Y(()=>{(l.value||d.value)&&(n.value=!1)});function _(){s.value&&(n.value=!n.value)}return{collapsed:n,collapsible:s,isLink:o,isActiveLink:l,hasActiveLink:d,hasChildren:f,toggle:_}}const Ft=g({__name:"VPSkipLink",setup(e){const t=Z(),n=x();q(()=>t.path,()=>n.value.focus());function s({target:o}){const l=document.querySelector(decodeURIComponent(o.hash));if(l){const d=()=>{l.removeAttribute("tabindex"),l.removeEventListener("blur",d)};l.setAttribute("tabindex","-1"),l.addEventListener("blur",d),l.focus(),window.scrollTo(0,0)}}return(o,l)=>(a(),i(I,null,[r("span",{ref_key:"backToTop",ref:n,tabindex:"-1"},null,512),r("a",{href:"#VPContent",class:"VPSkipLink visually-hidden",onClick:s}," Skip to content ")],64))}});const Gt=p(Ft,[["__scopeId","data-v-c8616af1"]]),Rt={key:0,class:"VPBackdrop"},Ut=g({__name:"VPBackdrop",props:{show:{type:Boolean}},setup(e){return(t,n)=>(a(),y(fe,{name:"fade"},{default:v(()=>[e.show?(a(),i("div",Rt)):m("",!0)]),_:1}))}});const jt=p(Ut,[["__scopeId","data-v-c79a1216"]]);function qt(){const e=x(!1);function t(){e.value=!0,window.addEventListener("resize",o)}function n(){e.value=!1,window.removeEventListener("resize",o)}function s(){e.value?n():t()}function o(){window.outerWidth>=768&&n()}const l=Z();return q(()=>l.path,n),{isScreenOpen:e,openScreen:t,closeScreen:n,toggleScreen:s}}function ee({removeCurrent:e=!0,correspondingLink:t=!1}={}){const{site:n,localeIndex:s,page:o,theme:l}=V(),d=b(()=>{var _,k;return{label:(_=n.value.locales[s.value])==null?void 0:_.label,link:((k=n.value.locales[s.value])==null?void 0:k.link)||(s.value==="root"?"/":`/${s.value}/`)}});return{localeLinks:b(()=>Object.entries(n.value.locales).flatMap(([_,k])=>e&&d.value.label===k.label?[]:{text:k.label,link:Kt(k.link||(_==="root"?"/":`/${_}/`),l.value.i18nRouting!==!1&&t,o.value.relativePath.slice(d.value.link.length-1),!n.value.cleanUrls)})),currentLang:d}}function Kt(e,t,n,s){return t?e.replace(/\/$/,"")+de(n.replace(/(^|\/)?index.md$/,"$1").replace(/\.md$/,s?".html":"")):e}const Wt=["src","alt"],Qt={inheritAttrs:!1},Yt=g({...Qt,__name:"VPImage",props:{image:null,alt:null},setup(e){return(t,n)=>{const s=R("VPImage",!0);return e.image?(a(),i(I,{key:0},[typeof e.image=="string"||"src"in e.image?(a(),i("img",te({key:0,class:"VPImage"},typeof e.image=="string"?t.$attrs:{...e.image,...t.$attrs},{src:c(ve)(typeof e.image=="string"?e.image:e.image.src),alt:e.alt??(typeof e.image=="string"?"":e.image.alt||"")}),null,16,Wt)):(a(),i(I,{key:1},[h(s,te({class:"dark",image:e.image.dark,alt:e.image.alt},t.$attrs),null,16,["image","alt"]),h(s,te({class:"light",image:e.image.light,alt:e.image.alt},t.$attrs),null,16,["image","alt"])],64))],64)):m("",!0)}}});const ge=p(Yt,[["__scopeId","data-v-6db2186b"]]),Xt=["href"],Jt=g({__name:"VPNavBarTitle",setup(e){const{site:t,theme:n}=V(),{hasSidebar:s}=O(),{currentLang:o}=ee();return(l,d)=>(a(),i("div",{class:M(["VPNavBarTitle",{"has-sidebar":c(s)}])},[r("a",{class:"title",href:c(J)(c(o).link)},[u(l.$slots,"nav-bar-title-before",{},void 0,!0),c(n).logo?(a(),y(ge,{key:0,class:"logo",image:c(n).logo},null,8,["image"])):m("",!0),c(n).siteTitle?(a(),i(I,{key:1},[C(w(c(n).siteTitle),1)],64)):c(n).siteTitle===void 0?(a(),i(I,{key:2},[C(w(c(t).title),1)],64)):m("",!0),u(l.$slots,"nav-bar-title-after",{},void 0,!0)],8,Xt)],2))}});const Zt=p(Jt,[["__scopeId","data-v-f4ef19a3"]]);const en={key:0,class:"VPNavBarSearch"},tn={key:1,id:"docsearch"},nn={class:"DocSearch-Button-Container"},sn=r("svg",{class:"DocSearch-Search-Icon",width:"20",height:"20",viewBox:"0 0 20 20","aria-label":"search icon"},[r("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none","fill-rule":"evenodd","stroke-linecap":"round","stroke-linejoin":"round"})],-1),on={class:"DocSearch-Button-Placeholder"},an=r("span",{class:"DocSearch-Button-Keys"},[r("kbd",{class:"DocSearch-Button-Key"}),r("kbd",{class:"DocSearch-Button-Key"},"K")],-1),cn=g({__name:"VPNavBarSearch",setup(e){it($=>({"673bc564":l.value}));const t=lt(()=>rt(()=>import("./VPAlgoliaSearchBox.036fc84c.js"),["assets/chunks/VPAlgoliaSearchBox.036fc84c.js","assets/chunks/framework.522debca.js"])),{theme:n,localeIndex:s}=V(),o=x(!1),l=x("'Meta'"),d=b(()=>{var $,L,P,S,T,N,A,z;return((T=(S=(P=(L=($=n.value.algolia)==null?void 0:$.locales)==null?void 0:L[s.value])==null?void 0:P.translations)==null?void 0:S.button)==null?void 0:T.buttonText)||((z=(A=(N=n.value.algolia)==null?void 0:N.translations)==null?void 0:A.button)==null?void 0:z.buttonText)||"Search"}),f=()=>{const $="VPAlgoliaPreconnect";(window.requestIdleCallback||setTimeout)(()=>{const P=document.createElement("link");P.id=$,P.rel="preconnect",P.href=`https://${n.value.algolia.appId}-dsn.algolia.net`,P.crossOrigin="",document.head.appendChild(P)})};G(()=>{if(!n.value.algolia)return;f(),l.value=/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?"'⌘'":"'Ctrl'";const $=P=>{P.key==="k"&&(P.ctrlKey||P.metaKey)&&(P.preventDefault(),_(),L())},L=()=>{window.removeEventListener("keydown",$)};window.addEventListener("keydown",$),ce(L)});function _(){o.value||(o.value=!0,setTimeout(k,16))}function k(){const $=new Event("keydown");$.key="k",$.metaKey=!0,window.dispatchEvent($),setTimeout(()=>{document.querySelector(".DocSearch-Modal")||k()},16)}return($,L)=>c(n).algolia?(a(),i("div",en,[o.value?(a(),y(c(t),{key:0,algolia:c(n).algolia},null,8,["algolia"])):(a(),i("div",tn,[r("button",{type:"button",class:"DocSearch DocSearch-Button","aria-label":"Search",onClick:_},[r("span",nn,[sn,r("span",on,w(c(d)),1)]),an])]))])):m("",!0)}});const ln={},rn={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",height:"24px",viewBox:"0 0 24 24",width:"24px"},un=r("path",{d:"M0 0h24v24H0V0z",fill:"none"},null,-1),dn=r("path",{d:"M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z"},null,-1),_n=[un,dn];function vn(e,t){return a(),i("svg",rn,_n)}const fn=p(ln,[["render",vn]]),hn=g({__name:"VPLink",props:{tag:null,href:null,noIcon:{type:Boolean},target:null,rel:null},setup(e){const t=e,n=b(()=>t.tag??t.href?"a":"span"),s=b(()=>t.href&&De.test(t.href));return(o,l)=>(a(),y(U(c(n)),{class:M(["VPLink",{link:e.href}]),href:e.href?c(J)(e.href):void 0,target:e.target||(c(s)?"_blank":void 0),rel:e.rel||(c(s)?"noreferrer":void 0)},{default:v(()=>[u(o.$slots,"default",{},void 0,!0),c(s)&&!e.noIcon?(a(),y(fn,{key:0,class:"icon"})):m("",!0)]),_:3},8,["class","href","target","rel"]))}});const D=p(hn,[["__scopeId","data-v-8f4dc553"]]),pn=g({__name:"VPNavBarMenuLink",props:{item:null},setup(e){const{page:t}=V();return(n,s)=>(a(),y(D,{class:M({VPNavBarMenuLink:!0,active:c(K)(c(t).relativePath,e.item.activeMatch||e.item.link,!!e.item.activeMatch)}),href:e.item.link,target:e.item.target,rel:e.item.rel,tabindex:"0"},{default:v(()=>[C(w(e.item.text),1)]),_:1},8,["class","href","target","rel"]))}});const mn=p(pn,[["__scopeId","data-v-37adc828"]]),ye=x();let je=!1,re=0;function gn(e){const t=x(!1);if(ut){!je&&yn(),re++;const n=q(ye,s=>{var o,l,d;s===e.el.value||(o=e.el.value)!=null&&o.contains(s)?(t.value=!0,(l=e.onFocus)==null||l.call(e)):(t.value=!1,(d=e.onBlur)==null||d.call(e))});ce(()=>{n(),re--,re||bn()})}return dt(t)}function yn(){document.addEventListener("focusin",qe),je=!0,ye.value=document.activeElement}function bn(){document.removeEventListener("focusin",qe)}function qe(){ye.value=document.activeElement}const kn={},$n={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},Pn=r("path",{d:"M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"},null,-1),wn=[Pn];function Vn(e,t){return a(),i("svg",$n,wn)}const Ke=p(kn,[["render",Vn]]),xn={},Sn={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},Ln=r("circle",{cx:"12",cy:"12",r:"2"},null,-1),Mn=r("circle",{cx:"19",cy:"12",r:"2"},null,-1),In=r("circle",{cx:"5",cy:"12",r:"2"},null,-1),Cn=[Ln,Mn,In];function Tn(e,t){return a(),i("svg",Sn,Cn)}const Bn=p(xn,[["render",Tn]]),Nn={class:"VPMenuLink"},An=g({__name:"VPMenuLink",props:{item:null},setup(e){const{page:t}=V();return(n,s)=>(a(),i("div",Nn,[h(D,{class:M({active:c(K)(c(t).relativePath,e.item.activeMatch||e.item.link,!!e.item.activeMatch)}),href:e.item.link,target:e.item.target,rel:e.item.rel},{default:v(()=>[C(w(e.item.text),1)]),_:1},8,["class","href","target","rel"])]))}});const le=p(An,[["__scopeId","data-v-d2c93bab"]]),En={class:"VPMenuGroup"},Hn={key:0,class:"title"},On=g({__name:"VPMenuGroup",props:{text:null,items:null},setup(e){return(t,n)=>(a(),i("div",En,[e.text?(a(),i("p",Hn,w(e.text),1)):m("",!0),(a(!0),i(I,null,B(e.items,s=>(a(),i(I,null,["link"in s?(a(),y(le,{key:0,item:s},null,8,["item"])):m("",!0)],64))),256))]))}});const zn=p(On,[["__scopeId","data-v-69e747b5"]]),Dn={class:"VPMenu"},Fn={key:0,class:"items"},Gn=g({__name:"VPMenu",props:{items:null},setup(e){return(t,n)=>(a(),i("div",Dn,[e.items?(a(),i("div",Fn,[(a(!0),i(I,null,B(e.items,s=>(a(),i(I,{key:s.text},["link"in s?(a(),y(le,{key:0,item:s},null,8,["item"])):(a(),y(zn,{key:1,text:s.text,items:s.items},null,8,["text","items"]))],64))),128))])):m("",!0),u(t.$slots,"default",{},void 0,!0)]))}});const Rn=p(Gn,[["__scopeId","data-v-e7ea1737"]]),Un=["aria-expanded","aria-label"],jn={key:0,class:"text"},qn={class:"menu"},Kn=g({__name:"VPFlyout",props:{icon:null,button:null,label:null,items:null},setup(e){const t=x(!1),n=x();gn({el:n,onBlur:s});function s(){t.value=!1}return(o,l)=>(a(),i("div",{class:"VPFlyout",ref_key:"el",ref:n,onMouseenter:l[1]||(l[1]=d=>t.value=!0),onMouseleave:l[2]||(l[2]=d=>t.value=!1)},[r("button",{type:"button",class:"button","aria-haspopup":"true","aria-expanded":t.value,"aria-label":e.label,onClick:l[0]||(l[0]=d=>t.value=!t.value)},[e.button||e.icon?(a(),i("span",jn,[e.icon?(a(),y(U(e.icon),{key:0,class:"option-icon"})):m("",!0),C(" "+w(e.button)+" ",1),h(Ke,{class:"text-icon"})])):(a(),y(Bn,{key:1,class:"icon"}))],8,Un),r("div",qn,[h(Rn,{items:e.items},{default:v(()=>[u(o.$slots,"default",{},void 0,!0)]),_:3},8,["items"])])],544))}});const be=p(Kn,[["__scopeId","data-v-764effdf"]]),Wn=g({__name:"VPNavBarMenuGroup",props:{item:null},setup(e){const{page:t}=V();return(n,s)=>(a(),y(be,{class:M({VPNavBarMenuGroup:!0,active:c(K)(c(t).relativePath,e.item.activeMatch,!!e.item.activeMatch)}),button:e.item.text,items:e.item.items},null,8,["class","button","items"]))}}),Qn=e=>(E("data-v-7f418b0f"),e=e(),H(),e),Yn={key:0,"aria-labelledby":"main-nav-aria-label",class:"VPNavBarMenu"},Xn=Qn(()=>r("span",{id:"main-nav-aria-label",class:"visually-hidden"},"Main Navigation",-1)),Jn=g({__name:"VPNavBarMenu",setup(e){const{theme:t}=V();return(n,s)=>c(t).nav?(a(),i("nav",Yn,[Xn,(a(!0),i(I,null,B(c(t).nav,o=>(a(),i(I,{key:o.text},["link"in o?(a(),y(mn,{key:0,item:o},null,8,["item"])):(a(),y(Wn,{key:1,item:o},null,8,["item"]))],64))),128))])):m("",!0)}});const Zn=p(Jn,[["__scopeId","data-v-7f418b0f"]]),es={},ts={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},ns=r("path",{d:"M0 0h24v24H0z",fill:"none"},null,-1),ss=r("path",{d:" M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z ",class:"css-c4d79v"},null,-1),os=[ns,ss];function as(e,t){return a(),i("svg",ts,os)}const We=p(es,[["render",as]]),cs={class:"items"},ls={class:"title"},is=g({__name:"VPNavBarTranslations",setup(e){const{theme:t}=V(),{localeLinks:n,currentLang:s}=ee({correspondingLink:!0});return(o,l)=>c(n).length&&c(s).label?(a(),y(be,{key:0,class:"VPNavBarTranslations",icon:We,label:c(t).langMenuLabel||"Change language"},{default:v(()=>[r("div",cs,[r("p",ls,w(c(s).label),1),(a(!0),i(I,null,B(c(n),d=>(a(),y(le,{key:d.link,item:d},null,8,["item"]))),128))])]),_:1},8,["label"])):m("",!0)}});const rs=p(is,[["__scopeId","data-v-74abcbb9"]]);const us={},ds={class:"VPSwitch",type:"button",role:"switch"},_s={class:"check"},vs={key:0,class:"icon"};function fs(e,t){return a(),i("button",ds,[r("span",_s,[e.$slots.default?(a(),i("span",vs,[u(e.$slots,"default",{},void 0,!0)])):m("",!0)])])}const hs=p(us,[["render",fs],["__scopeId","data-v-f3c41672"]]),ps={},ms={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},gs=_t('',9),ys=[gs];function bs(e,t){return a(),i("svg",ms,ys)}const ks=p(ps,[["render",bs]]),$s={},Ps={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},ws=r("path",{d:"M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"},null,-1),Vs=[ws];function xs(e,t){return a(),i("svg",Ps,Vs)}const Ss=p($s,[["render",xs]]),Ls={title:"toggle dark mode"},Ms=g({__name:"VPSwitchAppearance",setup(e){const{site:t,isDark:n}=V(),s=x(!1),o=typeof localStorage<"u"?l():()=>{};G(()=>{s.value=document.documentElement.classList.contains("dark")});function l(){const d=window.matchMedia("(prefers-color-scheme: dark)"),f=document.documentElement.classList;let _=localStorage.getItem(Ie),k=t.value.appearance==="dark"&&_==null||(_==="auto"||_==null?d.matches:_==="dark");d.onchange=P=>{_==="auto"&&L(k=P.matches)};function $(){L(k=!k),_=k?d.matches?"auto":"dark":d.matches?"light":"auto",localStorage.setItem(Ie,_)}function L(P){const S=document.createElement("style");S.type="text/css",S.appendChild(document.createTextNode(`:not(.VPSwitchAppearance):not(.VPSwitchAppearance *) { - -webkit-transition: none !important; - -moz-transition: none !important; - -o-transition: none !important; - -ms-transition: none !important; - transition: none !important; -}`)),document.head.appendChild(S),s.value=P,f[P?"add":"remove"]("dark"),window.getComputedStyle(S).opacity,document.head.removeChild(S)}return $}return q(s,d=>{n.value=d}),(d,f)=>(a(),i("label",Ls,[h(hs,{class:"VPSwitchAppearance","aria-checked":s.value,onClick:c(o)},{default:v(()=>[h(ks,{class:"sun"}),h(Ss,{class:"moon"})]),_:1},8,["aria-checked","onClick"])]))}});const ke=p(Ms,[["__scopeId","data-v-a9c8afb8"]]),Is={key:0,class:"VPNavBarAppearance"},Cs=g({__name:"VPNavBarAppearance",setup(e){const{site:t}=V();return(n,s)=>c(t).appearance?(a(),i("div",Is,[h(ke)])):m("",!0)}});const Ts=p(Cs,[["__scopeId","data-v-f6a63727"]]),Bs={discord:'Discord',facebook:'Facebook',github:'GitHub',instagram:'Instagram',linkedin:'LinkedIn',mastodon:'Mastodon',slack:'Slack',twitter:'Twitter',youtube:'YouTube'},Ns=["href","aria-label","innerHTML"],As=g({__name:"VPSocialLink",props:{icon:null,link:null},setup(e){const t=e,n=b(()=>typeof t.icon=="object"?t.icon.svg:Bs[t.icon]);return(s,o)=>(a(),i("a",{class:"VPSocialLink",href:e.link,"aria-label":typeof e.icon=="string"?e.icon:"",target:"_blank",rel:"noopener",innerHTML:c(n)},null,8,Ns))}});const Es=p(As,[["__scopeId","data-v-c530cc0a"]]),Hs={class:"VPSocialLinks"},Os=g({__name:"VPSocialLinks",props:{links:null},setup(e){return(t,n)=>(a(),i("div",Hs,[(a(!0),i(I,null,B(e.links,({link:s,icon:o})=>(a(),y(Es,{key:s,icon:o,link:s},null,8,["icon","link"]))),128))]))}});const $e=p(Os,[["__scopeId","data-v-f6988cfb"]]),zs=g({__name:"VPNavBarSocialLinks",setup(e){const{theme:t}=V();return(n,s)=>c(t).socialLinks?(a(),y($e,{key:0,class:"VPNavBarSocialLinks",links:c(t).socialLinks},null,8,["links"])):m("",!0)}});const Ds=p(zs,[["__scopeId","data-v-0394ad82"]]),Fs={key:0,class:"group translations"},Gs={class:"trans-title"},Rs={key:1,class:"group"},Us={class:"item appearance"},js={class:"label"},qs={class:"appearance-action"},Ks={key:2,class:"group"},Ws={class:"item social-links"},Qs=g({__name:"VPNavBarExtra",setup(e){const{site:t,theme:n}=V(),{localeLinks:s,currentLang:o}=ee({correspondingLink:!0}),l=b(()=>s.value.length&&o.value.label||t.value.appearance||n.value.socialLinks);return(d,f)=>c(l)?(a(),y(be,{key:0,class:"VPNavBarExtra",label:"extra navigation"},{default:v(()=>[c(s).length&&c(o).label?(a(),i("div",Fs,[r("p",Gs,w(c(o).label),1),(a(!0),i(I,null,B(c(s),_=>(a(),y(le,{key:_.link,item:_},null,8,["item"]))),128))])):m("",!0),c(t).appearance?(a(),i("div",Rs,[r("div",Us,[r("p",js,w(c(n).darkModeSwitchLabel||"Appearance"),1),r("div",qs,[h(ke)])])])):m("",!0),c(n).socialLinks?(a(),i("div",Ks,[r("div",Ws,[h($e,{class:"social-links-list",links:c(n).socialLinks},null,8,["links"])])])):m("",!0)]),_:1})):m("",!0)}});const Ys=p(Qs,[["__scopeId","data-v-40855f84"]]),Xs=e=>(E("data-v-e5dd9c1c"),e=e(),H(),e),Js=["aria-expanded"],Zs=Xs(()=>r("span",{class:"container"},[r("span",{class:"top"}),r("span",{class:"middle"}),r("span",{class:"bottom"})],-1)),eo=[Zs],to=g({__name:"VPNavBarHamburger",props:{active:{type:Boolean}},emits:["click"],setup(e){return(t,n)=>(a(),i("button",{type:"button",class:M(["VPNavBarHamburger",{active:e.active}]),"aria-label":"mobile navigation","aria-expanded":e.active,"aria-controls":"VPNavScreen",onClick:n[0]||(n[0]=s=>t.$emit("click"))},eo,10,Js))}});const no=p(to,[["__scopeId","data-v-e5dd9c1c"]]),so=e=>(E("data-v-1d30fa41"),e=e(),H(),e),oo={class:"container"},ao={class:"title"},co={class:"content"},lo=so(()=>r("div",{class:"curtain"},null,-1)),io={class:"content-body"},ro=g({__name:"VPNavBar",props:{isScreenOpen:{type:Boolean}},emits:["toggle-screen"],setup(e){const{y:t}=At(),{hasSidebar:n}=O(),s=b(()=>({"has-sidebar":n.value,fill:t.value>0}));return(o,l)=>(a(),i("div",{class:M(["VPNavBar",c(s)])},[r("div",oo,[r("div",ao,[h(Zt,null,{"nav-bar-title-before":v(()=>[u(o.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":v(()=>[u(o.$slots,"nav-bar-title-after",{},void 0,!0)]),_:3})]),r("div",co,[lo,r("div",io,[u(o.$slots,"nav-bar-content-before",{},void 0,!0),h(cn,{class:"search"}),h(Zn,{class:"menu"}),h(rs,{class:"translations"}),h(Ts,{class:"appearance"}),h(Ds,{class:"social-links"}),h(Ys,{class:"extra"}),u(o.$slots,"nav-bar-content-after",{},void 0,!0),h(no,{class:"hamburger",active:e.isScreenOpen,onClick:l[0]||(l[0]=d=>o.$emit("toggle-screen"))},null,8,["active"])])])])],2))}});const uo=p(ro,[["__scopeId","data-v-1d30fa41"]]);function _o(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t1),j=[],oe=!1,we=-1,W=void 0,F=void 0,Q=void 0,Qe=function(t){return j.some(function(n){return!!(n.options.allowTouchMove&&n.options.allowTouchMove(t))})},ae=function(t){var n=t||window.event;return Qe(n.target)||n.touches.length>1?!0:(n.preventDefault&&n.preventDefault(),!1)},vo=function(t){if(Q===void 0){var n=!!t&&t.reserveScrollBarGap===!0,s=window.innerWidth-document.documentElement.clientWidth;if(n&&s>0){var o=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right"),10);Q=document.body.style.paddingRight,document.body.style.paddingRight=o+s+"px"}}W===void 0&&(W=document.body.style.overflow,document.body.style.overflow="hidden")},fo=function(){Q!==void 0&&(document.body.style.paddingRight=Q,Q=void 0),W!==void 0&&(document.body.style.overflow=W,W=void 0)},ho=function(){return window.requestAnimationFrame(function(){if(F===void 0){F={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left};var t=window,n=t.scrollY,s=t.scrollX,o=t.innerHeight;document.body.style.position="fixed",document.body.style.top=-n,document.body.style.left=-s,setTimeout(function(){return window.requestAnimationFrame(function(){var l=o-window.innerHeight;l&&n>=o&&(document.body.style.top=-(n+l))})},300)}})},po=function(){if(F!==void 0){var t=-parseInt(document.body.style.top,10),n=-parseInt(document.body.style.left,10);document.body.style.position=F.position,document.body.style.top=F.top,document.body.style.left=F.left,window.scrollTo(n,t),F=void 0}},mo=function(t){return t?t.scrollHeight-t.scrollTop<=t.clientHeight:!1},go=function(t,n){var s=t.targetTouches[0].clientY-we;return Qe(t.target)?!1:n&&n.scrollTop===0&&s>0||mo(n)&&s<0?ae(t):(t.stopPropagation(),!0)},Ye=function(t,n){if(!t){console.error("disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.");return}if(!j.some(function(o){return o.targetElement===t})){var s={targetElement:t,options:n||{}};j=[].concat(_o(j),[s]),se?ho():vo(n),se&&(t.ontouchstart=function(o){o.targetTouches.length===1&&(we=o.targetTouches[0].clientY)},t.ontouchmove=function(o){o.targetTouches.length===1&&go(o,t)},oe||(document.addEventListener("touchmove",ae,Pe?{passive:!1}:void 0),oe=!0))}},Xe=function(){se&&(j.forEach(function(t){t.targetElement.ontouchstart=null,t.targetElement.ontouchmove=null}),oe&&(document.removeEventListener("touchmove",ae,Pe?{passive:!1}:void 0),oe=!1),we=-1),se?po():fo(),j=[]};const yo=g({__name:"VPNavScreenMenuLink",props:{text:null,link:null},setup(e){const t=he("close-screen");return(n,s)=>(a(),y(D,{class:"VPNavScreenMenuLink",href:e.link,onClick:c(t)},{default:v(()=>[C(w(e.text),1)]),_:1},8,["href","onClick"]))}});const bo=p(yo,[["__scopeId","data-v-c328f34f"]]),ko={},$o={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},Po=r("path",{d:"M18.9,10.9h-6v-6c0-0.6-0.4-1-1-1s-1,0.4-1,1v6h-6c-0.6,0-1,0.4-1,1s0.4,1,1,1h6v6c0,0.6,0.4,1,1,1s1-0.4,1-1v-6h6c0.6,0,1-0.4,1-1S19.5,10.9,18.9,10.9z"},null,-1),wo=[Po];function Vo(e,t){return a(),i("svg",$o,wo)}const xo=p(ko,[["render",Vo]]),So=g({__name:"VPNavScreenMenuGroupLink",props:{text:null,link:null},setup(e){const t=he("close-screen");return(n,s)=>(a(),y(D,{class:"VPNavScreenMenuGroupLink",href:e.link,onClick:c(t)},{default:v(()=>[C(w(e.text),1)]),_:1},8,["href","onClick"]))}});const Je=p(So,[["__scopeId","data-v-3d20956d"]]),Lo={class:"VPNavScreenMenuGroupSection"},Mo={key:0,class:"title"},Io=g({__name:"VPNavScreenMenuGroupSection",props:{text:null,items:null},setup(e){return(t,n)=>(a(),i("div",Lo,[e.text?(a(),i("p",Mo,w(e.text),1)):m("",!0),(a(!0),i(I,null,B(e.items,s=>(a(),y(Je,{key:s.text,text:s.text,link:s.link},null,8,["text","link"]))),128))]))}});const Co=p(Io,[["__scopeId","data-v-7478538b"]]),To=["aria-controls","aria-expanded"],Bo={class:"button-text"},No=["id"],Ao={key:1,class:"group"},Eo=g({__name:"VPNavScreenMenuGroup",props:{text:null,items:null},setup(e){const t=e,n=x(!1),s=b(()=>`NavScreenGroup-${t.text.replace(" ","-").toLowerCase()}`);function o(){n.value=!n.value}return(l,d)=>(a(),i("div",{class:M(["VPNavScreenMenuGroup",{open:n.value}])},[r("button",{class:"button","aria-controls":c(s),"aria-expanded":n.value,onClick:o},[r("span",Bo,w(e.text),1),h(xo,{class:"button-icon"})],8,To),r("div",{id:c(s),class:"items"},[(a(!0),i(I,null,B(e.items,f=>(a(),i(I,{key:f.text},["link"in f?(a(),i("div",{key:f.text,class:"item"},[h(Je,{text:f.text,link:f.link},null,8,["text","link"])])):(a(),i("div",Ao,[h(Co,{text:f.text,items:f.items},null,8,["text","items"])]))],64))),128))],8,No)],2))}});const Ho=p(Eo,[["__scopeId","data-v-a9a19324"]]),Oo={key:0,class:"VPNavScreenMenu"},zo=g({__name:"VPNavScreenMenu",setup(e){const{theme:t}=V();return(n,s)=>c(t).nav?(a(),i("nav",Oo,[(a(!0),i(I,null,B(c(t).nav,o=>(a(),i(I,{key:o.text},["link"in o?(a(),y(bo,{key:0,text:o.text,link:o.link},null,8,["text","link"])):(a(),y(Ho,{key:1,text:o.text||"",items:o.items},null,8,["text","items"]))],64))),128))])):m("",!0)}}),Do={key:0,class:"VPNavScreenAppearance"},Fo={class:"text"},Go=g({__name:"VPNavScreenAppearance",setup(e){const{site:t,theme:n}=V();return(s,o)=>c(t).appearance?(a(),i("div",Do,[r("p",Fo,w(c(n).darkModeSwitchLabel||"Appearance"),1),h(ke)])):m("",!0)}});const Ro=p(Go,[["__scopeId","data-v-add8f686"]]),Uo={class:"list"},jo=g({__name:"VPNavScreenTranslations",setup(e){const{localeLinks:t,currentLang:n}=ee({correspondingLink:!0}),s=x(!1);function o(){s.value=!s.value}return(l,d)=>c(t).length&&c(n).label?(a(),i("div",{key:0,class:M(["VPNavScreenTranslations",{open:s.value}])},[r("button",{class:"title",onClick:o},[h(We,{class:"icon lang"}),C(" "+w(c(n).label)+" ",1),h(Ke,{class:"icon chevron"})]),r("ul",Uo,[(a(!0),i(I,null,B(c(t),f=>(a(),i("li",{key:f.link,class:"item"},[h(D,{class:"link",href:f.link},{default:v(()=>[C(w(f.text),1)]),_:2},1032,["href"])]))),128))])],2)):m("",!0)}});const qo=p(jo,[["__scopeId","data-v-d72aa483"]]),Ko=g({__name:"VPNavScreenSocialLinks",setup(e){const{theme:t}=V();return(n,s)=>c(t).socialLinks?(a(),y($e,{key:0,class:"VPNavScreenSocialLinks",links:c(t).socialLinks},null,8,["links"])):m("",!0)}}),Wo={class:"container"},Qo=g({__name:"VPNavScreen",props:{open:{type:Boolean}},setup(e){const t=x(null);function n(){Ye(t.value,{reserveScrollBarGap:!0})}function s(){Xe()}return(o,l)=>(a(),y(fe,{name:"fade",onEnter:n,onAfterLeave:s},{default:v(()=>[e.open?(a(),i("div",{key:0,class:"VPNavScreen",ref_key:"screen",ref:t},[r("div",Wo,[u(o.$slots,"nav-screen-content-before",{},void 0,!0),h(zo,{class:"menu"}),h(qo,{class:"translations"}),h(Ro,{class:"appearance"}),h(Ko,{class:"social-links"}),u(o.$slots,"nav-screen-content-after",{},void 0,!0)])],512)):m("",!0)]),_:3}))}});const Yo=p(Qo,[["__scopeId","data-v-724636ae"]]),Xo={class:"VPNav"},Jo=g({__name:"VPNav",setup(e){const{isScreenOpen:t,closeScreen:n,toggleScreen:s}=qt();return ne("close-screen",n),(o,l)=>(a(),i("header",Xo,[h(uo,{"is-screen-open":c(t),onToggleScreen:c(s)},{"nav-bar-title-before":v(()=>[u(o.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":v(()=>[u(o.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":v(()=>[u(o.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":v(()=>[u(o.$slots,"nav-bar-content-after",{},void 0,!0)]),_:3},8,["is-screen-open","onToggleScreen"]),h(Yo,{open:c(t)},{"nav-screen-content-before":v(()=>[u(o.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":v(()=>[u(o.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3},8,["open"])]))}});const Zo=p(Jo,[["__scopeId","data-v-7e5bc4a5"]]),ea={},ta={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},na=r("path",{d:"M17,11H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,11,17,11z"},null,-1),sa=r("path",{d:"M21,7H3C2.4,7,2,6.6,2,6s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,7,21,7z"},null,-1),oa=r("path",{d:"M21,15H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,15,21,15z"},null,-1),aa=r("path",{d:"M17,19H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,19,17,19z"},null,-1),ca=[na,sa,oa,aa];function la(e,t){return a(),i("svg",ta,ca)}const ia=p(ea,[["render",la]]);function ra(){const{hasSidebar:e}=O(),t=ue("(min-width: 960px)"),n=ue("(min-width: 1280px)");return{isAsideEnabled:b(()=>!n.value&&!t.value?!1:e.value?n.value:t.value)}}const ua=71;function Ve(e){return typeof e.outline=="object"&&!Array.isArray(e.outline)&&e.outline.label||e.outlineTitle||"On this page"}function xe(e){const t=[...document.querySelectorAll(".VPDoc h2,h3,h4,h5,h6")].filter(n=>n.id&&n.hasChildNodes()).map(n=>{const s=Number(n.tagName[1]);return{title:da(n),link:"#"+n.id,level:s}});return _a(t,e)}function da(e){let t="";for(const n of e.childNodes)if(n.nodeType===1){if(n.classList.contains("VPBadge")||n.classList.contains("header-anchor"))continue;t+=n.textContent}else n.nodeType===3&&(t+=n.textContent);return t.trim()}function _a(e,t){if(t===!1)return[];const n=(typeof t=="object"&&!Array.isArray(t)?t.level:t)||2,[s,o]=typeof n=="number"?[n,n]:n==="deep"?[2,6]:n;e=e.filter(d=>d.level>=s&&d.level<=o);const l=[];e:for(let d=0;d=0;_--){const k=e[_];if(k.level{requestAnimationFrame(l),window.addEventListener("scroll",s)}),vt(()=>{d(location.hash)}),ce(()=>{window.removeEventListener("scroll",s)});function l(){if(!n.value)return;const f=[].slice.call(e.value.querySelectorAll(".outline-link")),_=[].slice.call(document.querySelectorAll(".content .header-anchor")).filter(S=>f.some(T=>T.hash===S.hash&&S.offsetParent!==null)),k=window.scrollY,$=window.innerHeight,L=document.body.offsetHeight,P=Math.abs(k+$-L)<1;if(_.length&&P){d(_[_.length-1].hash);return}for(let S=0;S<_.length;S++){const T=_[S],N=_[S+1],[A,z]=fa(S,T,N);if(A){d(z);return}}}function d(f){o&&o.classList.remove("active"),f!==null&&(o=e.value.querySelector(`a[href="${decodeURIComponent(f)}"]`));const _=o;_?(_.classList.add("active"),t.value.style.top=_.offsetTop+33+"px",t.value.style.opacity="1"):(t.value.style.top="33px",t.value.style.opacity="0")}}function Oe(e){return e.parentElement.offsetTop-ua}function fa(e,t,n){const s=window.scrollY;return e===0&&s===0?[!0,null]:s{const o=R("VPDocOutlineItem",!0);return a(),i("ul",{class:M(e.root?"root":"nested")},[(a(!0),i(I,null,B(e.headers,({children:l,link:d,title:f})=>(a(),i("li",null,[r("a",{class:"outline-link",href:d,onClick:t},w(f),9,ha),l!=null&&l.length?(a(),y(o,{key:0,headers:l},null,8,["headers"])):m("",!0)]))),256))],2)}}});const Se=p(pa,[["__scopeId","data-v-8f12e865"]]),ma={},ga={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},ya=r("path",{d:"M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"},null,-1),ba=[ya];function ka(e,t){return a(),i("svg",ga,ba)}const Le=p(ma,[["render",ka]]),$a=g({__name:"VPLocalNavOutlineDropdown",setup(e){const{frontmatter:t,theme:n}=V(),s=x(!1),o=x(0),l=x();X(()=>{s.value=!1});function d(){s.value=!s.value,o.value=window.innerHeight+Math.min(window.scrollY-64,0)}function f($){$.target.classList.contains("outline-link")&&(l.value&&(l.value.style.transition="none"),ze(()=>{s.value=!1}))}function _(){s.value=!1,window.scrollTo({top:0,left:0,behavior:"smooth"})}const k=pe([]);return X(()=>{k.value=xe(t.value.outline??n.value.outline)}),($,L)=>(a(),i("div",{class:"VPLocalNavOutlineDropdown",style:ft({"--vp-vh":o.value+"px"})},[c(k).length>0?(a(),i("button",{key:0,onClick:d,class:M({open:s.value})},[C(w(c(Ve)(c(n)))+" ",1),h(Le,{class:"icon"})],2)):(a(),i("button",{key:1,onClick:_},w(c(n).returnToTopLabel||"Return to top"),1)),h(fe,{name:"flyout"},{default:v(()=>[s.value?(a(),i("div",{key:0,ref_key:"items",ref:l,class:"items",onClick:f},[r("a",{class:"top-link",href:"#",onClick:_},w(c(n).returnToTopLabel||"Return to top"),1),h(Se,{headers:c(k)},null,8,["headers"])],512)):m("",!0)]),_:1})],4))}});const Pa=p($a,[["__scopeId","data-v-079b16a8"]]),wa={key:0,class:"VPLocalNav"},Va=["aria-expanded"],xa={class:"menu-text"},Sa=g({__name:"VPLocalNav",props:{open:{type:Boolean}},emits:["open-menu"],setup(e){const{theme:t}=V(),{hasSidebar:n}=O();return(s,o)=>c(n)?(a(),i("div",wa,[r("button",{class:"menu","aria-expanded":e.open,"aria-controls":"VPSidebarNav",onClick:o[0]||(o[0]=l=>s.$emit("open-menu"))},[h(ia,{class:"menu-icon"}),r("span",xa,w(c(t).sidebarMenuLabel||"Menu"),1)],8,Va),h(Pa)])):m("",!0)}});const La=p(Sa,[["__scopeId","data-v-f5a2ca58"]]),Ma=e=>(E("data-v-c4656e6d"),e=e(),H(),e),Ia=["role","tabindex"],Ca=Ma(()=>r("div",{class:"indicator"},null,-1)),Ta=["onKeydown"],Ba={key:1,class:"items"},Na=g({__name:"VPSidebarItem",props:{item:null,depth:null},setup(e){const t=e,{collapsed:n,collapsible:s,isLink:o,isActiveLink:l,hasActiveLink:d,hasChildren:f,toggle:_}=Dt(b(()=>t.item)),k=b(()=>f.value?"section":"div"),$=b(()=>o.value?"a":"div"),L=b(()=>f.value?t.depth+2===7?"p":`h${t.depth+2}`:"p"),P=b(()=>o.value?void 0:"button"),S=b(()=>[[`level-${t.depth}`],{collapsible:s.value},{collapsed:n.value},{"is-link":o.value},{"is-active":l.value},{"has-active":d.value}]);function T(A){"key"in A&&A.key!=="Enter"||!t.item.link&&_()}function N(){t.item.link&&_()}return(A,z)=>{const et=R("VPSidebarItem",!0);return a(),y(U(c(k)),{class:M(["VPSidebarItem",c(S)])},{default:v(()=>[e.item.text?(a(),i("div",te({key:0,class:"item",role:c(P)},pt(e.item.items?{click:T,keydown:T}:{},!0),{tabindex:e.item.items&&0}),[Ca,e.item.link?(a(),y(D,{key:0,tag:c($),class:"link",href:e.item.link},{default:v(()=>[(a(),y(U(c(L)),{class:"text",innerHTML:e.item.text},null,8,["innerHTML"]))]),_:1},8,["tag","href"])):(a(),y(U(c(L)),{key:1,class:"text",innerHTML:e.item.text},null,8,["innerHTML"])),e.item.collapsed!=null?(a(),i("div",{key:2,class:"caret",role:"button","aria-label":"toggle section",onClick:N,onKeydown:ht(N,["enter"]),tabindex:"0"},[h(Le,{class:"caret-icon"})],40,Ta)):m("",!0)],16,Ia)):m("",!0),e.item.items&&e.item.items.length?(a(),i("div",Ba,[e.depth<5?(a(!0),i(I,{key:0},B(e.item.items,Me=>(a(),y(et,{key:Me.text,item:Me,depth:e.depth+1},null,8,["item","depth"]))),128)):m("",!0)])):m("",!0)]),_:1},8,["class"])}}});const Aa=p(Na,[["__scopeId","data-v-c4656e6d"]]),Ze=e=>(E("data-v-139a1f1d"),e=e(),H(),e),Ea=Ze(()=>r("div",{class:"curtain"},null,-1)),Ha={class:"nav",id:"VPSidebarNav","aria-labelledby":"sidebar-aria-label",tabindex:"-1"},Oa=Ze(()=>r("span",{class:"visually-hidden",id:"sidebar-aria-label"}," Sidebar Navigation ",-1)),za=g({__name:"VPSidebar",props:{open:{type:Boolean}},setup(e){const t=e,{sidebarGroups:n,hasSidebar:s}=O();let o=x(null);function l(){Ye(o.value,{reserveScrollBarGap:!0})}function d(){Xe()}return mt(async()=>{var f;t.open?(l(),(f=o.value)==null||f.focus()):d()}),(f,_)=>c(s)?(a(),i("aside",{key:0,class:M(["VPSidebar",{open:e.open}]),ref_key:"navEl",ref:o,onClick:_[0]||(_[0]=gt(()=>{},["stop"]))},[Ea,r("nav",Ha,[Oa,u(f.$slots,"sidebar-nav-before",{},void 0,!0),(a(!0),i(I,null,B(c(n),k=>(a(),i("div",{key:k.text,class:"group"},[h(Aa,{item:k,depth:0},null,8,["item"])]))),128)),u(f.$slots,"sidebar-nav-after",{},void 0,!0)])],2)):m("",!0)}});const Da=p(za,[["__scopeId","data-v-139a1f1d"]]),Fa={},Ga={class:"VPPage"};function Ra(e,t){const n=R("Content");return a(),i("div",Ga,[u(e.$slots,"page-top"),h(n),u(e.$slots,"page-bottom")])}const Ua=p(Fa,[["render",Ra]]),ja=g({__name:"VPButton",props:{tag:null,size:null,theme:null,text:null,href:null},setup(e){const t=e,n=b(()=>[t.size??"medium",t.theme??"brand"]),s=b(()=>t.href&&De.test(t.href)),o=b(()=>t.tag?t.tag:t.href?"a":"button");return(l,d)=>(a(),y(U(c(o)),{class:M(["VPButton",c(n)]),href:e.href?c(J)(e.href):void 0,target:c(s)?"_blank":void 0,rel:c(s)?"noreferrer":void 0},{default:v(()=>[C(w(e.text),1)]),_:1},8,["class","href","target","rel"]))}});const qa=p(ja,[["__scopeId","data-v-567ba664"]]),Ka=e=>(E("data-v-fd2650d5"),e=e(),H(),e),Wa={class:"container"},Qa={class:"main"},Ya={key:0,class:"name"},Xa={class:"clip"},Ja={key:1,class:"text"},Za={key:2,class:"tagline"},ec={key:0,class:"actions"},tc={key:0,class:"image"},nc={class:"image-container"},sc=Ka(()=>r("div",{class:"image-bg"},null,-1)),oc=g({__name:"VPHero",props:{name:null,text:null,tagline:null,image:null,actions:null},setup(e){const t=he("hero-image-slot-exists");return(n,s)=>(a(),i("div",{class:M(["VPHero",{"has-image":e.image||c(t)}])},[r("div",Wa,[r("div",Qa,[u(n.$slots,"home-hero-info",{},()=>[e.name?(a(),i("h1",Ya,[r("span",Xa,w(e.name),1)])):m("",!0),e.text?(a(),i("p",Ja,w(e.text),1)):m("",!0),e.tagline?(a(),i("p",Za,w(e.tagline),1)):m("",!0)],!0),e.actions?(a(),i("div",ec,[(a(!0),i(I,null,B(e.actions,o=>(a(),i("div",{key:o.link,class:"action"},[h(qa,{tag:"a",size:"medium",theme:o.theme,text:o.text,href:o.link},null,8,["theme","text","href"])]))),128))])):m("",!0)]),e.image||c(t)?(a(),i("div",tc,[r("div",nc,[sc,u(n.$slots,"home-hero-image",{},()=>[e.image?(a(),y(ge,{key:0,class:"image-src",image:e.image},null,8,["image"])):m("",!0)],!0)])])):m("",!0)])],2))}});const ac=p(oc,[["__scopeId","data-v-fd2650d5"]]),cc=g({__name:"VPHomeHero",setup(e){const{frontmatter:t}=V();return(n,s)=>c(t).hero?(a(),y(ac,{key:0,class:"VPHomeHero",name:c(t).hero.name,text:c(t).hero.text,tagline:c(t).hero.tagline,image:c(t).hero.image,actions:c(t).hero.actions},{"home-hero-info":v(()=>[u(n.$slots,"home-hero-info")]),"home-hero-image":v(()=>[u(n.$slots,"home-hero-image")]),_:3},8,["name","text","tagline","image","actions"])):m("",!0)}}),lc={},ic={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},rc=r("path",{d:"M19.9,12.4c0.1-0.2,0.1-0.5,0-0.8c-0.1-0.1-0.1-0.2-0.2-0.3l-7-7c-0.4-0.4-1-0.4-1.4,0s-0.4,1,0,1.4l5.3,5.3H5c-0.6,0-1,0.4-1,1s0.4,1,1,1h11.6l-5.3,5.3c-0.4,0.4-0.4,1,0,1.4c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3l7-7C19.8,12.6,19.9,12.5,19.9,12.4z"},null,-1),uc=[rc];function dc(e,t){return a(),i("svg",ic,uc)}const _c=p(lc,[["render",dc]]),vc={class:"box"},fc=["innerHTML"],hc=["innerHTML"],pc=["innerHTML"],mc={key:3,class:"link-text"},gc={class:"link-text-value"},yc=g({__name:"VPFeature",props:{icon:null,title:null,details:null,link:null,linkText:null},setup(e){return(t,n)=>(a(),y(D,{class:"VPFeature",href:e.link,"no-icon":!0},{default:v(()=>[r("article",vc,[typeof e.icon=="object"?(a(),y(ge,{key:0,image:e.icon,alt:e.icon.alt,height:e.icon.height,width:e.icon.width},null,8,["image","alt","height","width"])):e.icon?(a(),i("div",{key:1,class:"icon",innerHTML:e.icon},null,8,fc)):m("",!0),r("h2",{class:"title",innerHTML:e.title},null,8,hc),e.details?(a(),i("p",{key:2,class:"details",innerHTML:e.details},null,8,pc)):m("",!0),e.linkText?(a(),i("div",mc,[r("p",gc,[C(w(e.linkText)+" ",1),h(_c,{class:"link-text-icon"})])])):m("",!0)])]),_:1},8,["href"]))}});const bc=p(yc,[["__scopeId","data-v-837f6cca"]]),kc={key:0,class:"VPFeatures"},$c={class:"container"},Pc={class:"items"},wc=g({__name:"VPFeatures",props:{features:null},setup(e){const t=e,n=b(()=>{const s=t.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%2===0)return"grid-4"}else return});return(s,o)=>e.features?(a(),i("div",kc,[r("div",$c,[r("div",Pc,[(a(!0),i(I,null,B(e.features,l=>(a(),i("div",{key:l.title,class:M(["item",[c(n)]])},[h(bc,{icon:l.icon,title:l.title,details:l.details,link:l.link,"link-text":l.linkText},null,8,["icon","title","details","link","link-text"])],2))),128))])])])):m("",!0)}});const Vc=p(wc,[["__scopeId","data-v-6816157f"]]),xc=g({__name:"VPHomeFeatures",setup(e){const{frontmatter:t}=V();return(n,s)=>c(t).features?(a(),y(Vc,{key:0,class:"VPHomeFeatures",features:c(t).features},null,8,["features"])):m("",!0)}}),Sc={class:"VPHome"},Lc=g({__name:"VPHome",setup(e){return(t,n)=>{const s=R("Content");return a(),i("div",Sc,[u(t.$slots,"home-hero-before",{},void 0,!0),h(cc,null,{"home-hero-info":v(()=>[u(t.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":v(()=>[u(t.$slots,"home-hero-image",{},void 0,!0)]),_:3}),u(t.$slots,"home-hero-after",{},void 0,!0),u(t.$slots,"home-features-before",{},void 0,!0),h(xc),u(t.$slots,"home-features-after",{},void 0,!0),h(s)])}}});const Mc=p(Lc,[["__scopeId","data-v-d82743a8"]]),Ic=e=>(E("data-v-ff0f39c8"),e=e(),H(),e),Cc={class:"content"},Tc={class:"outline-title"},Bc={"aria-labelledby":"doc-outline-aria-label"},Nc=Ic(()=>r("span",{class:"visually-hidden",id:"doc-outline-aria-label"}," Table of Contents for current page ",-1)),Ac=g({__name:"VPDocAsideOutline",setup(e){const{frontmatter:t,theme:n}=V(),s=pe([]);X(()=>{s.value=xe(t.value.outline??n.value.outline)});const o=x(),l=x();return va(o,l),(d,f)=>(a(),i("div",{class:M(["VPDocAsideOutline",{"has-outline":c(s).length>0}]),ref_key:"container",ref:o},[r("div",Cc,[r("div",{class:"outline-marker",ref_key:"marker",ref:l},null,512),r("div",Tc,w(c(Ve)(c(n))),1),r("nav",Bc,[Nc,h(Se,{headers:c(s),root:!0},null,8,["headers"])])])],2))}});const Ec=p(Ac,[["__scopeId","data-v-ff0f39c8"]]),Hc={class:"VPDocAsideCarbonAds"},Oc=g({__name:"VPDocAsideCarbonAds",props:{carbonAds:null},setup(e){const t=()=>null;return(n,s)=>(a(),i("div",Hc,[h(c(t),{"carbon-ads":e.carbonAds},null,8,["carbon-ads"])]))}}),zc=e=>(E("data-v-3f215769"),e=e(),H(),e),Dc={class:"VPDocAside"},Fc=zc(()=>r("div",{class:"spacer"},null,-1)),Gc=g({__name:"VPDocAside",setup(e){const{theme:t}=V();return(n,s)=>(a(),i("div",Dc,[u(n.$slots,"aside-top",{},void 0,!0),u(n.$slots,"aside-outline-before",{},void 0,!0),h(Ec),u(n.$slots,"aside-outline-after",{},void 0,!0),Fc,u(n.$slots,"aside-ads-before",{},void 0,!0),c(t).carbonAds?(a(),y(Oc,{key:0,"carbon-ads":c(t).carbonAds},null,8,["carbon-ads"])):m("",!0),u(n.$slots,"aside-ads-after",{},void 0,!0),u(n.$slots,"aside-bottom",{},void 0,!0)]))}});const Rc=p(Gc,[["__scopeId","data-v-3f215769"]]);function Uc(){const{theme:e,page:t}=V();return b(()=>{const{text:n="Edit this page",pattern:s=""}=e.value.editLink||{},{relativePath:o}=t.value;let l;return typeof s=="function"?l=s({relativePath:o}):l=s.replace(/:path/g,o),{url:l,text:n}})}function jc(){const{page:e,theme:t,frontmatter:n}=V();return b(()=>{var d,f,_,k;const s=Ue(t.value.sidebar,e.value.relativePath),o=Ot(s),l=o.findIndex($=>K(e.value.relativePath,$.link));return{prev:n.value.prev===!1?void 0:{text:(typeof n.value.prev=="string"?n.value.prev:typeof n.value.prev=="object"?n.value.prev.text:void 0)??((d=o[l-1])==null?void 0:d.text),link:(typeof n.value.prev=="object"?n.value.prev.link:void 0)??((f=o[l-1])==null?void 0:f.link)},next:n.value.next===!1?void 0:{text:(typeof n.value.next=="string"?n.value.next:typeof n.value.next=="object"?n.value.next.text:void 0)??((_=o[l+1])==null?void 0:_.text),link:(typeof n.value.next=="object"?n.value.next.link:void 0)??((k=o[l+1])==null?void 0:k.link)}}})}const qc={},Kc={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},Wc=r("path",{d:"M18,23H4c-1.7,0-3-1.3-3-3V6c0-1.7,1.3-3,3-3h7c0.6,0,1,0.4,1,1s-0.4,1-1,1H4C3.4,5,3,5.4,3,6v14c0,0.6,0.4,1,1,1h14c0.6,0,1-0.4,1-1v-7c0-0.6,0.4-1,1-1s1,0.4,1,1v7C21,21.7,19.7,23,18,23z"},null,-1),Qc=r("path",{d:"M8,17c-0.3,0-0.5-0.1-0.7-0.3C7,16.5,6.9,16.1,7,15.8l1-4c0-0.2,0.1-0.3,0.3-0.5l9.5-9.5c1.2-1.2,3.2-1.2,4.4,0c1.2,1.2,1.2,3.2,0,4.4l-9.5,9.5c-0.1,0.1-0.3,0.2-0.5,0.3l-4,1C8.2,17,8.1,17,8,17zM9.9,12.5l-0.5,2.1l2.1-0.5l9.3-9.3c0.4-0.4,0.4-1.1,0-1.6c-0.4-0.4-1.2-0.4-1.6,0l0,0L9.9,12.5z M18.5,2.5L18.5,2.5L18.5,2.5z"},null,-1),Yc=[Wc,Qc];function Xc(e,t){return a(),i("svg",Kc,Yc)}const Jc=p(qc,[["render",Xc]]),Zc={class:"VPLastUpdated"},el=["datetime"],tl=g({__name:"VPDocFooterLastUpdated",setup(e){const{theme:t,page:n,lang:s}=V(),o=b(()=>new Date(n.value.lastUpdated)),l=b(()=>o.value.toISOString()),d=x("");return G(()=>{Y(()=>{d.value=o.value.toLocaleString(s.value)})}),(f,_)=>(a(),i("p",Zc,[C(w(c(t).lastUpdatedText||"Last updated")+": ",1),r("time",{datetime:c(l)},w(d.value),9,el)]))}});const nl=p(tl,[["__scopeId","data-v-7b3ebfe1"]]),sl={key:0,class:"VPDocFooter"},ol={key:0,class:"edit-info"},al={key:0,class:"edit-link"},cl={key:1,class:"last-updated"},ll={key:1,class:"prev-next"},il={class:"pager"},rl=["href"],ul=["innerHTML"],dl=["innerHTML"],_l=["href"],vl=["innerHTML"],fl=["innerHTML"],hl=g({__name:"VPDocFooter",setup(e){const{theme:t,page:n,frontmatter:s}=V(),o=Uc(),l=jc(),d=b(()=>t.value.editLink&&s.value.editLink!==!1),f=b(()=>n.value.lastUpdated&&s.value.lastUpdated!==!1),_=b(()=>d.value||f.value||l.value.prev||l.value.next);return(k,$)=>{var L,P,S,T,N,A,z;return c(_)?(a(),i("footer",sl,[u(k.$slots,"doc-footer-before",{},void 0,!0),c(d)||c(f)?(a(),i("div",ol,[c(d)?(a(),i("div",al,[h(D,{class:"edit-link-button",href:c(o).url,"no-icon":!0},{default:v(()=>[h(Jc,{class:"edit-link-icon","aria-label":"edit icon"}),C(" "+w(c(o).text),1)]),_:1},8,["href"])])):m("",!0),c(f)?(a(),i("div",cl,[h(nl)])):m("",!0)])):m("",!0),(L=c(l).prev)!=null&&L.link||(P=c(l).next)!=null&&P.link?(a(),i("div",ll,[r("div",il,[(S=c(l).prev)!=null&&S.link?(a(),i("a",{key:0,class:"pager-link prev",href:c(J)(c(l).prev.link)},[r("span",{class:"desc",innerHTML:((T=c(t).docFooter)==null?void 0:T.prev)||"Previous page"},null,8,ul),r("span",{class:"title",innerHTML:c(l).prev.text},null,8,dl)],8,rl)):m("",!0)]),r("div",{class:M(["pager",{"has-prev":(N=c(l).prev)==null?void 0:N.link}])},[(A=c(l).next)!=null&&A.link?(a(),i("a",{key:0,class:"pager-link next",href:c(J)(c(l).next.link)},[r("span",{class:"desc",innerHTML:((z=c(t).docFooter)==null?void 0:z.next)||"Next page"},null,8,vl),r("span",{class:"title",innerHTML:c(l).next.text},null,8,fl)],8,_l)):m("",!0)],2)])):m("",!0)])):m("",!0)}}});const pl=p(hl,[["__scopeId","data-v-face870a"]]),ml={key:0,class:"VPDocOutlineDropdown"},gl={key:0,class:"items"},yl=g({__name:"VPDocOutlineDropdown",setup(e){const{frontmatter:t,theme:n}=V(),s=x(!1);X(()=>{s.value=!1});const o=pe([]);return X(()=>{o.value=xe(t.value.outline??n.value.outline)}),(l,d)=>c(o).length>0?(a(),i("div",ml,[r("button",{onClick:d[0]||(d[0]=f=>s.value=!s.value),class:M({open:s.value})},[C(w(c(Ve)(c(n)))+" ",1),h(Le,{class:"icon"})],2),s.value?(a(),i("div",gl,[h(Se,{headers:c(o)},null,8,["headers"])])):m("",!0)])):m("",!0)}});const bl=p(yl,[["__scopeId","data-v-2edece88"]]),kl=e=>(E("data-v-c4b0d3cf"),e=e(),H(),e),$l={class:"container"},Pl=kl(()=>r("div",{class:"aside-curtain"},null,-1)),wl={class:"aside-container"},Vl={class:"aside-content"},xl={class:"content"},Sl={class:"content-container"},Ll={class:"main"},Ml=g({__name:"VPDoc",setup(e){const t=Z(),{hasSidebar:n,hasAside:s,leftAside:o}=O(),l=b(()=>t.path.replace(/[./]+/g,"_").replace(/_html$/,""));return(d,f)=>{const _=R("Content");return a(),i("div",{class:M(["VPDoc",{"has-sidebar":c(n),"has-aside":c(s)}])},[u(d.$slots,"doc-top",{},void 0,!0),r("div",$l,[c(s)?(a(),i("div",{key:0,class:M(["aside",{"left-aside":c(o)}])},[Pl,r("div",wl,[r("div",Vl,[h(Rc,null,{"aside-top":v(()=>[u(d.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":v(()=>[u(d.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":v(()=>[u(d.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":v(()=>[u(d.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":v(()=>[u(d.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":v(()=>[u(d.$slots,"aside-ads-after",{},void 0,!0)]),_:3})])])],2)):m("",!0),r("div",xl,[r("div",Sl,[u(d.$slots,"doc-before",{},void 0,!0),h(bl),r("main",Ll,[h(_,{class:M(["vp-doc",c(l)])},null,8,["class"])]),h(pl,null,{"doc-footer-before":v(()=>[u(d.$slots,"doc-footer-before",{},void 0,!0)]),_:3}),u(d.$slots,"doc-after",{},void 0,!0)])])]),u(d.$slots,"doc-bottom",{},void 0,!0)],2)}}});const Il=p(Ml,[["__scopeId","data-v-c4b0d3cf"]]),ie=e=>(E("data-v-c70503b8"),e=e(),H(),e),Cl={class:"NotFound"},Tl=ie(()=>r("p",{class:"code"},"404",-1)),Bl=ie(()=>r("h1",{class:"title"},"PAGE NOT FOUND",-1)),Nl=ie(()=>r("div",{class:"divider"},null,-1)),Al=ie(()=>r("blockquote",{class:"quote"}," But if you don't change your direction, and if you keep looking, you may end up where you are heading. ",-1)),El={class:"action"},Hl=["href"],Ol=g({__name:"NotFound",setup(e){const{site:t}=V(),{localeLinks:n}=ee({removeCurrent:!1}),s=x("/");return G(()=>{var l;const o=window.location.pathname.replace(t.value.base,"").replace(/(^.*?\/).*$/,"/$1");n.value.length&&(s.value=((l=n.value.find(({link:d})=>d.startsWith(o)))==null?void 0:l.link)||n.value[0].link)}),(o,l)=>(a(),i("div",Cl,[Tl,Bl,Nl,Al,r("div",El,[r("a",{class:"link",href:c(ve)(s.value),"aria-label":"go to home"}," Take me home ",8,Hl)])]))}});const zl=p(Ol,[["__scopeId","data-v-c70503b8"]]),Dl=g({__name:"VPContent",setup(e){const{page:t,frontmatter:n}=V(),{hasSidebar:s}=O();return(o,l)=>(a(),i("div",{class:M(["VPContent",{"has-sidebar":c(s),"is-home":c(n).layout==="home"}]),id:"VPContent"},[c(t).isNotFound?u(o.$slots,"not-found",{key:0},()=>[h(zl)],!0):c(n).layout==="page"?(a(),y(Ua,{key:1},{"page-top":v(()=>[u(o.$slots,"page-top",{},void 0,!0)]),"page-bottom":v(()=>[u(o.$slots,"page-bottom",{},void 0,!0)]),_:3})):c(n).layout==="home"?(a(),y(Mc,{key:2},{"home-hero-before":v(()=>[u(o.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info":v(()=>[u(o.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":v(()=>[u(o.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":v(()=>[u(o.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":v(()=>[u(o.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":v(()=>[u(o.$slots,"home-features-after",{},void 0,!0)]),_:3})):(a(),y(Il,{key:3},{"doc-top":v(()=>[u(o.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":v(()=>[u(o.$slots,"doc-bottom",{},void 0,!0)]),"doc-footer-before":v(()=>[u(o.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":v(()=>[u(o.$slots,"doc-before",{},void 0,!0)]),"doc-after":v(()=>[u(o.$slots,"doc-after",{},void 0,!0)]),"aside-top":v(()=>[u(o.$slots,"aside-top",{},void 0,!0)]),"aside-outline-before":v(()=>[u(o.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":v(()=>[u(o.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":v(()=>[u(o.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":v(()=>[u(o.$slots,"aside-ads-after",{},void 0,!0)]),"aside-bottom":v(()=>[u(o.$slots,"aside-bottom",{},void 0,!0)]),_:3}))],2))}});const Fl=p(Dl,[["__scopeId","data-v-a494bd1d"]]),Gl={class:"container"},Rl=["innerHTML"],Ul=["innerHTML"],jl=g({__name:"VPFooter",setup(e){const{theme:t}=V(),{hasSidebar:n}=O();return(s,o)=>c(t).footer?(a(),i("footer",{key:0,class:M(["VPFooter",{"has-sidebar":c(n)}])},[r("div",Gl,[c(t).footer.message?(a(),i("p",{key:0,class:"message",innerHTML:c(t).footer.message},null,8,Rl)):m("",!0),c(t).footer.copyright?(a(),i("p",{key:1,class:"copyright",innerHTML:c(t).footer.copyright},null,8,Ul)):m("",!0)])],2)):m("",!0)}});const ql=p(jl,[["__scopeId","data-v-2f86ebd2"]]),Kl={key:0,class:"Layout"},Wl=g({__name:"Layout",setup(e){const{isOpen:t,open:n,close:s}=O(),o=Z();q(()=>o.path,s),zt(t,s),ne("close-sidebar",s),ne("is-sidebar-open",t);const{frontmatter:l}=V(),d=yt(),f=b(()=>!!d["home-hero-image"]);return ne("hero-image-slot-exists",f),(_,k)=>{const $=R("Content");return c(l).layout!==!1?(a(),i("div",Kl,[u(_.$slots,"layout-top",{},void 0,!0),h(Gt),h(jt,{class:"backdrop",show:c(t),onClick:c(s)},null,8,["show","onClick"]),h(Zo,null,{"nav-bar-title-before":v(()=>[u(_.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":v(()=>[u(_.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":v(()=>[u(_.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":v(()=>[u(_.$slots,"nav-bar-content-after",{},void 0,!0)]),"nav-screen-content-before":v(()=>[u(_.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":v(()=>[u(_.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3}),h(La,{open:c(t),onOpenMenu:c(n)},null,8,["open","onOpenMenu"]),h(Da,{open:c(t)},{"sidebar-nav-before":v(()=>[u(_.$slots,"sidebar-nav-before",{},void 0,!0)]),"sidebar-nav-after":v(()=>[u(_.$slots,"sidebar-nav-after",{},void 0,!0)]),_:3},8,["open"]),h(Fl,null,{"page-top":v(()=>[u(_.$slots,"page-top",{},void 0,!0)]),"page-bottom":v(()=>[u(_.$slots,"page-bottom",{},void 0,!0)]),"not-found":v(()=>[u(_.$slots,"not-found",{},void 0,!0)]),"home-hero-before":v(()=>[u(_.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info":v(()=>[u(_.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":v(()=>[u(_.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":v(()=>[u(_.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":v(()=>[u(_.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":v(()=>[u(_.$slots,"home-features-after",{},void 0,!0)]),"doc-footer-before":v(()=>[u(_.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":v(()=>[u(_.$slots,"doc-before",{},void 0,!0)]),"doc-after":v(()=>[u(_.$slots,"doc-after",{},void 0,!0)]),"doc-top":v(()=>[u(_.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":v(()=>[u(_.$slots,"doc-bottom",{},void 0,!0)]),"aside-top":v(()=>[u(_.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":v(()=>[u(_.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":v(()=>[u(_.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":v(()=>[u(_.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":v(()=>[u(_.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":v(()=>[u(_.$slots,"aside-ads-after",{},void 0,!0)]),_:3}),h(ql),u(_.$slots,"layout-bottom",{},void 0,!0)])):(a(),y($,{key:1}))}}});const Ql=p(Wl,[["__scopeId","data-v-b2cf3e0b"]]);const Xl={Layout:Ql,enhanceApp:({app:e})=>{e.component("Badge",kt)}};export{Xl as t,V as u}; diff --git a/assets/chunks/theme.c4d303ac.js b/assets/chunks/theme.c4d303ac.js new file mode 100644 index 0000000..12c2261 --- /dev/null +++ b/assets/chunks/theme.c4d303ac.js @@ -0,0 +1,7 @@ +import{d as g,o as a,c as l,r as c,n as I,a as A,t as P,_ as f,u as Ze,b as i,e as et,f as He,g as tt,h as S,i as nt,j as st,w as j,k as Q,l as $,m as ot,p as F,q as at,P as rt,s as he,v as K,x as ee,y as le,z as u,F as M,A as y,B as v,T as fe,C as m,D as R,E as se,G as h,H as ze,I as it,J as lt,K as U,L as De,M as ct,N as x,O as H,Q as z,R as ut,S as Ne,U as me,V as oe,W as dt,X as J,Y as ge,Z as _t,$ as vt,a0 as pt,a1 as ht,a2 as ft,a3 as mt}from"./framework.6241eaf2.js";const gt=g({__name:"VPBadge",props:{text:{},type:{}},setup(n){return(e,t)=>(a(),l("span",{class:I(["VPBadge",e.type??"tip"])},[c(e.$slots,"default",{},()=>[A(P(e.text),1)],!0)],2))}});const yt=f(gt,[["__scopeId","data-v-350d3852"]]),V=Ze;function Fe(n){return nt()?(st(n),!0):!1}function Oe(n){return typeof n=="function"?n():i(n)}const bt=typeof window<"u",Ge=()=>{};function $t(...n){if(n.length!==1)return et(...n);const e=n[0];return typeof e=="function"?He(tt(()=>({get:e,set:Ge}))):S(e)}function kt(n){var e;const t=Oe(n);return(e=t==null?void 0:t.$el)!=null?e:t}const ye=bt?window:void 0;function Pt(...n){let e,t,o,s;if(typeof n[0]=="string"||Array.isArray(n[0])?([t,o,s]=n,e=ye):[e,t,o,s]=n,!e)return Ge;Array.isArray(t)||(t=[t]),Array.isArray(o)||(o=[o]);const r=[],d=()=>{r.forEach(C=>C()),r.length=0},p=(C,T,N,L)=>(C.addEventListener(T,N,L),()=>C.removeEventListener(T,N,L)),_=j(()=>[kt(e),Oe(s)],([C,T])=>{d(),C&&r.push(...t.flatMap(N=>o.map(L=>p(C,N,L,T))))},{immediate:!0,flush:"post"}),k=()=>{_(),d()};return Fe(k),k}function Vt(){const n=S(!1);return ot()&&F(()=>{n.value=!0}),n}function wt(n){const e=Vt();return $(()=>(e.value,!!n()))}function _e(n,e={}){const{window:t=ye}=e,o=wt(()=>t&&"matchMedia"in t&&typeof t.matchMedia=="function");let s;const r=S(!1),d=()=>{s&&("removeEventListener"in s?s.removeEventListener("change",p):s.removeListener(p))},p=()=>{o.value&&(d(),s=t.matchMedia($t(n).value),r.value=!!(s!=null&&s.matches),s&&("addEventListener"in s?s.addEventListener("change",p):s.addListener(p)))};return Q(p),Fe(()=>d()),r}function St({window:n=ye}={}){if(!n)return{x:S(0),y:S(0)};const e=S(n.scrollX),t=S(n.scrollY);return Pt(n,"scroll",()=>{e.value=n.scrollX,t.value=n.scrollY},{capture:!1,passive:!0}),{x:e,y:t}}function Lt(n,e){let t,o=!1;return()=>{t&&clearTimeout(t),o?t=setTimeout(n,e):(n(),o=!0,setTimeout(()=>{o=!1},e))}}function ve(n){return/^\//.test(n)?n:`/${n}`}function Z(n){if(at(n))return n.replace(rt,"");const{site:e}=V(),{pathname:t,search:o,hash:s}=new URL(n,"http://example.com"),r=t.endsWith("/")||t.endsWith(".html")?n:n.replace(/(?:(^\.+)\/)?.*$/,`$1${t.replace(/(\.md)?$/,e.value.cleanUrls?"":".html")}${o}${s}`);return he(r)}function Re(n,e){if(Array.isArray(n))return n;if(n==null)return[];e=ve(e);const t=Object.keys(n).sort((o,s)=>s.split("/").length-o.split("/").length).find(o=>e.startsWith(ve(o)));return t?n[t]:[]}function Mt(n){const e=[];let t=0;for(const o in n){const s=n[o];if(s.items){t=e.push(s);continue}e[t]||e.push({items:[]}),e[t].items.push(s)}return e}function Ct(n){const e=[];function t(o){for(const s of o)s.text&&s.link&&e.push({text:s.text,link:s.link}),s.items&&t(s.items)}return t(n),e}function pe(n,e){return Array.isArray(e)?e.some(t=>pe(n,t)):K(n,e.link)?!0:e.items?pe(n,e.items):!1}function D(){const n=ee(),{theme:e,frontmatter:t}=V(),o=_e("(min-width: 960px)"),s=S(!1),r=$(()=>{const w=e.value.sidebar,B=n.data.relativePath;return w?Re(w,B):[]}),d=$(()=>t.value.sidebar!==!1&&r.value.length>0&&t.value.layout!=="home"),p=$(()=>_?t.value.aside==null?e.value.aside==="left":t.value.aside==="left":!1),_=$(()=>t.value.layout==="home"?!1:t.value.aside!=null?!!t.value.aside:e.value.aside!==!1),k=$(()=>d.value&&o.value),C=$(()=>d.value?Mt(r.value):[]);function T(){s.value=!0}function N(){s.value=!1}function L(){s.value?N():T()}return{isOpen:s,sidebar:r,sidebarGroups:C,hasSidebar:d,hasAside:_,leftAside:p,isSidebarEnabled:k,open:T,close:N,toggle:L}}function It(n,e){let t;Q(()=>{t=n.value?document.activeElement:void 0}),F(()=>{window.addEventListener("keyup",o)}),le(()=>{window.removeEventListener("keyup",o)});function o(s){s.key==="Escape"&&n.value&&(e(),t==null||t.focus())}}function Bt(n){const{page:e}=V(),t=S(!1),o=$(()=>n.value.collapsed!=null),s=$(()=>!!n.value.link),r=$(()=>K(e.value.relativePath,n.value.link)),d=$(()=>r.value?!0:n.value.items?pe(e.value.relativePath,n.value.items):!1),p=$(()=>!!(n.value.items&&n.value.items.length));Q(()=>{t.value=!!(o.value&&n.value.collapsed)}),Q(()=>{(r.value||d.value)&&(t.value=!1)});function _(){o.value&&(t.value=!t.value)}return{collapsed:t,collapsible:o,isLink:s,isActiveLink:r,hasActiveLink:d,hasChildren:p,toggle:_}}const Tt=g({__name:"VPSkipLink",setup(n){const e=ee(),t=S();j(()=>e.path,()=>t.value.focus());function o({target:s}){const r=document.querySelector(decodeURIComponent(s.hash));if(r){const d=()=>{r.removeAttribute("tabindex"),r.removeEventListener("blur",d)};r.setAttribute("tabindex","-1"),r.addEventListener("blur",d),r.focus(),window.scrollTo(0,0)}}return(s,r)=>(a(),l(M,null,[u("span",{ref_key:"backToTop",ref:t,tabindex:"-1"},null,512),u("a",{href:"#VPContent",class:"VPSkipLink visually-hidden",onClick:o}," Skip to content ")],64))}});const Nt=f(Tt,[["__scopeId","data-v-c8616af1"]]),At={key:0,class:"VPBackdrop"},xt=g({__name:"VPBackdrop",props:{show:{type:Boolean}},setup(n){return(e,t)=>(a(),y(fe,{name:"fade"},{default:v(()=>[e.show?(a(),l("div",At)):m("",!0)]),_:1}))}});const Et=f(xt,[["__scopeId","data-v-c79a1216"]]);function Ht(){const n=S(!1);function e(){n.value=!0,window.addEventListener("resize",s)}function t(){n.value=!1,window.removeEventListener("resize",s)}function o(){n.value?t():e()}function s(){window.outerWidth>=768&&t()}const r=ee();return j(()=>r.path,t),{isScreenOpen:n,openScreen:e,closeScreen:t,toggleScreen:o}}function te({removeCurrent:n=!0,correspondingLink:e=!1}={}){const{site:t,localeIndex:o,page:s,theme:r}=V(),d=$(()=>{var _,k;return{label:(_=t.value.locales[o.value])==null?void 0:_.label,link:((k=t.value.locales[o.value])==null?void 0:k.link)||(o.value==="root"?"/":`/${o.value}/`)}});return{localeLinks:$(()=>Object.entries(t.value.locales).flatMap(([_,k])=>n&&d.value.label===k.label?[]:{text:k.label,link:zt(k.link||(_==="root"?"/":`/${_}/`),r.value.i18nRouting!==!1&&e,s.value.relativePath.slice(d.value.link.length-1),!t.value.cleanUrls)})),currentLang:d}}function zt(n,e,t,o){return e?n.replace(/\/$/,"")+ve(t.replace(/(^|\/)?index.md$/,"$1").replace(/\.md$/,o?".html":"")):n}const Dt=["src","alt"],Ft={inheritAttrs:!1},Ot=g({...Ft,__name:"VPImage",props:{image:{},alt:{}},setup(n){return(e,t)=>{const o=R("VPImage",!0);return e.image?(a(),l(M,{key:0},[typeof e.image=="string"||"src"in e.image?(a(),l("img",se({key:0,class:"VPImage"},typeof e.image=="string"?e.$attrs:{...e.image,...e.$attrs},{src:i(he)(typeof e.image=="string"?e.image:e.image.src),alt:e.alt??(typeof e.image=="string"?"":e.image.alt||"")}),null,16,Dt)):(a(),l(M,{key:1},[h(o,se({class:"dark",image:e.image.dark,alt:e.image.alt},e.$attrs),null,16,["image","alt"]),h(o,se({class:"light",image:e.image.light,alt:e.image.alt},e.$attrs),null,16,["image","alt"])],64))],64)):m("",!0)}}});const be=f(Ot,[["__scopeId","data-v-6db2186b"]]),Gt=["href"],Rt=g({__name:"VPNavBarTitle",setup(n){const{site:e,theme:t}=V(),{hasSidebar:o}=D(),{currentLang:s}=te();return(r,d)=>(a(),l("div",{class:I(["VPNavBarTitle",{"has-sidebar":i(o)}])},[u("a",{class:"title",href:i(Z)(i(s).link)},[c(r.$slots,"nav-bar-title-before",{},void 0,!0),i(t).logo?(a(),y(be,{key:0,class:"logo",image:i(t).logo},null,8,["image"])):m("",!0),i(t).siteTitle?(a(),l(M,{key:1},[A(P(i(t).siteTitle),1)],64)):i(t).siteTitle===void 0?(a(),l(M,{key:2},[A(P(i(e).title),1)],64)):m("",!0),c(r.$slots,"nav-bar-title-after",{},void 0,!0)],8,Gt)],2))}});const Ut=f(Rt,[["__scopeId","data-v-4d981103"]]);const qt={type:"button",class:"DocSearch DocSearch-Button","aria-label":"Search"},jt={class:"DocSearch-Button-Container"},Kt=u("svg",{class:"DocSearch-Search-Icon",width:"20",height:"20",viewBox:"0 0 20 20","aria-label":"search icon"},[u("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none","fill-rule":"evenodd","stroke-linecap":"round","stroke-linejoin":"round"})],-1),Wt={class:"DocSearch-Button-Placeholder"},Yt=u("span",{class:"DocSearch-Button-Keys"},[u("kbd",{class:"DocSearch-Button-Key"}),u("kbd",{class:"DocSearch-Button-Key"},"K")],-1),Ae=g({__name:"VPNavBarSearchButton",props:{placeholder:{}},setup(n){return(e,t)=>(a(),l("button",qt,[u("span",jt,[Kt,u("span",Wt,P(e.placeholder),1)]),Yt]))}});const Xt={id:"local-search"},Qt={key:1,id:"docsearch"},Jt=g({__name:"VPNavBarSearch",setup(n){const e=()=>null,t=it(()=>lt(()=>import("./VPAlgoliaSearchBox.81ddc2b4.js"),["assets/chunks/VPAlgoliaSearchBox.81ddc2b4.js","assets/chunks/framework.6241eaf2.js"])),{theme:o,localeIndex:s}=V(),r=S(!1),d=$(()=>{var B,b,E,ne,W,Be,Te;const w=((B=o.value.search)==null?void 0:B.options)??o.value.algolia;return((W=(ne=(E=(b=w==null?void 0:w.locales)==null?void 0:b[s.value])==null?void 0:E.translations)==null?void 0:ne.button)==null?void 0:W.buttonText)||((Te=(Be=w==null?void 0:w.translations)==null?void 0:Be.button)==null?void 0:Te.buttonText)||"Search"}),p=()=>{const w="VPAlgoliaPreconnect";(window.requestIdleCallback||setTimeout)(()=>{var E;const b=document.createElement("link");b.id=w,b.rel="preconnect",b.href=`https://${(((E=o.value.search)==null?void 0:E.options)??o.value.algolia).appId}-dsn.algolia.net`,b.crossOrigin="",document.head.appendChild(b)})};F(()=>{p();const w=b=>{(b.key.toLowerCase()==="k"&&(b.metaKey||b.ctrlKey)||!C(b)&&b.key==="/")&&(b.preventDefault(),_(),B())},B=()=>{window.removeEventListener("keydown",w)};window.addEventListener("keydown",w),le(B)});function _(){r.value||(r.value=!0,setTimeout(k,16))}function k(){const w=new Event("keydown");w.key="k",w.metaKey=!0,window.dispatchEvent(w),setTimeout(()=>{document.querySelector(".DocSearch-Modal")||k()},16)}function C(w){const B=w.target,b=B.tagName;return B.isContentEditable||b==="INPUT"||b==="SELECT"||b==="TEXTAREA"}const T=S(!1),N=S("'Meta'");F(()=>{N.value=/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?"'⌘'":"'Ctrl'"});const L="algolia";return(w,B)=>{var b;return a(),l("div",{class:"VPNavBarSearch",style:ze({"--vp-meta-key":N.value})},[i(L)==="local"?(a(),l(M,{key:0},[T.value?(a(),y(i(e),{key:0,placeholder:d.value,onClose:B[0]||(B[0]=E=>T.value=!1)},null,8,["placeholder"])):m("",!0),u("div",Xt,[h(Ae,{placeholder:d.value,onClick:B[1]||(B[1]=E=>T.value=!0)},null,8,["placeholder"])])],64)):i(L)==="algolia"?(a(),l(M,{key:1},[r.value?(a(),y(i(t),{key:0,algolia:((b=i(o).search)==null?void 0:b.options)??i(o).algolia},null,8,["algolia"])):(a(),l("div",Qt,[h(Ae,{placeholder:d.value,onClick:_},null,8,["placeholder"])]))],64)):m("",!0)],4)}}});const Zt={},en={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",height:"24px",viewBox:"0 0 24 24",width:"24px"},tn=u("path",{d:"M0 0h24v24H0V0z",fill:"none"},null,-1),nn=u("path",{d:"M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z"},null,-1),sn=[tn,nn];function on(n,e){return a(),l("svg",en,sn)}const an=f(Zt,[["render",on]]),rn=g({__name:"VPLink",props:{tag:{},href:{},noIcon:{type:Boolean},target:{},rel:{}},setup(n){const e=n,t=$(()=>e.tag??e.href?"a":"span"),o=$(()=>e.href&&De.test(e.href));return(s,r)=>(a(),y(U(t.value),{class:I(["VPLink",{link:s.href}]),href:s.href?i(Z)(s.href):void 0,target:s.target||(o.value?"_blank":void 0),rel:s.rel||(o.value?"noreferrer":void 0)},{default:v(()=>[c(s.$slots,"default",{},void 0,!0),o.value&&!s.noIcon?(a(),y(an,{key:0,class:"icon"})):m("",!0)]),_:3},8,["class","href","target","rel"]))}});const O=f(rn,[["__scopeId","data-v-8f4dc553"]]),ln=g({__name:"VPNavBarMenuLink",props:{item:{}},setup(n){const{page:e}=V();return(t,o)=>(a(),y(O,{class:I({VPNavBarMenuLink:!0,active:i(K)(i(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel,tabindex:"0"},{default:v(()=>[A(P(t.item.text),1)]),_:1},8,["class","href","target","rel"]))}});const cn=f(ln,[["__scopeId","data-v-5e623618"]]),$e=S();let Ue=!1,de=0;function un(n){const e=S(!1);if(ct){!Ue&&dn(),de++;const t=j($e,o=>{var s,r,d;o===n.el.value||(s=n.el.value)!=null&&s.contains(o)?(e.value=!0,(r=n.onFocus)==null||r.call(n)):(e.value=!1,(d=n.onBlur)==null||d.call(n))});le(()=>{t(),de--,de||_n()})}return He(e)}function dn(){document.addEventListener("focusin",qe),Ue=!0,$e.value=document.activeElement}function _n(){document.removeEventListener("focusin",qe)}function qe(){$e.value=document.activeElement}const vn={},pn={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},hn=u("path",{d:"M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"},null,-1),fn=[hn];function mn(n,e){return a(),l("svg",pn,fn)}const je=f(vn,[["render",mn]]),gn={},yn={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},bn=u("circle",{cx:"12",cy:"12",r:"2"},null,-1),$n=u("circle",{cx:"19",cy:"12",r:"2"},null,-1),kn=u("circle",{cx:"5",cy:"12",r:"2"},null,-1),Pn=[bn,$n,kn];function Vn(n,e){return a(),l("svg",yn,Pn)}const wn=f(gn,[["render",Vn]]),Sn={class:"VPMenuLink"},Ln=g({__name:"VPMenuLink",props:{item:{}},setup(n){const{page:e}=V();return(t,o)=>(a(),l("div",Sn,[h(O,{class:I({active:i(K)(i(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(()=>[A(P(t.item.text),1)]),_:1},8,["class","href","target","rel"])]))}});const ce=f(Ln,[["__scopeId","data-v-2f2cfafc"]]),Mn={class:"VPMenuGroup"},Cn={key:0,class:"title"},In=g({__name:"VPMenuGroup",props:{text:{},items:{}},setup(n){return(e,t)=>(a(),l("div",Mn,[e.text?(a(),l("p",Cn,P(e.text),1)):m("",!0),(a(!0),l(M,null,x(e.items,o=>(a(),l(M,null,["link"in o?(a(),y(ce,{key:0,item:o},null,8,["item"])):m("",!0)],64))),256))]))}});const Bn=f(In,[["__scopeId","data-v-69e747b5"]]),Tn={class:"VPMenu"},Nn={key:0,class:"items"},An=g({__name:"VPMenu",props:{items:{}},setup(n){return(e,t)=>(a(),l("div",Tn,[e.items?(a(),l("div",Nn,[(a(!0),l(M,null,x(e.items,o=>(a(),l(M,{key:o.text},["link"in o?(a(),y(ce,{key:0,item:o},null,8,["item"])):(a(),y(Bn,{key:1,text:o.text,items:o.items},null,8,["text","items"]))],64))),128))])):m("",!0),c(e.$slots,"default",{},void 0,!0)]))}});const xn=f(An,[["__scopeId","data-v-e7ea1737"]]),En=["aria-expanded","aria-label"],Hn={key:0,class:"text"},zn={class:"menu"},Dn=g({__name:"VPFlyout",props:{icon:{},button:{},label:{},items:{}},setup(n){const e=S(!1),t=S();un({el:t,onBlur:o});function o(){e.value=!1}return(s,r)=>(a(),l("div",{class:"VPFlyout",ref_key:"el",ref:t,onMouseenter:r[1]||(r[1]=d=>e.value=!0),onMouseleave:r[2]||(r[2]=d=>e.value=!1)},[u("button",{type:"button",class:"button","aria-haspopup":"true","aria-expanded":e.value,"aria-label":s.label,onClick:r[0]||(r[0]=d=>e.value=!e.value)},[s.button||s.icon?(a(),l("span",Hn,[s.icon?(a(),y(U(s.icon),{key:0,class:"option-icon"})):m("",!0),A(" "+P(s.button)+" ",1),h(je,{class:"text-icon"})])):(a(),y(wn,{key:1,class:"icon"}))],8,En),u("div",zn,[h(xn,{items:s.items},{default:v(()=>[c(s.$slots,"default",{},void 0,!0)]),_:3},8,["items"])])],544))}});const ke=f(Dn,[["__scopeId","data-v-764effdf"]]),Fn=g({__name:"VPNavBarMenuGroup",props:{item:{}},setup(n){const{page:e}=V();return(t,o)=>(a(),y(ke,{class:I({VPNavBarMenuGroup:!0,active:i(K)(i(e).relativePath,t.item.activeMatch,!!t.item.activeMatch)}),button:t.item.text,items:t.item.items},null,8,["class","button","items"]))}}),On=n=>(H("data-v-7f418b0f"),n=n(),z(),n),Gn={key:0,"aria-labelledby":"main-nav-aria-label",class:"VPNavBarMenu"},Rn=On(()=>u("span",{id:"main-nav-aria-label",class:"visually-hidden"},"Main Navigation",-1)),Un=g({__name:"VPNavBarMenu",setup(n){const{theme:e}=V();return(t,o)=>i(e).nav?(a(),l("nav",Gn,[Rn,(a(!0),l(M,null,x(i(e).nav,s=>(a(),l(M,{key:s.text},["link"in s?(a(),y(cn,{key:0,item:s},null,8,["item"])):(a(),y(Fn,{key:1,item:s},null,8,["item"]))],64))),128))])):m("",!0)}});const qn=f(Un,[["__scopeId","data-v-7f418b0f"]]),jn={},Kn={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},Wn=u("path",{d:"M0 0h24v24H0z",fill:"none"},null,-1),Yn=u("path",{d:" M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z ",class:"css-c4d79v"},null,-1),Xn=[Wn,Yn];function Qn(n,e){return a(),l("svg",Kn,Xn)}const Ke=f(jn,[["render",Qn]]),Jn={class:"items"},Zn={class:"title"},es=g({__name:"VPNavBarTranslations",setup(n){const{theme:e}=V(),{localeLinks:t,currentLang:o}=te({correspondingLink:!0});return(s,r)=>i(t).length&&i(o).label?(a(),y(ke,{key:0,class:"VPNavBarTranslations",icon:Ke,label:i(e).langMenuLabel||"Change language"},{default:v(()=>[u("div",Jn,[u("p",Zn,P(i(o).label),1),(a(!0),l(M,null,x(i(t),d=>(a(),y(ce,{key:d.link,item:d},null,8,["item"]))),128))])]),_:1},8,["label"])):m("",!0)}});const ts=f(es,[["__scopeId","data-v-74abcbb9"]]);const ns={},ss={class:"VPSwitch",type:"button",role:"switch"},os={class:"check"},as={key:0,class:"icon"};function rs(n,e){return a(),l("button",ss,[u("span",os,[n.$slots.default?(a(),l("span",as,[c(n.$slots,"default",{},void 0,!0)])):m("",!0)])])}const is=f(ns,[["render",rs],["__scopeId","data-v-f3c41672"]]),ls={},cs={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},us=ut('',9),ds=[us];function _s(n,e){return a(),l("svg",cs,ds)}const vs=f(ls,[["render",_s]]),ps={},hs={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},fs=u("path",{d:"M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"},null,-1),ms=[fs];function gs(n,e){return a(),l("svg",hs,ms)}const ys=f(ps,[["render",gs]]),bs=g({__name:"VPSwitchAppearance",setup(n){const{site:e,isDark:t}=V(),o=S(!1),s=typeof localStorage<"u"?r():()=>{};F(()=>{o.value=document.documentElement.classList.contains("dark")});function r(){const d=window.matchMedia("(prefers-color-scheme: dark)"),p=document.documentElement.classList;let _=localStorage.getItem(Ne),k=e.value.appearance==="dark"&&_==null||(_==="auto"||_==null?d.matches:_==="dark");d.onchange=N=>{_==="auto"&&T(k=N.matches)};function C(){T(k=!k),_=k?d.matches?"auto":"dark":d.matches?"light":"auto",localStorage.setItem(Ne,_)}function T(N){const L=document.createElement("style");L.type="text/css",L.appendChild(document.createTextNode(`:not(.VPSwitchAppearance):not(.VPSwitchAppearance *) { + -webkit-transition: none !important; + -moz-transition: none !important; + -o-transition: none !important; + -ms-transition: none !important; + transition: none !important; +}`)),document.head.appendChild(L),o.value=N,p[N?"add":"remove"]("dark"),window.getComputedStyle(L).opacity,document.head.removeChild(L)}return C}return j(o,d=>{t.value=d}),(d,p)=>(a(),y(is,{title:"toggle dark mode",class:"VPSwitchAppearance","aria-checked":o.value,onClick:i(s)},{default:v(()=>[h(vs,{class:"sun"}),h(ys,{class:"moon"})]),_:1},8,["aria-checked","onClick"]))}});const Pe=f(bs,[["__scopeId","data-v-87de0873"]]),$s={key:0,class:"VPNavBarAppearance"},ks=g({__name:"VPNavBarAppearance",setup(n){const{site:e}=V();return(t,o)=>i(e).appearance?(a(),l("div",$s,[h(Pe)])):m("",!0)}});const Ps=f(ks,[["__scopeId","data-v-f6a63727"]]),Vs={discord:'Discord',facebook:'Facebook',github:'GitHub',instagram:'Instagram',linkedin:'LinkedIn',mastodon:'Mastodon',slack:'Slack',twitter:'Twitter',youtube:'YouTube'},ws=["href","aria-label","innerHTML"],Ss=g({__name:"VPSocialLink",props:{icon:{},link:{}},setup(n){const e=n,t=$(()=>typeof e.icon=="object"?e.icon.svg:Vs[e.icon]);return(o,s)=>(a(),l("a",{class:"VPSocialLink",href:o.link,"aria-label":typeof o.icon=="string"?o.icon:"",target:"_blank",rel:"noopener",innerHTML:t.value},null,8,ws))}});const Ls=f(Ss,[["__scopeId","data-v-c530cc0a"]]),Ms={class:"VPSocialLinks"},Cs=g({__name:"VPSocialLinks",props:{links:{}},setup(n){return(e,t)=>(a(),l("div",Ms,[(a(!0),l(M,null,x(e.links,({link:o,icon:s})=>(a(),y(Ls,{key:o,icon:s,link:o},null,8,["icon","link"]))),128))]))}});const Ve=f(Cs,[["__scopeId","data-v-d7a53887"]]),Is=g({__name:"VPNavBarSocialLinks",setup(n){const{theme:e}=V();return(t,o)=>i(e).socialLinks?(a(),y(Ve,{key:0,class:"VPNavBarSocialLinks",links:i(e).socialLinks},null,8,["links"])):m("",!0)}});const Bs=f(Is,[["__scopeId","data-v-0394ad82"]]),Ts={key:0,class:"group translations"},Ns={class:"trans-title"},As={key:1,class:"group"},xs={class:"item appearance"},Es={class:"label"},Hs={class:"appearance-action"},zs={key:2,class:"group"},Ds={class:"item social-links"},Fs=g({__name:"VPNavBarExtra",setup(n){const{site:e,theme:t}=V(),{localeLinks:o,currentLang:s}=te({correspondingLink:!0}),r=$(()=>o.value.length&&s.value.label||e.value.appearance||t.value.socialLinks);return(d,p)=>r.value?(a(),y(ke,{key:0,class:"VPNavBarExtra",label:"extra navigation"},{default:v(()=>[i(o).length&&i(s).label?(a(),l("div",Ts,[u("p",Ns,P(i(s).label),1),(a(!0),l(M,null,x(i(o),_=>(a(),y(ce,{key:_.link,item:_},null,8,["item"]))),128))])):m("",!0),i(e).appearance?(a(),l("div",As,[u("div",xs,[u("p",Es,P(i(t).darkModeSwitchLabel||"Appearance"),1),u("div",Hs,[h(Pe)])])])):m("",!0),i(t).socialLinks?(a(),l("div",zs,[u("div",Ds,[h(Ve,{class:"social-links-list",links:i(t).socialLinks},null,8,["links"])])])):m("",!0)]),_:1})):m("",!0)}});const Os=f(Fs,[["__scopeId","data-v-40855f84"]]),Gs=n=>(H("data-v-e5dd9c1c"),n=n(),z(),n),Rs=["aria-expanded"],Us=Gs(()=>u("span",{class:"container"},[u("span",{class:"top"}),u("span",{class:"middle"}),u("span",{class:"bottom"})],-1)),qs=[Us],js=g({__name:"VPNavBarHamburger",props:{active:{type:Boolean}},emits:["click"],setup(n){return(e,t)=>(a(),l("button",{type:"button",class:I(["VPNavBarHamburger",{active:e.active}]),"aria-label":"mobile navigation","aria-expanded":e.active,"aria-controls":"VPNavScreen",onClick:t[0]||(t[0]=o=>e.$emit("click"))},qs,10,Rs))}});const Ks=f(js,[["__scopeId","data-v-e5dd9c1c"]]),Ws=n=>(H("data-v-7c10cd25"),n=n(),z(),n),Ys={class:"container"},Xs={class:"title"},Qs={class:"content"},Js=Ws(()=>u("div",{class:"curtain"},null,-1)),Zs={class:"content-body"},eo=g({__name:"VPNavBar",props:{isScreenOpen:{type:Boolean}},emits:["toggle-screen"],setup(n){const{y:e}=St(),{hasSidebar:t}=D(),o=$(()=>({"has-sidebar":t.value,fill:e.value>0}));return(s,r)=>(a(),l("div",{class:I(["VPNavBar",o.value])},[u("div",Ys,[u("div",Xs,[h(Ut,null,{"nav-bar-title-before":v(()=>[c(s.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":v(()=>[c(s.$slots,"nav-bar-title-after",{},void 0,!0)]),_:3})]),u("div",Qs,[Js,u("div",Zs,[c(s.$slots,"nav-bar-content-before",{},void 0,!0),h(Jt,{class:"search"}),h(qn,{class:"menu"}),h(ts,{class:"translations"}),h(Ps,{class:"appearance"}),h(Bs,{class:"social-links"}),h(Os,{class:"extra"}),c(s.$slots,"nav-bar-content-after",{},void 0,!0),h(Ks,{class:"hamburger",active:s.isScreenOpen,onClick:r[0]||(r[0]=d=>s.$emit("toggle-screen"))},null,8,["active"])])])])],2))}});const to=f(eo,[["__scopeId","data-v-7c10cd25"]]);function no(n){if(Array.isArray(n)){for(var e=0,t=Array(n.length);e1),q=[],re=!1,Se=-1,Y=void 0,G=void 0,X=void 0,We=function(e){return q.some(function(t){return!!(t.options.allowTouchMove&&t.options.allowTouchMove(e))})},ie=function(e){var t=e||window.event;return We(t.target)||t.touches.length>1?!0:(t.preventDefault&&t.preventDefault(),!1)},so=function(e){if(X===void 0){var t=!!e&&e.reserveScrollBarGap===!0,o=window.innerWidth-document.documentElement.clientWidth;if(t&&o>0){var s=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right"),10);X=document.body.style.paddingRight,document.body.style.paddingRight=s+o+"px"}}Y===void 0&&(Y=document.body.style.overflow,document.body.style.overflow="hidden")},oo=function(){X!==void 0&&(document.body.style.paddingRight=X,X=void 0),Y!==void 0&&(document.body.style.overflow=Y,Y=void 0)},ao=function(){return window.requestAnimationFrame(function(){if(G===void 0){G={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left};var e=window,t=e.scrollY,o=e.scrollX,s=e.innerHeight;document.body.style.position="fixed",document.body.style.top=-t,document.body.style.left=-o,setTimeout(function(){return window.requestAnimationFrame(function(){var r=s-window.innerHeight;r&&t>=s&&(document.body.style.top=-(t+r))})},300)}})},ro=function(){if(G!==void 0){var e=-parseInt(document.body.style.top,10),t=-parseInt(document.body.style.left,10);document.body.style.position=G.position,document.body.style.top=G.top,document.body.style.left=G.left,window.scrollTo(t,e),G=void 0}},io=function(e){return e?e.scrollHeight-e.scrollTop<=e.clientHeight:!1},lo=function(e,t){var o=e.targetTouches[0].clientY-Se;return We(e.target)?!1:t&&t.scrollTop===0&&o>0||io(t)&&o<0?ie(e):(e.stopPropagation(),!0)},Ye=function(e,t){if(!e){console.error("disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.");return}if(!q.some(function(s){return s.targetElement===e})){var o={targetElement:e,options:t||{}};q=[].concat(no(q),[o]),ae?ao():so(t),ae&&(e.ontouchstart=function(s){s.targetTouches.length===1&&(Se=s.targetTouches[0].clientY)},e.ontouchmove=function(s){s.targetTouches.length===1&&lo(s,e)},re||(document.addEventListener("touchmove",ie,we?{passive:!1}:void 0),re=!0))}},Xe=function(){ae&&(q.forEach(function(e){e.targetElement.ontouchstart=null,e.targetElement.ontouchmove=null}),re&&(document.removeEventListener("touchmove",ie,we?{passive:!1}:void 0),re=!1),Se=-1),ae?ro():oo(),q=[]};const co=g({__name:"VPNavScreenMenuLink",props:{item:{}},setup(n){const e=me("close-screen");return(t,o)=>(a(),y(O,{class:"VPNavScreenMenuLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:i(e)},{default:v(()=>[A(P(t.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}});const uo=f(co,[["__scopeId","data-v-30be0acb"]]),_o={},vo={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},po=u("path",{d:"M18.9,10.9h-6v-6c0-0.6-0.4-1-1-1s-1,0.4-1,1v6h-6c-0.6,0-1,0.4-1,1s0.4,1,1,1h6v6c0,0.6,0.4,1,1,1s1-0.4,1-1v-6h6c0.6,0,1-0.4,1-1S19.5,10.9,18.9,10.9z"},null,-1),ho=[po];function fo(n,e){return a(),l("svg",vo,ho)}const mo=f(_o,[["render",fo]]),go=g({__name:"VPNavScreenMenuGroupLink",props:{item:{}},setup(n){const e=me("close-screen");return(t,o)=>(a(),y(O,{class:"VPNavScreenMenuGroupLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:i(e)},{default:v(()=>[A(P(t.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}});const Qe=f(go,[["__scopeId","data-v-6656c42a"]]),yo={class:"VPNavScreenMenuGroupSection"},bo={key:0,class:"title"},$o=g({__name:"VPNavScreenMenuGroupSection",props:{text:{},items:{}},setup(n){return(e,t)=>(a(),l("div",yo,[e.text?(a(),l("p",bo,P(e.text),1)):m("",!0),(a(!0),l(M,null,x(e.items,o=>(a(),y(Qe,{key:o.text,item:o},null,8,["item"]))),128))]))}});const ko=f($o,[["__scopeId","data-v-8133b170"]]),Po=["aria-controls","aria-expanded"],Vo={class:"button-text"},wo=["id"],So={key:1,class:"group"},Lo=g({__name:"VPNavScreenMenuGroup",props:{text:{},items:{}},setup(n){const e=n,t=S(!1),o=$(()=>`NavScreenGroup-${e.text.replace(" ","-").toLowerCase()}`);function s(){t.value=!t.value}return(r,d)=>(a(),l("div",{class:I(["VPNavScreenMenuGroup",{open:t.value}])},[u("button",{class:"button","aria-controls":o.value,"aria-expanded":t.value,onClick:s},[u("span",Vo,P(r.text),1),h(mo,{class:"button-icon"})],8,Po),u("div",{id:o.value,class:"items"},[(a(!0),l(M,null,x(r.items,p=>(a(),l(M,{key:p.text},["link"in p?(a(),l("div",{key:p.text,class:"item"},[h(Qe,{item:p},null,8,["item"])])):(a(),l("div",So,[h(ko,{text:p.text,items:p.items},null,8,["text","items"])]))],64))),128))],8,wo)],2))}});const Mo=f(Lo,[["__scopeId","data-v-338a1689"]]),Co={key:0,class:"VPNavScreenMenu"},Io=g({__name:"VPNavScreenMenu",setup(n){const{theme:e}=V();return(t,o)=>i(e).nav?(a(),l("nav",Co,[(a(!0),l(M,null,x(i(e).nav,s=>(a(),l(M,{key:s.text},["link"in s?(a(),y(uo,{key:0,item:s},null,8,["item"])):(a(),y(Mo,{key:1,text:s.text||"",items:s.items},null,8,["text","items"]))],64))),128))])):m("",!0)}}),Bo={key:0,class:"VPNavScreenAppearance"},To={class:"text"},No=g({__name:"VPNavScreenAppearance",setup(n){const{site:e,theme:t}=V();return(o,s)=>i(e).appearance?(a(),l("div",Bo,[u("p",To,P(i(t).darkModeSwitchLabel||"Appearance"),1),h(Pe)])):m("",!0)}});const Ao=f(No,[["__scopeId","data-v-add8f686"]]),xo={class:"list"},Eo=g({__name:"VPNavScreenTranslations",setup(n){const{localeLinks:e,currentLang:t}=te({correspondingLink:!0}),o=S(!1);function s(){o.value=!o.value}return(r,d)=>i(e).length&&i(t).label?(a(),l("div",{key:0,class:I(["VPNavScreenTranslations",{open:o.value}])},[u("button",{class:"title",onClick:s},[h(Ke,{class:"icon lang"}),A(" "+P(i(t).label)+" ",1),h(je,{class:"icon chevron"})]),u("ul",xo,[(a(!0),l(M,null,x(i(e),p=>(a(),l("li",{key:p.link,class:"item"},[h(O,{class:"link",href:p.link},{default:v(()=>[A(P(p.text),1)]),_:2},1032,["href"])]))),128))])],2)):m("",!0)}});const Ho=f(Eo,[["__scopeId","data-v-d72aa483"]]),zo=g({__name:"VPNavScreenSocialLinks",setup(n){const{theme:e}=V();return(t,o)=>i(e).socialLinks?(a(),y(Ve,{key:0,class:"VPNavScreenSocialLinks",links:i(e).socialLinks},null,8,["links"])):m("",!0)}}),Do={class:"container"},Fo=g({__name:"VPNavScreen",props:{open:{type:Boolean}},setup(n){const e=S(null);function t(){Ye(e.value,{reserveScrollBarGap:!0})}function o(){Xe()}return(s,r)=>(a(),y(fe,{name:"fade",onEnter:t,onAfterLeave:o},{default:v(()=>[s.open?(a(),l("div",{key:0,class:"VPNavScreen",ref_key:"screen",ref:e},[u("div",Do,[c(s.$slots,"nav-screen-content-before",{},void 0,!0),h(Io,{class:"menu"}),h(Ho,{class:"translations"}),h(Ao,{class:"appearance"}),h(zo,{class:"social-links"}),c(s.$slots,"nav-screen-content-after",{},void 0,!0)])],512)):m("",!0)]),_:3}))}});const Oo=f(Fo,[["__scopeId","data-v-724636ae"]]),Go={class:"VPNav"},Ro=g({__name:"VPNav",setup(n){const{isScreenOpen:e,closeScreen:t,toggleScreen:o}=Ht();return oe("close-screen",t),(s,r)=>(a(),l("header",Go,[h(to,{"is-screen-open":i(e),onToggleScreen:i(o)},{"nav-bar-title-before":v(()=>[c(s.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":v(()=>[c(s.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":v(()=>[c(s.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":v(()=>[c(s.$slots,"nav-bar-content-after",{},void 0,!0)]),_:3},8,["is-screen-open","onToggleScreen"]),h(Oo,{open:i(e)},{"nav-screen-content-before":v(()=>[c(s.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":v(()=>[c(s.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3},8,["open"])]))}});const Uo=f(Ro,[["__scopeId","data-v-7e5bc4a5"]]),qo={},jo={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},Ko=u("path",{d:"M17,11H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,11,17,11z"},null,-1),Wo=u("path",{d:"M21,7H3C2.4,7,2,6.6,2,6s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,7,21,7z"},null,-1),Yo=u("path",{d:"M21,15H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,15,21,15z"},null,-1),Xo=u("path",{d:"M17,19H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,19,17,19z"},null,-1),Qo=[Ko,Wo,Yo,Xo];function Jo(n,e){return a(),l("svg",jo,Qo)}const Zo=f(qo,[["render",Jo]]);function ea(){const{hasSidebar:n}=D(),e=_e("(min-width: 960px)"),t=_e("(min-width: 1280px)");return{isAsideEnabled:$(()=>!t.value&&!e.value?!1:n.value?t.value:e.value)}}const ta=71;function Le(n){return typeof n.outline=="object"&&!Array.isArray(n.outline)&&n.outline.label||n.outlineTitle||"On this page"}function Me(n){const e=[...document.querySelectorAll(".VPDoc h2,h3,h4,h5,h6")].filter(t=>t.id&&t.hasChildNodes()).map(t=>{const o=Number(t.tagName[1]);return{title:na(t),link:"#"+t.id,level:o}});return sa(e,n)}function na(n){let e="";for(const t of n.childNodes)if(t.nodeType===1){if(t.classList.contains("VPBadge")||t.classList.contains("header-anchor"))continue;e+=t.textContent}else t.nodeType===3&&(e+=t.textContent);return e.trim()}function sa(n,e){if(e===!1)return[];const t=(typeof e=="object"&&!Array.isArray(e)?e.level:e)||2,[o,s]=typeof t=="number"?[t,t]:t==="deep"?[2,6]:t;n=n.filter(d=>d.level>=o&&d.level<=s);const r=[];e:for(let d=0;d=0;_--){const k=n[_];if(k.level{requestAnimationFrame(r),window.addEventListener("scroll",o)}),dt(()=>{d(location.hash)}),le(()=>{window.removeEventListener("scroll",o)});function r(){if(!t.value)return;const p=[].slice.call(n.value.querySelectorAll(".outline-link")),_=[].slice.call(document.querySelectorAll(".content .header-anchor")).filter(L=>p.some(w=>w.hash===L.hash&&L.offsetParent!==null)),k=window.scrollY,C=window.innerHeight,T=document.body.offsetHeight,N=Math.abs(k+C-T)<1;if(_.length&&N){d(_[_.length-1].hash);return}for(let L=0;L<_.length;L++){const w=_[L],B=_[L+1],[b,E]=aa(L,w,B);if(b){d(E);return}}}function d(p){s&&s.classList.remove("active"),p!==null&&(s=n.value.querySelector(`a[href="${decodeURIComponent(p)}"]`));const _=s;_?(_.classList.add("active"),e.value.style.top=_.offsetTop+33+"px",e.value.style.opacity="1"):(e.value.style.top="33px",e.value.style.opacity="0")}}function Ee(n){return n.parentElement.offsetTop-ta}function aa(n,e,t){const o=window.scrollY;return n===0&&o===0?[!0,null]:o{const s=R("VPDocOutlineItem",!0);return a(),l("ul",{class:I(t.root?"root":"nested")},[(a(!0),l(M,null,x(t.headers,({children:r,link:d,title:p})=>(a(),l("li",null,[u("a",{class:"outline-link",href:d,onClick:e,title:p},P(p),9,ra),r!=null&&r.length?(a(),y(s,{key:0,headers:r},null,8,["headers"])):m("",!0)]))),256))],2)}}});const Ce=f(ia,[["__scopeId","data-v-9a431c33"]]),la={},ca={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},ua=u("path",{d:"M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"},null,-1),da=[ua];function _a(n,e){return a(),l("svg",ca,da)}const Ie=f(la,[["render",_a]]),va=g({__name:"VPLocalNavOutlineDropdown",setup(n){const{frontmatter:e,theme:t}=V(),o=S(!1),s=S(0),r=S();J(()=>{o.value=!1});function d(){o.value=!o.value,s.value=window.innerHeight+Math.min(window.scrollY-64,0)}function p(C){C.target.classList.contains("outline-link")&&(r.value&&(r.value.style.transition="none"),_t(()=>{o.value=!1}))}function _(){o.value=!1,window.scrollTo({top:0,left:0,behavior:"smooth"})}const k=ge([]);return J(()=>{k.value=Me(e.value.outline??t.value.outline)}),(C,T)=>(a(),l("div",{class:"VPLocalNavOutlineDropdown",style:ze({"--vp-vh":s.value+"px"})},[k.value.length>0?(a(),l("button",{key:0,onClick:d,class:I({open:o.value})},[A(P(i(Le)(i(t)))+" ",1),h(Ie,{class:"icon"})],2)):(a(),l("button",{key:1,onClick:_},P(i(t).returnToTopLabel||"Return to top"),1)),h(fe,{name:"flyout"},{default:v(()=>[o.value?(a(),l("div",{key:0,ref_key:"items",ref:r,class:"items",onClick:p},[u("a",{class:"top-link",href:"#",onClick:_},P(i(t).returnToTopLabel||"Return to top"),1),h(Ce,{headers:k.value},null,8,["headers"])],512)):m("",!0)]),_:1})],4))}});const pa=f(va,[["__scopeId","data-v-079b16a8"]]),ha={key:0,class:"VPLocalNav"},fa=["aria-expanded"],ma={class:"menu-text"},ga=g({__name:"VPLocalNav",props:{open:{type:Boolean}},emits:["open-menu"],setup(n){const{theme:e,frontmatter:t}=V(),{hasSidebar:o}=D();return(s,r)=>i(t).layout!=="home"?(a(),l("div",ha,[i(o)?(a(),l("button",{key:0,class:"menu","aria-expanded":s.open,"aria-controls":"VPSidebarNav",onClick:r[0]||(r[0]=d=>s.$emit("open-menu"))},[h(Zo,{class:"menu-icon"}),u("span",ma,P(i(e).sidebarMenuLabel||"Menu"),1)],8,fa)):m("",!0),h(pa)])):m("",!0)}});const ya=f(ga,[["__scopeId","data-v-392e1bf8"]]),ba=n=>(H("data-v-c4656e6d"),n=n(),z(),n),$a=["role","tabindex"],ka=ba(()=>u("div",{class:"indicator"},null,-1)),Pa=["onKeydown"],Va={key:1,class:"items"},wa=g({__name:"VPSidebarItem",props:{item:{},depth:{}},setup(n){const e=n,{collapsed:t,collapsible:o,isLink:s,isActiveLink:r,hasActiveLink:d,hasChildren:p,toggle:_}=Bt($(()=>e.item)),k=$(()=>p.value?"section":"div"),C=$(()=>s.value?"a":"div"),T=$(()=>p.value?e.depth+2===7?"p":`h${e.depth+2}`:"p"),N=$(()=>s.value?void 0:"button"),L=$(()=>[[`level-${e.depth}`],{collapsible:o.value},{collapsed:t.value},{"is-link":s.value},{"is-active":r.value},{"has-active":d.value}]);function w(b){"key"in b&&b.key!=="Enter"||!e.item.link&&_()}function B(){e.item.link&&_()}return(b,E)=>{const ne=R("VPSidebarItem",!0);return a(),y(U(k.value),{class:I(["VPSidebarItem",L.value])},{default:v(()=>[b.item.text?(a(),l("div",se({key:0,class:"item",role:N.value},pt(b.item.items?{click:w,keydown:w}:{},!0),{tabindex:b.item.items&&0}),[ka,b.item.link?(a(),y(O,{key:0,tag:C.value,class:"link",href:b.item.link},{default:v(()=>[(a(),y(U(T.value),{class:"text",innerHTML:b.item.text},null,8,["innerHTML"]))]),_:1},8,["tag","href"])):(a(),y(U(T.value),{key:1,class:"text",innerHTML:b.item.text},null,8,["innerHTML"])),b.item.collapsed!=null?(a(),l("div",{key:2,class:"caret",role:"button","aria-label":"toggle section",onClick:B,onKeydown:vt(B,["enter"]),tabindex:"0"},[h(Ie,{class:"caret-icon"})],40,Pa)):m("",!0)],16,$a)):m("",!0),b.item.items&&b.item.items.length?(a(),l("div",Va,[b.depth<5?(a(!0),l(M,{key:0},x(b.item.items,W=>(a(),y(ne,{key:W.text,item:W,depth:b.depth+1},null,8,["item","depth"]))),128)):m("",!0)])):m("",!0)]),_:1},8,["class"])}}});const Sa=f(wa,[["__scopeId","data-v-c4656e6d"]]),Je=n=>(H("data-v-af16598e"),n=n(),z(),n),La=Je(()=>u("div",{class:"curtain"},null,-1)),Ma={class:"nav",id:"VPSidebarNav","aria-labelledby":"sidebar-aria-label",tabindex:"-1"},Ca=Je(()=>u("span",{class:"visually-hidden",id:"sidebar-aria-label"}," Sidebar Navigation ",-1)),Ia=g({__name:"VPSidebar",props:{open:{type:Boolean}},setup(n){const e=n,{sidebarGroups:t,hasSidebar:o}=D();let s=S(null);function r(){Ye(s.value,{reserveScrollBarGap:!0})}function d(){Xe()}return ht(async()=>{var p;e.open?(r(),(p=s.value)==null||p.focus()):d()}),(p,_)=>i(o)?(a(),l("aside",{key:0,class:I(["VPSidebar",{open:p.open}]),ref_key:"navEl",ref:s,onClick:_[0]||(_[0]=ft(()=>{},["stop"]))},[La,u("nav",Ma,[Ca,c(p.$slots,"sidebar-nav-before",{},void 0,!0),(a(!0),l(M,null,x(i(t),k=>(a(),l("div",{key:k.text,class:"group"},[h(Sa,{item:k,depth:0},null,8,["item"])]))),128)),c(p.$slots,"sidebar-nav-after",{},void 0,!0)])],2)):m("",!0)}});const Ba=f(Ia,[["__scopeId","data-v-af16598e"]]),Ta={},Na={class:"VPPage"};function Aa(n,e){const t=R("Content");return a(),l("div",Na,[c(n.$slots,"page-top"),h(t),c(n.$slots,"page-bottom")])}const xa=f(Ta,[["render",Aa]]),Ea=g({__name:"VPButton",props:{tag:{},size:{},theme:{},text:{},href:{}},setup(n){const e=n,t=$(()=>[e.size??"medium",e.theme??"brand"]),o=$(()=>e.href&&De.test(e.href)),s=$(()=>e.tag?e.tag:e.href?"a":"button");return(r,d)=>(a(),y(U(s.value),{class:I(["VPButton",t.value]),href:r.href?i(Z)(r.href):void 0,target:o.value?"_blank":void 0,rel:o.value?"noreferrer":void 0},{default:v(()=>[A(P(r.text),1)]),_:1},8,["class","href","target","rel"]))}});const Ha=f(Ea,[["__scopeId","data-v-567ba664"]]),za=n=>(H("data-v-fd2650d5"),n=n(),z(),n),Da={class:"container"},Fa={class:"main"},Oa={key:0,class:"name"},Ga={class:"clip"},Ra={key:1,class:"text"},Ua={key:2,class:"tagline"},qa={key:0,class:"actions"},ja={key:0,class:"image"},Ka={class:"image-container"},Wa=za(()=>u("div",{class:"image-bg"},null,-1)),Ya=g({__name:"VPHero",props:{name:{},text:{},tagline:{},image:{},actions:{}},setup(n){const e=me("hero-image-slot-exists");return(t,o)=>(a(),l("div",{class:I(["VPHero",{"has-image":t.image||i(e)}])},[u("div",Da,[u("div",Fa,[c(t.$slots,"home-hero-info",{},()=>[t.name?(a(),l("h1",Oa,[u("span",Ga,P(t.name),1)])):m("",!0),t.text?(a(),l("p",Ra,P(t.text),1)):m("",!0),t.tagline?(a(),l("p",Ua,P(t.tagline),1)):m("",!0)],!0),t.actions?(a(),l("div",qa,[(a(!0),l(M,null,x(t.actions,s=>(a(),l("div",{key:s.link,class:"action"},[h(Ha,{tag:"a",size:"medium",theme:s.theme,text:s.text,href:s.link},null,8,["theme","text","href"])]))),128))])):m("",!0)]),t.image||i(e)?(a(),l("div",ja,[u("div",Ka,[Wa,c(t.$slots,"home-hero-image",{},()=>[t.image?(a(),y(be,{key:0,class:"image-src",image:t.image},null,8,["image"])):m("",!0)],!0)])])):m("",!0)])],2))}});const Xa=f(Ya,[["__scopeId","data-v-fd2650d5"]]),Qa=g({__name:"VPHomeHero",setup(n){const{frontmatter:e}=V();return(t,o)=>i(e).hero?(a(),y(Xa,{key:0,class:"VPHomeHero",name:i(e).hero.name,text:i(e).hero.text,tagline:i(e).hero.tagline,image:i(e).hero.image,actions:i(e).hero.actions},{"home-hero-info":v(()=>[c(t.$slots,"home-hero-info")]),"home-hero-image":v(()=>[c(t.$slots,"home-hero-image")]),_:3},8,["name","text","tagline","image","actions"])):m("",!0)}}),Ja={},Za={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},er=u("path",{d:"M19.9,12.4c0.1-0.2,0.1-0.5,0-0.8c-0.1-0.1-0.1-0.2-0.2-0.3l-7-7c-0.4-0.4-1-0.4-1.4,0s-0.4,1,0,1.4l5.3,5.3H5c-0.6,0-1,0.4-1,1s0.4,1,1,1h11.6l-5.3,5.3c-0.4,0.4-0.4,1,0,1.4c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3l7-7C19.8,12.6,19.9,12.5,19.9,12.4z"},null,-1),tr=[er];function nr(n,e){return a(),l("svg",Za,tr)}const sr=f(Ja,[["render",nr]]),or={class:"box"},ar=["innerHTML"],rr=["innerHTML"],ir=["innerHTML"],lr={key:3,class:"link-text"},cr={class:"link-text-value"},ur=g({__name:"VPFeature",props:{icon:{},title:{},details:{},link:{},linkText:{}},setup(n){return(e,t)=>(a(),y(O,{class:"VPFeature",href:e.link,"no-icon":!0},{default:v(()=>[u("article",or,[typeof e.icon=="object"?(a(),y(be,{key:0,image:e.icon,alt:e.icon.alt,height:e.icon.height,width:e.icon.width},null,8,["image","alt","height","width"])):e.icon?(a(),l("div",{key:1,class:"icon",innerHTML:e.icon},null,8,ar)):m("",!0),u("h2",{class:"title",innerHTML:e.title},null,8,rr),e.details?(a(),l("p",{key:2,class:"details",innerHTML:e.details},null,8,ir)):m("",!0),e.linkText?(a(),l("div",lr,[u("p",cr,[A(P(e.linkText)+" ",1),h(sr,{class:"link-text-icon"})])])):m("",!0)])]),_:1},8,["href"]))}});const dr=f(ur,[["__scopeId","data-v-837f6cca"]]),_r={key:0,class:"VPFeatures"},vr={class:"container"},pr={class:"items"},hr=g({__name:"VPFeatures",props:{features:{}},setup(n){const e=n,t=$(()=>{const o=e.features.length;if(o){if(o===2)return"grid-2";if(o===3)return"grid-3";if(o%3===0)return"grid-6";if(o>3)return"grid-4"}else return});return(o,s)=>o.features?(a(),l("div",_r,[u("div",vr,[u("div",pr,[(a(!0),l(M,null,x(o.features,r=>(a(),l("div",{key:r.title,class:I(["item",[t.value]])},[h(dr,{icon:r.icon,title:r.title,details:r.details,link:r.link,"link-text":r.linkText},null,8,["icon","title","details","link","link-text"])],2))),128))])])])):m("",!0)}});const fr=f(hr,[["__scopeId","data-v-ba861f23"]]),mr=g({__name:"VPHomeFeatures",setup(n){const{frontmatter:e}=V();return(t,o)=>i(e).features?(a(),y(fr,{key:0,class:"VPHomeFeatures",features:i(e).features},null,8,["features"])):m("",!0)}}),gr={class:"VPHome"},yr=g({__name:"VPHome",setup(n){return(e,t)=>{const o=R("Content");return a(),l("div",gr,[c(e.$slots,"home-hero-before",{},void 0,!0),h(Qa,null,{"home-hero-info":v(()=>[c(e.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":v(()=>[c(e.$slots,"home-hero-image",{},void 0,!0)]),_:3}),c(e.$slots,"home-hero-after",{},void 0,!0),c(e.$slots,"home-features-before",{},void 0,!0),h(mr),c(e.$slots,"home-features-after",{},void 0,!0),h(o)])}}});const br=f(yr,[["__scopeId","data-v-d82743a8"]]),$r=n=>(H("data-v-ff0f39c8"),n=n(),z(),n),kr={class:"content"},Pr={class:"outline-title"},Vr={"aria-labelledby":"doc-outline-aria-label"},wr=$r(()=>u("span",{class:"visually-hidden",id:"doc-outline-aria-label"}," Table of Contents for current page ",-1)),Sr=g({__name:"VPDocAsideOutline",setup(n){const{frontmatter:e,theme:t}=V(),o=ge([]);J(()=>{o.value=Me(e.value.outline??t.value.outline)});const s=S(),r=S();return oa(s,r),(d,p)=>(a(),l("div",{class:I(["VPDocAsideOutline",{"has-outline":o.value.length>0}]),ref_key:"container",ref:s},[u("div",kr,[u("div",{class:"outline-marker",ref_key:"marker",ref:r},null,512),u("div",Pr,P(i(Le)(i(t))),1),u("nav",Vr,[wr,h(Ce,{headers:o.value,root:!0},null,8,["headers"])])])],2))}});const Lr=f(Sr,[["__scopeId","data-v-ff0f39c8"]]),Mr={class:"VPDocAsideCarbonAds"},Cr=g({__name:"VPDocAsideCarbonAds",props:{carbonAds:{}},setup(n){const e=()=>null;return(t,o)=>(a(),l("div",Mr,[h(i(e),{"carbon-ads":t.carbonAds},null,8,["carbon-ads"])]))}}),Ir=n=>(H("data-v-3f215769"),n=n(),z(),n),Br={class:"VPDocAside"},Tr=Ir(()=>u("div",{class:"spacer"},null,-1)),Nr=g({__name:"VPDocAside",setup(n){const{theme:e}=V();return(t,o)=>(a(),l("div",Br,[c(t.$slots,"aside-top",{},void 0,!0),c(t.$slots,"aside-outline-before",{},void 0,!0),h(Lr),c(t.$slots,"aside-outline-after",{},void 0,!0),Tr,c(t.$slots,"aside-ads-before",{},void 0,!0),i(e).carbonAds?(a(),y(Cr,{key:0,"carbon-ads":i(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)]))}});const Ar=f(Nr,[["__scopeId","data-v-3f215769"]]);function xr(){const{theme:n,page:e}=V();return $(()=>{const{text:t="Edit this page",pattern:o=""}=n.value.editLink||{};let s;return typeof o=="function"?s=o(e.value):s=o.replace(/:path/g,e.value.filePath),{url:s,text:t}})}function Er(){const{page:n,theme:e,frontmatter:t}=V();return $(()=>{var d,p,_,k;const o=Re(e.value.sidebar,n.value.relativePath),s=Ct(o),r=s.findIndex(C=>K(n.value.relativePath,C.link));return{prev:t.value.prev===!1?void 0:{text:(typeof t.value.prev=="string"?t.value.prev:typeof t.value.prev=="object"?t.value.prev.text:void 0)??((d=s[r-1])==null?void 0:d.text),link:(typeof t.value.prev=="object"?t.value.prev.link:void 0)??((p=s[r-1])==null?void 0:p.link)},next:t.value.next===!1?void 0:{text:(typeof t.value.next=="string"?t.value.next:typeof t.value.next=="object"?t.value.next.text:void 0)??((_=s[r+1])==null?void 0:_.text),link:(typeof t.value.next=="object"?t.value.next.link:void 0)??((k=s[r+1])==null?void 0:k.link)}}})}const Hr={},zr={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},Dr=u("path",{d:"M18,23H4c-1.7,0-3-1.3-3-3V6c0-1.7,1.3-3,3-3h7c0.6,0,1,0.4,1,1s-0.4,1-1,1H4C3.4,5,3,5.4,3,6v14c0,0.6,0.4,1,1,1h14c0.6,0,1-0.4,1-1v-7c0-0.6,0.4-1,1-1s1,0.4,1,1v7C21,21.7,19.7,23,18,23z"},null,-1),Fr=u("path",{d:"M8,17c-0.3,0-0.5-0.1-0.7-0.3C7,16.5,6.9,16.1,7,15.8l1-4c0-0.2,0.1-0.3,0.3-0.5l9.5-9.5c1.2-1.2,3.2-1.2,4.4,0c1.2,1.2,1.2,3.2,0,4.4l-9.5,9.5c-0.1,0.1-0.3,0.2-0.5,0.3l-4,1C8.2,17,8.1,17,8,17zM9.9,12.5l-0.5,2.1l2.1-0.5l9.3-9.3c0.4-0.4,0.4-1.1,0-1.6c-0.4-0.4-1.2-0.4-1.6,0l0,0L9.9,12.5z M18.5,2.5L18.5,2.5L18.5,2.5z"},null,-1),Or=[Dr,Fr];function Gr(n,e){return a(),l("svg",zr,Or)}const Rr=f(Hr,[["render",Gr]]),Ur={class:"VPLastUpdated"},qr=["datetime"],jr=g({__name:"VPDocFooterLastUpdated",setup(n){const{theme:e,page:t,lang:o}=V(),s=$(()=>new Date(t.value.lastUpdated)),r=$(()=>s.value.toISOString()),d=S("");return F(()=>{Q(()=>{d.value=s.value.toLocaleString(o.value)})}),(p,_)=>(a(),l("p",Ur,[A(P(i(e).lastUpdatedText||"Last updated")+": ",1),u("time",{datetime:r.value},P(d.value),9,qr)]))}});const Kr=f(jr,[["__scopeId","data-v-7b3ebfe1"]]),Wr={key:0,class:"VPDocFooter"},Yr={key:0,class:"edit-info"},Xr={key:0,class:"edit-link"},Qr={key:1,class:"last-updated"},Jr={key:1,class:"prev-next"},Zr={class:"pager"},ei=["href"],ti=["innerHTML"],ni=["innerHTML"],si=["href"],oi=["innerHTML"],ai=["innerHTML"],ri=g({__name:"VPDocFooter",setup(n){const{theme:e,page:t,frontmatter:o}=V(),s=xr(),r=Er(),d=$(()=>e.value.editLink&&o.value.editLink!==!1),p=$(()=>t.value.lastUpdated&&o.value.lastUpdated!==!1),_=$(()=>d.value||p.value||r.value.prev||r.value.next);return(k,C)=>{var T,N,L,w,B,b,E;return _.value?(a(),l("footer",Wr,[c(k.$slots,"doc-footer-before",{},void 0,!0),d.value||p.value?(a(),l("div",Yr,[d.value?(a(),l("div",Xr,[h(O,{class:"edit-link-button",href:i(s).url,"no-icon":!0},{default:v(()=>[h(Rr,{class:"edit-link-icon","aria-label":"edit icon"}),A(" "+P(i(s).text),1)]),_:1},8,["href"])])):m("",!0),p.value?(a(),l("div",Qr,[h(Kr)])):m("",!0)])):m("",!0),(T=i(r).prev)!=null&&T.link||(N=i(r).next)!=null&&N.link?(a(),l("div",Jr,[u("div",Zr,[(L=i(r).prev)!=null&&L.link?(a(),l("a",{key:0,class:"pager-link prev",href:i(Z)(i(r).prev.link)},[u("span",{class:"desc",innerHTML:((w=i(e).docFooter)==null?void 0:w.prev)||"Previous page"},null,8,ti),u("span",{class:"title",innerHTML:i(r).prev.text},null,8,ni)],8,ei)):m("",!0)]),u("div",{class:I(["pager",{"has-prev":(B=i(r).prev)==null?void 0:B.link}])},[(b=i(r).next)!=null&&b.link?(a(),l("a",{key:0,class:"pager-link next",href:i(Z)(i(r).next.link)},[u("span",{class:"desc",innerHTML:((E=i(e).docFooter)==null?void 0:E.next)||"Next page"},null,8,oi),u("span",{class:"title",innerHTML:i(r).next.text},null,8,ai)],8,si)):m("",!0)],2)])):m("",!0)])):m("",!0)}}});const ii=f(ri,[["__scopeId","data-v-face870a"]]),li={key:0,class:"VPDocOutlineDropdown"},ci={key:0,class:"items"},ui=g({__name:"VPDocOutlineDropdown",setup(n){const{frontmatter:e,theme:t}=V(),o=S(!1);J(()=>{o.value=!1});const s=ge([]);return J(()=>{s.value=Me(e.value.outline??t.value.outline)}),(r,d)=>s.value.length>0?(a(),l("div",li,[u("button",{onClick:d[0]||(d[0]=p=>o.value=!o.value),class:I({open:o.value})},[A(P(i(Le)(i(t)))+" ",1),h(Ie,{class:"icon"})],2),o.value?(a(),l("div",ci,[h(Ce,{headers:s.value},null,8,["headers"])])):m("",!0)])):m("",!0)}});const di=f(ui,[["__scopeId","data-v-2edece88"]]),_i=n=>(H("data-v-c4b0d3cf"),n=n(),z(),n),vi={class:"container"},pi=_i(()=>u("div",{class:"aside-curtain"},null,-1)),hi={class:"aside-container"},fi={class:"aside-content"},mi={class:"content"},gi={class:"content-container"},yi={class:"main"},bi=g({__name:"VPDoc",setup(n){const e=ee(),{hasSidebar:t,hasAside:o,leftAside:s}=D(),r=$(()=>e.path.replace(/[./]+/g,"_").replace(/_html$/,""));return(d,p)=>{const _=R("Content");return a(),l("div",{class:I(["VPDoc",{"has-sidebar":i(t),"has-aside":i(o)}])},[c(d.$slots,"doc-top",{},void 0,!0),u("div",vi,[i(o)?(a(),l("div",{key:0,class:I(["aside",{"left-aside":i(s)}])},[pi,u("div",hi,[u("div",fi,[h(Ar,null,{"aside-top":v(()=>[c(d.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":v(()=>[c(d.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":v(()=>[c(d.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":v(()=>[c(d.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":v(()=>[c(d.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":v(()=>[c(d.$slots,"aside-ads-after",{},void 0,!0)]),_:3})])])],2)):m("",!0),u("div",mi,[u("div",gi,[c(d.$slots,"doc-before",{},void 0,!0),h(di),u("main",yi,[h(_,{class:I(["vp-doc",r.value])},null,8,["class"])]),h(ii,null,{"doc-footer-before":v(()=>[c(d.$slots,"doc-footer-before",{},void 0,!0)]),_:3}),c(d.$slots,"doc-after",{},void 0,!0)])])]),c(d.$slots,"doc-bottom",{},void 0,!0)],2)}}});const $i=f(bi,[["__scopeId","data-v-c4b0d3cf"]]),ue=n=>(H("data-v-c70503b8"),n=n(),z(),n),ki={class:"NotFound"},Pi=ue(()=>u("p",{class:"code"},"404",-1)),Vi=ue(()=>u("h1",{class:"title"},"PAGE NOT FOUND",-1)),wi=ue(()=>u("div",{class:"divider"},null,-1)),Si=ue(()=>u("blockquote",{class:"quote"}," But if you don't change your direction, and if you keep looking, you may end up where you are heading. ",-1)),Li={class:"action"},Mi=["href"],Ci=g({__name:"NotFound",setup(n){const{site:e}=V(),{localeLinks:t}=te({removeCurrent:!1}),o=S("/");return F(()=>{var r;const s=window.location.pathname.replace(e.value.base,"").replace(/(^.*?\/).*$/,"/$1");t.value.length&&(o.value=((r=t.value.find(({link:d})=>d.startsWith(s)))==null?void 0:r.link)||t.value[0].link)}),(s,r)=>(a(),l("div",ki,[Pi,Vi,wi,Si,u("div",Li,[u("a",{class:"link",href:i(he)(o.value),"aria-label":"go to home"}," Take me home ",8,Mi)])]))}});const Ii=f(Ci,[["__scopeId","data-v-c70503b8"]]),Bi=g({__name:"VPContent",setup(n){const{page:e,frontmatter:t}=V(),{hasSidebar:o}=D();return(s,r)=>(a(),l("div",{class:I(["VPContent",{"has-sidebar":i(o),"is-home":i(t).layout==="home"}]),id:"VPContent"},[i(e).isNotFound?c(s.$slots,"not-found",{key:0},()=>[h(Ii)],!0):i(t).layout==="page"?(a(),y(xa,{key:1},{"page-top":v(()=>[c(s.$slots,"page-top",{},void 0,!0)]),"page-bottom":v(()=>[c(s.$slots,"page-bottom",{},void 0,!0)]),_:3})):i(t).layout==="home"?(a(),y(br,{key:2},{"home-hero-before":v(()=>[c(s.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info":v(()=>[c(s.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":v(()=>[c(s.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":v(()=>[c(s.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":v(()=>[c(s.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":v(()=>[c(s.$slots,"home-features-after",{},void 0,!0)]),_:3})):(a(),y($i,{key:3},{"doc-top":v(()=>[c(s.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":v(()=>[c(s.$slots,"doc-bottom",{},void 0,!0)]),"doc-footer-before":v(()=>[c(s.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":v(()=>[c(s.$slots,"doc-before",{},void 0,!0)]),"doc-after":v(()=>[c(s.$slots,"doc-after",{},void 0,!0)]),"aside-top":v(()=>[c(s.$slots,"aside-top",{},void 0,!0)]),"aside-outline-before":v(()=>[c(s.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":v(()=>[c(s.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":v(()=>[c(s.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":v(()=>[c(s.$slots,"aside-ads-after",{},void 0,!0)]),"aside-bottom":v(()=>[c(s.$slots,"aside-bottom",{},void 0,!0)]),_:3}))],2))}});const Ti=f(Bi,[["__scopeId","data-v-a494bd1d"]]),Ni={class:"container"},Ai=["innerHTML"],xi=["innerHTML"],Ei=g({__name:"VPFooter",setup(n){const{theme:e}=V(),{hasSidebar:t}=D();return(o,s)=>i(e).footer?(a(),l("footer",{key:0,class:I(["VPFooter",{"has-sidebar":i(t)}])},[u("div",Ni,[i(e).footer.message?(a(),l("p",{key:0,class:"message",innerHTML:i(e).footer.message},null,8,Ai)):m("",!0),i(e).footer.copyright?(a(),l("p",{key:1,class:"copyright",innerHTML:i(e).footer.copyright},null,8,xi)):m("",!0)])],2)):m("",!0)}});const Hi=f(Ei,[["__scopeId","data-v-2f86ebd2"]]),zi={key:0,class:"Layout"},Di=g({__name:"Layout",setup(n){const{isOpen:e,open:t,close:o}=D(),s=ee();j(()=>s.path,o),It(e,o),oe("close-sidebar",o),oe("is-sidebar-open",e);const{frontmatter:r}=V(),d=mt(),p=$(()=>!!d["home-hero-image"]);return oe("hero-image-slot-exists",p),(_,k)=>{const C=R("Content");return i(r).layout!==!1?(a(),l("div",zi,[c(_.$slots,"layout-top",{},void 0,!0),h(Nt),h(Et,{class:"backdrop",show:i(e),onClick:i(o)},null,8,["show","onClick"]),h(Uo,null,{"nav-bar-title-before":v(()=>[c(_.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":v(()=>[c(_.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":v(()=>[c(_.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":v(()=>[c(_.$slots,"nav-bar-content-after",{},void 0,!0)]),"nav-screen-content-before":v(()=>[c(_.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":v(()=>[c(_.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3}),h(ya,{open:i(e),onOpenMenu:i(t)},null,8,["open","onOpenMenu"]),h(Ba,{open:i(e)},{"sidebar-nav-before":v(()=>[c(_.$slots,"sidebar-nav-before",{},void 0,!0)]),"sidebar-nav-after":v(()=>[c(_.$slots,"sidebar-nav-after",{},void 0,!0)]),_:3},8,["open"]),h(Ti,null,{"page-top":v(()=>[c(_.$slots,"page-top",{},void 0,!0)]),"page-bottom":v(()=>[c(_.$slots,"page-bottom",{},void 0,!0)]),"not-found":v(()=>[c(_.$slots,"not-found",{},void 0,!0)]),"home-hero-before":v(()=>[c(_.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info":v(()=>[c(_.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":v(()=>[c(_.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":v(()=>[c(_.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":v(()=>[c(_.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":v(()=>[c(_.$slots,"home-features-after",{},void 0,!0)]),"doc-footer-before":v(()=>[c(_.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":v(()=>[c(_.$slots,"doc-before",{},void 0,!0)]),"doc-after":v(()=>[c(_.$slots,"doc-after",{},void 0,!0)]),"doc-top":v(()=>[c(_.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":v(()=>[c(_.$slots,"doc-bottom",{},void 0,!0)]),"aside-top":v(()=>[c(_.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":v(()=>[c(_.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":v(()=>[c(_.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":v(()=>[c(_.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":v(()=>[c(_.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":v(()=>[c(_.$slots,"aside-ads-after",{},void 0,!0)]),_:3}),h(Hi),c(_.$slots,"layout-bottom",{},void 0,!0)])):(a(),y(C,{key:1}))}}});const Fi=f(Di,[["__scopeId","data-v-b2cf3e0b"]]);const Gi={Layout:Fi,enhanceApp:({app:n})=>{n.component("Badge",yt)}};export{Gi as t,V as u}; diff --git a/assets/guide_about_index.md.253c741c.js b/assets/guide_about_index.md.253c741c.js new file mode 100644 index 0000000..4ac7462 --- /dev/null +++ b/assets/guide_about_index.md.253c741c.js @@ -0,0 +1 @@ +import"./chunks/theme.c4d303ac.js";import{_ as s,o as a,c as d,O as n,Q as c,z as t}from"./chunks/framework.6241eaf2.js";const o=e=>(n("data-v-b936db02"),e=e(),c(),e),p=o(()=>t("p",{style:{"margin-bottom":"50px"}},[t("img",{src:"https://cdn.jsdelivr.net/gh/fonghehe/picture/personal/account.jpg",width:"300"})],-1)),_=o(()=>t("p",null,[t("img",{src:"https://cdn.jsdelivr.net/gh/fonghehe/picture/personal/group.jpg",width:"300"})],-1)),i=[p,_],b=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"guide/about/index.md","filePath":"guide/about/index.md","lastUpdated":1685617392000}'),r={name:"guide/about/index.md"},l=Object.assign(r,{setup(e){return(u,h)=>(a(),d("div",null,i))}}),x=s(l,[["__scopeId","data-v-b936db02"]]);export{b as __pageData,x as default}; diff --git a/assets/guide_about_index.md.253c741c.lean.js b/assets/guide_about_index.md.253c741c.lean.js new file mode 100644 index 0000000..4ac7462 --- /dev/null +++ b/assets/guide_about_index.md.253c741c.lean.js @@ -0,0 +1 @@ +import"./chunks/theme.c4d303ac.js";import{_ as s,o as a,c as d,O as n,Q as c,z as t}from"./chunks/framework.6241eaf2.js";const o=e=>(n("data-v-b936db02"),e=e(),c(),e),p=o(()=>t("p",{style:{"margin-bottom":"50px"}},[t("img",{src:"https://cdn.jsdelivr.net/gh/fonghehe/picture/personal/account.jpg",width:"300"})],-1)),_=o(()=>t("p",null,[t("img",{src:"https://cdn.jsdelivr.net/gh/fonghehe/picture/personal/group.jpg",width:"300"})],-1)),i=[p,_],b=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"guide/about/index.md","filePath":"guide/about/index.md","lastUpdated":1685617392000}'),r={name:"guide/about/index.md"},l=Object.assign(r,{setup(e){return(u,h)=>(a(),d("div",null,i))}}),x=s(l,[["__scopeId","data-v-b936db02"]]);export{b as __pageData,x as default}; diff --git a/assets/guide_about_index.md.4fa84a09.js b/assets/guide_about_index.md.4fa84a09.js deleted file mode 100644 index 6c24980..0000000 --- a/assets/guide_about_index.md.4fa84a09.js +++ /dev/null @@ -1 +0,0 @@ -import"./chunks/theme.c3b80f96.js";import{o,c as a,_ as d,N as c,O as n,x as t}from"./chunks/framework.522debca.js";const s=e=>(c("data-v-e2ed34b6"),e=e(),n(),e),p=s(()=>t("p",{style:{"margin-bottom":"50px"}},[t("img",{src:"https://cdn.jsdelivr.net/gh/fonghehe/picture/personal/account.jpg",width:"300"})],-1)),_=s(()=>t("p",null,[t("img",{src:"https://cdn.jsdelivr.net/gh/fonghehe/picture/personal/group.jpg",width:"300"})],-1)),i=[p,_],x=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"guide/about/index.md","lastUpdated":1679905840000}'),r={name:"guide/about/index.md"},l=Object.assign(r,{setup(e){return(h,u)=>(o(),a("div",null,i))}}),f=d(l,[["__scopeId","data-v-e2ed34b6"]]);export{x as __pageData,f as default}; diff --git a/assets/guide_about_index.md.4fa84a09.lean.js b/assets/guide_about_index.md.4fa84a09.lean.js deleted file mode 100644 index 6c24980..0000000 --- a/assets/guide_about_index.md.4fa84a09.lean.js +++ /dev/null @@ -1 +0,0 @@ -import"./chunks/theme.c3b80f96.js";import{o,c as a,_ as d,N as c,O as n,x as t}from"./chunks/framework.522debca.js";const s=e=>(c("data-v-e2ed34b6"),e=e(),n(),e),p=s(()=>t("p",{style:{"margin-bottom":"50px"}},[t("img",{src:"https://cdn.jsdelivr.net/gh/fonghehe/picture/personal/account.jpg",width:"300"})],-1)),_=s(()=>t("p",null,[t("img",{src:"https://cdn.jsdelivr.net/gh/fonghehe/picture/personal/group.jpg",width:"300"})],-1)),i=[p,_],x=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"guide/about/index.md","lastUpdated":1679905840000}'),r={name:"guide/about/index.md"},l=Object.assign(r,{setup(e){return(h,u)=>(o(),a("div",null,i))}}),f=d(l,[["__scopeId","data-v-e2ed34b6"]]);export{x as __pageData,f as default}; diff --git a/assets/guide_edit.md.2f737706.js b/assets/guide_edit.md.2f737706.js new file mode 100644 index 0000000..2008fe7 --- /dev/null +++ b/assets/guide_edit.md.2f737706.js @@ -0,0 +1,11 @@ +import{_ as s,o as a,c as n,R as e}from"./chunks/framework.6241eaf2.js";const u=JSON.parse('{"title":"参与编辑","description":"","frontmatter":{},"headers":[],"relativePath":"guide/edit.md","filePath":"guide/edit.md","lastUpdated":1685617392000}'),t={name:"guide/edit.md"},l=e(`

参与编辑

欢迎有意愿参与到开源的朋友,加入到本文档的编写,书写文档不仅是教会别人知识,更是用自己的表达方式概括自己所学习知识的一种方式,这对个人来说是不可多得的成长机会。

js
// 拉取项目
+git clone https://github.com/sunniejs/vue-h5-template
+
+// 切换分支
+git checkout -b docs origin/docs
+
+// 安装依赖
+yarn install
+
+// 启动项目
+yarn start
`,3),p=[l];function o(c,i,r,d,_,y){return a(),n("div",null,p)}const C=s(t,[["render",o]]);export{u as __pageData,C as default}; diff --git a/assets/guide_edit.md.2f737706.lean.js b/assets/guide_edit.md.2f737706.lean.js new file mode 100644 index 0000000..14b61bc --- /dev/null +++ b/assets/guide_edit.md.2f737706.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as e}from"./chunks/framework.6241eaf2.js";const u=JSON.parse('{"title":"参与编辑","description":"","frontmatter":{},"headers":[],"relativePath":"guide/edit.md","filePath":"guide/edit.md","lastUpdated":1685617392000}'),t={name:"guide/edit.md"},l=e("",3),p=[l];function o(c,i,r,d,_,y){return a(),n("div",null,p)}const C=s(t,[["render",o]]);export{u as __pageData,C as default}; diff --git a/assets/guide_edit.md.67c9e928.js b/assets/guide_edit.md.67c9e928.js deleted file mode 100644 index cf89211..0000000 --- a/assets/guide_edit.md.67c9e928.js +++ /dev/null @@ -1,14 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const C=JSON.parse('{"title":"参与编辑","description":"","frontmatter":{},"headers":[],"relativePath":"guide/edit.md","lastUpdated":1679905840000}'),e={name:"guide/edit.md"},t=l(`

参与编辑

欢迎有意愿参与到开源的朋友,加入到本文档的编写,书写文档不仅是教会别人知识,更是用自己的表达方式概括自己所学习知识的一种方式,这对个人来说是不可多得的成长机会。

js

-// 拉取项目
-git clone https://github.com/sunniejs/vue-h5-template
-
-// 切换分支
-git checkout -b docs origin/docs
-
-// 安装依赖
-yarn install
-
-// 启动项目
-yarn start
-
-
`,3),p=[t];function o(c,i,r,d,_,y){return a(),n("div",null,p)}const u=s(e,[["render",o]]);export{C as __pageData,u as default}; diff --git a/assets/guide_edit.md.67c9e928.lean.js b/assets/guide_edit.md.67c9e928.lean.js deleted file mode 100644 index a9f471d..0000000 --- a/assets/guide_edit.md.67c9e928.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const C=JSON.parse('{"title":"参与编辑","description":"","frontmatter":{},"headers":[],"relativePath":"guide/edit.md","lastUpdated":1679905840000}'),e={name:"guide/edit.md"},t=l("",3),p=[t];function o(c,i,r,d,_,y){return a(),n("div",null,p)}const u=s(e,[["render",o]]);export{C as __pageData,u as default}; diff --git a/assets/guide_index.md.14f8cbf3.js b/assets/guide_index.md.14f8cbf3.js deleted file mode 100644 index 0bd07e1..0000000 --- a/assets/guide_index.md.14f8cbf3.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,o as a,c as t,Q as i}from"./chunks/framework.522debca.js";const m=JSON.parse('{"title":"Vue-H5-Template","description":"","frontmatter":{},"headers":[],"relativePath":"guide/index.md","lastUpdated":1679905840000}'),r={name:"guide/index.md"},l=i('

Vue-H5-Template

Vue-H5-Template,是基于 vite3 + vue3 + pinia + ( Vant or Varlet or NutUI ) + viewport 适配方案 ,构建移动端快速开发脚手架

特点

最新技术栈

  • 框架选型基于当下流行的 vue + vite + ts 模式,精选社区 star 和满意度均不错的 ui 框架和 vite 插件,并时常进行更新,确保与官方文档一致

基于 TypeScript

  • Typescript 逐渐在各种大型的 js 项目中使用,明确的类型定义可以省下不少的开发和维护成本

轻量级

  • 不同于集成的脚手架,尽量做到轻量不冗杂,只引入高频次的插件和清晰的示例
  • 轻装上阵,便于拓展开发,减少学习成本

通俗易懂的文档

  • 基于最新 VitePress 构建的文档,更快,更便捷
  • 更快的热更新
',11),o=[l];function n(s,h,u,c,d,p){return a(),t("div",null,o)}const f=e(r,[["render",n]]);export{m as __pageData,f as default}; diff --git a/assets/guide_index.md.14f8cbf3.lean.js b/assets/guide_index.md.14f8cbf3.lean.js deleted file mode 100644 index 8542d57..0000000 --- a/assets/guide_index.md.14f8cbf3.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,o as a,c as t,Q as i}from"./chunks/framework.522debca.js";const m=JSON.parse('{"title":"Vue-H5-Template","description":"","frontmatter":{},"headers":[],"relativePath":"guide/index.md","lastUpdated":1679905840000}'),r={name:"guide/index.md"},l=i("",11),o=[l];function n(s,h,u,c,d,p){return a(),t("div",null,o)}const f=e(r,[["render",n]]);export{m as __pageData,f as default}; diff --git a/assets/guide_index.md.8916baf2.js b/assets/guide_index.md.8916baf2.js new file mode 100644 index 0000000..ac7fa7f --- /dev/null +++ b/assets/guide_index.md.8916baf2.js @@ -0,0 +1 @@ +import{_ as e,o as a,c as t,R as i}from"./chunks/framework.6241eaf2.js";const m=JSON.parse('{"title":"Vue-H5-Template","description":"","frontmatter":{},"headers":[],"relativePath":"guide/index.md","filePath":"guide/index.md","lastUpdated":1685617392000}'),r={name:"guide/index.md"},l=i('

Vue-H5-Template

Vue-H5-Template,是基于 vite3 + vue3 + pinia + ( Vant or Varlet or NutUI ) + viewport 适配方案 ,构建移动端快速开发脚手架

特点

最新技术栈

  • 框架选型基于当下流行的 vue + vite + ts 模式,精选社区 star 和满意度均不错的 ui 框架和 vite 插件,并时常进行更新,确保与官方文档一致

基于 TypeScript

  • Typescript 逐渐在各种大型的 js 项目中使用,明确的类型定义可以省下不少的开发和维护成本

轻量级

  • 不同于集成的脚手架,尽量做到轻量不冗杂,只引入高频次的插件和清晰的示例
  • 轻装上阵,便于拓展开发,减少学习成本

通俗易懂的文档

  • 基于最新 VitePress 构建的文档,更快,更便捷
  • 更快的热更新
',11),o=[l];function n(s,h,u,d,c,p){return a(),t("div",null,o)}const f=e(r,[["render",n]]);export{m as __pageData,f as default}; diff --git a/assets/guide_index.md.8916baf2.lean.js b/assets/guide_index.md.8916baf2.lean.js new file mode 100644 index 0000000..941e8ef --- /dev/null +++ b/assets/guide_index.md.8916baf2.lean.js @@ -0,0 +1 @@ +import{_ as e,o as a,c as t,R as i}from"./chunks/framework.6241eaf2.js";const m=JSON.parse('{"title":"Vue-H5-Template","description":"","frontmatter":{},"headers":[],"relativePath":"guide/index.md","filePath":"guide/index.md","lastUpdated":1685617392000}'),r={name:"guide/index.md"},l=i("",11),o=[l];function n(s,h,u,d,c,p){return a(),t("div",null,o)}const f=e(r,[["render",n]]);export{m as __pageData,f as default}; diff --git a/assets/guide_other_index.md.24383439.js b/assets/guide_other_index.md.24383439.js new file mode 100644 index 0000000..b3f5129 --- /dev/null +++ b/assets/guide_other_index.md.24383439.js @@ -0,0 +1 @@ +import{_ as e,o as a,c as t,R as r}from"./chunks/framework.6241eaf2.js";const f=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"guide/other/index.md","filePath":"guide/other/index.md","lastUpdated":1685617392000}'),o={name:"guide/other/index.md"},i=r('

1、为什么有多个组件库?

本模版想做到的是尽可能的开箱即用,不用去看别的文档引入相关组件库,毕竟做减法比做加法要容易些,如你不需要某个组件库可以根据这篇指引去移除某个组件库

2、我可以用在个人或公司的项目吗?

模版基于 MIT License,你可以根据自己的需求用到不同的项目里,如果对你有帮助点个 star 支持一下呗 🌟

3、我是一个新手,有什么好的学习建议吗?

过来人的经验就是熟读文档可以少走很多弯路,很多的人文档没读熟就开始动手,出了问题也不知道如何去解决,墙裂建议先把文档熟读

',6),n=[i];function _(d,s,h,c,l,p){return a(),t("div",null,n)}const m=e(o,[["render",_]]);export{f as __pageData,m as default}; diff --git a/assets/guide_other_index.md.24383439.lean.js b/assets/guide_other_index.md.24383439.lean.js new file mode 100644 index 0000000..89d74c7 --- /dev/null +++ b/assets/guide_other_index.md.24383439.lean.js @@ -0,0 +1 @@ +import{_ as e,o as a,c as t,R as r}from"./chunks/framework.6241eaf2.js";const f=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"guide/other/index.md","filePath":"guide/other/index.md","lastUpdated":1685617392000}'),o={name:"guide/other/index.md"},i=r("",6),n=[i];function _(d,s,h,c,l,p){return a(),t("div",null,n)}const m=e(o,[["render",_]]);export{f as __pageData,m as default}; diff --git a/assets/guide_other_index.md.c2f17cfe.js b/assets/guide_other_index.md.c2f17cfe.js deleted file mode 100644 index 6536f39..0000000 --- a/assets/guide_other_index.md.c2f17cfe.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,o as a,c as t,Q as r}from"./chunks/framework.522debca.js";const f=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"guide/other/index.md","lastUpdated":1679905840000}'),o={name:"guide/other/index.md"},n=r('

1、为什么有多个组件库?

本模版想做到的是尽可能的开箱即用,不用去看别的文档引入相关组件库,毕竟做减法比做加法要容易些,如你不需要某个组件库可以根据这篇指引去移除某个组件库

2、我可以用在个人或公司的项目吗?

模版基于 MIT License,你可以根据自己的需求用到不同的项目里,如果对你有帮助点个 star 支持一下呗 🌟

3、我是一个新手,有什么好的学习建议吗?

过来人的经验就是熟读文档可以少走很多弯路,很多的人文档没读熟就开始动手,出了问题也不知道如何去解决,墙裂建议先把文档熟读

',6),_=[n];function i(s,d,c,h,l,p){return a(),t("div",null,_)}const m=e(o,[["render",i]]);export{f as __pageData,m as default}; diff --git a/assets/guide_other_index.md.c2f17cfe.lean.js b/assets/guide_other_index.md.c2f17cfe.lean.js deleted file mode 100644 index 534366d..0000000 --- a/assets/guide_other_index.md.c2f17cfe.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,o as a,c as t,Q as r}from"./chunks/framework.522debca.js";const f=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"guide/other/index.md","lastUpdated":1679905840000}'),o={name:"guide/other/index.md"},n=r("",6),_=[n];function i(s,d,c,h,l,p){return a(),t("div",null,_)}const m=e(o,[["render",i]]);export{f as __pageData,m as default}; diff --git a/assets/guide_start.md.73063b28.js b/assets/guide_start.md.73063b28.js new file mode 100644 index 0000000..72bcb62 --- /dev/null +++ b/assets/guide_start.md.73063b28.js @@ -0,0 +1 @@ +import{_ as e,o as a,c as t,R as r}from"./chunks/framework.6241eaf2.js";const u=JSON.parse('{"title":"快速上手","description":"","frontmatter":{},"headers":[],"relativePath":"guide/start.md","filePath":"guide/start.md","lastUpdated":1685617392000}'),n={name:"guide/start.md"},o=r('

快速上手

node 版本要求

推荐 16.17.0+以上的版本,毕竟 2022 年了,别掐着 12+的版本了,你也可以使用nvmnvm-windows在同一台电脑上管理多个 node 版本。

包管理器

尽量使用 yarn 或者 pnpm,本项目仅保证在 yarn 或 pnpm 下正确运行,npm 涉及到网络环境等各种情况的限制不做过多考虑。如要使用 npm 请不要切换淘宝镜像,会有各种奇怪的 bug。

启动项目

项目中包含 vue2 和 vue3 两套模版

如你使用的是 vue2-template,请参考vue2 项目启动

如你使用的是 vue3-template,请参考vue3 项目启动

',9),s=[o];function d(h,i,l,p,c,_){return a(),t("div",null,s)}const f=e(n,[["render",d]]);export{u as __pageData,f as default}; diff --git a/assets/guide_start.md.73063b28.lean.js b/assets/guide_start.md.73063b28.lean.js new file mode 100644 index 0000000..e7fe972 --- /dev/null +++ b/assets/guide_start.md.73063b28.lean.js @@ -0,0 +1 @@ +import{_ as e,o as a,c as t,R as r}from"./chunks/framework.6241eaf2.js";const u=JSON.parse('{"title":"快速上手","description":"","frontmatter":{},"headers":[],"relativePath":"guide/start.md","filePath":"guide/start.md","lastUpdated":1685617392000}'),n={name:"guide/start.md"},o=r("",9),s=[o];function d(h,i,l,p,c,_){return a(),t("div",null,s)}const f=e(n,[["render",d]]);export{u as __pageData,f as default}; diff --git a/assets/guide_start.md.e6abe1c0.js b/assets/guide_start.md.e6abe1c0.js deleted file mode 100644 index aae37a8..0000000 --- a/assets/guide_start.md.e6abe1c0.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,o as a,c as t,Q as r}from"./chunks/framework.522debca.js";const u=JSON.parse('{"title":"快速上手","description":"","frontmatter":{},"headers":[],"relativePath":"guide/start.md","lastUpdated":1679905840000}'),n={name:"guide/start.md"},o=r('

快速上手

node 版本要求

推荐 14.19.0+以上的版本,毕竟 2022 年了,别掐着 12+的版本了,你也可以使用nvmnvm-windows在同一台电脑上管理多个 node 版本。

包管理器

尽量使用 yarn 或者 pnpm,本项目仅保证在 yarn 或 pnpm 下正确运行,npm 涉及到网络环境等各种情况的限制不做过多考虑。如要使用 npm 请不要切换淘宝镜像,会有各种奇怪的 bug。

启动项目

项目中包含 vue2 和 vue3 两套模版

如你使用的是 vue2-template,请参考vue2 项目启动

如你使用的是 vue3-template,请参考vue3 项目启动

',9),s=[o];function h(d,i,l,p,c,_){return a(),t("div",null,s)}const f=e(n,[["render",h]]);export{u as __pageData,f as default}; diff --git a/assets/guide_start.md.e6abe1c0.lean.js b/assets/guide_start.md.e6abe1c0.lean.js deleted file mode 100644 index 5019c57..0000000 --- a/assets/guide_start.md.e6abe1c0.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,o as a,c as t,Q as r}from"./chunks/framework.522debca.js";const u=JSON.parse('{"title":"快速上手","description":"","frontmatter":{},"headers":[],"relativePath":"guide/start.md","lastUpdated":1679905840000}'),n={name:"guide/start.md"},o=r("",9),s=[o];function h(d,i,l,p,c,_){return a(),t("div",null,s)}const f=e(n,[["render",h]]);export{u as __pageData,f as default}; diff --git a/assets/guide_vue2_alias.md.c70e0ef9.js b/assets/guide_vue2_alias.md.8e3eac08.js similarity index 83% rename from assets/guide_vue2_alias.md.c70e0ef9.js rename to assets/guide_vue2_alias.md.8e3eac08.js index ef1dbfd..f0619b0 100644 --- a/assets/guide_vue2_alias.md.c70e0ef9.js +++ b/assets/guide_vue2_alias.md.8e3eac08.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"配置 alias 别名","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/alias.md","lastUpdated":1679905840000}'),l={name:"guide/vue2/alias.md"},p=o(`

配置 alias 别名

javascript
const path = require("path");
+import{_ as s,o as a,c as n,R as o}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"配置 alias 别名","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/alias.md","filePath":"guide/vue2/alias.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/alias.md"},p=o(`

配置 alias 别名

javascript
const path = require("path");
 const resolve = (dir) => path.join(__dirname, dir);
 const IS_PROD = ["production", "prod"].includes(process.env.NODE_ENV);
 
@@ -12,5 +12,4 @@ import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.522debca.js";const i=
       .set("views", resolve("src/views"))
       .set("components", resolve("src/components"));
   },
-};
-
`,2),e=[p];function t(c,r,F,D,y,A){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{i as __pageData,u as default}; +};
`,2),e=[p];function t(c,r,F,D,y,A){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_alias.md.8e3eac08.lean.js b/assets/guide_vue2_alias.md.8e3eac08.lean.js new file mode 100644 index 0000000..bb61049 --- /dev/null +++ b/assets/guide_vue2_alias.md.8e3eac08.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as o}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"配置 alias 别名","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/alias.md","filePath":"guide/vue2/alias.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/alias.md"},p=o("",2),e=[p];function t(c,r,F,D,y,A){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_alias.md.c70e0ef9.lean.js b/assets/guide_vue2_alias.md.c70e0ef9.lean.js deleted file mode 100644 index d841487..0000000 --- a/assets/guide_vue2_alias.md.c70e0ef9.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"配置 alias 别名","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/alias.md","lastUpdated":1679905840000}'),l={name:"guide/vue2/alias.md"},p=o("",2),e=[p];function t(c,r,F,D,y,A){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_axios.md.04119e90.lean.js b/assets/guide_vue2_axios.md.04119e90.lean.js deleted file mode 100644 index 00c2859..0000000 --- a/assets/guide_vue2_axios.md.04119e90.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const C=JSON.parse('{"title":"Axios 封装及接口管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/axios.md","lastUpdated":1679905840000}'),o={name:"guide/vue2/axios.md"},p=l("",10),e=[p];function t(c,r,F,y,D,i){return n(),a("div",null,e)}const u=s(o,[["render",t]]);export{C as __pageData,u as default}; diff --git a/assets/guide_vue2_axios.md.04119e90.js b/assets/guide_vue2_axios.md.3e1f1726.js similarity index 85% rename from assets/guide_vue2_axios.md.04119e90.js rename to assets/guide_vue2_axios.md.3e1f1726.js index 40876ba..b13f148 100644 --- a/assets/guide_vue2_axios.md.04119e90.js +++ b/assets/guide_vue2_axios.md.3e1f1726.js @@ -1,4 +1,4 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const C=JSON.parse('{"title":"Axios 封装及接口管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/axios.md","lastUpdated":1679905840000}'),o={name:"guide/vue2/axios.md"},p=l(`

Axios 封装及接口管理

utils/request.js 封装 axios ,开发者需要根据后台接口做修改。

  • service.interceptors.request.use 里可以设置请求头,比如设置 token
  • config.hideloading 是在 api 文件夹下的接口参数里设置,下文会讲
  • service.interceptors.response.use 里可以对接口返回数据处理,比如 401 删除本地信息,重新登录
javascript
import axios from "axios";
+import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const C=JSON.parse('{"title":"Axios 封装及接口管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/axios.md","filePath":"guide/vue2/axios.md","lastUpdated":1685617392000}'),o={name:"guide/vue2/axios.md"},p=l(`

Axios 封装及接口管理

utils/request.js 封装 axios ,开发者需要根据后台接口做修改。

  • service.interceptors.request.use 里可以设置请求头,比如设置 token
  • config.hideloading 是在 api 文件夹下的接口参数里设置,下文会讲
  • service.interceptors.response.use 里可以对接口返回数据处理,比如 401 删除本地信息,重新登录
javascript
import axios from "axios";
 import store from "@/store";
 import { Toast } from "vant";
 // 根据环境不同引入不同api地址
@@ -54,8 +54,7 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const C=
     return Promise.reject(error);
   }
 );
-export default service;
-

接口管理

src/api 文件夹下统一管理接口

  • 你可以建立多个模块对接接口, 比如 home.js 里是首页的接口这里讲解 user.js
  • url 接口地址,请求的时候会拼接上 config 下的 baseApi
  • method 请求方法
  • data 请求参数 qs.stringify(params) 是对数据系列化操作
  • hideloading 默认 false,设置为 true 后,不显示 loading ui 交互中有些接口不需要让用户感知
javascript
import qs from "qs";
+export default service;

接口管理

src/api 文件夹下统一管理接口

  • 你可以建立多个模块对接接口, 比如 home.js 里是首页的接口这里讲解 user.js
  • url 接口地址,请求的时候会拼接上 config 下的 baseApi
  • method 请求方法
  • data 请求参数 qs.stringify(params) 是对数据系列化操作
  • hideloading 默认 false,设置为 true 后,不显示 loading ui 交互中有些接口不需要让用户感知
javascript
import qs from "qs";
 // axios
 import request from "@/utils/request";
 //user api
@@ -68,12 +67,10 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const C=
     data: qs.stringify(params),
     hideloading: true, // 隐藏 loading 组件
   });
-}
-

如何调用

javascript
// 请求接口
+}

如何调用

javascript
// 请求接口
 import { getUserInfo } from "@/api/user.js";
 
 const params = { user: "sunnie" };
 getUserInfo(params)
   .then(() => {})
-  .catch(() => {});
-
`,10),e=[p];function t(c,r,F,y,D,i){return n(),a("div",null,e)}const u=s(o,[["render",t]]);export{C as __pageData,u as default}; + .catch(() => {});
`,10),e=[p];function t(c,r,F,y,D,i){return n(),a("div",null,e)}const u=s(o,[["render",t]]);export{C as __pageData,u as default}; diff --git a/assets/guide_vue2_axios.md.3e1f1726.lean.js b/assets/guide_vue2_axios.md.3e1f1726.lean.js new file mode 100644 index 0000000..40d1afa --- /dev/null +++ b/assets/guide_vue2_axios.md.3e1f1726.lean.js @@ -0,0 +1 @@ +import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const C=JSON.parse('{"title":"Axios 封装及接口管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/axios.md","filePath":"guide/vue2/axios.md","lastUpdated":1685617392000}'),o={name:"guide/vue2/axios.md"},p=l("",10),e=[p];function t(c,r,F,y,D,i){return n(),a("div",null,e)}const u=s(o,[["render",t]]);export{C as __pageData,u as default}; diff --git a/assets/guide_vue2_base.md.4d4b64f8.js b/assets/guide_vue2_base.md.464b144c.js similarity index 81% rename from assets/guide_vue2_base.md.4d4b64f8.js rename to assets/guide_vue2_base.md.464b144c.js index fc4ef48..0cd0d5e 100644 --- a/assets/guide_vue2_base.md.4d4b64f8.js +++ b/assets/guide_vue2_base.md.464b144c.js @@ -1,6 +1,4 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"Webpack 4 vue.config.js 基础配置","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/base.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/base.md"},o=l(`

Webpack 4 vue.config.js 基础配置

如果你的 Vue Router 模式是 hash

javascript
publicPath: './',
-

如果你的 Vue Router 模式是 history 这里的 publicPath 和你的 Vue Router base 保持一致

javascript
publicPath: '/app/',
-

配置如下

javascript
import { createVitePlugins } from "./config/vite/plugins";
+import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"Webpack 4 vue.config.js 基础配置","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/base.md","filePath":"guide/vue2/base.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/base.md"},o=l(`

Webpack 4 vue.config.js 基础配置

如果你的 Vue Router 模式是 hash

javascript
publicPath: './',

如果你的 Vue Router 模式是 history 这里的 publicPath 和你的 Vue Router base 保持一致

javascript
publicPath: '/app/',

配置如下

javascript
import { createVitePlugins } from "./config/vite/plugins";
 import { resolve } from "path";
 import { ConfigEnv, UserConfigExport } from "vite";
 
@@ -46,5 +44,4 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const A=
       },
     },
   };
-}
-
`,7),e=[o];function t(c,r,F,D,y,i){return n(),a("div",null,e)}const u=s(p,[["render",t]]);export{A as __pageData,u as default}; +}
`,7),e=[o];function t(c,r,F,D,y,i){return n(),a("div",null,e)}const u=s(p,[["render",t]]);export{A as __pageData,u as default}; diff --git a/assets/guide_vue2_base.md.464b144c.lean.js b/assets/guide_vue2_base.md.464b144c.lean.js new file mode 100644 index 0000000..dd4e2ae --- /dev/null +++ b/assets/guide_vue2_base.md.464b144c.lean.js @@ -0,0 +1 @@ +import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"Webpack 4 vue.config.js 基础配置","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/base.md","filePath":"guide/vue2/base.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/base.md"},o=l("",7),e=[o];function t(c,r,F,D,y,i){return n(),a("div",null,e)}const u=s(p,[["render",t]]);export{A as __pageData,u as default}; diff --git a/assets/guide_vue2_base.md.4d4b64f8.lean.js b/assets/guide_vue2_base.md.4d4b64f8.lean.js deleted file mode 100644 index 48e6ead..0000000 --- a/assets/guide_vue2_base.md.4d4b64f8.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"Webpack 4 vue.config.js 基础配置","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/base.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/base.md"},o=l("",7),e=[o];function t(c,r,F,D,y,i){return n(),a("div",null,e)}const u=s(p,[["render",t]]);export{A as __pageData,u as default}; diff --git a/assets/guide_vue2_bundle.md.df9a7fcb.js b/assets/guide_vue2_bundle.md.d9d24eef.js similarity index 70% rename from assets/guide_vue2_bundle.md.df9a7fcb.js rename to assets/guide_vue2_bundle.md.d9d24eef.js index f4e63f2..868c048 100644 --- a/assets/guide_vue2_bundle.md.df9a7fcb.js +++ b/assets/guide_vue2_bundle.md.d9d24eef.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const C=JSON.parse('{"title":"配置打包分析","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/bundle.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/bundle.md"},o=l(`

配置打包分析

javascript
const BundleAnalyzerPlugin =
+import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const C=JSON.parse('{"title":"配置打包分析","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/bundle.md","filePath":"guide/vue2/bundle.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/bundle.md"},o=l(`

配置打包分析

javascript
const BundleAnalyzerPlugin =
   require("webpack-bundle-analyzer").BundleAnalyzerPlugin;
 
 module.exports = {
@@ -12,6 +12,4 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const C=
       ]);
     }
   },
-};
-
bash
npm run build
-
`,3),e=[o];function t(c,r,y,D,F,i){return a(),n("div",null,e)}const d=s(p,[["render",t]]);export{C as __pageData,d as default}; +};
bash
npm run build
`,3),e=[o];function t(c,r,y,D,F,i){return a(),n("div",null,e)}const d=s(p,[["render",t]]);export{C as __pageData,d as default}; diff --git a/assets/guide_vue2_bundle.md.d9d24eef.lean.js b/assets/guide_vue2_bundle.md.d9d24eef.lean.js new file mode 100644 index 0000000..0ece4ba --- /dev/null +++ b/assets/guide_vue2_bundle.md.d9d24eef.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const C=JSON.parse('{"title":"配置打包分析","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/bundle.md","filePath":"guide/vue2/bundle.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/bundle.md"},o=l("",3),e=[o];function t(c,r,y,D,F,i){return a(),n("div",null,e)}const d=s(p,[["render",t]]);export{C as __pageData,d as default}; diff --git a/assets/guide_vue2_bundle.md.df9a7fcb.lean.js b/assets/guide_vue2_bundle.md.df9a7fcb.lean.js deleted file mode 100644 index a72cc1e..0000000 --- a/assets/guide_vue2_bundle.md.df9a7fcb.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const C=JSON.parse('{"title":"配置打包分析","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/bundle.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/bundle.md"},o=l("",3),e=[o];function t(c,r,y,D,F,i){return a(),n("div",null,e)}const d=s(p,[["render",t]]);export{C as __pageData,d as default}; diff --git a/assets/guide_vue2_chunks.md.1003bcce.js b/assets/guide_vue2_chunks.md.0a3d1312.js similarity index 91% rename from assets/guide_vue2_chunks.md.1003bcce.js rename to assets/guide_vue2_chunks.md.0a3d1312.js index fc4ebc7..19e4b14 100644 --- a/assets/guide_vue2_chunks.md.1003bcce.js +++ b/assets/guide_vue2_chunks.md.0a3d1312.js @@ -1,4 +1,4 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const u=JSON.parse('{"title":"splitChunks 单独打包第三方模块","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/chunks.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/chunks.md"},o=l(`

splitChunks 单独打包第三方模块

javascript
module.exports = {
+import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const u=JSON.parse('{"title":"splitChunks 单独打包第三方模块","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/chunks.md","filePath":"guide/vue2/chunks.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/chunks.md"},o=l(`

splitChunks 单独打包第三方模块

javascript
module.exports = {
   chainWebpack: (config) => {
     config.when(IS_PROD, (config) => {
       config
@@ -38,5 +38,4 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const u=
       config.optimization.runtimeChunk("single");
     });
   },
-};
-
`,2),t=[o];function e(c,F,r,y,D,i){return n(),a("div",null,t)}const A=s(p,[["render",e]]);export{u as __pageData,A as default}; +};
`,2),t=[o];function e(c,F,r,y,D,i){return n(),a("div",null,t)}const A=s(p,[["render",e]]);export{u as __pageData,A as default}; diff --git a/assets/guide_vue2_chunks.md.0a3d1312.lean.js b/assets/guide_vue2_chunks.md.0a3d1312.lean.js new file mode 100644 index 0000000..9618e90 --- /dev/null +++ b/assets/guide_vue2_chunks.md.0a3d1312.lean.js @@ -0,0 +1 @@ +import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const u=JSON.parse('{"title":"splitChunks 单独打包第三方模块","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/chunks.md","filePath":"guide/vue2/chunks.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/chunks.md"},o=l("",2),t=[o];function e(c,F,r,y,D,i){return n(),a("div",null,t)}const A=s(p,[["render",e]]);export{u as __pageData,A as default}; diff --git a/assets/guide_vue2_chunks.md.1003bcce.lean.js b/assets/guide_vue2_chunks.md.1003bcce.lean.js deleted file mode 100644 index 82fe694..0000000 --- a/assets/guide_vue2_chunks.md.1003bcce.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const u=JSON.parse('{"title":"splitChunks 单独打包第三方模块","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/chunks.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/chunks.md"},o=l("",2),t=[o];function e(c,F,r,y,D,i){return n(),a("div",null,t)}const A=s(p,[["render",e]]);export{u as __pageData,A as default}; diff --git a/assets/guide_vue2_console.md.b11c98af.lean.js b/assets/guide_vue2_console.md.b11c98af.lean.js deleted file mode 100644 index b6abcac..0000000 --- a/assets/guide_vue2_console.md.b11c98af.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"去掉 console.log","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/console.md","lastUpdated":1679905840000}'),o={name:"guide/vue2/console.md"},p=l("",5),e=[p];function t(c,r,D,y,F,C){return n(),a("div",null,e)}const u=s(o,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_console.md.b11c98af.js b/assets/guide_vue2_console.md.d624aac3.js similarity index 77% rename from assets/guide_vue2_console.md.b11c98af.js rename to assets/guide_vue2_console.md.d624aac3.js index 0a8b401..f04c412 100644 --- a/assets/guide_vue2_console.md.b11c98af.js +++ b/assets/guide_vue2_console.md.d624aac3.js @@ -1,5 +1,4 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"去掉 console.log","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/console.md","lastUpdated":1679905840000}'),o={name:"guide/vue2/console.md"},p=l(`

去掉 console.log

保留了测试环境和本地环境的 console.log

bash
npm i -D babel-plugin-transform-remove-console
-

在 babel.config.js 中配置

javascript
// 获取 VUE_APP_ENV 非 NODE_ENV,测试环境依然 console
+import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"去掉 console.log","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/console.md","filePath":"guide/vue2/console.md","lastUpdated":1685617392000}'),o={name:"guide/vue2/console.md"},p=l(`

去掉 console.log

保留了测试环境和本地环境的 console.log

bash
npm i -D babel-plugin-transform-remove-console

在 babel.config.js 中配置

javascript
// 获取 VUE_APP_ENV 非 NODE_ENV,测试环境依然 console
 const IS_PROD = ["production", "prod"].includes(process.env.VUE_APP_ENV);
 const plugins = [
   [
@@ -20,5 +19,4 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const i=
 module.exports = {
   presets: [["@vue/cli-plugin-babel/preset", { useBuiltIns: "entry" }]],
   plugins,
-};
-
`,5),e=[p];function t(c,r,D,y,F,C){return n(),a("div",null,e)}const u=s(o,[["render",t]]);export{i as __pageData,u as default}; +};
`,5),e=[p];function t(c,r,D,y,F,C){return n(),a("div",null,e)}const u=s(o,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_console.md.d624aac3.lean.js b/assets/guide_vue2_console.md.d624aac3.lean.js new file mode 100644 index 0000000..4c47fdf --- /dev/null +++ b/assets/guide_vue2_console.md.d624aac3.lean.js @@ -0,0 +1 @@ +import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"去掉 console.log","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/console.md","filePath":"guide/vue2/console.md","lastUpdated":1685617392000}'),o={name:"guide/vue2/console.md"},p=l("",5),e=[p];function t(c,r,D,y,F,C){return n(),a("div",null,e)}const u=s(o,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_env.md.22af29a2.lean.js b/assets/guide_vue2_env.md.22af29a2.lean.js deleted file mode 100644 index 29b23ba..0000000 --- a/assets/guide_vue2_env.md.22af29a2.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"配置多环境变量","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/env.md","lastUpdated":1679905840000}'),o={name:"guide/vue2/env.md"},p=l("",21),e=[p];function t(c,r,D,y,i,F){return a(),n("div",null,e)}const A=s(o,[["render",t]]);export{d as __pageData,A as default}; diff --git a/assets/guide_vue2_env.md.22af29a2.js b/assets/guide_vue2_env.md.6e6e570e.js similarity index 53% rename from assets/guide_vue2_env.md.22af29a2.js rename to assets/guide_vue2_env.md.6e6e570e.js index 941340b..dda98db 100644 --- a/assets/guide_vue2_env.md.22af29a2.js +++ b/assets/guide_vue2_env.md.6e6e570e.js @@ -1,30 +1,22 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"配置多环境变量","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/env.md","lastUpdated":1679905840000}'),o={name:"guide/vue2/env.md"},p=l(`

配置多环境变量

package.json 里的 scripts 配置 serve stage build,通过 --mode xxx 来执行不同环境

  • 通过 npm run serve 启动本地 , 执行 development
  • 通过 npm run stage 打包测试 , 执行 staging
  • 通过 npm run build 打包正式 , 执行 production
javascript
"scripts": {
+import{_ as s,o as a,c as n,R as o}from"./chunks/framework.6241eaf2.js";const C=JSON.parse('{"title":"配置多环境变量","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/env.md","filePath":"guide/vue2/env.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/env.md"},p=o(`

配置多环境变量

package.json 里的 scripts 配置 serve stage build,通过 --mode xxx 来执行不同环境

  • 通过 npm run serve 启动本地 , 执行 development
  • 通过 npm run stage 打包测试 , 执行 staging
  • 通过 npm run build 打包正式 , 执行 production
javascript
"scripts": {
   "serve": "vue-cli-service serve --open",
   "stage": "vue-cli-service build --mode staging",
   "build": "vue-cli-service build",
-}
-
配置介绍

  以 VUE_APP_ 开头的变量,在代码中可以通过 process.env.VUE_APP_ 访问。
  比如,VUE_APP_ENV = 'development' 通过process.env.VUE_APP_ENV 访问。
  除了 VUE_APP_* 变量之外,在你的应用代码中始终可用的还有两个特殊的变量NODE_ENVBASE_URL

在项目根目录中新建.env.*

  • .env.development 本地开发环境配置
bash
NODE_ENV='development'
+}
配置介绍

  以 VUE_APP_ 开头的变量,在代码中可以通过 process.env.VUE_APP_ 访问。
  比如,VUE_APP_ENV = 'development' 通过process.env.VUE_APP_ENV 访问。
  除了 VUE_APP_* 变量之外,在你的应用代码中始终可用的还有两个特殊的变量NODE_ENVBASE_URL

在项目根目录中新建.env.*

  • .env.development 本地开发环境配置
bash
NODE_ENV='development'
 # must start with VUE_APP_
-VUE_APP_ENV = 'development'
-
-
  • .env.staging 测试环境配置
bash
NODE_ENV='production'
+VUE_APP_ENV = 'development'
  • .env.staging 测试环境配置
bash
NODE_ENV='production'
 # must start with VUE_APP_
-VUE_APP_ENV = 'staging'
-
  • .env.production 正式环境配置
bash
 NODE_ENV='production'
+VUE_APP_ENV = 'staging'
  • .env.production 正式环境配置
bash
NODE_ENV='production'
 # must start with VUE_APP_
-VUE_APP_ENV = 'production'
-

这里我们并没有定义很多变量,只定义了基础的 VUE_APP_ENV development staging production
变量我们统一在 src/config/env.*.js 里进行管理。

这里有个问题,既然这里有了根据不同环境设置变量的文件,为什么还要去 config 下新建三个对应的文件呢?
修改起来方便,不需 要重启项目,符合开发习惯。

config/index.js

javascript
// 根据环境引入不同配置 process.env.NODE_ENV
+VUE_APP_ENV = 'production'

这里我们并没有定义很多变量,只定义了基础的 VUE_APP_ENV development staging production
变量我们统一在 src/config/env.*.js 里进行管理。

这里有个问题,既然这里有了根据不同环境设置变量的文件,为什么还要去 config 下新建三个对应的文件呢?
修改起来方便,不需 要重启项目,符合开发习惯。

config/index.js

javascript
// 根据环境引入不同配置 process.env.NODE_ENV
 const config = require("./env." + process.env.VUE_APP_ENV);
-module.exports = config;
-

配置对应环境的变量,拿本地环境文件 env.development.js 举例,用户可以根据需求修改

javascript
// 本地环境配置
+module.exports = config;

配置对应环境的变量,拿本地环境文件 env.development.js 举例,用户可以根据需求修改

javascript
// 本地环境配置
 module.exports = {
   title: "vue-h5-template",
   baseUrl: "http://localhost:9018", // 项目地址
   baseApi: "https://test.xxx.com/api", // 本地api请求地址
   APPID: "xxx",
   APPSECRET: "xxx",
-};
-

根据环境不同,变量就会不同了

javascript
// 根据环境不同引入不同baseApi地址
+};

根据环境不同,变量就会不同了

javascript
// 根据环境不同引入不同baseApi地址
 import { baseApi } from "@/config";
-console.log(baseApi);
-
`,21),e=[p];function t(c,r,D,y,i,F){return a(),n("div",null,e)}const A=s(o,[["render",t]]);export{d as __pageData,A as default}; +console.log(baseApi);
`,21),e=[p];function t(c,r,D,y,i,F){return a(),n("div",null,e)}const A=s(l,[["render",t]]);export{C as __pageData,A as default}; diff --git a/assets/guide_vue2_env.md.6e6e570e.lean.js b/assets/guide_vue2_env.md.6e6e570e.lean.js new file mode 100644 index 0000000..76ccbbb --- /dev/null +++ b/assets/guide_vue2_env.md.6e6e570e.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as o}from"./chunks/framework.6241eaf2.js";const C=JSON.parse('{"title":"配置多环境变量","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/env.md","filePath":"guide/vue2/env.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/env.md"},p=o("",21),e=[p];function t(c,r,D,y,i,F){return a(),n("div",null,e)}const A=s(l,[["render",t]]);export{C as __pageData,A as default}; diff --git a/assets/guide_vue2_externals.md.8f341913.js b/assets/guide_vue2_externals.md.81bec8dc.js similarity index 88% rename from assets/guide_vue2_externals.md.8f341913.js rename to assets/guide_vue2_externals.md.81bec8dc.js index fe4dc1f..1b2cbb9 100644 --- a/assets/guide_vue2_externals.md.8f341913.js +++ b/assets/guide_vue2_externals.md.81bec8dc.js @@ -1,4 +1,4 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"配置 externals 引入 cdn 资源","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/externals.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/externals.md"},o=l(`

配置 externals 引入 cdn 资源

这个版本 CDN 不再引入,我测试了一下使用引入 CDN 和不使用,不使用会比使用时间少。网上不少文章测试 CDN 速度块,这个开发者可 以实际测试一下。

另外项目中使用的是公共 CDN 不稳定,域名解析也是需要时间的(如果你要使用请尽量使用同一个域名)

因为页面每次遇到<script>标签都会停下来解析执行,所以应该尽可能减少<script>标签的数量 HTTP请求存在一定的开销,100K 的文件比 5 个 20K 的文件下载的更快,所以较少脚本数量也是很有必要的

暂时还没有研究放到自己的 cdn 服务器上。

javascript
const defaultSettings = require("./src/config/index.js");
+import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"配置 externals 引入 cdn 资源","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/externals.md","filePath":"guide/vue2/externals.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/externals.md"},o=l(`

配置 externals 引入 cdn 资源

这个版本 CDN 不再引入,我测试了一下使用引入 CDN 和不使用,不使用会比使用时间少。网上不少文章测试 CDN 速度块,这个开发者可 以实际测试一下。

另外项目中使用的是公共 CDN 不稳定,域名解析也是需要时间的(如果你要使用请尽量使用同一个域名)

因为页面每次遇到<script>标签都会停下来解析执行,所以应该尽可能减少<script>标签的数量 HTTP请求存在一定的开销,100K 的文件比 5 个 20K 的文件下载的更快,所以较少脚本数量也是很有必要的

暂时还没有研究放到自己的 cdn 服务器上。

javascript
const defaultSettings = require("./src/config/index.js");
 const name = defaultSettings.title || "vue mobile template";
 const IS_PROD = ["production", "prod"].includes(process.env.NODE_ENV);
 
@@ -51,8 +51,7 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const i=
       return args;
     });
   },
-};
-

在 public/index.html 中添加

javascript
    <!-- 使用CDN的CSS文件 -->
+};

在 public/index.html 中添加

javascript
<!-- 使用CDN的CSS文件 -->
     <% for (var i in
       htmlWebpackPlugin.options.cdn&&htmlWebpackPlugin.options.cdn.css) { %>
       <link href="<%= htmlWebpackPlugin.options.cdn.css[i] %>" rel="preload" as="style" />
@@ -62,5 +61,4 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const i=
     <% for (var i in
       htmlWebpackPlugin.options.cdn&&htmlWebpackPlugin.options.cdn.js) { %>
       <script src="<%= htmlWebpackPlugin.options.cdn.js[i] %>"></script>
-    <% } %>
-
`,8),t=[o];function e(c,D,r,F,y,C){return n(),a("div",null,t)}const u=s(p,[["render",e]]);export{i as __pageData,u as default}; + <% } %>
`,8),t=[o];function e(c,D,r,F,y,C){return n(),a("div",null,t)}const u=s(p,[["render",e]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_externals.md.81bec8dc.lean.js b/assets/guide_vue2_externals.md.81bec8dc.lean.js new file mode 100644 index 0000000..3835456 --- /dev/null +++ b/assets/guide_vue2_externals.md.81bec8dc.lean.js @@ -0,0 +1 @@ +import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"配置 externals 引入 cdn 资源","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/externals.md","filePath":"guide/vue2/externals.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/externals.md"},o=l("",8),t=[o];function e(c,D,r,F,y,C){return n(),a("div",null,t)}const u=s(p,[["render",e]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_externals.md.8f341913.lean.js b/assets/guide_vue2_externals.md.8f341913.lean.js deleted file mode 100644 index 3cb5659..0000000 --- a/assets/guide_vue2_externals.md.8f341913.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"配置 externals 引入 cdn 资源","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/externals.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/externals.md"},o=l("",8),t=[o];function e(c,D,r,F,y,C){return n(),a("div",null,t)}const u=s(p,[["render",e]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_ie.md.8d30e4b5.lean.js b/assets/guide_vue2_ie.md.8d30e4b5.lean.js deleted file mode 100644 index 9b387b2..0000000 --- a/assets/guide_vue2_ie.md.8d30e4b5.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"添加 IE 兼容","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/ie.md","lastUpdated":1679905840000}'),e={name:"guide/vue2/ie.md"},o=l("",8),p=[o];function t(c,r,i,D,y,C){return a(),n("div",null,p)}const A=s(e,[["render",t]]);export{d as __pageData,A as default}; diff --git a/assets/guide_vue2_ie.md.8d30e4b5.js b/assets/guide_vue2_ie.md.bf16d405.js similarity index 52% rename from assets/guide_vue2_ie.md.8d30e4b5.js rename to assets/guide_vue2_ie.md.bf16d405.js index 646ab3c..a6e2e68 100644 --- a/assets/guide_vue2_ie.md.8d30e4b5.js +++ b/assets/guide_vue2_ie.md.bf16d405.js @@ -1,14 +1,11 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"添加 IE 兼容","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/ie.md","lastUpdated":1679905840000}'),e={name:"guide/vue2/ie.md"},o=l(`

添加 IE 兼容

之前的方式 会报 @babel/polyfill is deprecated. Please, use required parts of core-js and regenerator-runtime/runtime separately

@babel/polyfill 废弃,使用 core-jsregenerator-runtime

bash
npm i --save core-js regenerator-runtime
-

main.js 中添加

javascript
// 兼容 IE
+import{_ as s,o as a,c as n,R as e}from"./chunks/framework.6241eaf2.js";const d=JSON.parse('{"title":"添加 IE 兼容","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/ie.md","filePath":"guide/vue2/ie.md","lastUpdated":1685617392000}'),o={name:"guide/vue2/ie.md"},l=e(`

添加 IE 兼容

之前的方式 会报 @babel/polyfill is deprecated. Please, use required parts of core-js and regenerator-runtime/runtime separately

@babel/polyfill 废弃,使用 core-jsregenerator-runtime

bash
npm i --save core-js regenerator-runtime

main.js 中添加

javascript
// 兼容 IE
 // https://github.com/zloirock/core-js/blob/master/docs/2019-03-19-core-js-3-babel-and-a-look-into-the-future.md#babelpolyfill
 import "core-js/stable";
-import "regenerator-runtime/runtime";
-

配置 babel.config.js

javascript
const plugins = [];
+import "regenerator-runtime/runtime";

配置 babel.config.js

javascript
const plugins = [];
 
 module.exports = {
   presets: [
     ["@vue/cli-plugin-babel/preset", { useBuiltIns: "usage", corejs: 3 }],
   ],
   plugins,
-};
-
`,8),p=[o];function t(c,r,i,D,y,C){return a(),n("div",null,p)}const A=s(e,[["render",t]]);export{d as __pageData,A as default}; +};
`,8),p=[l];function t(c,r,i,D,y,C){return a(),n("div",null,p)}const u=s(o,[["render",t]]);export{d as __pageData,u as default}; diff --git a/assets/guide_vue2_ie.md.bf16d405.lean.js b/assets/guide_vue2_ie.md.bf16d405.lean.js new file mode 100644 index 0000000..701cfad --- /dev/null +++ b/assets/guide_vue2_ie.md.bf16d405.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as e}from"./chunks/framework.6241eaf2.js";const d=JSON.parse('{"title":"添加 IE 兼容","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/ie.md","filePath":"guide/vue2/ie.md","lastUpdated":1685617392000}'),o={name:"guide/vue2/ie.md"},l=e("",8),p=[l];function t(c,r,i,D,y,C){return a(),n("div",null,p)}const u=s(o,[["render",t]]);export{d as __pageData,u as default}; diff --git a/assets/guide_vue2_lint.md.9f9c0612.js b/assets/guide_vue2_lint.md.9f9c0612.js deleted file mode 100644 index ab1bd41..0000000 --- a/assets/guide_vue2_lint.md.9f9c0612.js +++ /dev/null @@ -1,152 +0,0 @@ -import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.522debca.js";const u=JSON.parse('{"title":"Eslint + Pettier 统一开发规范","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/lint.md","lastUpdated":1679905840000}'),l={name:"guide/vue2/lint.md"},p=o(`

Eslint + Pettier 统一开发规范

VScode (版本 1.47.3)安装 eslint prettier vetur 插件 .vue 文件使用 vetur 进行格式化,其他使用prettier,后面会 专门写个如何使用配合使用这三个玩意

在文件 .prettierrc 里写 属于你的 pettier 规则

bash
{
-   "printWidth": 120,
-   "tabWidth": 2,
-   "singleQuote": true,
-   "trailingComma": "none",
-   "semi": false,
-   "wrap_line_length": 120,
-   "wrap_attributes": "auto",
-   "proseWrap": "always",
-   "arrowParens": "avoid",
-   "bracketSpacing": false,
-   "jsxBracketSameLine": true,
-   "useTabs": false,
-   "overrides": [{
-       "files": ".prettierrc",
-       "options": {
-           "parser": "json"
-       }
-   }]
-}
-

Vscode setting.json 设置

bash
    {
-  // 将设置放入此文件中以覆盖默认设置
-  "files.autoSave": "off",
-  // 控制字体系列。
-  "editor.fontFamily": "Consolas, 'Courier New', monospace,'宋体'",
-  "terminal.integrated.shell.windows": "C:\\\\Program Files\\\\Git\\\\bin\\\\bash.exe",
-  // 以像素为单位控制字号。
-  "editor.fontSize": 16,
-  // 控制选取范围是否有圆角
-  "editor.roundedSelection": false,
-  // 建议小组件的字号
-  "editor.suggestFontSize": 16,
-  // 在“打开的编辑器”窗格中显示的编辑器数量。将其设置为 0 可隐藏窗格。
-  "explorer.openEditors.visible": 0,
-  // 是否已启用自动刷新
-  "git.autorefresh": true,
-  // 以像素为单位控制终端的字号,这是 editor.fontSize 的默认值。
-  "terminal.integrated.fontSize": 14,
-  // 控制终端游标是否闪烁。
-  "terminal.integrated.cursorBlinking": true,
-  // 一个制表符等于的空格数。该设置在 \`editor.detectIndentation\` 启用时根据文件内容进行重写。
-  // Tab Size
-  "editor.tabSize": 2,
-  // By default, common template. Do not modify it!!!!!
-  "editor.formatOnType": true,
-  "window.zoomLevel": 0,
-  "editor.detectIndentation": false,
-  "css.fileExtensions": ["css", "scss"],
-  "files.associations": {
-    "*.string": "html",
-    "*.vue": "vue",
-    "*.wxss": "css",
-    "*.wxml": "wxml",
-    "*.wxs": "javascript",
-    "*.cjson": "jsonc",
-    "*.js": "javascript"
-  },
-  // 为指定的语法定义配置文件或使用带有特定规则的配置文件。
-  "emmet.syntaxProfiles": {
-    "vue-html": "html",
-    "vue": "html"
-  },
-  "search.exclude": {
-    "**/node_modules": true,
-    "**/bower_components": true
-  },
-  //保存时eslint自动修复错误
-  "editor.formatOnSave": true,
-  // Enable per-language
-  //配置 ESLint 检查的文件类型
-  "editor.quickSuggestions": {
-    "strings": true
-  },
-  // 添加 vue 支持
-  // 这里是针对vue文件的格式化设置,vue的规则在这里生效
-  "vetur.format.options.tabSize": 2,
-  "vetur.format.options.useTabs": false,
-  "vetur.format.defaultFormatter.html": "js-beautify-html",
-  "vetur.format.defaultFormatter.css": "prettier",
-  "vetur.format.defaultFormatter.scss": "prettier",
-  "vetur.format.defaultFormatter.postcss": "prettier",
-  "vetur.format.defaultFormatter.less": "prettier",
-  "vetur.format.defaultFormatter.js": "vscode-typescript",
-  "vetur.format.defaultFormatter.sass": "sass-formatter",
-  "vetur.format.defaultFormatter.ts": "prettier",
-  "vetur.format.defaultFormatterOptions": {
-    "js-beautify-html": {
-      "wrap_attributes": "aligned-multiple", // 超过150折行
-      "wrap-line-length": 150
-    },
-    // #vue组件中html代码格式化样式
-    "prettier": {
-      "printWidth": 120,
-      "tabWidth": 2,
-      "singleQuote": false,
-      "trailingComma": "none",
-      "semi": false,
-      "wrap_line_length": 120,
-      "wrap_attributes": "aligned-multiple", // 超过150折行
-      "proseWrap": "always",
-      "arrowParens": "avoid",
-      "bracketSpacing": true,
-      "jsxBracketSameLine": true,
-      "useTabs": false,
-      "overrides": [
-        {
-          "files": ".prettierrc",
-          "options": {
-            "parser": "json"
-          }
-        }
-      ]
-    }
-  },
-  // Enable per-language
-  "[json]": {
-    "editor.defaultFormatter": "esbenp.prettier-vscode"
-  },
-  "vetur.validation.template": false,
-  "html.format.enable": false,
-  "json.format.enable": false,
-  "javascript.format.enable": false,
-  "typescript.format.enable": false,
-  "javascript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": false,
-  "[html]": {
-    "editor.defaultFormatter": "esbenp.prettier-vscode"
-  },
-  "[javascript]": {
-    "editor.defaultFormatter": "esbenp.prettier-vscode"
-  },
-  "[jsonc]": {
-    "editor.defaultFormatter": "esbenp.prettier-vscode"
-  },
-  "[vue]": {
-    "editor.defaultFormatter": "octref.vetur"
-  },
-  "emmet.includeLanguages": {
-    "wxml": "html"
-  },
-  "[typescriptreact]": {
-    "editor.defaultFormatter": "esbenp.prettier-vscode"
-  },
-  // 开启eslint自动修复js/ts功能
-  "editor.codeActionsOnSave": {
-    "source.fixAll.eslint": true
-  },
-  "minapp-vscode.disableAutoConfig": true,
-  "javascript.implicitProjectConfig.experimentalDecorators": true,
-  "editor.maxTokenizationLineLength": 200000
-}
-
-
`,6),t=[p];function e(D,c,r,y,F,C){return n(),a("div",null,t)}const i=s(l,[["render",e]]);export{u as __pageData,i as default}; diff --git a/assets/guide_vue2_lint.md.9f9c0612.lean.js b/assets/guide_vue2_lint.md.9f9c0612.lean.js deleted file mode 100644 index 8380547..0000000 --- a/assets/guide_vue2_lint.md.9f9c0612.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.522debca.js";const u=JSON.parse('{"title":"Eslint + Pettier 统一开发规范","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/lint.md","lastUpdated":1679905840000}'),l={name:"guide/vue2/lint.md"},p=o("",6),t=[p];function e(D,c,r,y,F,C){return n(),a("div",null,t)}const i=s(l,[["render",e]]);export{u as __pageData,i as default}; diff --git a/assets/guide_vue2_lint.md.bcdbf636.js b/assets/guide_vue2_lint.md.bcdbf636.js new file mode 100644 index 0000000..682762e --- /dev/null +++ b/assets/guide_vue2_lint.md.bcdbf636.js @@ -0,0 +1,149 @@ +import{_ as s,o as n,c as a,R as o}from"./chunks/framework.6241eaf2.js";const u=JSON.parse('{"title":"Eslint + Pettier 统一开发规范","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/lint.md","filePath":"guide/vue2/lint.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/lint.md"},p=o(`

Eslint + Pettier 统一开发规范

VScode (版本 1.47.3)安装 eslint prettier vetur 插件 .vue 文件使用 vetur 进行格式化,其他使用prettier,后面会 专门写个如何使用配合使用这三个玩意

在文件 .prettierrc 里写 属于你的 pettier 规则

bash
{
+   "printWidth": 120,
+   "tabWidth": 2,
+   "singleQuote": true,
+   "trailingComma": "none",
+   "semi": false,
+   "wrap_line_length": 120,
+   "wrap_attributes": "auto",
+   "proseWrap": "always",
+   "arrowParens": "avoid",
+   "bracketSpacing": false,
+   "jsxBracketSameLine": true,
+   "useTabs": false,
+   "overrides": [{
+       "files": ".prettierrc",
+       "options": {
+           "parser": "json"
+       }
+   }]
+}

Vscode setting.json 设置

bash
{
+  // 将设置放入此文件中以覆盖默认设置
+  "files.autoSave": "off",
+  // 控制字体系列。
+  "editor.fontFamily": "Consolas, 'Courier New', monospace,'宋体'",
+  "terminal.integrated.shell.windows": "C:\\\\Program Files\\\\Git\\\\bin\\\\bash.exe",
+  // 以像素为单位控制字号。
+  "editor.fontSize": 16,
+  // 控制选取范围是否有圆角
+  "editor.roundedSelection": false,
+  // 建议小组件的字号
+  "editor.suggestFontSize": 16,
+  // 在“打开的编辑器”窗格中显示的编辑器数量。将其设置为 0 可隐藏窗格。
+  "explorer.openEditors.visible": 0,
+  // 是否已启用自动刷新
+  "git.autorefresh": true,
+  // 以像素为单位控制终端的字号,这是 editor.fontSize 的默认值。
+  "terminal.integrated.fontSize": 14,
+  // 控制终端游标是否闪烁。
+  "terminal.integrated.cursorBlinking": true,
+  // 一个制表符等于的空格数。该设置在 \`editor.detectIndentation\` 启用时根据文件内容进行重写。
+  // Tab Size
+  "editor.tabSize": 2,
+  // By default, common template. Do not modify it!!!!!
+  "editor.formatOnType": true,
+  "window.zoomLevel": 0,
+  "editor.detectIndentation": false,
+  "css.fileExtensions": ["css", "scss"],
+  "files.associations": {
+    "*.string": "html",
+    "*.vue": "vue",
+    "*.wxss": "css",
+    "*.wxml": "wxml",
+    "*.wxs": "javascript",
+    "*.cjson": "jsonc",
+    "*.js": "javascript"
+  },
+  // 为指定的语法定义配置文件或使用带有特定规则的配置文件。
+  "emmet.syntaxProfiles": {
+    "vue-html": "html",
+    "vue": "html"
+  },
+  "search.exclude": {
+    "**/node_modules": true,
+    "**/bower_components": true
+  },
+  //保存时eslint自动修复错误
+  "editor.formatOnSave": true,
+  // Enable per-language
+  //配置 ESLint 检查的文件类型
+  "editor.quickSuggestions": {
+    "strings": true
+  },
+  // 添加 vue 支持
+  // 这里是针对vue文件的格式化设置,vue的规则在这里生效
+  "vetur.format.options.tabSize": 2,
+  "vetur.format.options.useTabs": false,
+  "vetur.format.defaultFormatter.html": "js-beautify-html",
+  "vetur.format.defaultFormatter.css": "prettier",
+  "vetur.format.defaultFormatter.scss": "prettier",
+  "vetur.format.defaultFormatter.postcss": "prettier",
+  "vetur.format.defaultFormatter.less": "prettier",
+  "vetur.format.defaultFormatter.js": "vscode-typescript",
+  "vetur.format.defaultFormatter.sass": "sass-formatter",
+  "vetur.format.defaultFormatter.ts": "prettier",
+  "vetur.format.defaultFormatterOptions": {
+    "js-beautify-html": {
+      "wrap_attributes": "aligned-multiple", // 超过150折行
+      "wrap-line-length": 150
+    },
+    // #vue组件中html代码格式化样式
+    "prettier": {
+      "printWidth": 120,
+      "tabWidth": 2,
+      "singleQuote": false,
+      "trailingComma": "none",
+      "semi": false,
+      "wrap_line_length": 120,
+      "wrap_attributes": "aligned-multiple", // 超过150折行
+      "proseWrap": "always",
+      "arrowParens": "avoid",
+      "bracketSpacing": true,
+      "jsxBracketSameLine": true,
+      "useTabs": false,
+      "overrides": [
+        {
+          "files": ".prettierrc",
+          "options": {
+            "parser": "json"
+          }
+        }
+      ]
+    }
+  },
+  // Enable per-language
+  "[json]": {
+    "editor.defaultFormatter": "esbenp.prettier-vscode"
+  },
+  "vetur.validation.template": false,
+  "html.format.enable": false,
+  "json.format.enable": false,
+  "javascript.format.enable": false,
+  "typescript.format.enable": false,
+  "javascript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": false,
+  "[html]": {
+    "editor.defaultFormatter": "esbenp.prettier-vscode"
+  },
+  "[javascript]": {
+    "editor.defaultFormatter": "esbenp.prettier-vscode"
+  },
+  "[jsonc]": {
+    "editor.defaultFormatter": "esbenp.prettier-vscode"
+  },
+  "[vue]": {
+    "editor.defaultFormatter": "octref.vetur"
+  },
+  "emmet.includeLanguages": {
+    "wxml": "html"
+  },
+  "[typescriptreact]": {
+    "editor.defaultFormatter": "esbenp.prettier-vscode"
+  },
+  // 开启eslint自动修复js/ts功能
+  "editor.codeActionsOnSave": {
+    "source.fixAll.eslint": true
+  },
+  "minapp-vscode.disableAutoConfig": true,
+  "javascript.implicitProjectConfig.experimentalDecorators": true,
+  "editor.maxTokenizationLineLength": 200000
+}
`,6),t=[p];function e(c,r,C,y,A,F){return n(),a("div",null,t)}const i=s(l,[["render",e]]);export{u as __pageData,i as default}; diff --git a/assets/guide_vue2_lint.md.bcdbf636.lean.js b/assets/guide_vue2_lint.md.bcdbf636.lean.js new file mode 100644 index 0000000..7713910 --- /dev/null +++ b/assets/guide_vue2_lint.md.bcdbf636.lean.js @@ -0,0 +1 @@ +import{_ as s,o as n,c as a,R as o}from"./chunks/framework.6241eaf2.js";const u=JSON.parse('{"title":"Eslint + Pettier 统一开发规范","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/lint.md","filePath":"guide/vue2/lint.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/lint.md"},p=o("",6),t=[p];function e(c,r,C,y,A,F){return n(),a("div",null,t)}const i=s(l,[["render",e]]);export{u as __pageData,i as default}; diff --git a/assets/guide_vue2_proxy.md.2993ab5e.lean.js b/assets/guide_vue2_proxy.md.2993ab5e.lean.js deleted file mode 100644 index 0df2be9..0000000 --- a/assets/guide_vue2_proxy.md.2993ab5e.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as p}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"配置 proxy 跨域","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/proxy.md","lastUpdated":1679905840000}'),l={name:"guide/vue2/proxy.md"},o=p("",6),e=[o];function t(c,r,D,y,F,i){return a(),n("div",null,e)}const d=s(l,[["render",t]]);export{A as __pageData,d as default}; diff --git a/assets/guide_vue2_proxy.md.2993ab5e.js b/assets/guide_vue2_proxy.md.e19a725e.js similarity index 70% rename from assets/guide_vue2_proxy.md.2993ab5e.js rename to assets/guide_vue2_proxy.md.e19a725e.js index 81014f6..a2e2755 100644 --- a/assets/guide_vue2_proxy.md.2993ab5e.js +++ b/assets/guide_vue2_proxy.md.e19a725e.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as p}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"配置 proxy 跨域","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/proxy.md","lastUpdated":1679905840000}'),l={name:"guide/vue2/proxy.md"},o=p(`

配置 proxy 跨域

如果你的项目需要跨域设置,你需要打来 vue.config.js proxy 注释 并且配置相应参数

!!!注意:你还需要将 src/config/env.development.js 里的 baseApi 设置成 '/'

javascript
module.exports = {
+import{_ as s,o as a,c as n,R as p}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"配置 proxy 跨域","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/proxy.md","filePath":"guide/vue2/proxy.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/proxy.md"},o=p(`

配置 proxy 跨域

如果你的项目需要跨域设置,你需要打来 vue.config.js proxy 注释 并且配置相应参数

!!!注意:你还需要将 src/config/env.development.js 里的 baseApi 设置成 '/'

javascript
module.exports = {
   devServer: {
     // ....
     proxy: {
@@ -13,12 +13,10 @@ import{_ as s,o as a,c as n,Q as p}from"./chunks/framework.522debca.js";const A=
       },
     },
   },
-};
-

使用 例如: src/api/home.js

javascript
export function getUserInfo(params) {
+};

使用 例如: src/api/home.js

javascript
export function getUserInfo(params) {
   return request({
     url: "/api/userinfo",
     method: "post",
     data: qs.stringify(params),
   });
-}
-
`,6),e=[o];function t(c,r,D,y,F,i){return a(),n("div",null,e)}const d=s(l,[["render",t]]);export{A as __pageData,d as default}; +}
`,6),e=[o];function t(c,r,D,y,F,i){return a(),n("div",null,e)}const d=s(l,[["render",t]]);export{A as __pageData,d as default}; diff --git a/assets/guide_vue2_proxy.md.e19a725e.lean.js b/assets/guide_vue2_proxy.md.e19a725e.lean.js new file mode 100644 index 0000000..8020cf9 --- /dev/null +++ b/assets/guide_vue2_proxy.md.e19a725e.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as p}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"配置 proxy 跨域","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/proxy.md","filePath":"guide/vue2/proxy.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/proxy.md"},o=p("",6),e=[o];function t(c,r,D,y,F,i){return a(),n("div",null,e)}const d=s(l,[["render",t]]);export{A as __pageData,d as default}; diff --git a/assets/guide_vue2_rem.md.c59d4c40.lean.js b/assets/guide_vue2_rem.md.c59d4c40.lean.js deleted file mode 100644 index f1c5fed..0000000 --- a/assets/guide_vue2_rem.md.c59d4c40.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"rem 适配方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/rem.md","lastUpdated":1679905840000}'),o={name:"guide/vue2/rem.md"},p=l("",19),e=[p];function t(c,r,D,F,y,i){return a(),n("div",null,e)}const A=s(o,[["render",t]]);export{d as __pageData,A as default}; diff --git a/assets/guide_vue2_rem.md.c59d4c40.js b/assets/guide_vue2_rem.md.dc03687e.js similarity index 52% rename from assets/guide_vue2_rem.md.c59d4c40.js rename to assets/guide_vue2_rem.md.dc03687e.js index 642c9b2..7ff0e0c 100644 --- a/assets/guide_vue2_rem.md.c59d4c40.js +++ b/assets/guide_vue2_rem.md.dc03687e.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"rem 适配方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/rem.md","lastUpdated":1679905840000}'),o={name:"guide/vue2/rem.md"},p=l(`

rem 适配方案

不用担心,项目已经配置好了 rem 适配, 下面仅做介绍:

Vant 中的样式默认使用px作为单位,如果需要使用rem单位,推荐使用以下两个工具:

PostCSS 配置

下面提供了一份基本的 postcss 配置,可以在此配置的基础上根据项目需求进行修改

javascript
// https://github.com/michael-ciniawsky/postcss-load-config
+import{_ as s,o as a,c as n,R as o}from"./chunks/framework.6241eaf2.js";const d=JSON.parse('{"title":"rem 适配方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/rem.md","filePath":"guide/vue2/rem.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/rem.md"},p=o(`

rem 适配方案

不用担心,项目已经配置好了 rem 适配, 下面仅做介绍:

Vant 中的样式默认使用px作为单位,如果需要使用rem单位,推荐使用以下两个工具:

PostCSS 配置

下面提供了一份基本的 postcss 配置,可以在此配置的基础上根据项目需求进行修改

javascript
// https://github.com/michael-ciniawsky/postcss-load-config
 module.exports = {
   plugins: {
     autoprefixer: {
@@ -15,9 +15,7 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=
       propList: ["*"],
     },
   },
-};
-

更多详细信息: vant

新手必看,老鸟跳过

很多小伙伴会问我,适配的问题,因为我们使用的是 Vant UI,所以必须根据 Vant UI 375 的设计规范走,一般我们的设计会将 UI 图上传到蓝湖,我们就可以需要的尺寸了。下面就大概普及一下 rem。

我们知道 1rem 等于html 根元素设定的 font-sizepx 值。Vant UI 设置 rootValue: 37.5,你可以看到在 iPhone 6 下看到 (1rem 等于 37.5px):

html
<html data-dpr="1" style="font-size: 37.5px;"></html>
-

切换不同的机型,根元素可能会有不同的font-size。当你写 css px 样式时,会被程序换算成 rem 达到适配。

因为我们用了 Vant 的组件,需要按照 rootValue: 37.5 来写样式。

举个例子:设计给了你一张 750px * 1334px 图片,在 iPhone6 上铺满屏幕,其他机型适配。

  • rootValue: 70 , 样式 width: 750px;height: 1334px; 图片会撑满 iPhone6 屏幕,这个时候切换其他机型,图片也会跟着撑满。
  • rootValue: 37.5 的时候,样式 width: 375px;height: 667px; 图片会撑满 iPhone6 屏幕。

也就是 iphone 6 下 375px 宽度写 CSS。其他的你就可以根据你设计图,去写对应的样式就可以了。

当然,想要撑满屏幕你可以使用 100%,这里只是举例说明。

html
<img class="image" src="https://www.sunniejs.cn/static/weapp/logo.png" />
+};

更多详细信息: vant

新手必看,老鸟跳过

很多小伙伴会问我,适配的问题,因为我们使用的是 Vant UI,所以必须根据 Vant UI 375 的设计规范走,一般我们的设计会将 UI 图上传到蓝湖,我们就可以需要的尺寸了。下面就大概普及一下 rem。

我们知道 1rem 等于html 根元素设定的 font-sizepx 值。Vant UI 设置 rootValue: 37.5,你可以看到在 iPhone 6 下看到 (1rem 等于 37.5px):

html
<html data-dpr="1" style="font-size: 37.5px;"></html>

切换不同的机型,根元素可能会有不同的font-size。当你写 css px 样式时,会被程序换算成 rem 达到适配。

因为我们用了 Vant 的组件,需要按照 rootValue: 37.5 来写样式。

举个例子:设计给了你一张 750px * 1334px 图片,在 iPhone6 上铺满屏幕,其他机型适配。

  • rootValue: 70 , 样式 width: 750px;height: 1334px; 图片会撑满 iPhone6 屏幕,这个时候切换其他机型,图片也会跟着撑满。
  • rootValue: 37.5 的时候,样式 width: 375px;height: 667px; 图片会撑满 iPhone6 屏幕。

也就是 iphone 6 下 375px 宽度写 CSS。其他的你就可以根据你设计图,去写对应的样式就可以了。

当然,想要撑满屏幕你可以使用 100%,这里只是举例说明。

html
<img class="image" src="https://www.sunniejs.cn/static/weapp/logo.png" />
 
 <style>
   /* rootValue: 75 */
@@ -30,5 +28,4 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=
     width: 375px;
     height: 667px;
   }
-</style>
-
`,19),e=[p];function t(c,r,D,F,y,i){return a(),n("div",null,e)}const A=s(o,[["render",t]]);export{d as __pageData,A as default}; +</style>
`,19),e=[p];function t(c,r,D,F,y,i){return a(),n("div",null,e)}const A=s(l,[["render",t]]);export{d as __pageData,A as default}; diff --git a/assets/guide_vue2_rem.md.dc03687e.lean.js b/assets/guide_vue2_rem.md.dc03687e.lean.js new file mode 100644 index 0000000..16306ce --- /dev/null +++ b/assets/guide_vue2_rem.md.dc03687e.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as o}from"./chunks/framework.6241eaf2.js";const d=JSON.parse('{"title":"rem 适配方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/rem.md","filePath":"guide/vue2/rem.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/rem.md"},p=o("",19),e=[p];function t(c,r,D,F,y,i){return a(),n("div",null,e)}const A=s(l,[["render",t]]);export{d as __pageData,A as default}; diff --git a/assets/guide_vue2_router.md.047bd988.lean.js b/assets/guide_vue2_router.md.047bd988.lean.js deleted file mode 100644 index a7eb3b4..0000000 --- a/assets/guide_vue2_router.md.047bd988.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"Vue-router","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/router.md","lastUpdated":1679905840000}'),l={name:"guide/vue2/router.md"},p=o("",5),e=[p];function t(c,r,D,y,F,A){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_router.md.047bd988.js b/assets/guide_vue2_router.md.b749e959.js similarity index 81% rename from assets/guide_vue2_router.md.047bd988.js rename to assets/guide_vue2_router.md.b749e959.js index c4930ef..2093c26 100644 --- a/assets/guide_vue2_router.md.047bd988.js +++ b/assets/guide_vue2_router.md.b749e959.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"Vue-router","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/router.md","lastUpdated":1679905840000}'),l={name:"guide/vue2/router.md"},p=o(`

Vue-router

本案例采用 hash 模式,开发者根据需求修改 mode base

注意:如果你使用了 history 模式,vue.config.js 中的 publicPath 要做对应的修改

前往:vue.config.js 基础配置

javascript
import Vue from "vue";
+import{_ as s,o as a,c as n,R as o}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"Vue-router","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/router.md","filePath":"guide/vue2/router.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/router.md"},p=o(`

Vue-router

本案例采用 hash 模式,开发者根据需求修改 mode base

注意:如果你使用了 history 模式,vue.config.js 中的 publicPath 要做对应的修改

前往:vue.config.js 基础配置

javascript
import Vue from "vue";
 import Router from "vue-router";
 
 Vue.use(Router);
@@ -21,5 +21,4 @@ import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.522debca.js";const i=
     routes: router,
   });
 
-export default createRouter();
-
`,5),e=[p];function t(c,r,D,y,F,A){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{i as __pageData,u as default}; +export default createRouter();
`,5),e=[p];function t(c,r,D,y,F,A){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_router.md.b749e959.lean.js b/assets/guide_vue2_router.md.b749e959.lean.js new file mode 100644 index 0000000..d075f9f --- /dev/null +++ b/assets/guide_vue2_router.md.b749e959.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as o}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"Vue-router","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/router.md","filePath":"guide/vue2/router.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/router.md"},p=o("",5),e=[p];function t(c,r,D,y,F,A){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_sass.md.55760269.js b/assets/guide_vue2_sass.md.0540c1bd.js similarity index 66% rename from assets/guide_vue2_sass.md.55760269.js rename to assets/guide_vue2_sass.md.0540c1bd.js index 2b0670c..267f0a8 100644 --- a/assets/guide_vue2_sass.md.55760269.js +++ b/assets/guide_vue2_sass.md.0540c1bd.js @@ -1,26 +1,22 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"Sass 全局样式","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/sass.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/sass.md"},o=l(`

Sass 全局样式

首先 你可能会遇到 node-sass 安装不成功,别放弃多试几次!!!

每个页面自己对应的样式都写在自己的 .vue 文件之中 scoped 它顾名思义给 css 加了一个域的概念。

html
<style lang="scss">
+import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"Sass 全局样式","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/sass.md","filePath":"guide/vue2/sass.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/sass.md"},o=l(`

Sass 全局样式

首先 你可能会遇到 node-sass 安装不成功,别放弃多试几次!!!

每个页面自己对应的样式都写在自己的 .vue 文件之中 scoped 它顾名思义给 css 加了一个域的概念。

html
<style lang="scss">
   /* global styles */
 </style>
 
 <style lang="scss" scoped>
   /* local styles */
-</style>
-

目录结构

vue-h5-template 所有全局样式都在 @/src/assets/css 目录下设置

bash
├── assets
+</style>

目录结构

vue-h5-template 所有全局样式都在 @/src/assets/css 目录下设置

bash
├── assets
    ├── css
       ├── index.scss               # 全局通用样式
       ├── mixin.scss               # 全局mixin
-      └── variables.scss           # 全局变量
-

自定义 vant-ui 样式

现在我们来说说怎么重写 vant-ui 样式。由于 vant-ui 的样式我们是在全局引入的,所以你想在某个页面里面覆盖它的样式就不能加 scoped,但你又想只覆盖这个页面的 vant 样式,你就可在它的父级加一个 class,用命名空间来解决问题。

css
.about-container {
+      └── variables.scss           # 全局变量

自定义 vant-ui 样式

现在我们来说说怎么重写 vant-ui 样式。由于 vant-ui 的样式我们是在全局引入的,所以你想在某个页面里面覆盖它的样式就不能加 scoped,但你又想只覆盖这个页面的 vant 样式,你就可在它的父级加一个 class,用命名空间来解决问题。

css
.about-container {
   /* 你的命名空间 */
   .van-button {
     /* vant-ui 元素*/
     margin-right: 0px;
   }
-}
-

父组件改变子组件样式 深度选择器

当你子组件使用了 scoped 但在父组件又想修改子组件的样式可以 通过 >>> 来实现:

css
<style scoped>
+}

父组件改变子组件样式 深度选择器

当你子组件使用了 scoped 但在父组件又想修改子组件的样式可以 通过 >>> 来实现:

css
<style scoped>
 .a >>> .b { /* ... */ }
-</style>
-

全局变量

vue.config.js 配置使用 css.loaderOptions 选项,注入 sassmixin variables 到全局,不需要手动引入 ,配置$cdn通过变量形式引入 cdn 地址,这样向所有 Sass/Less 样式传入共享的全局变量:

javascript
const IS_PROD = ["production", "prod"].includes(process.env.NODE_ENV);
+</style>

全局变量

vue.config.js 配置使用 css.loaderOptions 选项,注入 sassmixin variables 到全局,不需要手动引入 ,配置$cdn通过变量形式引入 cdn 地址,这样向所有 Sass/Less 样式传入共享的全局变量:

javascript
const IS_PROD = ["production", "prod"].includes(process.env.NODE_ENV);
 const defaultSettings = require("./src/config/index.js");
 module.exports = {
   css: {
@@ -39,15 +35,13 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const A=
       },
     },
   },
-};
-

设置 js 中可以访问 $cdn,.vue 文件中使用this.$cdn访问

javascript
// 引入全局样式
+};

设置 js 中可以访问 $cdn,.vue 文件中使用this.$cdn访问

javascript
// 引入全局样式
 import "@/assets/css/index.scss";
 
 // 设置 js中可以访问 $cdn
 // 引入cdn
 import { $cdn } from "@/config";
-Vue.prototype.$cdn = $cdn;
-

在 css 和 js 使用

html
<script>
+Vue.prototype.$cdn = $cdn;

在 css 和 js 使用

html
<script>
   console.log(this.$cdn);
 </script>
 <style lang="scss" scoped>
@@ -56,5 +50,4 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const A=
     height: 120px;
     background: url($cdn + "/weapp/logo.png") center / contain no-repeat;
   }
-</style>
-
`,20),e=[o];function t(c,r,D,y,F,C){return a(),n("div",null,e)}const d=s(p,[["render",t]]);export{A as __pageData,d as default}; +</style>
`,20),e=[o];function t(c,r,D,y,F,C){return a(),n("div",null,e)}const d=s(p,[["render",t]]);export{A as __pageData,d as default}; diff --git a/assets/guide_vue2_sass.md.0540c1bd.lean.js b/assets/guide_vue2_sass.md.0540c1bd.lean.js new file mode 100644 index 0000000..f70e628 --- /dev/null +++ b/assets/guide_vue2_sass.md.0540c1bd.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"Sass 全局样式","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/sass.md","filePath":"guide/vue2/sass.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/sass.md"},o=l("",20),e=[o];function t(c,r,D,y,F,C){return a(),n("div",null,e)}const d=s(p,[["render",t]]);export{A as __pageData,d as default}; diff --git a/assets/guide_vue2_sass.md.55760269.lean.js b/assets/guide_vue2_sass.md.55760269.lean.js deleted file mode 100644 index e18526c..0000000 --- a/assets/guide_vue2_sass.md.55760269.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"Sass 全局样式","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/sass.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/sass.md"},o=l("",20),e=[o];function t(c,r,D,y,F,C){return a(),n("div",null,e)}const d=s(p,[["render",t]]);export{A as __pageData,d as default}; diff --git a/assets/guide_vue2_start.md.3a872719.lean.js b/assets/guide_vue2_start.md.3a872719.lean.js deleted file mode 100644 index 7893435..0000000 --- a/assets/guide_vue2_start.md.3a872719.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"启动项目","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/start.md","lastUpdated":1679905840000}'),e={name:"guide/vue2/start.md"},t=l("",2),p=[t];function o(c,r,i,y,_,D){return a(),n("div",null,p)}const A=s(e,[["render",o]]);export{d as __pageData,A as default}; diff --git a/assets/guide_vue2_start.md.3a872719.js b/assets/guide_vue2_start.md.50e4a44d.js similarity index 61% rename from assets/guide_vue2_start.md.3a872719.js rename to assets/guide_vue2_start.md.50e4a44d.js index f36d220..6704e5f 100644 --- a/assets/guide_vue2_start.md.3a872719.js +++ b/assets/guide_vue2_start.md.50e4a44d.js @@ -1,5 +1,4 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"启动项目","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/start.md","lastUpdated":1679905840000}'),e={name:"guide/vue2/start.md"},t=l(`

启动项目

js

-// 拉取项目
+import{_ as s,o as a,c as n,R as e}from"./chunks/framework.6241eaf2.js";const C=JSON.parse('{"title":"启动项目","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/start.md","filePath":"guide/vue2/start.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/start.md"},t=e(`

启动项目

js
// 拉取项目
 git clone https://github.com/sunniejs/vue-h5-template
 
 // 切换分支
@@ -9,6 +8,4 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=
 yarn install
 
 // 启动项目
-yarn serve
-
-
`,2),p=[t];function o(c,r,i,y,_,D){return a(),n("div",null,p)}const A=s(e,[["render",o]]);export{d as __pageData,A as default}; +yarn serve
`,2),p=[t];function o(c,r,i,y,_,d){return a(),n("div",null,p)}const A=s(l,[["render",o]]);export{C as __pageData,A as default}; diff --git a/assets/guide_vue2_start.md.50e4a44d.lean.js b/assets/guide_vue2_start.md.50e4a44d.lean.js new file mode 100644 index 0000000..df95e42 --- /dev/null +++ b/assets/guide_vue2_start.md.50e4a44d.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as e}from"./chunks/framework.6241eaf2.js";const C=JSON.parse('{"title":"启动项目","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/start.md","filePath":"guide/vue2/start.md","lastUpdated":1685617392000}'),l={name:"guide/vue2/start.md"},t=e("",2),p=[t];function o(c,r,i,y,_,d){return a(),n("div",null,p)}const A=s(l,[["render",o]]);export{C as __pageData,A as default}; diff --git a/assets/guide_vue2_vant.md.406861fd.lean.js b/assets/guide_vue2_vant.md.406861fd.lean.js deleted file mode 100644 index 74afc85..0000000 --- a/assets/guide_vue2_vant.md.406861fd.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"VantUI 组件按需加载","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/vant.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/vant.md"},o=l("",10),e=[o];function t(c,r,D,y,F,i){return a(),n("div",null,e)}const u=s(p,[["render",t]]);export{A as __pageData,u as default}; diff --git a/assets/guide_vue2_vant.md.406861fd.js b/assets/guide_vue2_vant.md.7f5e95c2.js similarity index 69% rename from assets/guide_vue2_vant.md.406861fd.js rename to assets/guide_vue2_vant.md.7f5e95c2.js index fe3df0f..b5e474b 100644 --- a/assets/guide_vue2_vant.md.406861fd.js +++ b/assets/guide_vue2_vant.md.7f5e95c2.js @@ -1,5 +1,4 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"VantUI 组件按需加载","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/vant.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/vant.md"},o=l(`

VantUI 组件按需加载

项目采 用Vant 自动按需引入组件 (推荐)下 面安装插件介绍:

babel-plugin-import 是一款 babel 插件,它会在编译过程中将 import 的写法自动转换为按需引入的方式

安装插件

bash
npm i babel-plugin-import -D
-

babel.config.js 设置

javascript
// 对于使用 babel7 的用户,可以在 babel.config.js 中配置
+import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"VantUI 组件按需加载","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/vant.md","filePath":"guide/vue2/vant.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/vant.md"},o=l(`

VantUI 组件按需加载

项目采 用Vant 自动按需引入组件 (推荐)下 面安装插件介绍:

babel-plugin-import 是一款 babel 插件,它会在编译过程中将 import 的写法自动转换为按需引入的方式

安装插件

bash
npm i babel-plugin-import -D

babel.config.js 设置

javascript
// 对于使用 babel7 的用户,可以在 babel.config.js 中配置
 const plugins = [
   [
     "import",
@@ -16,12 +15,10 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const A=
     ["@vue/cli-plugin-babel/preset", { useBuiltIns: "usage", corejs: 3 }],
   ],
   plugins,
-};
-

使用组件

项目在 src/plugins/vant.js 下统一管理组件,用哪个引入哪个,无需在页面里重复引用

javascript
// 按需全局引入 vant组件
+};

使用组件

项目在 src/plugins/vant.js 下统一管理组件,用哪个引入哪个,无需在页面里重复引用

javascript
// 按需全局引入 vant组件
 import Vue from "vue";
 import { Button, List, Cell, Tabbar, TabbarItem } from "vant";
 Vue.use(Button);
 Vue.use(Cell);
 Vue.use(List);
-Vue.use(Tabbar).use(TabbarItem);
-
`,10),e=[o];function t(c,r,D,y,F,i){return a(),n("div",null,e)}const u=s(p,[["render",t]]);export{A as __pageData,u as default}; +Vue.use(Tabbar).use(TabbarItem);
`,10),e=[o];function t(c,r,D,y,F,C){return a(),n("div",null,e)}const u=s(p,[["render",t]]);export{A as __pageData,u as default}; diff --git a/assets/guide_vue2_vant.md.7f5e95c2.lean.js b/assets/guide_vue2_vant.md.7f5e95c2.lean.js new file mode 100644 index 0000000..3ee1ac5 --- /dev/null +++ b/assets/guide_vue2_vant.md.7f5e95c2.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"VantUI 组件按需加载","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/vant.md","filePath":"guide/vue2/vant.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/vant.md"},o=l("",10),e=[o];function t(c,r,D,y,F,C){return a(),n("div",null,e)}const u=s(p,[["render",t]]);export{A as __pageData,u as default}; diff --git a/assets/guide_vue2_vuex.md.b3b7559a.js b/assets/guide_vue2_vuex.md.ac525cdf.js similarity index 77% rename from assets/guide_vue2_vuex.md.b3b7559a.js rename to assets/guide_vue2_vuex.md.ac525cdf.js index c7724db..6e8e37f 100644 --- a/assets/guide_vue2_vuex.md.b3b7559a.js +++ b/assets/guide_vue2_vuex.md.ac525cdf.js @@ -1,9 +1,8 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"Vuex 状态管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/vuex.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/vuex.md"},o=l(`

Vuex 状态管理

目录结构

bash
├── store
+import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"Vuex 状态管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/vuex.md","filePath":"guide/vue2/vuex.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/vuex.md"},o=l(`

Vuex 状态管理

目录结构

bash
├── store
    ├── modules
       └── app.js
    ├── index.js
-   ├── getters.js
-

main.js 引入

javascript
import Vue from "vue";
+   ├── getters.js

main.js 引入

javascript
import Vue from "vue";
 import App from "./App.vue";
 import store from "./store";
 new Vue({
@@ -11,8 +10,7 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const i=
   router,
   store,
   render: (h) => h(App),
-});
-

使用

html
<script>
+});

使用

html
<script>
   import { mapGetters } from "vuex";
   export default {
     computed: {
@@ -29,5 +27,4 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const i=
       },
     },
   };
-</script>
-
`,7),e=[o];function t(c,r,D,y,F,C){return a(),n("div",null,e)}const u=s(p,[["render",t]]);export{i as __pageData,u as default}; +</script>
`,7),e=[o];function t(c,r,D,y,F,C){return a(),n("div",null,e)}const u=s(p,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_vuex.md.ac525cdf.lean.js b/assets/guide_vue2_vuex.md.ac525cdf.lean.js new file mode 100644 index 0000000..a2c06b1 --- /dev/null +++ b/assets/guide_vue2_vuex.md.ac525cdf.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"Vuex 状态管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/vuex.md","filePath":"guide/vue2/vuex.md","lastUpdated":1685617392000}'),p={name:"guide/vue2/vuex.md"},o=l("",7),e=[o];function t(c,r,D,y,F,C){return a(),n("div",null,e)}const u=s(p,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_vuex.md.b3b7559a.lean.js b/assets/guide_vue2_vuex.md.b3b7559a.lean.js deleted file mode 100644 index c512610..0000000 --- a/assets/guide_vue2_vuex.md.b3b7559a.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"Vuex 状态管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/vuex.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/vuex.md"},o=l("",7),e=[o];function t(c,r,D,y,F,C){return a(),n("div",null,e)}const u=s(p,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue2_vw.md.7dbc4a4c.js b/assets/guide_vue2_vw.md.2e9f914f.js similarity index 65% rename from assets/guide_vue2_vw.md.7dbc4a4c.js rename to assets/guide_vue2_vw.md.2e9f914f.js index acf95cd..709b4f0 100644 --- a/assets/guide_vue2_vw.md.7dbc4a4c.js +++ b/assets/guide_vue2_vw.md.2e9f914f.js @@ -1,7 +1,4 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"vm 适配方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/vw.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/vw.md"},o=l(`

vm 适配方案

本项目使用的是 rem 的 适配方案,其实无论你使用哪种方案,都不需要你去计算 12px 是多少 rem 或者 vw, 会有专门的工具去帮你做 。如果你想用 vw,你可以按照下面的方式切换。

1.安装依赖

bash

-npm install postcss-px-to-viewport -D
-
-

2.修改 .postcssrc.js

将根目录下 .postcssrc.js 文件修改如下

javascript
// https://github.com/michael-ciniawsky/postcss-load-config
+import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"vm 适配方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/vw.md","filePath":"guide/vue2/vw.md","lastUpdated":1685617392000}'),o={name:"guide/vue2/vw.md"},p=l(`

vm 适配方案

本项目使用的是 rem 的 适配方案,其实无论你使用哪种方案,都不需要你去计算 12px 是多少 rem 或者 vw, 会有专门的工具去帮你做 。如果你想用 vw,你可以按照下面的方式切换。

1.安装依赖

bash
npm install postcss-px-to-viewport -D

2.修改 .postcssrc.js

将根目录下 .postcssrc.js 文件修改如下

javascript
// https://github.com/michael-ciniawsky/postcss-load-config
 module.exports = {
   plugins: {
     autoprefixer: {
@@ -22,9 +19,6 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const A=
       mediaQuery: false, // 允许在媒体查询中转换\`px\`
     },
   },
-};
-

3.删除原来的 rem 相关代码

src/main.js 删除如下代码

javascript
// 移动端适配
-import "lib-flexible/flexible.js";
-

package.json 删除如下代码

javascript
"lib-flexible": "^0.3.2",
-"postcss-pxtorem": "^5.1.1",
-

运行起来,F12 元素 css style 就是 vw 单位了

`,13),e=[o];function t(c,r,D,y,i,F){return a(),n("div",null,e)}const u=s(p,[["render",t]]);export{A as __pageData,u as default}; +};

3.删除原来的 rem 相关代码

src/main.js 删除如下代码

javascript
// 移动端适配
+import "lib-flexible/flexible.js";

package.json 删除如下代码

javascript
"lib-flexible": "^0.3.2",
+"postcss-pxtorem": "^5.1.1",

运行起来,F12 元素 css style 就是 vw 单位了

`,13),e=[p];function t(c,r,D,y,F,i){return a(),n("div",null,e)}const u=s(o,[["render",t]]);export{A as __pageData,u as default}; diff --git a/assets/guide_vue2_vw.md.2e9f914f.lean.js b/assets/guide_vue2_vw.md.2e9f914f.lean.js new file mode 100644 index 0000000..15d86f1 --- /dev/null +++ b/assets/guide_vue2_vw.md.2e9f914f.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"vm 适配方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/vw.md","filePath":"guide/vue2/vw.md","lastUpdated":1685617392000}'),o={name:"guide/vue2/vw.md"},p=l("",13),e=[p];function t(c,r,D,y,F,i){return a(),n("div",null,e)}const u=s(o,[["render",t]]);export{A as __pageData,u as default}; diff --git a/assets/guide_vue2_vw.md.7dbc4a4c.lean.js b/assets/guide_vue2_vw.md.7dbc4a4c.lean.js deleted file mode 100644 index a9674f6..0000000 --- a/assets/guide_vue2_vw.md.7dbc4a4c.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"vm 适配方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/vw.md","lastUpdated":1679905840000}'),p={name:"guide/vue2/vw.md"},o=l("",13),e=[o];function t(c,r,D,y,i,F){return a(),n("div",null,e)}const u=s(p,[["render",t]]);export{A as __pageData,u as default}; diff --git a/assets/guide_vue3_alias.md.e516d7e2.js b/assets/guide_vue3_alias.md.5df8d842.js similarity index 82% rename from assets/guide_vue3_alias.md.e516d7e2.js rename to assets/guide_vue3_alias.md.5df8d842.js index f5bf778..dbb684c 100644 --- a/assets/guide_vue3_alias.md.e516d7e2.js +++ b/assets/guide_vue3_alias.md.5df8d842.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const _=JSON.parse('{"title":"alias","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/alias.md","lastUpdated":1679905840000}'),p={name:"guide/vue3/alias.md"},o=l(`

alias

javascript
resolve: {
+import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const _=JSON.parse('{"title":"alias","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/alias.md","filePath":"guide/vue3/alias.md","lastUpdated":1685617392000}'),p={name:"guide/vue3/alias.md"},o=l(`

alias

javascript
resolve: {
     alias: [{
             find: 'vue-i18n',
             replacement: 'vue-i18n/dist/vue-i18n.cjs.js',
@@ -14,5 +14,4 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const _=
             replacement: pathResolve('types') + '/',
         },
     ],
-},
-
`,2),e=[o];function t(c,r,F,D,y,i){return a(),n("div",null,e)}const C=s(p,[["render",t]]);export{_ as __pageData,C as default}; +},
`,2),e=[o];function t(c,r,F,D,y,i){return a(),n("div",null,e)}const C=s(p,[["render",t]]);export{_ as __pageData,C as default}; diff --git a/assets/guide_vue3_alias.md.5df8d842.lean.js b/assets/guide_vue3_alias.md.5df8d842.lean.js new file mode 100644 index 0000000..2d2889e --- /dev/null +++ b/assets/guide_vue3_alias.md.5df8d842.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const _=JSON.parse('{"title":"alias","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/alias.md","filePath":"guide/vue3/alias.md","lastUpdated":1685617392000}'),p={name:"guide/vue3/alias.md"},o=l("",2),e=[o];function t(c,r,F,D,y,i){return a(),n("div",null,e)}const C=s(p,[["render",t]]);export{_ as __pageData,C as default}; diff --git a/assets/guide_vue3_alias.md.e516d7e2.lean.js b/assets/guide_vue3_alias.md.e516d7e2.lean.js deleted file mode 100644 index 19fad1e..0000000 --- a/assets/guide_vue3_alias.md.e516d7e2.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const _=JSON.parse('{"title":"alias","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/alias.md","lastUpdated":1679905840000}'),p={name:"guide/vue3/alias.md"},o=l("",2),e=[o];function t(c,r,F,D,y,i){return a(),n("div",null,e)}const C=s(p,[["render",t]]);export{_ as __pageData,C as default}; diff --git a/assets/guide_vue3_axios.md.b2916294.js b/assets/guide_vue3_axios.md.9929e968.js similarity index 91% rename from assets/guide_vue3_axios.md.b2916294.js rename to assets/guide_vue3_axios.md.9929e968.js index 871d136..c392035 100644 --- a/assets/guide_vue3_axios.md.b2916294.js +++ b/assets/guide_vue3_axios.md.9929e968.js @@ -1,4 +1,4 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const C=JSON.parse('{"title":"axios 封装及接口管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/axios.md","lastUpdated":1679905840000}'),o={name:"guide/vue3/axios.md"},p=l(`

axios 封装及接口管理

utils/request.js 封装 axios , 开发者需要根据后台接口做修改。

  • service.interceptors.request.use 里可以设置请求头,比如设置 token
  • config.hideloading 是在 api 文件夹下的接口参数里设置,下文会讲
  • service.interceptors.response.use 里可以对接口返回数据处理,比如 401 删除本地信息,重新登录
javascript
import axios from "axios";
+import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const C=JSON.parse('{"title":"axios 封装及接口管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/axios.md","filePath":"guide/vue3/axios.md","lastUpdated":1685617392000}'),o={name:"guide/vue3/axios.md"},p=l(`

axios 封装及接口管理

utils/request.js 封装 axios , 开发者需要根据后台接口做修改。

  • service.interceptors.request.use 里可以设置请求头,比如设置 token
  • config.hideloading 是在 api 文件夹下的接口参数里设置,下文会讲
  • service.interceptors.response.use 里可以对接口返回数据处理,比如 401 删除本地信息,重新登录
javascript
import axios from "axios";
 import store from "@/store";
 import { Toast } from "vant";
 // 根据环境不同引入不同api地址
@@ -54,5 +54,4 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const C=
     return Promise.reject(error);
   }
 );
-export default service;
-
`,4),e=[p];function t(c,r,F,y,D,i){return n(),a("div",null,e)}const u=s(o,[["render",t]]);export{C as __pageData,u as default}; +export default service;
`,4),e=[p];function t(c,r,F,y,D,i){return n(),a("div",null,e)}const u=s(o,[["render",t]]);export{C as __pageData,u as default}; diff --git a/assets/guide_vue3_axios.md.9929e968.lean.js b/assets/guide_vue3_axios.md.9929e968.lean.js new file mode 100644 index 0000000..46743e5 --- /dev/null +++ b/assets/guide_vue3_axios.md.9929e968.lean.js @@ -0,0 +1 @@ +import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const C=JSON.parse('{"title":"axios 封装及接口管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/axios.md","filePath":"guide/vue3/axios.md","lastUpdated":1685617392000}'),o={name:"guide/vue3/axios.md"},p=l("",4),e=[p];function t(c,r,F,y,D,i){return n(),a("div",null,e)}const u=s(o,[["render",t]]);export{C as __pageData,u as default}; diff --git a/assets/guide_vue3_axios.md.b2916294.lean.js b/assets/guide_vue3_axios.md.b2916294.lean.js deleted file mode 100644 index 3fc0585..0000000 --- a/assets/guide_vue3_axios.md.b2916294.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const C=JSON.parse('{"title":"axios 封装及接口管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/axios.md","lastUpdated":1679905840000}'),o={name:"guide/vue3/axios.md"},p=l("",4),e=[p];function t(c,r,F,y,D,i){return n(),a("div",null,e)}const u=s(o,[["render",t]]);export{C as __pageData,u as default}; diff --git a/assets/guide_vue3_base.md.2504686c.js b/assets/guide_vue3_base.md.22bdbcc7.js similarity index 66% rename from assets/guide_vue3_base.md.2504686c.js rename to assets/guide_vue3_base.md.22bdbcc7.js index 6f01dc4..22dfc4e 100644 --- a/assets/guide_vue3_base.md.2504686c.js +++ b/assets/guide_vue3_base.md.22bdbcc7.js @@ -1,6 +1,4 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"vite.config.ts 基础配置","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/base.md","lastUpdated":1679905840000}'),p={name:"guide/vue3/base.md"},o=l(`

vite.config.ts 基础配置

如果你的 Vue Router 模式是 hash

javascript
publicPath: './',
-

如果你的 Vue Router 模式是 history 这里的 publicPath 和你的 Vue Router base 保持一致

javascript
publicPath: '/app/',
-
javascript
export default function ({ command }: ConfigEnv): UserConfigExport {
+import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const d=JSON.parse('{"title":"vite.config.ts 基础配置","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/base.md","filePath":"guide/vue3/base.md","lastUpdated":1685617392000}'),p={name:"guide/vue3/base.md"},o=l(`

vite.config.ts 基础配置

如果你的 Vue Router 模式是 hash

javascript
publicPath: './',

如果你的 Vue Router 模式是 history 这里的 publicPath 和你的 Vue Router base 保持一致

javascript
publicPath: '/app/',
javascript
export default function ({ command }: ConfigEnv): UserConfigExport {
   const isProduction = command === "build";
   return {
     server: {
@@ -28,5 +26,4 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=
       },
     },
   };
-}
-
`,6),e=[o];function t(c,r,F,y,D,i){return a(),n("div",null,e)}const C=s(p,[["render",t]]);export{d as __pageData,C as default}; +}
`,6),e=[o];function t(c,r,F,y,D,i){return a(),n("div",null,e)}const C=s(p,[["render",t]]);export{d as __pageData,C as default}; diff --git a/assets/guide_vue3_base.md.22bdbcc7.lean.js b/assets/guide_vue3_base.md.22bdbcc7.lean.js new file mode 100644 index 0000000..866dac0 --- /dev/null +++ b/assets/guide_vue3_base.md.22bdbcc7.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const d=JSON.parse('{"title":"vite.config.ts 基础配置","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/base.md","filePath":"guide/vue3/base.md","lastUpdated":1685617392000}'),p={name:"guide/vue3/base.md"},o=l("",6),e=[o];function t(c,r,F,y,D,i){return a(),n("div",null,e)}const C=s(p,[["render",t]]);export{d as __pageData,C as default}; diff --git a/assets/guide_vue3_base.md.2504686c.lean.js b/assets/guide_vue3_base.md.2504686c.lean.js deleted file mode 100644 index d52c402..0000000 --- a/assets/guide_vue3_base.md.2504686c.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"vite.config.ts 基础配置","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/base.md","lastUpdated":1679905840000}'),p={name:"guide/vue3/base.md"},o=l("",6),e=[o];function t(c,r,F,y,D,i){return a(),n("div",null,e)}const C=s(p,[["render",t]]);export{d as __pageData,C as default}; diff --git a/assets/guide_vue3_env.md.5710f1b6.js b/assets/guide_vue3_env.md.15c44b72.js similarity index 51% rename from assets/guide_vue3_env.md.5710f1b6.js rename to assets/guide_vue3_env.md.15c44b72.js index 23c817c..7765d59 100644 --- a/assets/guide_vue3_env.md.5710f1b6.js +++ b/assets/guide_vue3_env.md.15c44b72.js @@ -1,6 +1,5 @@ -import{_ as s,o,c as e,Q as a}from"./chunks/framework.522debca.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/env.md","lastUpdated":1679905840000}'),n={name:"guide/vue3/env.md"},p=a(`

package.json 里的 scripts 配置 dev dev:test dev:prod ,通过 --mode xxx 来执行不同环境

  • 通过 yarn dev 启动本地环境参数 , 执行 development
  • 通过 yarn dev:test 启动测试环境参数 , 执行 test
  • 通过 yarn dev:prod 启动正式环境参数 , 执行 prod
javascript
"scripts": {
+import{_ as s,o,c as e,R as a}from"./chunks/framework.6241eaf2.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/env.md","filePath":"guide/vue3/env.md","lastUpdated":1685617392000}'),n={name:"guide/vue3/env.md"},p=a(`

package.json 里的 scripts 配置 dev dev:test dev:prod ,通过 --mode xxx 来执行不同环境

  • 通过 yarn dev 启动本地环境参数 , 执行 development
  • 通过 yarn dev:test 启动测试环境参数 , 执行 test
  • 通过 yarn dev:prod 启动正式环境参数 , 执行 prod
javascript
"scripts": {
     "dev": "vite",
     "dev:test": "vite --mode test",
     "dev:prod": "vite --mode production",
-}
-
`,3),l=[p];function t(c,r,d,D,F,i){return o(),e("div",null,l)}const _=s(n,[["render",t]]);export{u as __pageData,_ as default}; +}
`,3),t=[p];function l(c,r,d,D,F,i){return o(),e("div",null,t)}const _=s(n,[["render",l]]);export{u as __pageData,_ as default}; diff --git a/assets/guide_vue3_env.md.15c44b72.lean.js b/assets/guide_vue3_env.md.15c44b72.lean.js new file mode 100644 index 0000000..eb98849 --- /dev/null +++ b/assets/guide_vue3_env.md.15c44b72.lean.js @@ -0,0 +1 @@ +import{_ as s,o,c as e,R as a}from"./chunks/framework.6241eaf2.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/env.md","filePath":"guide/vue3/env.md","lastUpdated":1685617392000}'),n={name:"guide/vue3/env.md"},p=a("",3),t=[p];function l(c,r,d,D,F,i){return o(),e("div",null,t)}const _=s(n,[["render",l]]);export{u as __pageData,_ as default}; diff --git a/assets/guide_vue3_env.md.5710f1b6.lean.js b/assets/guide_vue3_env.md.5710f1b6.lean.js deleted file mode 100644 index 60284a9..0000000 --- a/assets/guide_vue3_env.md.5710f1b6.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o,c as e,Q as a}from"./chunks/framework.522debca.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/env.md","lastUpdated":1679905840000}'),n={name:"guide/vue3/env.md"},p=a("",3),l=[p];function t(c,r,d,D,F,i){return o(),e("div",null,l)}const _=s(n,[["render",t]]);export{u as __pageData,_ as default}; diff --git a/assets/guide_vue3_i18n.md.6236059c.lean.js b/assets/guide_vue3_i18n.md.6236059c.lean.js deleted file mode 100644 index 948b041..0000000 --- a/assets/guide_vue3_i18n.md.6236059c.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"i18n 文本多语言解决方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/i18n.md","lastUpdated":1679905840000}'),p={name:"guide/vue3/i18n.md"},o=l("",9),t=[o];function e(c,r,y,F,D,C){return n(),a("div",null,t)}const g=s(p,[["render",e]]);export{A as __pageData,g as default}; diff --git a/assets/guide_vue3_i18n.md.6236059c.js b/assets/guide_vue3_i18n.md.efcc4870.js similarity index 82% rename from assets/guide_vue3_i18n.md.6236059c.js rename to assets/guide_vue3_i18n.md.efcc4870.js index ec69a97..7017ac6 100644 --- a/assets/guide_vue3_i18n.md.6236059c.js +++ b/assets/guide_vue3_i18n.md.efcc4870.js @@ -1,4 +1,4 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"i18n 文本多语言解决方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/i18n.md","lastUpdated":1679905840000}'),p={name:"guide/vue3/i18n.md"},o=l(`

i18n 文本多语言解决方案

javascript
import { createI18n } from 'vue-i18n'; // 引入第三方最新的i18n注意版本
+import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"i18n 文本多语言解决方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/i18n.md","filePath":"guide/vue3/i18n.md","lastUpdated":1685617392000}'),p={name:"guide/vue3/i18n.md"},o=l(`

i18n 文本多语言解决方案

javascript
import { createI18n } from 'vue-i18n'; // 引入第三方最新的i18n注意版本
 
 /**
  * @description: 加载当前配置的语言配置目录,随意添加
@@ -30,8 +30,7 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const A=
     localStorage.setItem('lang', locale);
   }
   i18n.global.locale = locale || localStorage.getItem('lang') || '';
-}
-

css图片解决方案

目前在业务开发中,css的样式多语言也会经常用到,可能一些图片的字体比较复杂,代码很难实现。或者我们为了减少多语言的配置,加快开发效率也会使用多语言的配置,目前这里提供scss的图片多语言的方案

css
@mixin main-lang-bg($width, $height, $preUrl, $posUrl) {
+}

css图片解决方案

目前在业务开发中,css的样式多语言也会经常用到,可能一些图片的字体比较复杂,代码很难实现。或者我们为了减少多语言的配置,加快开发效率也会使用多语言的配置,目前这里提供scss的图片多语言的方案

css
@mixin main-lang-bg($width, $height, $preUrl, $posUrl) {
   width: $width;
   height: $height;
   background-repeat: no-repeat;
@@ -46,13 +45,11 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const A=
       background-image: url('#{$preUrl}/#{$i}/#{$posUrl}');
     }
   }
-}
-

定义图片的目录格式

bash
├── button
+}

定义图片的目录格式

bash
├── button
    ├── en-us
       └── confirm.png
    ├── zh-cn
-      └── confirm.png
-

HTML的使用方式

html
<template>
+      └── confirm.png

HTML的使用方式

html
<template>
  <div :class="['btn-confirm', i18n.global.locale]"></div>
 </template>
 <script lang="ts" setup name="HomePage">
@@ -62,5 +59,4 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const A=
     .btn-confirm {
         @include main-lang-bg(302px, 82px, '/@/assets/button', 'confirm.png');
     }
-</style>
-
`,9),t=[o];function e(c,r,y,F,D,C){return n(),a("div",null,t)}const g=s(p,[["render",e]]);export{A as __pageData,g as default}; +</style>
`,9),t=[o];function e(c,r,y,F,D,C){return n(),a("div",null,t)}const g=s(p,[["render",e]]);export{A as __pageData,g as default}; diff --git a/assets/guide_vue3_i18n.md.efcc4870.lean.js b/assets/guide_vue3_i18n.md.efcc4870.lean.js new file mode 100644 index 0000000..bcf4162 --- /dev/null +++ b/assets/guide_vue3_i18n.md.efcc4870.lean.js @@ -0,0 +1 @@ +import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"i18n 文本多语言解决方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/i18n.md","filePath":"guide/vue3/i18n.md","lastUpdated":1685617392000}'),p={name:"guide/vue3/i18n.md"},o=l("",9),t=[o];function e(c,r,y,F,D,C){return n(),a("div",null,t)}const g=s(p,[["render",e]]);export{A as __pageData,g as default}; diff --git a/assets/guide_vue3_lint.md.a1cc197f.js b/assets/guide_vue3_lint.md.a1cc197f.js deleted file mode 100644 index a3b72f7..0000000 --- a/assets/guide_vue3_lint.md.a1cc197f.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,o as s,c as i,x as t,a as n}from"./chunks/framework.522debca.js";const x=JSON.parse('{"title":"Eslint+Pettier+stylelint 统一开发规范","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/lint.md","lastUpdated":1679905840000}'),l={name:"guide/vue3/lint.md"},a=t("h1",{id:"eslint-pettier-stylelint-统一开发规范",tabindex:"-1"},[n("Eslint+Pettier+stylelint 统一开发规范 "),t("a",{class:"header-anchor",href:"#eslint-pettier-stylelint-统一开发规范","aria-label":'Permalink to "Eslint+Pettier+stylelint 统一开发规范"'},"​")],-1),r=t("p",null,"根目录下的.eslintrc.js、.stylelint.config.js、.prettier.config.js 内置了 lint 规则,帮助你规范地开发代码,有助于提高团队的代码质量和协作性,可以根据团队的规则进行修改",-1),o=[a,r];function c(d,_,p,f,h,u){return s(),i("div",null,o)}const y=e(l,[["render",c]]);export{x as __pageData,y as default}; diff --git a/assets/guide_vue3_lint.md.a1cc197f.lean.js b/assets/guide_vue3_lint.md.a1cc197f.lean.js deleted file mode 100644 index a3b72f7..0000000 --- a/assets/guide_vue3_lint.md.a1cc197f.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,o as s,c as i,x as t,a as n}from"./chunks/framework.522debca.js";const x=JSON.parse('{"title":"Eslint+Pettier+stylelint 统一开发规范","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/lint.md","lastUpdated":1679905840000}'),l={name:"guide/vue3/lint.md"},a=t("h1",{id:"eslint-pettier-stylelint-统一开发规范",tabindex:"-1"},[n("Eslint+Pettier+stylelint 统一开发规范 "),t("a",{class:"header-anchor",href:"#eslint-pettier-stylelint-统一开发规范","aria-label":'Permalink to "Eslint+Pettier+stylelint 统一开发规范"'},"​")],-1),r=t("p",null,"根目录下的.eslintrc.js、.stylelint.config.js、.prettier.config.js 内置了 lint 规则,帮助你规范地开发代码,有助于提高团队的代码质量和协作性,可以根据团队的规则进行修改",-1),o=[a,r];function c(d,_,p,f,h,u){return s(),i("div",null,o)}const y=e(l,[["render",c]]);export{x as __pageData,y as default}; diff --git a/assets/guide_vue3_lint.md.c956f53d.js b/assets/guide_vue3_lint.md.c956f53d.js new file mode 100644 index 0000000..8972761 --- /dev/null +++ b/assets/guide_vue3_lint.md.c956f53d.js @@ -0,0 +1 @@ +import{_ as e,o as i,c as s,z as t,a as n}from"./chunks/framework.6241eaf2.js";const g=JSON.parse('{"title":"Eslint+Pettier+stylelint 统一开发规范","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/lint.md","filePath":"guide/vue3/lint.md","lastUpdated":1685617392000}'),l={name:"guide/vue3/lint.md"},a=t("h1",{id:"eslint-pettier-stylelint-统一开发规范",tabindex:"-1"},[n("Eslint+Pettier+stylelint 统一开发规范 "),t("a",{class:"header-anchor",href:"#eslint-pettier-stylelint-统一开发规范","aria-label":'Permalink to "Eslint+Pettier+stylelint 统一开发规范"'},"​")],-1),r=t("p",null,"根目录下的.eslintrc.js、.stylelint.config.js、.prettier.config.js 内置了 lint 规则,帮助你规范地开发代码,有助于提高团队的代码质量和协作性,可以根据团队的规则进行修改",-1),o=[a,r];function c(d,_,p,u,f,h){return i(),s("div",null,o)}const y=e(l,[["render",c]]);export{g as __pageData,y as default}; diff --git a/assets/guide_vue3_lint.md.c956f53d.lean.js b/assets/guide_vue3_lint.md.c956f53d.lean.js new file mode 100644 index 0000000..8972761 --- /dev/null +++ b/assets/guide_vue3_lint.md.c956f53d.lean.js @@ -0,0 +1 @@ +import{_ as e,o as i,c as s,z as t,a as n}from"./chunks/framework.6241eaf2.js";const g=JSON.parse('{"title":"Eslint+Pettier+stylelint 统一开发规范","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/lint.md","filePath":"guide/vue3/lint.md","lastUpdated":1685617392000}'),l={name:"guide/vue3/lint.md"},a=t("h1",{id:"eslint-pettier-stylelint-统一开发规范",tabindex:"-1"},[n("Eslint+Pettier+stylelint 统一开发规范 "),t("a",{class:"header-anchor",href:"#eslint-pettier-stylelint-统一开发规范","aria-label":'Permalink to "Eslint+Pettier+stylelint 统一开发规范"'},"​")],-1),r=t("p",null,"根目录下的.eslintrc.js、.stylelint.config.js、.prettier.config.js 内置了 lint 规则,帮助你规范地开发代码,有助于提高团队的代码质量和协作性,可以根据团队的规则进行修改",-1),o=[a,r];function c(d,_,p,u,f,h){return i(),s("div",null,o)}const y=e(l,[["render",c]]);export{g as __pageData,y as default}; diff --git a/assets/guide_vue3_pinia.md.100e26e9.lean.js b/assets/guide_vue3_pinia.md.100e26e9.lean.js deleted file mode 100644 index a2ee350..0000000 --- a/assets/guide_vue3_pinia.md.100e26e9.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"Pinia 状态管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/pinia.md","lastUpdated":1679905840000}'),p={name:"guide/vue3/pinia.md"},o=l("",11),e=[o];function t(c,r,F,y,D,C){return n(),a("div",null,e)}const d=s(p,[["render",t]]);export{i as __pageData,d as default}; diff --git a/assets/guide_vue3_pinia.md.100e26e9.js b/assets/guide_vue3_pinia.md.f90c3d06.js similarity index 83% rename from assets/guide_vue3_pinia.md.100e26e9.js rename to assets/guide_vue3_pinia.md.f90c3d06.js index 39040b3..b6789d0 100644 --- a/assets/guide_vue3_pinia.md.100e26e9.js +++ b/assets/guide_vue3_pinia.md.f90c3d06.js @@ -1,8 +1,7 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"Pinia 状态管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/pinia.md","lastUpdated":1679905840000}'),p={name:"guide/vue3/pinia.md"},o=l(`

Pinia 状态管理

下一代 vuex,使用极其方便,ts 兼容好

目录结构

bash
├── store
+import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"Pinia 状态管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/pinia.md","filePath":"guide/vue3/pinia.md","lastUpdated":1685617392000}'),p={name:"guide/vue3/pinia.md"},o=l(`

Pinia 状态管理

下一代 vuex,使用极其方便,ts 兼容好

目录结构

bash
├── store
    ├── modules
       └── user.js
-   ├── index.js
-

目前pinia分为两种编程模式,options API和 Composition API,我们这边都会列举出来实现的业务逻辑效果是一样的,提供大家思路

options API:

javascript
interface StoreUser {
+   ├── index.js

目前pinia分为两种编程模式,options API和 Composition API,我们这边都会列举出来实现的业务逻辑效果是一样的,提供大家思路

options API:

javascript
interface StoreUser {
   token: string;
   info: Record<any, any>;
 }
@@ -33,8 +32,7 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const i=
       });
     },
   },
-});
-

Composition API:

javascript
export const useUserStore = defineStore('app-user', () => {
+});

Composition API:

javascript
export const useUserStore = defineStore('app-user', () => {
   const Token = ref(token);
   const info = ref<Record<any, any>>({});
   const setInfo = (info: any) => {
@@ -60,10 +58,8 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const i=
     login,
     getUserInfo,
   };
-})
-

使用

html
<script lang="ts" setup>
+})

使用

html
<script lang="ts" setup>
   import { useUserStore } from "@/store/modules/user";
   const userStore = useUserStore();
   userStore.login();
-</script>
-
`,11),e=[o];function t(c,r,F,y,D,C){return n(),a("div",null,e)}const d=s(p,[["render",t]]);export{i as __pageData,d as default}; +</script>
`,11),e=[o];function t(c,r,F,y,D,C){return n(),a("div",null,e)}const d=s(p,[["render",t]]);export{i as __pageData,d as default}; diff --git a/assets/guide_vue3_pinia.md.f90c3d06.lean.js b/assets/guide_vue3_pinia.md.f90c3d06.lean.js new file mode 100644 index 0000000..2ee0eca --- /dev/null +++ b/assets/guide_vue3_pinia.md.f90c3d06.lean.js @@ -0,0 +1 @@ +import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"Pinia 状态管理","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/pinia.md","filePath":"guide/vue3/pinia.md","lastUpdated":1685617392000}'),p={name:"guide/vue3/pinia.md"},o=l("",11),e=[o];function t(c,r,F,y,D,C){return n(),a("div",null,e)}const d=s(p,[["render",t]]);export{i as __pageData,d as default}; diff --git a/assets/guide_vue3_proxy.md.835d58e9.js b/assets/guide_vue3_proxy.md.15dd8725.js similarity index 72% rename from assets/guide_vue3_proxy.md.835d58e9.js rename to assets/guide_vue3_proxy.md.15dd8725.js index ac627a9..7927291 100644 --- a/assets/guide_vue3_proxy.md.835d58e9.js +++ b/assets/guide_vue3_proxy.md.15dd8725.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as p}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"proxy 跨域","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/proxy.md","lastUpdated":1679905840000}'),l={name:"guide/vue3/proxy.md"},o=p(`

proxy 跨域

javascript
server: {
+import{_ as s,o as a,c as n,R as p}from"./chunks/framework.6241eaf2.js";const _=JSON.parse('{"title":"proxy 跨域","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/proxy.md","filePath":"guide/vue3/proxy.md","lastUpdated":1685617392000}'),l={name:"guide/vue3/proxy.md"},o=p(`

proxy 跨域

javascript
server: {
     proxy: {
         '/api': {
             target: 'https://baidu.com',
@@ -6,5 +6,4 @@ import{_ as s,o as a,c as n,Q as p}from"./chunks/framework.522debca.js";const d=
             rewrite: (path) => path.replace(/^\\/api/, '')
         }
     }
-},
-
`,2),e=[o];function t(r,c,F,y,D,i){return a(),n("div",null,e)}const C=s(l,[["render",t]]);export{d as __pageData,C as default}; +},
`,2),e=[o];function t(r,c,F,y,D,i){return a(),n("div",null,e)}const C=s(l,[["render",t]]);export{_ as __pageData,C as default}; diff --git a/assets/guide_vue3_proxy.md.15dd8725.lean.js b/assets/guide_vue3_proxy.md.15dd8725.lean.js new file mode 100644 index 0000000..05a972e --- /dev/null +++ b/assets/guide_vue3_proxy.md.15dd8725.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as p}from"./chunks/framework.6241eaf2.js";const _=JSON.parse('{"title":"proxy 跨域","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/proxy.md","filePath":"guide/vue3/proxy.md","lastUpdated":1685617392000}'),l={name:"guide/vue3/proxy.md"},o=p("",2),e=[o];function t(r,c,F,y,D,i){return a(),n("div",null,e)}const C=s(l,[["render",t]]);export{_ as __pageData,C as default}; diff --git a/assets/guide_vue3_proxy.md.835d58e9.lean.js b/assets/guide_vue3_proxy.md.835d58e9.lean.js deleted file mode 100644 index 5695492..0000000 --- a/assets/guide_vue3_proxy.md.835d58e9.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as p}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"proxy 跨域","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/proxy.md","lastUpdated":1679905840000}'),l={name:"guide/vue3/proxy.md"},o=p("",2),e=[o];function t(r,c,F,y,D,i){return a(),n("div",null,e)}const C=s(l,[["render",t]]);export{d as __pageData,C as default}; diff --git a/assets/guide_vue3_router.md.fdac12cd.js b/assets/guide_vue3_router.md.f8e4c12f.js similarity index 77% rename from assets/guide_vue3_router.md.fdac12cd.js rename to assets/guide_vue3_router.md.f8e4c12f.js index e3137d5..25f4fa3 100644 --- a/assets/guide_vue3_router.md.fdac12cd.js +++ b/assets/guide_vue3_router.md.f8e4c12f.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"vue-router","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/router.md","lastUpdated":1679905840000}'),l={name:"guide/vue3/router.md"},p=o(`

vue-router

本案例采用 hash 模式,开发者根据需求修改 mode base

注意:如果你使用了 history 模式, vue.config.js 中的 publicPath 要做对应的修改

前往:vue.config.js 基础配置

javascript
import Vue from "vue";
+import{_ as s,o as a,c as n,R as o}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"vue-router","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/router.md","filePath":"guide/vue3/router.md","lastUpdated":1685617392000}'),l={name:"guide/vue3/router.md"},p=o(`

vue-router

本案例采用 hash 模式,开发者根据需求修改 mode base

注意:如果你使用了 history 模式, vue.config.js 中的 publicPath 要做对应的修改

前往:vue.config.js 基础配置

javascript
import Vue from "vue";
 import { createRouter, createWebHistory, Router } from "vue-router";
 
 Vue.use(Router);
@@ -16,5 +16,4 @@ import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.522debca.js";const i=
   routes: routes,
 });
 
-export default router;
-
`,5),e=[p];function t(r,c,D,y,F,A){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{i as __pageData,u as default}; +export default router;
`,5),e=[p];function t(r,c,D,y,F,A){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue3_router.md.f8e4c12f.lean.js b/assets/guide_vue3_router.md.f8e4c12f.lean.js new file mode 100644 index 0000000..651eabe --- /dev/null +++ b/assets/guide_vue3_router.md.f8e4c12f.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as o}from"./chunks/framework.6241eaf2.js";const i=JSON.parse('{"title":"vue-router","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/router.md","filePath":"guide/vue3/router.md","lastUpdated":1685617392000}'),l={name:"guide/vue3/router.md"},p=o("",5),e=[p];function t(r,c,D,y,F,A){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue3_router.md.fdac12cd.lean.js b/assets/guide_vue3_router.md.fdac12cd.lean.js deleted file mode 100644 index 4c228da..0000000 --- a/assets/guide_vue3_router.md.fdac12cd.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.522debca.js";const i=JSON.parse('{"title":"vue-router","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/router.md","lastUpdated":1679905840000}'),l={name:"guide/vue3/router.md"},p=o("",5),e=[p];function t(r,c,D,y,F,A){return a(),n("div",null,e)}const u=s(l,[["render",t]]);export{i as __pageData,u as default}; diff --git a/assets/guide_vue3_start.md.1d5e24be.js b/assets/guide_vue3_start.md.1d5e24be.js new file mode 100644 index 0000000..a1795f2 --- /dev/null +++ b/assets/guide_vue3_start.md.1d5e24be.js @@ -0,0 +1,8 @@ +import{_ as s,o as a,c as n,R as t}from"./chunks/framework.6241eaf2.js";const y=JSON.parse('{"title":"启动项目","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/start.md","filePath":"guide/vue3/start.md","lastUpdated":1685617392000}'),e={name:"guide/vue3/start.md"},l=t(`

启动项目

js
// 拉取项目
+git clone https://github.com/sunniejs/vue-h5-template
+
+// 安装依赖
+yarn install
+
+// 启动项目
+yarn dev
`,2),o=[l];function p(c,i,r,d,_,u){return a(),n("div",null,o)}const m=s(e,[["render",p]]);export{y as __pageData,m as default}; diff --git a/assets/guide_vue3_start.md.1d5e24be.lean.js b/assets/guide_vue3_start.md.1d5e24be.lean.js new file mode 100644 index 0000000..3af195e --- /dev/null +++ b/assets/guide_vue3_start.md.1d5e24be.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as t}from"./chunks/framework.6241eaf2.js";const y=JSON.parse('{"title":"启动项目","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/start.md","filePath":"guide/vue3/start.md","lastUpdated":1685617392000}'),e={name:"guide/vue3/start.md"},l=t("",2),o=[l];function p(c,i,r,d,_,u){return a(),n("div",null,o)}const m=s(e,[["render",p]]);export{y as __pageData,m as default}; diff --git a/assets/guide_vue3_start.md.8ee8532d.js b/assets/guide_vue3_start.md.8ee8532d.js deleted file mode 100644 index a1ff2a6..0000000 --- a/assets/guide_vue3_start.md.8ee8532d.js +++ /dev/null @@ -1,11 +0,0 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.522debca.js";const h=JSON.parse('{"title":"启动项目","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/start.md","lastUpdated":1679905840000}'),t={name:"guide/vue3/start.md"},l=e(`

启动项目

js

-// 拉取项目
-git clone https://github.com/sunniejs/vue-h5-template
-
-// 安装依赖
-yarn install
-
-// 启动项目
-yarn dev
-
-
`,2),p=[l];function o(c,i,r,_,d,u){return a(),n("div",null,p)}const m=s(t,[["render",o]]);export{h as __pageData,m as default}; diff --git a/assets/guide_vue3_start.md.8ee8532d.lean.js b/assets/guide_vue3_start.md.8ee8532d.lean.js deleted file mode 100644 index f9d055b..0000000 --- a/assets/guide_vue3_start.md.8ee8532d.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.522debca.js";const h=JSON.parse('{"title":"启动项目","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/start.md","lastUpdated":1679905840000}'),t={name:"guide/vue3/start.md"},l=e("",2),p=[l];function o(c,i,r,_,d,u){return a(),n("div",null,p)}const m=s(t,[["render",o]]);export{h as __pageData,m as default}; diff --git a/assets/guide_vue3_ui.md.433fee9a.js b/assets/guide_vue3_ui.md.433fee9a.js deleted file mode 100644 index 19238ad..0000000 --- a/assets/guide_vue3_ui.md.433fee9a.js +++ /dev/null @@ -1,22 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"多 UI 组件库供选择","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/ui.md","lastUpdated":1679905840000}'),p={name:"guide/vue3/ui.md"},o=l(`

多 UI 组件库供选择

Vite 构建工具,使用 vite-plugin-style-import 和 unplugin-vue-components/vite 实现按需引入。

安装插件

bash
yarn add vite-plugin-style-import -D
-yarn add unplugin-vue-components/vite -D
-

使用组件库

nutUI 没有按需加载的 resolvers,style 需要自己配置按需加载

config/vite/plugins/styleImport.ts 设置

javascript
  // 按需加载样式文件
-  ...
-    createStyleImportPlugin({
-      resolves: [NutuiResolve()],
-    }),
-  ...
-

项目在 src/plugins/nutUI.ts 下统一管理组件,用哪个引入哪个,无需在页面里重复引用

javascript
// 按需全局引入nutUI组件
-import Vue from "vue";
-import { Button, Cell, CellGroup } from "@nutui/nutui";
-export const nutUiComponents = [Button, Cell, CellGroup];
-
-// 在main.ts文件中引入
-nutUiComponents.forEach((item) => {
-  app.use(item);
-});
-

vant 和 varlet 可以使用组件按需加载

config/vite/plugins/component.ts

javascript
import { VueUseComponentsResolver, VantResolver, VarletUIResolver } from 'unplugin-vue-components/resolvers';
-...
-resolvers: [VantResolver(), VarletUIResolver()],
-...
-

不需要某个组件库

nutUI 需删除src/plugins/nutUI.tsmain.ts文件下的引入

vant 和 varlet 只需删除对应的 resolvers 即可

删除后需全局搜索删除不需要的组件,避免报错

参考文档

`,19),e=[o];function t(r,c,i,D,y,F){return a(),n("div",null,e)}const u=s(p,[["render",t]]);export{A as __pageData,u as default}; diff --git a/assets/guide_vue3_ui.md.433fee9a.lean.js b/assets/guide_vue3_ui.md.433fee9a.lean.js deleted file mode 100644 index 771f5e1..0000000 --- a/assets/guide_vue3_ui.md.433fee9a.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"多 UI 组件库供选择","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/ui.md","lastUpdated":1679905840000}'),p={name:"guide/vue3/ui.md"},o=l("",19),e=[o];function t(r,c,i,D,y,F){return a(),n("div",null,e)}const u=s(p,[["render",t]]);export{A as __pageData,u as default}; diff --git a/assets/guide_vue3_ui.md.6b9ab25c.js b/assets/guide_vue3_ui.md.6b9ab25c.js new file mode 100644 index 0000000..1e59ec7 --- /dev/null +++ b/assets/guide_vue3_ui.md.6b9ab25c.js @@ -0,0 +1,18 @@ +import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"多 UI 组件库供选择","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/ui.md","filePath":"guide/vue3/ui.md","lastUpdated":1685617392000}'),o={name:"guide/vue3/ui.md"},p=l(`

多 UI 组件库供选择

Vite 构建工具,使用 vite-plugin-style-import 和 unplugin-vue-components/vite 实现按需引入。

安装插件

bash
yarn add vite-plugin-style-import -D
+yarn add unplugin-vue-components/vite -D

使用组件库

nutUI 没有按需加载的 resolvers,style 需要自己配置按需加载

config/vite/plugins/styleImport.ts 设置

javascript
// 按需加载样式文件
+  ...
+    createStyleImportPlugin({
+      resolves: [NutuiResolve()],
+    }),
+  ...

项目在 src/plugins/nutUI.ts 下统一管理组件,用哪个引入哪个,无需在页面里重复引用

javascript
// 按需全局引入nutUI组件
+import Vue from "vue";
+import { Button, Cell, CellGroup } from "@nutui/nutui";
+export const nutUiComponents = [Button, Cell, CellGroup];
+
+// 在main.ts文件中引入
+nutUiComponents.forEach((item) => {
+  app.use(item);
+});

vant 和 varlet 可以使用组件按需加载

config/vite/plugins/component.ts

javascript
import { VueUseComponentsResolver, VantResolver, VarletUIResolver } from 'unplugin-vue-components/resolvers';
+...
+resolvers: [VantResolver(), VarletUIResolver()],
+...

不需要某个组件库

nutUI 需删除src/plugins/nutUI.tsmain.ts文件下的引入

vant 和 varlet 只需删除对应的 resolvers 即可

删除后需全局搜索删除不需要的组件,避免报错

参考文档

`,19),e=[p];function t(r,c,i,y,D,C){return a(),n("div",null,e)}const u=s(o,[["render",t]]);export{A as __pageData,u as default}; diff --git a/assets/guide_vue3_ui.md.6b9ab25c.lean.js b/assets/guide_vue3_ui.md.6b9ab25c.lean.js new file mode 100644 index 0000000..ac5bcb1 --- /dev/null +++ b/assets/guide_vue3_ui.md.6b9ab25c.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"多 UI 组件库供选择","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/ui.md","filePath":"guide/vue3/ui.md","lastUpdated":1685617392000}'),o={name:"guide/vue3/ui.md"},p=l("",19),e=[p];function t(r,c,i,y,D,C){return a(),n("div",null,e)}const u=s(o,[["render",t]]);export{A as __pageData,u as default}; diff --git a/assets/guide_vue3_viewport.md.3fbaef14.js b/assets/guide_vue3_viewport.md.25648aaa.js similarity index 69% rename from assets/guide_vue3_viewport.md.3fbaef14.js rename to assets/guide_vue3_viewport.md.25648aaa.js index a5e7dc4..65c69a1 100644 --- a/assets/guide_vue3_viewport.md.3fbaef14.js +++ b/assets/guide_vue3_viewport.md.25648aaa.js @@ -1,4 +1,4 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"viewport 适配方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/viewport.md","lastUpdated":1679905840000}'),p={name:"guide/vue3/viewport.md"},o=l(`

viewport 适配方案

不用担心,项目已经配置好了 viewport 适配,下面仅做介绍:

  • cnjm-postcss-px-to-viewport 是一款 postcss 插件,用于将单位转化为 vw, 现在很多浏览器对vw的支持都很好,适配首选方案。

PostCSS 配置

下面提供了一份基本的 postcss 配置,可以在此配置的基础上根据项目需求进行修改

javascript
// https://github.com/michael-ciniawsky/postcss-load-config
+import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"viewport 适配方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/viewport.md","filePath":"guide/vue3/viewport.md","lastUpdated":1685617392000}'),p={name:"guide/vue3/viewport.md"},o=l(`

viewport 适配方案

不用担心,项目已经配置好了 viewport 适配,下面仅做介绍:

  • cnjm-postcss-px-to-viewport 是一款 postcss 插件,用于将单位转化为 vw, 现在很多浏览器对vw的支持都很好,适配首选方案。

PostCSS 配置

下面提供了一份基本的 postcss 配置,可以在此配置的基础上根据项目需求进行修改

javascript
// https://github.com/michael-ciniawsky/postcss-load-config
 module.exports = {
   plugins: {
     autoprefixer: { overrideBrowserslist: ['Android 4.1', 'iOS 7.1', 'Chrome > 31', 'ff > 31', 'ie >= 8'] },
@@ -20,9 +20,7 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const A=
         return designWidth;
       },
   },
-};
-

新手必看,老鸟跳过

很多小伙伴会问我,适配的问题, 因为我们使用的是 Vant UI,所以必须根据 Vant UI 375 的设计规范走,一般我们的设计会将 UI 图上传到蓝湖,我们就可以需要的尺寸了。下面就大概普及一下 rem。

我们知道 1rem 等于 html 根元素设定的 font-sizepx 值。Vant UI 设置 rootValue: 37.5 , 你可以看到在 iPhone 6 下看到 ( 1rem 等于 37.5px ):

html
<html data-dpr="1" style="font-size: 37.5px;"></html>
-

切换不同的机型,根元素可能会有不同的 font-size 。当你写 css px 样式时,会被程序换算成 rem 达到适配。

因为我们用了 Vant 的组件,需要按照 rootValue: 37.5 来写样式。

举个例子:设计给了你一张 750px * 1334px 图片,在 iPhone6 上铺满屏幕, 其他机型适配。

  • rootValue: 75 , 样式 width: 750px;height: 1334px; 图片会撑满 iPhone6 屏幕,这个时候切换其他机型,图片也会跟着撑满。
  • rootValue: 37.5 的时候,样式 width: 375px;height: 667px; 图片会撑满 iPhone6 屏幕。

也就是 iphone 6 下 375px 宽度写 CSS。其他的你就可以根据你设计图,去写对应的样式就可以了。

当然,想要撑满屏幕你可以使用 100%,这里只是举例说明。

html
<img class="image" src="https://www.sunniejs.cn/static/weapp/logo.png" />
+};

新手必看,老鸟跳过

很多小伙伴会问我,适配的问题, 因为我们使用的是 Vant UI,所以必须根据 Vant UI 375 的设计规范走,一般我们的设计会将 UI 图上传到蓝湖,我们就可以需要的尺寸了。下面就大概普及一下 rem。

我们知道 1rem 等于 html 根元素设定的 font-sizepx 值。Vant UI 设置 rootValue: 37.5 , 你可以看到在 iPhone 6 下看到 ( 1rem 等于 37.5px ):

html
<html data-dpr="1" style="font-size: 37.5px;"></html>

切换不同的机型,根元素可能会有不同的 font-size 。当你写 css px 样式时,会被程序换算成 rem 达到适配。

因为我们用了 Vant 的组件,需要按照 rootValue: 37.5 来写样式。

举个例子:设计给了你一张 750px * 1334px 图片,在 iPhone6 上铺满屏幕, 其他机型适配。

  • rootValue: 75 , 样式 width: 750px;height: 1334px; 图片会撑满 iPhone6 屏幕,这个时候切换其他机型,图片也会跟着撑满。
  • rootValue: 37.5 的时候,样式 width: 375px;height: 667px; 图片会撑满 iPhone6 屏幕。

也就是 iphone 6 下 375px 宽度写 CSS。其他的你就可以根据你设计图,去写对应的样式就可以了。

当然,想要撑满屏幕你可以使用 100%,这里只是举例说明。

html
<img class="image" src="https://www.sunniejs.cn/static/weapp/logo.png" />
 
 <style>
   /* rootValue: 75 */
@@ -36,5 +34,4 @@ import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const A=
     width: 375px;
     height: 667px;
   }
-</style>
-
`,17),e=[o];function t(c,r,D,y,F,C){return n(),a("div",null,e)}const d=s(p,[["render",t]]);export{A as __pageData,d as default}; +</style>
`,17),e=[o];function t(c,r,D,y,F,C){return n(),a("div",null,e)}const d=s(p,[["render",t]]);export{A as __pageData,d as default}; diff --git a/assets/guide_vue3_viewport.md.25648aaa.lean.js b/assets/guide_vue3_viewport.md.25648aaa.lean.js new file mode 100644 index 0000000..8e14d4f --- /dev/null +++ b/assets/guide_vue3_viewport.md.25648aaa.lean.js @@ -0,0 +1 @@ +import{_ as s,o as n,c as a,R as l}from"./chunks/framework.6241eaf2.js";const A=JSON.parse('{"title":"viewport 适配方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/viewport.md","filePath":"guide/vue3/viewport.md","lastUpdated":1685617392000}'),p={name:"guide/vue3/viewport.md"},o=l("",17),e=[o];function t(c,r,D,y,F,C){return n(),a("div",null,e)}const d=s(p,[["render",t]]);export{A as __pageData,d as default}; diff --git a/assets/guide_vue3_viewport.md.3fbaef14.lean.js b/assets/guide_vue3_viewport.md.3fbaef14.lean.js deleted file mode 100644 index c79e9ab..0000000 --- a/assets/guide_vue3_viewport.md.3fbaef14.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as n,c as a,Q as l}from"./chunks/framework.522debca.js";const A=JSON.parse('{"title":"viewport 适配方案","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/viewport.md","lastUpdated":1679905840000}'),p={name:"guide/vue3/viewport.md"},o=l("",17),e=[o];function t(c,r,D,y,F,C){return n(),a("div",null,e)}const d=s(p,[["render",t]]);export{A as __pageData,d as default}; diff --git a/assets/guide_vue3_vite.md.52761283.js b/assets/guide_vue3_vite.md.52761283.js new file mode 100644 index 0000000..8f8e5a0 --- /dev/null +++ b/assets/guide_vue3_vite.md.52761283.js @@ -0,0 +1 @@ +import{_ as e,o as i,c as t,R as l}from"./chunks/framework.6241eaf2.js";const g=JSON.parse('{"title":"vite","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/vite.md","filePath":"guide/vue3/vite.md","lastUpdated":1685617392000}'),a={name:"guide/vue3/vite.md"},n=l('

vite

基于原生 ES 模块提供了丰富的内建功能,如速度快到惊人的模块热更新(HMR),使用 Rollup 打包你的代码,并且它是预配置的,可输出用于生产环境的高度优化过的静态资源。更多关于vite

模版集成了如下的 vite 插件

  • unplugin-auto-import(按需加载,自动引入)
  • unplugin-vue-components(按需加载,自动引入组件)
  • vite-plugin-compression(开启.gz 压缩)
  • vite-plugin-eruda(控制台,方便移动端调试)
  • vite-plugin-imagemin(图片压缩)
  • vite-plugin-mock(引入 mockjs,本地模拟接口)
  • vite-plugin-pages(动态生成路由)
  • vite-plugin-progress(构建显示进度条)
  • vite-plugin-restart(监听配置文件修改自动重启 Vite)
  • vite-plugin-style-import(按需引入样式文件)
  • vite-plugin-svg-icons(加载 SVG 文件,自动引入)
',4),o=[n];function r(s,p,u,v,_,c){return i(),t("div",null,o)}const m=e(a,[["render",r]]);export{g as __pageData,m as default}; diff --git a/assets/guide_vue3_vite.md.52761283.lean.js b/assets/guide_vue3_vite.md.52761283.lean.js new file mode 100644 index 0000000..cc06fe0 --- /dev/null +++ b/assets/guide_vue3_vite.md.52761283.lean.js @@ -0,0 +1 @@ +import{_ as e,o as i,c as t,R as l}from"./chunks/framework.6241eaf2.js";const g=JSON.parse('{"title":"vite","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/vite.md","filePath":"guide/vue3/vite.md","lastUpdated":1685617392000}'),a={name:"guide/vue3/vite.md"},n=l("",4),o=[n];function r(s,p,u,v,_,c){return i(),t("div",null,o)}const m=e(a,[["render",r]]);export{g as __pageData,m as default}; diff --git a/assets/guide_vue3_vite.md.58cc24bc.js b/assets/guide_vue3_vite.md.58cc24bc.js deleted file mode 100644 index be76757..0000000 --- a/assets/guide_vue3_vite.md.58cc24bc.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,o as i,c as t,Q as l}from"./chunks/framework.522debca.js";const g=JSON.parse('{"title":"vite","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/vite.md","lastUpdated":1679905840000}'),a={name:"guide/vue3/vite.md"},n=l('

vite

基于原生 ES 模块提供了丰富的内建功能,如速度快到惊人的模块热更新(HMR),使用 Rollup 打包你的代码,并且它是预配置的,可输出用于生产环境的高度优化过的静态资源。更多关于vite

模版集成了如下的 vite 插件

  • unplugin-auto-import(按需加载,自动引入)
  • unplugin-vue-components(按需加载,自动引入组件)
  • vite-plugin-compression(开启.gz 压缩)
  • vite-plugin-eruda(控制台,方便移动端调试)
  • vite-plugin-imagemin(图片压缩)
  • vite-plugin-mock(引入 mockjs,本地模拟接口)
  • vite-plugin-pages(动态生成路由)
  • vite-plugin-progress(构建显示进度条)
  • vite-plugin-restart(监听配置文件修改自动重启 Vite)
  • vite-plugin-style-import(按需引入样式文件)
  • vite-plugin-svg-icons(加载 SVG 文件,自动引入)
',4),o=[n];function r(s,p,u,_,c,v){return i(),t("div",null,o)}const m=e(a,[["render",r]]);export{g as __pageData,m as default}; diff --git a/assets/guide_vue3_vite.md.58cc24bc.lean.js b/assets/guide_vue3_vite.md.58cc24bc.lean.js deleted file mode 100644 index 315103a..0000000 --- a/assets/guide_vue3_vite.md.58cc24bc.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,o as i,c as t,Q as l}from"./chunks/framework.522debca.js";const g=JSON.parse('{"title":"vite","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue3/vite.md","lastUpdated":1679905840000}'),a={name:"guide/vue3/vite.md"},n=l("",4),o=[n];function r(s,p,u,_,c,v){return i(),t("div",null,o)}const m=e(a,[["render",r]]);export{g as __pageData,m as default}; diff --git a/assets/index.md.496a2785.lean.js b/assets/index.md.87fecdd2.js similarity index 73% rename from assets/index.md.496a2785.lean.js rename to assets/index.md.87fecdd2.js index f879834..9f1681b 100644 --- a/assets/index.md.496a2785.lean.js +++ b/assets/index.md.87fecdd2.js @@ -1 +1 @@ -import{_ as e,o as t,c as i}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"Vue-H5-Template","titleTemplate":"一个快速开发的vue h5移动端脚手架","description":"","frontmatter":{"layout":"home","title":"Vue-H5-Template","titleTemplate":"一个快速开发的vue h5移动端脚手架","hero":{"name":"Vue-H5-Template","text":"一个快速开发的Vue H5移动端脚手架","image":{"src":"https://cdn.jsdelivr.net/gh/fonghehe/picture/vue-h5-template/logo.png","alt":"sunnie"},"actions":[{"theme":"brand","text":"开始","link":"/guide/"},{"theme":"alt","text":"Github仓库","link":"https://github.com/sunniejs/vue-h5-template"}]},"features":[{"icon":"💡","title":"开箱即用","details":"集成vue2、vue3的移动端快速开发模版,学习成本低,易上手"},{"icon":"📦","title":"代码规范","details":"完整的eslint、prettier、stylelint规范,加上husky,帮助你更好的管理代码"},{"icon":"🛠️","title":"配置优化","details":"完整配置的vue脚手架插件和优化,让你专注于业务开发,更高效"},{"icon":"⚙️","title":"More","details":"加入我们,更多能力等你挖掘...."}]},"headers":[],"relativePath":"index.md","lastUpdated":1679905840000}'),a={name:"index.md"};function n(l,s,o,r,c,p){return t(),i("div")}const m=e(a,[["render",n]]);export{d as __pageData,m as default}; +import{_ as e,o as t,c as i}from"./chunks/framework.6241eaf2.js";const u=JSON.parse('{"title":"Vue-H5-Template","titleTemplate":"一个快速开发的vue h5移动端脚手架","description":"","frontmatter":{"layout":"home","title":"Vue-H5-Template","titleTemplate":"一个快速开发的vue h5移动端脚手架","hero":{"name":"Vue-H5-Template","text":"一个快速开发的Vue H5移动端脚手架","image":{"src":"https://cdn.jsdelivr.net/gh/fonghehe/picture/vue-h5-template/logo.png","alt":"sunnie"},"actions":[{"theme":"brand","text":"开始","link":"/guide/"},{"theme":"alt","text":"Github仓库","link":"https://github.com/sunniejs/vue-h5-template"}]},"features":[{"icon":"💡","title":"开箱即用","details":"集成vue2、vue3的移动端快速开发模版,学习成本低,易上手"},{"icon":"📦","title":"代码规范","details":"完整的eslint、prettier、stylelint规范,加上husky,帮助你更好的管理代码"},{"icon":"🛠️","title":"配置优化","details":"完整配置的vue脚手架插件和优化,让你专注于业务开发,更高效"},{"icon":"⚙️","title":"More","details":"加入我们,更多能力等你挖掘...."}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1685617392000}'),a={name:"index.md"};function n(l,s,o,r,c,d){return t(),i("div")}const m=e(a,[["render",n]]);export{u as __pageData,m as default}; diff --git a/assets/index.md.496a2785.js b/assets/index.md.87fecdd2.lean.js similarity index 73% rename from assets/index.md.496a2785.js rename to assets/index.md.87fecdd2.lean.js index f879834..9f1681b 100644 --- a/assets/index.md.496a2785.js +++ b/assets/index.md.87fecdd2.lean.js @@ -1 +1 @@ -import{_ as e,o as t,c as i}from"./chunks/framework.522debca.js";const d=JSON.parse('{"title":"Vue-H5-Template","titleTemplate":"一个快速开发的vue h5移动端脚手架","description":"","frontmatter":{"layout":"home","title":"Vue-H5-Template","titleTemplate":"一个快速开发的vue h5移动端脚手架","hero":{"name":"Vue-H5-Template","text":"一个快速开发的Vue H5移动端脚手架","image":{"src":"https://cdn.jsdelivr.net/gh/fonghehe/picture/vue-h5-template/logo.png","alt":"sunnie"},"actions":[{"theme":"brand","text":"开始","link":"/guide/"},{"theme":"alt","text":"Github仓库","link":"https://github.com/sunniejs/vue-h5-template"}]},"features":[{"icon":"💡","title":"开箱即用","details":"集成vue2、vue3的移动端快速开发模版,学习成本低,易上手"},{"icon":"📦","title":"代码规范","details":"完整的eslint、prettier、stylelint规范,加上husky,帮助你更好的管理代码"},{"icon":"🛠️","title":"配置优化","details":"完整配置的vue脚手架插件和优化,让你专注于业务开发,更高效"},{"icon":"⚙️","title":"More","details":"加入我们,更多能力等你挖掘...."}]},"headers":[],"relativePath":"index.md","lastUpdated":1679905840000}'),a={name:"index.md"};function n(l,s,o,r,c,p){return t(),i("div")}const m=e(a,[["render",n]]);export{d as __pageData,m as default}; +import{_ as e,o as t,c as i}from"./chunks/framework.6241eaf2.js";const u=JSON.parse('{"title":"Vue-H5-Template","titleTemplate":"一个快速开发的vue h5移动端脚手架","description":"","frontmatter":{"layout":"home","title":"Vue-H5-Template","titleTemplate":"一个快速开发的vue h5移动端脚手架","hero":{"name":"Vue-H5-Template","text":"一个快速开发的Vue H5移动端脚手架","image":{"src":"https://cdn.jsdelivr.net/gh/fonghehe/picture/vue-h5-template/logo.png","alt":"sunnie"},"actions":[{"theme":"brand","text":"开始","link":"/guide/"},{"theme":"alt","text":"Github仓库","link":"https://github.com/sunniejs/vue-h5-template"}]},"features":[{"icon":"💡","title":"开箱即用","details":"集成vue2、vue3的移动端快速开发模版,学习成本低,易上手"},{"icon":"📦","title":"代码规范","details":"完整的eslint、prettier、stylelint规范,加上husky,帮助你更好的管理代码"},{"icon":"🛠️","title":"配置优化","details":"完整配置的vue脚手架插件和优化,让你专注于业务开发,更高效"},{"icon":"⚙️","title":"More","details":"加入我们,更多能力等你挖掘...."}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1685617392000}'),a={name:"index.md"};function n(l,s,o,r,c,d){return t(),i("div")}const m=e(a,[["render",n]]);export{u as __pageData,m as default}; diff --git a/assets/style.4618a6a3.css b/assets/style.4618a6a3.css new file mode 100644 index 0000000..59060cb --- /dev/null +++ b/assets/style.4618a6a3.css @@ -0,0 +1 @@ +@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-cyrillic.5f2c6c8c.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-cyrillic-ext.e75737ce.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 var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-greek.d5a6d92a.woff2) format("woff2");unicode-range:U+0370-03FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-greek-ext.ab0619bc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-latin.2ed14f66.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,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 var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-latin-ext.0030eebd.woff2) format("woff2");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-vietnamese.14ce25a6.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-cyrillic.ea42a392.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-cyrillic-ext.33bd5a8e.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 var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-greek.8f4463c4.woff2) format("woff2");unicode-range:U+0370-03FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-greek-ext.4fbe9427.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-latin.bd3b6f56.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,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 var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-latin-ext.bd8920cc.woff2) format("woff2");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-vietnamese.6ce511fb.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chinese Quotes;src:local("PingFang SC Regular"),local("PingFang SC"),local("SimHei"),local("Source Han Sans SC");unicode-range:U+2018,U+2019,U+201C,U+201D}:root{--vp-c-white: #ffffff;--vp-c-black: #000000;--vp-c-gray: #8e8e93;--vp-c-text-light-1: rgba(60, 60, 67);--vp-c-text-light-2: rgba(60, 60, 67, .75);--vp-c-text-light-3: rgba(60, 60, 67, .33);--vp-c-text-dark-1: rgba(255, 255, 245, .86);--vp-c-text-dark-2: rgba(235, 235, 245, .6);--vp-c-text-dark-3: rgba(235, 235, 245, .38);--vp-c-green: #10b981;--vp-c-green-light: #34d399;--vp-c-green-lighter: #6ee7b7;--vp-c-green-dark: #059669;--vp-c-green-darker: #047857;--vp-c-green-dimm-1: rgba(16, 185, 129, .05);--vp-c-green-dimm-2: rgba(16, 185, 129, .2);--vp-c-green-dimm-3: rgba(16, 185, 129, .5);--vp-c-yellow: #d97706;--vp-c-yellow-light: #f59e0b;--vp-c-yellow-lighter: #fbbf24;--vp-c-yellow-dark: #b45309;--vp-c-yellow-darker: #92400e;--vp-c-yellow-dimm-1: rgba(234, 179, 8, .05);--vp-c-yellow-dimm-2: rgba(234, 179, 8, .2);--vp-c-yellow-dimm-3: rgba(234, 179, 8, .5);--vp-c-red: #f43f5e;--vp-c-red-light: #fb7185;--vp-c-red-lighter: #fda4af;--vp-c-red-dark: #e11d48;--vp-c-red-darker: #be123c;--vp-c-red-dimm-1: rgba(244, 63, 94, .05);--vp-c-red-dimm-2: rgba(244, 63, 94, .2);--vp-c-red-dimm-3: rgba(244, 63, 94, .5);--vp-c-sponsor: #db2777}:root{--vp-c-bg: #ffffff;--vp-c-bg-elv: #ffffff;--vp-c-bg-elv-up: #ffffff;--vp-c-bg-elv-down: #f6f6f7;--vp-c-bg-elv-mute: #f6f6f7;--vp-c-bg-soft: #f6f6f7;--vp-c-bg-soft-up: #f9f9fa;--vp-c-bg-soft-down: #e3e3e5;--vp-c-bg-soft-mute: #e3e3e5;--vp-c-bg-alt: #f6f6f7;--vp-c-border: rgba(60, 60, 67, .29);--vp-c-divider: rgba(60, 60, 67, .12);--vp-c-gutter: rgba(60, 60, 67, .12);--vp-c-neutral: var(--vp-c-black);--vp-c-neutral-inverse: var(--vp-c-white);--vp-c-text-1: var(--vp-c-text-light-1);--vp-c-text-2: var(--vp-c-text-light-2);--vp-c-text-3: var(--vp-c-text-light-3);--vp-c-text-inverse-1: var(--vp-c-text-dark-1);--vp-c-text-inverse-2: var(--vp-c-text-dark-2);--vp-c-text-inverse-3: var(--vp-c-text-dark-3);--vp-c-text-code: #476582;--vp-c-brand: var(--vp-c-green);--vp-c-brand-light: var(--vp-c-green-light);--vp-c-brand-lighter: var(--vp-c-green-lighter);--vp-c-brand-dark: var(--vp-c-green-dark);--vp-c-brand-darker: var(--vp-c-green-darker);--vp-c-mute: #f6f6f7;--vp-c-mute-light: #f9f9fc;--vp-c-mute-lighter: #ffffff;--vp-c-mute-dark: #e3e3e5;--vp-c-mute-darker: #d7d7d9}.dark{--vp-c-bg: #1e1e20;--vp-c-bg-elv: #252529;--vp-c-bg-elv-up: #313136;--vp-c-bg-elv-down: #1e1e20;--vp-c-bg-elv-mute: #313136;--vp-c-bg-soft: #252529;--vp-c-bg-soft-up: #313136;--vp-c-bg-soft-down: #1e1e20;--vp-c-bg-soft-mute: #313136;--vp-c-bg-alt: #161618;--vp-c-border: rgba(82, 82, 89, .68);--vp-c-divider: rgba(82, 82, 89, .32);--vp-c-gutter: #000000;--vp-c-neutral: var(--vp-c-white);--vp-c-neutral-inverse: var(--vp-c-black);--vp-c-text-1: var(--vp-c-text-dark-1);--vp-c-text-2: var(--vp-c-text-dark-2);--vp-c-text-3: var(--vp-c-text-dark-3);--vp-c-text-inverse-1: var(--vp-c-text-light-1);--vp-c-text-inverse-2: var(--vp-c-text-light-2);--vp-c-text-inverse-3: var(--vp-c-text-light-3);--vp-c-text-code: #c9def1;--vp-c-mute: #313136;--vp-c-mute-light: #3a3a3c;--vp-c-mute-lighter: #505053;--vp-c-mute-dark: #2c2c30;--vp-c-mute-darker: #252529}:root{--vp-font-family-base: "Chinese Quotes", "Inter var", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--vp-font-family-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}: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-local-nav: 10;--vp-z-index-nav: 20;--vp-z-index-layout-top: 30;--vp-z-index-backdrop: 40;--vp-z-index-sidebar: 50;--vp-z-index-footer: 60}:root{--vp-icon-copy: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2'/%3E%3C/svg%3E");--vp-icon-copied: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2m-6 9 2 2 4-4'/%3E%3C/svg%3E")}:root{--vp-layout-max-width: 1440px}:root{--vp-header-anchor-symbol: "#"}:root{--vp-code-line-height: 1.7;--vp-code-font-size: .875em;--vp-c-code-dimm: var(--vp-c-text-dark-3);--vp-code-block-color: var(--vp-c-text-dark-1);--vp-code-block-bg: #292b30;--vp-code-block-bg-light: #1e1e20;--vp-code-block-divider-color: #000000;--vp-code-line-highlight-color: rgba(0, 0, 0, .5);--vp-code-line-number-color: var(--vp-c-code-dimm);--vp-code-line-diff-add-color: var(--vp-c-green-dimm-2);--vp-code-line-diff-add-symbol-color: var(--vp-c-green);--vp-code-line-diff-remove-color: var(--vp-c-red-dimm-2);--vp-code-line-diff-remove-symbol-color: var(--vp-c-red);--vp-code-line-warning-color: var(--vp-c-yellow-dimm-2);--vp-code-line-error-color: var(--vp-c-red-dimm-2);--vp-code-copy-code-border-color: transparent;--vp-code-copy-code-bg: var(--vp-code-block-bg-light);--vp-code-copy-code-hover-border-color: var(--vp-c-divider);--vp-code-copy-code-hover-bg: var(--vp-code-block-bg-light);--vp-code-copy-code-active-text: var(--vp-c-text-dark-2);--vp-code-tab-divider: var(--vp-code-block-divider-color);--vp-code-tab-text-color: var(--vp-c-text-dark-2);--vp-code-tab-bg: var(--vp-code-block-bg);--vp-code-tab-hover-text-color: var(--vp-c-text-dark-1);--vp-code-tab-active-text-color: var(--vp-c-text-dark-1);--vp-code-tab-active-bar-color: var(--vp-c-brand)}.dark{--vp-code-block-bg: #161618}:root:not(.dark) .vp-adaptive-theme{--vp-c-code-dimm: var(--vp-c-text-2);--vp-code-block-color: var(--vp-c-text-1);--vp-code-block-bg: #f8f8f8;--vp-code-block-divider-color: var(--vp-c-divider);--vp-code-line-highlight-color: #ececec;--vp-code-line-number-color: var(--vp-c-code-dimm);--vp-code-copy-code-bg: #e2e2e2;--vp-code-copy-code-hover-bg: #dcdcdc;--vp-code-copy-code-active-text: var(--vp-c-text-2);--vp-code-tab-divider: var(--vp-c-divider);--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)}:root{--vp-button-brand-border: var(--vp-c-brand-lighter);--vp-button-brand-text: var(--vp-c-white);--vp-button-brand-bg: var(--vp-c-brand);--vp-button-brand-hover-border: var(--vp-c-brand-lighter);--vp-button-brand-hover-text: var(--vp-c-white);--vp-button-brand-hover-bg: var(--vp-c-brand-dark);--vp-button-brand-active-border: var(--vp-c-brand-lighter);--vp-button-brand-active-text: var(--vp-c-white);--vp-button-brand-active-bg: var(--vp-c-brand-darker);--vp-button-alt-border: var(--vp-c-border);--vp-button-alt-text: var(--vp-c-neutral);--vp-button-alt-bg: var(--vp-c-mute);--vp-button-alt-hover-border: var(--vp-c-border);--vp-button-alt-hover-text: var(--vp-c-neutral);--vp-button-alt-hover-bg: var(--vp-c-mute-dark);--vp-button-alt-active-border: var(--vp-c-border);--vp-button-alt-active-text: var(--vp-c-neutral);--vp-button-alt-active-bg: var(--vp-c-mute-darker);--vp-button-sponsor-border: var(--vp-c-gray-light-3);--vp-button-sponsor-text: var(--vp-c-text-light-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}.dark{--vp-button-sponsor-border: var(--vp-c-gray-dark-1);--vp-button-sponsor-text: var(--vp-c-text-dark-2)}:root{--vp-custom-block-font-size: 14px;--vp-custom-block-code-font-size: 13px;--vp-custom-block-info-border: var(--vp-c-border);--vp-custom-block-info-text: var(--vp-c-text-2);--vp-custom-block-info-bg: var(--vp-c-bg-soft-up);--vp-custom-block-info-code-bg: var(--vp-c-bg-soft);--vp-custom-block-tip-border: var(--vp-c-green);--vp-custom-block-tip-text: var(--vp-c-green-dark);--vp-custom-block-tip-bg: var(--vp-c-bg-soft-up);--vp-custom-block-tip-code-bg: var(--vp-c-bg-soft);--vp-custom-block-warning-border: var(--vp-c-yellow);--vp-custom-block-warning-text: var(--vp-c-yellow);--vp-custom-block-warning-bg: var(--vp-c-bg-soft-up);--vp-custom-block-warning-code-bg: var(--vp-c-bg-soft);--vp-custom-block-danger-border: var(--vp-c-red);--vp-custom-block-danger-text: var(--vp-c-red);--vp-custom-block-danger-bg: var(--vp-c-bg-soft-up);--vp-custom-block-danger-code-bg: var(--vp-c-bg-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-details-bg)}:root{--vp-input-border-color: var(--vp-c-border);--vp-input-bg-color: var(--vp-c-bg-alt);--vp-input-hover-border-color: var(--vp-c-gray);--vp-input-switch-bg-color: var(--vp-c-mute)}:root{--vp-nav-height: 64px;--vp-nav-bg-color: var(--vp-c-bg);--vp-nav-screen-bg-color: var(--vp-c-bg)}: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);--vp-home-hero-name-background: transparent;--vp-home-hero-image-background-image: none;--vp-home-hero-image-filter: none}:root{--vp-badge-info-border: var(--vp-c-border);--vp-badge-info-text: var(--vp-c-text-2);--vp-badge-info-bg: var(--vp-c-bg-soft-up);--vp-badge-tip-border: var(--vp-c-green-dark);--vp-badge-tip-text: var(--vp-c-green);--vp-badge-tip-bg: var(--vp-c-green-dimm-1);--vp-badge-warning-border: var(--vp-c-yellow-dark);--vp-badge-warning-text: var(--vp-c-yellow);--vp-badge-warning-bg: var(--vp-c-yellow-dimm-1);--vp-badge-danger-border: var(--vp-c-red-dark);--vp-badge-danger-text: var(--vp-c-red);--vp-badge-danger-bg: var(--vp-c-red-dimm-1)}: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);--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);--vp-local-search-highlight-bg: var(--vp-c-green-lighter);--vp-local-search-highlight-text: var(--vp-c-black)}*,: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);direction:ltr;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}.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.custom-block th,.custom-block.custom-block blockquote>p{font-size:var(--vp-custom-block-font-size);color:inherit}.custom-block.info code{background-color:var(--vp-custom-block-info-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 code{background-color:var(--vp-custom-block-tip-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 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 code{background-color:var(--vp-custom-block-danger-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 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}.custom-block.details summary+p{margin:8px 0}.custom-block a{color:inherit;font-weight:600}.custom-block a:hover{text-decoration:underline}.custom-block code{font-size:var(--vp-custom-block-code-font-size)}.dark .vp-code-light{display:none}html:not(.dark) .vp-code-dark{display:none}.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}.vp-code-group .tabs:after{position:absolute;right:0;bottom:0;left:0;height:1px;background-color:var(--vp-code-tab-divider);content:""}@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:absolute;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:10;height:1px;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-]{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{display:block}.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 .header-anchor{float:left;margin-left:-.87em;padding-right:.23em;font-weight:500;user-select:none;opacity:0;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 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}.vp-doc blockquote>p{margin:0;font-size:16px;color:var(--vp-c-text-2);transition:color .5s}.vp-doc a{font-weight:500;color:var(--vp-c-brand);text-decoration-style:dotted;transition:color .25s}.vp-doc a:hover{text-decoration:underline}.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{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 a{color:inherit;font-weight:600}.vp-doc .custom-block a:hover{text-decoration:underline}.vp-doc .custom-block code{font-size:var(--vp-custom-block-code-font-size);font-weight:700;color:inherit}.vp-doc .custom-block div[class*=language-]{margin:8px 0}.vp-doc .custom-block div[class*=language-] code{font-weight:400;background-color:transparent}.vp-doc :not(pre,h1,h2,h3,h4,h5,h6)>code{font-size:var(--vp-code-font-size)}.vp-doc :not(pre)>code{border-radius:4px;padding:3px 6px;color:var(--vp-c-text-code);background-color:var(--vp-c-mute);transition:color .5s,background-color .5s}.vp-doc h1>code,.vp-doc h2>code,.vp-doc h3>code{font-size:.9em}.vp-doc a>code{color:var(--vp-c-brand);transition:color .25s}.vp-doc a:hover>code{color:var(--vp-c-brand-dark)}.vp-doc div[class*=language-]{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-]{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;left:-65px;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;width:64px;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:"Copied"}.vp-doc [class*=language-]>span.lang{position:absolute;top:2px;right:8px;z-index:2;font-size:12px;font-weight:500;color:var(--vp-c-code-dimm);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}.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-bottom:4px;text-align:center;letter-spacing:1px;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-bg-soft-down)}.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[data-v-350d3852]{display:inline-block;margin-left:2px;border:1px solid transparent;border-radius:10px;padding:0 8px;line-height:18px;font-size:12px;font-weight:600;transform:translateY(-2px)}h1 .VPBadge[data-v-350d3852],h2 .VPBadge[data-v-350d3852],h3 .VPBadge[data-v-350d3852],h4 .VPBadge[data-v-350d3852],h5 .VPBadge[data-v-350d3852],h6 .VPBadge[data-v-350d3852]{vertical-align:top}h2 .VPBadge[data-v-350d3852]{border-radius:11px;line-height:20px}.VPBadge.info[data-v-350d3852]{border-color:var(--vp-badge-info-border);color:var(--vp-badge-info-text);background-color:var(--vp-badge-info-bg)}.VPBadge.tip[data-v-350d3852]{border-color:var(--vp-badge-tip-border);color:var(--vp-badge-tip-text);background-color:var(--vp-badge-tip-bg)}.VPBadge.warning[data-v-350d3852]{border-color:var(--vp-badge-warning-border);color:var(--vp-badge-warning-text);background-color:var(--vp-badge-warning-bg)}.VPBadge.danger[data-v-350d3852]{border-color:var(--vp-badge-danger-border);color:var(--vp-badge-danger-text);background-color:var(--vp-badge-danger-bg)}.VPSkipLink[data-v-c8616af1]{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);box-shadow:var(--vp-shadow-3);background-color:var(--vp-c-bg)}.VPSkipLink[data-v-c8616af1]:focus{height:auto;width:auto;clip:auto;clip-path:none}.dark .VPSkipLink[data-v-c8616af1]{color:var(--vp-c-green)}@media (min-width: 1280px){.VPSkipLink[data-v-c8616af1]{top:14px;left:16px}}.VPBackdrop[data-v-c79a1216]{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-c79a1216],.VPBackdrop.fade-leave-to[data-v-c79a1216]{opacity:0}.VPBackdrop.fade-leave-active[data-v-c79a1216]{transition-duration:.25s}@media (min-width: 1280px){.VPBackdrop[data-v-c79a1216]{display:none}}html:not(.dark) .VPImage.dark[data-v-6db2186b]{display:none}.dark .VPImage.light[data-v-6db2186b]{display:none}.title[data-v-4d981103]{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-4d981103]{flex-shrink:0}.VPNavBarTitle.has-sidebar .title[data-v-4d981103]{border-bottom-color:var(--vp-c-divider)}}[data-v-4d981103] .logo{margin-right:8px;height:24px}/*! @docsearch/css 3.4.0 | 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-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-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;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}@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{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{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;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;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;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{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:rgba(0,0,0,.2);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:rgba(0,0,0,.2);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{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;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}@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{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;user-select:none;white-space:nowrap}.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.DocSearch{--docsearch-primary-color: var(--vp-c-brand);--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-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 .DocSearch{--docsearch-modal-shadow: none;--docsearch-footer-shadow: none;--docsearch-logo-color: var(--vp-c-text-2);--docsearch-hit-background: var(--vp-c-bg-soft-mute);--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: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);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:1px;letter-spacing:-12px;color:transparent}.DocSearch-Button .DocSearch-Button-Key:first-child:after{content:var(--vp-meta-key);font-size:12px;letter-spacing:normal;color:var(--docsearch-muted-color)}.DocSearch-Button .DocSearch-Button-Key:first-child>*{display:none}.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);background-color:var(--vp-c-white)}.dark .DocSearch-Form{background-color:var(--vp-c-bg-soft-mute)}.DocSearch-Screen-Icon>svg{margin:auto}.icon[data-v-8f4dc553]{display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;fill:var(--vp-c-text-3);transition:fill .25s;flex-shrink:0}.VPNavBarMenuLink[data-v-5e623618]{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-5e623618],.VPNavBarMenuLink[data-v-5e623618]:hover{color:var(--vp-c-brand)}.VPMenuGroup+.VPMenuLink[data-v-2f2cfafc]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.link[data-v-2f2cfafc]{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-2f2cfafc]:hover{color:var(--vp-c-brand);background-color:var(--vp-c-bg-elv-mute)}.link.active[data-v-2f2cfafc]{color:var(--vp-c-brand)}.VPMenuGroup[data-v-69e747b5]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.VPMenuGroup[data-v-69e747b5]:first-child{margin-top:0;border-top:0;padding-top:0}.VPMenuGroup+.VPMenuGroup[data-v-69e747b5]{margin-top:12px;border-top:1px solid var(--vp-c-divider)}.title[data-v-69e747b5]{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-e7ea1737]{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-e7ea1737] .group{margin:0 -12px;padding:0 12px 12px}.VPMenu[data-v-e7ea1737] .group+.group{border-top:1px solid var(--vp-c-divider);padding:11px 12px 12px}.VPMenu[data-v-e7ea1737] .group:last-child{padding-bottom:0}.VPMenu[data-v-e7ea1737] .group+.item{border-top:1px solid var(--vp-c-divider);padding:11px 16px 0}.VPMenu[data-v-e7ea1737] .item{padding:0 16px;white-space:nowrap}.VPMenu[data-v-e7ea1737] .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-e7ea1737] .action{padding-left:24px}.VPFlyout[data-v-764effdf]{position:relative}.VPFlyout[data-v-764effdf]:hover{color:var(--vp-c-brand);transition:color .25s}.VPFlyout:hover .text[data-v-764effdf]{color:var(--vp-c-text-2)}.VPFlyout:hover .icon[data-v-764effdf]{fill:var(--vp-c-text-2)}.VPFlyout.active .text[data-v-764effdf]{color:var(--vp-c-brand)}.VPFlyout.active:hover .text[data-v-764effdf]{color:var(--vp-c-brand-dark)}.VPFlyout:hover .menu[data-v-764effdf],.button[aria-expanded=true]+.menu[data-v-764effdf]{opacity:1;visibility:visible;transform:translateY(0)}.button[data-v-764effdf]{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-764effdf]{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-764effdf]{margin-right:0;width:16px;height:16px;fill:currentColor}.text-icon[data-v-764effdf]{margin-left:4px;width:14px;height:14px;fill:currentColor}.icon[data-v-764effdf]{width:20px;height:20px;fill:currentColor;transition:fill .25s}.menu[data-v-764effdf]{position:absolute;top:calc(var(--vp-nav-height) / 2 + 20px);right:0;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s,transform .25s}.VPNavBarMenu[data-v-7f418b0f]{display:none}@media (min-width: 768px){.VPNavBarMenu[data-v-7f418b0f]{display:flex}}.VPNavBarTranslations[data-v-74abcbb9]{display:none}@media (min-width: 1280px){.VPNavBarTranslations[data-v-74abcbb9]{display:flex;align-items:center}}.title[data-v-74abcbb9]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.VPSwitch[data-v-f3c41672]{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}.VPSwitch[data-v-f3c41672]:hover{border-color:var(--vp-input-hover-border-color)}.check[data-v-f3c41672]{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}.icon[data-v-f3c41672]{position:relative;display:block;width:18px;height:18px;border-radius:50%;overflow:hidden}.icon[data-v-f3c41672] svg{position:absolute;top:3px;left:3px;width:12px;height:12px;fill:var(--vp-c-text-2)}.dark .icon[data-v-f3c41672] svg{fill:var(--vp-c-text-1);transition:opacity .25s}.sun[data-v-87de0873]{opacity:1}.moon[data-v-87de0873],.dark .sun[data-v-87de0873]{opacity:0}.dark .moon[data-v-87de0873]{opacity:1}.dark .VPSwitchAppearance[data-v-87de0873] .check{transform:translate(18px)}.VPNavBarAppearance[data-v-f6a63727]{display:none}@media (min-width: 1280px){.VPNavBarAppearance[data-v-f6a63727]{display:flex;align-items:center}}.VPSocialLink[data-v-c530cc0a]{display:flex;justify-content:center;align-items:center;width:36px;height:36px;color:var(--vp-c-text-2);transition:color .5s}.VPSocialLink[data-v-c530cc0a]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPSocialLink[data-v-c530cc0a]>svg{width:20px;height:20px;fill:currentColor}.VPSocialLinks[data-v-d7a53887]{display:flex;justify-content:center}.VPNavBarSocialLinks[data-v-0394ad82]{display:none}@media (min-width: 1280px){.VPNavBarSocialLinks[data-v-0394ad82]{display:flex;align-items:center}}.VPNavBarExtra[data-v-40855f84]{display:none;margin-right:-12px}@media (min-width: 768px){.VPNavBarExtra[data-v-40855f84]{display:block}}@media (min-width: 1280px){.VPNavBarExtra[data-v-40855f84]{display:none}}.trans-title[data-v-40855f84]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.item.appearance[data-v-40855f84],.item.social-links[data-v-40855f84]{display:flex;align-items:center;padding:0 12px}.item.appearance[data-v-40855f84]{min-width:176px}.appearance-action[data-v-40855f84]{margin-right:-2px}.social-links-list[data-v-40855f84]{margin:-4px -8px}.VPNavBarHamburger[data-v-e5dd9c1c]{display:flex;justify-content:center;align-items:center;width:48px;height:var(--vp-nav-height)}@media (min-width: 768px){.VPNavBarHamburger[data-v-e5dd9c1c]{display:none}}.container[data-v-e5dd9c1c]{position:relative;width:16px;height:14px;overflow:hidden}.VPNavBarHamburger:hover .top[data-v-e5dd9c1c]{top:0;left:0;transform:translate(4px)}.VPNavBarHamburger:hover .middle[data-v-e5dd9c1c]{top:6px;left:0;transform:translate(0)}.VPNavBarHamburger:hover .bottom[data-v-e5dd9c1c]{top:12px;left:0;transform:translate(8px)}.VPNavBarHamburger.active .top[data-v-e5dd9c1c]{top:6px;transform:translate(0) rotate(225deg)}.VPNavBarHamburger.active .middle[data-v-e5dd9c1c]{top:6px;transform:translate(16px)}.VPNavBarHamburger.active .bottom[data-v-e5dd9c1c]{top:6px;transform:translate(0) rotate(135deg)}.VPNavBarHamburger.active:hover .top[data-v-e5dd9c1c],.VPNavBarHamburger.active:hover .middle[data-v-e5dd9c1c],.VPNavBarHamburger.active:hover .bottom[data-v-e5dd9c1c]{background-color:var(--vp-c-text-2);transition:top .25s,background-color .25s,transform .25s}.top[data-v-e5dd9c1c],.middle[data-v-e5dd9c1c],.bottom[data-v-e5dd9c1c]{position:absolute;width:16px;height:2px;background-color:var(--vp-c-text-1);transition:top .25s,background-color .5s,transform .25s}.top[data-v-e5dd9c1c]{top:0;left:0;transform:translate(0)}.middle[data-v-e5dd9c1c]{top:6px;left:0;transform:translate(8px)}.bottom[data-v-e5dd9c1c]{top:12px;left:0;transform:translate(4px)}.VPNavBar[data-v-7c10cd25]{position:relative;border-bottom:1px solid transparent;padding:0 8px 0 24px;height:var(--vp-nav-height);transition:border-color .5s,background-color .5s;pointer-events:none;white-space:nowrap}.VPNavBar.has-sidebar[data-v-7c10cd25]{border-bottom-color:var(--vp-c-gutter)}@media (min-width: 768px){.VPNavBar[data-v-7c10cd25]{padding:0 32px}}@media (min-width: 960px){.VPNavBar.has-sidebar[data-v-7c10cd25]{border-bottom-color:transparent;padding:0}.VPNavBar.fill[data-v-7c10cd25]:not(.has-sidebar){border-bottom-color:var(--vp-c-gutter);background-color:var(--vp-nav-bg-color)}}.container[data-v-7c10cd25]{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-7c10cd25],.container>.content[data-v-7c10cd25]{pointer-events:none}.container[data-v-7c10cd25] *{pointer-events:auto}@media (min-width: 960px){.VPNavBar.has-sidebar .container[data-v-7c10cd25]{max-width:100%}}.title[data-v-7c10cd25]{flex-shrink:0;height:calc(var(--vp-nav-height) - 1px);transition:background-color .5s}@media (min-width: 960px){.VPNavBar.has-sidebar .title[data-v-7c10cd25]{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-7c10cd25]{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-7c10cd25]{flex-grow:1}@media (min-width: 960px){.VPNavBar.has-sidebar .content[data-v-7c10cd25]{position:relative;z-index:1;padding-right:32px;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .content[data-v-7c10cd25]{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-7c10cd25]{display:flex;justify-content:flex-end;align-items:center;height:calc(var(--vp-nav-height) - 1px);transition:background-color .5s}@media (min-width: 960px){.VPNavBar.has-sidebar .content-body[data-v-7c10cd25],.VPNavBar.fill .content-body[data-v-7c10cd25]{position:relative;background-color:var(--vp-nav-bg-color)}}@media (max-width: 768px){.content-body[data-v-7c10cd25]{column-gap:.5rem}}.menu+.translations[data-v-7c10cd25]:before,.menu+.appearance[data-v-7c10cd25]:before,.menu+.social-links[data-v-7c10cd25]:before,.translations+.appearance[data-v-7c10cd25]:before,.appearance+.social-links[data-v-7c10cd25]:before{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--vp-c-divider);content:""}.menu+.appearance[data-v-7c10cd25]:before,.translations+.appearance[data-v-7c10cd25]:before{margin-right:16px}.appearance+.social-links[data-v-7c10cd25]:before{margin-left:16px}.social-links[data-v-7c10cd25]{margin-right:-8px}@media (min-width: 960px){.VPNavBar.has-sidebar .curtain[data-v-7c10cd25]{position:absolute;right:0;bottom:-31px;width:calc(100% - var(--vp-sidebar-width));height:32px}.VPNavBar.has-sidebar .curtain[data-v-7c10cd25]:before{display:block;width:100%;height:32px;background:linear-gradient(var(--vp-c-bg),transparent 70%);content:""}}@media (min-width: 1440px){.VPNavBar.has-sidebar .curtain[data-v-7c10cd25]{width:calc(100% - ((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width)))}}.VPNavScreenMenuLink[data-v-30be0acb]{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-30be0acb]:hover{color:var(--vp-c-brand)}.VPNavScreenMenuGroupLink[data-v-6656c42a]{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-6656c42a]:hover{color:var(--vp-c-brand)}.VPNavScreenMenuGroupSection[data-v-8133b170]{display:block}.title[data-v-8133b170]{line-height:32px;font-size:13px;font-weight:700;color:var(--vp-c-text-2);transition:color .25s}.VPNavScreenMenuGroup[data-v-338a1689]{border-bottom:1px solid var(--vp-c-divider);height:48px;overflow:hidden;transition:border-color .5s}.VPNavScreenMenuGroup .items[data-v-338a1689]{visibility:hidden}.VPNavScreenMenuGroup.open .items[data-v-338a1689]{visibility:visible}.VPNavScreenMenuGroup.open[data-v-338a1689]{padding-bottom:10px;height:auto}.VPNavScreenMenuGroup.open .button[data-v-338a1689]{padding-bottom:6px;color:var(--vp-c-brand)}.VPNavScreenMenuGroup.open .button-icon[data-v-338a1689]{transform:rotate(45deg)}.button[data-v-338a1689]{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-338a1689]:hover{color:var(--vp-c-brand)}.button-icon[data-v-338a1689]{width:14px;height:14px;fill:var(--vp-c-text-2);transition:fill .5s,transform .25s}.group[data-v-338a1689]:first-child{padding-top:0}.group+.group[data-v-338a1689],.group+.item[data-v-338a1689]{padding-top:4px}.VPNavScreenAppearance[data-v-add8f686]{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-add8f686]{line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.VPNavScreenTranslations[data-v-d72aa483]{height:24px;overflow:hidden}.VPNavScreenTranslations.open[data-v-d72aa483]{height:auto}.title[data-v-d72aa483]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-text-1)}.icon[data-v-d72aa483]{width:16px;height:16px;fill:currentColor}.icon.lang[data-v-d72aa483]{margin-right:8px}.icon.chevron[data-v-d72aa483]{margin-left:4px}.list[data-v-d72aa483]{padding:4px 0 0 24px}.link[data-v-d72aa483]{line-height:32px;font-size:13px;color:var(--vp-c-text-1)}.VPNavScreen[data-v-724636ae]{position:fixed;top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 1px);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 .5s;pointer-events:auto}.VPNavScreen.fade-enter-active[data-v-724636ae],.VPNavScreen.fade-leave-active[data-v-724636ae]{transition:opacity .25s}.VPNavScreen.fade-enter-active .container[data-v-724636ae],.VPNavScreen.fade-leave-active .container[data-v-724636ae]{transition:transform .25s ease}.VPNavScreen.fade-enter-from[data-v-724636ae],.VPNavScreen.fade-leave-to[data-v-724636ae]{opacity:0}.VPNavScreen.fade-enter-from .container[data-v-724636ae],.VPNavScreen.fade-leave-to .container[data-v-724636ae]{transform:translateY(-8px)}@media (min-width: 768px){.VPNavScreen[data-v-724636ae]{display:none}}.container[data-v-724636ae]{margin:0 auto;padding:24px 0 96px;max-width:288px}.menu+.translations[data-v-724636ae],.menu+.appearance[data-v-724636ae],.translations+.appearance[data-v-724636ae]{margin-top:24px}.menu+.social-links[data-v-724636ae]{margin-top:16px}.appearance+.social-links[data-v-724636ae]{margin-top:16px}.VPNav[data-v-7e5bc4a5]{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-7e5bc4a5]{position:fixed}}.root[data-v-9a431c33]{position:relative;z-index:1}.nested[data-v-9a431c33]{padding-left:13px}.outline-link[data-v-9a431c33]{display:block;line-height:28px;color:var(--vp-c-text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .5s;font-weight:500}.outline-link[data-v-9a431c33]:hover,.outline-link.active[data-v-9a431c33]{color:var(--vp-c-text-1);transition:color .25s}.outline-link.nested[data-v-9a431c33]{padding-left:13px}.VPLocalNavOutlineDropdown[data-v-079b16a8]{padding:12px 20px 11px}.VPLocalNavOutlineDropdown button[data-v-079b16a8]{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-079b16a8]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPLocalNavOutlineDropdown button.open[data-v-079b16a8]{color:var(--vp-c-text-1)}.icon[data-v-079b16a8]{display:inline-block;vertical-align:middle;margin-left:2px;width:14px;height:14px;fill:currentColor}[data-v-079b16a8] .outline-link{font-size:14px;padding:2px 0}.open>.icon[data-v-079b16a8]{transform:rotate(90deg)}.items[data-v-079b16a8]{position:absolute;left:20px;right:20px;top:64px;background-color:var(--vp-local-nav-bg-color);padding:4px 10px 16px;border:1px solid var(--vp-c-divider);border-radius:8px;max-height:calc(var(--vp-vh, 100vh) - 86px);overflow:hidden auto;box-shadow:var(--vp-shadow-3)}.top-link[data-v-079b16a8]{display:block;color:var(--vp-c-brand);font-size:13px;font-weight:500;padding:6px 0;margin:0 13px 10px;border-bottom:1px solid var(--vp-c-divider)}.flyout-enter-active[data-v-079b16a8]{transition:all .2s ease-out}.flyout-leave-active[data-v-079b16a8]{transition:all .15s ease-in}.flyout-enter-from[data-v-079b16a8],.flyout-leave-to[data-v-079b16a8]{opacity:0;transform:translateY(-16px)}.VPLocalNav[data-v-392e1bf8]{position:sticky;top:0;left:0;z-index:var(--vp-z-index-local-nav);display:flex;justify-content:space-between;align-items:center;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);transition:border-color .5s,background-color .5s}@media (min-width: 960px){.VPLocalNav[data-v-392e1bf8]{display:none}}.menu[data-v-392e1bf8]{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-392e1bf8]:hover{color:var(--vp-c-text-1);transition:color .25s}@media (min-width: 768px){.menu[data-v-392e1bf8]{padding:0 32px}}.menu-icon[data-v-392e1bf8]{margin-right:8px;width:16px;height:16px;fill:currentColor}.VPOutlineDropdown[data-v-392e1bf8]{padding:12px 24px 11px}@media (min-width: 768px){.VPOutlineDropdown[data-v-392e1bf8]{padding:12px 32px 11px}}.VPSidebarItem.level-0[data-v-c4656e6d]{padding-bottom:24px}.VPSidebarItem.collapsed.level-0[data-v-c4656e6d]{padding-bottom:10px}.item[data-v-c4656e6d]{position:relative;display:flex;width:100%}.VPSidebarItem.collapsible>.item[data-v-c4656e6d]{cursor:pointer}.indicator[data-v-c4656e6d]{position:absolute;top:6px;bottom:6px;left:-17px;width:1px;transition:background-color .25s}.VPSidebarItem.level-2.is-active>.item>.indicator[data-v-c4656e6d],.VPSidebarItem.level-3.is-active>.item>.indicator[data-v-c4656e6d],.VPSidebarItem.level-4.is-active>.item>.indicator[data-v-c4656e6d],.VPSidebarItem.level-5.is-active>.item>.indicator[data-v-c4656e6d]{background-color:var(--vp-c-brand)}.link[data-v-c4656e6d]{display:flex;align-items:center;flex-grow:1}.text[data-v-c4656e6d]{flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;transition:color .25s}.VPSidebarItem.level-0 .text[data-v-c4656e6d]{font-weight:700;color:var(--vp-c-text-1)}.VPSidebarItem.level-1 .text[data-v-c4656e6d],.VPSidebarItem.level-2 .text[data-v-c4656e6d],.VPSidebarItem.level-3 .text[data-v-c4656e6d],.VPSidebarItem.level-4 .text[data-v-c4656e6d],.VPSidebarItem.level-5 .text[data-v-c4656e6d]{font-weight:500;color:var(--vp-c-text-2)}.VPSidebarItem.level-0.is-link>.item>.link:hover .text[data-v-c4656e6d],.VPSidebarItem.level-1.is-link>.item>.link:hover .text[data-v-c4656e6d],.VPSidebarItem.level-2.is-link>.item>.link:hover .text[data-v-c4656e6d],.VPSidebarItem.level-3.is-link>.item>.link:hover .text[data-v-c4656e6d],.VPSidebarItem.level-4.is-link>.item>.link:hover .text[data-v-c4656e6d],.VPSidebarItem.level-5.is-link>.item>.link:hover .text[data-v-c4656e6d]{color:var(--vp-c-brand)}.VPSidebarItem.level-0.has-active>.item>.link>.text[data-v-c4656e6d],.VPSidebarItem.level-1.has-active>.item>.link>.text[data-v-c4656e6d],.VPSidebarItem.level-2.has-active>.item>.link>.text[data-v-c4656e6d],.VPSidebarItem.level-3.has-active>.item>.link>.text[data-v-c4656e6d],.VPSidebarItem.level-4.has-active>.item>.link>.text[data-v-c4656e6d],.VPSidebarItem.level-5.has-active>.item>.link>.text[data-v-c4656e6d]{color:var(--vp-c-text-1)}.VPSidebarItem.level-0.is-active>.item .link>.text[data-v-c4656e6d],.VPSidebarItem.level-1.is-active>.item .link>.text[data-v-c4656e6d],.VPSidebarItem.level-2.is-active>.item .link>.text[data-v-c4656e6d],.VPSidebarItem.level-3.is-active>.item .link>.text[data-v-c4656e6d],.VPSidebarItem.level-4.is-active>.item .link>.text[data-v-c4656e6d],.VPSidebarItem.level-5.is-active>.item .link>.text[data-v-c4656e6d]{color:var(--vp-c-brand)}.caret[data-v-c4656e6d]{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}.item:hover .caret[data-v-c4656e6d]{color:var(--vp-c-text-2)}.item:hover .caret[data-v-c4656e6d]:hover{color:var(--vp-c-text-1)}.caret-icon[data-v-c4656e6d]{width:18px;height:18px;fill:currentColor;transform:rotate(90deg);transition:transform .25s}.VPSidebarItem.collapsed .caret-icon[data-v-c4656e6d]{transform:rotate(0)}.VPSidebarItem.level-1 .items[data-v-c4656e6d],.VPSidebarItem.level-2 .items[data-v-c4656e6d],.VPSidebarItem.level-3 .items[data-v-c4656e6d],.VPSidebarItem.level-4 .items[data-v-c4656e6d],.VPSidebarItem.level-5 .items[data-v-c4656e6d]{border-left:1px solid var(--vp-c-divider);padding-left:16px}.VPSidebarItem.collapsed .items[data-v-c4656e6d]{display:none}.VPSidebar[data-v-af16598e]{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-af16598e]{opacity:1;visibility:visible;transform:translate(0);transition:opacity .25s,transform .5s cubic-bezier(.19,1,.22,1)}.dark .VPSidebar[data-v-af16598e]{box-shadow:var(--vp-shadow-1)}@media (min-width: 960px){.VPSidebar[data-v-af16598e]{z-index:1;padding-top:var(--vp-nav-height);padding-bottom:128px;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-af16598e]{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-af16598e]{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-af16598e]{outline:0}.group+.group[data-v-af16598e]{border-top:1px solid var(--vp-c-divider);padding-top:10px}@media (min-width: 960px){.group[data-v-af16598e]{padding-top:10px;width:calc(var(--vp-sidebar-width) - 64px)}}.VPButton[data-v-567ba664]{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-567ba664]:active{transition:color .1s,border-color .1s,background-color .1s}.VPButton.medium[data-v-567ba664]{border-radius:20px;padding:0 20px;line-height:38px;font-size:14px}.VPButton.big[data-v-567ba664]{border-radius:24px;padding:0 24px;line-height:46px;font-size:16px}.VPButton.brand[data-v-567ba664]{border-color:var(--vp-button-brand-border);color:var(--vp-button-brand-text);background-color:var(--vp-button-brand-bg)}.VPButton.brand[data-v-567ba664]: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-567ba664]: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-567ba664]{border-color:var(--vp-button-alt-border);color:var(--vp-button-alt-text);background-color:var(--vp-button-alt-bg)}.VPButton.alt[data-v-567ba664]: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-567ba664]: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-567ba664]{border-color:var(--vp-button-sponsor-border);color:var(--vp-button-sponsor-text);background-color:var(--vp-button-sponsor-bg)}.VPButton.sponsor[data-v-567ba664]: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-567ba664]:active{border-color:var(--vp-button-sponsor-active-border);color:var(--vp-button-sponsor-active-text);background-color:var(--vp-button-sponsor-active-bg)}.VPHero[data-v-fd2650d5]{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-fd2650d5]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 48px 64px}}@media (min-width: 960px){.VPHero[data-v-fd2650d5]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 64px 64px}}.container[data-v-fd2650d5]{display:flex;flex-direction:column;margin:0 auto;max-width:1152px}@media (min-width: 960px){.container[data-v-fd2650d5]{flex-direction:row}}.main[data-v-fd2650d5]{position:relative;z-index:10;order:2;flex-grow:1;flex-shrink:0}.VPHero.has-image .container[data-v-fd2650d5]{text-align:center}@media (min-width: 960px){.VPHero.has-image .container[data-v-fd2650d5]{text-align:left}}@media (min-width: 960px){.main[data-v-fd2650d5]{order:1;width:calc((100% / 3) * 2)}.VPHero.has-image .main[data-v-fd2650d5]{max-width:592px}}.name[data-v-fd2650d5],.text[data-v-fd2650d5]{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-fd2650d5],.VPHero.has-image .text[data-v-fd2650d5]{margin:0 auto}.name[data-v-fd2650d5]{color:var(--vp-home-hero-name-color)}.clip[data-v-fd2650d5]{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-fd2650d5],.text[data-v-fd2650d5]{max-width:576px;line-height:56px;font-size:48px}}@media (min-width: 960px){.name[data-v-fd2650d5],.text[data-v-fd2650d5]{line-height:64px;font-size:56px}.VPHero.has-image .name[data-v-fd2650d5],.VPHero.has-image .text[data-v-fd2650d5]{margin:0}}.tagline[data-v-fd2650d5]{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-fd2650d5]{margin:0 auto}@media (min-width: 640px){.tagline[data-v-fd2650d5]{padding-top:12px;max-width:576px;line-height:32px;font-size:20px}}@media (min-width: 960px){.tagline[data-v-fd2650d5]{line-height:36px;font-size:24px}.VPHero.has-image .tagline[data-v-fd2650d5]{margin:0}}.actions[data-v-fd2650d5]{display:flex;flex-wrap:wrap;margin:-6px;padding-top:24px}.VPHero.has-image .actions[data-v-fd2650d5]{justify-content:center}@media (min-width: 640px){.actions[data-v-fd2650d5]{padding-top:32px}}@media (min-width: 960px){.VPHero.has-image .actions[data-v-fd2650d5]{justify-content:flex-start}}.action[data-v-fd2650d5]{flex-shrink:0;padding:6px}.image[data-v-fd2650d5]{order:1;margin:-76px -24px -48px}@media (min-width: 640px){.image[data-v-fd2650d5]{margin:-108px -24px -48px}}@media (min-width: 960px){.image[data-v-fd2650d5]{flex-grow:1;order:2;margin:0;min-height:100%}}.image-container[data-v-fd2650d5]{position:relative;margin:0 auto;width:320px;height:320px}@media (min-width: 640px){.image-container[data-v-fd2650d5]{width:392px;height:392px}}@media (min-width: 960px){.image-container[data-v-fd2650d5]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;transform:translate(-32px,-32px)}}.image-bg[data-v-fd2650d5]{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-fd2650d5]{width:256px;height:256px}}@media (min-width: 960px){.image-bg[data-v-fd2650d5]{width:320px;height:320px}}[data-v-fd2650d5] .image-src{position:absolute;top:50%;left:50%;max-width:192px;max-height:192px;transform:translate(-50%,-50%)}@media (min-width: 640px){[data-v-fd2650d5] .image-src{max-width:256px;max-height:256px}}@media (min-width: 960px){[data-v-fd2650d5] .image-src{max-width:320px;max-height:320px}}.VPFeature[data-v-837f6cca]{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-837f6cca]:hover{border-color:var(--vp-c-brand);background-color:var(--vp-c-bg-soft-up)}.box[data-v-837f6cca]{display:flex;flex-direction:column;padding:24px;height:100%}.VPFeature[data-v-837f6cca] .VPImage{width:48px;height:48px;margin-bottom:20px}.icon[data-v-837f6cca]{display:flex;justify-content:center;align-items:center;margin-bottom:20px;border-radius:6px;background-color:var(--vp-c-bg-soft-down);width:48px;height:48px;font-size:24px;transition:background-color .25s}.title[data-v-837f6cca]{line-height:24px;font-size:16px;font-weight:600}.details[data-v-837f6cca]{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-837f6cca]{padding-top:8px}.link-text-value[data-v-837f6cca]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-brand)}.link-text-icon[data-v-837f6cca]{display:inline-block;margin-left:6px;width:14px;height:14px;fill:currentColor}.VPFeatures[data-v-ba861f23]{position:relative;padding:0 24px}@media (min-width: 640px){.VPFeatures[data-v-ba861f23]{padding:0 48px}}@media (min-width: 960px){.VPFeatures[data-v-ba861f23]{padding:0 64px}}.container[data-v-ba861f23]{margin:0 auto;max-width:1152px}.items[data-v-ba861f23]{display:flex;flex-wrap:wrap;margin:-8px}.item[data-v-ba861f23]{padding:8px;width:100%}@media (min-width: 640px){.item.grid-2[data-v-ba861f23],.item.grid-4[data-v-ba861f23],.item.grid-6[data-v-ba861f23]{width:50%}}@media (min-width: 768px){.item.grid-2[data-v-ba861f23],.item.grid-4[data-v-ba861f23]{width:50%}.item.grid-3[data-v-ba861f23],.item.grid-6[data-v-ba861f23]{width:calc(100% / 3)}}@media (min-width: 960px){.item.grid-4[data-v-ba861f23]{width:25%}}.VPHome[data-v-d82743a8]{padding-bottom:96px}.VPHome[data-v-d82743a8] .VPHomeSponsors{margin-top:112px;margin-bottom:-128px}@media (min-width: 768px){.VPHome[data-v-d82743a8]{padding-bottom:128px}}.VPDocAsideOutline[data-v-ff0f39c8]{display:none}.VPDocAsideOutline.has-outline[data-v-ff0f39c8]{display:block}.content[data-v-ff0f39c8]{position:relative;border-left:1px solid var(--vp-c-divider);padding-left:16px;font-size:13px;font-weight:500}.outline-marker[data-v-ff0f39c8]{position:absolute;top:32px;left:-1px;z-index:0;opacity:0;width:1px;height:18px;background-color:var(--vp-c-brand);transition:top .25s cubic-bezier(0,1,.5,1),background-color .5s,opacity .25s}.outline-title[data-v-ff0f39c8]{letter-spacing:.4px;line-height:28px;font-size:13px;font-weight:600}.VPDocAside[data-v-3f215769]{display:flex;flex-direction:column;flex-grow:1}.spacer[data-v-3f215769]{flex-grow:1}.VPDocAside[data-v-3f215769] .spacer+.VPDocAsideSponsors,.VPDocAside[data-v-3f215769] .spacer+.VPDocAsideCarbonAds{margin-top:24px}.VPDocAside[data-v-3f215769] .VPDocAsideSponsors+.VPDocAsideCarbonAds{margin-top:16px}.VPLastUpdated[data-v-7b3ebfe1]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 640px){.VPLastUpdated[data-v-7b3ebfe1]{line-height:32px;font-size:14px;font-weight:500}}.VPDocFooter[data-v-face870a]{margin-top:64px}.edit-info[data-v-face870a]{padding-bottom:18px}@media (min-width: 640px){.edit-info[data-v-face870a]{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px}}.edit-link-button[data-v-face870a]{display:flex;align-items:center;border:0;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-brand);transition:color .25s}.edit-link-button[data-v-face870a]:hover{color:var(--vp-c-brand-dark)}.edit-link-icon[data-v-face870a]{margin-right:8px;width:14px;height:14px;fill:currentColor}.prev-next[data-v-face870a]{border-top:1px solid var(--vp-c-divider);padding-top:24px}@media (min-width: 640px){.prev-next[data-v-face870a]{display:flex}}.pager.has-prev[data-v-face870a]{padding-top:8px}@media (min-width: 640px){.pager[data-v-face870a]{display:flex;flex-direction:column;flex-shrink:0;width:50%}.pager.has-prev[data-v-face870a]{padding-top:0;padding-left:16px}}.pager-link[data-v-face870a]{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-face870a]:hover{border-color:var(--vp-c-brand)}.pager-link.next[data-v-face870a]{margin-left:auto;text-align:right}.desc[data-v-face870a]{display:block;line-height:20px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.title[data-v-face870a]{display:block;line-height:20px;font-size:14px;font-weight:500;color:var(--vp-c-brand);transition:color .25s}.VPDocOutlineDropdown[data-v-2edece88]{margin-bottom:42px}.VPDocOutlineDropdown button[data-v-2edece88]{display:block;font-size:14px;font-weight:500;line-height:24px;color:var(--vp-c-text-2);transition:color .5s;border:1px solid var(--vp-c-border);padding:4px 12px;border-radius:8px}.VPDocOutlineDropdown button[data-v-2edece88]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPDocOutlineDropdown button.open[data-v-2edece88]{color:var(--vp-c-text-1)}.icon[data-v-2edece88]{display:inline-block;vertical-align:middle;margin-left:2px;width:14px;height:14px;fill:currentColor}[data-v-2edece88] .outline-link{font-size:13px}.open>.icon[data-v-2edece88]{transform:rotate(90deg)}.items[data-v-2edece88]{margin-top:10px;border-left:1px solid var(--vp-c-divider)}.VPDoc[data-v-c4b0d3cf]{padding:32px 24px 96px;width:100%}.VPDoc .VPDocOutlineDropdown[data-v-c4b0d3cf]{display:none}@media (min-width: 960px) and (max-width: 1280px){.VPDoc .VPDocOutlineDropdown[data-v-c4b0d3cf]{display:block}}@media (min-width: 768px){.VPDoc[data-v-c4b0d3cf]{padding:48px 32px 128px}}@media (min-width: 960px){.VPDoc[data-v-c4b0d3cf]{padding:32px 32px 0}.VPDoc:not(.has-sidebar) .container[data-v-c4b0d3cf]{display:flex;justify-content:center;max-width:992px}.VPDoc:not(.has-sidebar) .content[data-v-c4b0d3cf]{max-width:752px}}@media (min-width: 1280px){.VPDoc .container[data-v-c4b0d3cf]{display:flex;justify-content:center}.VPDoc .aside[data-v-c4b0d3cf]{display:block}}@media (min-width: 1440px){.VPDoc:not(.has-sidebar) .content[data-v-c4b0d3cf]{max-width:784px}.VPDoc:not(.has-sidebar) .container[data-v-c4b0d3cf]{max-width:1104px}}.container[data-v-c4b0d3cf]{margin:0 auto;width:100%}.aside[data-v-c4b0d3cf]{position:relative;display:none;order:2;flex-grow:1;padding-left:32px;width:100%;max-width:256px}.left-aside[data-v-c4b0d3cf]{order:1;padding-left:unset;padding-right:32px}.aside-container[data-v-c4b0d3cf]{position:fixed;top:0;padding-top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + var(--vp-doc-top-height, 0px) + 32px);width:224px;height:100vh;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.aside-container[data-v-c4b0d3cf]::-webkit-scrollbar{display:none}.aside-curtain[data-v-c4b0d3cf]{position:fixed;bottom:0;z-index:10;width:224px;height:32px;background:linear-gradient(transparent,var(--vp-c-bg) 70%)}.aside-content[data-v-c4b0d3cf]{display:flex;flex-direction:column;min-height:calc(100vh - (var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 32px));padding-bottom:32px}.content[data-v-c4b0d3cf]{position:relative;margin:0 auto;width:100%}@media (min-width: 960px){.content[data-v-c4b0d3cf]{padding:0 32px 128px}}@media (min-width: 1280px){.content[data-v-c4b0d3cf]{order:1;margin:0;min-width:640px}}.content-container[data-v-c4b0d3cf]{margin:0 auto}.VPDoc.has-aside .content-container[data-v-c4b0d3cf]{max-width:688px}.NotFound[data-v-c70503b8]{padding:64px 24px 96px;text-align:center}@media (min-width: 768px){.NotFound[data-v-c70503b8]{padding:96px 32px 168px}}.code[data-v-c70503b8]{line-height:64px;font-size:64px;font-weight:600}.title[data-v-c70503b8]{padding-top:12px;letter-spacing:2px;line-height:20px;font-size:20px;font-weight:700}.divider[data-v-c70503b8]{margin:24px auto 18px;width:64px;height:1px;background-color:var(--vp-c-divider)}.quote[data-v-c70503b8]{margin:0 auto;max-width:256px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.action[data-v-c70503b8]{padding-top:20px}.link[data-v-c70503b8]{display:inline-block;border:1px solid var(--vp-c-brand);border-radius:16px;padding:3px 16px;font-size:14px;font-weight:500;color:var(--vp-c-brand);transition:border-color .25s,color .25s}.link[data-v-c70503b8]:hover{border-color:var(--vp-c-brand-dark);color:var(--vp-c-brand-dark)}.VPContent[data-v-a494bd1d]{flex-grow:1;flex-shrink:0;margin:var(--vp-layout-top-height, 0px) auto 0;width:100%}.VPContent.is-home[data-v-a494bd1d]{width:100%;max-width:100%}.VPContent.has-sidebar[data-v-a494bd1d]{margin:0}@media (min-width: 960px){.VPContent[data-v-a494bd1d]{padding-top:var(--vp-nav-height)}.VPContent.has-sidebar[data-v-a494bd1d]{margin:var(--vp-layout-top-height, 0px) 0 0;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPContent.has-sidebar[data-v-a494bd1d]{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-2f86ebd2]{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-2f86ebd2]{display:none}@media (min-width: 768px){.VPFooter[data-v-2f86ebd2]{padding:32px}}.container[data-v-2f86ebd2]{margin:0 auto;max-width:var(--vp-layout-max-width);text-align:center}.message[data-v-2f86ebd2],.copyright[data-v-2f86ebd2]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.message[data-v-2f86ebd2]{order:2}.copyright[data-v-2f86ebd2]{order:1}.Layout[data-v-b2cf3e0b]{display:flex;flex-direction:column;min-height:100vh}.VPHomeSponsors[data-v-3c6e61c2]{border-top:1px solid var(--vp-c-gutter);padding:88px 24px 96px;background-color:var(--vp-c-bg)}.container[data-v-3c6e61c2]{margin:0 auto;max-width:1152px}.love[data-v-3c6e61c2]{margin:0 auto;width:28px;height:28px;color:var(--vp-c-text-3)}.icon[data-v-3c6e61c2]{width:28px;height:28px;fill:currentColor}.message[data-v-3c6e61c2]{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-3c6e61c2]{padding-top:32px}.action[data-v-3c6e61c2]{padding-top:40px;text-align:center}.VPTeamPage[data-v-10b00018]{padding-bottom:96px}@media (min-width: 768px){.VPTeamPage[data-v-10b00018]{padding-bottom:128px}}.VPTeamPageSection+.VPTeamPageSection[data-v-10b00018-s],.VPTeamMembers+.VPTeamPageSection[data-v-10b00018-s]{margin-top:64px}.VPTeamMembers+.VPTeamMembers[data-v-10b00018-s]{margin-top:24px}@media (min-width: 768px){.VPTeamPageTitle+.VPTeamPageSection[data-v-10b00018-s]{margin-top:16px}.VPTeamPageSection+.VPTeamPageSection[data-v-10b00018-s],.VPTeamMembers+.VPTeamPageSection[data-v-10b00018-s]{margin-top:96px}}.VPTeamMembers[data-v-10b00018-s]{padding:0 24px}@media (min-width: 768px){.VPTeamMembers[data-v-10b00018-s]{padding:0 48px}}@media (min-width: 960px){.VPTeamMembers[data-v-10b00018-s]{padding:0 64px}}.VPTeamPageTitle[data-v-bf2cbdac]{padding:48px 32px;text-align:center}@media (min-width: 768px){.VPTeamPageTitle[data-v-bf2cbdac]{padding:64px 48px 48px}}@media (min-width: 960px){.VPTeamPageTitle[data-v-bf2cbdac]{padding:80px 64px 48px}}.title[data-v-bf2cbdac]{letter-spacing:0;line-height:44px;font-size:36px;font-weight:500}@media (min-width: 768px){.title[data-v-bf2cbdac]{letter-spacing:-.5px;line-height:56px;font-size:48px}}.lead[data-v-bf2cbdac]{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-bf2cbdac]{max-width:592px;letter-spacing:.15px;line-height:28px;font-size:20px}}.VPTeamPageSection[data-v-b1a88750]{padding:0 32px}@media (min-width: 768px){.VPTeamPageSection[data-v-b1a88750]{padding:0 48px}}@media (min-width: 960px){.VPTeamPageSection[data-v-b1a88750]{padding:0 64px}}.title[data-v-b1a88750]{position:relative;margin:0 auto;max-width:1152px;text-align:center;color:var(--vp-c-text-2)}.title-line[data-v-b1a88750]{position:absolute;top:16px;left:0;width:100%;height:1px;background-color:var(--vp-c-divider)}.title-text[data-v-b1a88750]{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-b1a88750]{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-b1a88750]{padding-top:40px}.VPTeamMembersItem[data-v-a3462077]{display:flex;flex-direction:column;gap:2px;border-radius:12px;width:100%;height:100%;overflow:hidden}.VPTeamMembersItem.small .profile[data-v-a3462077]{padding:32px}.VPTeamMembersItem.small .data[data-v-a3462077]{padding-top:20px}.VPTeamMembersItem.small .avatar[data-v-a3462077]{width:64px;height:64px}.VPTeamMembersItem.small .name[data-v-a3462077]{line-height:24px;font-size:16px}.VPTeamMembersItem.small .affiliation[data-v-a3462077]{padding-top:4px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .desc[data-v-a3462077]{padding-top:12px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .links[data-v-a3462077]{margin:0 -16px -20px;padding:10px 0 0}.VPTeamMembersItem.medium .profile[data-v-a3462077]{padding:48px 32px}.VPTeamMembersItem.medium .data[data-v-a3462077]{padding-top:24px;text-align:center}.VPTeamMembersItem.medium .avatar[data-v-a3462077]{width:96px;height:96px}.VPTeamMembersItem.medium .name[data-v-a3462077]{letter-spacing:.15px;line-height:28px;font-size:20px}.VPTeamMembersItem.medium .affiliation[data-v-a3462077]{padding-top:4px;font-size:16px}.VPTeamMembersItem.medium .desc[data-v-a3462077]{padding-top:16px;max-width:288px;font-size:16px}.VPTeamMembersItem.medium .links[data-v-a3462077]{margin:0 -16px -12px;padding:16px 12px 0}.profile[data-v-a3462077]{flex-grow:1;background-color:var(--vp-c-bg-soft)}.data[data-v-a3462077]{text-align:center}.avatar[data-v-a3462077]{position:relative;flex-shrink:0;margin:0 auto;border-radius:50%;box-shadow:var(--vp-shadow-3)}.avatar-img[data-v-a3462077]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;object-fit:cover}.name[data-v-a3462077]{margin:0;font-weight:600}.affiliation[data-v-a3462077]{margin:0;font-weight:500;color:var(--vp-c-text-2)}.org.link[data-v-a3462077]{color:var(--vp-c-text-2);transition:color .25s}.org.link[data-v-a3462077]:hover{color:var(--vp-c-brand)}.desc[data-v-a3462077]{margin:0 auto}.desc[data-v-a3462077] a{font-weight:500;color:var(--vp-c-brand);text-decoration-style:dotted;transition:color .25s}.links[data-v-a3462077]{display:flex;justify-content:center;height:56px}.sp-link[data-v-a3462077]{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-a3462077]:hover,.sp .sp-link.link[data-v-a3462077]:focus{outline:none;color:var(--vp-c-white);background-color:var(--vp-c-sponsor)}.sp-icon[data-v-a3462077]{margin-right:8px;width:16px;height:16px;fill:currentColor}.VPTeamMembers.small .container[data-v-04685dce]{grid-template-columns:repeat(auto-fit,minmax(224px,1fr))}.VPTeamMembers.small.count-1 .container[data-v-04685dce]{max-width:276px}.VPTeamMembers.small.count-2 .container[data-v-04685dce]{max-width:576px}.VPTeamMembers.small.count-3 .container[data-v-04685dce]{max-width:876px}.VPTeamMembers.medium .container[data-v-04685dce]{grid-template-columns:repeat(auto-fit,minmax(256px,1fr))}@media (min-width: 375px){.VPTeamMembers.medium .container[data-v-04685dce]{grid-template-columns:repeat(auto-fit,minmax(288px,1fr))}}.VPTeamMembers.medium.count-1 .container[data-v-04685dce]{max-width:368px}.VPTeamMembers.medium.count-2 .container[data-v-04685dce]{max-width:760px}.container[data-v-04685dce]{display:grid;gap:24px;margin:0 auto;max-width:1152px}img[data-v-b936db02]{margin:0 auto}:root{--vp-c-brand: #16c5fe;--vp-c-green: #16c5fe;--vp-c-green-light: #109ef7;--vp-c-green-lighter: #109ef7;--vp-c-green-dark: #109ef7;--vp-c-green-darker: #109ef7}.dark{--vp-c-bg: #000;--vp-code-block-bg: #111;--vp-c-bg-alt: rgba(0, 0, 0, .5)}@media (min-width: 960px){.dark .VPNavBar.has-sidebar .content[data-v-d84f2262]{background:rgba(36,36,36,.1)}}.Layout:before{content:"";background-size:100% 100%;background-position:right;background-repeat:no-repeat;opacity:1;max-width:100%;height:100%;width:50%;position:fixed;top:-20%;right:-10%;display:block}.Layout:after{content:"";background-size:100% 100%;background-position:right;background-repeat:no-repeat;opacity:1;max-width:100%;height:100%;width:50%;position:fixed;bottom:-20%;left:-10%;display:block;z-index:-1}@media (min-width: 960px){.title{font-size:24px!important}}.image-src{max-width:220px!important} diff --git a/assets/style.d5313337.css b/assets/style.d5313337.css deleted file mode 100644 index bf5fada..0000000 --- a/assets/style.d5313337.css +++ /dev/null @@ -1 +0,0 @@ -@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-cyrillic.5f2c6c8c.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-cyrillic-ext.e75737ce.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 var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-greek.d5a6d92a.woff2) format("woff2");unicode-range:U+0370-03FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-greek-ext.ab0619bc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-latin.2ed14f66.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,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 var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-latin-ext.0030eebd.woff2) format("woff2");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/vue-h5-template/assets/inter-roman-vietnamese.14ce25a6.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-cyrillic.ea42a392.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-cyrillic-ext.33bd5a8e.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 var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-greek.8f4463c4.woff2) format("woff2");unicode-range:U+0370-03FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-greek-ext.4fbe9427.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-latin.bd3b6f56.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,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 var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-latin-ext.bd8920cc.woff2) format("woff2");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/vue-h5-template/assets/inter-italic-vietnamese.6ce511fb.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chinese Quotes;src:local("PingFang SC Regular"),local("PingFang SC"),local("SimHei"),local("Source Han Sans SC");unicode-range:U+2018,U+2019,U+201C,U+201D}:root{--vp-c-white: #ffffff;--vp-c-black: #000000;--vp-c-gray: #8e8e93;--vp-c-text-light-1: rgba(60, 60, 67);--vp-c-text-light-2: rgba(60, 60, 67, .75);--vp-c-text-light-3: rgba(60, 60, 67, .33);--vp-c-text-dark-1: rgba(255, 255, 245, .86);--vp-c-text-dark-2: rgba(235, 235, 245, .6);--vp-c-text-dark-3: rgba(235, 235, 245, .38);--vp-c-green: #10b981;--vp-c-green-light: #34d399;--vp-c-green-lighter: #6ee7b7;--vp-c-green-dark: #059669;--vp-c-green-darker: #047857;--vp-c-green-dimm-1: rgba(16, 185, 129, .05);--vp-c-green-dimm-2: rgba(16, 185, 129, .2);--vp-c-green-dimm-3: rgba(16, 185, 129, .5);--vp-c-yellow: #d97706;--vp-c-yellow-light: #f59e0b;--vp-c-yellow-lighter: #fbbf24;--vp-c-yellow-dark: #b45309;--vp-c-yellow-darker: #92400e;--vp-c-yellow-dimm-1: rgba(234, 179, 8, .05);--vp-c-yellow-dimm-2: rgba(234, 179, 8, .2);--vp-c-yellow-dimm-3: rgba(234, 179, 8, .5);--vp-c-red: #f43f5e;--vp-c-red-light: #fb7185;--vp-c-red-lighter: #fda4af;--vp-c-red-dark: #e11d48;--vp-c-red-darker: #be123c;--vp-c-red-dimm-1: rgba(244, 63, 94, .05);--vp-c-red-dimm-2: rgba(244, 63, 94, .2);--vp-c-red-dimm-3: rgba(244, 63, 94, .5);--vp-c-sponsor: #db2777}:root{--vp-c-bg: #ffffff;--vp-c-bg-elv: #ffffff;--vp-c-bg-elv-up: #ffffff;--vp-c-bg-elv-down: #f6f6f7;--vp-c-bg-elv-mute: #f6f6f7;--vp-c-bg-soft: #f6f6f7;--vp-c-bg-soft-up: #f9f9fa;--vp-c-bg-soft-down: #e3e3e5;--vp-c-bg-soft-mute: #e3e3e5;--vp-c-bg-alt: #f6f6f7;--vp-c-border: rgba(60, 60, 67, .29);--vp-c-divider: rgba(60, 60, 67, .12);--vp-c-gutter: rgba(60, 60, 67, .12);--vp-c-neutral: var(--vp-c-black);--vp-c-neutral-inverse: var(--vp-c-white);--vp-c-text-1: var(--vp-c-text-light-1);--vp-c-text-2: var(--vp-c-text-light-2);--vp-c-text-3: var(--vp-c-text-light-3);--vp-c-text-inverse-1: var(--vp-c-text-dark-1);--vp-c-text-inverse-2: var(--vp-c-text-dark-2);--vp-c-text-inverse-3: var(--vp-c-text-dark-3);--vp-c-text-code: #476582;--vp-c-brand: var(--vp-c-green);--vp-c-brand-light: var(--vp-c-green-light);--vp-c-brand-lighter: var(--vp-c-green-lighter);--vp-c-brand-dark: var(--vp-c-green-dark);--vp-c-brand-darker: var(--vp-c-green-darker);--vp-c-mute: #f6f6f7;--vp-c-mute-light: #f9f9fc;--vp-c-mute-lighter: #ffffff;--vp-c-mute-dark: #e3e3e5;--vp-c-mute-darker: #d7d7d9}.dark{--vp-c-bg: #1e1e20;--vp-c-bg-elv: #252529;--vp-c-bg-elv-up: #313136;--vp-c-bg-elv-down: #1e1e20;--vp-c-bg-elv-mute: #313136;--vp-c-bg-soft: #252529;--vp-c-bg-soft-up: #313136;--vp-c-bg-soft-down: #1e1e20;--vp-c-bg-soft-mute: #313136;--vp-c-bg-alt: #161618;--vp-c-border: rgba(82, 82, 89, .68);--vp-c-divider: rgba(82, 82, 89, .32);--vp-c-gutter: #000000;--vp-c-neutral: var(--vp-c-white);--vp-c-neutral-inverse: var(--vp-c-black);--vp-c-text-1: var(--vp-c-text-dark-1);--vp-c-text-2: var(--vp-c-text-dark-2);--vp-c-text-3: var(--vp-c-text-dark-3);--vp-c-text-inverse-1: var(--vp-c-text-light-1);--vp-c-text-inverse-2: var(--vp-c-text-light-2);--vp-c-text-inverse-3: var(--vp-c-text-light-3);--vp-c-text-code: #c9def1;--vp-c-mute: #313136;--vp-c-mute-light: #3a3a3c;--vp-c-mute-lighter: #505053;--vp-c-mute-dark: #2c2c30;--vp-c-mute-darker: #252529}:root{--vp-font-family-base: "Chinese Quotes", "Inter var", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--vp-font-family-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}: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-local-nav: 10;--vp-z-index-nav: 20;--vp-z-index-layout-top: 30;--vp-z-index-backdrop: 40;--vp-z-index-sidebar: 50;--vp-z-index-footer: 60}:root{--vp-icon-copy: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2'/%3E%3C/svg%3E");--vp-icon-copied: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2m-6 9 2 2 4-4'/%3E%3C/svg%3E")}: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-block-color: var(--vp-c-text-dark-1);--vp-code-block-bg: #292b30;--vp-code-block-bg-light: #1e1e20;--vp-code-block-divider-color: #000000;--vp-code-line-highlight-color: rgba(0, 0, 0, .5);--vp-code-line-number-color: var(--vp-c-text-dark-3);--vp-code-line-diff-add-color: var(--vp-c-green-dimm-2);--vp-code-line-diff-add-symbol-color: var(--vp-c-green);--vp-code-line-diff-remove-color: var(--vp-c-red-dimm-2);--vp-code-line-diff-remove-symbol-color: var(--vp-c-red);--vp-code-line-warning-color: var(--vp-c-yellow-dimm-2);--vp-code-line-error-color: var(--vp-c-red-dimm-2);--vp-code-copy-code-border-color: transparent;--vp-code-copy-code-bg: var(--vp-code-block-bg-light);--vp-code-copy-code-hover-border-color: var(--vp-c-divider);--vp-code-copy-code-hover-bg: var(--vp-code-block-bg-light);--vp-code-copy-code-active-text: var(--vp-c-text-dark-2);--vp-code-tab-divider: var(--vp-code-block-divider-color);--vp-code-tab-text-color: var(--vp-c-text-dark-2);--vp-code-tab-bg: var(--vp-code-block-bg);--vp-code-tab-hover-text-color: var(--vp-c-text-dark-1);--vp-code-tab-active-text-color: var(--vp-c-text-dark-1);--vp-code-tab-active-bar-color: var(--vp-c-brand)}.dark{--vp-code-block-bg: #161618}:root{--vp-button-brand-border: var(--vp-c-brand-lighter);--vp-button-brand-text: var(--vp-c-white);--vp-button-brand-bg: var(--vp-c-brand);--vp-button-brand-hover-border: var(--vp-c-brand-lighter);--vp-button-brand-hover-text: var(--vp-c-white);--vp-button-brand-hover-bg: var(--vp-c-brand-dark);--vp-button-brand-active-border: var(--vp-c-brand-lighter);--vp-button-brand-active-text: var(--vp-c-white);--vp-button-brand-active-bg: var(--vp-c-brand-darker);--vp-button-alt-border: var(--vp-c-border);--vp-button-alt-text: var(--vp-c-neutral);--vp-button-alt-bg: var(--vp-c-mute);--vp-button-alt-hover-border: var(--vp-c-border);--vp-button-alt-hover-text: var(--vp-c-neutral);--vp-button-alt-hover-bg: var(--vp-c-mute-dark);--vp-button-alt-active-border: var(--vp-c-border);--vp-button-alt-active-text: var(--vp-c-neutral);--vp-button-alt-active-bg: var(--vp-c-mute-darker);--vp-button-sponsor-border: var(--vp-c-gray-light-3);--vp-button-sponsor-text: var(--vp-c-text-light-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}.dark{--vp-button-sponsor-border: var(--vp-c-gray-dark-1);--vp-button-sponsor-text: var(--vp-c-text-dark-2)}:root{--vp-custom-block-font-size: 14px;--vp-custom-block-code-font-size: 13px;--vp-custom-block-info-border: var(--vp-c-border);--vp-custom-block-info-text: var(--vp-c-text-2);--vp-custom-block-info-bg: var(--vp-c-bg-soft-up);--vp-custom-block-info-code-bg: var(--vp-c-bg-soft);--vp-custom-block-tip-border: var(--vp-c-green);--vp-custom-block-tip-text: var(--vp-c-green-dark);--vp-custom-block-tip-bg: var(--vp-c-bg-soft-up);--vp-custom-block-tip-code-bg: var(--vp-c-bg-soft);--vp-custom-block-warning-border: var(--vp-c-yellow);--vp-custom-block-warning-text: var(--vp-c-yellow);--vp-custom-block-warning-bg: var(--vp-c-bg-soft-up);--vp-custom-block-warning-code-bg: var(--vp-c-bg-soft);--vp-custom-block-danger-border: var(--vp-c-red);--vp-custom-block-danger-text: var(--vp-c-red);--vp-custom-block-danger-bg: var(--vp-c-bg-soft-up);--vp-custom-block-danger-code-bg: var(--vp-c-bg-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-details-bg)}:root{--vp-input-border-color: var(--vp-c-border);--vp-input-bg-color: var(--vp-c-bg-alt);--vp-input-hover-border-color: var(--vp-c-gray);--vp-input-switch-bg-color: var(--vp-c-mute)}:root{--vp-nav-height: 64px;--vp-nav-bg-color: var(--vp-c-bg);--vp-nav-screen-bg-color: var(--vp-c-bg)}: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);--vp-home-hero-name-background: transparent;--vp-home-hero-image-background-image: none;--vp-home-hero-image-filter: none}:root{--vp-badge-info-border: var(--vp-c-border);--vp-badge-info-text: var(--vp-c-text-2);--vp-badge-info-bg: var(--vp-c-bg-soft-up);--vp-badge-tip-border: var(--vp-c-green-dark);--vp-badge-tip-text: var(--vp-c-green);--vp-badge-tip-bg: var(--vp-c-green-dimm-1);--vp-badge-warning-border: var(--vp-c-yellow-dark);--vp-badge-warning-text: var(--vp-c-yellow);--vp-badge-warning-bg: var(--vp-c-yellow-dimm-1);--vp-badge-danger-border: var(--vp-c-red-dark);--vp-badge-danger-text: var(--vp-c-red);--vp-badge-danger-bg: var(--vp-c-red-dimm-1)}: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);--vp-carbon-ads-hover-poweredby-color: var(--vp-c-text-1)}*,: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);direction:ltr;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}.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 th{color:var(--vp-custom-block-info-text)}.custom-block.info code{background-color:var(--vp-custom-block-info-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 th{color:var(--vp-custom-block-tip-text)}.custom-block.tip code{background-color:var(--vp-custom-block-tip-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 th{color:var(--vp-custom-block-warning-text)}.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 th{color:var(--vp-custom-block-danger-text)}.custom-block.danger code{background-color:var(--vp-custom-block-danger-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 th{color:var(--vp-custom-block-details-text)}.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}.custom-block.details summary+p{margin:8px 0}.custom-block a{color:inherit;font-weight:600}.custom-block a:hover{text-decoration:underline}.custom-block code{font-size:var(--vp-custom-block-code-font-size)}.dark .vp-code-light{display:none}html:not(.dark) .vp-code-dark{display:none}.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}.vp-code-group .tabs:after{position:absolute;right:0;bottom:0;left:0;height:1px;background-color:var(--vp-code-tab-divider);content:""}@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:absolute;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:10;height:1px;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-]{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{display:block}.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 .header-anchor{float:left;margin-left:-.87em;padding-right:.23em;font-weight:500;user-select:none;opacity:0;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 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}.vp-doc blockquote>p{margin:0;font-size:16px;color:var(--vp-c-text-2);transition:color .5s}.vp-doc a{font-weight:500;color:var(--vp-c-brand);text-decoration-style:dotted;transition:color .25s}.vp-doc a:hover{text-decoration:underline}.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{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 a{color:inherit;font-weight:600}.vp-doc .custom-block a:hover{text-decoration:underline}.vp-doc .custom-block code{font-size:var(--vp-custom-block-code-font-size);font-weight:700;color:inherit}.vp-doc .custom-block div[class*=language-]{margin:8px 0}.vp-doc .custom-block div[class*=language-] code{font-weight:400;background-color:transparent}.vp-doc :not(pre,h1,h2,h3,h4,h5,h6)>code{font-size:var(--vp-code-font-size)}.vp-doc :not(pre)>code{border-radius:4px;padding:3px 6px;color:var(--vp-c-text-code);background-color:var(--vp-c-mute);transition:color .5s,background-color .5s}.vp-doc h1>code,.vp-doc h2>code,.vp-doc h3>code{font-size:.9em}.vp-doc a>code{color:var(--vp-c-brand);transition:color .25s}.vp-doc a:hover>code{color:var(--vp-c-brand-dark)}.vp-doc div[class*=language-]{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-]{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;display:block;justify-content:center;align-items:center;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;left:-65px;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;width:64px;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:"Copied"}.vp-doc [class*=language-]>span.lang{position:absolute;top:2px;right:8px;z-index:2;font-size:12px;font-weight:500;color:var(--vp-c-text-dark-3);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}.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-bottom:4px;text-align:center;letter-spacing:1px;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-bg-soft-down)}.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[data-v-350d3852]{display:inline-block;margin-left:2px;border:1px solid transparent;border-radius:10px;padding:0 8px;line-height:18px;font-size:12px;font-weight:600;transform:translateY(-2px)}h1 .VPBadge[data-v-350d3852],h2 .VPBadge[data-v-350d3852],h3 .VPBadge[data-v-350d3852],h4 .VPBadge[data-v-350d3852],h5 .VPBadge[data-v-350d3852],h6 .VPBadge[data-v-350d3852]{vertical-align:top}h2 .VPBadge[data-v-350d3852]{border-radius:11px;line-height:20px}.VPBadge.info[data-v-350d3852]{border-color:var(--vp-badge-info-border);color:var(--vp-badge-info-text);background-color:var(--vp-badge-info-bg)}.VPBadge.tip[data-v-350d3852]{border-color:var(--vp-badge-tip-border);color:var(--vp-badge-tip-text);background-color:var(--vp-badge-tip-bg)}.VPBadge.warning[data-v-350d3852]{border-color:var(--vp-badge-warning-border);color:var(--vp-badge-warning-text);background-color:var(--vp-badge-warning-bg)}.VPBadge.danger[data-v-350d3852]{border-color:var(--vp-badge-danger-border);color:var(--vp-badge-danger-text);background-color:var(--vp-badge-danger-bg)}.VPSkipLink[data-v-c8616af1]{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);box-shadow:var(--vp-shadow-3);background-color:var(--vp-c-bg)}.VPSkipLink[data-v-c8616af1]:focus{height:auto;width:auto;clip:auto;clip-path:none}.dark .VPSkipLink[data-v-c8616af1]{color:var(--vp-c-green)}@media (min-width: 1280px){.VPSkipLink[data-v-c8616af1]{top:14px;left:16px}}.VPBackdrop[data-v-c79a1216]{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-c79a1216],.VPBackdrop.fade-leave-to[data-v-c79a1216]{opacity:0}.VPBackdrop.fade-leave-active[data-v-c79a1216]{transition-duration:.25s}@media (min-width: 1280px){.VPBackdrop[data-v-c79a1216]{display:none}}html:not(.dark) .VPImage.dark[data-v-6db2186b]{display:none}.dark .VPImage.light[data-v-6db2186b]{display:none}.title[data-v-f4ef19a3]{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}.title[data-v-f4ef19a3]:hover{opacity:.6}@media (min-width: 960px){.title[data-v-f4ef19a3]{flex-shrink:0}.VPNavBarTitle.has-sidebar .title[data-v-f4ef19a3]{border-bottom-color:var(--vp-c-divider)}}[data-v-f4ef19a3] .logo{margin-right:8px;height:24px}/*! @docsearch/css 3.3.3 | 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-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-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;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}@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{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{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;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;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;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{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:rgba(0,0,0,.2);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:rgba(0,0,0,.2);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:"\bb "}.DocSearch-Prefill{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;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}@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{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;user-select:none;white-space:nowrap}.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.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}}.DocSearch{--docsearch-primary-color: var(--vp-c-brand);--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-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 .DocSearch{--docsearch-modal-shadow: none;--docsearch-footer-shadow: none;--docsearch-logo-color: var(--vp-c-text-2);--docsearch-hit-background: var(--vp-c-bg-soft-mute);--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:32px;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: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);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:1px;letter-spacing:-12px;color:transparent}.DocSearch-Button .DocSearch-Button-Key:first-child:after{content:var(--673bc564);font-size:12px;letter-spacing:normal;color:var(--docsearch-muted-color)}.DocSearch-Button .DocSearch-Button-Key:first-child>*{display:none}.dark .DocSearch-Footer{border-top:1px solid var(--vp-c-divider)}.DocSearch-Form{border:1px solid var(--vp-c-brand);background-color:var(--vp-c-white)}.dark .DocSearch-Form{background-color:var(--vp-c-bg-soft-mute)}.DocSearch-Screen-Icon>svg{margin:auto}.icon[data-v-8f4dc553]{display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;fill:var(--vp-c-text-3);transition:fill .25s;flex-shrink:0}.VPNavBarMenuLink[data-v-37adc828]{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-37adc828],.VPNavBarMenuLink[data-v-37adc828]:hover{color:var(--vp-c-brand)}.VPMenuGroup+.VPMenuLink[data-v-d2c93bab]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.link[data-v-d2c93bab]{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-d2c93bab]:hover{color:var(--vp-c-brand);background-color:var(--vp-c-bg-elv-mute)}.link.active[data-v-d2c93bab]{color:var(--vp-c-brand)}.VPMenuGroup[data-v-69e747b5]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.VPMenuGroup[data-v-69e747b5]:first-child{margin-top:0;border-top:0;padding-top:0}.VPMenuGroup+.VPMenuGroup[data-v-69e747b5]{margin-top:12px;border-top:1px solid var(--vp-c-divider)}.title[data-v-69e747b5]{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-e7ea1737]{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-e7ea1737] .group{margin:0 -12px;padding:0 12px 12px}.VPMenu[data-v-e7ea1737] .group+.group{border-top:1px solid var(--vp-c-divider);padding:11px 12px 12px}.VPMenu[data-v-e7ea1737] .group:last-child{padding-bottom:0}.VPMenu[data-v-e7ea1737] .group+.item{border-top:1px solid var(--vp-c-divider);padding:11px 16px 0}.VPMenu[data-v-e7ea1737] .item{padding:0 16px;white-space:nowrap}.VPMenu[data-v-e7ea1737] .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-e7ea1737] .action{padding-left:24px}.VPFlyout[data-v-764effdf]{position:relative}.VPFlyout[data-v-764effdf]:hover{color:var(--vp-c-brand);transition:color .25s}.VPFlyout:hover .text[data-v-764effdf]{color:var(--vp-c-text-2)}.VPFlyout:hover .icon[data-v-764effdf]{fill:var(--vp-c-text-2)}.VPFlyout.active .text[data-v-764effdf]{color:var(--vp-c-brand)}.VPFlyout.active:hover .text[data-v-764effdf]{color:var(--vp-c-brand-dark)}.VPFlyout:hover .menu[data-v-764effdf],.button[aria-expanded=true]+.menu[data-v-764effdf]{opacity:1;visibility:visible;transform:translateY(0)}.button[data-v-764effdf]{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-764effdf]{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-764effdf]{margin-right:0;width:16px;height:16px;fill:currentColor}.text-icon[data-v-764effdf]{margin-left:4px;width:14px;height:14px;fill:currentColor}.icon[data-v-764effdf]{width:20px;height:20px;fill:currentColor;transition:fill .25s}.menu[data-v-764effdf]{position:absolute;top:calc(var(--vp-nav-height) / 2 + 20px);right:0;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s,transform .25s}.VPNavBarMenu[data-v-7f418b0f]{display:none}@media (min-width: 768px){.VPNavBarMenu[data-v-7f418b0f]{display:flex}}.VPNavBarTranslations[data-v-74abcbb9]{display:none}@media (min-width: 1280px){.VPNavBarTranslations[data-v-74abcbb9]{display:flex;align-items:center}}.title[data-v-74abcbb9]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.VPSwitch[data-v-f3c41672]{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}.VPSwitch[data-v-f3c41672]:hover{border-color:var(--vp-input-hover-border-color)}.check[data-v-f3c41672]{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}.icon[data-v-f3c41672]{position:relative;display:block;width:18px;height:18px;border-radius:50%;overflow:hidden}.icon[data-v-f3c41672] svg{position:absolute;top:3px;left:3px;width:12px;height:12px;fill:var(--vp-c-text-2)}.dark .icon[data-v-f3c41672] svg{fill:var(--vp-c-text-1);transition:opacity .25s}.sun[data-v-a9c8afb8]{opacity:1}.moon[data-v-a9c8afb8],.dark .sun[data-v-a9c8afb8]{opacity:0}.dark .moon[data-v-a9c8afb8]{opacity:1}.dark .VPSwitchAppearance[data-v-a9c8afb8] .check{transform:translate(18px)}.VPNavBarAppearance[data-v-f6a63727]{display:none}@media (min-width: 1280px){.VPNavBarAppearance[data-v-f6a63727]{display:flex;align-items:center}}.VPSocialLink[data-v-c530cc0a]{display:flex;justify-content:center;align-items:center;width:36px;height:36px;color:var(--vp-c-text-2);transition:color .5s}.VPSocialLink[data-v-c530cc0a]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPSocialLink[data-v-c530cc0a]>svg{width:20px;height:20px;fill:currentColor}.VPSocialLinks[data-v-f6988cfb]{display:flex;flex-wrap:wrap;justify-content:center}.VPNavBarSocialLinks[data-v-0394ad82]{display:none}@media (min-width: 1280px){.VPNavBarSocialLinks[data-v-0394ad82]{display:flex;align-items:center}}.VPNavBarExtra[data-v-40855f84]{display:none;margin-right:-12px}@media (min-width: 768px){.VPNavBarExtra[data-v-40855f84]{display:block}}@media (min-width: 1280px){.VPNavBarExtra[data-v-40855f84]{display:none}}.trans-title[data-v-40855f84]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.item.appearance[data-v-40855f84],.item.social-links[data-v-40855f84]{display:flex;align-items:center;padding:0 12px}.item.appearance[data-v-40855f84]{min-width:176px}.appearance-action[data-v-40855f84]{margin-right:-2px}.social-links-list[data-v-40855f84]{margin:-4px -8px}.VPNavBarHamburger[data-v-e5dd9c1c]{display:flex;justify-content:center;align-items:center;width:48px;height:var(--vp-nav-height)}@media (min-width: 768px){.VPNavBarHamburger[data-v-e5dd9c1c]{display:none}}.container[data-v-e5dd9c1c]{position:relative;width:16px;height:14px;overflow:hidden}.VPNavBarHamburger:hover .top[data-v-e5dd9c1c]{top:0;left:0;transform:translate(4px)}.VPNavBarHamburger:hover .middle[data-v-e5dd9c1c]{top:6px;left:0;transform:translate(0)}.VPNavBarHamburger:hover .bottom[data-v-e5dd9c1c]{top:12px;left:0;transform:translate(8px)}.VPNavBarHamburger.active .top[data-v-e5dd9c1c]{top:6px;transform:translate(0) rotate(225deg)}.VPNavBarHamburger.active .middle[data-v-e5dd9c1c]{top:6px;transform:translate(16px)}.VPNavBarHamburger.active .bottom[data-v-e5dd9c1c]{top:6px;transform:translate(0) rotate(135deg)}.VPNavBarHamburger.active:hover .top[data-v-e5dd9c1c],.VPNavBarHamburger.active:hover .middle[data-v-e5dd9c1c],.VPNavBarHamburger.active:hover .bottom[data-v-e5dd9c1c]{background-color:var(--vp-c-text-2);transition:top .25s,background-color .25s,transform .25s}.top[data-v-e5dd9c1c],.middle[data-v-e5dd9c1c],.bottom[data-v-e5dd9c1c]{position:absolute;width:16px;height:2px;background-color:var(--vp-c-text-1);transition:top .25s,background-color .5s,transform .25s}.top[data-v-e5dd9c1c]{top:0;left:0;transform:translate(0)}.middle[data-v-e5dd9c1c]{top:6px;left:0;transform:translate(8px)}.bottom[data-v-e5dd9c1c]{top:12px;left:0;transform:translate(4px)}.VPNavBar[data-v-1d30fa41]{position:relative;border-bottom:1px solid transparent;padding:0 8px 0 24px;height:var(--vp-nav-height);transition:border-color .5s,background-color .5s;pointer-events:none}.VPNavBar.has-sidebar[data-v-1d30fa41]{border-bottom-color:var(--vp-c-gutter)}@media (min-width: 768px){.VPNavBar[data-v-1d30fa41]{padding:0 32px}}@media (min-width: 960px){.VPNavBar.has-sidebar[data-v-1d30fa41]{border-bottom-color:transparent;padding:0}.VPNavBar.fill[data-v-1d30fa41]:not(.has-sidebar){border-bottom-color:var(--vp-c-gutter);background-color:var(--vp-nav-bg-color)}}.container[data-v-1d30fa41]{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[data-v-1d30fa41] *{pointer-events:auto}@media (min-width: 960px){.VPNavBar.has-sidebar .container[data-v-1d30fa41]{max-width:100%}}.title[data-v-1d30fa41]{flex-shrink:0;height:calc(var(--vp-nav-height) - 1px);transition:background-color .5s}@media (min-width: 960px){.VPNavBar.has-sidebar .title[data-v-1d30fa41]{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-1d30fa41]{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-1d30fa41]{flex-grow:1}@media (min-width: 960px){.VPNavBar.has-sidebar .content[data-v-1d30fa41]{position:relative;z-index:1;padding-right:32px;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .content[data-v-1d30fa41]{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-1d30fa41]{display:flex;justify-content:flex-end;align-items:center;height:calc(var(--vp-nav-height) - 1px);transition:background-color .5s}@media (min-width: 960px){.VPNavBar.has-sidebar .content-body[data-v-1d30fa41],.VPNavBar.fill .content-body[data-v-1d30fa41]{position:relative;background-color:var(--vp-nav-bg-color)}}.menu+.translations[data-v-1d30fa41]:before,.menu+.appearance[data-v-1d30fa41]:before,.menu+.social-links[data-v-1d30fa41]:before,.translations+.appearance[data-v-1d30fa41]:before,.appearance+.social-links[data-v-1d30fa41]:before{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--vp-c-divider);content:""}.menu+.appearance[data-v-1d30fa41]:before,.translations+.appearance[data-v-1d30fa41]:before{margin-right:16px}.appearance+.social-links[data-v-1d30fa41]:before{margin-left:16px}.social-links[data-v-1d30fa41]{margin-right:-8px}@media (min-width: 960px){.VPNavBar.has-sidebar .curtain[data-v-1d30fa41]{position:absolute;right:0;bottom:-31px;width:calc(100% - var(--vp-sidebar-width));height:32px}.VPNavBar.has-sidebar .curtain[data-v-1d30fa41]:before{display:block;width:100%;height:32px;background:linear-gradient(var(--vp-c-bg),transparent 70%);content:""}}@media (min-width: 1440px){.VPNavBar.has-sidebar .curtain[data-v-1d30fa41]{width:calc(100% - ((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width)))}}.VPNavScreenMenuLink[data-v-c328f34f]{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-c328f34f]:hover{color:var(--vp-c-brand)}.VPNavScreenMenuGroupLink[data-v-3d20956d]{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-3d20956d]:hover{color:var(--vp-c-brand)}.VPNavScreenMenuGroupSection[data-v-7478538b]{display:block}.title[data-v-7478538b]{line-height:32px;font-size:13px;font-weight:700;color:var(--vp-c-text-2);transition:color .25s}.VPNavScreenMenuGroup[data-v-a9a19324]{border-bottom:1px solid var(--vp-c-divider);height:48px;overflow:hidden;transition:border-color .5s}.VPNavScreenMenuGroup .items[data-v-a9a19324]{visibility:hidden}.VPNavScreenMenuGroup.open .items[data-v-a9a19324]{visibility:visible}.VPNavScreenMenuGroup.open[data-v-a9a19324]{padding-bottom:10px;height:auto}.VPNavScreenMenuGroup.open .button[data-v-a9a19324]{padding-bottom:6px;color:var(--vp-c-brand)}.VPNavScreenMenuGroup.open .button-icon[data-v-a9a19324]{transform:rotate(45deg)}.button[data-v-a9a19324]{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-a9a19324]:hover{color:var(--vp-c-brand)}.button-icon[data-v-a9a19324]{width:14px;height:14px;fill:var(--vp-c-text-2);transition:fill .5s,transform .25s}.group[data-v-a9a19324]:first-child{padding-top:0}.group+.group[data-v-a9a19324],.group+.item[data-v-a9a19324]{padding-top:4px}.VPNavScreenAppearance[data-v-add8f686]{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-add8f686]{line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.VPNavScreenTranslations[data-v-d72aa483]{height:24px;overflow:hidden}.VPNavScreenTranslations.open[data-v-d72aa483]{height:auto}.title[data-v-d72aa483]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-text-1)}.icon[data-v-d72aa483]{width:16px;height:16px;fill:currentColor}.icon.lang[data-v-d72aa483]{margin-right:8px}.icon.chevron[data-v-d72aa483]{margin-left:4px}.list[data-v-d72aa483]{padding:4px 0 0 24px}.link[data-v-d72aa483]{line-height:32px;font-size:13px;color:var(--vp-c-text-1)}.VPNavScreen[data-v-724636ae]{position:fixed;top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 1px);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 .5s;pointer-events:auto}.VPNavScreen.fade-enter-active[data-v-724636ae],.VPNavScreen.fade-leave-active[data-v-724636ae]{transition:opacity .25s}.VPNavScreen.fade-enter-active .container[data-v-724636ae],.VPNavScreen.fade-leave-active .container[data-v-724636ae]{transition:transform .25s ease}.VPNavScreen.fade-enter-from[data-v-724636ae],.VPNavScreen.fade-leave-to[data-v-724636ae]{opacity:0}.VPNavScreen.fade-enter-from .container[data-v-724636ae],.VPNavScreen.fade-leave-to .container[data-v-724636ae]{transform:translateY(-8px)}@media (min-width: 768px){.VPNavScreen[data-v-724636ae]{display:none}}.container[data-v-724636ae]{margin:0 auto;padding:24px 0 96px;max-width:288px}.menu+.translations[data-v-724636ae],.menu+.appearance[data-v-724636ae],.translations+.appearance[data-v-724636ae]{margin-top:24px}.menu+.social-links[data-v-724636ae]{margin-top:16px}.appearance+.social-links[data-v-724636ae]{margin-top:16px}.VPNav[data-v-7e5bc4a5]{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-7e5bc4a5]{position:fixed}}.root[data-v-8f12e865]{position:relative;z-index:1}.nested[data-v-8f12e865]{padding-left:13px}.outline-link[data-v-8f12e865]{display:block;line-height:28px;color:var(--vp-c-text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .5s;font-weight:500}.outline-link[data-v-8f12e865]:hover,.outline-link.active[data-v-8f12e865]{color:var(--vp-c-text-1);transition:color .25s}.outline-link.nested[data-v-8f12e865]{padding-left:13px}.VPLocalNavOutlineDropdown[data-v-079b16a8]{padding:12px 20px 11px}.VPLocalNavOutlineDropdown button[data-v-079b16a8]{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-079b16a8]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPLocalNavOutlineDropdown button.open[data-v-079b16a8]{color:var(--vp-c-text-1)}.icon[data-v-079b16a8]{display:inline-block;vertical-align:middle;margin-left:2px;width:14px;height:14px;fill:currentColor}[data-v-079b16a8] .outline-link{font-size:14px;padding:2px 0}.open>.icon[data-v-079b16a8]{transform:rotate(90deg)}.items[data-v-079b16a8]{position:absolute;left:20px;right:20px;top:64px;background-color:var(--vp-local-nav-bg-color);padding:4px 10px 16px;border:1px solid var(--vp-c-divider);border-radius:8px;max-height:calc(var(--vp-vh, 100vh) - 86px);overflow:hidden auto;box-shadow:var(--vp-shadow-3)}.top-link[data-v-079b16a8]{display:block;color:var(--vp-c-brand);font-size:13px;font-weight:500;padding:6px 0;margin:0 13px 10px;border-bottom:1px solid var(--vp-c-divider)}.flyout-enter-active[data-v-079b16a8]{transition:all .2s ease-out}.flyout-leave-active[data-v-079b16a8]{transition:all .15s ease-in}.flyout-enter-from[data-v-079b16a8],.flyout-leave-to[data-v-079b16a8]{opacity:0;transform:translateY(-16px)}.VPLocalNav[data-v-f5a2ca58]{position:sticky;top:0;left:0;z-index:var(--vp-z-index-local-nav);display:flex;justify-content:space-between;align-items:center;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);transition:border-color .5s,background-color .5s}@media (min-width: 960px){.VPLocalNav[data-v-f5a2ca58]{display:none}}.menu[data-v-f5a2ca58]{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-f5a2ca58]:hover{color:var(--vp-c-text-1);transition:color .25s}@media (min-width: 768px){.menu[data-v-f5a2ca58]{padding:0 32px}}.menu-icon[data-v-f5a2ca58]{margin-right:8px;width:16px;height:16px;fill:currentColor}.VPOutlineDropdown[data-v-f5a2ca58]{padding:12px 24px 11px}@media (min-width: 768px){.VPOutlineDropdown[data-v-f5a2ca58]{padding:12px 32px 11px}}.VPSidebarItem.level-0[data-v-c4656e6d]{padding-bottom:24px}.VPSidebarItem.collapsed.level-0[data-v-c4656e6d]{padding-bottom:10px}.item[data-v-c4656e6d]{position:relative;display:flex;width:100%}.VPSidebarItem.collapsible>.item[data-v-c4656e6d]{cursor:pointer}.indicator[data-v-c4656e6d]{position:absolute;top:6px;bottom:6px;left:-17px;width:1px;transition:background-color .25s}.VPSidebarItem.level-2.is-active>.item>.indicator[data-v-c4656e6d],.VPSidebarItem.level-3.is-active>.item>.indicator[data-v-c4656e6d],.VPSidebarItem.level-4.is-active>.item>.indicator[data-v-c4656e6d],.VPSidebarItem.level-5.is-active>.item>.indicator[data-v-c4656e6d]{background-color:var(--vp-c-brand)}.link[data-v-c4656e6d]{display:flex;align-items:center;flex-grow:1}.text[data-v-c4656e6d]{flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;transition:color .25s}.VPSidebarItem.level-0 .text[data-v-c4656e6d]{font-weight:700;color:var(--vp-c-text-1)}.VPSidebarItem.level-1 .text[data-v-c4656e6d],.VPSidebarItem.level-2 .text[data-v-c4656e6d],.VPSidebarItem.level-3 .text[data-v-c4656e6d],.VPSidebarItem.level-4 .text[data-v-c4656e6d],.VPSidebarItem.level-5 .text[data-v-c4656e6d]{font-weight:500;color:var(--vp-c-text-2)}.VPSidebarItem.level-0.is-link>.item>.link:hover .text[data-v-c4656e6d],.VPSidebarItem.level-1.is-link>.item>.link:hover .text[data-v-c4656e6d],.VPSidebarItem.level-2.is-link>.item>.link:hover .text[data-v-c4656e6d],.VPSidebarItem.level-3.is-link>.item>.link:hover .text[data-v-c4656e6d],.VPSidebarItem.level-4.is-link>.item>.link:hover .text[data-v-c4656e6d],.VPSidebarItem.level-5.is-link>.item>.link:hover .text[data-v-c4656e6d]{color:var(--vp-c-brand)}.VPSidebarItem.level-0.has-active>.item>.link>.text[data-v-c4656e6d],.VPSidebarItem.level-1.has-active>.item>.link>.text[data-v-c4656e6d],.VPSidebarItem.level-2.has-active>.item>.link>.text[data-v-c4656e6d],.VPSidebarItem.level-3.has-active>.item>.link>.text[data-v-c4656e6d],.VPSidebarItem.level-4.has-active>.item>.link>.text[data-v-c4656e6d],.VPSidebarItem.level-5.has-active>.item>.link>.text[data-v-c4656e6d]{color:var(--vp-c-text-1)}.VPSidebarItem.level-0.is-active>.item .link>.text[data-v-c4656e6d],.VPSidebarItem.level-1.is-active>.item .link>.text[data-v-c4656e6d],.VPSidebarItem.level-2.is-active>.item .link>.text[data-v-c4656e6d],.VPSidebarItem.level-3.is-active>.item .link>.text[data-v-c4656e6d],.VPSidebarItem.level-4.is-active>.item .link>.text[data-v-c4656e6d],.VPSidebarItem.level-5.is-active>.item .link>.text[data-v-c4656e6d]{color:var(--vp-c-brand)}.caret[data-v-c4656e6d]{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}.item:hover .caret[data-v-c4656e6d]{color:var(--vp-c-text-2)}.item:hover .caret[data-v-c4656e6d]:hover{color:var(--vp-c-text-1)}.caret-icon[data-v-c4656e6d]{width:18px;height:18px;fill:currentColor;transform:rotate(90deg);transition:transform .25s}.VPSidebarItem.collapsed .caret-icon[data-v-c4656e6d]{transform:rotate(0)}.VPSidebarItem.level-1 .items[data-v-c4656e6d],.VPSidebarItem.level-2 .items[data-v-c4656e6d],.VPSidebarItem.level-3 .items[data-v-c4656e6d],.VPSidebarItem.level-4 .items[data-v-c4656e6d],.VPSidebarItem.level-5 .items[data-v-c4656e6d]{border-left:1px solid var(--vp-c-divider);padding-left:16px}.VPSidebarItem.collapsed .items[data-v-c4656e6d]{display:none}.VPSidebar[data-v-139a1f1d]{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}.VPSidebar.open[data-v-139a1f1d]{opacity:1;visibility:visible;transform:translate(0);transition:opacity .25s,transform .5s cubic-bezier(.19,1,.22,1)}.dark .VPSidebar[data-v-139a1f1d]{box-shadow:var(--vp-shadow-1)}@media (min-width: 960px){.VPSidebar[data-v-139a1f1d]{z-index:1;padding-top:var(--vp-nav-height);padding-bottom:128px;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-139a1f1d]{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-139a1f1d]{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-139a1f1d]{outline:0}.group+.group[data-v-139a1f1d]{border-top:1px solid var(--vp-c-divider);padding-top:10px}@media (min-width: 960px){.group[data-v-139a1f1d]{padding-top:10px;width:calc(var(--vp-sidebar-width) - 64px)}}.VPButton[data-v-567ba664]{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-567ba664]:active{transition:color .1s,border-color .1s,background-color .1s}.VPButton.medium[data-v-567ba664]{border-radius:20px;padding:0 20px;line-height:38px;font-size:14px}.VPButton.big[data-v-567ba664]{border-radius:24px;padding:0 24px;line-height:46px;font-size:16px}.VPButton.brand[data-v-567ba664]{border-color:var(--vp-button-brand-border);color:var(--vp-button-brand-text);background-color:var(--vp-button-brand-bg)}.VPButton.brand[data-v-567ba664]: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-567ba664]: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-567ba664]{border-color:var(--vp-button-alt-border);color:var(--vp-button-alt-text);background-color:var(--vp-button-alt-bg)}.VPButton.alt[data-v-567ba664]: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-567ba664]: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-567ba664]{border-color:var(--vp-button-sponsor-border);color:var(--vp-button-sponsor-text);background-color:var(--vp-button-sponsor-bg)}.VPButton.sponsor[data-v-567ba664]: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-567ba664]:active{border-color:var(--vp-button-sponsor-active-border);color:var(--vp-button-sponsor-active-text);background-color:var(--vp-button-sponsor-active-bg)}.VPHero[data-v-fd2650d5]{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-fd2650d5]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 48px 64px}}@media (min-width: 960px){.VPHero[data-v-fd2650d5]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 64px 64px}}.container[data-v-fd2650d5]{display:flex;flex-direction:column;margin:0 auto;max-width:1152px}@media (min-width: 960px){.container[data-v-fd2650d5]{flex-direction:row}}.main[data-v-fd2650d5]{position:relative;z-index:10;order:2;flex-grow:1;flex-shrink:0}.VPHero.has-image .container[data-v-fd2650d5]{text-align:center}@media (min-width: 960px){.VPHero.has-image .container[data-v-fd2650d5]{text-align:left}}@media (min-width: 960px){.main[data-v-fd2650d5]{order:1;width:calc((100% / 3) * 2)}.VPHero.has-image .main[data-v-fd2650d5]{max-width:592px}}.name[data-v-fd2650d5],.text[data-v-fd2650d5]{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-fd2650d5],.VPHero.has-image .text[data-v-fd2650d5]{margin:0 auto}.name[data-v-fd2650d5]{color:var(--vp-home-hero-name-color)}.clip[data-v-fd2650d5]{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-fd2650d5],.text[data-v-fd2650d5]{max-width:576px;line-height:56px;font-size:48px}}@media (min-width: 960px){.name[data-v-fd2650d5],.text[data-v-fd2650d5]{line-height:64px;font-size:56px}.VPHero.has-image .name[data-v-fd2650d5],.VPHero.has-image .text[data-v-fd2650d5]{margin:0}}.tagline[data-v-fd2650d5]{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-fd2650d5]{margin:0 auto}@media (min-width: 640px){.tagline[data-v-fd2650d5]{padding-top:12px;max-width:576px;line-height:32px;font-size:20px}}@media (min-width: 960px){.tagline[data-v-fd2650d5]{line-height:36px;font-size:24px}.VPHero.has-image .tagline[data-v-fd2650d5]{margin:0}}.actions[data-v-fd2650d5]{display:flex;flex-wrap:wrap;margin:-6px;padding-top:24px}.VPHero.has-image .actions[data-v-fd2650d5]{justify-content:center}@media (min-width: 640px){.actions[data-v-fd2650d5]{padding-top:32px}}@media (min-width: 960px){.VPHero.has-image .actions[data-v-fd2650d5]{justify-content:flex-start}}.action[data-v-fd2650d5]{flex-shrink:0;padding:6px}.image[data-v-fd2650d5]{order:1;margin:-76px -24px -48px}@media (min-width: 640px){.image[data-v-fd2650d5]{margin:-108px -24px -48px}}@media (min-width: 960px){.image[data-v-fd2650d5]{flex-grow:1;order:2;margin:0;min-height:100%}}.image-container[data-v-fd2650d5]{position:relative;margin:0 auto;width:320px;height:320px}@media (min-width: 640px){.image-container[data-v-fd2650d5]{width:392px;height:392px}}@media (min-width: 960px){.image-container[data-v-fd2650d5]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;transform:translate(-32px,-32px)}}.image-bg[data-v-fd2650d5]{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-fd2650d5]{width:256px;height:256px}}@media (min-width: 960px){.image-bg[data-v-fd2650d5]{width:320px;height:320px}}[data-v-fd2650d5] .image-src{position:absolute;top:50%;left:50%;max-width:192px;max-height:192px;transform:translate(-50%,-50%)}@media (min-width: 640px){[data-v-fd2650d5] .image-src{max-width:256px;max-height:256px}}@media (min-width: 960px){[data-v-fd2650d5] .image-src{max-width:320px;max-height:320px}}.VPFeature[data-v-837f6cca]{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-837f6cca]:hover{border-color:var(--vp-c-brand);background-color:var(--vp-c-bg-soft-up)}.box[data-v-837f6cca]{display:flex;flex-direction:column;padding:24px;height:100%}.VPFeature[data-v-837f6cca] .VPImage{width:48px;height:48px;margin-bottom:20px}.icon[data-v-837f6cca]{display:flex;justify-content:center;align-items:center;margin-bottom:20px;border-radius:6px;background-color:var(--vp-c-bg-soft-down);width:48px;height:48px;font-size:24px;transition:background-color .25s}.title[data-v-837f6cca]{line-height:24px;font-size:16px;font-weight:600}.details[data-v-837f6cca]{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-837f6cca]{padding-top:8px}.link-text-value[data-v-837f6cca]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-brand)}.link-text-icon[data-v-837f6cca]{display:inline-block;margin-left:6px;width:14px;height:14px;fill:currentColor}.VPFeatures[data-v-6816157f]{position:relative;padding:0 24px}@media (min-width: 640px){.VPFeatures[data-v-6816157f]{padding:0 48px}}@media (min-width: 960px){.VPFeatures[data-v-6816157f]{padding:0 64px}}.container[data-v-6816157f]{margin:0 auto;max-width:1152px}.items[data-v-6816157f]{display:flex;flex-wrap:wrap;margin:-8px}.item[data-v-6816157f]{padding:8px;width:100%}@media (min-width: 640px){.item.grid-2[data-v-6816157f],.item.grid-4[data-v-6816157f],.item.grid-6[data-v-6816157f]{width:50%}}@media (min-width: 768px){.item.grid-2[data-v-6816157f],.item.grid-4[data-v-6816157f]{width:50%}.item.grid-3[data-v-6816157f],.item.grid-6[data-v-6816157f]{width:calc(100% / 3)}}@media (min-width: 960px){.item.grid-4[data-v-6816157f]{width:25%}}.VPHome[data-v-d82743a8]{padding-bottom:96px}.VPHome[data-v-d82743a8] .VPHomeSponsors{margin-top:112px;margin-bottom:-128px}@media (min-width: 768px){.VPHome[data-v-d82743a8]{padding-bottom:128px}}.VPDocAsideOutline[data-v-ff0f39c8]{display:none}.VPDocAsideOutline.has-outline[data-v-ff0f39c8]{display:block}.content[data-v-ff0f39c8]{position:relative;border-left:1px solid var(--vp-c-divider);padding-left:16px;font-size:13px;font-weight:500}.outline-marker[data-v-ff0f39c8]{position:absolute;top:32px;left:-1px;z-index:0;opacity:0;width:1px;height:18px;background-color:var(--vp-c-brand);transition:top .25s cubic-bezier(0,1,.5,1),background-color .5s,opacity .25s}.outline-title[data-v-ff0f39c8]{letter-spacing:.4px;line-height:28px;font-size:13px;font-weight:600}.VPDocAside[data-v-3f215769]{display:flex;flex-direction:column;flex-grow:1}.spacer[data-v-3f215769]{flex-grow:1}.VPDocAside[data-v-3f215769] .spacer+.VPDocAsideSponsors,.VPDocAside[data-v-3f215769] .spacer+.VPDocAsideCarbonAds{margin-top:24px}.VPDocAside[data-v-3f215769] .VPDocAsideSponsors+.VPDocAsideCarbonAds{margin-top:16px}.VPLastUpdated[data-v-7b3ebfe1]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 640px){.VPLastUpdated[data-v-7b3ebfe1]{line-height:32px;font-size:14px;font-weight:500}}.VPDocFooter[data-v-face870a]{margin-top:64px}.edit-info[data-v-face870a]{padding-bottom:18px}@media (min-width: 640px){.edit-info[data-v-face870a]{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px}}.edit-link-button[data-v-face870a]{display:flex;align-items:center;border:0;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-brand);transition:color .25s}.edit-link-button[data-v-face870a]:hover{color:var(--vp-c-brand-dark)}.edit-link-icon[data-v-face870a]{margin-right:8px;width:14px;height:14px;fill:currentColor}.prev-next[data-v-face870a]{border-top:1px solid var(--vp-c-divider);padding-top:24px}@media (min-width: 640px){.prev-next[data-v-face870a]{display:flex}}.pager.has-prev[data-v-face870a]{padding-top:8px}@media (min-width: 640px){.pager[data-v-face870a]{display:flex;flex-direction:column;flex-shrink:0;width:50%}.pager.has-prev[data-v-face870a]{padding-top:0;padding-left:16px}}.pager-link[data-v-face870a]{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-face870a]:hover{border-color:var(--vp-c-brand)}.pager-link.next[data-v-face870a]{margin-left:auto;text-align:right}.desc[data-v-face870a]{display:block;line-height:20px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.title[data-v-face870a]{display:block;line-height:20px;font-size:14px;font-weight:500;color:var(--vp-c-brand);transition:color .25s}.VPDocOutlineDropdown[data-v-2edece88]{margin-bottom:42px}.VPDocOutlineDropdown button[data-v-2edece88]{display:block;font-size:14px;font-weight:500;line-height:24px;color:var(--vp-c-text-2);transition:color .5s;border:1px solid var(--vp-c-border);padding:4px 12px;border-radius:8px}.VPDocOutlineDropdown button[data-v-2edece88]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPDocOutlineDropdown button.open[data-v-2edece88]{color:var(--vp-c-text-1)}.icon[data-v-2edece88]{display:inline-block;vertical-align:middle;margin-left:2px;width:14px;height:14px;fill:currentColor}[data-v-2edece88] .outline-link{font-size:13px}.open>.icon[data-v-2edece88]{transform:rotate(90deg)}.items[data-v-2edece88]{margin-top:10px;border-left:1px solid var(--vp-c-divider)}.VPDoc[data-v-c4b0d3cf]{padding:32px 24px 96px;width:100%}.VPDoc .VPDocOutlineDropdown[data-v-c4b0d3cf]{display:none}@media (min-width: 960px) and (max-width: 1280px){.VPDoc .VPDocOutlineDropdown[data-v-c4b0d3cf]{display:block}}@media (min-width: 768px){.VPDoc[data-v-c4b0d3cf]{padding:48px 32px 128px}}@media (min-width: 960px){.VPDoc[data-v-c4b0d3cf]{padding:32px 32px 0}.VPDoc:not(.has-sidebar) .container[data-v-c4b0d3cf]{display:flex;justify-content:center;max-width:992px}.VPDoc:not(.has-sidebar) .content[data-v-c4b0d3cf]{max-width:752px}}@media (min-width: 1280px){.VPDoc .container[data-v-c4b0d3cf]{display:flex;justify-content:center}.VPDoc .aside[data-v-c4b0d3cf]{display:block}}@media (min-width: 1440px){.VPDoc:not(.has-sidebar) .content[data-v-c4b0d3cf]{max-width:784px}.VPDoc:not(.has-sidebar) .container[data-v-c4b0d3cf]{max-width:1104px}}.container[data-v-c4b0d3cf]{margin:0 auto;width:100%}.aside[data-v-c4b0d3cf]{position:relative;display:none;order:2;flex-grow:1;padding-left:32px;width:100%;max-width:256px}.left-aside[data-v-c4b0d3cf]{order:1;padding-left:unset;padding-right:32px}.aside-container[data-v-c4b0d3cf]{position:fixed;top:0;padding-top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + var(--vp-doc-top-height, 0px) + 32px);width:224px;height:100vh;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.aside-container[data-v-c4b0d3cf]::-webkit-scrollbar{display:none}.aside-curtain[data-v-c4b0d3cf]{position:fixed;bottom:0;z-index:10;width:224px;height:32px;background:linear-gradient(transparent,var(--vp-c-bg) 70%)}.aside-content[data-v-c4b0d3cf]{display:flex;flex-direction:column;min-height:calc(100vh - (var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 32px));padding-bottom:32px}.content[data-v-c4b0d3cf]{position:relative;margin:0 auto;width:100%}@media (min-width: 960px){.content[data-v-c4b0d3cf]{padding:0 32px 128px}}@media (min-width: 1280px){.content[data-v-c4b0d3cf]{order:1;margin:0;min-width:640px}}.content-container[data-v-c4b0d3cf]{margin:0 auto}.VPDoc.has-aside .content-container[data-v-c4b0d3cf]{max-width:688px}.NotFound[data-v-c70503b8]{padding:64px 24px 96px;text-align:center}@media (min-width: 768px){.NotFound[data-v-c70503b8]{padding:96px 32px 168px}}.code[data-v-c70503b8]{line-height:64px;font-size:64px;font-weight:600}.title[data-v-c70503b8]{padding-top:12px;letter-spacing:2px;line-height:20px;font-size:20px;font-weight:700}.divider[data-v-c70503b8]{margin:24px auto 18px;width:64px;height:1px;background-color:var(--vp-c-divider)}.quote[data-v-c70503b8]{margin:0 auto;max-width:256px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.action[data-v-c70503b8]{padding-top:20px}.link[data-v-c70503b8]{display:inline-block;border:1px solid var(--vp-c-brand);border-radius:16px;padding:3px 16px;font-size:14px;font-weight:500;color:var(--vp-c-brand);transition:border-color .25s,color .25s}.link[data-v-c70503b8]:hover{border-color:var(--vp-c-brand-dark);color:var(--vp-c-brand-dark)}.VPContent[data-v-a494bd1d]{flex-grow:1;flex-shrink:0;margin:var(--vp-layout-top-height, 0px) auto 0;width:100%}.VPContent.is-home[data-v-a494bd1d]{width:100%;max-width:100%}.VPContent.has-sidebar[data-v-a494bd1d]{margin:0}@media (min-width: 960px){.VPContent[data-v-a494bd1d]{padding-top:var(--vp-nav-height)}.VPContent.has-sidebar[data-v-a494bd1d]{margin:var(--vp-layout-top-height, 0px) 0 0;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPContent.has-sidebar[data-v-a494bd1d]{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-2f86ebd2]{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-2f86ebd2]{display:none}@media (min-width: 768px){.VPFooter[data-v-2f86ebd2]{padding:32px}}.container[data-v-2f86ebd2]{margin:0 auto;max-width:var(--vp-layout-max-width);text-align:center}.message[data-v-2f86ebd2],.copyright[data-v-2f86ebd2]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.message[data-v-2f86ebd2]{order:2}.copyright[data-v-2f86ebd2]{order:1}.Layout[data-v-b2cf3e0b]{display:flex;flex-direction:column;min-height:100vh}.VPHomeSponsors[data-v-3c6e61c2]{border-top:1px solid var(--vp-c-gutter);padding:88px 24px 96px;background-color:var(--vp-c-bg)}.container[data-v-3c6e61c2]{margin:0 auto;max-width:1152px}.love[data-v-3c6e61c2]{margin:0 auto;width:28px;height:28px;color:var(--vp-c-text-3)}.icon[data-v-3c6e61c2]{width:28px;height:28px;fill:currentColor}.message[data-v-3c6e61c2]{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-3c6e61c2]{padding-top:32px}.action[data-v-3c6e61c2]{padding-top:40px;text-align:center}.VPTeamPage[data-v-10b00018]{padding-bottom:96px}@media (min-width: 768px){.VPTeamPage[data-v-10b00018]{padding-bottom:128px}}.VPTeamPageSection+.VPTeamPageSection[data-v-10b00018-s],.VPTeamMembers+.VPTeamPageSection[data-v-10b00018-s]{margin-top:64px}.VPTeamMembers+.VPTeamMembers[data-v-10b00018-s]{margin-top:24px}@media (min-width: 768px){.VPTeamPageTitle+.VPTeamPageSection[data-v-10b00018-s]{margin-top:16px}.VPTeamPageSection+.VPTeamPageSection[data-v-10b00018-s],.VPTeamMembers+.VPTeamPageSection[data-v-10b00018-s]{margin-top:96px}}.VPTeamMembers[data-v-10b00018-s]{padding:0 24px}@media (min-width: 768px){.VPTeamMembers[data-v-10b00018-s]{padding:0 48px}}@media (min-width: 960px){.VPTeamMembers[data-v-10b00018-s]{padding:0 64px}}.VPTeamPageTitle[data-v-bf2cbdac]{padding:48px 32px;text-align:center}@media (min-width: 768px){.VPTeamPageTitle[data-v-bf2cbdac]{padding:64px 48px 48px}}@media (min-width: 960px){.VPTeamPageTitle[data-v-bf2cbdac]{padding:80px 64px 48px}}.title[data-v-bf2cbdac]{letter-spacing:0;line-height:44px;font-size:36px;font-weight:500}@media (min-width: 768px){.title[data-v-bf2cbdac]{letter-spacing:-.5px;line-height:56px;font-size:48px}}.lead[data-v-bf2cbdac]{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-bf2cbdac]{max-width:592px;letter-spacing:.15px;line-height:28px;font-size:20px}}.VPTeamPageSection[data-v-b1a88750]{padding:0 32px}@media (min-width: 768px){.VPTeamPageSection[data-v-b1a88750]{padding:0 48px}}@media (min-width: 960px){.VPTeamPageSection[data-v-b1a88750]{padding:0 64px}}.title[data-v-b1a88750]{position:relative;margin:0 auto;max-width:1152px;text-align:center;color:var(--vp-c-text-2)}.title-line[data-v-b1a88750]{position:absolute;top:16px;left:0;width:100%;height:1px;background-color:var(--vp-c-divider)}.title-text[data-v-b1a88750]{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-b1a88750]{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-b1a88750]{padding-top:40px}.VPTeamMembersItem[data-v-1739ab5f]{display:flex;flex-direction:column;gap:2px;border-radius:12px;width:100%;height:100%;overflow:hidden}.VPTeamMembersItem.small .profile[data-v-1739ab5f]{padding:32px}.VPTeamMembersItem.small .data[data-v-1739ab5f]{padding-top:20px}.VPTeamMembersItem.small .avatar[data-v-1739ab5f]{width:64px;height:64px}.VPTeamMembersItem.small .name[data-v-1739ab5f]{line-height:24px;font-size:16px}.VPTeamMembersItem.small .affiliation[data-v-1739ab5f]{padding-top:4px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .desc[data-v-1739ab5f]{padding-top:12px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .links[data-v-1739ab5f]{margin:0 -16px -20px;padding:10px 0 0}.VPTeamMembersItem.medium .profile[data-v-1739ab5f]{padding:48px 32px}.VPTeamMembersItem.medium .data[data-v-1739ab5f]{padding-top:24px;text-align:center}.VPTeamMembersItem.medium .avatar[data-v-1739ab5f]{width:96px;height:96px}.VPTeamMembersItem.medium .name[data-v-1739ab5f]{letter-spacing:.15px;line-height:28px;font-size:20px}.VPTeamMembersItem.medium .affiliation[data-v-1739ab5f]{padding-top:4px;font-size:16px}.VPTeamMembersItem.medium .desc[data-v-1739ab5f]{padding-top:16px;max-width:288px;font-size:16px}.VPTeamMembersItem.medium .links[data-v-1739ab5f]{margin:0 -16px -12px;padding:16px 12px 0}.profile[data-v-1739ab5f]{flex-grow:1;background-color:var(--vp-c-bg-soft)}.data[data-v-1739ab5f]{text-align:center}.avatar[data-v-1739ab5f]{position:relative;flex-shrink:0;margin:0 auto;border-radius:50%;box-shadow:var(--vp-shadow-3)}.avatar-img[data-v-1739ab5f]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;object-fit:cover}.name[data-v-1739ab5f]{margin:0;font-weight:600}.affiliation[data-v-1739ab5f]{margin:0;font-weight:500;color:var(--vp-c-text-2)}.org.link[data-v-1739ab5f]{color:var(--vp-c-text-2);transition:color .25s}.org.link[data-v-1739ab5f]:hover{color:var(--vp-c-brand)}.desc[data-v-1739ab5f]{margin:0 auto}.links[data-v-1739ab5f]{display:flex;justify-content:center;height:56px}.sp-link[data-v-1739ab5f]{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-1739ab5f]:hover,.sp .sp-link.link[data-v-1739ab5f]:focus{outline:none;color:var(--vp-c-white);background-color:var(--vp-c-sponsor)}.sp-icon[data-v-1739ab5f]{margin-right:8px;width:16px;height:16px;fill:currentColor}.VPTeamMembers.small .container[data-v-04685dce]{grid-template-columns:repeat(auto-fit,minmax(224px,1fr))}.VPTeamMembers.small.count-1 .container[data-v-04685dce]{max-width:276px}.VPTeamMembers.small.count-2 .container[data-v-04685dce]{max-width:576px}.VPTeamMembers.small.count-3 .container[data-v-04685dce]{max-width:876px}.VPTeamMembers.medium .container[data-v-04685dce]{grid-template-columns:repeat(auto-fit,minmax(256px,1fr))}@media (min-width: 375px){.VPTeamMembers.medium .container[data-v-04685dce]{grid-template-columns:repeat(auto-fit,minmax(288px,1fr))}}.VPTeamMembers.medium.count-1 .container[data-v-04685dce]{max-width:368px}.VPTeamMembers.medium.count-2 .container[data-v-04685dce]{max-width:760px}.container[data-v-04685dce]{display:grid;gap:24px;margin:0 auto;max-width:1152px}img[data-v-e2ed34b6]{margin:0 auto}:root{--vp-c-brand: #16c5fe;--vp-c-green: #16c5fe;--vp-c-green-light: #109ef7;--vp-c-green-lighter: #109ef7;--vp-c-green-dark: #109ef7;--vp-c-green-darker: #109ef7}.dark{--vp-c-bg: #000;--vp-code-block-bg: #111;--vp-c-bg-alt: rgba(0, 0, 0, .5)}@media (min-width: 960px){.dark .VPNavBar.has-sidebar .content[data-v-d84f2262]{background:rgba(36,36,36,.1)}}.Layout:before{content:"";background-size:100% 100%;background-position:right;background-repeat:no-repeat;opacity:1;max-width:100%;height:100%;width:50%;position:fixed;top:-20%;right:-10%;display:block}.Layout:after{content:"";background-size:100% 100%;background-position:right;background-repeat:no-repeat;opacity:1;max-width:100%;height:100%;width:50%;position:fixed;bottom:-20%;left:-10%;display:block;z-index:-1}@media (min-width: 960px){.title{font-size:24px!important}}.image-src{max-width:220px!important} diff --git a/guide/about/index.html b/guide/about/index.html index 6df26a2..845f037 100644 --- a/guide/about/index.html +++ b/guide/about/index.html @@ -5,18 +5,18 @@ Vue-H5-Template | Vue-H5-Template - - + + - - - + + + - - diff --git a/guide/edit.html b/guide/edit.html index 2bd9e82..1491ad6 100644 --- a/guide/edit.html +++ b/guide/edit.html @@ -5,18 +5,17 @@ 参与编辑 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

参与编辑

欢迎有意愿参与到开源的朋友,加入到本文档的编写,书写文档不仅是教会别人知识,更是用自己的表达方式概括自己所学习知识的一种方式,这对个人来说是不可多得的成长机会。

js

-// 拉取项目
+    
Skip to content
On this page

参与编辑

欢迎有意愿参与到开源的朋友,加入到本文档的编写,书写文档不仅是教会别人知识,更是用自己的表达方式概括自己所学习知识的一种方式,这对个人来说是不可多得的成长机会。

js
// 拉取项目
 git clone https://github.com/sunniejs/vue-h5-template
 
 // 切换分支
@@ -26,10 +25,8 @@
 yarn install
 
 // 启动项目
-yarn start
-
-

Released under the MIT License.

- diff --git a/guide/index.html b/guide/index.html index d18892a..b7c956a 100644 --- a/guide/index.html +++ b/guide/index.html @@ -5,18 +5,18 @@ Vue-H5-Template | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

Vue-H5-Template

Vue-H5-Template,是基于 vite3 + vue3 + pinia + ( Vant or Varlet or NutUI ) + viewport 适配方案 ,构建移动端快速开发脚手架

特点

最新技术栈

  • 框架选型基于当下流行的 vue + vite + ts 模式,精选社区 star 和满意度均不错的 ui 框架和 vite 插件,并时常进行更新,确保与官方文档一致

基于 TypeScript

  • Typescript 逐渐在各种大型的 js 项目中使用,明确的类型定义可以省下不少的开发和维护成本

轻量级

  • 不同于集成的脚手架,尽量做到轻量不冗杂,只引入高频次的插件和清晰的示例
  • 轻装上阵,便于拓展开发,减少学习成本

通俗易懂的文档

  • 基于最新 VitePress 构建的文档,更快,更便捷
  • 更快的热更新

Released under the MIT License.

- diff --git a/guide/other/index.html b/guide/other/index.html index ffa8278..0ce7b10 100644 --- a/guide/other/index.html +++ b/guide/other/index.html @@ -5,18 +5,18 @@ Vue-H5-Template | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

1、为什么有多个组件库?

本模版想做到的是尽可能的开箱即用,不用去看别的文档引入相关组件库,毕竟做减法比做加法要容易些,如你不需要某个组件库可以根据这篇指引去移除某个组件库

2、我可以用在个人或公司的项目吗?

模版基于 MIT License,你可以根据自己的需求用到不同的项目里,如果对你有帮助点个 star 支持一下呗 🌟

3、我是一个新手,有什么好的学习建议吗?

过来人的经验就是熟读文档可以少走很多弯路,很多的人文档没读熟就开始动手,出了问题也不知道如何去解决,墙裂建议先把文档熟读

Released under the MIT License.

- diff --git a/guide/start.html b/guide/start.html index 14e36c3..b6a97be 100644 --- a/guide/start.html +++ b/guide/start.html @@ -5,18 +5,18 @@ 快速上手 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

快速上手

node 版本要求

推荐 14.19.0+以上的版本,毕竟 2022 年了,别掐着 12+的版本了,你也可以使用nvmnvm-windows在同一台电脑上管理多个 node 版本。

包管理器

尽量使用 yarn 或者 pnpm,本项目仅保证在 yarn 或 pnpm 下正确运行,npm 涉及到网络环境等各种情况的限制不做过多考虑。如要使用 npm 请不要切换淘宝镜像,会有各种奇怪的 bug。

启动项目

项目中包含 vue2 和 vue3 两套模版

如你使用的是 vue2-template,请参考vue2 项目启动

如你使用的是 vue3-template,请参考vue3 项目启动

Released under the MIT License.

- diff --git a/guide/vue2/alias.html b/guide/vue2/alias.html index f6492a1..7b8555c 100644 --- a/guide/vue2/alias.html +++ b/guide/vue2/alias.html @@ -5,17 +5,17 @@ 配置 alias 别名 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

配置 alias 别名

javascript
const path = require("path");
+    
Skip to content
On this page

配置 alias 别名

javascript
const path = require("path");
 const resolve = (dir) => path.join(__dirname, dir);
 const IS_PROD = ["production", "prod"].includes(process.env.NODE_ENV);
 
@@ -29,9 +29,8 @@
       .set("views", resolve("src/views"))
       .set("components", resolve("src/components"));
   },
-};
-

Released under the MIT License.

- diff --git a/guide/vue2/axios.html b/guide/vue2/axios.html index df8a2a7..d799ef4 100644 --- a/guide/vue2/axios.html +++ b/guide/vue2/axios.html @@ -5,17 +5,17 @@ Axios 封装及接口管理 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

Axios 封装及接口管理

utils/request.js 封装 axios ,开发者需要根据后台接口做修改。

  • service.interceptors.request.use 里可以设置请求头,比如设置 token
  • config.hideloading 是在 api 文件夹下的接口参数里设置,下文会讲
  • service.interceptors.response.use 里可以对接口返回数据处理,比如 401 删除本地信息,重新登录
javascript
import axios from "axios";
+    
Skip to content
On this page

Axios 封装及接口管理

utils/request.js 封装 axios ,开发者需要根据后台接口做修改。

  • service.interceptors.request.use 里可以设置请求头,比如设置 token
  • config.hideloading 是在 api 文件夹下的接口参数里设置,下文会讲
  • service.interceptors.response.use 里可以对接口返回数据处理,比如 401 删除本地信息,重新登录
javascript
import axios from "axios";
 import store from "@/store";
 import { Toast } from "vant";
 // 根据环境不同引入不同api地址
@@ -71,8 +71,7 @@
     return Promise.reject(error);
   }
 );
-export default service;
-

接口管理

src/api 文件夹下统一管理接口

  • 你可以建立多个模块对接接口, 比如 home.js 里是首页的接口这里讲解 user.js
  • url 接口地址,请求的时候会拼接上 config 下的 baseApi
  • method 请求方法
  • data 请求参数 qs.stringify(params) 是对数据系列化操作
  • hideloading 默认 false,设置为 true 后,不显示 loading ui 交互中有些接口不需要让用户感知
javascript
import qs from "qs";
+export default service;

接口管理

src/api 文件夹下统一管理接口

  • 你可以建立多个模块对接接口, 比如 home.js 里是首页的接口这里讲解 user.js
  • url 接口地址,请求的时候会拼接上 config 下的 baseApi
  • method 请求方法
  • data 请求参数 qs.stringify(params) 是对数据系列化操作
  • hideloading 默认 false,设置为 true 后,不显示 loading ui 交互中有些接口不需要让用户感知
javascript
import qs from "qs";
 // axios
 import request from "@/utils/request";
 //user api
@@ -85,16 +84,14 @@
     data: qs.stringify(params),
     hideloading: true, // 隐藏 loading 组件
   });
-}
-

如何调用

javascript
// 请求接口
+}

如何调用

javascript
// 请求接口
 import { getUserInfo } from "@/api/user.js";
 
 const params = { user: "sunnie" };
 getUserInfo(params)
   .then(() => {})
-  .catch(() => {});
-

Released under the MIT License.

- diff --git a/guide/vue2/base.html b/guide/vue2/base.html index 05bae9b..e34db07 100644 --- a/guide/vue2/base.html +++ b/guide/vue2/base.html @@ -5,19 +5,17 @@ Webpack 4 vue.config.js 基础配置 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

Webpack 4 vue.config.js 基础配置

如果你的 Vue Router 模式是 hash

javascript
publicPath: './',
-

如果你的 Vue Router 模式是 history 这里的 publicPath 和你的 Vue Router base 保持一致

javascript
publicPath: '/app/',
-

配置如下

javascript
import { createVitePlugins } from "./config/vite/plugins";
+    
Skip to content
On this page

Webpack 4 vue.config.js 基础配置

如果你的 Vue Router 模式是 hash

javascript
publicPath: './',

如果你的 Vue Router 模式是 history 这里的 publicPath 和你的 Vue Router base 保持一致

javascript
publicPath: '/app/',

配置如下

javascript
import { createVitePlugins } from "./config/vite/plugins";
 import { resolve } from "path";
 import { ConfigEnv, UserConfigExport } from "vite";
 
@@ -63,9 +61,8 @@
       },
     },
   };
-}
-

Released under the MIT License.

- diff --git a/guide/vue2/bundle.html b/guide/vue2/bundle.html index 092ac53..64810ee 100644 --- a/guide/vue2/bundle.html +++ b/guide/vue2/bundle.html @@ -5,17 +5,17 @@ 配置打包分析 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

配置打包分析

javascript
const BundleAnalyzerPlugin =
+    
-    
     
   
diff --git a/guide/vue2/chunks.html b/guide/vue2/chunks.html
index 0f67202..0e51839 100644
--- a/guide/vue2/chunks.html
+++ b/guide/vue2/chunks.html
@@ -5,17 +5,17 @@
     
     splitChunks 单独打包第三方模块 | Vue-H5-Template
     
-    
-    
+    
+    
     
-  
-  
-  
+  
+  
+  
   
   
   
   
-    
Skip to content
On this page

splitChunks 单独打包第三方模块

javascript
module.exports = {
+    
-    
     
   
diff --git a/guide/vue2/console.html b/guide/vue2/console.html
index db3e0d9..51e361e 100644
--- a/guide/vue2/console.html
+++ b/guide/vue2/console.html
@@ -5,18 +5,17 @@
     
     去掉 console.log | Vue-H5-Template
     
-    
-    
+    
+    
     
-  
-  
-  
+  
+  
+  
   
   
   
   
-    
Skip to content
On this page

去掉 console.log

保留了测试环境和本地环境的 console.log

bash
npm i -D babel-plugin-transform-remove-console
-

在 babel.config.js 中配置

javascript
// 获取 VUE_APP_ENV 非 NODE_ENV,测试环境依然 console
+    
Skip to content
On this page

去掉 console.log

保留了测试环境和本地环境的 console.log

bash
npm i -D babel-plugin-transform-remove-console

在 babel.config.js 中配置

javascript
// 获取 VUE_APP_ENV 非 NODE_ENV,测试环境依然 console
 const IS_PROD = ["production", "prod"].includes(process.env.VUE_APP_ENV);
 const plugins = [
   [
@@ -37,9 +36,8 @@
 module.exports = {
   presets: [["@vue/cli-plugin-babel/preset", { useBuiltIns: "entry" }]],
   plugins,
-};
-

Released under the MIT License.

- diff --git a/guide/vue2/env.html b/guide/vue2/env.html index 492f3d6..0a6de3b 100644 --- a/guide/vue2/env.html +++ b/guide/vue2/env.html @@ -5,47 +5,39 @@ 配置多环境变量 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

配置多环境变量

package.json 里的 scripts 配置 serve stage build,通过 --mode xxx 来执行不同环境

  • 通过 npm run serve 启动本地 , 执行 development
  • 通过 npm run stage 打包测试 , 执行 staging
  • 通过 npm run build 打包正式 , 执行 production
javascript
"scripts": {
+    
Skip to content
On this page

配置多环境变量

package.json 里的 scripts 配置 serve stage build,通过 --mode xxx 来执行不同环境

  • 通过 npm run serve 启动本地 , 执行 development
  • 通过 npm run stage 打包测试 , 执行 staging
  • 通过 npm run build 打包正式 , 执行 production
javascript
"scripts": {
   "serve": "vue-cli-service serve --open",
   "stage": "vue-cli-service build --mode staging",
   "build": "vue-cli-service build",
-}
-
配置介绍

  以 VUE_APP_ 开头的变量,在代码中可以通过 process.env.VUE_APP_ 访问。
  比如,VUE_APP_ENV = 'development' 通过process.env.VUE_APP_ENV 访问。
  除了 VUE_APP_* 变量之外,在你的应用代码中始终可用的还有两个特殊的变量NODE_ENVBASE_URL

在项目根目录中新建.env.*

  • .env.development 本地开发环境配置
bash
NODE_ENV='development'
+}
配置介绍

  以 VUE_APP_ 开头的变量,在代码中可以通过 process.env.VUE_APP_ 访问。
  比如,VUE_APP_ENV = 'development' 通过process.env.VUE_APP_ENV 访问。
  除了 VUE_APP_* 变量之外,在你的应用代码中始终可用的还有两个特殊的变量NODE_ENVBASE_URL

在项目根目录中新建.env.*

  • .env.development 本地开发环境配置
bash
NODE_ENV='development'
 # must start with VUE_APP_
-VUE_APP_ENV = 'development'
-
-
  • .env.staging 测试环境配置
bash
NODE_ENV='production'
+VUE_APP_ENV = 'development'
  • .env.staging 测试环境配置
bash
NODE_ENV='production'
 # must start with VUE_APP_
-VUE_APP_ENV = 'staging'
-
  • .env.production 正式环境配置
bash
 NODE_ENV='production'
+VUE_APP_ENV = 'staging'
  • .env.production 正式环境配置
bash
NODE_ENV='production'
 # must start with VUE_APP_
-VUE_APP_ENV = 'production'
-

这里我们并没有定义很多变量,只定义了基础的 VUE_APP_ENV development staging production
变量我们统一在 src/config/env.*.js 里进行管理。

这里有个问题,既然这里有了根据不同环境设置变量的文件,为什么还要去 config 下新建三个对应的文件呢?
修改起来方便,不需 要重启项目,符合开发习惯。

config/index.js

javascript
// 根据环境引入不同配置 process.env.NODE_ENV
+VUE_APP_ENV = 'production'

这里我们并没有定义很多变量,只定义了基础的 VUE_APP_ENV development staging production
变量我们统一在 src/config/env.*.js 里进行管理。

这里有个问题,既然这里有了根据不同环境设置变量的文件,为什么还要去 config 下新建三个对应的文件呢?
修改起来方便,不需 要重启项目,符合开发习惯。

config/index.js

javascript
// 根据环境引入不同配置 process.env.NODE_ENV
 const config = require("./env." + process.env.VUE_APP_ENV);
-module.exports = config;
-

配置对应环境的变量,拿本地环境文件 env.development.js 举例,用户可以根据需求修改

javascript
// 本地环境配置
+module.exports = config;

配置对应环境的变量,拿本地环境文件 env.development.js 举例,用户可以根据需求修改

javascript
// 本地环境配置
 module.exports = {
   title: "vue-h5-template",
   baseUrl: "http://localhost:9018", // 项目地址
   baseApi: "https://test.xxx.com/api", // 本地api请求地址
   APPID: "xxx",
   APPSECRET: "xxx",
-};
-

根据环境不同,变量就会不同了

javascript
// 根据环境不同引入不同baseApi地址
+};

根据环境不同,变量就会不同了

javascript
// 根据环境不同引入不同baseApi地址
 import { baseApi } from "@/config";
-console.log(baseApi);
-

Released under the MIT License.

- diff --git a/guide/vue2/externals.html b/guide/vue2/externals.html index fc77c97..22861d1 100644 --- a/guide/vue2/externals.html +++ b/guide/vue2/externals.html @@ -5,17 +5,17 @@ 配置 externals 引入 cdn 资源 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

配置 externals 引入 cdn 资源

这个版本 CDN 不再引入,我测试了一下使用引入 CDN 和不使用,不使用会比使用时间少。网上不少文章测试 CDN 速度块,这个开发者可 以实际测试一下。

另外项目中使用的是公共 CDN 不稳定,域名解析也是需要时间的(如果你要使用请尽量使用同一个域名)

因为页面每次遇到<script>标签都会停下来解析执行,所以应该尽可能减少<script>标签的数量 HTTP请求存在一定的开销,100K 的文件比 5 个 20K 的文件下载的更快,所以较少脚本数量也是很有必要的

暂时还没有研究放到自己的 cdn 服务器上。

javascript
const defaultSettings = require("./src/config/index.js");
+    
Skip to content
On this page

配置 externals 引入 cdn 资源

这个版本 CDN 不再引入,我测试了一下使用引入 CDN 和不使用,不使用会比使用时间少。网上不少文章测试 CDN 速度块,这个开发者可 以实际测试一下。

另外项目中使用的是公共 CDN 不稳定,域名解析也是需要时间的(如果你要使用请尽量使用同一个域名)

因为页面每次遇到<script>标签都会停下来解析执行,所以应该尽可能减少<script>标签的数量 HTTP请求存在一定的开销,100K 的文件比 5 个 20K 的文件下载的更快,所以较少脚本数量也是很有必要的

暂时还没有研究放到自己的 cdn 服务器上。

javascript
const defaultSettings = require("./src/config/index.js");
 const name = defaultSettings.title || "vue mobile template";
 const IS_PROD = ["production", "prod"].includes(process.env.NODE_ENV);
 
@@ -68,8 +68,7 @@
       return args;
     });
   },
-};
-

在 public/index.html 中添加

javascript
    <!-- 使用CDN的CSS文件 -->
+};

在 public/index.html 中添加

javascript
<!-- 使用CDN的CSS文件 -->
     <% for (var i in
       htmlWebpackPlugin.options.cdn&&htmlWebpackPlugin.options.cdn.css) { %>
       <link href="<%= htmlWebpackPlugin.options.cdn.css[i] %>" rel="preload" as="style" />
@@ -79,9 +78,8 @@
     <% for (var i in
       htmlWebpackPlugin.options.cdn&&htmlWebpackPlugin.options.cdn.js) { %>
       <script src="<%= htmlWebpackPlugin.options.cdn.js[i] %>"></script>
-    <% } %>
-

Released under the MIT License.

- diff --git a/guide/vue2/ie.html b/guide/vue2/ie.html index 5af2cf3..a582c28 100644 --- a/guide/vue2/ie.html +++ b/guide/vue2/ie.html @@ -5,31 +5,28 @@ 添加 IE 兼容 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

添加 IE 兼容

之前的方式 会报 @babel/polyfill is deprecated. Please, use required parts of core-js and regenerator-runtime/runtime separately

@babel/polyfill 废弃,使用 core-jsregenerator-runtime

bash
npm i --save core-js regenerator-runtime
-

main.js 中添加

javascript
// 兼容 IE
+    
Skip to content
On this page

添加 IE 兼容

之前的方式 会报 @babel/polyfill is deprecated. Please, use required parts of core-js and regenerator-runtime/runtime separately

@babel/polyfill 废弃,使用 core-jsregenerator-runtime

bash
npm i --save core-js regenerator-runtime

main.js 中添加

javascript
// 兼容 IE
 // https://github.com/zloirock/core-js/blob/master/docs/2019-03-19-core-js-3-babel-and-a-look-into-the-future.md#babelpolyfill
 import "core-js/stable";
-import "regenerator-runtime/runtime";
-

配置 babel.config.js

javascript
const plugins = [];
+import "regenerator-runtime/runtime";

配置 babel.config.js

javascript
const plugins = [];
 
 module.exports = {
   presets: [
     ["@vue/cli-plugin-babel/preset", { useBuiltIns: "usage", corejs: 3 }],
   ],
   plugins,
-};
-

Released under the MIT License.

- diff --git a/guide/vue2/lint.html b/guide/vue2/lint.html index e8888ca..b26bb6c 100644 --- a/guide/vue2/lint.html +++ b/guide/vue2/lint.html @@ -5,169 +5,166 @@ Eslint + Pettier 统一开发规范 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

Eslint + Pettier 统一开发规范

VScode (版本 1.47.3)安装 eslint prettier vetur 插件 .vue 文件使用 vetur 进行格式化,其他使用prettier,后面会 专门写个如何使用配合使用这三个玩意

在文件 .prettierrc 里写 属于你的 pettier 规则

bash
{
-   "printWidth": 120,
-   "tabWidth": 2,
-   "singleQuote": true,
-   "trailingComma": "none",
-   "semi": false,
-   "wrap_line_length": 120,
-   "wrap_attributes": "auto",
-   "proseWrap": "always",
-   "arrowParens": "avoid",
-   "bracketSpacing": false,
-   "jsxBracketSameLine": true,
-   "useTabs": false,
-   "overrides": [{
-       "files": ".prettierrc",
-       "options": {
-           "parser": "json"
-       }
-   }]
-}
-

Vscode setting.json 设置

bash
    {
+    
Skip to content
On this page

Eslint + Pettier 统一开发规范

VScode (版本 1.47.3)安装 eslint prettier vetur 插件 .vue 文件使用 vetur 进行格式化,其他使用prettier,后面会 专门写个如何使用配合使用这三个玩意

在文件 .prettierrc 里写 属于你的 pettier 规则

bash
{
+   "printWidth": 120,
+   "tabWidth": 2,
+   "singleQuote": true,
+   "trailingComma": "none",
+   "semi": false,
+   "wrap_line_length": 120,
+   "wrap_attributes": "auto",
+   "proseWrap": "always",
+   "arrowParens": "avoid",
+   "bracketSpacing": false,
+   "jsxBracketSameLine": true,
+   "useTabs": false,
+   "overrides": [{
+       "files": ".prettierrc",
+       "options": {
+           "parser": "json"
+       }
+   }]
+}

Vscode setting.json 设置

bash
{
   // 将设置放入此文件中以覆盖默认设置
-  "files.autoSave": "off",
+  "files.autoSave": "off",
   // 控制字体系列。
-  "editor.fontFamily": "Consolas, 'Courier New', monospace,'宋体'",
-  "terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe",
+  "editor.fontFamily": "Consolas, 'Courier New', monospace,'宋体'",
+  "terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe",
   // 以像素为单位控制字号。
-  "editor.fontSize": 16,
+  "editor.fontSize": 16,
   // 控制选取范围是否有圆角
-  "editor.roundedSelection": false,
+  "editor.roundedSelection": false,
   // 建议小组件的字号
-  "editor.suggestFontSize": 16,
+  "editor.suggestFontSize": 16,
   // 在“打开的编辑器”窗格中显示的编辑器数量。将其设置为 0 可隐藏窗格。
-  "explorer.openEditors.visible": 0,
+  "explorer.openEditors.visible": 0,
   // 是否已启用自动刷新
-  "git.autorefresh": true,
+  "git.autorefresh": true,
   // 以像素为单位控制终端的字号,这是 editor.fontSize 的默认值。
-  "terminal.integrated.fontSize": 14,
+  "terminal.integrated.fontSize": 14,
   // 控制终端游标是否闪烁。
-  "terminal.integrated.cursorBlinking": true,
+  "terminal.integrated.cursorBlinking": true,
   // 一个制表符等于的空格数。该设置在 `editor.detectIndentation` 启用时根据文件内容进行重写。
   // Tab Size
-  "editor.tabSize": 2,
+  "editor.tabSize": 2,
   // By default, common template. Do not modify it!!!!!
-  "editor.formatOnType": true,
-  "window.zoomLevel": 0,
-  "editor.detectIndentation": false,
-  "css.fileExtensions": ["css", "scss"],
-  "files.associations": {
-    "*.string": "html",
-    "*.vue": "vue",
-    "*.wxss": "css",
-    "*.wxml": "wxml",
-    "*.wxs": "javascript",
-    "*.cjson": "jsonc",
-    "*.js": "javascript"
+  "editor.formatOnType": true,
+  "window.zoomLevel": 0,
+  "editor.detectIndentation": false,
+  "css.fileExtensions": ["css", "scss"],
+  "files.associations": {
+    "*.string": "html",
+    "*.vue": "vue",
+    "*.wxss": "css",
+    "*.wxml": "wxml",
+    "*.wxs": "javascript",
+    "*.cjson": "jsonc",
+    "*.js": "javascript"
   },
   // 为指定的语法定义配置文件或使用带有特定规则的配置文件。
-  "emmet.syntaxProfiles": {
-    "vue-html": "html",
-    "vue": "html"
-  },
-  "search.exclude": {
-    "**/node_modules": true,
-    "**/bower_components": true
-  },
+  "emmet.syntaxProfiles": {
+    "vue-html": "html",
+    "vue": "html"
+  },
+  "search.exclude": {
+    "**/node_modules": true,
+    "**/bower_components": true
+  },
   //保存时eslint自动修复错误
-  "editor.formatOnSave": true,
+  "editor.formatOnSave": true,
   // Enable per-language
   //配置 ESLint 检查的文件类型
-  "editor.quickSuggestions": {
-    "strings": true
-  },
+  "editor.quickSuggestions": {
+    "strings": true
+  },
   // 添加 vue 支持
   // 这里是针对vue文件的格式化设置,vue的规则在这里生效
-  "vetur.format.options.tabSize": 2,
-  "vetur.format.options.useTabs": false,
-  "vetur.format.defaultFormatter.html": "js-beautify-html",
-  "vetur.format.defaultFormatter.css": "prettier",
-  "vetur.format.defaultFormatter.scss": "prettier",
-  "vetur.format.defaultFormatter.postcss": "prettier",
-  "vetur.format.defaultFormatter.less": "prettier",
-  "vetur.format.defaultFormatter.js": "vscode-typescript",
-  "vetur.format.defaultFormatter.sass": "sass-formatter",
-  "vetur.format.defaultFormatter.ts": "prettier",
-  "vetur.format.defaultFormatterOptions": {
-    "js-beautify-html": {
-      "wrap_attributes": "aligned-multiple", // 超过150折行
-      "wrap-line-length": 150
-    },
+  "vetur.format.options.tabSize": 2,
+  "vetur.format.options.useTabs": false,
+  "vetur.format.defaultFormatter.html": "js-beautify-html",
+  "vetur.format.defaultFormatter.css": "prettier",
+  "vetur.format.defaultFormatter.scss": "prettier",
+  "vetur.format.defaultFormatter.postcss": "prettier",
+  "vetur.format.defaultFormatter.less": "prettier",
+  "vetur.format.defaultFormatter.js": "vscode-typescript",
+  "vetur.format.defaultFormatter.sass": "sass-formatter",
+  "vetur.format.defaultFormatter.ts": "prettier",
+  "vetur.format.defaultFormatterOptions": {
+    "js-beautify-html": {
+      "wrap_attributes": "aligned-multiple", // 超过150折行
+      "wrap-line-length": 150
+    },
     // #vue组件中html代码格式化样式
-    "prettier": {
-      "printWidth": 120,
-      "tabWidth": 2,
-      "singleQuote": false,
-      "trailingComma": "none",
-      "semi": false,
-      "wrap_line_length": 120,
-      "wrap_attributes": "aligned-multiple", // 超过150折行
-      "proseWrap": "always",
-      "arrowParens": "avoid",
-      "bracketSpacing": true,
-      "jsxBracketSameLine": true,
-      "useTabs": false,
-      "overrides": [
-        {
-          "files": ".prettierrc",
-          "options": {
-            "parser": "json"
-          }
+    "prettier": {
+      "printWidth": 120,
+      "tabWidth": 2,
+      "singleQuote": false,
+      "trailingComma": "none",
+      "semi": false,
+      "wrap_line_length": 120,
+      "wrap_attributes": "aligned-multiple", // 超过150折行
+      "proseWrap": "always",
+      "arrowParens": "avoid",
+      "bracketSpacing": true,
+      "jsxBracketSameLine": true,
+      "useTabs": false,
+      "overrides": [
+        {
+          "files": ".prettierrc",
+          "options": {
+            "parser": "json"
+          }
         }
-      ]
-    }
-  },
+      ]
+    }
+  },
   // Enable per-language
-  "[json]": {
-    "editor.defaultFormatter": "esbenp.prettier-vscode"
-  },
-  "vetur.validation.template": false,
-  "html.format.enable": false,
-  "json.format.enable": false,
-  "javascript.format.enable": false,
-  "typescript.format.enable": false,
-  "javascript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": false,
-  "[html]": {
-    "editor.defaultFormatter": "esbenp.prettier-vscode"
-  },
-  "[javascript]": {
-    "editor.defaultFormatter": "esbenp.prettier-vscode"
-  },
-  "[jsonc]": {
-    "editor.defaultFormatter": "esbenp.prettier-vscode"
-  },
-  "[vue]": {
-    "editor.defaultFormatter": "octref.vetur"
-  },
-  "emmet.includeLanguages": {
-    "wxml": "html"
-  },
-  "[typescriptreact]": {
-    "editor.defaultFormatter": "esbenp.prettier-vscode"
-  },
+  "[json]": {
+    "editor.defaultFormatter": "esbenp.prettier-vscode"
+  },
+  "vetur.validation.template": false,
+  "html.format.enable": false,
+  "json.format.enable": false,
+  "javascript.format.enable": false,
+  "typescript.format.enable": false,
+  "javascript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": false,
+  "[html]": {
+    "editor.defaultFormatter": "esbenp.prettier-vscode"
+  },
+  "[javascript]": {
+    "editor.defaultFormatter": "esbenp.prettier-vscode"
+  },
+  "[jsonc]": {
+    "editor.defaultFormatter": "esbenp.prettier-vscode"
+  },
+  "[vue]": {
+    "editor.defaultFormatter": "octref.vetur"
+  },
+  "emmet.includeLanguages": {
+    "wxml": "html"
+  },
+  "[typescriptreact]": {
+    "editor.defaultFormatter": "esbenp.prettier-vscode"
+  },
   // 开启eslint自动修复js/ts功能
-  "editor.codeActionsOnSave": {
-    "source.fixAll.eslint": true
-  },
-  "minapp-vscode.disableAutoConfig": true,
-  "javascript.implicitProjectConfig.experimentalDecorators": true,
-  "editor.maxTokenizationLineLength": 200000
-}
-
-

Released under the MIT License.

- diff --git a/guide/vue2/proxy.html b/guide/vue2/proxy.html index 0e8ff37..bbd79b1 100644 --- a/guide/vue2/proxy.html +++ b/guide/vue2/proxy.html @@ -5,17 +5,17 @@ 配置 proxy 跨域 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

配置 proxy 跨域

如果你的项目需要跨域设置,你需要打来 vue.config.js proxy 注释 并且配置相应参数

!!!注意:你还需要将 src/config/env.development.js 里的 baseApi 设置成 '/'

javascript
module.exports = {
+    
Skip to content
On this page

配置 proxy 跨域

如果你的项目需要跨域设置,你需要打来 vue.config.js proxy 注释 并且配置相应参数

!!!注意:你还需要将 src/config/env.development.js 里的 baseApi 设置成 '/'

javascript
module.exports = {
   devServer: {
     // ....
     proxy: {
@@ -30,16 +30,14 @@
       },
     },
   },
-};
-

使用 例如: src/api/home.js

javascript
export function getUserInfo(params) {
+};

使用 例如: src/api/home.js

javascript
export function getUserInfo(params) {
   return request({
     url: "/api/userinfo",
     method: "post",
     data: qs.stringify(params),
   });
-}
-

Released under the MIT License.

- diff --git a/guide/vue2/rem.html b/guide/vue2/rem.html index 76c4f54..f927e7d 100644 --- a/guide/vue2/rem.html +++ b/guide/vue2/rem.html @@ -5,17 +5,17 @@ rem 适配方案 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

rem 适配方案

不用担心,项目已经配置好了 rem 适配, 下面仅做介绍:

Vant 中的样式默认使用px作为单位,如果需要使用rem单位,推荐使用以下两个工具:

PostCSS 配置

下面提供了一份基本的 postcss 配置,可以在此配置的基础上根据项目需求进行修改

javascript
// https://github.com/michael-ciniawsky/postcss-load-config
+    
Skip to content
On this page

rem 适配方案

不用担心,项目已经配置好了 rem 适配, 下面仅做介绍:

Vant 中的样式默认使用px作为单位,如果需要使用rem单位,推荐使用以下两个工具:

PostCSS 配置

下面提供了一份基本的 postcss 配置,可以在此配置的基础上根据项目需求进行修改

javascript
// https://github.com/michael-ciniawsky/postcss-load-config
 module.exports = {
   plugins: {
     autoprefixer: {
@@ -32,9 +32,7 @@
       propList: ["*"],
     },
   },
-};
-

更多详细信息: vant

新手必看,老鸟跳过

很多小伙伴会问我,适配的问题,因为我们使用的是 Vant UI,所以必须根据 Vant UI 375 的设计规范走,一般我们的设计会将 UI 图上传到蓝湖,我们就可以需要的尺寸了。下面就大概普及一下 rem。

我们知道 1rem 等于html 根元素设定的 font-sizepx 值。Vant UI 设置 rootValue: 37.5,你可以看到在 iPhone 6 下看到 (1rem 等于 37.5px):

html
<html data-dpr="1" style="font-size: 37.5px;"></html>
-

切换不同的机型,根元素可能会有不同的font-size。当你写 css px 样式时,会被程序换算成 rem 达到适配。

因为我们用了 Vant 的组件,需要按照 rootValue: 37.5 来写样式。

举个例子:设计给了你一张 750px * 1334px 图片,在 iPhone6 上铺满屏幕,其他机型适配。

  • rootValue: 70 , 样式 width: 750px;height: 1334px; 图片会撑满 iPhone6 屏幕,这个时候切换其他机型,图片也会跟着撑满。
  • rootValue: 37.5 的时候,样式 width: 375px;height: 667px; 图片会撑满 iPhone6 屏幕。

也就是 iphone 6 下 375px 宽度写 CSS。其他的你就可以根据你设计图,去写对应的样式就可以了。

当然,想要撑满屏幕你可以使用 100%,这里只是举例说明。

html
<img class="image" src="https://www.sunniejs.cn/static/weapp/logo.png" />
+};

更多详细信息: vant

新手必看,老鸟跳过

很多小伙伴会问我,适配的问题,因为我们使用的是 Vant UI,所以必须根据 Vant UI 375 的设计规范走,一般我们的设计会将 UI 图上传到蓝湖,我们就可以需要的尺寸了。下面就大概普及一下 rem。

我们知道 1rem 等于html 根元素设定的 font-sizepx 值。Vant UI 设置 rootValue: 37.5,你可以看到在 iPhone 6 下看到 (1rem 等于 37.5px):

html
<html data-dpr="1" style="font-size: 37.5px;"></html>

切换不同的机型,根元素可能会有不同的font-size。当你写 css px 样式时,会被程序换算成 rem 达到适配。

因为我们用了 Vant 的组件,需要按照 rootValue: 37.5 来写样式。

举个例子:设计给了你一张 750px * 1334px 图片,在 iPhone6 上铺满屏幕,其他机型适配。

  • rootValue: 70 , 样式 width: 750px;height: 1334px; 图片会撑满 iPhone6 屏幕,这个时候切换其他机型,图片也会跟着撑满。
  • rootValue: 37.5 的时候,样式 width: 375px;height: 667px; 图片会撑满 iPhone6 屏幕。

也就是 iphone 6 下 375px 宽度写 CSS。其他的你就可以根据你设计图,去写对应的样式就可以了。

当然,想要撑满屏幕你可以使用 100%,这里只是举例说明。

html
<img class="image" src="https://www.sunniejs.cn/static/weapp/logo.png" />
 
 <style>
   /* rootValue: 75 */
@@ -47,9 +45,8 @@
     width: 375px;
     height: 667px;
   }
-</style>
-

Released under the MIT License.

- diff --git a/guide/vue2/router.html b/guide/vue2/router.html index f53d993..9cb434d 100644 --- a/guide/vue2/router.html +++ b/guide/vue2/router.html @@ -5,17 +5,17 @@ Vue-router | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

Vue-router

本案例采用 hash 模式,开发者根据需求修改 mode base

注意:如果你使用了 history 模式,vue.config.js 中的 publicPath 要做对应的修改

前往:vue.config.js 基础配置

javascript
import Vue from "vue";
+    
Skip to content
On this page

Vue-router

本案例采用 hash 模式,开发者根据需求修改 mode base

注意:如果你使用了 history 模式,vue.config.js 中的 publicPath 要做对应的修改

前往:vue.config.js 基础配置

javascript
import Vue from "vue";
 import Router from "vue-router";
 
 Vue.use(Router);
@@ -38,9 +38,8 @@
     routes: router,
   });
 
-export default createRouter();
-

Released under the MIT License.

- diff --git a/guide/vue2/sass.html b/guide/vue2/sass.html index f092a85..8e81aed 100644 --- a/guide/vue2/sass.html +++ b/guide/vue2/sass.html @@ -5,39 +5,35 @@ Sass 全局样式 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

Sass 全局样式

首先 你可能会遇到 node-sass 安装不成功,别放弃多试几次!!!

每个页面自己对应的样式都写在自己的 .vue 文件之中 scoped 它顾名思义给 css 加了一个域的概念。

html
<style lang="scss">
+    
Skip to content
On this page

Sass 全局样式

首先 你可能会遇到 node-sass 安装不成功,别放弃多试几次!!!

每个页面自己对应的样式都写在自己的 .vue 文件之中 scoped 它顾名思义给 css 加了一个域的概念。

html
<style lang="scss">
   /* global styles */
 </style>
 
 <style lang="scss" scoped>
   /* local styles */
-</style>
-

目录结构

vue-h5-template 所有全局样式都在 @/src/assets/css 目录下设置

bash
├── assets
+</style>

目录结构

vue-h5-template 所有全局样式都在 @/src/assets/css 目录下设置

bash
├── assets
    ├── css
       ├── index.scss               # 全局通用样式
       ├── mixin.scss               # 全局mixin
-      └── variables.scss           # 全局变量
-

自定义 vant-ui 样式

现在我们来说说怎么重写 vant-ui 样式。由于 vant-ui 的样式我们是在全局引入的,所以你想在某个页面里面覆盖它的样式就不能加 scoped,但你又想只覆盖这个页面的 vant 样式,你就可在它的父级加一个 class,用命名空间来解决问题。

css
.about-container {
+      └── variables.scss           # 全局变量

自定义 vant-ui 样式

现在我们来说说怎么重写 vant-ui 样式。由于 vant-ui 的样式我们是在全局引入的,所以你想在某个页面里面覆盖它的样式就不能加 scoped,但你又想只覆盖这个页面的 vant 样式,你就可在它的父级加一个 class,用命名空间来解决问题。

css
.about-container {
   /* 你的命名空间 */
   .van-button {
     /* vant-ui 元素*/
     margin-right: 0px;
   }
-}
-

父组件改变子组件样式 深度选择器

当你子组件使用了 scoped 但在父组件又想修改子组件的样式可以 通过 >>> 来实现:

css
<style scoped>
+}

父组件改变子组件样式 深度选择器

当你子组件使用了 scoped 但在父组件又想修改子组件的样式可以 通过 >>> 来实现:

css
<style scoped>
 .a >>> .b { /* ... */ }
-</style>
-

全局变量

vue.config.js 配置使用 css.loaderOptions 选项,注入 sassmixin variables 到全局,不需要手动引入 ,配置$cdn通过变量形式引入 cdn 地址,这样向所有 Sass/Less 样式传入共享的全局变量:

javascript
const IS_PROD = ["production", "prod"].includes(process.env.NODE_ENV);
+</style>

全局变量

vue.config.js 配置使用 css.loaderOptions 选项,注入 sassmixin variables 到全局,不需要手动引入 ,配置$cdn通过变量形式引入 cdn 地址,这样向所有 Sass/Less 样式传入共享的全局变量:

javascript
const IS_PROD = ["production", "prod"].includes(process.env.NODE_ENV);
 const defaultSettings = require("./src/config/index.js");
 module.exports = {
   css: {
@@ -56,15 +52,13 @@
       },
     },
   },
-};
-

设置 js 中可以访问 $cdn,.vue 文件中使用this.$cdn访问

javascript
// 引入全局样式
+};

设置 js 中可以访问 $cdn,.vue 文件中使用this.$cdn访问

javascript
// 引入全局样式
 import "@/assets/css/index.scss";
 
 // 设置 js中可以访问 $cdn
 // 引入cdn
 import { $cdn } from "@/config";
-Vue.prototype.$cdn = $cdn;
-

在 css 和 js 使用

html
<script>
+Vue.prototype.$cdn = $cdn;

在 css 和 js 使用

html
<script>
   console.log(this.$cdn);
 </script>
 <style lang="scss" scoped>
@@ -73,9 +67,8 @@
     height: 120px;
     background: url($cdn + "/weapp/logo.png") center / contain no-repeat;
   }
-</style>
-

Released under the MIT License.

- diff --git a/guide/vue2/start.html b/guide/vue2/start.html index 96e4c5e..035c872 100644 --- a/guide/vue2/start.html +++ b/guide/vue2/start.html @@ -5,18 +5,17 @@ 启动项目 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

启动项目

js

-// 拉取项目
+    
-    
     
   
diff --git a/guide/vue2/vant.html b/guide/vue2/vant.html
index e26fde0..6686df6 100644
--- a/guide/vue2/vant.html
+++ b/guide/vue2/vant.html
@@ -5,18 +5,17 @@
     
     VantUI 组件按需加载 | Vue-H5-Template
     
-    
-    
+    
+    
     
-  
-  
-  
+  
+  
+  
   
   
   
   
-    
Skip to content
On this page

VantUI 组件按需加载

项目采 用Vant 自动按需引入组件 (推荐)下 面安装插件介绍:

babel-plugin-import 是一款 babel 插件,它会在编译过程中将 import 的写法自动转换为按需引入的方式

安装插件

bash
npm i babel-plugin-import -D
-

babel.config.js 设置

javascript
// 对于使用 babel7 的用户,可以在 babel.config.js 中配置
+    
Skip to content
On this page

VantUI 组件按需加载

项目采 用Vant 自动按需引入组件 (推荐)下 面安装插件介绍:

babel-plugin-import 是一款 babel 插件,它会在编译过程中将 import 的写法自动转换为按需引入的方式

安装插件

bash
npm i babel-plugin-import -D

babel.config.js 设置

javascript
// 对于使用 babel7 的用户,可以在 babel.config.js 中配置
 const plugins = [
   [
     "import",
@@ -33,16 +32,14 @@
     ["@vue/cli-plugin-babel/preset", { useBuiltIns: "usage", corejs: 3 }],
   ],
   plugins,
-};
-

使用组件

项目在 src/plugins/vant.js 下统一管理组件,用哪个引入哪个,无需在页面里重复引用

javascript
// 按需全局引入 vant组件
+};

使用组件

项目在 src/plugins/vant.js 下统一管理组件,用哪个引入哪个,无需在页面里重复引用

javascript
// 按需全局引入 vant组件
 import Vue from "vue";
 import { Button, List, Cell, Tabbar, TabbarItem } from "vant";
 Vue.use(Button);
 Vue.use(Cell);
 Vue.use(List);
-Vue.use(Tabbar).use(TabbarItem);
-

Released under the MIT License.

- diff --git a/guide/vue2/vuex.html b/guide/vue2/vuex.html index 1ba7eb2..715d226 100644 --- a/guide/vue2/vuex.html +++ b/guide/vue2/vuex.html @@ -5,22 +5,21 @@ Vuex 状态管理 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

Vuex 状态管理

目录结构

bash
├── store
+    
Skip to content
On this page

Vuex 状态管理

目录结构

bash
├── store
    ├── modules
       └── app.js
    ├── index.js
-   ├── getters.js
-

main.js 引入

javascript
import Vue from "vue";
+   ├── getters.js

main.js 引入

javascript
import Vue from "vue";
 import App from "./App.vue";
 import store from "./store";
 new Vue({
@@ -28,8 +27,7 @@
   router,
   store,
   render: (h) => h(App),
-});
-

使用

html
<script>
+});

使用

html
<script>
   import { mapGetters } from "vuex";
   export default {
     computed: {
@@ -46,9 +44,8 @@
       },
     },
   };
-</script>
-

Released under the MIT License.

- diff --git a/guide/vue2/vw.html b/guide/vue2/vw.html index 680bae3..b50732c 100644 --- a/guide/vue2/vw.html +++ b/guide/vue2/vw.html @@ -5,20 +5,17 @@ vm 适配方案 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

vm 适配方案

本项目使用的是 rem 的 适配方案,其实无论你使用哪种方案,都不需要你去计算 12px 是多少 rem 或者 vw, 会有专门的工具去帮你做 。如果你想用 vw,你可以按照下面的方式切换。

1.安装依赖

bash

-npm install postcss-px-to-viewport -D
-
-

2.修改 .postcssrc.js

将根目录下 .postcssrc.js 文件修改如下

javascript
// https://github.com/michael-ciniawsky/postcss-load-config
+    
Skip to content
On this page

vm 适配方案

本项目使用的是 rem 的 适配方案,其实无论你使用哪种方案,都不需要你去计算 12px 是多少 rem 或者 vw, 会有专门的工具去帮你做 。如果你想用 vw,你可以按照下面的方式切换。

1.安装依赖

bash
npm install postcss-px-to-viewport -D

2.修改 .postcssrc.js

将根目录下 .postcssrc.js 文件修改如下

javascript
// https://github.com/michael-ciniawsky/postcss-load-config
 module.exports = {
   plugins: {
     autoprefixer: {
@@ -39,13 +36,10 @@
       mediaQuery: false, // 允许在媒体查询中转换`px`
     },
   },
-};
-

3.删除原来的 rem 相关代码

src/main.js 删除如下代码

javascript
// 移动端适配
-import "lib-flexible/flexible.js";
-

package.json 删除如下代码

javascript
"lib-flexible": "^0.3.2",
-"postcss-pxtorem": "^5.1.1",
-

运行起来,F12 元素 css style 就是 vw 单位了

Released under the MIT License.

- diff --git a/guide/vue3/alias.html b/guide/vue3/alias.html index b12f599..acb6f3c 100644 --- a/guide/vue3/alias.html +++ b/guide/vue3/alias.html @@ -5,17 +5,17 @@ alias | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

alias

javascript
resolve: {
+    
-    
     
   
diff --git a/guide/vue3/axios.html b/guide/vue3/axios.html
index 171f7f2..12e8c6f 100644
--- a/guide/vue3/axios.html
+++ b/guide/vue3/axios.html
@@ -5,17 +5,17 @@
     
     axios 封装及接口管理 | Vue-H5-Template
     
-    
-    
+    
+    
     
-  
-  
-  
+  
+  
+  
   
   
   
   
-    
Skip to content
On this page

axios 封装及接口管理

utils/request.js 封装 axios , 开发者需要根据后台接口做修改。

  • service.interceptors.request.use 里可以设置请求头,比如设置 token
  • config.hideloading 是在 api 文件夹下的接口参数里设置,下文会讲
  • service.interceptors.response.use 里可以对接口返回数据处理,比如 401 删除本地信息,重新登录
javascript
import axios from "axios";
+    
Skip to content
On this page

axios 封装及接口管理

utils/request.js 封装 axios , 开发者需要根据后台接口做修改。

  • service.interceptors.request.use 里可以设置请求头,比如设置 token
  • config.hideloading 是在 api 文件夹下的接口参数里设置,下文会讲
  • service.interceptors.response.use 里可以对接口返回数据处理,比如 401 删除本地信息,重新登录
javascript
import axios from "axios";
 import store from "@/store";
 import { Toast } from "vant";
 // 根据环境不同引入不同api地址
@@ -71,9 +71,8 @@
     return Promise.reject(error);
   }
 );
-export default service;
-

Released under the MIT License.

- diff --git a/guide/vue3/base.html b/guide/vue3/base.html index f7e6cb6..0f057c4 100644 --- a/guide/vue3/base.html +++ b/guide/vue3/base.html @@ -5,19 +5,17 @@ vite.config.ts 基础配置 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

vite.config.ts 基础配置

如果你的 Vue Router 模式是 hash

javascript
publicPath: './',
-

如果你的 Vue Router 模式是 history 这里的 publicPath 和你的 Vue Router base 保持一致

javascript
publicPath: '/app/',
-
javascript
export default function ({ command }: ConfigEnv): UserConfigExport {
+    
Skip to content
On this page

vite.config.ts 基础配置

如果你的 Vue Router 模式是 hash

javascript
publicPath: './',

如果你的 Vue Router 模式是 history 这里的 publicPath 和你的 Vue Router base 保持一致

javascript
publicPath: '/app/',
javascript
export default function ({ command }: ConfigEnv): UserConfigExport {
   const isProduction = command === "build";
   return {
     server: {
@@ -45,9 +43,8 @@
       },
     },
   };
-}
-

Released under the MIT License.

- diff --git a/guide/vue3/env.html b/guide/vue3/env.html index 6546363..9a9ead8 100644 --- a/guide/vue3/env.html +++ b/guide/vue3/env.html @@ -5,23 +5,22 @@ Vue-H5-Template | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

package.json 里的 scripts 配置 dev dev:test dev:prod ,通过 --mode xxx 来执行不同环境

  • 通过 yarn dev 启动本地环境参数 , 执行 development
  • 通过 yarn dev:test 启动测试环境参数 , 执行 test
  • 通过 yarn dev:prod 启动正式环境参数 , 执行 prod
javascript
"scripts": {
+    
Skip to content
On this page

package.json 里的 scripts 配置 dev dev:test dev:prod ,通过 --mode xxx 来执行不同环境

  • 通过 yarn dev 启动本地环境参数 , 执行 development
  • 通过 yarn dev:test 启动测试环境参数 , 执行 test
  • 通过 yarn dev:prod 启动正式环境参数 , 执行 prod
javascript
"scripts": {
     "dev": "vite",
     "dev:test": "vite --mode test",
     "dev:prod": "vite --mode production",
-}
-

Released under the MIT License.

- diff --git a/guide/vue3/i18n.html b/guide/vue3/i18n.html index 1eb1660..e60f469 100644 --- a/guide/vue3/i18n.html +++ b/guide/vue3/i18n.html @@ -5,17 +5,17 @@ i18n 文本多语言解决方案 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

i18n 文本多语言解决方案

javascript
import { createI18n } from 'vue-i18n'; // 引入第三方最新的i18n注意版本
+    
Skip to content
On this page

i18n 文本多语言解决方案

javascript
import { createI18n } from 'vue-i18n'; // 引入第三方最新的i18n注意版本
 
 /**
  * @description: 加载当前配置的语言配置目录,随意添加
@@ -47,8 +47,7 @@
     localStorage.setItem('lang', locale);
   }
   i18n.global.locale = locale || localStorage.getItem('lang') || '';
-}
-

css图片解决方案

目前在业务开发中,css的样式多语言也会经常用到,可能一些图片的字体比较复杂,代码很难实现。或者我们为了减少多语言的配置,加快开发效率也会使用多语言的配置,目前这里提供scss的图片多语言的方案

css
@mixin main-lang-bg($width, $height, $preUrl, $posUrl) {
+}

css图片解决方案

目前在业务开发中,css的样式多语言也会经常用到,可能一些图片的字体比较复杂,代码很难实现。或者我们为了减少多语言的配置,加快开发效率也会使用多语言的配置,目前这里提供scss的图片多语言的方案

css
@mixin main-lang-bg($width, $height, $preUrl, $posUrl) {
   width: $width;
   height: $height;
   background-repeat: no-repeat;
@@ -63,13 +62,11 @@
       background-image: url('#{$preUrl}/#{$i}/#{$posUrl}');
     }
   }
-}
-

定义图片的目录格式

bash
├── button
+}

定义图片的目录格式

bash
├── button
    ├── en-us
       └── confirm.png
    ├── zh-cn
-      └── confirm.png
-

HTML的使用方式

html
<template>
+      └── confirm.png

HTML的使用方式

html
<template>
  <div :class="['btn-confirm', i18n.global.locale]"></div>
 </template>
 <script lang="ts" setup name="HomePage">
@@ -79,9 +76,8 @@
     .btn-confirm {
         @include main-lang-bg(302px, 82px, '/@/assets/button', 'confirm.png');
     }
-</style>
-

Released under the MIT License.

- diff --git a/guide/vue3/lint.html b/guide/vue3/lint.html index 069e009..9806e4c 100644 --- a/guide/vue3/lint.html +++ b/guide/vue3/lint.html @@ -5,18 +5,18 @@ Eslint+Pettier+stylelint 统一开发规范 | Vue-H5-Template - - + + - - - + + + - - diff --git a/guide/vue3/pinia.html b/guide/vue3/pinia.html index 3ff7e00..99d690b 100644 --- a/guide/vue3/pinia.html +++ b/guide/vue3/pinia.html @@ -5,21 +5,20 @@ Pinia 状态管理 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

Pinia 状态管理

下一代 vuex,使用极其方便,ts 兼容好

目录结构

bash
├── store
+    
Skip to content
On this page

Pinia 状态管理

下一代 vuex,使用极其方便,ts 兼容好

目录结构

bash
├── store
    ├── modules
       └── user.js
-   ├── index.js
-

目前pinia分为两种编程模式,options API和 Composition API,我们这边都会列举出来实现的业务逻辑效果是一样的,提供大家思路

options API:

javascript
interface StoreUser {
+   ├── index.js

目前pinia分为两种编程模式,options API和 Composition API,我们这边都会列举出来实现的业务逻辑效果是一样的,提供大家思路

options API:

javascript
interface StoreUser {
   token: string;
   info: Record<any, any>;
 }
@@ -50,8 +49,7 @@
       });
     },
   },
-});
-

Composition API:

javascript
export const useUserStore = defineStore('app-user', () => {
+});

Composition API:

javascript
export const useUserStore = defineStore('app-user', () => {
   const Token = ref(token);
   const info = ref<Record<any, any>>({});
   const setInfo = (info: any) => {
@@ -77,14 +75,12 @@
     login,
     getUserInfo,
   };
-})
-

使用

html
<script lang="ts" setup>
+})

使用

html
<script lang="ts" setup>
   import { useUserStore } from "@/store/modules/user";
   const userStore = useUserStore();
   userStore.login();
-</script>
-

Released under the MIT License.

- diff --git a/guide/vue3/proxy.html b/guide/vue3/proxy.html index 0bac6cb..27739b4 100644 --- a/guide/vue3/proxy.html +++ b/guide/vue3/proxy.html @@ -5,17 +5,17 @@ proxy 跨域 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

proxy 跨域

javascript
server: {
+    
-    
     
   
diff --git a/guide/vue3/router.html b/guide/vue3/router.html
index 934d1d0..b9ef5f7 100644
--- a/guide/vue3/router.html
+++ b/guide/vue3/router.html
@@ -5,17 +5,17 @@
     
     vue-router | Vue-H5-Template
     
-    
-    
+    
+    
     
-  
-  
-  
+  
+  
+  
   
   
   
   
-    
Skip to content
On this page

vue-router

本案例采用 hash 模式,开发者根据需求修改 mode base

注意:如果你使用了 history 模式, vue.config.js 中的 publicPath 要做对应的修改

前往:vue.config.js 基础配置

javascript
import Vue from "vue";
+    
Skip to content
On this page

vue-router

本案例采用 hash 模式,开发者根据需求修改 mode base

注意:如果你使用了 history 模式, vue.config.js 中的 publicPath 要做对应的修改

前往:vue.config.js 基础配置

javascript
import Vue from "vue";
 import { createRouter, createWebHistory, Router } from "vue-router";
 
 Vue.use(Router);
@@ -33,9 +33,8 @@
   routes: routes,
 });
 
-export default router;
-

Released under the MIT License.

- diff --git a/guide/vue3/start.html b/guide/vue3/start.html index b8c9788..37414c5 100644 --- a/guide/vue3/start.html +++ b/guide/vue3/start.html @@ -5,28 +5,25 @@ 启动项目 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

启动项目

js

-// 拉取项目
+    
-    
     
   
diff --git a/guide/vue3/ui.html b/guide/vue3/ui.html
index 901736d..0068dde 100644
--- a/guide/vue3/ui.html
+++ b/guide/vue3/ui.html
@@ -5,25 +5,23 @@
     
     多 UI 组件库供选择 | Vue-H5-Template
     
-    
-    
+    
+    
     
-  
-  
-  
+  
+  
+  
   
   
   
   
-    
Skip to content
On this page

多 UI 组件库供选择

Vite 构建工具,使用 vite-plugin-style-import 和 unplugin-vue-components/vite 实现按需引入。

安装插件

bash
yarn add vite-plugin-style-import -D
-yarn add unplugin-vue-components/vite -D
-

使用组件库

nutUI 没有按需加载的 resolvers,style 需要自己配置按需加载

config/vite/plugins/styleImport.ts 设置

javascript
  // 按需加载样式文件
+    
Skip to content
On this page

多 UI 组件库供选择

Vite 构建工具,使用 vite-plugin-style-import 和 unplugin-vue-components/vite 实现按需引入。

安装插件

bash
yarn add vite-plugin-style-import -D
+yarn add unplugin-vue-components/vite -D

使用组件库

nutUI 没有按需加载的 resolvers,style 需要自己配置按需加载

config/vite/plugins/styleImport.ts 设置

javascript
// 按需加载样式文件
   ...
     createStyleImportPlugin({
       resolves: [NutuiResolve()],
     }),
-  ...
-

项目在 src/plugins/nutUI.ts 下统一管理组件,用哪个引入哪个,无需在页面里重复引用

javascript
// 按需全局引入nutUI组件
+  ...

项目在 src/plugins/nutUI.ts 下统一管理组件,用哪个引入哪个,无需在页面里重复引用

javascript
// 按需全局引入nutUI组件
 import Vue from "vue";
 import { Button, Cell, CellGroup } from "@nutui/nutui";
 export const nutUiComponents = [Button, Cell, CellGroup];
@@ -31,13 +29,11 @@
 // 在main.ts文件中引入
 nutUiComponents.forEach((item) => {
   app.use(item);
-});
-

vant 和 varlet 可以使用组件按需加载

config/vite/plugins/component.ts

javascript
import { VueUseComponentsResolver, VantResolver, VarletUIResolver } from 'unplugin-vue-components/resolvers';
+});

vant 和 varlet 可以使用组件按需加载

config/vite/plugins/component.ts

javascript
import { VueUseComponentsResolver, VantResolver, VarletUIResolver } from 'unplugin-vue-components/resolvers';
 ...
 resolvers: [VantResolver(), VarletUIResolver()],
-...
-

不需要某个组件库

nutUI 需删除src/plugins/nutUI.tsmain.ts文件下的引入

vant 和 varlet 只需删除对应的 resolvers 即可

删除后需全局搜索删除不需要的组件,避免报错

参考文档

Released under the MIT License.

- diff --git a/guide/vue3/viewport.html b/guide/vue3/viewport.html index 89ccb51..eaa88a2 100644 --- a/guide/vue3/viewport.html +++ b/guide/vue3/viewport.html @@ -5,17 +5,17 @@ viewport 适配方案 | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

viewport 适配方案

不用担心,项目已经配置好了 viewport 适配,下面仅做介绍:

  • cnjm-postcss-px-to-viewport 是一款 postcss 插件,用于将单位转化为 vw, 现在很多浏览器对vw的支持都很好,适配首选方案。

PostCSS 配置

下面提供了一份基本的 postcss 配置,可以在此配置的基础上根据项目需求进行修改

javascript
// https://github.com/michael-ciniawsky/postcss-load-config
+    
Skip to content
On this page

viewport 适配方案

不用担心,项目已经配置好了 viewport 适配,下面仅做介绍:

  • cnjm-postcss-px-to-viewport 是一款 postcss 插件,用于将单位转化为 vw, 现在很多浏览器对vw的支持都很好,适配首选方案。

PostCSS 配置

下面提供了一份基本的 postcss 配置,可以在此配置的基础上根据项目需求进行修改

javascript
// https://github.com/michael-ciniawsky/postcss-load-config
 module.exports = {
   plugins: {
     autoprefixer: { overrideBrowserslist: ['Android 4.1', 'iOS 7.1', 'Chrome > 31', 'ff > 31', 'ie >= 8'] },
@@ -37,9 +37,7 @@
         return designWidth;
       },
   },
-};
-

新手必看,老鸟跳过

很多小伙伴会问我,适配的问题, 因为我们使用的是 Vant UI,所以必须根据 Vant UI 375 的设计规范走,一般我们的设计会将 UI 图上传到蓝湖,我们就可以需要的尺寸了。下面就大概普及一下 rem。

我们知道 1rem 等于 html 根元素设定的 font-sizepx 值。Vant UI 设置 rootValue: 37.5 , 你可以看到在 iPhone 6 下看到 ( 1rem 等于 37.5px ):

html
<html data-dpr="1" style="font-size: 37.5px;"></html>
-

切换不同的机型,根元素可能会有不同的 font-size 。当你写 css px 样式时,会被程序换算成 rem 达到适配。

因为我们用了 Vant 的组件,需要按照 rootValue: 37.5 来写样式。

举个例子:设计给了你一张 750px * 1334px 图片,在 iPhone6 上铺满屏幕, 其他机型适配。

  • rootValue: 75 , 样式 width: 750px;height: 1334px; 图片会撑满 iPhone6 屏幕,这个时候切换其他机型,图片也会跟着撑满。
  • rootValue: 37.5 的时候,样式 width: 375px;height: 667px; 图片会撑满 iPhone6 屏幕。

也就是 iphone 6 下 375px 宽度写 CSS。其他的你就可以根据你设计图,去写对应的样式就可以了。

当然,想要撑满屏幕你可以使用 100%,这里只是举例说明。

html
<img class="image" src="https://www.sunniejs.cn/static/weapp/logo.png" />
+};

新手必看,老鸟跳过

很多小伙伴会问我,适配的问题, 因为我们使用的是 Vant UI,所以必须根据 Vant UI 375 的设计规范走,一般我们的设计会将 UI 图上传到蓝湖,我们就可以需要的尺寸了。下面就大概普及一下 rem。

我们知道 1rem 等于 html 根元素设定的 font-sizepx 值。Vant UI 设置 rootValue: 37.5 , 你可以看到在 iPhone 6 下看到 ( 1rem 等于 37.5px ):

html
<html data-dpr="1" style="font-size: 37.5px;"></html>

切换不同的机型,根元素可能会有不同的 font-size 。当你写 css px 样式时,会被程序换算成 rem 达到适配。

因为我们用了 Vant 的组件,需要按照 rootValue: 37.5 来写样式。

举个例子:设计给了你一张 750px * 1334px 图片,在 iPhone6 上铺满屏幕, 其他机型适配。

  • rootValue: 75 , 样式 width: 750px;height: 1334px; 图片会撑满 iPhone6 屏幕,这个时候切换其他机型,图片也会跟着撑满。
  • rootValue: 37.5 的时候,样式 width: 375px;height: 667px; 图片会撑满 iPhone6 屏幕。

也就是 iphone 6 下 375px 宽度写 CSS。其他的你就可以根据你设计图,去写对应的样式就可以了。

当然,想要撑满屏幕你可以使用 100%,这里只是举例说明。

html
<img class="image" src="https://www.sunniejs.cn/static/weapp/logo.png" />
 
 <style>
   /* rootValue: 75 */
@@ -53,9 +51,8 @@
     width: 375px;
     height: 667px;
   }
-</style>
-

Released under the MIT License.

- diff --git a/guide/vue3/vite.html b/guide/vue3/vite.html index 48a27d2..1090b51 100644 --- a/guide/vue3/vite.html +++ b/guide/vue3/vite.html @@ -5,18 +5,18 @@ vite | Vue-H5-Template - - + + - - - + + + -
Skip to content
On this page

vite

基于原生 ES 模块提供了丰富的内建功能,如速度快到惊人的模块热更新(HMR),使用 Rollup 打包你的代码,并且它是预配置的,可输出用于生产环境的高度优化过的静态资源。更多关于vite

模版集成了如下的 vite 插件

  • unplugin-auto-import(按需加载,自动引入)
  • unplugin-vue-components(按需加载,自动引入组件)
  • vite-plugin-compression(开启.gz 压缩)
  • vite-plugin-eruda(控制台,方便移动端调试)
  • vite-plugin-imagemin(图片压缩)
  • vite-plugin-mock(引入 mockjs,本地模拟接口)
  • vite-plugin-pages(动态生成路由)
  • vite-plugin-progress(构建显示进度条)
  • vite-plugin-restart(监听配置文件修改自动重启 Vite)
  • vite-plugin-style-import(按需引入样式文件)
  • vite-plugin-svg-icons(加载 SVG 文件,自动引入)

Released under the MIT License.

- diff --git a/hashmap.json b/hashmap.json index 80cff7c..ed89aee 100644 --- a/hashmap.json +++ b/hashmap.json @@ -1 +1 @@ -{"guide_vue2_vuex.md":"b3b7559a","guide_vue2_vw.md":"7dbc4a4c","guide_vue3_alias.md":"e516d7e2","guide_vue3_i18n.md":"6236059c","guide_vue3_lint.md":"a1cc197f","guide_vue3_pinia.md":"100e26e9","guide_vue3_proxy.md":"835d58e9","guide_vue3_router.md":"fdac12cd","guide_vue3_ui.md":"433fee9a","guide_vue3_viewport.md":"3fbaef14","guide_vue3_vite.md":"58cc24bc","index.md":"496a2785","guide_vue3_start.md":"8ee8532d","guide_vue2_router.md":"047bd988","guide_vue2_axios.md":"04119e90","guide_vue2_base.md":"4d4b64f8","guide_vue2_bundle.md":"df9a7fcb","guide_vue2_chunks.md":"1003bcce","guide_vue2_console.md":"b11c98af","guide_vue2_env.md":"22af29a2","guide_vue2_ie.md":"8d30e4b5","guide_vue2_alias.md":"c70e0ef9","guide_vue2_proxy.md":"2993ab5e","guide_vue2_rem.md":"c59d4c40","guide_about_index.md":"4fa84a09","guide_vue2_lint.md":"9f9c0612","guide_vue2_start.md":"3a872719","guide_vue2_externals.md":"8f341913","guide_vue3_axios.md":"b2916294","guide_vue3_base.md":"2504686c","guide_vue3_env.md":"5710f1b6","guide_start.md":"e6abe1c0","guide_index.md":"14f8cbf3","guide_edit.md":"67c9e928","guide_other_index.md":"c2f17cfe","guide_vue2_vant.md":"406861fd","guide_vue2_sass.md":"55760269"} +{"guide_start.md":"73063b28","guide_vue2_alias.md":"8e3eac08","guide_vue2_axios.md":"3e1f1726","guide_vue2_base.md":"464b144c","guide_vue2_bundle.md":"d9d24eef","guide_vue2_chunks.md":"0a3d1312","guide_other_index.md":"24383439","guide_vue2_lint.md":"bcdbf636","guide_vue2_sass.md":"0540c1bd","guide_vue2_start.md":"50e4a44d","guide_edit.md":"2f737706","guide_vue2_env.md":"6e6e570e","guide_vue2_externals.md":"81bec8dc","guide_vue2_ie.md":"bf16d405","guide_vue3_env.md":"15c44b72","guide_vue3_i18n.md":"efcc4870","guide_vue3_lint.md":"c956f53d","guide_vue3_pinia.md":"f90c3d06","guide_vue3_proxy.md":"15dd8725","guide_vue3_router.md":"f8e4c12f","guide_vue3_start.md":"1d5e24be","guide_vue3_ui.md":"6b9ab25c","guide_vue3_viewport.md":"25648aaa","guide_vue3_vite.md":"52761283","index.md":"87fecdd2","guide_index.md":"8916baf2","guide_vue2_console.md":"d624aac3","guide_vue2_rem.md":"dc03687e","guide_vue2_vant.md":"7f5e95c2","guide_vue3_alias.md":"5df8d842","guide_vue2_proxy.md":"e19a725e","guide_vue3_axios.md":"9929e968","guide_vue2_vw.md":"2e9f914f","guide_vue3_base.md":"22bdbcc7","guide_about_index.md":"253c741c","guide_vue2_vuex.md":"ac525cdf","guide_vue2_router.md":"b749e959"} diff --git a/index.html b/index.html index 959b4e4..4bfeea2 100644 --- a/index.html +++ b/index.html @@ -5,18 +5,18 @@ Vue-H5-Template | 一个快速开发的vue h5移动端脚手架 - - + + - - - + + + -
Skip to content

Vue-H5-Template

一个快速开发的Vue H5移动端脚手架

sunnie
💡

开箱即用

集成vue2、vue3的移动端快速开发模版,学习成本低,易上手

📦

代码规范

完整的eslint、prettier、stylelint规范,加上husky,帮助你更好的管理代码

🛠️

配置优化

完整配置的vue脚手架插件和优化,让你专注于业务开发,更高效

⚙️

More

加入我们,更多能力等你挖掘....

Released under the MIT License.

-