├── .gitignore ├── Dockerfile ├── README.md ├── docker-compose.yml ├── public ├── dist │ ├── assets │ │ ├── logo-03d6d6da.png │ │ ├── main-4224cc60.css │ │ ├── main-748e6be2.js │ │ └── vendor-693449a0.js │ └── manifest.json ├── helpers.php └── index.php └── vite ├── .gitignore ├── package-lock.json ├── package.json ├── src ├── assets │ └── logo.png ├── components │ └── HelloWorld.vue ├── main.js └── styles │ ├── example.css │ └── index.js └── vite.config.js /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | public/assets 4 | .history/ -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:18 AS node 2 | FROM webdevops/php-nginx:8.1-alpine 3 | 4 | #https://stackoverflow.com/questions/44447821/how-to-create-a-docker-image-for-php-and-node 5 | COPY --from=node /usr/local/lib/node_modules /usr/local/lib/node_modules 6 | COPY --from=node /usr/local/bin/node /usr/local/bin/node 7 | 8 | RUN ln -s /usr/local/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm 9 | 10 | RUN apk update && \ 11 | apk add nodejs npm && \ 12 | npm install -g npm-check-updates 13 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | This is an example code, simulating how to run [Vite](https://github.com/vitejs/vite) on traditional PHP sites. 2 | 3 | A bare-minimum setup to serve as example to adapt to other scenarios ([WordPress](https://github.com/wp-bond/boilerplate/tree/master/app/themes/boilerplate), Laravel, etc). 4 | 5 | For everything else beyond the PHP side please refer to the [Vite documentation](https://vitejs.dev), which is great. 6 | 7 | ### Use vite php setup with a docker dev environment 8 | * comes with nginx and preinstalled npm in the correct version 9 | * **add entry in hosts-file: `127.0.0.1 vite-php-setup.test`** 10 | * `docker-compose up` 11 | * `docker exec -w /app/vite vite-php-setup.php npm run dev` 12 | * open `http://vite-php-setup.test:8114/` 13 | * voilà! 14 | 15 | ### Goal 16 | 17 | - Handle the cleanest way possible; 18 | 19 | ### Status 20 | 21 | - Works gracefully! 22 | 23 | ### Note about the development host 24 | 25 | A characteristic of this setup is that you'll run your project from your own local server, for exemple http://vite-php-setup.test. Vite will be running at http://localhost:5133 where our script and styles will be served from, but accesing http://localhost:5133 directly will be empty, which is fine. 26 | 27 | Of course, HMR and styles will work just fine! And fast! 28 | 29 | - Mininum Node.js version >=14.18+ 30 | 31 | ### Notes about our example code 32 | 33 | - The "public" folder is the web server's public root, "public/index.php" is the front controller or bootstrap file; 34 | - The "vite" folder is outside of public root intentionaly, where it would actually be within a PHP app; 35 | - For the sake of this example, we are not setting up a SPA, instead we have multiple Vue components sprinkled throughout your page, simulating the mix of regular HTML with interactive elements (using in-DOM HTML as the template); 36 | - This examples uses Vue, for React refer to [this info](https://github.com/andrefelipe/vite-php-setup/issues/11); 37 | 38 | ### Known issue 1 (during Dev only) 39 | 40 | A limitation is Vite's port during development, PHP helpers must match the one that was created during "npm run dev" (default 5173). For example, if the port 5173 is in use, Vite will try the next one (5174 and so on), so our helper PHP wouldn't know about that. 41 | 42 | The solution is to stricly specify which port to use, and match the PHP side to the same port. Check [vite.config.js](https://github.com/andrefelipe/vite-php-setup/blob/master/vite/vite.config.js) for example. 43 | 44 | ### Known issue 2 (during Dev only) 45 | 46 | Image urls within CSS works fine BUT you need to create a symlink on dev server to map to your assets folder. This is an expected limitation as noted on [Vite docs](https://vitejs.dev/guide/backend-integration.html) 47 | 48 | The solution is here, adjust the paths and run in terminal: 49 | 50 | ``` 51 | ln -s {path_to_project_source}/src/assets {path_to_public_html}/assets 52 | ``` 53 | Note: this happens because our Vite code is outside the server public access, if it where, we could use [server.origin](https://vitejs.dev/config/server-options.html#server-origin) config. 54 | 55 | 56 | ### Tips for multiple entries 57 | 58 | You may find the need to handle multiple entries, for example, one js/css for the backend and another js/css for frontend. For that, it depends directly on how you want to organize your code. 59 | 60 | So you can have: 61 | 62 | - A single Vite [multi-page setup](https://vitejs.dev/guide/build.html#multi-page-app). 63 | - A shared Vite setup, but outputing different entries in separated build steps, [example here](https://github.com/wp-bond/boilerplate/blob/master/app/themes/boilerplate/package.json). 64 | 65 | ### Docker dev environment 66 | To get this running on Docker quickly, [check out this fork](https://github.com/mrothauer/vite-php-setup). Thanks @mrothauer 67 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: "3.1" 2 | services: 3 | php-fpm: 4 | build: . 5 | container_name: vite-php-setup.php 6 | working_dir: /app 7 | volumes: 8 | - ./:/app 9 | environment: 10 | - WEB_DOCUMENT_ROOT=/app/public 11 | ports: 12 | - "8114:80" 13 | - "5133:5133" 14 | networks: 15 | default: 16 | aliases: 17 | - vite-php-setup.test 18 | vite-php-setup: 19 | 20 | networks: 21 | vite-php-setup: 22 | -------------------------------------------------------------------------------- /public/dist/assets/logo-03d6d6da.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrothauer/vite-php-setup/b6c160bc39641b74b37e62a888fe645ba72e788f/public/dist/assets/logo-03d6d6da.png -------------------------------------------------------------------------------- /public/dist/assets/main-4224cc60.css: -------------------------------------------------------------------------------- 1 | a[data-v-835d9813]{color:#42b983}*{margin:0;padding:0}body{font-family:sans-serif;text-align:center;color:#000}button{border:0;margin:20px 0;background-color:#000;color:#fff;font-size:14px;padding:10px;cursor:pointer}.message{color:#bbb;padding:20px;margin:20px 0;font-size:14px;background-color:#eee} 2 | -------------------------------------------------------------------------------- /public/dist/assets/main-748e6be2.js: -------------------------------------------------------------------------------- 1 | import{r as _,c as f,a as s,t as d,F as m,o as g,p as h,b as v,d as i,e as y}from"./vendor-693449a0.js";const b="/dist/assets/logo-03d6d6da.png";const O=(t,n)=>{const l=t.__vccOpts||t;for(const[r,e]of n)l[r]=e;return l},u=t=>(h("data-v-835d9813"),t=t(),v(),t),S=u(()=>s("img",{alt:"Vue logo",src:b,height:"40"},null,-1)),k=u(()=>s("p",null,[s("a",{href:"https://vitejs.dev/guide/features.html",target:"_blank"}," Vite Documentation "),i(" | "),s("a",{href:"https://v3.vuejs.org/",target:"_blank"},"Vue 3 Documentation")],-1)),H=u(()=>s("p",null,[i(" Edit "),s("code",null,"components/HelloWorld.vue"),i(" to test hot module replacement. ")],-1)),L={__name:"HelloWorld",props:{msg:String},setup(t){const n=_({count:0});return(l,r)=>(g(),f(m,null,[S,s("h1",null,"Vue "+d(t.msg),1),k,s("button",{type:"button",onClick:r[0]||(r[0]=e=>n.count++)}," count is: "+d(n.count),1),H],64))}},N=O(L,[["__scopeId","data-v-835d9813"]]),V=Object.freeze(Object.defineProperty({__proto__:null,default:N},Symbol.toStringTag,{value:"Module"}));(function(){const n=document.createElement("link").relList;if(n&&n.supports&&n.supports("modulepreload"))return;for(const e of document.querySelectorAll('link[rel="modulepreload"]'))r(e);new MutationObserver(e=>{for(const o of e)if(o.type==="childList")for(const c of o.addedNodes)c.tagName==="LINK"&&c.rel==="modulepreload"&&r(c)}).observe(document,{childList:!0,subtree:!0});function l(e){const o={};return e.integrity&&(o.integrity=e.integrity),e.referrerpolicy&&(o.referrerPolicy=e.referrerpolicy),e.crossorigin==="use-credentials"?o.credentials="include":e.crossorigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(e){if(e.ep)return;e.ep=!0;const o=l(e);fetch(e.href,o)}})();const a=Object.assign({"./components/HelloWorld.vue":V}),p={};for(const t in a)p[a[t].default.__name]=a[t].default;for(const t of document.getElementsByClassName("vue-app"))y({template:t.innerHTML,components:p}).mount(t); 2 | -------------------------------------------------------------------------------- /public/dist/assets/vendor-693449a0.js: -------------------------------------------------------------------------------- 1 | function Ae(e,t){const n=Object.create(null),s=e.split(",");for(let r=0;r!!n[r.toLowerCase()]:r=>!!n[r]}const Cf="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt",Tf=Ae(Cf);function Hn(e){if(j(e)){const t={};for(let n=0;n{if(n){const s=n.split(Sf);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Vn(e){let t="";if(J(e))t=e;else if(j(e))for(let n=0;ngt(n,t))}const Bf=e=>J(e)?e:e==null?"":j(e)||ie(e)&&(e.toString===Gl||!W(e.toString))?JSON.stringify(e,Ql,2):String(e),Ql=(e,t)=>t&&t.__v_isRef?Ql(e,t.value):Xt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r])=>(n[`${s} =>`]=r,n),{})}:Kt(t)?{[`Set(${t.size})`]:[...t.values()]}:ie(t)&&!j(t)&&!eo(t)?String(t):t,se={},Zt=[],we=()=>{},ps=()=>!1,$f=/^on[^a-z]/,jt=e=>$f.test(e),xr=e=>e.startsWith("onUpdate:"),G=Object.assign,Wr=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Df=Object.prototype.hasOwnProperty,X=(e,t)=>Df.call(e,t),j=Array.isArray,Xt=e=>jn(e)==="[object Map]",Kt=e=>jn(e)==="[object Set]",zi=e=>jn(e)==="[object Date]",W=e=>typeof e=="function",J=e=>typeof e=="string",mt=e=>typeof e=="symbol",ie=e=>e!==null&&typeof e=="object",qr=e=>ie(e)&&W(e.then)&&W(e.catch),Gl=Object.prototype.toString,jn=e=>Gl.call(e),Hf=e=>jn(e).slice(8,-1),eo=e=>jn(e)==="[object Object]",Jr=e=>J(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,It=Ae(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Vf=Ae("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),Ls=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},jf=/-(\w)/g,be=Ls(e=>e.replace(jf,(t,n)=>n?n.toUpperCase():"")),Kf=/\B([A-Z])/g,ke=Ls(e=>e.replace(Kf,"-$1").toLowerCase()),Ut=Ls(e=>e.charAt(0).toUpperCase()+e.slice(1)),Qt=Ls(e=>e?`on${Ut(e)}`:""),nn=(e,t)=>!Object.is(e,t),Gt=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},it=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let Yi;const Uf=()=>Yi||(Yi=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});let Me;class zr{constructor(t=!1){this.detached=t,this.active=!0,this.effects=[],this.cleanups=[],this.parent=Me,!t&&Me&&(this.index=(Me.scopes||(Me.scopes=[])).push(this)-1)}run(t){if(this.active){const n=Me;try{return Me=this,t()}finally{Me=n}}}on(){Me=this}off(){Me=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},no=e=>(e.w&yt)>0,so=e=>(e.n&yt)>0,Jf=({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{(a==="length"||a>=c)&&o.push(f)})}else switch(n!==void 0&&o.push(l.get(n)),t){case"add":j(e)?Jr(n)&&o.push(l.get("length")):(o.push(l.get(Mt)),Xt(e)&&o.push(l.get(br)));break;case"delete":j(e)||(o.push(l.get(Mt)),Xt(e)&&o.push(l.get(br)));break;case"set":Xt(e)&&o.push(l.get(Mt));break}if(o.length===1)o[0]&&Er(o[0]);else{const c=[];for(const f of o)f&&c.push(...f);Er(Yr(c))}}function Er(e,t){const n=j(e)?e:[...e];for(const s of n)s.computed&&Xi(s);for(const s of n)s.computed||Xi(s)}function Xi(e,t){(e!==We||e.allowRecurse)&&(e.scheduler?e.scheduler():e.run())}const Xf=Ae("__proto__,__v_isRef,__isVue"),lo=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(mt)),Qf=Bs(),Gf=Bs(!1,!0),eu=Bs(!0),tu=Bs(!0,!0),Qi=nu();function nu(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const s=Q(this);for(let i=0,l=this.length;i{e[t]=function(...n){an();const s=Q(this)[t].apply(this,n);return pn(),s}}),e}function Bs(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?ho:po:t?ao:uo).get(s))return s;const l=j(s);if(!e&&l&&X(Qi,r))return Reflect.get(Qi,r,i);const o=Reflect.get(s,r,i);return(mt(r)?lo.has(r):Xf(r))||(e||Be(s,"get",r),t)?o:ge(o)?l&&Jr(r)?o:o.value:ie(o)?e?Xr(o):Hs(o):o}}const su=oo(),ru=oo(!0);function oo(e=!1){return function(n,s,r,i){let l=n[s];if(Bt(l)&&ge(l)&&!ge(r))return!1;if(!e&&(!On(r)&&!Bt(r)&&(l=Q(l),r=Q(r)),!j(n)&&ge(l)&&!ge(r)))return l.value=r,!0;const o=j(n)&&Jr(s)?Number(s)e,$s=e=>Reflect.getPrototypeOf(e);function Qn(e,t,n=!1,s=!1){e=e.__v_raw;const r=Q(e),i=Q(t);n||(t!==i&&Be(r,"get",t),Be(r,"get",i));const{has:l}=$s(r),o=s?Zr:n?ei:Pn;if(l.call(r,t))return o(e.get(t));if(l.call(r,i))return o(e.get(i));e!==r&&e.get(t)}function Gn(e,t=!1){const n=this.__v_raw,s=Q(n),r=Q(e);return t||(e!==r&&Be(s,"has",e),Be(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function es(e,t=!1){return e=e.__v_raw,!t&&Be(Q(e),"iterate",Mt),Reflect.get(e,"size",e)}function Gi(e){e=Q(e);const t=Q(this);return $s(t).has.call(t,e)||(t.add(e),lt(t,"add",e,e)),this}function el(e,t){t=Q(t);const n=Q(this),{has:s,get:r}=$s(n);let i=s.call(n,e);i||(e=Q(e),i=s.call(n,e));const l=r.call(n,e);return n.set(e,t),i?nn(t,l)&<(n,"set",e,t):lt(n,"add",e,t),this}function tl(e){const t=Q(this),{has:n,get:s}=$s(t);let r=n.call(t,e);r||(e=Q(e),r=n.call(t,e)),s&&s.call(t,e);const i=t.delete(e);return r&<(t,"delete",e,void 0),i}function nl(){const e=Q(this),t=e.size!==0,n=e.clear();return t&<(e,"clear",void 0,void 0),n}function ts(e,t){return function(s,r){const i=this,l=i.__v_raw,o=Q(l),c=t?Zr:e?ei:Pn;return!e&&Be(o,"iterate",Mt),l.forEach((f,a)=>s.call(r,c(f),c(a),i))}}function ns(e,t,n){return function(...s){const r=this.__v_raw,i=Q(r),l=Xt(i),o=e==="entries"||e===Symbol.iterator&&l,c=e==="keys"&&l,f=r[e](...s),a=n?Zr:t?ei:Pn;return!t&&Be(i,"iterate",c?br:Mt),{next(){const{value:u,done:d}=f.next();return d?{value:u,done:d}:{value:o?[a(u[0]),a(u[1])]:a(u),done:d}},[Symbol.iterator](){return this}}}}function ct(e){return function(...t){return e==="delete"?!1:this}}function uu(){const e={get(i){return Qn(this,i)},get size(){return es(this)},has:Gn,add:Gi,set:el,delete:tl,clear:nl,forEach:ts(!1,!1)},t={get(i){return Qn(this,i,!1,!0)},get size(){return es(this)},has:Gn,add:Gi,set:el,delete:tl,clear:nl,forEach:ts(!1,!0)},n={get(i){return Qn(this,i,!0)},get size(){return es(this,!0)},has(i){return Gn.call(this,i,!0)},add:ct("add"),set:ct("set"),delete:ct("delete"),clear:ct("clear"),forEach:ts(!0,!1)},s={get(i){return Qn(this,i,!0,!0)},get size(){return es(this,!0)},has(i){return Gn.call(this,i,!0)},add:ct("add"),set:ct("set"),delete:ct("delete"),clear:ct("clear"),forEach:ts(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=ns(i,!1,!1),n[i]=ns(i,!0,!1),t[i]=ns(i,!1,!0),s[i]=ns(i,!0,!0)}),[e,n,t,s]}const[au,pu,du,hu]=uu();function Ds(e,t){const n=t?e?hu:du:e?pu:au;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(X(n,r)&&r in s?n:s,r,i)}const gu={get:Ds(!1,!1)},mu={get:Ds(!1,!0)},yu={get:Ds(!0,!1)},_u={get:Ds(!0,!0)},uo=new WeakMap,ao=new WeakMap,po=new WeakMap,ho=new WeakMap;function bu(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Eu(e){return e.__v_skip||!Object.isExtensible(e)?0:bu(Hf(e))}function Hs(e){return Bt(e)?e:Vs(e,!1,co,gu,uo)}function go(e){return Vs(e,!1,cu,mu,ao)}function Xr(e){return Vs(e,!0,fo,yu,po)}function Cu(e){return Vs(e,!0,fu,_u,ho)}function Vs(e,t,n,s,r){if(!ie(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const l=Eu(e);if(l===0)return e;const o=new Proxy(e,l===2?s:n);return r.set(e,o),o}function Rt(e){return Bt(e)?Rt(e.__v_raw):!!(e&&e.__v_isReactive)}function Bt(e){return!!(e&&e.__v_isReadonly)}function On(e){return!!(e&&e.__v_isShallow)}function Qr(e){return Rt(e)||Bt(e)}function Q(e){const t=e&&e.__v_raw;return t?Q(t):e}function Gr(e){return _s(e,"__v_skip",!0),e}const Pn=e=>ie(e)?Hs(e):e,ei=e=>ie(e)?Xr(e):e;function ti(e){dt&&We&&(e=Q(e),io(e.dep||(e.dep=Yr())))}function js(e,t){e=Q(e),e.dep&&Er(e.dep)}function ge(e){return!!(e&&e.__v_isRef===!0)}function ds(e){return mo(e,!1)}function Tu(e){return mo(e,!0)}function mo(e,t){return ge(e)?e:new vu(e,t)}class vu{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:Q(t),this._value=n?t:Pn(t)}get value(){return ti(this),this._value}set value(t){const n=this.__v_isShallow||On(t)||Bt(t);t=n?t:Q(t),nn(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:Pn(t),js(this))}}function Su(e){js(e)}function yo(e){return ge(e)?e.value:e}const wu={get:(e,t,n)=>yo(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return ge(r)&&!ge(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function ni(e){return Rt(e)?e:new Proxy(e,wu)}class Nu{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:s}=t(()=>ti(this),()=>js(this));this._get=n,this._set=s}get value(){return this._get()}set value(t){this._set(t)}}function Ou(e){return new Nu(e)}function Pu(e){const t=j(e)?new Array(e.length):{};for(const n in e)t[n]=_o(e,n);return t}class Au{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}}function _o(e,t,n){const s=e[t];return ge(s)?s:new Au(e,t,n)}var bo;class Iu{constructor(t,n,s,r){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this[bo]=!1,this._dirty=!0,this.effect=new Kn(t,()=>{this._dirty||(this._dirty=!0,js(this))}),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=s}get value(){const t=Q(this);return ti(t),(t._dirty||!t._cacheable)&&(t._dirty=!1,t._value=t.effect.run()),t._value}set value(t){this._setter(t)}}bo="__v_isReadonly";function Mu(e,t,n=!1){let s,r;const i=W(e);return i?(s=e,r=we):(s=e.get,r=e.set),new Iu(s,r,i||!r,n)}function Ru(e,...t){}function st(e,t,n,s){let r;try{r=s?e(...s):e()}catch(i){xt(i,t,n)}return r}function Fe(e,t,n,s){if(W(e)){const i=st(e,t,n,s);return i&&qr(i)&&i.catch(l=>{xt(l,t,n)}),i}const r=[];for(let i=0;i>>1;In(Ee[s])Ze&&Ee.splice(t,1)}function ii(e){j(e)?en.push(...e):(!tt||!tt.includes(e,e.allowRecurse?Nt+1:Nt))&&en.push(e),Co()}function sl(e,t=An?Ze+1:0){for(;tIn(n)-In(s)),Nt=0;Nte.id==null?1/0:e.id,Bu=(e,t)=>{const n=In(e)-In(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function To(e){Cr=!1,An=!0,Ee.sort(Bu);const t=we;try{for(Ze=0;Zezt.emit(r,...i)),ss=[]):typeof window<"u"&&window.HTMLElement&&!(!((s=(n=window.navigator)===null||n===void 0?void 0:n.userAgent)===null||s===void 0)&&s.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(i=>{vo(i,t)}),setTimeout(()=>{zt||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,ss=[])},3e3)):ss=[]}function $u(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||se;let r=n;const i=t.startsWith("update:"),l=i&&t.slice(7);if(l&&l in s){const a=`${l==="modelValue"?"model":l}Modifiers`,{number:u,trim:d}=s[a]||se;d&&(r=n.map(m=>J(m)?m.trim():m)),u&&(r=n.map(it))}let o,c=s[o=Qt(t)]||s[o=Qt(be(t))];!c&&i&&(c=s[o=Qt(ke(t))]),c&&Fe(c,e,6,r);const f=s[o+"Once"];if(f){if(!e.emitted)e.emitted={};else if(e.emitted[o])return;e.emitted[o]=!0,Fe(f,e,6,r)}}function So(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let l={},o=!1;if(!W(e)){const c=f=>{const a=So(f,t,!0);a&&(o=!0,G(l,a))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!o?(ie(e)&&s.set(e,null),null):(j(i)?i.forEach(c=>l[c]=null):G(l,i),ie(e)&&s.set(e,l),l)}function Us(e,t){return!e||!jt(t)?!1:(t=t.slice(2).replace(/Once$/,""),X(e,t[0].toLowerCase()+t.slice(1))||X(e,ke(t))||X(e,t))}let _e=null,xs=null;function Mn(e){const t=_e;return _e=e,xs=e&&e.type.__scopeId||null,t}function Du(e){xs=e}function Hu(){xs=null}const Vu=e=>li;function li(e,t=_e,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&Pr(-1);const i=Mn(t);let l;try{l=e(...r)}finally{Mn(i),s._d&&Pr(1)}return l};return s._n=!0,s._c=!0,s._d=!0,s}function hs(e){const{type:t,vnode:n,proxy:s,withProxy:r,props:i,propsOptions:[l],slots:o,attrs:c,emit:f,render:a,renderCache:u,data:d,setupState:m,ctx:E,inheritAttrs:T}=e;let I,y;const h=Mn(e);try{if(n.shapeFlag&4){const w=r||s;I=Re(a.call(w,w,u,i,m,d,E)),y=c}else{const w=t;I=Re(w.length>1?w(i,{attrs:c,slots:o,emit:f}):w(i,null)),y=t.props?c:Ku(c)}}catch(w){vn.length=0,xt(w,e,1),I=ce(Te)}let b=I;if(y&&T!==!1){const w=Object.keys(y),{shapeFlag:A}=b;w.length&&A&7&&(l&&w.some(xr)&&(y=Uu(y,l)),b=Qe(b,y))}return n.dirs&&(b=Qe(b),b.dirs=b.dirs?b.dirs.concat(n.dirs):n.dirs),n.transition&&(b.transition=n.transition),I=b,Mn(h),I}function ju(e){let t;for(let n=0;n{let t;for(const n in e)(n==="class"||n==="style"||jt(n))&&((t||(t={}))[n]=e[n]);return t},Uu=(e,t)=>{const n={};for(const s in e)(!xr(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function xu(e,t,n){const{props:s,children:r,component:i}=e,{props:l,children:o,patchFlag:c}=t,f=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?rl(s,l,f):!!l;if(c&8){const a=t.dynamicProps;for(let u=0;ue.__isSuspense,Wu={name:"Suspense",__isSuspense:!0,process(e,t,n,s,r,i,l,o,c,f){e==null?Ju(t,n,s,r,i,l,o,c,f):zu(e,t,n,s,r,l,o,c,f)},hydrate:Yu,create:ci,normalize:Zu},qu=Wu;function Rn(e,t){const n=e.props&&e.props[t];W(n)&&n()}function Ju(e,t,n,s,r,i,l,o,c){const{p:f,o:{createElement:a}}=c,u=a("div"),d=e.suspense=ci(e,r,s,t,u,n,i,l,o,c);f(null,d.pendingBranch=e.ssContent,u,null,s,d,i,l),d.deps>0?(Rn(e,"onPending"),Rn(e,"onFallback"),f(null,e.ssFallback,t,n,s,null,i,l),tn(d,e.ssFallback)):d.resolve()}function zu(e,t,n,s,r,i,l,o,{p:c,um:f,o:{createElement:a}}){const u=t.suspense=e.suspense;u.vnode=t,t.el=e.el;const d=t.ssContent,m=t.ssFallback,{activeBranch:E,pendingBranch:T,isInFallback:I,isHydrating:y}=u;if(T)u.pendingBranch=d,Xe(d,T)?(c(T,d,u.hiddenContainer,null,r,u,i,l,o),u.deps<=0?u.resolve():I&&(c(E,m,n,s,r,null,i,l,o),tn(u,m))):(u.pendingId++,y?(u.isHydrating=!1,u.activeBranch=T):f(T,r,u),u.deps=0,u.effects.length=0,u.hiddenContainer=a("div"),I?(c(null,d,u.hiddenContainer,null,r,u,i,l,o),u.deps<=0?u.resolve():(c(E,m,n,s,r,null,i,l,o),tn(u,m))):E&&Xe(d,E)?(c(E,d,n,s,r,u,i,l,o),u.resolve(!0)):(c(null,d,u.hiddenContainer,null,r,u,i,l,o),u.deps<=0&&u.resolve()));else if(E&&Xe(d,E))c(E,d,n,s,r,u,i,l,o),tn(u,d);else if(Rn(t,"onPending"),u.pendingBranch=d,u.pendingId++,c(null,d,u.hiddenContainer,null,r,u,i,l,o),u.deps<=0)u.resolve();else{const{timeout:h,pendingId:b}=u;h>0?setTimeout(()=>{u.pendingId===b&&u.fallback(m)},h):h===0&&u.fallback(m)}}function ci(e,t,n,s,r,i,l,o,c,f,a=!1){const{p:u,m:d,um:m,n:E,o:{parentNode:T,remove:I}}=f,y=it(e.props&&e.props.timeout),h={vnode:e,parent:t,parentComponent:n,isSVG:l,container:s,hiddenContainer:r,anchor:i,deps:0,pendingId:0,timeout:typeof y=="number"?y:-1,activeBranch:null,pendingBranch:null,isInFallback:!0,isHydrating:a,isUnmounted:!1,effects:[],resolve(b=!1){const{vnode:w,activeBranch:A,pendingBranch:H,pendingId:O,effects:_,parentComponent:R,container:F}=h;if(h.isHydrating)h.isHydrating=!1;else if(!b){const V=A&&H.transition&&H.transition.mode==="out-in";V&&(A.transition.afterLeave=()=>{O===h.pendingId&&d(H,F,B,0)});let{anchor:B}=h;A&&(B=E(A),m(A,R,h,!0)),V||d(H,F,B,0)}tn(h,H),h.pendingBranch=null,h.isInFallback=!1;let M=h.parent,P=!1;for(;M;){if(M.pendingBranch){M.effects.push(..._),P=!0;break}M=M.parent}P||ii(_),h.effects=[],Rn(w,"onResolve")},fallback(b){if(!h.pendingBranch)return;const{vnode:w,activeBranch:A,parentComponent:H,container:O,isSVG:_}=h;Rn(w,"onFallback");const R=E(A),F=()=>{!h.isInFallback||(u(null,b,O,R,H,null,_,o,c),tn(h,b))},M=b.transition&&b.transition.mode==="out-in";M&&(A.transition.afterLeave=F),h.isInFallback=!0,m(A,H,null,!0),M||F()},move(b,w,A){h.activeBranch&&d(h.activeBranch,b,w,A),h.container=b},next(){return h.activeBranch&&E(h.activeBranch)},registerDep(b,w){const A=!!h.pendingBranch;A&&h.deps++;const H=b.vnode.el;b.asyncDep.catch(O=>{xt(O,b,0)}).then(O=>{if(b.isUnmounted||h.isUnmounted||h.pendingId!==b.suspenseId)return;b.asyncResolved=!0;const{vnode:_}=b;Ar(b,O,!1),H&&(_.el=H);const R=!H&&b.subTree.el;w(b,_,T(H||b.subTree.el),H?null:E(b.subTree),h,l,c),R&&I(R),oi(b,_.el),A&&--h.deps===0&&h.resolve()})},unmount(b,w){h.isUnmounted=!0,h.activeBranch&&m(h.activeBranch,n,b,w),h.pendingBranch&&m(h.pendingBranch,n,b,w)}};return h}function Yu(e,t,n,s,r,i,l,o,c){const f=t.suspense=ci(t,s,n,e.parentNode,document.createElement("div"),null,r,i,l,o,!0),a=c(e,f.pendingBranch=t.ssContent,n,f,i,l);return f.deps===0&&f.resolve(),a}function Zu(e){const{shapeFlag:t,children:n}=e,s=t&32;e.ssContent=il(s?n.default:n),e.ssFallback=s?il(n.fallback):ce(Te)}function il(e){let t;if(W(e)){const n=Ht&&e._c;n&&(e._d=!1,Zs()),e=e(),n&&(e._d=!0,t=Oe,Go())}return j(e)&&(e=ju(e)),e=Re(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function No(e,t){t&&t.pendingBranch?j(e)?t.effects.push(...e):t.effects.push(e):ii(e)}function tn(e,t){e.activeBranch=t;const{vnode:n,parentComponent:s}=e,r=n.el=t.el;s&&s.subTree===n&&(s.vnode.el=r,oi(s,r))}function Oo(e,t){if(de){let n=de.provides;const s=de.parent&&de.parent.provides;s===n&&(n=de.provides=Object.create(s)),n[e]=t}}function bn(e,t,n=!1){const s=de||_e;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&&W(t)?t.call(s.proxy):t}}function Xu(e,t){return Un(e,null,t)}function Po(e,t){return Un(e,null,{flush:"post"})}function Qu(e,t){return Un(e,null,{flush:"sync"})}const rs={};function En(e,t,n){return Un(e,t,n)}function Un(e,t,{immediate:n,deep:s,flush:r,onTrack:i,onTrigger:l}=se){const o=de;let c,f=!1,a=!1;if(ge(e)?(c=()=>e.value,f=On(e)):Rt(e)?(c=()=>e,s=!0):j(e)?(a=!0,f=e.some(b=>Rt(b)||On(b)),c=()=>e.map(b=>{if(ge(b))return b.value;if(Rt(b))return Pt(b);if(W(b))return st(b,o,2)})):W(e)?t?c=()=>st(e,o,2):c=()=>{if(!(o&&o.isUnmounted))return u&&u(),Fe(e,o,3,[d])}:c=we,t&&s){const b=c;c=()=>Pt(b())}let u,d=b=>{u=y.onStop=()=>{st(b,o,4)}},m;if(rn)if(d=we,t?n&&Fe(t,o,3,[c(),a?[]:void 0,d]):c(),r==="sync"){const b=hc();m=b.__watcherHandles||(b.__watcherHandles=[])}else return we;let E=a?new Array(e.length).fill(rs):rs;const T=()=>{if(!!y.active)if(t){const b=y.run();(s||f||(a?b.some((w,A)=>nn(w,E[A])):nn(b,E)))&&(u&&u(),Fe(t,o,3,[b,E===rs?void 0:a&&E[0]===rs?[]:E,d]),E=b)}else y.run()};T.allowRecurse=!!t;let I;r==="sync"?I=T:r==="post"?I=()=>me(T,o&&o.suspense):(T.pre=!0,o&&(T.id=o.uid),I=()=>Ks(T));const y=new Kn(c,I);t?n?T():E=y.run():r==="post"?me(y.run.bind(y),o&&o.suspense):y.run();const h=()=>{y.stop(),o&&o.scope&&Wr(o.scope.effects,y)};return m&&m.push(h),h}function Gu(e,t,n){const s=this.proxy,r=J(e)?e.includes(".")?Ao(s,e):()=>s[e]:e.bind(s,s);let i;W(t)?i=t:(i=t.handler,n=t);const l=de;bt(this);const o=Un(r,i.bind(s),n);return l?bt(l):ht(),o}function Ao(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r{Pt(n,t)});else if(eo(e))for(const n in e)Pt(e[n],t);return e}function fi(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Wn(()=>{e.isMounted=!0}),zs(()=>{e.isUnmounting=!0}),e}const De=[Function,Array],ea={name:"BaseTransition",props:{mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:De,onEnter:De,onAfterEnter:De,onEnterCancelled:De,onBeforeLeave:De,onLeave:De,onAfterLeave:De,onLeaveCancelled:De,onBeforeAppear:De,onAppear:De,onAfterAppear:De,onAppearCancelled:De},setup(e,{slots:t}){const n=Ct(),s=fi();let r;return()=>{const i=t.default&&Ws(t.default(),!0);if(!i||!i.length)return;let l=i[0];if(i.length>1){for(const T of i)if(T.type!==Te){l=T;break}}const o=Q(e),{mode:c}=o;if(s.isLeaving)return or(l);const f=ll(l);if(!f)return or(l);const a=sn(f,o,s,n);$t(f,a);const u=n.subTree,d=u&&ll(u);let m=!1;const{getTransitionKey:E}=f.type;if(E){const T=E();r===void 0?r=T:T!==r&&(r=T,m=!0)}if(d&&d.type!==Te&&(!Xe(f,d)||m)){const T=sn(d,o,s,n);if($t(d,T),c==="out-in")return s.isLeaving=!0,T.afterLeave=()=>{s.isLeaving=!1,n.update.active!==!1&&n.update()},or(l);c==="in-out"&&f.type!==Te&&(T.delayLeave=(I,y,h)=>{const b=Io(s,d);b[String(d.key)]=d,I._leaveCb=()=>{y(),I._leaveCb=void 0,delete a.delayedLeave},a.delayedLeave=h})}return l}}},ui=ea;function Io(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 sn(e,t,n,s){const{appear:r,mode:i,persisted:l=!1,onBeforeEnter:o,onEnter:c,onAfterEnter:f,onEnterCancelled:a,onBeforeLeave:u,onLeave:d,onAfterLeave:m,onLeaveCancelled:E,onBeforeAppear:T,onAppear:I,onAfterAppear:y,onAppearCancelled:h}=t,b=String(e.key),w=Io(n,e),A=(_,R)=>{_&&Fe(_,s,9,R)},H=(_,R)=>{const F=R[1];A(_,R),j(_)?_.every(M=>M.length<=1)&&F():_.length<=1&&F()},O={mode:i,persisted:l,beforeEnter(_){let R=o;if(!n.isMounted)if(r)R=T||o;else return;_._leaveCb&&_._leaveCb(!0);const F=w[b];F&&Xe(e,F)&&F.el._leaveCb&&F.el._leaveCb(),A(R,[_])},enter(_){let R=c,F=f,M=a;if(!n.isMounted)if(r)R=I||c,F=y||f,M=h||a;else return;let P=!1;const V=_._enterCb=B=>{P||(P=!0,B?A(M,[_]):A(F,[_]),O.delayedLeave&&O.delayedLeave(),_._enterCb=void 0)};R?H(R,[_,V]):V()},leave(_,R){const F=String(e.key);if(_._enterCb&&_._enterCb(!0),n.isUnmounting)return R();A(u,[_]);let M=!1;const P=_._leaveCb=V=>{M||(M=!0,R(),V?A(E,[_]):A(m,[_]),_._leaveCb=void 0,w[F]===e&&delete w[F])};w[F]=e,d?H(d,[_,P]):P()},clone(_){return sn(_,t,n,s)}};return O}function or(e){if(xn(e))return e=Qe(e),e.children=null,e}function ll(e){return xn(e)?e.children?e.children[0]:void 0:e}function $t(e,t){e.shapeFlag&6&&e.component?$t(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 Ws(e,t=!1,n){let s=[],r=0;for(let i=0;i1)for(let i=0;i!!e.type.__asyncLoader;function ta(e){W(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:r=200,timeout:i,suspensible:l=!0,onError:o}=e;let c=null,f,a=0;const u=()=>(a++,c=null,d()),d=()=>{let m;return c||(m=c=t().catch(E=>{if(E=E instanceof Error?E:new Error(String(E)),o)return new Promise((T,I)=>{o(E,()=>T(u()),()=>I(E),a+1)});throw E}).then(E=>m!==c&&c?c:(E&&(E.__esModule||E[Symbol.toStringTag]==="Module")&&(E=E.default),f=E,E)))};return ai({name:"AsyncComponentWrapper",__asyncLoader:d,get __asyncResolved(){return f},setup(){const m=de;if(f)return()=>cr(f,m);const E=h=>{c=null,xt(h,m,13,!s)};if(l&&m.suspense||rn)return d().then(h=>()=>cr(h,m)).catch(h=>(E(h),()=>s?ce(s,{error:h}):null));const T=ds(!1),I=ds(),y=ds(!!r);return r&&setTimeout(()=>{y.value=!1},r),i!=null&&setTimeout(()=>{if(!T.value&&!I.value){const h=new Error(`Async component timed out after ${i}ms.`);E(h),I.value=h}},i),d().then(()=>{T.value=!0,m.parent&&xn(m.parent.vnode)&&Ks(m.parent.update)}).catch(h=>{E(h),I.value=h}),()=>{if(T.value&&f)return cr(f,m);if(I.value&&s)return ce(s,{error:I.value});if(n&&!y.value)return ce(n)}}})}function cr(e,t){const{ref:n,props:s,children:r,ce:i}=t.vnode,l=ce(e,s,r);return l.ref=n,l.ce=i,delete t.vnode.ce,l}const xn=e=>e.type.__isKeepAlive,na={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Ct(),s=n.ctx;if(!s.renderer)return()=>{const h=t.default&&t.default();return h&&h.length===1?h[0]:h};const r=new Map,i=new Set;let l=null;const o=n.suspense,{renderer:{p:c,m:f,um:a,o:{createElement:u}}}=s,d=u("div");s.activate=(h,b,w,A,H)=>{const O=h.component;f(h,b,w,0,o),c(O.vnode,h,b,w,O,o,A,h.slotScopeIds,H),me(()=>{O.isDeactivated=!1,O.a&&Gt(O.a);const _=h.props&&h.props.onVnodeMounted;_&&Ne(_,O.parent,h)},o)},s.deactivate=h=>{const b=h.component;f(h,d,null,1,o),me(()=>{b.da&&Gt(b.da);const w=h.props&&h.props.onVnodeUnmounted;w&&Ne(w,b.parent,h),b.isDeactivated=!0},o)};function m(h){fr(h),a(h,n,o,!0)}function E(h){r.forEach((b,w)=>{const A=Mr(b.type);A&&(!h||!h(A))&&T(w)})}function T(h){const b=r.get(h);!l||b.type!==l.type?m(b):l&&fr(l),r.delete(h),i.delete(h)}En(()=>[e.include,e.exclude],([h,b])=>{h&&E(w=>_n(h,w)),b&&E(w=>!_n(b,w))},{flush:"post",deep:!0});let I=null;const y=()=>{I!=null&&r.set(I,ur(n.subTree))};return Wn(y),Js(y),zs(()=>{r.forEach(h=>{const{subTree:b,suspense:w}=n,A=ur(b);if(h.type===A.type){fr(A);const H=A.component.da;H&&me(H,w);return}m(h)})}),()=>{if(I=null,!t.default)return null;const h=t.default(),b=h[0];if(h.length>1)return l=null,h;if(!_t(b)||!(b.shapeFlag&4)&&!(b.shapeFlag&128))return l=null,b;let w=ur(b);const A=w.type,H=Mr(kt(w)?w.type.__asyncResolved||{}:A),{include:O,exclude:_,max:R}=e;if(O&&(!H||!_n(O,H))||_&&H&&_n(_,H))return l=w,b;const F=w.key==null?A:w.key,M=r.get(F);return w.el&&(w=Qe(w),b.shapeFlag&128&&(b.ssContent=w)),I=F,M?(w.el=M.el,w.component=M.component,w.transition&&$t(w,w.transition),w.shapeFlag|=512,i.delete(F),i.add(F)):(i.add(F),R&&i.size>parseInt(R,10)&&T(i.values().next().value)),w.shapeFlag|=256,l=w,wo(b.type)?b:w}}},sa=na;function _n(e,t){return j(e)?e.some(n=>_n(n,t)):J(e)?e.split(",").includes(t):e.test?e.test(t):!1}function Mo(e,t){ko(e,"a",t)}function Ro(e,t){ko(e,"da",t)}function ko(e,t,n=de){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(qs(t,s,n),n){let r=n.parent;for(;r&&r.parent;)xn(r.parent.vnode)&&ra(s,t,n,r),r=r.parent}}function ra(e,t,n,s){const r=qs(t,e,s,!0);Ys(()=>{Wr(s[t],r)},n)}function fr(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function ur(e){return e.shapeFlag&128?e.ssContent:e}function qs(e,t,n=de,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...l)=>{if(n.isUnmounted)return;an(),bt(n);const o=Fe(t,n,e,l);return ht(),pn(),o});return s?r.unshift(i):r.push(i),i}}const ot=e=>(t,n=de)=>(!rn||e==="sp")&&qs(e,(...s)=>t(...s),n),Fo=ot("bm"),Wn=ot("m"),Lo=ot("bu"),Js=ot("u"),zs=ot("bum"),Ys=ot("um"),Bo=ot("sp"),$o=ot("rtg"),Do=ot("rtc");function Ho(e,t=de){qs("ec",e,t)}function ia(e,t){const n=_e;if(n===null)return e;const s=Qs(n)||n.proxy,r=e.dirs||(e.dirs=[]);for(let i=0;it(l,o,void 0,i&&i[o]));else{const l=Object.keys(e);r=new Array(l.length);for(let o=0,c=l.length;o{const i=s.fn(...r);return i&&(i.key=s.key),i}:s.fn)}return e}function pa(e,t,n={},s,r){if(_e.isCE||_e.parent&&kt(_e.parent)&&_e.parent.isCE)return t!=="default"&&(n.name=t),ce("slot",n,s&&s());let i=e[t];i&&i._c&&(i._d=!1),Zs();const l=i&&jo(i(n)),o=yi(ye,{key:n.key||l&&l.key||`_${t}`},l||(s?s():[]),l&&e._===1?64:-2);return!r&&o.scopeId&&(o.slotScopeIds=[o.scopeId+"-s"]),i&&i._c&&(i._d=!0),o}function jo(e){return e.some(t=>_t(t)?!(t.type===Te||t.type===ye&&!jo(t.children)):!0)?e:null}function da(e,t){const n={};for(const s in e)n[t&&/[A-Z]/.test(s)?`on:${s}`:Qt(s)]=e[s];return n}const Tr=e=>e?ic(e)?Qs(e)||e.proxy:Tr(e.parent):null,Cn=G(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=>Tr(e.parent),$root:e=>Tr(e.root),$emit:e=>e.emit,$options:e=>hi(e),$forceUpdate:e=>e.f||(e.f=()=>Ks(e.update)),$nextTick:e=>e.n||(e.n=ri.bind(e.proxy)),$watch:e=>Gu.bind(e)}),ar=(e,t)=>e!==se&&!e.__isScriptSetup&&X(e,t),vr={get({_:e},t){const{ctx:n,setupState:s,data:r,props:i,accessCache:l,type:o,appContext:c}=e;let f;if(t[0]!=="$"){const m=l[t];if(m!==void 0)switch(m){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(ar(s,t))return l[t]=1,s[t];if(r!==se&&X(r,t))return l[t]=2,r[t];if((f=e.propsOptions[0])&&X(f,t))return l[t]=3,i[t];if(n!==se&&X(n,t))return l[t]=4,n[t];Sr&&(l[t]=0)}}const a=Cn[t];let u,d;if(a)return t==="$attrs"&&Be(e,"get",t),a(e);if((u=o.__cssModules)&&(u=u[t]))return u;if(n!==se&&X(n,t))return l[t]=4,n[t];if(d=c.config.globalProperties,X(d,t))return d[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return ar(r,t)?(r[t]=n,!0):s!==se&&X(s,t)?(s[t]=n,!0):X(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}},l){let o;return!!n[l]||e!==se&&X(e,l)||ar(t,l)||(o=i[0])&&X(o,l)||X(s,l)||X(Cn,l)||X(r.config.globalProperties,l)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:X(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}},ha=G({},vr,{get(e,t){if(t!==Symbol.unscopables)return vr.get(e,t,e)},has(e,t){return t[0]!=="_"&&!Tf(t)}});let Sr=!0;function ga(e){const t=hi(e),n=e.proxy,s=e.ctx;Sr=!1,t.beforeCreate&&cl(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:l,watch:o,provide:c,inject:f,created:a,beforeMount:u,mounted:d,beforeUpdate:m,updated:E,activated:T,deactivated:I,beforeDestroy:y,beforeUnmount:h,destroyed:b,unmounted:w,render:A,renderTracked:H,renderTriggered:O,errorCaptured:_,serverPrefetch:R,expose:F,inheritAttrs:M,components:P,directives:V,filters:B}=t;if(f&&ma(f,s,null,e.appContext.config.unwrapInjectedRef),l)for(const oe in l){const te=l[oe];W(te)&&(s[oe]=te.bind(n))}if(r){const oe=r.call(n,n);ie(oe)&&(e.data=Hs(oe))}if(Sr=!0,i)for(const oe in i){const te=i[oe],Ue=W(te)?te.bind(n,n):W(te.get)?te.get.bind(n,n):we,Zn=!W(te)&&W(te.set)?te.set.bind(n):we,Tt=uc({get:Ue,set:Zn});Object.defineProperty(s,oe,{enumerable:!0,configurable:!0,get:()=>Tt.value,set:Je=>Tt.value=Je})}if(o)for(const oe in o)Ko(o[oe],s,n,oe);if(c){const oe=W(c)?c.call(n):c;Reflect.ownKeys(oe).forEach(te=>{Oo(te,oe[te])})}a&&cl(a,e,"c");function Z(oe,te){j(te)?te.forEach(Ue=>oe(Ue.bind(n))):te&&oe(te.bind(n))}if(Z(Fo,u),Z(Wn,d),Z(Lo,m),Z(Js,E),Z(Mo,T),Z(Ro,I),Z(Ho,_),Z(Do,H),Z($o,O),Z(zs,h),Z(Ys,w),Z(Bo,R),j(F))if(F.length){const oe=e.exposed||(e.exposed={});F.forEach(te=>{Object.defineProperty(oe,te,{get:()=>n[te],set:Ue=>n[te]=Ue})})}else e.exposed||(e.exposed={});A&&e.render===we&&(e.render=A),M!=null&&(e.inheritAttrs=M),P&&(e.components=P),V&&(e.directives=V)}function ma(e,t,n=we,s=!1){j(e)&&(e=wr(e));for(const r in e){const i=e[r];let l;ie(i)?"default"in i?l=bn(i.from||r,i.default,!0):l=bn(i.from||r):l=bn(i),ge(l)&&s?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>l.value,set:o=>l.value=o}):t[r]=l}}function cl(e,t,n){Fe(j(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function Ko(e,t,n,s){const r=s.includes(".")?Ao(n,s):()=>n[s];if(J(e)){const i=t[e];W(i)&&En(r,i)}else if(W(e))En(r,e.bind(n));else if(ie(e))if(j(e))e.forEach(i=>Ko(i,t,n,s));else{const i=W(e.handler)?e.handler.bind(n):t[e.handler];W(i)&&En(r,i,e)}}function hi(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:l}}=e.appContext,o=i.get(t);let c;return o?c=o:!r.length&&!n&&!s?c=t:(c={},r.length&&r.forEach(f=>Es(c,f,l,!0)),Es(c,t,l)),ie(t)&&i.set(t,c),c}function Es(e,t,n,s=!1){const{mixins:r,extends:i}=t;i&&Es(e,i,n,!0),r&&r.forEach(l=>Es(e,l,n,!0));for(const l in t)if(!(s&&l==="expose")){const o=ya[l]||n&&n[l];e[l]=o?o(e[l],t[l]):t[l]}return e}const ya={data:fl,props:wt,emits:wt,methods:wt,computed:wt,beforeCreate:Se,created:Se,beforeMount:Se,mounted:Se,beforeUpdate:Se,updated:Se,beforeDestroy:Se,beforeUnmount:Se,destroyed:Se,unmounted:Se,activated:Se,deactivated:Se,errorCaptured:Se,serverPrefetch:Se,components:wt,directives:wt,watch:ba,provide:fl,inject:_a};function fl(e,t){return t?e?function(){return G(W(e)?e.call(this,this):e,W(t)?t.call(this,this):t)}:t:e}function _a(e,t){return wt(wr(e),wr(t))}function wr(e){if(j(e)){const t={};for(let n=0;n0)&&!(l&16)){if(l&8){const a=e.vnode.dynamicProps;for(let u=0;u{c=!0;const[d,m]=xo(u,t,!0);G(l,d),m&&o.push(...m)};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}if(!i&&!c)return ie(e)&&s.set(e,Zt),Zt;if(j(i))for(let a=0;a-1,m[1]=T<0||E-1||X(m,"default"))&&o.push(u)}}}const f=[l,o];return ie(e)&&s.set(e,f),f}function ul(e){return e[0]!=="$"}function al(e){const t=e&&e.toString().match(/^\s*function (\w+)/);return t?t[1]:e===null?"null":""}function pl(e,t){return al(e)===al(t)}function dl(e,t){return j(t)?t.findIndex(n=>pl(n,e)):W(t)&&pl(t,e)?0:-1}const Wo=e=>e[0]==="_"||e==="$stable",gi=e=>j(e)?e.map(Re):[Re(e)],Ta=(e,t,n)=>{if(t._n)return t;const s=li((...r)=>gi(t(...r)),n);return s._c=!1,s},qo=(e,t,n)=>{const s=e._ctx;for(const r in e){if(Wo(r))continue;const i=e[r];if(W(i))t[r]=Ta(r,i,s);else if(i!=null){const l=gi(i);t[r]=()=>l}}},Jo=(e,t)=>{const n=gi(t);e.slots.default=()=>n},va=(e,t)=>{if(e.vnode.shapeFlag&32){const n=t._;n?(e.slots=Q(t),_s(t,"_",n)):qo(t,e.slots={})}else e.slots={},t&&Jo(e,t);_s(e.slots,Xs,1)},Sa=(e,t,n)=>{const{vnode:s,slots:r}=e;let i=!0,l=se;if(s.shapeFlag&32){const o=t._;o?n&&o===1?i=!1:(G(r,t),!n&&o===1&&delete r._):(i=!t.$stable,qo(t,r)),l=t}else t&&(Jo(e,t),l={default:1});if(i)for(const o in r)!Wo(o)&&!(o in l)&&delete r[o]};function zo(){return{app:null,config:{isNativeTag:ps,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 wa=0;function Na(e,t){return function(s,r=null){W(s)||(s=Object.assign({},s)),r!=null&&!ie(r)&&(r=null);const i=zo(),l=new Set;let o=!1;const c=i.app={_uid:wa++,_component:s,_props:r,_container:null,_context:i,_instance:null,version:mc,get config(){return i.config},set config(f){},use(f,...a){return l.has(f)||(f&&W(f.install)?(l.add(f),f.install(c,...a)):W(f)&&(l.add(f),f(c,...a))),c},mixin(f){return i.mixins.includes(f)||i.mixins.push(f),c},component(f,a){return a?(i.components[f]=a,c):i.components[f]},directive(f,a){return a?(i.directives[f]=a,c):i.directives[f]},mount(f,a,u){if(!o){const d=ce(s,r);return d.appContext=i,a&&t?t(d,f):e(d,f,u),o=!0,c._container=f,f.__vue_app__=c,Qs(d.component)||d.component.proxy}},unmount(){o&&(e(null,c._container),delete c._container.__vue_app__)},provide(f,a){return i.provides[f]=a,c}};return c}}function Cs(e,t,n,s,r=!1){if(j(e)){e.forEach((d,m)=>Cs(d,t&&(j(t)?t[m]:t),n,s,r));return}if(kt(s)&&!r)return;const i=s.shapeFlag&4?Qs(s.component)||s.component.proxy:s.el,l=r?null:i,{i:o,r:c}=e,f=t&&t.r,a=o.refs===se?o.refs={}:o.refs,u=o.setupState;if(f!=null&&f!==c&&(J(f)?(a[f]=null,X(u,f)&&(u[f]=null)):ge(f)&&(f.value=null)),W(c))st(c,o,12,[l,a]);else{const d=J(c),m=ge(c);if(d||m){const E=()=>{if(e.f){const T=d?X(u,c)?u[c]:a[c]:c.value;r?j(T)&&Wr(T,i):j(T)?T.includes(i)||T.push(i):d?(a[c]=[i],X(u,c)&&(u[c]=a[c])):(c.value=[i],e.k&&(a[e.k]=c.value))}else d?(a[c]=l,X(u,c)&&(u[c]=l)):m&&(c.value=l,e.k&&(a[e.k]=l))};l?(E.id=-1,me(E,n)):E()}}}let ft=!1;const is=e=>/svg/.test(e.namespaceURI)&&e.tagName!=="foreignObject",ls=e=>e.nodeType===8;function Oa(e){const{mt:t,p:n,o:{patchProp:s,createText:r,nextSibling:i,parentNode:l,remove:o,insert:c,createComment:f}}=e,a=(y,h)=>{if(!h.hasChildNodes()){n(null,y,h),bs(),h._vnode=y;return}ft=!1,u(h.firstChild,y,null,null,null),bs(),h._vnode=y,ft&&console.error("Hydration completed but contains mismatches.")},u=(y,h,b,w,A,H=!1)=>{const O=ls(y)&&y.data==="[",_=()=>T(y,h,b,w,A,O),{type:R,ref:F,shapeFlag:M,patchFlag:P}=h;let V=y.nodeType;h.el=y,P===-2&&(H=!1,h.dynamicChildren=null);let B=null;switch(R){case Dt:V!==3?h.children===""?(c(h.el=r(""),l(y),y),B=y):B=_():(y.data!==h.children&&(ft=!0,y.data=h.children),B=i(y));break;case Te:V!==8||O?B=_():B=i(y);break;case Ft:if(O&&(y=i(y),V=y.nodeType),V===1||V===3){B=y;const ee=!h.children.length;for(let Z=0;Z{H=H||!!h.dynamicChildren;const{type:O,props:_,patchFlag:R,shapeFlag:F,dirs:M}=h,P=O==="input"&&M||O==="option";if(P||R!==-1){if(M&&Ye(h,null,b,"created"),_)if(P||!H||R&48)for(const B in _)(P&&B.endsWith("value")||jt(B)&&!It(B))&&s(y,B,null,_[B],!1,void 0,b);else _.onClick&&s(y,"onClick",null,_.onClick,!1,void 0,b);let V;if((V=_&&_.onVnodeBeforeMount)&&Ne(V,b,h),M&&Ye(h,null,b,"beforeMount"),((V=_&&_.onVnodeMounted)||M)&&No(()=>{V&&Ne(V,b,h),M&&Ye(h,null,b,"mounted")},w),F&16&&!(_&&(_.innerHTML||_.textContent))){let B=m(y.firstChild,h,y,b,w,A,H);for(;B;){ft=!0;const ee=B;B=B.nextSibling,o(ee)}}else F&8&&y.textContent!==h.children&&(ft=!0,y.textContent=h.children)}return y.nextSibling},m=(y,h,b,w,A,H,O)=>{O=O||!!h.dynamicChildren;const _=h.children,R=_.length;for(let F=0;F{const{slotScopeIds:O}=h;O&&(A=A?A.concat(O):O);const _=l(y),R=m(i(y),h,_,b,w,A,H);return R&&ls(R)&&R.data==="]"?i(h.anchor=R):(ft=!0,c(h.anchor=f("]"),_,R),R)},T=(y,h,b,w,A,H)=>{if(ft=!0,h.el=null,H){const R=I(y);for(;;){const F=i(y);if(F&&F!==R)o(F);else break}}const O=i(y),_=l(y);return o(y),n(null,h,_,O,b,w,is(_),A),O},I=y=>{let h=0;for(;y;)if(y=i(y),y&&ls(y)&&(y.data==="["&&h++,y.data==="]")){if(h===0)return i(y);h--}return y};return[a,u]}const me=No;function Yo(e){return Xo(e)}function Zo(e){return Xo(e,Oa)}function Xo(e,t){const n=Uf();n.__VUE__=!0;const{insert:s,remove:r,patchProp:i,createElement:l,createText:o,createComment:c,setText:f,setElementText:a,parentNode:u,nextSibling:d,setScopeId:m=we,insertStaticContent:E}=e,T=(p,g,C,S=null,v=null,L=null,D=!1,k=null,$=!!g.dynamicChildren)=>{if(p===g)return;p&&!Xe(p,g)&&(S=Xn(p),Je(p,v,L,!0),p=null),g.patchFlag===-2&&($=!1,g.dynamicChildren=null);const{type:N,ref:U,shapeFlag:K}=g;switch(N){case Dt:I(p,g,C,S);break;case Te:y(p,g,C,S);break;case Ft:p==null&&h(g,C,S,D);break;case ye:P(p,g,C,S,v,L,D,k,$);break;default:K&1?A(p,g,C,S,v,L,D,k,$):K&6?V(p,g,C,S,v,L,D,k,$):(K&64||K&128)&&N.process(p,g,C,S,v,L,D,k,$,Wt)}U!=null&&v&&Cs(U,p&&p.ref,L,g||p,!g)},I=(p,g,C,S)=>{if(p==null)s(g.el=o(g.children),C,S);else{const v=g.el=p.el;g.children!==p.children&&f(v,g.children)}},y=(p,g,C,S)=>{p==null?s(g.el=c(g.children||""),C,S):g.el=p.el},h=(p,g,C,S)=>{[p.el,p.anchor]=E(p.children,g,C,S,p.el,p.anchor)},b=({el:p,anchor:g},C,S)=>{let v;for(;p&&p!==g;)v=d(p),s(p,C,S),p=v;s(g,C,S)},w=({el:p,anchor:g})=>{let C;for(;p&&p!==g;)C=d(p),r(p),p=C;r(g)},A=(p,g,C,S,v,L,D,k,$)=>{D=D||g.type==="svg",p==null?H(g,C,S,v,L,D,k,$):R(p,g,v,L,D,k,$)},H=(p,g,C,S,v,L,D,k)=>{let $,N;const{type:U,props:K,shapeFlag:x,transition:q,dirs:Y}=p;if($=p.el=l(p.type,L,K&&K.is,K),x&8?a($,p.children):x&16&&_(p.children,$,null,S,v,L&&U!=="foreignObject",D,k),Y&&Ye(p,null,S,"created"),K){for(const re in K)re!=="value"&&!It(re)&&i($,re,null,K[re],L,p.children,S,v,Ge);"value"in K&&i($,"value",null,K.value),(N=K.onVnodeBeforeMount)&&Ne(N,S,p)}O($,p,p.scopeId,D,S),Y&&Ye(p,null,S,"beforeMount");const le=(!v||v&&!v.pendingBranch)&&q&&!q.persisted;le&&q.beforeEnter($),s($,g,C),((N=K&&K.onVnodeMounted)||le||Y)&&me(()=>{N&&Ne(N,S,p),le&&q.enter($),Y&&Ye(p,null,S,"mounted")},v)},O=(p,g,C,S,v)=>{if(C&&m(p,C),S)for(let L=0;L{for(let N=$;N{const k=g.el=p.el;let{patchFlag:$,dynamicChildren:N,dirs:U}=g;$|=p.patchFlag&16;const K=p.props||se,x=g.props||se;let q;C&&vt(C,!1),(q=x.onVnodeBeforeUpdate)&&Ne(q,C,g,p),U&&Ye(g,p,C,"beforeUpdate"),C&&vt(C,!0);const Y=v&&g.type!=="foreignObject";if(N?F(p.dynamicChildren,N,k,C,S,Y,L):D||te(p,g,k,null,C,S,Y,L,!1),$>0){if($&16)M(k,g,K,x,C,S,v);else if($&2&&K.class!==x.class&&i(k,"class",null,x.class,v),$&4&&i(k,"style",K.style,x.style,v),$&8){const le=g.dynamicProps;for(let re=0;re{q&&Ne(q,C,g,p),U&&Ye(g,p,C,"updated")},S)},F=(p,g,C,S,v,L,D)=>{for(let k=0;k{if(C!==S){if(C!==se)for(const k in C)!It(k)&&!(k in S)&&i(p,k,C[k],null,D,g.children,v,L,Ge);for(const k in S){if(It(k))continue;const $=S[k],N=C[k];$!==N&&k!=="value"&&i(p,k,N,$,D,g.children,v,L,Ge)}"value"in S&&i(p,"value",C.value,S.value)}},P=(p,g,C,S,v,L,D,k,$)=>{const N=g.el=p?p.el:o(""),U=g.anchor=p?p.anchor:o("");let{patchFlag:K,dynamicChildren:x,slotScopeIds:q}=g;q&&(k=k?k.concat(q):q),p==null?(s(N,C,S),s(U,C,S),_(g.children,C,U,v,L,D,k,$)):K>0&&K&64&&x&&p.dynamicChildren?(F(p.dynamicChildren,x,C,v,L,D,k),(g.key!=null||v&&g===v.subTree)&&mi(p,g,!0)):te(p,g,C,U,v,L,D,k,$)},V=(p,g,C,S,v,L,D,k,$)=>{g.slotScopeIds=k,p==null?g.shapeFlag&512?v.ctx.activate(g,C,S,D,$):B(g,C,S,v,L,D,$):ee(p,g,$)},B=(p,g,C,S,v,L,D)=>{const k=p.component=rc(p,S,v);if(xn(p)&&(k.ctx.renderer=Wt),lc(k),k.asyncDep){if(v&&v.registerDep(k,Z),!p.el){const $=k.subTree=ce(Te);y(null,$,g,C)}return}Z(k,p,g,C,v,L,D)},ee=(p,g,C)=>{const S=g.component=p.component;if(xu(p,g,C))if(S.asyncDep&&!S.asyncResolved){oe(S,g,C);return}else S.next=g,Lu(S.update),S.update();else g.el=p.el,S.vnode=g},Z=(p,g,C,S,v,L,D)=>{const k=()=>{if(p.isMounted){let{next:U,bu:K,u:x,parent:q,vnode:Y}=p,le=U,re;vt(p,!1),U?(U.el=Y.el,oe(p,U,D)):U=Y,K&&Gt(K),(re=U.props&&U.props.onVnodeBeforeUpdate)&&Ne(re,q,U,Y),vt(p,!0);const ae=hs(p),xe=p.subTree;p.subTree=ae,T(xe,ae,u(xe.el),Xn(xe),p,v,L),U.el=ae.el,le===null&&oi(p,ae.el),x&&me(x,v),(re=U.props&&U.props.onVnodeUpdated)&&me(()=>Ne(re,q,U,Y),v)}else{let U;const{el:K,props:x}=g,{bm:q,m:Y,parent:le}=p,re=kt(g);if(vt(p,!1),q&&Gt(q),!re&&(U=x&&x.onVnodeBeforeMount)&&Ne(U,le,g),vt(p,!0),K&&lr){const ae=()=>{p.subTree=hs(p),lr(K,p.subTree,p,v,null)};re?g.type.__asyncLoader().then(()=>!p.isUnmounted&&ae()):ae()}else{const ae=p.subTree=hs(p);T(null,ae,C,S,p,v,L),g.el=ae.el}if(Y&&me(Y,v),!re&&(U=x&&x.onVnodeMounted)){const ae=g;me(()=>Ne(U,le,ae),v)}(g.shapeFlag&256||le&&kt(le.vnode)&&le.vnode.shapeFlag&256)&&p.a&&me(p.a,v),p.isMounted=!0,g=C=S=null}},$=p.effect=new Kn(k,()=>Ks(N),p.scope),N=p.update=()=>$.run();N.id=p.uid,vt(p,!0),N()},oe=(p,g,C)=>{g.component=p;const S=p.vnode.props;p.vnode=g,p.next=null,Ca(p,g.props,S,C),Sa(p,g.children,C),an(),sl(),pn()},te=(p,g,C,S,v,L,D,k,$=!1)=>{const N=p&&p.children,U=p?p.shapeFlag:0,K=g.children,{patchFlag:x,shapeFlag:q}=g;if(x>0){if(x&128){Zn(N,K,C,S,v,L,D,k,$);return}else if(x&256){Ue(N,K,C,S,v,L,D,k,$);return}}q&8?(U&16&&Ge(N,v,L),K!==N&&a(C,K)):U&16?q&16?Zn(N,K,C,S,v,L,D,k,$):Ge(N,v,L,!0):(U&8&&a(C,""),q&16&&_(K,C,S,v,L,D,k,$))},Ue=(p,g,C,S,v,L,D,k,$)=>{p=p||Zt,g=g||Zt;const N=p.length,U=g.length,K=Math.min(N,U);let x;for(x=0;xU?Ge(p,v,L,!0,!1,K):_(g,C,S,v,L,D,k,$,K)},Zn=(p,g,C,S,v,L,D,k,$)=>{let N=0;const U=g.length;let K=p.length-1,x=U-1;for(;N<=K&&N<=x;){const q=p[N],Y=g[N]=$?pt(g[N]):Re(g[N]);if(Xe(q,Y))T(q,Y,C,null,v,L,D,k,$);else break;N++}for(;N<=K&&N<=x;){const q=p[K],Y=g[x]=$?pt(g[x]):Re(g[x]);if(Xe(q,Y))T(q,Y,C,null,v,L,D,k,$);else break;K--,x--}if(N>K){if(N<=x){const q=x+1,Y=qx)for(;N<=K;)Je(p[N],v,L,!0),N++;else{const q=N,Y=N,le=new Map;for(N=Y;N<=x;N++){const Ie=g[N]=$?pt(g[N]):Re(g[N]);Ie.key!=null&&le.set(Ie.key,N)}let re,ae=0;const xe=x-Y+1;let qt=!1,Wi=0;const dn=new Array(xe);for(N=0;N=xe){Je(Ie,v,L,!0);continue}let ze;if(Ie.key!=null)ze=le.get(Ie.key);else for(re=Y;re<=x;re++)if(dn[re-Y]===0&&Xe(Ie,g[re])){ze=re;break}ze===void 0?Je(Ie,v,L,!0):(dn[ze-Y]=N+1,ze>=Wi?Wi=ze:qt=!0,T(Ie,g[ze],C,null,v,L,D,k,$),ae++)}const qi=qt?Pa(dn):Zt;for(re=qi.length-1,N=xe-1;N>=0;N--){const Ie=Y+N,ze=g[Ie],Ji=Ie+1{const{el:L,type:D,transition:k,children:$,shapeFlag:N}=p;if(N&6){Tt(p.component.subTree,g,C,S);return}if(N&128){p.suspense.move(g,C,S);return}if(N&64){D.move(p,g,C,Wt);return}if(D===ye){s(L,g,C);for(let K=0;K<$.length;K++)Tt($[K],g,C,S);s(p.anchor,g,C);return}if(D===Ft){b(p,g,C);return}if(S!==2&&N&1&&k)if(S===0)k.beforeEnter(L),s(L,g,C),me(()=>k.enter(L),v);else{const{leave:K,delayLeave:x,afterLeave:q}=k,Y=()=>s(L,g,C),le=()=>{K(L,()=>{Y(),q&&q()})};x?x(L,Y,le):le()}else s(L,g,C)},Je=(p,g,C,S=!1,v=!1)=>{const{type:L,props:D,ref:k,children:$,dynamicChildren:N,shapeFlag:U,patchFlag:K,dirs:x}=p;if(k!=null&&Cs(k,null,C,p,!0),U&256){g.ctx.deactivate(p);return}const q=U&1&&x,Y=!kt(p);let le;if(Y&&(le=D&&D.onVnodeBeforeUnmount)&&Ne(le,g,p),U&6)Ef(p.component,C,S);else{if(U&128){p.suspense.unmount(C,S);return}q&&Ye(p,null,g,"beforeUnmount"),U&64?p.type.remove(p,g,C,v,Wt,S):N&&(L!==ye||K>0&&K&64)?Ge(N,g,C,!1,!0):(L===ye&&K&384||!v&&U&16)&&Ge($,g,C),S&&Ui(p)}(Y&&(le=D&&D.onVnodeUnmounted)||q)&&me(()=>{le&&Ne(le,g,p),q&&Ye(p,null,g,"unmounted")},C)},Ui=p=>{const{type:g,el:C,anchor:S,transition:v}=p;if(g===ye){bf(C,S);return}if(g===Ft){w(p);return}const L=()=>{r(C),v&&!v.persisted&&v.afterLeave&&v.afterLeave()};if(p.shapeFlag&1&&v&&!v.persisted){const{leave:D,delayLeave:k}=v,$=()=>D(C,L);k?k(p.el,L,$):$()}else L()},bf=(p,g)=>{let C;for(;p!==g;)C=d(p),r(p),p=C;r(g)},Ef=(p,g,C)=>{const{bum:S,scope:v,update:L,subTree:D,um:k}=p;S&&Gt(S),v.stop(),L&&(L.active=!1,Je(D,p,g,C)),k&&me(k,g),me(()=>{p.isUnmounted=!0},g),g&&g.pendingBranch&&!g.isUnmounted&&p.asyncDep&&!p.asyncResolved&&p.suspenseId===g.pendingId&&(g.deps--,g.deps===0&&g.resolve())},Ge=(p,g,C,S=!1,v=!1,L=0)=>{for(let D=L;Dp.shapeFlag&6?Xn(p.component.subTree):p.shapeFlag&128?p.suspense.next():d(p.anchor||p.el),xi=(p,g,C)=>{p==null?g._vnode&&Je(g._vnode,null,null,!0):T(g._vnode||null,p,g,null,null,null,C),sl(),bs(),g._vnode=p},Wt={p:T,um:Je,m:Tt,r:Ui,mt:B,mc:_,pc:te,pbc:F,n:Xn,o:e};let ir,lr;return t&&([ir,lr]=t(Wt)),{render:xi,hydrate:ir,createApp:Na(xi,ir)}}function vt({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function mi(e,t,n=!1){const s=e.children,r=t.children;if(j(s)&&j(r))for(let i=0;i>1,e[n[o]]0&&(t[s]=n[i-1]),n[i]=s)}}for(i=n.length,l=n[i-1];i-- >0;)n[i]=l,l=t[l];return n}const Aa=e=>e.__isTeleport,Tn=e=>e&&(e.disabled||e.disabled===""),hl=e=>typeof SVGElement<"u"&&e instanceof SVGElement,Or=(e,t)=>{const n=e&&e.to;return J(n)?t?t(n):null:n},Ia={__isTeleport:!0,process(e,t,n,s,r,i,l,o,c,f){const{mc:a,pc:u,pbc:d,o:{insert:m,querySelector:E,createText:T,createComment:I}}=f,y=Tn(t.props);let{shapeFlag:h,children:b,dynamicChildren:w}=t;if(e==null){const A=t.el=T(""),H=t.anchor=T("");m(A,n,s),m(H,n,s);const O=t.target=Or(t.props,E),_=t.targetAnchor=T("");O&&(m(_,O),l=l||hl(O));const R=(F,M)=>{h&16&&a(b,F,M,r,i,l,o,c)};y?R(n,H):O&&R(O,_)}else{t.el=e.el;const A=t.anchor=e.anchor,H=t.target=e.target,O=t.targetAnchor=e.targetAnchor,_=Tn(e.props),R=_?n:H,F=_?A:O;if(l=l||hl(H),w?(d(e.dynamicChildren,w,R,r,i,l,o),mi(e,t,!0)):c||u(e,t,R,F,r,i,l,o,!1),y)_||os(t,n,A,f,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const M=t.target=Or(t.props,E);M&&os(t,M,null,f,0)}else _&&os(t,H,O,f,1)}Qo(t)},remove(e,t,n,s,{um:r,o:{remove:i}},l){const{shapeFlag:o,children:c,anchor:f,targetAnchor:a,target:u,props:d}=e;if(u&&i(a),(l||!Tn(d))&&(i(f),o&16))for(let m=0;m0?Oe||Zt:null,Go(),Ht>0&&Oe&&Oe.push(e),e}function ka(e,t,n,s,r,i){return ec(_i(e,t,n,s,r,i,!0))}function yi(e,t,n,s,r){return ec(ce(e,t,n,s,r,!0))}function _t(e){return e?e.__v_isVNode===!0:!1}function Xe(e,t){return e.type===t.type&&e.key===t.key}function Fa(e){}const Xs="__vInternal",tc=({key:e})=>e??null,gs=({ref:e,ref_key:t,ref_for:n})=>e!=null?J(e)||ge(e)||W(e)?{i:_e,r:e,k:t,f:!!n}:e:null;function _i(e,t=null,n=null,s=0,r=null,i=e===ye?0:1,l=!1,o=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&tc(t),ref:t&&gs(t),scopeId:xs,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:_e};return o?(Ei(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=J(n)?8:16),Ht>0&&!l&&Oe&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&Oe.push(c),c}const ce=La;function La(e,t=null,n=null,s=0,r=null,i=!1){if((!e||e===Vo)&&(e=Te),_t(e)){const o=Qe(e,t,!0);return n&&Ei(o,n),Ht>0&&!i&&Oe&&(o.shapeFlag&6?Oe[Oe.indexOf(e)]=o:Oe.push(o)),o.patchFlag|=-2,o}if(Ua(e)&&(e=e.__vccOpts),t){t=nc(t);let{class:o,style:c}=t;o&&!J(o)&&(t.class=Vn(o)),ie(c)&&(Qr(c)&&!j(c)&&(c=G({},c)),t.style=Hn(c))}const l=J(e)?1:wo(e)?128:Aa(e)?64:ie(e)?4:W(e)?2:0;return _i(e,t,n,s,r,l,i,!0)}function nc(e){return e?Qr(e)||Xs in e?G({},e):e:null}function Qe(e,t,n=!1){const{props:s,ref:r,patchFlag:i,children:l}=e,o=t?sc(s||{},t):s;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:o,key:o&&tc(o),ref:t&&t.ref?n&&r?j(r)?r.concat(gs(t)):[r,gs(t)]:gs(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ye?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}}function bi(e=" ",t=0){return ce(Dt,null,e,t)}function Ba(e,t){const n=ce(Ft,null,e);return n.staticCount=t,n}function $a(e="",t=!1){return t?(Zs(),yi(Te,null,e)):ce(Te,null,e)}function Re(e){return e==null||typeof e=="boolean"?ce(Te):j(e)?ce(ye,null,e.slice()):typeof e=="object"?pt(e):ce(Dt,null,String(e))}function pt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Qe(e)}function Ei(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(j(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),Ei(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!(Xs in t)?t._ctx=_e:r===3&&_e&&(_e.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else W(t)?(t={default:t,_ctx:_e},n=32):(t=String(t),s&64?(n=16,t=[bi(t)]):n=8);e.children=t,e.shapeFlag|=n}function sc(...e){const t={};for(let n=0;nde||_e,bt=e=>{de=e,e.scope.on()},ht=()=>{de&&de.scope.off(),de=null};function ic(e){return e.vnode.shapeFlag&4}let rn=!1;function lc(e,t=!1){rn=t;const{props:n,children:s}=e.vnode,r=ic(e);Ea(e,n,r,t),va(e,s);const i=r?Va(e,t):void 0;return rn=!1,i}function Va(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=Gr(new Proxy(e.ctx,vr));const{setup:s}=n;if(s){const r=e.setupContext=s.length>1?fc(e):null;bt(e),an();const i=st(s,e,0,[e.props,r]);if(pn(),ht(),qr(i)){if(i.then(ht,ht),t)return i.then(l=>{Ar(e,l,t)}).catch(l=>{xt(l,e,0)});e.asyncDep=i}else Ar(e,i,t)}else cc(e,t)}function Ar(e,t,n){W(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ie(t)&&(e.setupState=ni(t)),cc(e,n)}let Ts,Ir;function oc(e){Ts=e,Ir=t=>{t.render._rc&&(t.withProxy=new Proxy(t.ctx,ha))}}const ja=()=>!Ts;function cc(e,t,n){const s=e.type;if(!e.render){if(!t&&Ts&&!s.render){const r=s.template||hi(e).template;if(r){const{isCustomElement:i,compilerOptions:l}=e.appContext.config,{delimiters:o,compilerOptions:c}=s,f=G(G({isCustomElement:i,delimiters:o},l),c);s.render=Ts(r,f)}}e.render=s.render||we,Ir&&Ir(e)}bt(e),an(),ga(e),pn(),ht()}function Ka(e){return new Proxy(e.attrs,{get(t,n){return Be(e,"get","$attrs"),t[n]}})}function fc(e){const t=s=>{e.exposed=s||{}};let n;return{get attrs(){return n||(n=Ka(e))},slots:e.slots,emit:e.emit,expose:t}}function Qs(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(ni(Gr(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Cn)return Cn[n](e)},has(t,n){return n in t||n in Cn}}))}function Mr(e,t=!0){return W(e)?e.displayName||e.name:e.name||t&&e.__name}function Ua(e){return W(e)&&"__vccOpts"in e}const uc=(e,t)=>Mu(e,t,rn);function xa(){return null}function Wa(){return null}function qa(e){}function Ja(e,t){return null}function za(){return ac().slots}function Ya(){return ac().attrs}function ac(){const e=Ct();return e.setupContext||(e.setupContext=fc(e))}function Za(e,t){const n=j(e)?e.reduce((s,r)=>(s[r]={},s),{}):e;for(const s in t){const r=n[s];r?j(r)||W(r)?n[s]={type:r,default:t[s]}:r.default=t[s]:r===null&&(n[s]={default:t[s]})}return n}function Xa(e,t){const n={};for(const s in e)t.includes(s)||Object.defineProperty(n,s,{enumerable:!0,get:()=>e[s]});return n}function Qa(e){const t=Ct();let n=e();return ht(),qr(n)&&(n=n.catch(s=>{throw bt(t),s})),[n,()=>bt(t)]}function pc(e,t,n){const s=arguments.length;return s===2?ie(t)&&!j(t)?_t(t)?ce(e,null,[t]):ce(e,t):ce(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&_t(n)&&(n=[n]),ce(e,t,n))}const dc=Symbol(""),hc=()=>bn(dc);function Ga(){}function ep(e,t,n,s){const r=n[s];if(r&&gc(r,e))return r;const i=t();return i.memo=e.slice(),n[s]=i}function gc(e,t){const n=e.memo;if(n.length!=t.length)return!1;for(let s=0;s0&&Oe&&Oe.push(e),!0}const mc="3.2.45",tp={createComponentInstance:rc,setupComponent:lc,renderComponentRoot:hs,setCurrentRenderingInstance:Mn,isVNode:_t,normalizeVNode:Re},np=tp,sp=null,rp=null,ip="http://www.w3.org/2000/svg",Ot=typeof document<"u"?document:null,gl=Ot&&Ot.createElement("template"),lp={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?Ot.createElementNS(ip,e):Ot.createElement(e,n?{is:n}:void 0);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>Ot.createTextNode(e),createComment:e=>Ot.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ot.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,i){const l=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===i||!(r=r.nextSibling)););else{gl.innerHTML=s?`${e}`:e;const o=gl.content;if(s){const c=o.firstChild;for(;c.firstChild;)o.appendChild(c.firstChild);o.removeChild(c)}t.insertBefore(o,n)}return[l?l.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}};function op(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 cp(e,t,n){const s=e.style,r=J(n);if(n&&!r){for(const i in n)Rr(s,i,n[i]);if(t&&!J(t))for(const i in t)n[i]==null&&Rr(s,i,"")}else{const i=s.display;r?t!==n&&(s.cssText=n):t&&e.removeAttribute("style"),"_vod"in e&&(s.display=i)}}const ml=/\s*!important$/;function Rr(e,t,n){if(j(n))n.forEach(s=>Rr(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=fp(e,t);ml.test(n)?e.setProperty(ke(s),n.replace(ml,""),"important"):e[s]=n}}const yl=["Webkit","Moz","ms"],pr={};function fp(e,t){const n=pr[t];if(n)return n;let s=be(t);if(s!=="filter"&&s in e)return pr[t]=s;s=Ut(s);for(let r=0;rdr||(gp.then(()=>dr=0),dr=Date.now());function yp(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;Fe(_p(s,n.value),t,5,[s])};return n.value=e,n.attached=mp(),n}function _p(e,t){if(j(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 El=/^on[a-z]/,bp=(e,t,n,s,r=!1,i,l,o,c)=>{t==="class"?op(e,s,r):t==="style"?cp(e,n,s):jt(t)?xr(t)||dp(e,t,n,s,l):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Ep(e,t,s,r))?ap(e,t,s,i,l,o,c):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),up(e,t,s,r))};function Ep(e,t,n,s){return s?!!(t==="innerHTML"||t==="textContent"||t in e&&El.test(t)&&W(n)):t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA"||El.test(t)&&J(n)?!1:t in e}function yc(e,t){const n=ai(e);class s extends Gs{constructor(i){super(n,i,t)}}return s.def=n,s}const Cp=e=>yc(e,Rc),Tp=typeof HTMLElement<"u"?HTMLElement:class{};class Gs extends Tp{constructor(t,n={},s){super(),this._def=t,this._props=n,this._instance=null,this._connected=!1,this._resolved=!1,this._numberProps=null,this.shadowRoot&&s?s(this._createVNode(),this.shadowRoot):(this.attachShadow({mode:"open"}),this._def.__asyncLoader||this._resolveProps(this._def))}connectedCallback(){this._connected=!0,this._instance||(this._resolved?this._update():this._resolveDef())}disconnectedCallback(){this._connected=!1,ri(()=>{this._connected||(Lr(null,this.shadowRoot),this._instance=null)})}_resolveDef(){this._resolved=!0;for(let s=0;s{for(const r of s)this._setAttr(r.attributeName)}).observe(this,{attributes:!0});const t=(s,r=!1)=>{const{props:i,styles:l}=s;let o;if(i&&!j(i))for(const c in i){const f=i[c];(f===Number||f&&f.type===Number)&&(c in this._props&&(this._props[c]=it(this._props[c])),(o||(o=Object.create(null)))[be(c)]=!0)}this._numberProps=o,r&&this._resolveProps(s),this._applyStyles(l),this._update()},n=this._def.__asyncLoader;n?n().then(s=>t(s,!0)):t(this._def)}_resolveProps(t){const{props:n}=t,s=j(n)?n:Object.keys(n||{});for(const r of Object.keys(this))r[0]!=="_"&&s.includes(r)&&this._setProp(r,this[r],!0,!1);for(const r of s.map(be))Object.defineProperty(this,r,{get(){return this._getProp(r)},set(i){this._setProp(r,i)}})}_setAttr(t){let n=this.getAttribute(t);const s=be(t);this._numberProps&&this._numberProps[s]&&(n=it(n)),this._setProp(s,n,!1)}_getProp(t){return this._props[t]}_setProp(t,n,s=!0,r=!0){n!==this._props[t]&&(this._props[t]=n,r&&this._instance&&this._update(),s&&(n===!0?this.setAttribute(ke(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(ke(t),n+""):n||this.removeAttribute(ke(t))))}_update(){Lr(this._createVNode(),this.shadowRoot)}_createVNode(){const t=ce(this._def,G({},this._props));return this._instance||(t.ce=n=>{this._instance=n,n.isCE=!0;const s=(i,l)=>{this.dispatchEvent(new CustomEvent(i,{detail:l}))};n.emit=(i,...l)=>{s(i,l),ke(i)!==i&&s(ke(i),l)};let r=this;for(;r=r&&(r.parentNode||r.host);)if(r instanceof Gs){n.parent=r._instance,n.provides=r._instance.provides;break}}),t}_applyStyles(t){t&&t.forEach(n=>{const s=document.createElement("style");s.textContent=n,this.shadowRoot.appendChild(s)})}}function vp(e="$style"){{const t=Ct();if(!t)return se;const n=t.type.__cssModules;if(!n)return se;const s=n[e];return s||se}}function Sp(e){const t=Ct();if(!t)return;const n=t.ut=(r=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(i=>Fr(i,r))},s=()=>{const r=e(t.proxy);kr(t.subTree,r),n(r)};Po(s),Wn(()=>{const r=new MutationObserver(s);r.observe(t.subTree.el.parentNode,{childList:!0}),Ys(()=>r.disconnect())})}function kr(e,t){if(e.shapeFlag&128){const n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{kr(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)Fr(e.el,t);else if(e.type===ye)e.children.forEach(n=>kr(n,t));else if(e.type===Ft){let{el:n,anchor:s}=e;for(;n&&(Fr(n,t),n!==s);)n=n.nextSibling}}function Fr(e,t){if(e.nodeType===1){const n=e.style;for(const s in t)n.setProperty(`--${s}`,t[s])}}const ut="transition",hn="animation",Ci=(e,{slots:t})=>pc(ui,bc(e),t);Ci.displayName="Transition";const _c={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},wp=Ci.props=G({},ui.props,_c),St=(e,t=[])=>{j(e)?e.forEach(n=>n(...t)):e&&e(...t)},Cl=e=>e?j(e)?e.some(t=>t.length>1):e.length>1:!1;function bc(e){const t={};for(const P in e)P in _c||(t[P]=e[P]);if(e.css===!1)return t;const{name:n="v",type:s,duration:r,enterFromClass:i=`${n}-enter-from`,enterActiveClass:l=`${n}-enter-active`,enterToClass:o=`${n}-enter-to`,appearFromClass:c=i,appearActiveClass:f=l,appearToClass:a=o,leaveFromClass:u=`${n}-leave-from`,leaveActiveClass:d=`${n}-leave-active`,leaveToClass:m=`${n}-leave-to`}=e,E=Np(r),T=E&&E[0],I=E&&E[1],{onBeforeEnter:y,onEnter:h,onEnterCancelled:b,onLeave:w,onLeaveCancelled:A,onBeforeAppear:H=y,onAppear:O=h,onAppearCancelled:_=b}=t,R=(P,V,B)=>{at(P,V?a:o),at(P,V?f:l),B&&B()},F=(P,V)=>{P._isLeaving=!1,at(P,u),at(P,m),at(P,d),V&&V()},M=P=>(V,B)=>{const ee=P?O:h,Z=()=>R(V,P,B);St(ee,[V,Z]),Tl(()=>{at(V,P?c:i),et(V,P?a:o),Cl(ee)||vl(V,s,T,Z)})};return G(t,{onBeforeEnter(P){St(y,[P]),et(P,i),et(P,l)},onBeforeAppear(P){St(H,[P]),et(P,c),et(P,f)},onEnter:M(!1),onAppear:M(!0),onLeave(P,V){P._isLeaving=!0;const B=()=>F(P,V);et(P,u),Cc(),et(P,d),Tl(()=>{!P._isLeaving||(at(P,u),et(P,m),Cl(w)||vl(P,s,I,B))}),St(w,[P,B])},onEnterCancelled(P){R(P,!1),St(b,[P])},onAppearCancelled(P){R(P,!0),St(_,[P])},onLeaveCancelled(P){F(P),St(A,[P])}})}function Np(e){if(e==null)return null;if(ie(e))return[hr(e.enter),hr(e.leave)];{const t=hr(e);return[t,t]}}function hr(e){return it(e)}function et(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e._vtc||(e._vtc=new Set)).add(t)}function at(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 Tl(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Op=0;function vl(e,t,n,s){const r=e._endId=++Op,i=()=>{r===e._endId&&s()};if(n)return setTimeout(i,n);const{type:l,timeout:o,propCount:c}=Ec(e,t);if(!l)return s();const f=l+"end";let a=0;const u=()=>{e.removeEventListener(f,d),i()},d=m=>{m.target===e&&++a>=c&&u()};setTimeout(()=>{a(n[E]||"").split(", "),r=s(`${ut}Delay`),i=s(`${ut}Duration`),l=Sl(r,i),o=s(`${hn}Delay`),c=s(`${hn}Duration`),f=Sl(o,c);let a=null,u=0,d=0;t===ut?l>0&&(a=ut,u=l,d=i.length):t===hn?f>0&&(a=hn,u=f,d=c.length):(u=Math.max(l,f),a=u>0?l>f?ut:hn:null,d=a?a===ut?i.length:c.length:0);const m=a===ut&&/\b(transform|all)(,|$)/.test(s(`${ut}Property`).toString());return{type:a,timeout:u,propCount:d,hasTransform:m}}function Sl(e,t){for(;e.lengthwl(n)+wl(e[s])))}function wl(e){return Number(e.slice(0,-1).replace(",","."))*1e3}function Cc(){return document.body.offsetHeight}const Tc=new WeakMap,vc=new WeakMap,Pp={name:"TransitionGroup",props:G({},wp,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=Ct(),s=fi();let r,i;return Js(()=>{if(!r.length)return;const l=e.moveClass||`${e.name||"v"}-move`;if(!kp(r[0].el,n.vnode.el,l))return;r.forEach(Ip),r.forEach(Mp);const o=r.filter(Rp);Cc(),o.forEach(c=>{const f=c.el,a=f.style;et(f,l),a.transform=a.webkitTransform=a.transitionDuration="";const u=f._moveCb=d=>{d&&d.target!==f||(!d||/transform$/.test(d.propertyName))&&(f.removeEventListener("transitionend",u),f._moveCb=null,at(f,l))};f.addEventListener("transitionend",u)})}),()=>{const l=Q(e),o=bc(l);let c=l.tag||ye;r=i,i=t.default?Ws(t.default()):[];for(let f=0;f{l.split(/\s+/).forEach(o=>o&&s.classList.remove(o))}),n.split(/\s+/).forEach(l=>l&&s.classList.add(l)),s.style.display="none";const r=t.nodeType===1?t:t.parentNode;r.appendChild(s);const{hasTransform:i}=Ec(s);return r.removeChild(s),i}const Et=e=>{const t=e.props["onUpdate:modelValue"]||!1;return j(t)?n=>Gt(t,n):t};function Fp(e){e.target.composing=!0}function Nl(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const vs={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e._assign=Et(r);const i=s||r.props&&r.props.type==="number";nt(e,t?"change":"input",l=>{if(l.target.composing)return;let o=e.value;n&&(o=o.trim()),i&&(o=it(o)),e._assign(o)}),n&&nt(e,"change",()=>{e.value=e.value.trim()}),t||(nt(e,"compositionstart",Fp),nt(e,"compositionend",Nl),nt(e,"change",Nl))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,modifiers:{lazy:n,trim:s,number:r}},i){if(e._assign=Et(i),e.composing||document.activeElement===e&&e.type!=="range"&&(n||s&&e.value.trim()===t||(r||e.type==="number")&&it(e.value)===t))return;const l=t??"";e.value!==l&&(e.value=l)}},Ti={deep:!0,created(e,t,n){e._assign=Et(n),nt(e,"change",()=>{const s=e._modelValue,r=ln(e),i=e.checked,l=e._assign;if(j(s)){const o=Fs(s,r),c=o!==-1;if(i&&!c)l(s.concat(r));else if(!i&&c){const f=[...s];f.splice(o,1),l(f)}}else if(Kt(s)){const o=new Set(s);i?o.add(r):o.delete(r),l(o)}else l(wc(e,i))})},mounted:Ol,beforeUpdate(e,t,n){e._assign=Et(n),Ol(e,t,n)}};function Ol(e,{value:t,oldValue:n},s){e._modelValue=t,j(t)?e.checked=Fs(t,s.props.value)>-1:Kt(t)?e.checked=t.has(s.props.value):t!==n&&(e.checked=gt(t,wc(e,!0)))}const vi={created(e,{value:t},n){e.checked=gt(t,n.props.value),e._assign=Et(n),nt(e,"change",()=>{e._assign(ln(e))})},beforeUpdate(e,{value:t,oldValue:n},s){e._assign=Et(s),t!==n&&(e.checked=gt(t,s.props.value))}},Sc={deep:!0,created(e,{value:t,modifiers:{number:n}},s){const r=Kt(t);nt(e,"change",()=>{const i=Array.prototype.filter.call(e.options,l=>l.selected).map(l=>n?it(ln(l)):ln(l));e._assign(e.multiple?r?new Set(i):i:i[0])}),e._assign=Et(s)},mounted(e,{value:t}){Pl(e,t)},beforeUpdate(e,t,n){e._assign=Et(n)},updated(e,{value:t}){Pl(e,t)}};function Pl(e,t){const n=e.multiple;if(!(n&&!j(t)&&!Kt(t))){for(let s=0,r=e.options.length;s-1:i.selected=t.has(l);else if(gt(ln(i),t)){e.selectedIndex!==s&&(e.selectedIndex=s);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function ln(e){return"_value"in e?e._value:e.value}function wc(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const Nc={created(e,t,n){cs(e,t,n,null,"created")},mounted(e,t,n){cs(e,t,n,null,"mounted")},beforeUpdate(e,t,n,s){cs(e,t,n,s,"beforeUpdate")},updated(e,t,n,s){cs(e,t,n,s,"updated")}};function Oc(e,t){switch(e){case"SELECT":return Sc;case"TEXTAREA":return vs;default:switch(t){case"checkbox":return Ti;case"radio":return vi;default:return vs}}}function cs(e,t,n,s,r){const l=Oc(e.tagName,n.props&&n.props.type)[r];l&&l(e,t,n,s)}function Lp(){vs.getSSRProps=({value:e})=>({value:e}),vi.getSSRProps=({value:e},t)=>{if(t.props&>(t.props.value,e))return{checked:!0}},Ti.getSSRProps=({value:e},t)=>{if(j(e)){if(t.props&&Fs(e,t.props.value)>-1)return{checked:!0}}else if(Kt(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},Nc.getSSRProps=(e,t)=>{if(typeof t.type!="string")return;const n=Oc(t.type.toUpperCase(),t.props&&t.props.type);if(n.getSSRProps)return n.getSSRProps(e,t)}}const Bp=["ctrl","shift","alt","meta"],$p={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)=>Bp.some(n=>e[`${n}Key`]&&!t.includes(n))},Dp=(e,t)=>(n,...s)=>{for(let r=0;rn=>{if(!("key"in n))return;const s=ke(n.key);if(t.some(r=>r===s||Hp[r]===s))return e(n)},Pc={beforeMount(e,{value:t},{transition:n}){e._vod=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):gn(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:s}){!t!=!n&&(s?t?(s.beforeEnter(e),gn(e,!0),s.enter(e)):s.leave(e,()=>{gn(e,!1)}):gn(e,t))},beforeUnmount(e,{value:t}){gn(e,t)}};function gn(e,t){e.style.display=t?e._vod:"none"}function jp(){Pc.getSSRProps=({value:e})=>{if(!e)return{style:{display:"none"}}}}const Ac=G({patchProp:bp},lp);let Sn,Al=!1;function Ic(){return Sn||(Sn=Yo(Ac))}function Mc(){return Sn=Al?Sn:Zo(Ac),Al=!0,Sn}const Lr=(...e)=>{Ic().render(...e)},Rc=(...e)=>{Mc().hydrate(...e)},Kp=(...e)=>{const t=Ic().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=kc(s);if(!r)return;const i=t._component;!W(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.innerHTML="";const l=n(r,!1,r instanceof SVGElement);return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),l},t},Up=(...e)=>{const t=Mc().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=kc(s);if(r)return n(r,!0,r instanceof SVGElement)},t};function kc(e){return J(e)?document.querySelector(e):e}let Il=!1;const xp=()=>{Il||(Il=!0,Lp(),jp())},Wp=Object.freeze(Object.defineProperty({__proto__:null,Transition:Ci,TransitionGroup:Ap,VueElement:Gs,createApp:Kp,createSSRApp:Up,defineCustomElement:yc,defineSSRCustomElement:Cp,hydrate:Rc,initDirectivesForSSR:xp,render:Lr,useCssModule:vp,useCssVars:Sp,vModelCheckbox:Ti,vModelDynamic:Nc,vModelRadio:vi,vModelSelect:Sc,vModelText:vs,vShow:Pc,withKeys:Vp,withModifiers:Dp,EffectScope:zr,ReactiveEffect:Kn,customRef:Ou,effect:Yf,effectScope:xf,getCurrentScope:Wf,isProxy:Qr,isReactive:Rt,isReadonly:Bt,isRef:ge,isShallow:On,markRaw:Gr,onScopeDispose:qf,proxyRefs:ni,reactive:Hs,readonly:Xr,ref:ds,shallowReactive:go,shallowReadonly:Cu,shallowRef:Tu,stop:Zf,toRaw:Q,toRef:_o,toRefs:Pu,triggerRef:Su,unref:yo,camelize:be,capitalize:Ut,normalizeClass:Vn,normalizeProps:Nf,normalizeStyle:Hn,toDisplayString:Bf,toHandlerKey:Qt,BaseTransition:ui,Comment:Te,Fragment:ye,KeepAlive:sa,Static:Ft,Suspense:qu,Teleport:Ra,Text:Dt,callWithAsyncErrorHandling:Fe,callWithErrorHandling:st,cloneVNode:Qe,compatUtils:rp,computed:uc,createBlock:yi,createCommentVNode:$a,createElementBlock:ka,createElementVNode:_i,createHydrationRenderer:Zo,createPropsRestProxy:Xa,createRenderer:Yo,createSlots:aa,createStaticVNode:Ba,createTextVNode:bi,createVNode:ce,defineAsyncComponent:ta,defineComponent:ai,defineEmits:Wa,defineExpose:qa,defineProps:xa,get devtools(){return zt},getCurrentInstance:Ct,getTransitionRawChildren:Ws,guardReactiveProps:nc,h:pc,handleError:xt,initCustomFormatter:Ga,inject:bn,isMemoSame:gc,isRuntimeOnly:ja,isVNode:_t,mergeDefaults:Za,mergeProps:sc,nextTick:ri,onActivated:Mo,onBeforeMount:Fo,onBeforeUnmount:zs,onBeforeUpdate:Lo,onDeactivated:Ro,onErrorCaptured:Ho,onMounted:Wn,onRenderTracked:Do,onRenderTriggered:$o,onServerPrefetch:Bo,onUnmounted:Ys,onUpdated:Js,openBlock:Zs,popScopeId:Hu,provide:Oo,pushScopeId:Du,queuePostFlushCb:ii,registerRuntimeCompiler:oc,renderList:ua,renderSlot:pa,resolveComponent:oa,resolveDirective:fa,resolveDynamicComponent:ca,resolveFilter:sp,resolveTransitionHooks:sn,setBlockTracking:Pr,setDevtoolsHook:vo,setTransitionHooks:$t,ssrContextKey:dc,ssrUtils:np,toHandlers:da,transformVNodeArgs:Fa,useAttrs:Ya,useSSRContext:hc,useSlots:za,useTransitionState:fi,version:mc,warn:Ru,watch:En,watchEffect:Xu,watchPostEffect:Po,watchSyncEffect:Qu,withAsyncContext:Qa,withCtx:li,withDefaults:Ja,withDirectives:ia,withMemo:ep,withScopeId:Vu},Symbol.toStringTag,{value:"Module"}));function Si(e){throw e}function Fc(e){}function fe(e,t,n,s){const r=e,i=new SyntaxError(String(r));return i.code=e,i.loc=t,i}const kn=Symbol(""),wn=Symbol(""),wi=Symbol(""),Ss=Symbol(""),Lc=Symbol(""),Vt=Symbol(""),Bc=Symbol(""),$c=Symbol(""),Ni=Symbol(""),Oi=Symbol(""),qn=Symbol(""),Pi=Symbol(""),Dc=Symbol(""),Ai=Symbol(""),ws=Symbol(""),Ii=Symbol(""),Mi=Symbol(""),Ri=Symbol(""),ki=Symbol(""),Hc=Symbol(""),Vc=Symbol(""),er=Symbol(""),Ns=Symbol(""),Fi=Symbol(""),Li=Symbol(""),Fn=Symbol(""),Jn=Symbol(""),Bi=Symbol(""),Br=Symbol(""),qp=Symbol(""),$r=Symbol(""),Os=Symbol(""),Jp=Symbol(""),zp=Symbol(""),$i=Symbol(""),Yp=Symbol(""),Zp=Symbol(""),Di=Symbol(""),jc=Symbol(""),on={[kn]:"Fragment",[wn]:"Teleport",[wi]:"Suspense",[Ss]:"KeepAlive",[Lc]:"BaseTransition",[Vt]:"openBlock",[Bc]:"createBlock",[$c]:"createElementBlock",[Ni]:"createVNode",[Oi]:"createElementVNode",[qn]:"createCommentVNode",[Pi]:"createTextVNode",[Dc]:"createStaticVNode",[Ai]:"resolveComponent",[ws]:"resolveDynamicComponent",[Ii]:"resolveDirective",[Mi]:"resolveFilter",[Ri]:"withDirectives",[ki]:"renderList",[Hc]:"renderSlot",[Vc]:"createSlots",[er]:"toDisplayString",[Ns]:"mergeProps",[Fi]:"normalizeClass",[Li]:"normalizeStyle",[Fn]:"normalizeProps",[Jn]:"guardReactiveProps",[Bi]:"toHandlers",[Br]:"camelize",[qp]:"capitalize",[$r]:"toHandlerKey",[Os]:"setBlockTracking",[Jp]:"pushScopeId",[zp]:"popScopeId",[$i]:"withCtx",[Yp]:"unref",[Zp]:"isRef",[Di]:"withMemo",[jc]:"isMemoSame"};function Xp(e){Object.getOwnPropertySymbols(e).forEach(t=>{on[t]=e[t]})}const $e={source:"",start:{line:1,column:1,offset:0},end:{line:1,column:1,offset:0}};function Qp(e,t=$e){return{type:0,children:e,helpers:[],components:[],directives:[],hoists:[],imports:[],cached:0,temps:0,codegenNode:void 0,loc:t}}function Ln(e,t,n,s,r,i,l,o=!1,c=!1,f=!1,a=$e){return e&&(o?(e.helper(Vt),e.helper(un(e.inSSR,f))):e.helper(fn(e.inSSR,f)),l&&e.helper(Ri)),{type:13,tag:t,props:n,children:s,patchFlag:r,dynamicProps:i,directives:l,isBlock:o,disableTracking:c,isComponent:f,loc:a}}function zn(e,t=$e){return{type:17,loc:t,elements:e}}function Ve(e,t=$e){return{type:15,loc:t,properties:e}}function ue(e,t){return{type:16,loc:$e,key:J(e)?z(e,!0):e,value:t}}function z(e,t=!1,n=$e,s=0){return{type:4,loc:n,content:e,isStatic:t,constType:t?3:s}}function qe(e,t=$e){return{type:8,loc:t,children:e}}function pe(e,t=[],n=$e){return{type:14,loc:n,callee:e,arguments:t}}function cn(e,t=void 0,n=!1,s=!1,r=$e){return{type:18,params:e,returns:t,newline:n,isSlot:s,loc:r}}function Dr(e,t,n,s=!0){return{type:19,test:e,consequent:t,alternate:n,newline:s,loc:$e}}function Gp(e,t,n=!1){return{type:20,index:e,value:t,isVNode:n,loc:$e}}function ed(e){return{type:21,body:e,loc:$e}}const Pe=e=>e.type===4&&e.isStatic,Yt=(e,t)=>e===t||e===ke(t);function Kc(e){if(Yt(e,"Teleport"))return wn;if(Yt(e,"Suspense"))return wi;if(Yt(e,"KeepAlive"))return Ss;if(Yt(e,"BaseTransition"))return Lc}const td=/^\d|[^\$\w]/,Hi=e=>!td.test(e),nd=/[A-Za-z_$\xA0-\uFFFF]/,sd=/[\.\?\w$\xA0-\uFFFF]/,rd=/\s+[.[]\s*|\s*[.[]\s+/g,id=e=>{e=e.trim().replace(rd,l=>l.trim());let t=0,n=[],s=0,r=0,i=null;for(let l=0;lt.type===7&&t.name==="bind"&&(!t.arg||t.arg.type!==4||!t.arg.isStatic))}function gr(e){return e.type===5||e.type===2}function od(e){return e.type===7&&e.name==="slot"}function Is(e){return e.type===1&&e.tagType===3}function Ms(e){return e.type===1&&e.tagType===2}function fn(e,t){return e||t?Ni:Oi}function un(e,t){return e||t?Bc:$c}const cd=new Set([Fn,Jn]);function Wc(e,t=[]){if(e&&!J(e)&&e.type===14){const n=e.callee;if(!J(n)&&cd.has(n))return Wc(e.arguments[0],t.concat(e))}return[e,t]}function Rs(e,t,n){let s,r=e.type===13?e.props:e.arguments[2],i=[],l;if(r&&!J(r)&&r.type===14){const o=Wc(r);r=o[0],i=o[1],l=i[i.length-1]}if(r==null||J(r))s=Ve([t]);else if(r.type===14){const o=r.arguments[0];!J(o)&&o.type===15?Ml(t,o)||o.properties.unshift(t):r.callee===Bi?s=pe(n.helper(Ns),[Ve([t]),r]):r.arguments.unshift(Ve([t])),!s&&(s=r)}else r.type===15?(Ml(t,r)||r.properties.unshift(t),s=r):(s=pe(n.helper(Ns),[Ve([t]),r]),l&&l.callee===Jn&&(l=i[i.length-2]));e.type===13?l?l.arguments[0]=s:e.props=s:l?l.arguments[0]=s:e.arguments[2]=s}function Ml(e,t){let n=!1;if(e.key.type===4){const s=e.key.content;n=t.properties.some(r=>r.key.type===4&&r.key.content===s)}return n}function Bn(e,t){return`_${t}_${e.replace(/[^\w]/g,(n,s)=>n==="-"?"_":e.charCodeAt(s).toString())}`}function fd(e){return e.type===14&&e.callee===Di?e.arguments[1].returns:e}function Vi(e,{helper:t,removeHelper:n,inSSR:s}){e.isBlock||(e.isBlock=!0,n(fn(s,e.isComponent)),t(Vt),t(un(s,e.isComponent)))}function Rl(e,t){const n=t.options?t.options.compatConfig:t.compatConfig,s=n&&n[e];return e==="MODE"?s||3:s}function Lt(e,t){const n=Rl("MODE",t),s=Rl(e,t);return n===3?s===!0:s!==!1}function $n(e,t,n,...s){return Lt(e,t)}const ud=/&(gt|lt|amp|apos|quot);/g,ad={gt:">",lt:"<",amp:"&",apos:"'",quot:'"'},kl={delimiters:["{{","}}"],getNamespace:()=>0,getTextMode:()=>0,isVoidTag:ps,isPreTag:ps,isCustomElement:ps,decodeEntities:e=>e.replace(ud,(t,n)=>ad[n]),onError:Si,onWarn:Fc,comments:!1};function pd(e,t={}){const n=dd(e,t),s=Le(n);return Qp(ji(n,0,[]),Ke(n,s))}function dd(e,t){const n=G({},kl);let s;for(s in t)n[s]=t[s]===void 0?kl[s]:t[s];return{options:n,column:1,line:1,offset:0,originalSource:e,source:e,inPre:!1,inVPre:!1,onWarn:n.onWarn}}function ji(e,t,n){const s=nr(n),r=s?s.ns:0,i=[];for(;!Td(e,t,n);){const o=e.source;let c;if(t===0||t===1){if(!e.inVPre&&Ce(o,e.options.delimiters[0]))c=Ed(e,t);else if(t===0&&o[0]==="<")if(o.length===1)ne(e,5,1);else if(o[1]==="!")Ce(o,"=0;){const f=l[o];f&&f.type===9&&(c+=f.branches.length)}return()=>{if(i)s.codegenNode=Dl(r,c,n);else{const f=Jd(s.codegenNode);f.alternate=Dl(r,c+s.branches.length-1,n)}}}));function qd(e,t,n,s){if(t.name!=="else"&&(!t.exp||!t.exp.content.trim())){const r=t.exp?t.exp.loc:e.loc;n.onError(fe(28,t.loc)),t.exp=z("true",!1,r)}if(t.name==="if"){const r=$l(e,t),i={type:9,loc:e.loc,branches:[r]};if(n.replaceNode(i),s)return s(i,r,!0)}else{const r=n.parent.children;let i=r.indexOf(e);for(;i-->=-1;){const l=r[i];if(l&&l.type===3){n.removeNode(l);continue}if(l&&l.type===2&&!l.content.trim().length){n.removeNode(l);continue}if(l&&l.type===9){t.name==="else-if"&&l.branches[l.branches.length-1].condition===void 0&&n.onError(fe(30,e.loc)),n.removeNode();const o=$l(e,t);l.branches.push(o);const c=s&&s(l,o,!1);sr(o,n),c&&c(),n.currentNode=null}else n.onError(fe(30,e.loc));break}}}function $l(e,t){const n=e.tagType===3;return{type:10,loc:e.loc,condition:t.name==="else"?void 0:t.exp,children:n&&!He(e,"for")?e.children:[e],userKey:tr(e,"key"),isTemplateIf:n}}function Dl(e,t,n){return e.condition?Dr(e.condition,Hl(e,t,n),pe(n.helper(qn),['""',"true"])):Hl(e,t,n)}function Hl(e,t,n){const{helper:s}=n,r=ue("key",z(`${t}`,!1,$e,2)),{children:i}=e,l=i[0];if(i.length!==1||l.type!==1)if(i.length===1&&l.type===11){const c=l.codegenNode;return Rs(c,r,n),c}else{let c=64;return Ln(n,s(kn),Ve([r]),i,c+"",void 0,void 0,!0,!1,!1,e.loc)}else{const c=l.codegenNode,f=fd(c);return f.type===13&&Vi(f,n),Rs(f,r,n),c}}function Jd(e){for(;;)if(e.type===19)if(e.alternate.type===19)e=e.alternate;else return e;else e.type===20&&(e=e.value)}const zd=Qc("for",(e,t,n)=>{const{helper:s,removeHelper:r}=n;return Yd(e,t,n,i=>{const l=pe(s(ki),[i.source]),o=Is(e),c=He(e,"memo"),f=tr(e,"key"),a=f&&(f.type===6?z(f.value.content,!0):f.exp),u=f?ue("key",a):null,d=i.source.type===4&&i.source.constType>0,m=d?64:f?128:256;return i.codegenNode=Ln(n,s(kn),void 0,l,m+"",void 0,void 0,!0,!d,!1,e.loc),()=>{let E;const{children:T}=i,I=T.length!==1||T[0].type!==1,y=Ms(e)?e:o&&e.children.length===1&&Ms(e.children[0])?e.children[0]:null;if(y?(E=y.codegenNode,o&&u&&Rs(E,u,n)):I?E=Ln(n,s(kn),u?Ve([u]):void 0,e.children,64+"",void 0,void 0,!0,void 0,!1):(E=T[0].codegenNode,o&&u&&Rs(E,u,n),E.isBlock!==!d&&(E.isBlock?(r(Vt),r(un(n.inSSR,E.isComponent))):r(fn(n.inSSR,E.isComponent))),E.isBlock=!d,E.isBlock?(s(Vt),s(un(n.inSSR,E.isComponent))):s(fn(n.inSSR,E.isComponent))),c){const h=cn(jr(i.parseResult,[z("_cached")]));h.body=ed([qe(["const _memo = (",c.exp,")"]),qe(["if (_cached",...a?[" && _cached.key === ",a]:[],` && ${n.helperString(jc)}(_cached, _memo)) return _cached`]),qe(["const _item = ",E]),z("_item.memo = _memo"),z("return _item")]),l.arguments.push(h,z("_cache"),z(String(n.cached++)))}else l.arguments.push(cn(jr(i.parseResult),E,!0))}})});function Yd(e,t,n,s){if(!t.exp){n.onError(fe(31,t.loc));return}const r=nf(t.exp);if(!r){n.onError(fe(32,t.loc));return}const{addIdentifiers:i,removeIdentifiers:l,scopes:o}=n,{source:c,value:f,key:a,index:u}=r,d={type:11,loc:t.loc,source:c,valueAlias:f,keyAlias:a,objectIndexAlias:u,parseResult:r,children:Is(e)?e.children:[e]};n.replaceNode(d),o.vFor++;const m=s&&s(d);return()=>{o.vFor--,m&&m()}}const Zd=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Vl=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,Xd=/^\(|\)$/g;function nf(e,t){const n=e.loc,s=e.content,r=s.match(Zd);if(!r)return;const[,i,l]=r,o={source:fs(n,l.trim(),s.indexOf(l,i.length)),value:void 0,key:void 0,index:void 0};let c=i.trim().replace(Xd,"").trim();const f=i.indexOf(c),a=c.match(Vl);if(a){c=c.replace(Vl,"").trim();const u=a[1].trim();let d;if(u&&(d=s.indexOf(u,f+c.length),o.key=fs(n,u,d)),a[2]){const m=a[2].trim();m&&(o.index=fs(n,m,s.indexOf(m,o.key?d+u.length:f+c.length)))}}return c&&(o.value=fs(n,c,f)),o}function fs(e,t,n){return z(t,!1,xc(e,n,t.length))}function jr({value:e,key:t,index:n},s=[]){return Qd([e,t,n,...s])}function Qd(e){let t=e.length;for(;t--&&!e[t];);return e.slice(0,t+1).map((n,s)=>n||z("_".repeat(s+1),!1))}const jl=z("undefined",!1),Gd=(e,t)=>{if(e.type===1&&(e.tagType===1||e.tagType===3)){const n=He(e,"slot");if(n)return n.exp,t.scopes.vSlot++,()=>{t.scopes.vSlot--}}},eh=(e,t,n)=>cn(e,t,!1,!0,t.length?t[0].loc:n);function th(e,t,n=eh){t.helper($i);const{children:s,loc:r}=e,i=[],l=[];let o=t.scopes.vSlot>0||t.scopes.vFor>0;const c=He(e,"slot",!0);if(c){const{arg:I,exp:y}=c;I&&!Pe(I)&&(o=!0),i.push(ue(I||z("default",!0),n(y,s,r)))}let f=!1,a=!1;const u=[],d=new Set;let m=0;for(let I=0;I{const b=n(y,h,r);return t.compatConfig&&(b.isNonScopedSlot=!0),ue("default",b)};f?u.length&&u.some(y=>sf(y))&&(a?t.onError(fe(39,u[0].loc)):i.push(I(void 0,u))):i.push(I(void 0,s))}const E=o?2:ys(e.children)?3:1;let T=Ve(i.concat(ue("_",z(E+"",!1))),r);return l.length&&(T=pe(t.helper(Vc),[T,zn(l)])),{slots:T,hasDynamicSlots:o}}function us(e,t,n){const s=[ue("name",e),ue("fn",t)];return n!=null&&s.push(ue("key",z(String(n),!0))),Ve(s)}function ys(e){for(let t=0;tfunction(){if(e=t.currentNode,!(e.type===1&&(e.tagType===0||e.tagType===1)))return;const{tag:s,props:r}=e,i=e.tagType===1;let l=i?sh(e,t):`"${s}"`;const o=ie(l)&&l.callee===ws;let c,f,a,u=0,d,m,E,T=o||l===wn||l===wi||!i&&(s==="svg"||s==="foreignObject");if(r.length>0){const I=lf(e,t,void 0,i,o);c=I.props,u=I.patchFlag,m=I.dynamicPropNames;const y=I.directives;E=y&&y.length?zn(y.map(h=>ih(h,t))):void 0,I.shouldUseBlock&&(T=!0)}if(e.children.length>0)if(l===Ss&&(T=!0,u|=1024),i&&l!==wn&&l!==Ss){const{slots:y,hasDynamicSlots:h}=th(e,t);f=y,h&&(u|=1024)}else if(e.children.length===1&&l!==wn){const y=e.children[0],h=y.type,b=h===5||h===8;b&&je(y,t)===0&&(u|=1),b||h===2?f=y:f=e.children}else f=e.children;u!==0&&(a=String(u),m&&m.length&&(d=lh(m))),e.codegenNode=Ln(t,l,c,f,a,d,E,!!T,!1,i,e.loc)};function sh(e,t,n=!1){let{tag:s}=e;const r=Kr(s),i=tr(e,"is");if(i)if(r||Lt("COMPILER_IS_ON_ELEMENT",t)){const c=i.type===6?i.value&&z(i.value.content,!0):i.exp;if(c)return pe(t.helper(ws),[c])}else i.type===6&&i.value.content.startsWith("vue:")&&(s=i.value.content.slice(4));const l=!r&&He(e,"is");if(l&&l.exp)return pe(t.helper(ws),[l.exp]);const o=Kc(s)||t.isBuiltInComponent(s);return o?(n||t.helper(o),o):(t.helper(Ai),t.components.add(s),Bn(s,"component"))}function lf(e,t,n=e.props,s,r,i=!1){const{tag:l,loc:o,children:c}=e;let f=[];const a=[],u=[],d=c.length>0;let m=!1,E=0,T=!1,I=!1,y=!1,h=!1,b=!1,w=!1;const A=[],H=R=>{f.length&&(a.push(Ve(Kl(f),o)),f=[]),R&&a.push(R)},O=({key:R,value:F})=>{if(Pe(R)){const M=R.content,P=jt(M);if(P&&(!s||r)&&M.toLowerCase()!=="onclick"&&M!=="onUpdate:modelValue"&&!It(M)&&(h=!0),P&&It(M)&&(w=!0),F.type===20||(F.type===4||F.type===8)&&je(F,t)>0)return;M==="ref"?T=!0:M==="class"?I=!0:M==="style"?y=!0:M!=="key"&&!A.includes(M)&&A.push(M),s&&(M==="class"||M==="style")&&!A.includes(M)&&A.push(M)}else b=!0};for(let R=0;R0&&f.push(ue(z("ref_for",!0),z("true")))),P==="is"&&(Kr(l)||V&&V.content.startsWith("vue:")||Lt("COMPILER_IS_ON_ELEMENT",t)))continue;f.push(ue(z(P,!0,xc(M,0,P.length)),z(V?V.content:"",B,V?V.loc:M)))}else{const{name:M,arg:P,exp:V,loc:B}=F,ee=M==="bind",Z=M==="on";if(M==="slot"){s||t.onError(fe(40,B));continue}if(M==="once"||M==="memo"||M==="is"||ee&&At(P,"is")&&(Kr(l)||Lt("COMPILER_IS_ON_ELEMENT",t))||Z&&i)continue;if((ee&&At(P,"key")||Z&&d&&At(P,"vue:before-update"))&&(m=!0),ee&&At(P,"ref")&&t.scopes.vFor>0&&f.push(ue(z("ref_for",!0),z("true"))),!P&&(ee||Z)){if(b=!0,V)if(ee){if(H(),Lt("COMPILER_V_BIND_OBJECT_ORDER",t)){a.unshift(V);continue}a.push(V)}else H({type:14,loc:B,callee:t.helper(Bi),arguments:s?[V]:[V,"true"]});else t.onError(fe(ee?34:35,B));continue}const oe=t.directiveTransforms[M];if(oe){const{props:te,needRuntime:Ue}=oe(F,e,t);!i&&te.forEach(O),Z&&P&&!Pe(P)?H(Ve(te,o)):f.push(...te),Ue&&(u.push(F),mt(Ue)&&rf.set(F,Ue))}else Vf(M)||(u.push(F),d&&(m=!0))}}let _;if(a.length?(H(),a.length>1?_=pe(t.helper(Ns),a,o):_=a[0]):f.length&&(_=Ve(Kl(f),o)),b?E|=16:(I&&!s&&(E|=2),y&&!s&&(E|=4),A.length&&(E|=8),h&&(E|=32)),!m&&(E===0||E===32)&&(T||w||u.length>0)&&(E|=512),!t.inSSR&&_)switch(_.type){case 15:let R=-1,F=-1,M=!1;for(let B=0;B<_.properties.length;B++){const ee=_.properties[B].key;Pe(ee)?ee.content==="class"?R=B:ee.content==="style"&&(F=B):ee.isHandlerKey||(M=!0)}const P=_.properties[R],V=_.properties[F];M?_=pe(t.helper(Fn),[_]):(P&&!Pe(P.value)&&(P.value=pe(t.helper(Fi),[P.value])),V&&(y||V.value.type===4&&V.value.content.trim()[0]==="["||V.value.type===17)&&(V.value=pe(t.helper(Li),[V.value])));break;case 14:break;default:_=pe(t.helper(Fn),[pe(t.helper(Jn),[_])]);break}return{props:_,directives:u,patchFlag:E,dynamicPropNames:A,shouldUseBlock:m}}function Kl(e){const t=new Map,n=[];for(let s=0;sue(l,i)),r))}return zn(n,e.loc)}function lh(e){let t="[";for(let n=0,s=e.length;n{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},ch=/-(\w)/g,Ul=oh(e=>e.replace(ch,(t,n)=>n?n.toUpperCase():"")),fh=(e,t)=>{if(Ms(e)){const{children:n,loc:s}=e,{slotName:r,slotProps:i}=uh(e,t),l=[t.prefixIdentifiers?"_ctx.$slots":"$slots",r,"{}","undefined","true"];let o=2;i&&(l[2]=i,o=3),n.length&&(l[3]=cn([],n,!1,!1,s),o=4),t.scopeId&&!t.slotted&&(o=5),l.splice(o),e.codegenNode=pe(t.helper(Hc),l,s)}};function uh(e,t){let n='"default"',s;const r=[];for(let i=0;i0){const{props:i,directives:l}=lf(e,t,r,!1,!1);s=i,l.length&&t.onError(fe(36,l[0].loc))}return{slotName:n,slotProps:s}}const ah=/^\s*([\w$_]+|(async\s*)?\([^)]*?\))\s*(:[^=]+)?=>|^\s*(async\s+)?function(?:\s+[\w$]+)?\s*\(/,of=(e,t,n,s)=>{const{loc:r,modifiers:i,arg:l}=e;!e.exp&&!i.length&&n.onError(fe(35,r));let o;if(l.type===4)if(l.isStatic){let u=l.content;u.startsWith("vue:")&&(u=`vnode-${u.slice(4)}`);const d=t.tagType!==0||u.startsWith("vnode")||!/[A-Z]/.test(u)?Qt(be(u)):`on:${u}`;o=z(d,!0,l.loc)}else o=qe([`${n.helperString($r)}(`,l,")"]);else o=l,o.children.unshift(`${n.helperString($r)}(`),o.children.push(")");let c=e.exp;c&&!c.content.trim()&&(c=void 0);let f=n.cacheHandlers&&!c&&!n.inVOnce;if(c){const u=Uc(c.content),d=!(u||ah.test(c.content)),m=c.content.includes(";");(d||f&&u)&&(c=qe([`${d?"$event":"(...args)"} => ${m?"{":"("}`,c,m?"}":")"]))}let a={props:[ue(o,c||z("() => {}",!1,r))]};return s&&(a=s(a)),f&&(a.props[0].value=n.cache(a.props[0].value)),a.props.forEach(u=>u.key.isHandlerKey=!0),a},ph=(e,t,n)=>{const{exp:s,modifiers:r,loc:i}=e,l=e.arg;return l.type!==4?(l.children.unshift("("),l.children.push(') || ""')):l.isStatic||(l.content=`${l.content} || ""`),r.includes("camel")&&(l.type===4?l.isStatic?l.content=be(l.content):l.content=`${n.helperString(Br)}(${l.content})`:(l.children.unshift(`${n.helperString(Br)}(`),l.children.push(")"))),n.inSSR||(r.includes("prop")&&xl(l,"."),r.includes("attr")&&xl(l,"^")),!s||s.type===4&&!s.content.trim()?(n.onError(fe(34,i)),{props:[ue(l,z("",!0,i))]}):{props:[ue(l,s)]}},xl=(e,t)=>{e.type===4?e.isStatic?e.content=t+e.content:e.content=`\`${t}\${${e.content}}\``:(e.children.unshift(`'${t}' + (`),e.children.push(")"))},dh=(e,t)=>{if(e.type===0||e.type===1||e.type===11||e.type===10)return()=>{const n=e.children;let s,r=!1;for(let i=0;ii.type===7&&!t.directiveTransforms[i.name])&&e.tag!=="template")))for(let i=0;i{if(e.type===1&&He(e,"once",!0))return Wl.has(e)||t.inVOnce?void 0:(Wl.add(e),t.inVOnce=!0,t.helper(Os),()=>{t.inVOnce=!1;const n=t.currentNode;n.codegenNode&&(n.codegenNode=t.cache(n.codegenNode,!0))})},cf=(e,t,n)=>{const{exp:s,arg:r}=e;if(!s)return n.onError(fe(41,e.loc)),as();const i=s.loc.source,l=s.type===4?s.content:i,o=n.bindingMetadata[i];if(o==="props"||o==="props-aliased")return n.onError(fe(44,s.loc)),as();const c=!1;if(!l.trim()||!Uc(l)&&!c)return n.onError(fe(42,s.loc)),as();const f=r||z("modelValue",!0),a=r?Pe(r)?`onUpdate:${r.content}`:qe(['"onUpdate:" + ',r]):"onUpdate:modelValue";let u;const d=n.isTS?"($event: any)":"$event";u=qe([`${d} => ((`,s,") = $event)"]);const m=[ue(f,e.exp),ue(a,u)];if(e.modifiers.length&&t.tagType===1){const E=e.modifiers.map(I=>(Hi(I)?I:JSON.stringify(I))+": true").join(", "),T=r?Pe(r)?`${r.content}Modifiers`:qe([r,' + "Modifiers"']):"modelModifiers";m.push(ue(T,z(`{ ${E} }`,!1,e.loc,2)))}return as(m)};function as(e=[]){return{props:e}}const gh=/[\w).+\-_$\]]/,mh=(e,t)=>{!Lt("COMPILER_FILTER",t)||(e.type===5&&ks(e.content,t),e.type===1&&e.props.forEach(n=>{n.type===7&&n.name!=="for"&&n.exp&&ks(n.exp,t)}))};function ks(e,t){if(e.type===4)ql(e,t);else for(let n=0;n=0&&(h=n.charAt(y),h===" ");y--);(!h||!gh.test(h))&&(l=!0)}}E===void 0?E=n.slice(0,m).trim():a!==0&&I();function I(){T.push(n.slice(a,m).trim()),a=m+1}if(T.length){for(m=0;m{if(e.type===1){const n=He(e,"memo");return!n||Jl.has(e)?void 0:(Jl.add(e),()=>{const s=e.codegenNode||t.currentNode.codegenNode;s&&s.type===13&&(e.tagType!==1&&Vi(s,t),e.codegenNode=pe(t.helper(Di),[n.exp,cn(void 0,s),"_cache",String(t.cached++)]))})}};function bh(e){return[[hh,Wd,_h,zd,mh,fh,nh,Gd,dh],{on:of,bind:ph,model:cf}]}function Eh(e,t={}){const n=t.onError||Si,s=t.mode==="module";t.prefixIdentifiers===!0?n(fe(47)):s&&n(fe(48));const r=!1;t.cacheHandlers&&n(fe(49)),t.scopeId&&!s&&n(fe(50));const i=J(e)?pd(e,t):e,[l,o]=bh();return Nd(i,G({},t,{prefixIdentifiers:r,nodeTransforms:[...l,...t.nodeTransforms||[]],directiveTransforms:G({},o,t.directiveTransforms||{})})),Id(i,G({},t,{prefixIdentifiers:r}))}const Ch=()=>({props:[]}),ff=Symbol(""),uf=Symbol(""),af=Symbol(""),pf=Symbol(""),Ur=Symbol(""),df=Symbol(""),hf=Symbol(""),gf=Symbol(""),mf=Symbol(""),yf=Symbol("");Xp({[ff]:"vModelRadio",[uf]:"vModelCheckbox",[af]:"vModelText",[pf]:"vModelSelect",[Ur]:"vModelDynamic",[df]:"withModifiers",[hf]:"withKeys",[gf]:"vShow",[mf]:"Transition",[yf]:"TransitionGroup"});let Jt;function Th(e,t=!1){return Jt||(Jt=document.createElement("div")),t?(Jt.innerHTML=`
`,Jt.children[0].getAttribute("foo")):(Jt.innerHTML=e,Jt.textContent)}const vh=Ae("style,iframe,script,noscript",!0),Sh={isVoidTag:Rf,isNativeTag:e=>If(e)||Mf(e),isPreTag:e=>e==="pre",decodeEntities:Th,isBuiltInComponent:e=>{if(Yt(e,"Transition"))return mf;if(Yt(e,"TransitionGroup"))return yf},getNamespace(e,t){let n=t?t.ns:0;if(t&&n===2)if(t.tag==="annotation-xml"){if(e==="svg")return 1;t.props.some(s=>s.type===6&&s.name==="encoding"&&s.value!=null&&(s.value.content==="text/html"||s.value.content==="application/xhtml+xml"))&&(n=0)}else/^m(?:[ions]|text)$/.test(t.tag)&&e!=="mglyph"&&e!=="malignmark"&&(n=0);else t&&n===1&&(t.tag==="foreignObject"||t.tag==="desc"||t.tag==="title")&&(n=0);if(n===0){if(e==="svg")return 1;if(e==="math")return 2}return n},getTextMode({tag:e,ns:t}){if(t===0){if(e==="textarea"||e==="title")return 1;if(vh(e))return 2}return 0}},wh=e=>{e.type===1&&e.props.forEach((t,n)=>{t.type===6&&t.name==="style"&&t.value&&(e.props[n]={type:7,name:"bind",arg:z("style",!0,t.loc),exp:Nh(t.value.content,t.loc),modifiers:[],loc:t.loc})})},Nh=(e,t)=>{const n=Zl(e);return z(JSON.stringify(n),!1,t,3)};function rt(e,t){return fe(e,t)}const Oh=(e,t,n)=>{const{exp:s,loc:r}=e;return s||n.onError(rt(51,r)),t.children.length&&(n.onError(rt(52,r)),t.children.length=0),{props:[ue(z("innerHTML",!0,r),s||z("",!0))]}},Ph=(e,t,n)=>{const{exp:s,loc:r}=e;return s||n.onError(rt(53,r)),t.children.length&&(n.onError(rt(54,r)),t.children.length=0),{props:[ue(z("textContent",!0),s?je(s,n)>0?s:pe(n.helperString(er),[s],r):z("",!0))]}},Ah=(e,t,n)=>{const s=cf(e,t,n);if(!s.props.length||t.tagType===1)return s;e.arg&&n.onError(rt(56,e.arg.loc));const{tag:r}=t,i=n.isCustomElement(r);if(r==="input"||r==="textarea"||r==="select"||i){let l=af,o=!1;if(r==="input"||i){const c=tr(t,"type");if(c){if(c.type===7)l=Ur;else if(c.value)switch(c.value.content){case"radio":l=ff;break;case"checkbox":l=uf;break;case"file":o=!0,n.onError(rt(57,e.loc));break}}else ld(t)&&(l=Ur)}else r==="select"&&(l=pf);o||(s.needRuntime=n.helper(l))}else n.onError(rt(55,e.loc));return s.props=s.props.filter(l=>!(l.key.type===4&&l.key.content==="modelValue")),s},Ih=Ae("passive,once,capture"),Mh=Ae("stop,prevent,self,ctrl,shift,alt,meta,exact,middle"),Rh=Ae("left,right"),_f=Ae("onkeyup,onkeydown,onkeypress",!0),kh=(e,t,n,s)=>{const r=[],i=[],l=[];for(let o=0;oPe(e)&&e.content.toLowerCase()==="onclick"?z(t,!0):e.type!==4?qe(["(",e,`) === "onClick" ? "${t}" : (`,e,")"]):e,Fh=(e,t,n)=>of(e,t,n,s=>{const{modifiers:r}=e;if(!r.length)return s;let{key:i,value:l}=s.props[0];const{keyModifiers:o,nonKeyModifiers:c,eventOptionModifiers:f}=kh(i,r,n,e.loc);if(c.includes("right")&&(i=zl(i,"onContextmenu")),c.includes("middle")&&(i=zl(i,"onMouseup")),c.length&&(l=pe(n.helper(df),[l,JSON.stringify(c)])),o.length&&(!Pe(i)||_f(i.content))&&(l=pe(n.helper(hf),[l,JSON.stringify(o)])),f.length){const a=f.map(Ut).join("");i=Pe(i)?z(`${i.content}${a}`,!0):qe(["(",i,`) + "${a}"`])}return{props:[ue(i,l)]}}),Lh=(e,t,n)=>{const{exp:s,loc:r}=e;return s||n.onError(rt(59,r)),{props:[],needRuntime:n.helper(gf)}},Bh=(e,t)=>{e.type===1&&e.tagType===0&&(e.tag==="script"||e.tag==="style")&&(t.onError(rt(61,e.loc)),t.removeNode())},$h=[wh],Dh={cloak:Ch,html:Oh,text:Ph,model:Ah,on:Fh,show:Lh};function Hh(e,t={}){return Eh(e,G({},Sh,t,{nodeTransforms:[Bh,...$h,...t.nodeTransforms||[]],directiveTransforms:G({},Dh,t.directiveTransforms||{}),transformHoist:null}))}const Yl=Object.create(null);function Vh(e,t){if(!J(e))if(e.nodeType)e=e.innerHTML;else return we;const n=e,s=Yl[n];if(s)return s;if(e[0]==="#"){const o=document.querySelector(e);e=o?o.innerHTML:""}const r=G({hoistStatic:!0,onError:void 0,onWarn:we},t);!r.isCustomElement&&typeof customElements<"u"&&(r.isCustomElement=o=>!!customElements.get(o));const{code:i}=Hh(e,r),l=new Function("Vue",i)(Wp);return l._rc=!0,Yl[n]=l}oc(Vh);export{ye as F,_i as a,Hu as b,ka as c,bi as d,Kp as e,Zs as o,Du as p,Hs as r,Bf as t}; 8 | -------------------------------------------------------------------------------- /public/dist/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "assets/logo.png": { 3 | "file": "assets/logo-03d6d6da.png", 4 | "src": "assets/logo.png" 5 | }, 6 | "main.css": { 7 | "file": "assets/main-4224cc60.css", 8 | "src": "main.css" 9 | }, 10 | "main.js": { 11 | "file": "assets/main-748e6be2.js", 12 | "src": "main.js", 13 | "isEntry": true, 14 | "imports": [ 15 | "_vendor-693449a0.js" 16 | ], 17 | "css": [ 18 | "assets/main-4224cc60.css" 19 | ], 20 | "assets": [ 21 | "assets/logo-03d6d6da.png" 22 | ] 23 | }, 24 | "_vendor-693449a0.js": { 25 | "file": "assets/vendor-693449a0.js" 26 | } 27 | } -------------------------------------------------------------------------------- /public/helpers.php: -------------------------------------------------------------------------------- 1 | '; 63 | } 64 | 65 | function jsPreloadImports(string $entry): string 66 | { 67 | if (isDev($entry)) { 68 | return ''; 69 | } 70 | 71 | $res = ''; 72 | foreach (importsUrls($entry) as $url) { 73 | $res .= ''; 76 | } 77 | return $res; 78 | } 79 | 80 | function cssTag(string $entry): string 81 | { 82 | // not needed on dev, it's inject by Vite 83 | if (isDev($entry)) { 84 | return ''; 85 | } 86 | 87 | $tags = ''; 88 | foreach (cssUrls($entry) as $url) { 89 | $tags .= ''; 92 | } 93 | return $tags; 94 | } 95 | 96 | 97 | // Helpers to locate files 98 | 99 | function getManifest(): array 100 | { 101 | $content = file_get_contents(__DIR__ . '/dist/manifest.json'); 102 | return json_decode($content, true); 103 | } 104 | 105 | function assetUrl(string $entry): string 106 | { 107 | $manifest = getManifest(); 108 | 109 | return isset($manifest[$entry]) 110 | ? '/dist/' . $manifest[$entry]['file'] 111 | : ''; 112 | } 113 | 114 | function importsUrls(string $entry): array 115 | { 116 | $urls = []; 117 | $manifest = getManifest(); 118 | 119 | if (!empty($manifest[$entry]['imports'])) { 120 | foreach ($manifest[$entry]['imports'] as $imports) { 121 | $urls[] = '/dist/' . $manifest[$imports]['file']; 122 | } 123 | } 124 | return $urls; 125 | } 126 | 127 | function cssUrls(string $entry): array 128 | { 129 | $urls = []; 130 | $manifest = getManifest(); 131 | 132 | if (!empty($manifest[$entry]['css'])) { 133 | foreach ($manifest[$entry]['css'] as $file) { 134 | $urls[] = '/dist/' . $file; 135 | } 136 | } 137 | return $urls; 138 | } 139 | -------------------------------------------------------------------------------- /public/index.php: -------------------------------------------------------------------------------- 1 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | Vite App 17 | 18 | 19 | 20 | 21 | 22 | 23 | PHP output here, potentially large HTML chunks

' ?> 24 | 25 |
26 | 27 |
28 | 29 | PHP output here, potentially large HTML chunks

' ?> 30 | 31 |
32 | 33 |
34 | 35 | PHP output here, potentially large HTML chunks

' ?> 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /vite/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | dist 4 | *.local -------------------------------------------------------------------------------- /vite/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "my-php-project", 3 | "version": "0.0.0", 4 | "lockfileVersion": 2, 5 | "requires": true, 6 | "packages": { 7 | "": { 8 | "name": "my-php-project", 9 | "version": "0.0.0", 10 | "dependencies": { 11 | "vue": "^3.2.45" 12 | }, 13 | "devDependencies": { 14 | "@vitejs/plugin-vue": "^4.0.0", 15 | "@vue/compiler-sfc": "^3.2.45", 16 | "vite": "^4.0.4", 17 | "vite-plugin-live-reload": "^3.0.1" 18 | } 19 | }, 20 | "node_modules/@babel/parser": { 21 | "version": "7.18.8", 22 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.8.tgz", 23 | "integrity": "sha512-RSKRfYX20dyH+elbJK2uqAkVyucL+xXzhqlMD5/ZXx+dAAwpyB7HsvnHe/ZUGOF+xLr5Wx9/JoXVTj6BQE2/oA==", 24 | "bin": { 25 | "parser": "bin/babel-parser.js" 26 | }, 27 | "engines": { 28 | "node": ">=6.0.0" 29 | } 30 | }, 31 | "node_modules/@esbuild/android-arm": { 32 | "version": "0.16.3", 33 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.3.tgz", 34 | "integrity": "sha512-mueuEoh+s1eRbSJqq9KNBQwI4QhQV6sRXIfTyLXSHGMpyew61rOK4qY21uKbXl1iBoMb0AdL1deWFCQVlN2qHA==", 35 | "cpu": [ 36 | "arm" 37 | ], 38 | "dev": true, 39 | "optional": true, 40 | "os": [ 41 | "android" 42 | ], 43 | "engines": { 44 | "node": ">=12" 45 | } 46 | }, 47 | "node_modules/@esbuild/android-arm64": { 48 | "version": "0.16.3", 49 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.3.tgz", 50 | "integrity": "sha512-RolFVeinkeraDvN/OoRf1F/lP0KUfGNb5jxy/vkIMeRRChkrX/HTYN6TYZosRJs3a1+8wqpxAo5PI5hFmxyPRg==", 51 | "cpu": [ 52 | "arm64" 53 | ], 54 | "dev": true, 55 | "optional": true, 56 | "os": [ 57 | "android" 58 | ], 59 | "engines": { 60 | "node": ">=12" 61 | } 62 | }, 63 | "node_modules/@esbuild/android-x64": { 64 | "version": "0.16.3", 65 | "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.3.tgz", 66 | "integrity": "sha512-SFpTUcIT1bIJuCCBMCQWq1bL2gPTjWoLZdjmIhjdcQHaUfV41OQfho6Ici5uvvkMmZRXIUGpM3GxysP/EU7ifQ==", 67 | "cpu": [ 68 | "x64" 69 | ], 70 | "dev": true, 71 | "optional": true, 72 | "os": [ 73 | "android" 74 | ], 75 | "engines": { 76 | "node": ">=12" 77 | } 78 | }, 79 | "node_modules/@esbuild/darwin-arm64": { 80 | "version": "0.16.3", 81 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.3.tgz", 82 | "integrity": "sha512-DO8WykMyB+N9mIDfI/Hug70Dk1KipavlGAecxS3jDUwAbTpDXj0Lcwzw9svkhxfpCagDmpaTMgxWK8/C/XcXvw==", 83 | "cpu": [ 84 | "arm64" 85 | ], 86 | "dev": true, 87 | "optional": true, 88 | "os": [ 89 | "darwin" 90 | ], 91 | "engines": { 92 | "node": ">=12" 93 | } 94 | }, 95 | "node_modules/@esbuild/darwin-x64": { 96 | "version": "0.16.3", 97 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.3.tgz", 98 | "integrity": "sha512-uEqZQ2omc6BvWqdCiyZ5+XmxuHEi1SPzpVxXCSSV2+Sh7sbXbpeNhHIeFrIpRjAs0lI1FmA1iIOxFozKBhKgRQ==", 99 | "cpu": [ 100 | "x64" 101 | ], 102 | "dev": true, 103 | "optional": true, 104 | "os": [ 105 | "darwin" 106 | ], 107 | "engines": { 108 | "node": ">=12" 109 | } 110 | }, 111 | "node_modules/@esbuild/freebsd-arm64": { 112 | "version": "0.16.3", 113 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.3.tgz", 114 | "integrity": "sha512-nJansp3sSXakNkOD5i5mIz2Is/HjzIhFs49b1tjrPrpCmwgBmH9SSzhC/Z1UqlkivqMYkhfPwMw1dGFUuwmXhw==", 115 | "cpu": [ 116 | "arm64" 117 | ], 118 | "dev": true, 119 | "optional": true, 120 | "os": [ 121 | "freebsd" 122 | ], 123 | "engines": { 124 | "node": ">=12" 125 | } 126 | }, 127 | "node_modules/@esbuild/freebsd-x64": { 128 | "version": "0.16.3", 129 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.3.tgz", 130 | "integrity": "sha512-TfoDzLw+QHfc4a8aKtGSQ96Wa+6eimljjkq9HKR0rHlU83vw8aldMOUSJTUDxbcUdcgnJzPaX8/vGWm7vyV7ug==", 131 | "cpu": [ 132 | "x64" 133 | ], 134 | "dev": true, 135 | "optional": true, 136 | "os": [ 137 | "freebsd" 138 | ], 139 | "engines": { 140 | "node": ">=12" 141 | } 142 | }, 143 | "node_modules/@esbuild/linux-arm": { 144 | "version": "0.16.3", 145 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.3.tgz", 146 | "integrity": "sha512-VwswmSYwVAAq6LysV59Fyqk3UIjbhuc6wb3vEcJ7HEJUtFuLK9uXWuFoH1lulEbE4+5GjtHi3MHX+w1gNHdOWQ==", 147 | "cpu": [ 148 | "arm" 149 | ], 150 | "dev": true, 151 | "optional": true, 152 | "os": [ 153 | "linux" 154 | ], 155 | "engines": { 156 | "node": ">=12" 157 | } 158 | }, 159 | "node_modules/@esbuild/linux-arm64": { 160 | "version": "0.16.3", 161 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.3.tgz", 162 | "integrity": "sha512-7I3RlsnxEFCHVZNBLb2w7unamgZ5sVwO0/ikE2GaYvYuUQs9Qte/w7TqWcXHtCwxvZx/2+F97ndiUQAWs47ZfQ==", 163 | "cpu": [ 164 | "arm64" 165 | ], 166 | "dev": true, 167 | "optional": true, 168 | "os": [ 169 | "linux" 170 | ], 171 | "engines": { 172 | "node": ">=12" 173 | } 174 | }, 175 | "node_modules/@esbuild/linux-ia32": { 176 | "version": "0.16.3", 177 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.3.tgz", 178 | "integrity": "sha512-X8FDDxM9cqda2rJE+iblQhIMYY49LfvW4kaEjoFbTTQ4Go8G96Smj2w3BRTwA8IHGoi9dPOPGAX63dhuv19UqA==", 179 | "cpu": [ 180 | "ia32" 181 | ], 182 | "dev": true, 183 | "optional": true, 184 | "os": [ 185 | "linux" 186 | ], 187 | "engines": { 188 | "node": ">=12" 189 | } 190 | }, 191 | "node_modules/@esbuild/linux-loong64": { 192 | "version": "0.16.3", 193 | "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.3.tgz", 194 | "integrity": "sha512-hIbeejCOyO0X9ujfIIOKjBjNAs9XD/YdJ9JXAy1lHA+8UXuOqbFe4ErMCqMr8dhlMGBuvcQYGF7+kO7waj2KHw==", 195 | "cpu": [ 196 | "loong64" 197 | ], 198 | "dev": true, 199 | "optional": true, 200 | "os": [ 201 | "linux" 202 | ], 203 | "engines": { 204 | "node": ">=12" 205 | } 206 | }, 207 | "node_modules/@esbuild/linux-mips64el": { 208 | "version": "0.16.3", 209 | "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.3.tgz", 210 | "integrity": "sha512-znFRzICT/V8VZQMt6rjb21MtAVJv/3dmKRMlohlShrbVXdBuOdDrGb+C2cZGQAR8RFyRe7HS6klmHq103WpmVw==", 211 | "cpu": [ 212 | "mips64el" 213 | ], 214 | "dev": true, 215 | "optional": true, 216 | "os": [ 217 | "linux" 218 | ], 219 | "engines": { 220 | "node": ">=12" 221 | } 222 | }, 223 | "node_modules/@esbuild/linux-ppc64": { 224 | "version": "0.16.3", 225 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.3.tgz", 226 | "integrity": "sha512-EV7LuEybxhXrVTDpbqWF2yehYRNz5e5p+u3oQUS2+ZFpknyi1NXxr8URk4ykR8Efm7iu04//4sBg249yNOwy5Q==", 227 | "cpu": [ 228 | "ppc64" 229 | ], 230 | "dev": true, 231 | "optional": true, 232 | "os": [ 233 | "linux" 234 | ], 235 | "engines": { 236 | "node": ">=12" 237 | } 238 | }, 239 | "node_modules/@esbuild/linux-riscv64": { 240 | "version": "0.16.3", 241 | "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.3.tgz", 242 | "integrity": "sha512-uDxqFOcLzFIJ+r/pkTTSE9lsCEaV/Y6rMlQjUI9BkzASEChYL/aSQjZjchtEmdnVxDKETnUAmsaZ4pqK1eE5BQ==", 243 | "cpu": [ 244 | "riscv64" 245 | ], 246 | "dev": true, 247 | "optional": true, 248 | "os": [ 249 | "linux" 250 | ], 251 | "engines": { 252 | "node": ">=12" 253 | } 254 | }, 255 | "node_modules/@esbuild/linux-s390x": { 256 | "version": "0.16.3", 257 | "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.3.tgz", 258 | "integrity": "sha512-NbeREhzSxYwFhnCAQOQZmajsPYtX71Ufej3IQ8W2Gxskfz9DK58ENEju4SbpIj48VenktRASC52N5Fhyf/aliQ==", 259 | "cpu": [ 260 | "s390x" 261 | ], 262 | "dev": true, 263 | "optional": true, 264 | "os": [ 265 | "linux" 266 | ], 267 | "engines": { 268 | "node": ">=12" 269 | } 270 | }, 271 | "node_modules/@esbuild/linux-x64": { 272 | "version": "0.16.3", 273 | "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.3.tgz", 274 | "integrity": "sha512-SDiG0nCixYO9JgpehoKgScwic7vXXndfasjnD5DLbp1xltANzqZ425l7LSdHynt19UWOcDjG9wJJzSElsPvk0w==", 275 | "cpu": [ 276 | "x64" 277 | ], 278 | "dev": true, 279 | "optional": true, 280 | "os": [ 281 | "linux" 282 | ], 283 | "engines": { 284 | "node": ">=12" 285 | } 286 | }, 287 | "node_modules/@esbuild/netbsd-x64": { 288 | "version": "0.16.3", 289 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.3.tgz", 290 | "integrity": "sha512-AzbsJqiHEq1I/tUvOfAzCY15h4/7Ivp3ff/o1GpP16n48JMNAtbW0qui2WCgoIZArEHD0SUQ95gvR0oSO7ZbdA==", 291 | "cpu": [ 292 | "x64" 293 | ], 294 | "dev": true, 295 | "optional": true, 296 | "os": [ 297 | "netbsd" 298 | ], 299 | "engines": { 300 | "node": ">=12" 301 | } 302 | }, 303 | "node_modules/@esbuild/openbsd-x64": { 304 | "version": "0.16.3", 305 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.3.tgz", 306 | "integrity": "sha512-gSABi8qHl8k3Cbi/4toAzHiykuBuWLZs43JomTcXkjMZVkp0gj3gg9mO+9HJW/8GB5H89RX/V0QP4JGL7YEEVg==", 307 | "cpu": [ 308 | "x64" 309 | ], 310 | "dev": true, 311 | "optional": true, 312 | "os": [ 313 | "openbsd" 314 | ], 315 | "engines": { 316 | "node": ">=12" 317 | } 318 | }, 319 | "node_modules/@esbuild/sunos-x64": { 320 | "version": "0.16.3", 321 | "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.3.tgz", 322 | "integrity": "sha512-SF9Kch5Ete4reovvRO6yNjMxrvlfT0F0Flm+NPoUw5Z4Q3r1d23LFTgaLwm3Cp0iGbrU/MoUI+ZqwCv5XJijCw==", 323 | "cpu": [ 324 | "x64" 325 | ], 326 | "dev": true, 327 | "optional": true, 328 | "os": [ 329 | "sunos" 330 | ], 331 | "engines": { 332 | "node": ">=12" 333 | } 334 | }, 335 | "node_modules/@esbuild/win32-arm64": { 336 | "version": "0.16.3", 337 | "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.3.tgz", 338 | "integrity": "sha512-u5aBonZIyGopAZyOnoPAA6fGsDeHByZ9CnEzyML9NqntK6D/xl5jteZUKm/p6nD09+v3pTM6TuUIqSPcChk5gg==", 339 | "cpu": [ 340 | "arm64" 341 | ], 342 | "dev": true, 343 | "optional": true, 344 | "os": [ 345 | "win32" 346 | ], 347 | "engines": { 348 | "node": ">=12" 349 | } 350 | }, 351 | "node_modules/@esbuild/win32-ia32": { 352 | "version": "0.16.3", 353 | "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.3.tgz", 354 | "integrity": "sha512-GlgVq1WpvOEhNioh74TKelwla9KDuAaLZrdxuuUgsP2vayxeLgVc+rbpIv0IYF4+tlIzq2vRhofV+KGLD+37EQ==", 355 | "cpu": [ 356 | "ia32" 357 | ], 358 | "dev": true, 359 | "optional": true, 360 | "os": [ 361 | "win32" 362 | ], 363 | "engines": { 364 | "node": ">=12" 365 | } 366 | }, 367 | "node_modules/@esbuild/win32-x64": { 368 | "version": "0.16.3", 369 | "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.3.tgz", 370 | "integrity": "sha512-5/JuTd8OWW8UzEtyf19fbrtMJENza+C9JoPIkvItgTBQ1FO2ZLvjbPO6Xs54vk0s5JB5QsfieUEshRQfu7ZHow==", 371 | "cpu": [ 372 | "x64" 373 | ], 374 | "dev": true, 375 | "optional": true, 376 | "os": [ 377 | "win32" 378 | ], 379 | "engines": { 380 | "node": ">=12" 381 | } 382 | }, 383 | "node_modules/@vitejs/plugin-vue": { 384 | "version": "4.0.0", 385 | "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.0.0.tgz", 386 | "integrity": "sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA==", 387 | "dev": true, 388 | "engines": { 389 | "node": "^14.18.0 || >=16.0.0" 390 | }, 391 | "peerDependencies": { 392 | "vite": "^4.0.0", 393 | "vue": "^3.2.25" 394 | } 395 | }, 396 | "node_modules/@vue/compiler-core": { 397 | "version": "3.2.45", 398 | "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.45.tgz", 399 | "integrity": "sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==", 400 | "dependencies": { 401 | "@babel/parser": "^7.16.4", 402 | "@vue/shared": "3.2.45", 403 | "estree-walker": "^2.0.2", 404 | "source-map": "^0.6.1" 405 | } 406 | }, 407 | "node_modules/@vue/compiler-dom": { 408 | "version": "3.2.45", 409 | "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz", 410 | "integrity": "sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==", 411 | "dependencies": { 412 | "@vue/compiler-core": "3.2.45", 413 | "@vue/shared": "3.2.45" 414 | } 415 | }, 416 | "node_modules/@vue/compiler-sfc": { 417 | "version": "3.2.45", 418 | "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz", 419 | "integrity": "sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==", 420 | "dependencies": { 421 | "@babel/parser": "^7.16.4", 422 | "@vue/compiler-core": "3.2.45", 423 | "@vue/compiler-dom": "3.2.45", 424 | "@vue/compiler-ssr": "3.2.45", 425 | "@vue/reactivity-transform": "3.2.45", 426 | "@vue/shared": "3.2.45", 427 | "estree-walker": "^2.0.2", 428 | "magic-string": "^0.25.7", 429 | "postcss": "^8.1.10", 430 | "source-map": "^0.6.1" 431 | } 432 | }, 433 | "node_modules/@vue/compiler-ssr": { 434 | "version": "3.2.45", 435 | "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz", 436 | "integrity": "sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==", 437 | "dependencies": { 438 | "@vue/compiler-dom": "3.2.45", 439 | "@vue/shared": "3.2.45" 440 | } 441 | }, 442 | "node_modules/@vue/reactivity": { 443 | "version": "3.2.45", 444 | "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.45.tgz", 445 | "integrity": "sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A==", 446 | "dependencies": { 447 | "@vue/shared": "3.2.45" 448 | } 449 | }, 450 | "node_modules/@vue/reactivity-transform": { 451 | "version": "3.2.45", 452 | "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz", 453 | "integrity": "sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==", 454 | "dependencies": { 455 | "@babel/parser": "^7.16.4", 456 | "@vue/compiler-core": "3.2.45", 457 | "@vue/shared": "3.2.45", 458 | "estree-walker": "^2.0.2", 459 | "magic-string": "^0.25.7" 460 | } 461 | }, 462 | "node_modules/@vue/runtime-core": { 463 | "version": "3.2.45", 464 | "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.45.tgz", 465 | "integrity": "sha512-gzJiTA3f74cgARptqzYswmoQx0fIA+gGYBfokYVhF8YSXjWTUA2SngRzZRku2HbGbjzB6LBYSbKGIaK8IW+s0A==", 466 | "dependencies": { 467 | "@vue/reactivity": "3.2.45", 468 | "@vue/shared": "3.2.45" 469 | } 470 | }, 471 | "node_modules/@vue/runtime-dom": { 472 | "version": "3.2.45", 473 | "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.45.tgz", 474 | "integrity": "sha512-cy88YpfP5Ue2bDBbj75Cb4bIEZUMM/mAkDMfqDTpUYVgTf/kuQ2VQ8LebuZ8k6EudgH8pYhsGWHlY0lcxlvTwA==", 475 | "dependencies": { 476 | "@vue/runtime-core": "3.2.45", 477 | "@vue/shared": "3.2.45", 478 | "csstype": "^2.6.8" 479 | } 480 | }, 481 | "node_modules/@vue/server-renderer": { 482 | "version": "3.2.45", 483 | "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.45.tgz", 484 | "integrity": "sha512-ebiMq7q24WBU1D6uhPK//2OTR1iRIyxjF5iVq/1a5I1SDMDyDu4Ts6fJaMnjrvD3MqnaiFkKQj+LKAgz5WIK3g==", 485 | "dependencies": { 486 | "@vue/compiler-ssr": "3.2.45", 487 | "@vue/shared": "3.2.45" 488 | }, 489 | "peerDependencies": { 490 | "vue": "3.2.45" 491 | } 492 | }, 493 | "node_modules/@vue/shared": { 494 | "version": "3.2.45", 495 | "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.45.tgz", 496 | "integrity": "sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==" 497 | }, 498 | "node_modules/anymatch": { 499 | "version": "3.1.2", 500 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", 501 | "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", 502 | "dev": true, 503 | "dependencies": { 504 | "normalize-path": "^3.0.0", 505 | "picomatch": "^2.0.4" 506 | }, 507 | "engines": { 508 | "node": ">= 8" 509 | } 510 | }, 511 | "node_modules/binary-extensions": { 512 | "version": "2.2.0", 513 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", 514 | "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", 515 | "dev": true, 516 | "engines": { 517 | "node": ">=8" 518 | } 519 | }, 520 | "node_modules/braces": { 521 | "version": "3.0.2", 522 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 523 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 524 | "dev": true, 525 | "dependencies": { 526 | "fill-range": "^7.0.1" 527 | }, 528 | "engines": { 529 | "node": ">=8" 530 | } 531 | }, 532 | "node_modules/chokidar": { 533 | "version": "3.5.3", 534 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", 535 | "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", 536 | "dev": true, 537 | "funding": [ 538 | { 539 | "type": "individual", 540 | "url": "https://paulmillr.com/funding/" 541 | } 542 | ], 543 | "dependencies": { 544 | "anymatch": "~3.1.2", 545 | "braces": "~3.0.2", 546 | "glob-parent": "~5.1.2", 547 | "is-binary-path": "~2.1.0", 548 | "is-glob": "~4.0.1", 549 | "normalize-path": "~3.0.0", 550 | "readdirp": "~3.6.0" 551 | }, 552 | "engines": { 553 | "node": ">= 8.10.0" 554 | }, 555 | "optionalDependencies": { 556 | "fsevents": "~2.3.2" 557 | } 558 | }, 559 | "node_modules/csstype": { 560 | "version": "2.6.21", 561 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.21.tgz", 562 | "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==" 563 | }, 564 | "node_modules/esbuild": { 565 | "version": "0.16.3", 566 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.3.tgz", 567 | "integrity": "sha512-71f7EjPWTiSguen8X/kxEpkAS7BFHwtQKisCDDV3Y4GLGWBaoSCyD5uXkaUew6JDzA9FEN1W23mdnSwW9kqCeg==", 568 | "dev": true, 569 | "hasInstallScript": true, 570 | "bin": { 571 | "esbuild": "bin/esbuild" 572 | }, 573 | "engines": { 574 | "node": ">=12" 575 | }, 576 | "optionalDependencies": { 577 | "@esbuild/android-arm": "0.16.3", 578 | "@esbuild/android-arm64": "0.16.3", 579 | "@esbuild/android-x64": "0.16.3", 580 | "@esbuild/darwin-arm64": "0.16.3", 581 | "@esbuild/darwin-x64": "0.16.3", 582 | "@esbuild/freebsd-arm64": "0.16.3", 583 | "@esbuild/freebsd-x64": "0.16.3", 584 | "@esbuild/linux-arm": "0.16.3", 585 | "@esbuild/linux-arm64": "0.16.3", 586 | "@esbuild/linux-ia32": "0.16.3", 587 | "@esbuild/linux-loong64": "0.16.3", 588 | "@esbuild/linux-mips64el": "0.16.3", 589 | "@esbuild/linux-ppc64": "0.16.3", 590 | "@esbuild/linux-riscv64": "0.16.3", 591 | "@esbuild/linux-s390x": "0.16.3", 592 | "@esbuild/linux-x64": "0.16.3", 593 | "@esbuild/netbsd-x64": "0.16.3", 594 | "@esbuild/openbsd-x64": "0.16.3", 595 | "@esbuild/sunos-x64": "0.16.3", 596 | "@esbuild/win32-arm64": "0.16.3", 597 | "@esbuild/win32-ia32": "0.16.3", 598 | "@esbuild/win32-x64": "0.16.3" 599 | } 600 | }, 601 | "node_modules/estree-walker": { 602 | "version": "2.0.2", 603 | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", 604 | "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" 605 | }, 606 | "node_modules/fill-range": { 607 | "version": "7.0.1", 608 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 609 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 610 | "dev": true, 611 | "dependencies": { 612 | "to-regex-range": "^5.0.1" 613 | }, 614 | "engines": { 615 | "node": ">=8" 616 | } 617 | }, 618 | "node_modules/fsevents": { 619 | "version": "2.3.2", 620 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", 621 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", 622 | "dev": true, 623 | "hasInstallScript": true, 624 | "optional": true, 625 | "os": [ 626 | "darwin" 627 | ], 628 | "engines": { 629 | "node": "^8.16.0 || ^10.6.0 || >=11.0.0" 630 | } 631 | }, 632 | "node_modules/function-bind": { 633 | "version": "1.1.1", 634 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 635 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", 636 | "dev": true 637 | }, 638 | "node_modules/glob-parent": { 639 | "version": "5.1.2", 640 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 641 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 642 | "dev": true, 643 | "dependencies": { 644 | "is-glob": "^4.0.1" 645 | }, 646 | "engines": { 647 | "node": ">= 6" 648 | } 649 | }, 650 | "node_modules/has": { 651 | "version": "1.0.3", 652 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 653 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 654 | "dev": true, 655 | "dependencies": { 656 | "function-bind": "^1.1.1" 657 | }, 658 | "engines": { 659 | "node": ">= 0.4.0" 660 | } 661 | }, 662 | "node_modules/is-binary-path": { 663 | "version": "2.1.0", 664 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 665 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 666 | "dev": true, 667 | "dependencies": { 668 | "binary-extensions": "^2.0.0" 669 | }, 670 | "engines": { 671 | "node": ">=8" 672 | } 673 | }, 674 | "node_modules/is-core-module": { 675 | "version": "2.11.0", 676 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", 677 | "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", 678 | "dev": true, 679 | "dependencies": { 680 | "has": "^1.0.3" 681 | }, 682 | "funding": { 683 | "url": "https://github.com/sponsors/ljharb" 684 | } 685 | }, 686 | "node_modules/is-extglob": { 687 | "version": "2.1.1", 688 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 689 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 690 | "dev": true, 691 | "engines": { 692 | "node": ">=0.10.0" 693 | } 694 | }, 695 | "node_modules/is-glob": { 696 | "version": "4.0.3", 697 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 698 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 699 | "dev": true, 700 | "dependencies": { 701 | "is-extglob": "^2.1.1" 702 | }, 703 | "engines": { 704 | "node": ">=0.10.0" 705 | } 706 | }, 707 | "node_modules/is-number": { 708 | "version": "7.0.0", 709 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 710 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 711 | "dev": true, 712 | "engines": { 713 | "node": ">=0.12.0" 714 | } 715 | }, 716 | "node_modules/magic-string": { 717 | "version": "0.25.9", 718 | "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", 719 | "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", 720 | "dependencies": { 721 | "sourcemap-codec": "^1.4.8" 722 | } 723 | }, 724 | "node_modules/nanoid": { 725 | "version": "3.3.4", 726 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", 727 | "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", 728 | "bin": { 729 | "nanoid": "bin/nanoid.cjs" 730 | }, 731 | "engines": { 732 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" 733 | } 734 | }, 735 | "node_modules/normalize-path": { 736 | "version": "3.0.0", 737 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 738 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 739 | "dev": true, 740 | "engines": { 741 | "node": ">=0.10.0" 742 | } 743 | }, 744 | "node_modules/path-parse": { 745 | "version": "1.0.7", 746 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", 747 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", 748 | "dev": true 749 | }, 750 | "node_modules/picocolors": { 751 | "version": "1.0.0", 752 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", 753 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" 754 | }, 755 | "node_modules/picomatch": { 756 | "version": "2.3.1", 757 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", 758 | "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", 759 | "dev": true, 760 | "engines": { 761 | "node": ">=8.6" 762 | }, 763 | "funding": { 764 | "url": "https://github.com/sponsors/jonschlinkert" 765 | } 766 | }, 767 | "node_modules/postcss": { 768 | "version": "8.4.21", 769 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", 770 | "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", 771 | "funding": [ 772 | { 773 | "type": "opencollective", 774 | "url": "https://opencollective.com/postcss/" 775 | }, 776 | { 777 | "type": "tidelift", 778 | "url": "https://tidelift.com/funding/github/npm/postcss" 779 | } 780 | ], 781 | "dependencies": { 782 | "nanoid": "^3.3.4", 783 | "picocolors": "^1.0.0", 784 | "source-map-js": "^1.0.2" 785 | }, 786 | "engines": { 787 | "node": "^10 || ^12 || >=14" 788 | } 789 | }, 790 | "node_modules/readdirp": { 791 | "version": "3.6.0", 792 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", 793 | "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", 794 | "dev": true, 795 | "dependencies": { 796 | "picomatch": "^2.2.1" 797 | }, 798 | "engines": { 799 | "node": ">=8.10.0" 800 | } 801 | }, 802 | "node_modules/resolve": { 803 | "version": "1.22.1", 804 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", 805 | "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", 806 | "dev": true, 807 | "dependencies": { 808 | "is-core-module": "^2.9.0", 809 | "path-parse": "^1.0.7", 810 | "supports-preserve-symlinks-flag": "^1.0.0" 811 | }, 812 | "bin": { 813 | "resolve": "bin/resolve" 814 | }, 815 | "funding": { 816 | "url": "https://github.com/sponsors/ljharb" 817 | } 818 | }, 819 | "node_modules/rollup": { 820 | "version": "3.7.0", 821 | "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.7.0.tgz", 822 | "integrity": "sha512-FIJe0msW9P7L9BTfvaJyvn1U1BVCNTL3w8O+PKIrCyiMLg+rIUGb4MbcgVZ10Lnm1uWXOTOWRNARjfXC1+M12Q==", 823 | "dev": true, 824 | "bin": { 825 | "rollup": "dist/bin/rollup" 826 | }, 827 | "engines": { 828 | "node": ">=14.18.0", 829 | "npm": ">=8.0.0" 830 | }, 831 | "optionalDependencies": { 832 | "fsevents": "~2.3.2" 833 | } 834 | }, 835 | "node_modules/source-map": { 836 | "version": "0.6.1", 837 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 838 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 839 | "engines": { 840 | "node": ">=0.10.0" 841 | } 842 | }, 843 | "node_modules/source-map-js": { 844 | "version": "1.0.2", 845 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", 846 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", 847 | "engines": { 848 | "node": ">=0.10.0" 849 | } 850 | }, 851 | "node_modules/sourcemap-codec": { 852 | "version": "1.4.8", 853 | "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", 854 | "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", 855 | "deprecated": "Please use @jridgewell/sourcemap-codec instead" 856 | }, 857 | "node_modules/supports-preserve-symlinks-flag": { 858 | "version": "1.0.0", 859 | "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", 860 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", 861 | "dev": true, 862 | "engines": { 863 | "node": ">= 0.4" 864 | }, 865 | "funding": { 866 | "url": "https://github.com/sponsors/ljharb" 867 | } 868 | }, 869 | "node_modules/to-regex-range": { 870 | "version": "5.0.1", 871 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 872 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 873 | "dev": true, 874 | "dependencies": { 875 | "is-number": "^7.0.0" 876 | }, 877 | "engines": { 878 | "node": ">=8.0" 879 | } 880 | }, 881 | "node_modules/vite": { 882 | "version": "4.0.4", 883 | "resolved": "https://registry.npmjs.org/vite/-/vite-4.0.4.tgz", 884 | "integrity": "sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==", 885 | "dev": true, 886 | "dependencies": { 887 | "esbuild": "^0.16.3", 888 | "postcss": "^8.4.20", 889 | "resolve": "^1.22.1", 890 | "rollup": "^3.7.0" 891 | }, 892 | "bin": { 893 | "vite": "bin/vite.js" 894 | }, 895 | "engines": { 896 | "node": "^14.18.0 || >=16.0.0" 897 | }, 898 | "optionalDependencies": { 899 | "fsevents": "~2.3.2" 900 | }, 901 | "peerDependencies": { 902 | "@types/node": ">= 14", 903 | "less": "*", 904 | "sass": "*", 905 | "stylus": "*", 906 | "sugarss": "*", 907 | "terser": "^5.4.0" 908 | }, 909 | "peerDependenciesMeta": { 910 | "@types/node": { 911 | "optional": true 912 | }, 913 | "less": { 914 | "optional": true 915 | }, 916 | "sass": { 917 | "optional": true 918 | }, 919 | "stylus": { 920 | "optional": true 921 | }, 922 | "sugarss": { 923 | "optional": true 924 | }, 925 | "terser": { 926 | "optional": true 927 | } 928 | } 929 | }, 930 | "node_modules/vite-plugin-live-reload": { 931 | "version": "3.0.1", 932 | "resolved": "https://registry.npmjs.org/vite-plugin-live-reload/-/vite-plugin-live-reload-3.0.1.tgz", 933 | "integrity": "sha512-ERZTRHnU50R7nRfKVMCNrkSyXIcxKv87INWmPPmnOF3fcaOKFbLQ5zdO6hfPb6bl03fmENtMByfz0OiEAsFF+g==", 934 | "dev": true, 935 | "dependencies": { 936 | "chokidar": "^3.5.0", 937 | "picocolors": "^1.0.0" 938 | } 939 | }, 940 | "node_modules/vue": { 941 | "version": "3.2.45", 942 | "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.45.tgz", 943 | "integrity": "sha512-9Nx/Mg2b2xWlXykmCwiTUCWHbWIj53bnkizBxKai1g61f2Xit700A1ljowpTIM11e3uipOeiPcSqnmBg6gyiaA==", 944 | "dependencies": { 945 | "@vue/compiler-dom": "3.2.45", 946 | "@vue/compiler-sfc": "3.2.45", 947 | "@vue/runtime-dom": "3.2.45", 948 | "@vue/server-renderer": "3.2.45", 949 | "@vue/shared": "3.2.45" 950 | } 951 | } 952 | }, 953 | "dependencies": { 954 | "@babel/parser": { 955 | "version": "7.18.8", 956 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.8.tgz", 957 | "integrity": "sha512-RSKRfYX20dyH+elbJK2uqAkVyucL+xXzhqlMD5/ZXx+dAAwpyB7HsvnHe/ZUGOF+xLr5Wx9/JoXVTj6BQE2/oA==" 958 | }, 959 | "@esbuild/android-arm": { 960 | "version": "0.16.3", 961 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.3.tgz", 962 | "integrity": "sha512-mueuEoh+s1eRbSJqq9KNBQwI4QhQV6sRXIfTyLXSHGMpyew61rOK4qY21uKbXl1iBoMb0AdL1deWFCQVlN2qHA==", 963 | "dev": true, 964 | "optional": true 965 | }, 966 | "@esbuild/android-arm64": { 967 | "version": "0.16.3", 968 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.3.tgz", 969 | "integrity": "sha512-RolFVeinkeraDvN/OoRf1F/lP0KUfGNb5jxy/vkIMeRRChkrX/HTYN6TYZosRJs3a1+8wqpxAo5PI5hFmxyPRg==", 970 | "dev": true, 971 | "optional": true 972 | }, 973 | "@esbuild/android-x64": { 974 | "version": "0.16.3", 975 | "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.3.tgz", 976 | "integrity": "sha512-SFpTUcIT1bIJuCCBMCQWq1bL2gPTjWoLZdjmIhjdcQHaUfV41OQfho6Ici5uvvkMmZRXIUGpM3GxysP/EU7ifQ==", 977 | "dev": true, 978 | "optional": true 979 | }, 980 | "@esbuild/darwin-arm64": { 981 | "version": "0.16.3", 982 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.3.tgz", 983 | "integrity": "sha512-DO8WykMyB+N9mIDfI/Hug70Dk1KipavlGAecxS3jDUwAbTpDXj0Lcwzw9svkhxfpCagDmpaTMgxWK8/C/XcXvw==", 984 | "dev": true, 985 | "optional": true 986 | }, 987 | "@esbuild/darwin-x64": { 988 | "version": "0.16.3", 989 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.3.tgz", 990 | "integrity": "sha512-uEqZQ2omc6BvWqdCiyZ5+XmxuHEi1SPzpVxXCSSV2+Sh7sbXbpeNhHIeFrIpRjAs0lI1FmA1iIOxFozKBhKgRQ==", 991 | "dev": true, 992 | "optional": true 993 | }, 994 | "@esbuild/freebsd-arm64": { 995 | "version": "0.16.3", 996 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.3.tgz", 997 | "integrity": "sha512-nJansp3sSXakNkOD5i5mIz2Is/HjzIhFs49b1tjrPrpCmwgBmH9SSzhC/Z1UqlkivqMYkhfPwMw1dGFUuwmXhw==", 998 | "dev": true, 999 | "optional": true 1000 | }, 1001 | "@esbuild/freebsd-x64": { 1002 | "version": "0.16.3", 1003 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.3.tgz", 1004 | "integrity": "sha512-TfoDzLw+QHfc4a8aKtGSQ96Wa+6eimljjkq9HKR0rHlU83vw8aldMOUSJTUDxbcUdcgnJzPaX8/vGWm7vyV7ug==", 1005 | "dev": true, 1006 | "optional": true 1007 | }, 1008 | "@esbuild/linux-arm": { 1009 | "version": "0.16.3", 1010 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.3.tgz", 1011 | "integrity": "sha512-VwswmSYwVAAq6LysV59Fyqk3UIjbhuc6wb3vEcJ7HEJUtFuLK9uXWuFoH1lulEbE4+5GjtHi3MHX+w1gNHdOWQ==", 1012 | "dev": true, 1013 | "optional": true 1014 | }, 1015 | "@esbuild/linux-arm64": { 1016 | "version": "0.16.3", 1017 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.3.tgz", 1018 | "integrity": "sha512-7I3RlsnxEFCHVZNBLb2w7unamgZ5sVwO0/ikE2GaYvYuUQs9Qte/w7TqWcXHtCwxvZx/2+F97ndiUQAWs47ZfQ==", 1019 | "dev": true, 1020 | "optional": true 1021 | }, 1022 | "@esbuild/linux-ia32": { 1023 | "version": "0.16.3", 1024 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.3.tgz", 1025 | "integrity": "sha512-X8FDDxM9cqda2rJE+iblQhIMYY49LfvW4kaEjoFbTTQ4Go8G96Smj2w3BRTwA8IHGoi9dPOPGAX63dhuv19UqA==", 1026 | "dev": true, 1027 | "optional": true 1028 | }, 1029 | "@esbuild/linux-loong64": { 1030 | "version": "0.16.3", 1031 | "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.3.tgz", 1032 | "integrity": "sha512-hIbeejCOyO0X9ujfIIOKjBjNAs9XD/YdJ9JXAy1lHA+8UXuOqbFe4ErMCqMr8dhlMGBuvcQYGF7+kO7waj2KHw==", 1033 | "dev": true, 1034 | "optional": true 1035 | }, 1036 | "@esbuild/linux-mips64el": { 1037 | "version": "0.16.3", 1038 | "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.3.tgz", 1039 | "integrity": "sha512-znFRzICT/V8VZQMt6rjb21MtAVJv/3dmKRMlohlShrbVXdBuOdDrGb+C2cZGQAR8RFyRe7HS6klmHq103WpmVw==", 1040 | "dev": true, 1041 | "optional": true 1042 | }, 1043 | "@esbuild/linux-ppc64": { 1044 | "version": "0.16.3", 1045 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.3.tgz", 1046 | "integrity": "sha512-EV7LuEybxhXrVTDpbqWF2yehYRNz5e5p+u3oQUS2+ZFpknyi1NXxr8URk4ykR8Efm7iu04//4sBg249yNOwy5Q==", 1047 | "dev": true, 1048 | "optional": true 1049 | }, 1050 | "@esbuild/linux-riscv64": { 1051 | "version": "0.16.3", 1052 | "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.3.tgz", 1053 | "integrity": "sha512-uDxqFOcLzFIJ+r/pkTTSE9lsCEaV/Y6rMlQjUI9BkzASEChYL/aSQjZjchtEmdnVxDKETnUAmsaZ4pqK1eE5BQ==", 1054 | "dev": true, 1055 | "optional": true 1056 | }, 1057 | "@esbuild/linux-s390x": { 1058 | "version": "0.16.3", 1059 | "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.3.tgz", 1060 | "integrity": "sha512-NbeREhzSxYwFhnCAQOQZmajsPYtX71Ufej3IQ8W2Gxskfz9DK58ENEju4SbpIj48VenktRASC52N5Fhyf/aliQ==", 1061 | "dev": true, 1062 | "optional": true 1063 | }, 1064 | "@esbuild/linux-x64": { 1065 | "version": "0.16.3", 1066 | "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.3.tgz", 1067 | "integrity": "sha512-SDiG0nCixYO9JgpehoKgScwic7vXXndfasjnD5DLbp1xltANzqZ425l7LSdHynt19UWOcDjG9wJJzSElsPvk0w==", 1068 | "dev": true, 1069 | "optional": true 1070 | }, 1071 | "@esbuild/netbsd-x64": { 1072 | "version": "0.16.3", 1073 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.3.tgz", 1074 | "integrity": "sha512-AzbsJqiHEq1I/tUvOfAzCY15h4/7Ivp3ff/o1GpP16n48JMNAtbW0qui2WCgoIZArEHD0SUQ95gvR0oSO7ZbdA==", 1075 | "dev": true, 1076 | "optional": true 1077 | }, 1078 | "@esbuild/openbsd-x64": { 1079 | "version": "0.16.3", 1080 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.3.tgz", 1081 | "integrity": "sha512-gSABi8qHl8k3Cbi/4toAzHiykuBuWLZs43JomTcXkjMZVkp0gj3gg9mO+9HJW/8GB5H89RX/V0QP4JGL7YEEVg==", 1082 | "dev": true, 1083 | "optional": true 1084 | }, 1085 | "@esbuild/sunos-x64": { 1086 | "version": "0.16.3", 1087 | "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.3.tgz", 1088 | "integrity": "sha512-SF9Kch5Ete4reovvRO6yNjMxrvlfT0F0Flm+NPoUw5Z4Q3r1d23LFTgaLwm3Cp0iGbrU/MoUI+ZqwCv5XJijCw==", 1089 | "dev": true, 1090 | "optional": true 1091 | }, 1092 | "@esbuild/win32-arm64": { 1093 | "version": "0.16.3", 1094 | "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.3.tgz", 1095 | "integrity": "sha512-u5aBonZIyGopAZyOnoPAA6fGsDeHByZ9CnEzyML9NqntK6D/xl5jteZUKm/p6nD09+v3pTM6TuUIqSPcChk5gg==", 1096 | "dev": true, 1097 | "optional": true 1098 | }, 1099 | "@esbuild/win32-ia32": { 1100 | "version": "0.16.3", 1101 | "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.3.tgz", 1102 | "integrity": "sha512-GlgVq1WpvOEhNioh74TKelwla9KDuAaLZrdxuuUgsP2vayxeLgVc+rbpIv0IYF4+tlIzq2vRhofV+KGLD+37EQ==", 1103 | "dev": true, 1104 | "optional": true 1105 | }, 1106 | "@esbuild/win32-x64": { 1107 | "version": "0.16.3", 1108 | "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.3.tgz", 1109 | "integrity": "sha512-5/JuTd8OWW8UzEtyf19fbrtMJENza+C9JoPIkvItgTBQ1FO2ZLvjbPO6Xs54vk0s5JB5QsfieUEshRQfu7ZHow==", 1110 | "dev": true, 1111 | "optional": true 1112 | }, 1113 | "@vitejs/plugin-vue": { 1114 | "version": "4.0.0", 1115 | "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.0.0.tgz", 1116 | "integrity": "sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA==", 1117 | "dev": true, 1118 | "requires": {} 1119 | }, 1120 | "@vue/compiler-core": { 1121 | "version": "3.2.45", 1122 | "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.45.tgz", 1123 | "integrity": "sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==", 1124 | "requires": { 1125 | "@babel/parser": "^7.16.4", 1126 | "@vue/shared": "3.2.45", 1127 | "estree-walker": "^2.0.2", 1128 | "source-map": "^0.6.1" 1129 | } 1130 | }, 1131 | "@vue/compiler-dom": { 1132 | "version": "3.2.45", 1133 | "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz", 1134 | "integrity": "sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==", 1135 | "requires": { 1136 | "@vue/compiler-core": "3.2.45", 1137 | "@vue/shared": "3.2.45" 1138 | } 1139 | }, 1140 | "@vue/compiler-sfc": { 1141 | "version": "3.2.45", 1142 | "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz", 1143 | "integrity": "sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==", 1144 | "requires": { 1145 | "@babel/parser": "^7.16.4", 1146 | "@vue/compiler-core": "3.2.45", 1147 | "@vue/compiler-dom": "3.2.45", 1148 | "@vue/compiler-ssr": "3.2.45", 1149 | "@vue/reactivity-transform": "3.2.45", 1150 | "@vue/shared": "3.2.45", 1151 | "estree-walker": "^2.0.2", 1152 | "magic-string": "^0.25.7", 1153 | "postcss": "^8.1.10", 1154 | "source-map": "^0.6.1" 1155 | } 1156 | }, 1157 | "@vue/compiler-ssr": { 1158 | "version": "3.2.45", 1159 | "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz", 1160 | "integrity": "sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==", 1161 | "requires": { 1162 | "@vue/compiler-dom": "3.2.45", 1163 | "@vue/shared": "3.2.45" 1164 | } 1165 | }, 1166 | "@vue/reactivity": { 1167 | "version": "3.2.45", 1168 | "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.45.tgz", 1169 | "integrity": "sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A==", 1170 | "requires": { 1171 | "@vue/shared": "3.2.45" 1172 | } 1173 | }, 1174 | "@vue/reactivity-transform": { 1175 | "version": "3.2.45", 1176 | "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz", 1177 | "integrity": "sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==", 1178 | "requires": { 1179 | "@babel/parser": "^7.16.4", 1180 | "@vue/compiler-core": "3.2.45", 1181 | "@vue/shared": "3.2.45", 1182 | "estree-walker": "^2.0.2", 1183 | "magic-string": "^0.25.7" 1184 | } 1185 | }, 1186 | "@vue/runtime-core": { 1187 | "version": "3.2.45", 1188 | "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.45.tgz", 1189 | "integrity": "sha512-gzJiTA3f74cgARptqzYswmoQx0fIA+gGYBfokYVhF8YSXjWTUA2SngRzZRku2HbGbjzB6LBYSbKGIaK8IW+s0A==", 1190 | "requires": { 1191 | "@vue/reactivity": "3.2.45", 1192 | "@vue/shared": "3.2.45" 1193 | } 1194 | }, 1195 | "@vue/runtime-dom": { 1196 | "version": "3.2.45", 1197 | "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.45.tgz", 1198 | "integrity": "sha512-cy88YpfP5Ue2bDBbj75Cb4bIEZUMM/mAkDMfqDTpUYVgTf/kuQ2VQ8LebuZ8k6EudgH8pYhsGWHlY0lcxlvTwA==", 1199 | "requires": { 1200 | "@vue/runtime-core": "3.2.45", 1201 | "@vue/shared": "3.2.45", 1202 | "csstype": "^2.6.8" 1203 | } 1204 | }, 1205 | "@vue/server-renderer": { 1206 | "version": "3.2.45", 1207 | "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.45.tgz", 1208 | "integrity": "sha512-ebiMq7q24WBU1D6uhPK//2OTR1iRIyxjF5iVq/1a5I1SDMDyDu4Ts6fJaMnjrvD3MqnaiFkKQj+LKAgz5WIK3g==", 1209 | "requires": { 1210 | "@vue/compiler-ssr": "3.2.45", 1211 | "@vue/shared": "3.2.45" 1212 | } 1213 | }, 1214 | "@vue/shared": { 1215 | "version": "3.2.45", 1216 | "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.45.tgz", 1217 | "integrity": "sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==" 1218 | }, 1219 | "anymatch": { 1220 | "version": "3.1.2", 1221 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", 1222 | "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", 1223 | "dev": true, 1224 | "requires": { 1225 | "normalize-path": "^3.0.0", 1226 | "picomatch": "^2.0.4" 1227 | } 1228 | }, 1229 | "binary-extensions": { 1230 | "version": "2.2.0", 1231 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", 1232 | "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", 1233 | "dev": true 1234 | }, 1235 | "braces": { 1236 | "version": "3.0.2", 1237 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 1238 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 1239 | "dev": true, 1240 | "requires": { 1241 | "fill-range": "^7.0.1" 1242 | } 1243 | }, 1244 | "chokidar": { 1245 | "version": "3.5.3", 1246 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", 1247 | "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", 1248 | "dev": true, 1249 | "requires": { 1250 | "anymatch": "~3.1.2", 1251 | "braces": "~3.0.2", 1252 | "fsevents": "~2.3.2", 1253 | "glob-parent": "~5.1.2", 1254 | "is-binary-path": "~2.1.0", 1255 | "is-glob": "~4.0.1", 1256 | "normalize-path": "~3.0.0", 1257 | "readdirp": "~3.6.0" 1258 | } 1259 | }, 1260 | "csstype": { 1261 | "version": "2.6.21", 1262 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.21.tgz", 1263 | "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==" 1264 | }, 1265 | "esbuild": { 1266 | "version": "0.16.3", 1267 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.3.tgz", 1268 | "integrity": "sha512-71f7EjPWTiSguen8X/kxEpkAS7BFHwtQKisCDDV3Y4GLGWBaoSCyD5uXkaUew6JDzA9FEN1W23mdnSwW9kqCeg==", 1269 | "dev": true, 1270 | "requires": { 1271 | "@esbuild/android-arm": "0.16.3", 1272 | "@esbuild/android-arm64": "0.16.3", 1273 | "@esbuild/android-x64": "0.16.3", 1274 | "@esbuild/darwin-arm64": "0.16.3", 1275 | "@esbuild/darwin-x64": "0.16.3", 1276 | "@esbuild/freebsd-arm64": "0.16.3", 1277 | "@esbuild/freebsd-x64": "0.16.3", 1278 | "@esbuild/linux-arm": "0.16.3", 1279 | "@esbuild/linux-arm64": "0.16.3", 1280 | "@esbuild/linux-ia32": "0.16.3", 1281 | "@esbuild/linux-loong64": "0.16.3", 1282 | "@esbuild/linux-mips64el": "0.16.3", 1283 | "@esbuild/linux-ppc64": "0.16.3", 1284 | "@esbuild/linux-riscv64": "0.16.3", 1285 | "@esbuild/linux-s390x": "0.16.3", 1286 | "@esbuild/linux-x64": "0.16.3", 1287 | "@esbuild/netbsd-x64": "0.16.3", 1288 | "@esbuild/openbsd-x64": "0.16.3", 1289 | "@esbuild/sunos-x64": "0.16.3", 1290 | "@esbuild/win32-arm64": "0.16.3", 1291 | "@esbuild/win32-ia32": "0.16.3", 1292 | "@esbuild/win32-x64": "0.16.3" 1293 | } 1294 | }, 1295 | "estree-walker": { 1296 | "version": "2.0.2", 1297 | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", 1298 | "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" 1299 | }, 1300 | "fill-range": { 1301 | "version": "7.0.1", 1302 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 1303 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 1304 | "dev": true, 1305 | "requires": { 1306 | "to-regex-range": "^5.0.1" 1307 | } 1308 | }, 1309 | "fsevents": { 1310 | "version": "2.3.2", 1311 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", 1312 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", 1313 | "dev": true, 1314 | "optional": true 1315 | }, 1316 | "function-bind": { 1317 | "version": "1.1.1", 1318 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 1319 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", 1320 | "dev": true 1321 | }, 1322 | "glob-parent": { 1323 | "version": "5.1.2", 1324 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 1325 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 1326 | "dev": true, 1327 | "requires": { 1328 | "is-glob": "^4.0.1" 1329 | } 1330 | }, 1331 | "has": { 1332 | "version": "1.0.3", 1333 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 1334 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 1335 | "dev": true, 1336 | "requires": { 1337 | "function-bind": "^1.1.1" 1338 | } 1339 | }, 1340 | "is-binary-path": { 1341 | "version": "2.1.0", 1342 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 1343 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 1344 | "dev": true, 1345 | "requires": { 1346 | "binary-extensions": "^2.0.0" 1347 | } 1348 | }, 1349 | "is-core-module": { 1350 | "version": "2.11.0", 1351 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", 1352 | "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", 1353 | "dev": true, 1354 | "requires": { 1355 | "has": "^1.0.3" 1356 | } 1357 | }, 1358 | "is-extglob": { 1359 | "version": "2.1.1", 1360 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 1361 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 1362 | "dev": true 1363 | }, 1364 | "is-glob": { 1365 | "version": "4.0.3", 1366 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 1367 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 1368 | "dev": true, 1369 | "requires": { 1370 | "is-extglob": "^2.1.1" 1371 | } 1372 | }, 1373 | "is-number": { 1374 | "version": "7.0.0", 1375 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 1376 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 1377 | "dev": true 1378 | }, 1379 | "magic-string": { 1380 | "version": "0.25.9", 1381 | "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", 1382 | "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", 1383 | "requires": { 1384 | "sourcemap-codec": "^1.4.8" 1385 | } 1386 | }, 1387 | "nanoid": { 1388 | "version": "3.3.4", 1389 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", 1390 | "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" 1391 | }, 1392 | "normalize-path": { 1393 | "version": "3.0.0", 1394 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 1395 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 1396 | "dev": true 1397 | }, 1398 | "path-parse": { 1399 | "version": "1.0.7", 1400 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", 1401 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", 1402 | "dev": true 1403 | }, 1404 | "picocolors": { 1405 | "version": "1.0.0", 1406 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", 1407 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" 1408 | }, 1409 | "picomatch": { 1410 | "version": "2.3.1", 1411 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", 1412 | "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", 1413 | "dev": true 1414 | }, 1415 | "postcss": { 1416 | "version": "8.4.21", 1417 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", 1418 | "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", 1419 | "requires": { 1420 | "nanoid": "^3.3.4", 1421 | "picocolors": "^1.0.0", 1422 | "source-map-js": "^1.0.2" 1423 | } 1424 | }, 1425 | "readdirp": { 1426 | "version": "3.6.0", 1427 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", 1428 | "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", 1429 | "dev": true, 1430 | "requires": { 1431 | "picomatch": "^2.2.1" 1432 | } 1433 | }, 1434 | "resolve": { 1435 | "version": "1.22.1", 1436 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", 1437 | "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", 1438 | "dev": true, 1439 | "requires": { 1440 | "is-core-module": "^2.9.0", 1441 | "path-parse": "^1.0.7", 1442 | "supports-preserve-symlinks-flag": "^1.0.0" 1443 | } 1444 | }, 1445 | "rollup": { 1446 | "version": "3.7.0", 1447 | "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.7.0.tgz", 1448 | "integrity": "sha512-FIJe0msW9P7L9BTfvaJyvn1U1BVCNTL3w8O+PKIrCyiMLg+rIUGb4MbcgVZ10Lnm1uWXOTOWRNARjfXC1+M12Q==", 1449 | "dev": true, 1450 | "requires": { 1451 | "fsevents": "~2.3.2" 1452 | } 1453 | }, 1454 | "source-map": { 1455 | "version": "0.6.1", 1456 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 1457 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" 1458 | }, 1459 | "source-map-js": { 1460 | "version": "1.0.2", 1461 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", 1462 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" 1463 | }, 1464 | "sourcemap-codec": { 1465 | "version": "1.4.8", 1466 | "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", 1467 | "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" 1468 | }, 1469 | "supports-preserve-symlinks-flag": { 1470 | "version": "1.0.0", 1471 | "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", 1472 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", 1473 | "dev": true 1474 | }, 1475 | "to-regex-range": { 1476 | "version": "5.0.1", 1477 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 1478 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 1479 | "dev": true, 1480 | "requires": { 1481 | "is-number": "^7.0.0" 1482 | } 1483 | }, 1484 | "vite": { 1485 | "version": "4.0.4", 1486 | "resolved": "https://registry.npmjs.org/vite/-/vite-4.0.4.tgz", 1487 | "integrity": "sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==", 1488 | "dev": true, 1489 | "requires": { 1490 | "esbuild": "^0.16.3", 1491 | "fsevents": "~2.3.2", 1492 | "postcss": "^8.4.20", 1493 | "resolve": "^1.22.1", 1494 | "rollup": "^3.7.0" 1495 | } 1496 | }, 1497 | "vite-plugin-live-reload": { 1498 | "version": "3.0.1", 1499 | "resolved": "https://registry.npmjs.org/vite-plugin-live-reload/-/vite-plugin-live-reload-3.0.1.tgz", 1500 | "integrity": "sha512-ERZTRHnU50R7nRfKVMCNrkSyXIcxKv87INWmPPmnOF3fcaOKFbLQ5zdO6hfPb6bl03fmENtMByfz0OiEAsFF+g==", 1501 | "dev": true, 1502 | "requires": { 1503 | "chokidar": "^3.5.0", 1504 | "picocolors": "^1.0.0" 1505 | } 1506 | }, 1507 | "vue": { 1508 | "version": "3.2.45", 1509 | "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.45.tgz", 1510 | "integrity": "sha512-9Nx/Mg2b2xWlXykmCwiTUCWHbWIj53bnkizBxKai1g61f2Xit700A1ljowpTIM11e3uipOeiPcSqnmBg6gyiaA==", 1511 | "requires": { 1512 | "@vue/compiler-dom": "3.2.45", 1513 | "@vue/compiler-sfc": "3.2.45", 1514 | "@vue/runtime-dom": "3.2.45", 1515 | "@vue/server-renderer": "3.2.45", 1516 | "@vue/shared": "3.2.45" 1517 | } 1518 | } 1519 | } 1520 | } 1521 | -------------------------------------------------------------------------------- /vite/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "my-php-project", 3 | "version": "0.0.0", 4 | "scripts": { 5 | "dev": "APP_ENV=development vite", 6 | "build": "vite build" 7 | }, 8 | "dependencies": { 9 | "vue": "^3.2.45" 10 | }, 11 | "devDependencies": { 12 | "@vitejs/plugin-vue": "^4.0.0", 13 | "@vue/compiler-sfc": "^3.2.45", 14 | "vite": "^4.0.4", 15 | "vite-plugin-live-reload": "^3.0.1" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /vite/src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrothauer/vite-php-setup/b6c160bc39641b74b37e62a888fe645ba72e788f/vite/src/assets/logo.png -------------------------------------------------------------------------------- /vite/src/components/HelloWorld.vue: -------------------------------------------------------------------------------- 1 | 22 | 23 | 32 | 33 | 38 | -------------------------------------------------------------------------------- /vite/src/main.js: -------------------------------------------------------------------------------- 1 | // https://vitejs.dev/config/#build-polyfillmodulepreload 2 | import 'vite/modulepreload-polyfill' 3 | 4 | // Styles 5 | import './styles' 6 | 7 | // Vue 8 | import { createApp } from 'vue' 9 | 10 | // If you are build a SPA with a single
entry you would: 11 | // import App from './App.vue' 12 | // createApp(App).mount('#app') 13 | 14 | // The example here is to have multiple Vue apps sprinkled throughout your page 15 | // So we would instantiate any known components by their own 16 | 17 | 18 | // First let's load all components that should be available to in-browser template compilation 19 | 20 | // Example of how to import **all** components 21 | const modules = import.meta.glob('./components/*.vue', { eager: true }) 22 | const components = {} 23 | for (const path in modules) { 24 | components[modules[path].default.__name] = modules[path].default 25 | } 26 | 27 | // if importing all is too much you can always do it manually 28 | // import HelloWorld from './components/HelloWorld.vue' 29 | // const components = { 30 | // HelloWorld, 31 | // } 32 | 33 | // instantiate the Vue apps 34 | // Note our lookup is a wrapping div with .vue-app class 35 | 36 | for (const el of document.getElementsByClassName('vue-app')) { 37 | createApp({ 38 | template: el.innerHTML, 39 | components 40 | }).mount(el) 41 | } 42 | -------------------------------------------------------------------------------- /vite/src/styles/example.css: -------------------------------------------------------------------------------- 1 | * { 2 | margin: 0; 3 | padding: 0; 4 | } 5 | body { 6 | font-family: sans-serif; 7 | text-align: center; 8 | color: #000; 9 | } 10 | 11 | button { 12 | border: 0; 13 | margin: 20px 0; 14 | background-color: black; 15 | color: white; 16 | font-size: 14px; 17 | padding: 10px; 18 | cursor: pointer; 19 | } 20 | 21 | .message { 22 | color: #bbb; 23 | padding: 20px; 24 | margin: 20px 0; 25 | font-size: 14px; 26 | background-color: #eee; 27 | } 28 | -------------------------------------------------------------------------------- /vite/src/styles/index.js: -------------------------------------------------------------------------------- 1 | // here you would import all your css parts 2 | // import './vars.css' 3 | // import './base/reset.css' 4 | // etc 5 | 6 | import './example.css' 7 | -------------------------------------------------------------------------------- /vite/vite.config.js: -------------------------------------------------------------------------------- 1 | // View your website at your own local server 2 | // for example http://vite-php-setup.test 3 | 4 | // http://localhost:5133 is serving Vite on development 5 | // but accessing it directly will be empty 6 | // TIP: consider changing the port for each project, see below 7 | 8 | // IMPORTANT image urls in CSS works fine 9 | // BUT you need to create a symlink on dev server to map this folder during dev: 10 | // ln -s {path_to_project_source}/src/assets {path_to_public_html}/assets 11 | // on production everything will work just fine 12 | // (this happens because our Vite code is outside the server public access, 13 | // if it where, we could use https://vitejs.dev/config/server-options.html#server-origin) 14 | 15 | import { defineConfig, splitVendorChunkPlugin } from 'vite' 16 | import vue from '@vitejs/plugin-vue' 17 | import liveReload from 'vite-plugin-live-reload' 18 | import path from 'path' 19 | 20 | // https://vitejs.dev/config/ 21 | export default defineConfig({ 22 | 23 | plugins: [ 24 | vue(), 25 | liveReload([ 26 | // edit live reload paths according to your source code 27 | // for example: 28 | __dirname + '/(app|config|views)/**/*.php', 29 | // using this for our example: 30 | __dirname + '/../public/*.php', 31 | ]), 32 | splitVendorChunkPlugin(), 33 | ], 34 | 35 | // config 36 | root: 'src', 37 | base: process.env.APP_ENV === 'development' 38 | ? '/' 39 | : '/dist/', 40 | 41 | build: { 42 | // output dir for production build 43 | outDir: '../../public/dist', 44 | emptyOutDir: true, 45 | 46 | // emit manifest so PHP can find the hashed files 47 | manifest: true, 48 | 49 | // our entry 50 | rollupOptions: { 51 | input: path.resolve(__dirname, 'src/main.js'), 52 | } 53 | }, 54 | 55 | server: { 56 | // we need a strict port to match on PHP side 57 | // change freely, but update on PHP to match the same port 58 | // tip: choose a different port per project to run them at the same time 59 | strictPort: true, 60 | port: 5133, 61 | host: true 62 | }, 63 | 64 | // required for in-browser template compilation 65 | // https://vuejs.org/guide/scaling-up/tooling.html#note-on-in-browser-template-compilation 66 | resolve: { 67 | alias: { 68 | vue: 'vue/dist/vue.esm-bundler.js' 69 | } 70 | } 71 | }) 72 | --------------------------------------------------------------------------------