commit 7272a8ec674cf3ab0a5d98cc9845c29c69f1c450 Author: Dmitrii Kollerov Date: Sun Sep 27 16:53:51 2026 +0700 init diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..101df97 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +bin/ +node_modules/ +obj/ \ No newline at end of file diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..2ba986f --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,15 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "type": "chrome", + "request": "launch", + "name": "Launch Chrome against localhost", + "url": "http://localhost:8080", + "webRoot": "${workspaceFolder}" + } + ] +} \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..dbe3732 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,12 @@ +FROM node:18-alpine as install +WORKDIR /app + +COPY ./frontend/package*.json ./ +RUN ls -la +RUN npm install + +FROM install as run +COPY ./frontend . +RUN ["npm", "run", "build"] + +ENTRYPOINT ["npm", "run", "production"] \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..79b7a6a --- /dev/null +++ b/README.md @@ -0,0 +1,4 @@ +# frontend + +Run: +$ npm run dev \ No newline at end of file diff --git a/dist/assets/Buran USSR-4a5dccb7.ttf b/dist/assets/Buran USSR-4a5dccb7.ttf new file mode 100644 index 0000000..de4693c Binary files /dev/null and b/dist/assets/Buran USSR-4a5dccb7.ttf differ diff --git a/dist/assets/MusticaPro-SemiBold-7bb0a7cb.otf b/dist/assets/MusticaPro-SemiBold-7bb0a7cb.otf new file mode 100644 index 0000000..710e7d5 Binary files /dev/null and b/dist/assets/MusticaPro-SemiBold-7bb0a7cb.otf differ diff --git a/dist/assets/index-2570ef72.css b/dist/assets/index-2570ef72.css new file mode 100644 index 0000000..606a686 --- /dev/null +++ b/dist/assets/index-2570ef72.css @@ -0,0 +1 @@ +@font-face{font-family:Buran;src:local("Buran USSR"),url(/assets/Buran\ USSR-4a5dccb7.ttf) format("truetype")}@font-face{font-family:Mustica;src:local("MusticaPro-SemiBold"),url(/assets/MusticaPro-SemiBold-7bb0a7cb.otf) format("opentype")}html{height:100%;color:#fff;font-family:Mustica;font-size:14px}h1,h2,h3,h5,h6{font-family:Buran,Arial}h1,h2{text-align:center}h1{font-size:30px}h2{font-size:28px}h4{font-size:26px}h5{font-size:22px}h6{font-size:20px}hr{color:#fff}body{margin:0;padding:0;height:100%;background-color:#826c55}a{color:#5e4226}a:visited{color:#2f2014}div#app{min-height:100%;display:flex;flex-direction:column;height:100%}header{width:100%;height:40px;background-color:#5e4226;font-family:Buran;font-size:24px}header .left-menu,header .right-menu{width:calc((100% - 40px)/2);display:inline-flex}header .right-menu{flex-direction:row-reverse}header .middle-menu{width:40px;display:inline-block}header a,header a:visited{color:#fff;text-decoration:none;margin-left:7px;margin-right:7px;text-shadow:0px 0px 6px #2f2014}header a.router-link-active{text-shadow:0px 0px 6px white;color:#2f2014}.column{margin-left:150px;margin-right:150px}.background{background-color:#baa48f;padding-top:2px;padding-bottom:10px;margin-left:5px;margin-right:5px;color:#2f2014}footer{display:flex;padding-top:5px;padding-bottom:5px;margin-top:auto;align-self:flex-end;width:100%;height:min-content;background-color:#5e4226}.addbtn[data-v-3a1e7e07]{font-size:24px}thead[data-v-3a1e7e07]{background-color:#2f2014;color:#fff}tr[data-v-3a1e7e07],td[data-v-3a1e7e07]{border:dotted 1px #2f2014}.admin-dashboard[data-v-e19aee3b]{margin:0 auto;padding:15px}button.tab[data-v-e19aee3b]{background-color:#baa48f;border:none;padding:4px;cursor:pointer}button.tab.active[data-v-e19aee3b]{border-top:solid 2px #2f2014;font-weight:700}.shown-container[data-v-e19aee3b]{background-color:#baa48f;color:#2f2014;padding:5px}h2[data-v-aad8fcac]{color:#2f2014}.list[data-v-aad8fcac]{display:flex;flex-direction:row}.list-container[data-v-aad8fcac]{margin-left:-5px;margin-right:-5px}.list-elem[data-v-aad8fcac]{width:25%;padding:2px 4px 2px 2px}.label[data-v-d6ae499b],.input[data-v-d6ae499b]{display:inline-block}.label[data-v-d6ae499b]{margin-right:5px;min-width:39%}.input[data-v-d6ae499b]{width:60%}.input>input[data-v-d6ae499b]{width:100%}.editor-line[data-v-d6ae499b]{margin-top:15px;margin-bottom:10px;width:100%;border-top:dashed 1px #2f2014}.label[data-v-d1d12cd2],.input[data-v-d1d12cd2]{display:inline-block}.label[data-v-d1d12cd2]{margin-right:5px;min-width:39%;vertical-align:top}.input[data-v-d1d12cd2]{width:60%}.input>textarea[data-v-d1d12cd2]{width:100%}.editor-line[data-v-d1d12cd2]{margin-top:15px;margin-bottom:10px;width:100%;border-top:dashed 1px #2f2014}.label[data-v-b8a707c3],.input[data-v-b8a707c3]{display:inline-block}.label[data-v-b8a707c3]{margin-right:5px;min-width:39%}.input[data-v-b8a707c3]{width:60%}.input>input[data-v-b8a707c3]{width:100%}.editor-line[data-v-b8a707c3]{margin-top:15px;margin-bottom:10px;width:100%;border-top:dashed 1px #2f2014}.savebtn[data-v-ce0e1569]{margin:15px;font-size:24px;color:#2f2014;background-color:#c3ffa8;border:none}.cancelbtn[data-v-ce0e1569]{margin:6px;font-size:15px;color:#2f2014;background-color:#ffa8a9;border:none}.error[data-v-ce0e1569]{overflow:auto;max-width:50%;max-height:150px;color:red} diff --git a/dist/assets/index-6a80e0e5.js b/dist/assets/index-6a80e0e5.js new file mode 100644 index 0000000..32de8da --- /dev/null +++ b/dist/assets/index-6a80e0e5.js @@ -0,0 +1,9 @@ +(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const o of s)if(o.type==="childList")for(const i of o.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&r(i)}).observe(document,{childList:!0,subtree:!0});function n(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(s){if(s.ep)return;s.ep=!0;const o=n(s);fetch(s.href,o)}})();function br(e,t){const n=Object.create(null),r=e.split(",");for(let s=0;s!!n[s.toLowerCase()]:s=>!!n[s]}function yr(e){if(D(e)){const t={};for(let n=0;n{if(n){const r=n.split(Oi);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function On(e){let t="";if(oe(e))t=e;else if(D(e))for(let n=0;noe(e)?e:e==null?"":D(e)||te(e)&&(e.toString===qs||!U(e.toString))?JSON.stringify(e,Gs,2):String(e),Gs=(e,t)=>t&&t.__v_isRef?Gs(e,t.value):St(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,s])=>(n[`${r} =>`]=s,n),{})}:zs(t)?{[`Set(${t.size})`]:[...t.values()]}:te(t)&&!D(t)&&!Qs(t)?String(t):t,ee={},Pt=[],Me=()=>{},Ti=()=>!1,Ai=/^on[^a-z]/,Rn=e=>Ai.test(e),vr=e=>e.startsWith("onUpdate:"),_e=Object.assign,Er=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},ki=Object.prototype.hasOwnProperty,G=(e,t)=>ki.call(e,t),D=Array.isArray,St=e=>ln(e)==="[object Map]",zs=e=>ln(e)==="[object Set]",$i=e=>ln(e)==="[object RegExp]",U=e=>typeof e=="function",oe=e=>typeof e=="string",xr=e=>typeof e=="symbol",te=e=>e!==null&&typeof e=="object",Ws=e=>te(e)&&U(e.then)&&U(e.catch),qs=Object.prototype.toString,ln=e=>qs.call(e),Mi=e=>ln(e).slice(8,-1),Qs=e=>ln(e)==="[object Object]",wr=e=>oe(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,pn=br(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),In=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Li=/-(\w)/g,Ke=In(e=>e.replace(Li,(t,n)=>n?n.toUpperCase():"")),Ni=/\B([A-Z])/g,Ft=In(e=>e.replace(Ni,"-$1").toLowerCase()),Pn=In(e=>e.charAt(0).toUpperCase()+e.slice(1)),Dn=In(e=>e?`on${Pn(e)}`:""),Zt=(e,t)=>!Object.is(e,t),Tt=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},Zn=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let Yr;const ji=()=>Yr||(Yr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});let Se;class Ys{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=Se,!t&&Se&&(this.index=(Se.scopes||(Se.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=Se;try{return Se=this,t()}finally{Se=n}}}on(){Se=this}off(){Se=this.parent}stop(t){if(this._active){let n,r;for(n=0,r=this.effects.length;n{const t=new Set(e);return t.w=0,t.n=0,t},Js=e=>(e.w&st)>0,Xs=e=>(e.n&st)>0,Ui=({deps:e})=>{if(e.length)for(let t=0;t{const{deps:t}=e;if(t.length){let n=0;for(let r=0;r{(a==="length"||a>=c)&&l.push(f)})}else switch(n!==void 0&&l.push(i.get(n)),t){case"add":D(e)?wr(n)&&l.push(i.get("length")):(l.push(i.get(ht)),St(e)&&l.push(i.get(nr)));break;case"delete":D(e)||(l.push(i.get(ht)),St(e)&&l.push(i.get(nr)));break;case"set":St(e)&&l.push(i.get(ht));break}if(l.length===1)l[0]&&rr(l[0]);else{const c=[];for(const f of l)f&&c.push(...f);rr(Cr(c))}}function rr(e,t){const n=D(e)?e:[...e];for(const r of n)r.computed&&Xr(r);for(const r of n)r.computed||Xr(r)}function Xr(e,t){(e!==ke||e.allowRecurse)&&(e.scheduler?e.scheduler():e.run())}const Ki=br("__proto__,__v_isRef,__isVue"),to=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(xr)),Vi=Rr(),Gi=Rr(!1,!0),zi=Rr(!0),Zr=Wi();function Wi(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const r=z(this);for(let o=0,i=this.length;o{e[t]=function(...n){Bt();const r=z(this)[t].apply(this,n);return Dt(),r}}),e}function qi(e){const t=z(this);return ye(t,"has",e),t.hasOwnProperty(e)}function Rr(e=!1,t=!1){return function(r,s,o){if(s==="__v_isReactive")return!e;if(s==="__v_isReadonly")return e;if(s==="__v_isShallow")return t;if(s==="__v_raw"&&o===(e?t?al:io:t?oo:so).get(r))return r;const i=D(r);if(!e){if(i&&G(Zr,s))return Reflect.get(Zr,s,o);if(s==="hasOwnProperty")return qi}const l=Reflect.get(r,s,o);return(xr(s)?to.has(s):Ki(s))||(e||ye(r,"get",s),t)?l:he(l)?i&&wr(s)?l:l.value:te(l)?e?lo(l):Ut(l):l}}const Qi=no(),Yi=no(!0);function no(e=!1){return function(n,r,s,o){let i=n[r];if(Mt(i)&&he(i)&&!he(s))return!1;if(!e&&(!bn(s)&&!Mt(s)&&(i=z(i),s=z(s)),!D(n)&&he(i)&&!he(s)))return i.value=s,!0;const l=D(n)&&wr(r)?Number(r)e,Sn=e=>Reflect.getPrototypeOf(e);function cn(e,t,n=!1,r=!1){e=e.__v_raw;const s=z(e),o=z(t);n||(t!==o&&ye(s,"get",t),ye(s,"get",o));const{has:i}=Sn(s),l=r?Ir:n?Tr:en;if(i.call(s,t))return l(e.get(t));if(i.call(s,o))return l(e.get(o));e!==s&&e.get(t)}function un(e,t=!1){const n=this.__v_raw,r=z(n),s=z(e);return t||(e!==s&&ye(r,"has",e),ye(r,"has",s)),e===s?n.has(e):n.has(e)||n.has(s)}function an(e,t=!1){return e=e.__v_raw,!t&&ye(z(e),"iterate",ht),Reflect.get(e,"size",e)}function es(e){e=z(e);const t=z(this);return Sn(t).has.call(t,e)||(t.add(e),qe(t,"add",e,e)),this}function ts(e,t){t=z(t);const n=z(this),{has:r,get:s}=Sn(n);let o=r.call(n,e);o||(e=z(e),o=r.call(n,e));const i=s.call(n,e);return n.set(e,t),o?Zt(t,i)&&qe(n,"set",e,t):qe(n,"add",e,t),this}function ns(e){const t=z(this),{has:n,get:r}=Sn(t);let s=n.call(t,e);s||(e=z(e),s=n.call(t,e)),r&&r.call(t,e);const o=t.delete(e);return s&&qe(t,"delete",e,void 0),o}function rs(){const e=z(this),t=e.size!==0,n=e.clear();return t&&qe(e,"clear",void 0,void 0),n}function fn(e,t){return function(r,s){const o=this,i=o.__v_raw,l=z(i),c=t?Ir:e?Tr:en;return!e&&ye(l,"iterate",ht),i.forEach((f,a)=>r.call(s,c(f),c(a),o))}}function dn(e,t,n){return function(...r){const s=this.__v_raw,o=z(s),i=St(o),l=e==="entries"||e===Symbol.iterator&&i,c=e==="keys"&&i,f=s[e](...r),a=n?Ir:t?Tr:en;return!t&&ye(o,"iterate",c?nr:ht),{next(){const{value:h,done:p}=f.next();return p?{value:h,done:p}:{value:l?[a(h[0]),a(h[1])]:a(h),done:p}},[Symbol.iterator](){return this}}}}function Je(e){return function(...t){return e==="delete"?!1:this}}function nl(){const e={get(o){return cn(this,o)},get size(){return an(this)},has:un,add:es,set:ts,delete:ns,clear:rs,forEach:fn(!1,!1)},t={get(o){return cn(this,o,!1,!0)},get size(){return an(this)},has:un,add:es,set:ts,delete:ns,clear:rs,forEach:fn(!1,!0)},n={get(o){return cn(this,o,!0)},get size(){return an(this,!0)},has(o){return un.call(this,o,!0)},add:Je("add"),set:Je("set"),delete:Je("delete"),clear:Je("clear"),forEach:fn(!0,!1)},r={get(o){return cn(this,o,!0,!0)},get size(){return an(this,!0)},has(o){return un.call(this,o,!0)},add:Je("add"),set:Je("set"),delete:Je("delete"),clear:Je("clear"),forEach:fn(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(o=>{e[o]=dn(o,!1,!1),n[o]=dn(o,!0,!1),t[o]=dn(o,!1,!0),r[o]=dn(o,!0,!0)}),[e,n,t,r]}const[rl,sl,ol,il]=nl();function Pr(e,t){const n=t?e?il:ol:e?sl:rl;return(r,s,o)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?r:Reflect.get(G(n,s)&&s in r?n:r,s,o)}const ll={get:Pr(!1,!1)},cl={get:Pr(!1,!0)},ul={get:Pr(!0,!1)},so=new WeakMap,oo=new WeakMap,io=new WeakMap,al=new WeakMap;function fl(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function dl(e){return e.__v_skip||!Object.isExtensible(e)?0:fl(Mi(e))}function Ut(e){return Mt(e)?e:Sr(e,!1,ro,ll,so)}function hl(e){return Sr(e,!1,tl,cl,oo)}function lo(e){return Sr(e,!0,el,ul,io)}function Sr(e,t,n,r,s){if(!te(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=s.get(e);if(o)return o;const i=dl(e);if(i===0)return e;const l=new Proxy(e,i===2?r:n);return s.set(e,l),l}function At(e){return Mt(e)?At(e.__v_raw):!!(e&&e.__v_isReactive)}function Mt(e){return!!(e&&e.__v_isReadonly)}function bn(e){return!!(e&&e.__v_isShallow)}function co(e){return At(e)||Mt(e)}function z(e){const t=e&&e.__v_raw;return t?z(t):e}function uo(e){return _n(e,"__v_skip",!0),e}const en=e=>te(e)?Ut(e):e,Tr=e=>te(e)?lo(e):e;function ao(e){nt&&ke&&(e=z(e),eo(e.dep||(e.dep=Cr())))}function fo(e,t){e=z(e);const n=e.dep;n&&rr(n)}function he(e){return!!(e&&e.__v_isRef===!0)}function pl(e){return po(e,!1)}function ho(e){return po(e,!0)}function po(e,t){return he(e)?e:new ml(e,t)}class ml{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:z(t),this._value=n?t:en(t)}get value(){return ao(this),this._value}set value(t){const n=this.__v_isShallow||bn(t)||Mt(t);t=n?t:z(t),Zt(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:en(t),fo(this))}}function kt(e){return he(e)?e.value:e}const gl={get:(e,t,n)=>kt(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const s=e[t];return he(s)&&!he(n)?(s.value=n,!0):Reflect.set(e,t,n,r)}};function mo(e){return At(e)?e:new Proxy(e,gl)}var go;class _l{constructor(t,n,r,s){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this[go]=!1,this._dirty=!0,this.effect=new Or(t,()=>{this._dirty||(this._dirty=!0,fo(this))}),this.effect.computed=this,this.effect.active=this._cacheable=!s,this.__v_isReadonly=r}get value(){const t=z(this);return ao(t),(t._dirty||!t._cacheable)&&(t._dirty=!1,t._value=t.effect.run()),t._value}set value(t){this._setter(t)}}go="__v_isReadonly";function bl(e,t,n=!1){let r,s;const o=U(e);return o?(r=e,s=Me):(r=e.get,s=e.set),new _l(r,s,o||!s,n)}function rt(e,t,n,r){let s;try{s=r?e(...r):e()}catch(o){Tn(o,t,n)}return s}function Le(e,t,n,r){if(U(e)){const o=rt(e,t,n,r);return o&&Ws(o)&&o.catch(i=>{Tn(i,t,n)}),o}const s=[];for(let o=0;o>>1;nn(de[r])Ue&&de.splice(t,1)}function xl(e){D(e)?$t.push(...e):(!ze||!ze.includes(e,e.allowRecurse?at+1:at))&&$t.push(e),yo()}function ss(e,t=tn?Ue+1:0){for(;tnn(n)-nn(r)),at=0;ate.id==null?1/0:e.id,wl=(e,t)=>{const n=nn(e)-nn(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Eo(e){sr=!1,tn=!0,de.sort(wl);const t=Me;try{for(Ue=0;Ueoe(_)?_.trim():_)),h&&(s=n.map(Zn))}let l,c=r[l=Dn(t)]||r[l=Dn(Ke(t))];!c&&o&&(c=r[l=Dn(Ft(t))]),c&&Le(c,e,6,s);const f=r[l+"Once"];if(f){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,Le(f,e,6,s)}}function xo(e,t,n=!1){const r=t.emitsCache,s=r.get(e);if(s!==void 0)return s;const o=e.emits;let i={},l=!1;if(!U(e)){const c=f=>{const a=xo(f,t,!0);a&&(l=!0,_e(i,a))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!o&&!l?(te(e)&&r.set(e,null),null):(D(o)?o.forEach(c=>i[c]=null):_e(i,o),te(e)&&r.set(e,i),i)}function An(e,t){return!e||!Rn(t)?!1:(t=t.slice(2).replace(/Once$/,""),G(e,t[0].toLowerCase()+t.slice(1))||G(e,Ft(t))||G(e,t))}let we=null,kn=null;function yn(e){const t=we;return we=e,kn=e&&e.type.__scopeId||null,t}function $r(e){kn=e}function Mr(){kn=null}function vn(e,t=we,n){if(!t||e._n)return e;const r=(...s)=>{r._d&&hs(-1);const o=yn(t);let i;try{i=e(...s)}finally{yn(o),r._d&&hs(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function Un(e){const{type:t,vnode:n,proxy:r,withProxy:s,props:o,propsOptions:[i],slots:l,attrs:c,emit:f,render:a,renderCache:h,data:p,setupState:_,ctx:S,inheritAttrs:$}=e;let F,A;const w=yn(e);try{if(n.shapeFlag&4){const T=s||r;F=De(a.call(T,T,h,o,_,p,S)),A=c}else{const T=t;F=De(T.length>1?T(o,{attrs:c,slots:l,emit:f}):T(o,null)),A=t.props?c:Ol(c)}}catch(T){Yt.length=0,Tn(T,e,1),F=Z(gt)}let C=F;if(A&&$!==!1){const T=Object.keys(A),{shapeFlag:W}=C;T.length&&W&7&&(i&&T.some(vr)&&(A=Rl(A,i)),C=_t(C,A))}return n.dirs&&(C=_t(C),C.dirs=C.dirs?C.dirs.concat(n.dirs):n.dirs),n.transition&&(C.transition=n.transition),F=C,yn(w),F}const Ol=e=>{let t;for(const n in e)(n==="class"||n==="style"||Rn(n))&&((t||(t={}))[n]=e[n]);return t},Rl=(e,t)=>{const n={};for(const r in e)(!vr(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function Il(e,t,n){const{props:r,children:s,component:o}=e,{props:i,children:l,patchFlag:c}=t,f=o.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?os(r,i,f):!!i;if(c&8){const a=t.dynamicProps;for(let h=0;he.__isSuspense;function Sl(e,t){t&&t.pendingBranch?D(e)?t.effects.push(...e):t.effects.push(e):xl(e)}function mn(e,t){if(se){let n=se.provides;const r=se.parent&&se.parent.provides;r===n&&(n=se.provides=Object.create(r)),n[e]=t}}function We(e,t,n=!1){const r=se||we;if(r){const s=r.parent==null?r.vnode.appContext&&r.vnode.appContext.provides:r.parent.provides;if(s&&e in s)return s[e];if(arguments.length>1)return n&&U(t)?t.call(r.proxy):t}}const hn={};function pt(e,t,n){return Co(e,t,n)}function Co(e,t,{immediate:n,deep:r,flush:s,onTrack:o,onTrigger:i}=ee){const l=Di()===(se==null?void 0:se.scope)?se:null;let c,f=!1,a=!1;if(he(e)?(c=()=>e.value,f=bn(e)):At(e)?(c=()=>e,r=!0):D(e)?(a=!0,f=e.some(C=>At(C)||bn(C)),c=()=>e.map(C=>{if(he(C))return C.value;if(At(C))return dt(C);if(U(C))return rt(C,l,2)})):U(e)?t?c=()=>rt(e,l,2):c=()=>{if(!(l&&l.isUnmounted))return h&&h(),Le(e,l,3,[p])}:c=Me,t&&r){const C=c;c=()=>dt(C())}let h,p=C=>{h=A.onStop=()=>{rt(C,l,4)}},_;if(sn)if(p=Me,t?n&&Le(t,l,3,[c(),a?[]:void 0,p]):c(),s==="sync"){const C=vc();_=C.__watcherHandles||(C.__watcherHandles=[])}else return Me;let S=a?new Array(e.length).fill(hn):hn;const $=()=>{if(A.active)if(t){const C=A.run();(r||f||(a?C.some((T,W)=>Zt(T,S[W])):Zt(C,S)))&&(h&&h(),Le(t,l,3,[C,S===hn?void 0:a&&S[0]===hn?[]:S,p]),S=C)}else A.run()};$.allowRecurse=!!t;let F;s==="sync"?F=$:s==="post"?F=()=>ae($,l&&l.suspense):($.pre=!0,l&&($.id=l.uid),F=()=>kr($));const A=new Or(c,F);t?n?$():S=A.run():s==="post"?ae(A.run.bind(A),l&&l.suspense):A.run();const w=()=>{A.stop(),l&&l.scope&&Er(l.scope.effects,A)};return _&&_.push(w),w}function Tl(e,t,n){const r=this.proxy,s=oe(e)?e.includes(".")?Oo(r,e):()=>r[e]:e.bind(r,r);let o;U(t)?o=t:(o=t.handler,n=t);const i=se;Lt(this);const l=Co(s,o.bind(r),n);return i?Lt(i):mt(),l}function Oo(e,t){const n=t.split(".");return()=>{let r=e;for(let s=0;s{dt(n,t)});else if(Qs(e))for(const n in e)dt(e[n],t);return e}function Ro(e,t){e.shapeFlag&6&&e.component?Ro(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 $n(e){return U(e)?{setup:e,name:e.name}:e}const qt=e=>!!e.type.__asyncLoader,Io=e=>e.type.__isKeepAlive,Al={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=hc(),r=n.ctx;if(!r.renderer)return()=>{const w=t.default&&t.default();return w&&w.length===1?w[0]:w};const s=new Map,o=new Set;let i=null;const l=n.suspense,{renderer:{p:c,m:f,um:a,o:{createElement:h}}}=r,p=h("div");r.activate=(w,C,T,W,ne)=>{const ie=w.component;f(w,C,T,0,l),c(ie.vnode,w,C,T,ie,l,W,w.slotScopeIds,ne),ae(()=>{ie.isDeactivated=!1,ie.a&&Tt(ie.a);const me=w.props&&w.props.onVnodeMounted;me&&Oe(me,ie.parent,w)},l)},r.deactivate=w=>{const C=w.component;f(w,p,null,1,l),ae(()=>{C.da&&Tt(C.da);const T=w.props&&w.props.onVnodeUnmounted;T&&Oe(T,C.parent,w),C.isDeactivated=!0},l)};function _(w){Hn(w),a(w,n,l,!0)}function S(w){s.forEach((C,T)=>{const W=fr(C.type);W&&(!w||!w(W))&&$(T)})}function $(w){const C=s.get(w);!i||!Ot(C,i)?_(C):i&&Hn(i),s.delete(w),o.delete(w)}pt(()=>[e.include,e.exclude],([w,C])=>{w&&S(T=>Wt(w,T)),C&&S(T=>!Wt(C,T))},{flush:"post",deep:!0});let F=null;const A=()=>{F!=null&&s.set(F,Kn(n.subTree))};return So(A),To(A),Ao(()=>{s.forEach(w=>{const{subTree:C,suspense:T}=n,W=Kn(C);if(w.type===W.type&&w.key===W.key){Hn(W);const ne=W.component.da;ne&&ae(ne,T);return}_(w)})}),()=>{if(F=null,!t.default)return null;const w=t.default(),C=w[0];if(w.length>1)return i=null,w;if(!xn(C)||!(C.shapeFlag&4)&&!(C.shapeFlag&128))return i=null,C;let T=Kn(C);const W=T.type,ne=fr(qt(T)?T.type.__asyncResolved||{}:W),{include:ie,exclude:me,max:Ve}=e;if(ie&&(!ne||!Wt(ie,ne))||me&&ne&&Wt(me,ne))return i=T,C;const fe=T.key==null?W:T.key,Ce=s.get(fe);return T.el&&(T=_t(T),C.shapeFlag&128&&(C.ssContent=T)),F=fe,Ce?(T.el=Ce.el,T.component=Ce.component,T.transition&&Ro(T,T.transition),T.shapeFlag|=512,o.delete(fe),o.add(fe)):(o.add(fe),Ve&&o.size>parseInt(Ve,10)&&$(o.values().next().value)),T.shapeFlag|=256,i=T,wo(C.type)?C:T}}},kl=Al;function Wt(e,t){return D(e)?e.some(n=>Wt(n,t)):oe(e)?e.split(",").includes(t):$i(e)?e.test(t):!1}function $l(e,t){Po(e,"a",t)}function Ml(e,t){Po(e,"da",t)}function Po(e,t,n=se){const r=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(Mn(t,r,n),n){let s=n.parent;for(;s&&s.parent;)Io(s.parent.vnode)&&Ll(r,t,n,s),s=s.parent}}function Ll(e,t,n,r){const s=Mn(t,e,r,!0);ko(()=>{Er(r[t],s)},n)}function Hn(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Kn(e){return e.shapeFlag&128?e.ssContent:e}function Mn(e,t,n=se,r=!1){if(n){const s=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...i)=>{if(n.isUnmounted)return;Bt(),Lt(n);const l=Le(t,n,e,i);return mt(),Dt(),l});return r?s.unshift(o):s.push(o),o}}const Qe=e=>(t,n=se)=>(!sn||e==="sp")&&Mn(e,(...r)=>t(...r),n),Nl=Qe("bm"),So=Qe("m"),jl=Qe("bu"),To=Qe("u"),Ao=Qe("bum"),ko=Qe("um"),Fl=Qe("sp"),Bl=Qe("rtg"),Dl=Qe("rtc");function Ul(e,t=se){Mn("ec",e,t)}function $o(e,t){const n=we;if(n===null)return e;const r=jn(n)||n.proxy,s=e.dirs||(e.dirs=[]);for(let o=0;ot(i,l,void 0,o&&o[l]));else{const i=Object.keys(e);s=new Array(i.length);for(let l=0,c=i.length;le?Wo(e)?jn(e)||e.proxy:or(e.parent):null,Qt=_e(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=>or(e.parent),$root:e=>or(e.root),$emit:e=>e.emit,$options:e=>Nr(e),$forceUpdate:e=>e.f||(e.f=()=>kr(e.update)),$nextTick:e=>e.n||(e.n=bo.bind(e.proxy)),$watch:e=>Tl.bind(e)}),Vn=(e,t)=>e!==ee&&!e.__isScriptSetup&&G(e,t),Kl={get({_:e},t){const{ctx:n,setupState:r,data:s,props:o,accessCache:i,type:l,appContext:c}=e;let f;if(t[0]!=="$"){const _=i[t];if(_!==void 0)switch(_){case 1:return r[t];case 2:return s[t];case 4:return n[t];case 3:return o[t]}else{if(Vn(r,t))return i[t]=1,r[t];if(s!==ee&&G(s,t))return i[t]=2,s[t];if((f=e.propsOptions[0])&&G(f,t))return i[t]=3,o[t];if(n!==ee&&G(n,t))return i[t]=4,n[t];ir&&(i[t]=0)}}const a=Qt[t];let h,p;if(a)return t==="$attrs"&&ye(e,"get",t),a(e);if((h=l.__cssModules)&&(h=h[t]))return h;if(n!==ee&&G(n,t))return i[t]=4,n[t];if(p=c.config.globalProperties,G(p,t))return p[t]},set({_:e},t,n){const{data:r,setupState:s,ctx:o}=e;return Vn(s,t)?(s[t]=n,!0):r!==ee&&G(r,t)?(r[t]=n,!0):G(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:s,propsOptions:o}},i){let l;return!!n[i]||e!==ee&&G(e,i)||Vn(t,i)||(l=o[0])&&G(l,i)||G(r,i)||G(Qt,i)||G(s.config.globalProperties,i)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:G(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};let ir=!0;function Vl(e){const t=Nr(e),n=e.proxy,r=e.ctx;ir=!1,t.beforeCreate&&ls(t.beforeCreate,e,"bc");const{data:s,computed:o,methods:i,watch:l,provide:c,inject:f,created:a,beforeMount:h,mounted:p,beforeUpdate:_,updated:S,activated:$,deactivated:F,beforeDestroy:A,beforeUnmount:w,destroyed:C,unmounted:T,render:W,renderTracked:ne,renderTriggered:ie,errorCaptured:me,serverPrefetch:Ve,expose:fe,inheritAttrs:Ce,components:Fe,directives:yt,filters:ot}=t;if(f&&Gl(f,r,null,e.appContext.config.unwrapInjectedRef),i)for(const J in i){const Q=i[J];U(Q)&&(r[J]=Q.bind(n))}if(s){const J=s.call(n,n);te(J)&&(e.data=Ut(J))}if(ir=!0,o)for(const J in o){const Q=o[J],Re=U(Q)?Q.bind(n,n):U(Q.get)?Q.get.bind(n,n):Me,it=!U(Q)&&U(Q.set)?Q.set.bind(n):Me,Ie=xe({get:Re,set:it});Object.defineProperty(r,J,{enumerable:!0,configurable:!0,get:()=>Ie.value,set:be=>Ie.value=be})}if(l)for(const J in l)jo(l[J],r,n,J);if(c){const J=U(c)?c.call(n):c;Reflect.ownKeys(J).forEach(Q=>{mn(Q,J[Q])})}a&&ls(a,e,"c");function le(J,Q){D(Q)?Q.forEach(Re=>J(Re.bind(n))):Q&&J(Q.bind(n))}if(le(Nl,h),le(So,p),le(jl,_),le(To,S),le($l,$),le(Ml,F),le(Ul,me),le(Dl,ne),le(Bl,ie),le(Ao,w),le(ko,T),le(Fl,Ve),D(fe))if(fe.length){const J=e.exposed||(e.exposed={});fe.forEach(Q=>{Object.defineProperty(J,Q,{get:()=>n[Q],set:Re=>n[Q]=Re})})}else e.exposed||(e.exposed={});W&&e.render===Me&&(e.render=W),Ce!=null&&(e.inheritAttrs=Ce),Fe&&(e.components=Fe),yt&&(e.directives=yt)}function Gl(e,t,n=Me,r=!1){D(e)&&(e=lr(e));for(const s in e){const o=e[s];let i;te(o)?"default"in o?i=We(o.from||s,o.default,!0):i=We(o.from||s):i=We(o),he(i)&&r?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>i.value,set:l=>i.value=l}):t[s]=i}}function ls(e,t,n){Le(D(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function jo(e,t,n,r){const s=r.includes(".")?Oo(n,r):()=>n[r];if(oe(e)){const o=t[e];U(o)&&pt(s,o)}else if(U(e))pt(s,e.bind(n));else if(te(e))if(D(e))e.forEach(o=>jo(o,t,n,r));else{const o=U(e.handler)?e.handler.bind(n):t[e.handler];U(o)&&pt(s,o,e)}}function Nr(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:s,optionsCache:o,config:{optionMergeStrategies:i}}=e.appContext,l=o.get(t);let c;return l?c=l:!s.length&&!n&&!r?c=t:(c={},s.length&&s.forEach(f=>En(c,f,i,!0)),En(c,t,i)),te(t)&&o.set(t,c),c}function En(e,t,n,r=!1){const{mixins:s,extends:o}=t;o&&En(e,o,n,!0),s&&s.forEach(i=>En(e,i,n,!0));for(const i in t)if(!(r&&i==="expose")){const l=zl[i]||n&&n[i];e[i]=l?l(e[i],t[i]):t[i]}return e}const zl={data:cs,props:ut,emits:ut,methods:ut,computed:ut,beforeCreate:ge,created:ge,beforeMount:ge,mounted:ge,beforeUpdate:ge,updated:ge,beforeDestroy:ge,beforeUnmount:ge,destroyed:ge,unmounted:ge,activated:ge,deactivated:ge,errorCaptured:ge,serverPrefetch:ge,components:ut,directives:ut,watch:ql,provide:cs,inject:Wl};function cs(e,t){return t?e?function(){return _e(U(e)?e.call(this,this):e,U(t)?t.call(this,this):t)}:t:e}function Wl(e,t){return ut(lr(e),lr(t))}function lr(e){if(D(e)){const t={};for(let n=0;n0)&&!(i&16)){if(i&8){const a=e.vnode.dynamicProps;for(let h=0;h{c=!0;const[p,_]=Bo(h,t,!0);_e(i,p),_&&l.push(..._)};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}if(!o&&!c)return te(e)&&r.set(e,Pt),Pt;if(D(o))for(let a=0;a-1,_[1]=$<0||S<$,(S>-1||G(_,"default"))&&l.push(h)}}}const f=[i,l];return te(e)&&r.set(e,f),f}function us(e){return e[0]!=="$"}function as(e){const t=e&&e.toString().match(/^\s*(function|class) (\w+)/);return t?t[2]:e===null?"null":""}function fs(e,t){return as(e)===as(t)}function ds(e,t){return D(t)?t.findIndex(n=>fs(n,e)):U(t)&&fs(t,e)?0:-1}const Do=e=>e[0]==="_"||e==="$stable",jr=e=>D(e)?e.map(De):[De(e)],Jl=(e,t,n)=>{if(t._n)return t;const r=vn((...s)=>jr(t(...s)),n);return r._c=!1,r},Uo=(e,t,n)=>{const r=e._ctx;for(const s in e){if(Do(s))continue;const o=e[s];if(U(o))t[s]=Jl(s,o,r);else if(o!=null){const i=jr(o);t[s]=()=>i}}},Ho=(e,t)=>{const n=jr(t);e.slots.default=()=>n},Xl=(e,t)=>{if(e.vnode.shapeFlag&32){const n=t._;n?(e.slots=z(t),_n(t,"_",n)):Uo(t,e.slots={})}else e.slots={},t&&Ho(e,t);_n(e.slots,Nn,1)},Zl=(e,t,n)=>{const{vnode:r,slots:s}=e;let o=!0,i=ee;if(r.shapeFlag&32){const l=t._;l?n&&l===1?o=!1:(_e(s,t),!n&&l===1&&delete s._):(o=!t.$stable,Uo(t,s)),i=t}else t&&(Ho(e,t),i={default:1});if(o)for(const l in s)!Do(l)&&!(l in i)&&delete s[l]};function Ko(){return{app:null,config:{isNativeTag:Ti,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 ec=0;function tc(e,t){return function(r,s=null){U(r)||(r=Object.assign({},r)),s!=null&&!te(s)&&(s=null);const o=Ko(),i=new Set;let l=!1;const c=o.app={_uid:ec++,_component:r,_props:s,_container:null,_context:o,_instance:null,version:Ec,get config(){return o.config},set config(f){},use(f,...a){return i.has(f)||(f&&U(f.install)?(i.add(f),f.install(c,...a)):U(f)&&(i.add(f),f(c,...a))),c},mixin(f){return o.mixins.includes(f)||o.mixins.push(f),c},component(f,a){return a?(o.components[f]=a,c):o.components[f]},directive(f,a){return a?(o.directives[f]=a,c):o.directives[f]},mount(f,a,h){if(!l){const p=Z(r,s);return p.appContext=o,a&&t?t(p,f):e(p,f,h),l=!0,c._container=f,f.__vue_app__=c,jn(p.component)||p.component.proxy}},unmount(){l&&(e(null,c._container),delete c._container.__vue_app__)},provide(f,a){return o.provides[f]=a,c}};return c}}function ur(e,t,n,r,s=!1){if(D(e)){e.forEach((p,_)=>ur(p,t&&(D(t)?t[_]:t),n,r,s));return}if(qt(r)&&!s)return;const o=r.shapeFlag&4?jn(r.component)||r.component.proxy:r.el,i=s?null:o,{i:l,r:c}=e,f=t&&t.r,a=l.refs===ee?l.refs={}:l.refs,h=l.setupState;if(f!=null&&f!==c&&(oe(f)?(a[f]=null,G(h,f)&&(h[f]=null)):he(f)&&(f.value=null)),U(c))rt(c,l,12,[i,a]);else{const p=oe(c),_=he(c);if(p||_){const S=()=>{if(e.f){const $=p?G(h,c)?h[c]:a[c]:c.value;s?D($)&&Er($,o):D($)?$.includes(o)||$.push(o):p?(a[c]=[o],G(h,c)&&(h[c]=a[c])):(c.value=[o],e.k&&(a[e.k]=c.value))}else p?(a[c]=i,G(h,c)&&(h[c]=i)):_&&(c.value=i,e.k&&(a[e.k]=i))};i?(S.id=-1,ae(S,n)):S()}}}const ae=Sl;function nc(e){return rc(e)}function rc(e,t){const n=ji();n.__VUE__=!0;const{insert:r,remove:s,patchProp:o,createElement:i,createText:l,createComment:c,setText:f,setElementText:a,parentNode:h,nextSibling:p,setScopeId:_=Me,insertStaticContent:S}=e,$=(u,d,m,g=null,y=null,x=null,I=!1,E=null,O=!!d.dynamicChildren)=>{if(u===d)return;u&&!Ot(u,d)&&(g=R(u),be(u,y,x,!0),u=null),d.patchFlag===-2&&(O=!1,d.dynamicChildren=null);const{type:v,ref:L,shapeFlag:k}=d;switch(v){case Ln:F(u,d,m,g);break;case gt:A(u,d,m,g);break;case Gn:u==null&&w(d,m,g,I);break;case Ae:Fe(u,d,m,g,y,x,I,E,O);break;default:k&1?W(u,d,m,g,y,x,I,E,O):k&6?yt(u,d,m,g,y,x,I,E,O):(k&64||k&128)&&v.process(u,d,m,g,y,x,I,E,O,V)}L!=null&&y&&ur(L,u&&u.ref,x,d||u,!d)},F=(u,d,m,g)=>{if(u==null)r(d.el=l(d.children),m,g);else{const y=d.el=u.el;d.children!==u.children&&f(y,d.children)}},A=(u,d,m,g)=>{u==null?r(d.el=c(d.children||""),m,g):d.el=u.el},w=(u,d,m,g)=>{[u.el,u.anchor]=S(u.children,d,m,g,u.el,u.anchor)},C=({el:u,anchor:d},m,g)=>{let y;for(;u&&u!==d;)y=p(u),r(u,m,g),u=y;r(d,m,g)},T=({el:u,anchor:d})=>{let m;for(;u&&u!==d;)m=p(u),s(u),u=m;s(d)},W=(u,d,m,g,y,x,I,E,O)=>{I=I||d.type==="svg",u==null?ne(d,m,g,y,x,I,E,O):Ve(u,d,y,x,I,E,O)},ne=(u,d,m,g,y,x,I,E)=>{let O,v;const{type:L,props:k,shapeFlag:N,transition:B,dirs:K}=u;if(O=u.el=i(u.type,x,k&&k.is,k),N&8?a(O,u.children):N&16&&me(u.children,O,null,g,y,x&&L!=="foreignObject",I,E),K&<(u,null,g,"created"),ie(O,u,u.scopeId,I,g),k){for(const Y in k)Y!=="value"&&!pn(Y)&&o(O,Y,null,k[Y],x,u.children,g,y,P);"value"in k&&o(O,"value",null,k.value),(v=k.onVnodeBeforeMount)&&Oe(v,g,u)}K&<(u,null,g,"beforeMount");const X=(!y||y&&!y.pendingBranch)&&B&&!B.persisted;X&&B.beforeEnter(O),r(O,d,m),((v=k&&k.onVnodeMounted)||X||K)&&ae(()=>{v&&Oe(v,g,u),X&&B.enter(O),K&<(u,null,g,"mounted")},y)},ie=(u,d,m,g,y)=>{if(m&&_(u,m),g)for(let x=0;x{for(let v=O;v{const E=d.el=u.el;let{patchFlag:O,dynamicChildren:v,dirs:L}=d;O|=u.patchFlag&16;const k=u.props||ee,N=d.props||ee;let B;m&&ct(m,!1),(B=N.onVnodeBeforeUpdate)&&Oe(B,m,d,u),L&<(d,u,m,"beforeUpdate"),m&&ct(m,!0);const K=y&&d.type!=="foreignObject";if(v?fe(u.dynamicChildren,v,E,m,g,K,x):I||Q(u,d,E,null,m,g,K,x,!1),O>0){if(O&16)Ce(E,d,k,N,m,g,y);else if(O&2&&k.class!==N.class&&o(E,"class",null,N.class,y),O&4&&o(E,"style",k.style,N.style,y),O&8){const X=d.dynamicProps;for(let Y=0;Y{B&&Oe(B,m,d,u),L&<(d,u,m,"updated")},g)},fe=(u,d,m,g,y,x,I)=>{for(let E=0;E{if(m!==g){if(m!==ee)for(const E in m)!pn(E)&&!(E in g)&&o(u,E,m[E],null,I,d.children,y,x,P);for(const E in g){if(pn(E))continue;const O=g[E],v=m[E];O!==v&&E!=="value"&&o(u,E,v,O,I,d.children,y,x,P)}"value"in g&&o(u,"value",m.value,g.value)}},Fe=(u,d,m,g,y,x,I,E,O)=>{const v=d.el=u?u.el:l(""),L=d.anchor=u?u.anchor:l("");let{patchFlag:k,dynamicChildren:N,slotScopeIds:B}=d;B&&(E=E?E.concat(B):B),u==null?(r(v,m,g),r(L,m,g),me(d.children,m,L,y,x,I,E,O)):k>0&&k&64&&N&&u.dynamicChildren?(fe(u.dynamicChildren,N,m,y,x,I,E),(d.key!=null||y&&d===y.subTree)&&Vo(u,d,!0)):Q(u,d,m,L,y,x,I,E,O)},yt=(u,d,m,g,y,x,I,E,O)=>{d.slotScopeIds=E,u==null?d.shapeFlag&512?y.ctx.activate(d,m,g,I,O):ot(d,m,g,y,x,I,O):Kt(u,d,O)},ot=(u,d,m,g,y,x,I)=>{const E=u.component=dc(u,g,y);if(Io(u)&&(E.ctx.renderer=V),pc(E),E.asyncDep){if(y&&y.registerDep(E,le),!u.el){const O=E.subTree=Z(gt);A(null,O,d,m)}return}le(E,u,d,m,y,x,I)},Kt=(u,d,m)=>{const g=d.component=u.component;if(Il(u,d,m))if(g.asyncDep&&!g.asyncResolved){J(g,d,m);return}else g.next=d,El(g.update),g.update();else d.el=u.el,g.vnode=d},le=(u,d,m,g,y,x,I)=>{const E=()=>{if(u.isMounted){let{next:L,bu:k,u:N,parent:B,vnode:K}=u,X=L,Y;ct(u,!1),L?(L.el=K.el,J(u,L,I)):L=K,k&&Tt(k),(Y=L.props&&L.props.onVnodeBeforeUpdate)&&Oe(Y,B,L,K),ct(u,!0);const ce=Un(u),Pe=u.subTree;u.subTree=ce,$(Pe,ce,h(Pe.el),R(Pe),u,y,x),L.el=ce.el,X===null&&Pl(u,ce.el),N&&ae(N,y),(Y=L.props&&L.props.onVnodeUpdated)&&ae(()=>Oe(Y,B,L,K),y)}else{let L;const{el:k,props:N}=d,{bm:B,m:K,parent:X}=u,Y=qt(d);if(ct(u,!1),B&&Tt(B),!Y&&(L=N&&N.onVnodeBeforeMount)&&Oe(L,X,d),ct(u,!0),k&&H){const ce=()=>{u.subTree=Un(u),H(k,u.subTree,u,y,null)};Y?d.type.__asyncLoader().then(()=>!u.isUnmounted&&ce()):ce()}else{const ce=u.subTree=Un(u);$(null,ce,m,g,u,y,x),d.el=ce.el}if(K&&ae(K,y),!Y&&(L=N&&N.onVnodeMounted)){const ce=d;ae(()=>Oe(L,X,ce),y)}(d.shapeFlag&256||X&&qt(X.vnode)&&X.vnode.shapeFlag&256)&&u.a&&ae(u.a,y),u.isMounted=!0,d=m=g=null}},O=u.effect=new Or(E,()=>kr(v),u.scope),v=u.update=()=>O.run();v.id=u.uid,ct(u,!0),v()},J=(u,d,m)=>{d.component=u;const g=u.vnode.props;u.vnode=d,u.next=null,Yl(u,d.props,g,m),Zl(u,d.children,m),Bt(),ss(),Dt()},Q=(u,d,m,g,y,x,I,E,O=!1)=>{const v=u&&u.children,L=u?u.shapeFlag:0,k=d.children,{patchFlag:N,shapeFlag:B}=d;if(N>0){if(N&128){it(v,k,m,g,y,x,I,E,O);return}else if(N&256){Re(v,k,m,g,y,x,I,E,O);return}}B&8?(L&16&&P(v,y,x),k!==v&&a(m,k)):L&16?B&16?it(v,k,m,g,y,x,I,E,O):P(v,y,x,!0):(L&8&&a(m,""),B&16&&me(k,m,g,y,x,I,E,O))},Re=(u,d,m,g,y,x,I,E,O)=>{u=u||Pt,d=d||Pt;const v=u.length,L=d.length,k=Math.min(v,L);let N;for(N=0;NL?P(u,y,x,!0,!1,k):me(d,m,g,y,x,I,E,O,k)},it=(u,d,m,g,y,x,I,E,O)=>{let v=0;const L=d.length;let k=u.length-1,N=L-1;for(;v<=k&&v<=N;){const B=u[v],K=d[v]=O?Ze(d[v]):De(d[v]);if(Ot(B,K))$(B,K,m,null,y,x,I,E,O);else break;v++}for(;v<=k&&v<=N;){const B=u[k],K=d[N]=O?Ze(d[N]):De(d[N]);if(Ot(B,K))$(B,K,m,null,y,x,I,E,O);else break;k--,N--}if(v>k){if(v<=N){const B=N+1,K=BN)for(;v<=k;)be(u[v],y,x,!0),v++;else{const B=v,K=v,X=new Map;for(v=K;v<=N;v++){const Ee=d[v]=O?Ze(d[v]):De(d[v]);Ee.key!=null&&X.set(Ee.key,v)}let Y,ce=0;const Pe=N-K+1;let Et=!1,Wr=0;const Vt=new Array(Pe);for(v=0;v=Pe){be(Ee,y,x,!0);continue}let Be;if(Ee.key!=null)Be=X.get(Ee.key);else for(Y=K;Y<=N;Y++)if(Vt[Y-K]===0&&Ot(Ee,d[Y])){Be=Y;break}Be===void 0?be(Ee,y,x,!0):(Vt[Be-K]=v+1,Be>=Wr?Wr=Be:Et=!0,$(Ee,d[Be],m,null,y,x,I,E,O),ce++)}const qr=Et?sc(Vt):Pt;for(Y=qr.length-1,v=Pe-1;v>=0;v--){const Ee=K+v,Be=d[Ee],Qr=Ee+1{const{el:x,type:I,transition:E,children:O,shapeFlag:v}=u;if(v&6){Ie(u.component.subTree,d,m,g);return}if(v&128){u.suspense.move(d,m,g);return}if(v&64){I.move(u,d,m,V);return}if(I===Ae){r(x,d,m);for(let k=0;kE.enter(x),y);else{const{leave:k,delayLeave:N,afterLeave:B}=E,K=()=>r(x,d,m),X=()=>{k(x,()=>{K(),B&&B()})};N?N(x,K,X):X()}else r(x,d,m)},be=(u,d,m,g=!1,y=!1)=>{const{type:x,props:I,ref:E,children:O,dynamicChildren:v,shapeFlag:L,patchFlag:k,dirs:N}=u;if(E!=null&&ur(E,null,m,u,!0),L&256){d.ctx.deactivate(u);return}const B=L&1&&N,K=!qt(u);let X;if(K&&(X=I&&I.onVnodeBeforeUnmount)&&Oe(X,d,u),L&6)b(u.component,m,g);else{if(L&128){u.suspense.unmount(m,g);return}B&<(u,null,d,"beforeUnmount"),L&64?u.type.remove(u,d,m,y,V,g):v&&(x!==Ae||k>0&&k&64)?P(v,d,m,!1,!0):(x===Ae&&k&384||!y&&L&16)&&P(O,d,m),g&&vt(u)}(K&&(X=I&&I.onVnodeUnmounted)||B)&&ae(()=>{X&&Oe(X,d,u),B&<(u,null,d,"unmounted")},m)},vt=u=>{const{type:d,el:m,anchor:g,transition:y}=u;if(d===Ae){zr(m,g);return}if(d===Gn){T(u);return}const x=()=>{s(m),y&&!y.persisted&&y.afterLeave&&y.afterLeave()};if(u.shapeFlag&1&&y&&!y.persisted){const{leave:I,delayLeave:E}=y,O=()=>I(m,x);E?E(u.el,x,O):O()}else x()},zr=(u,d)=>{let m;for(;u!==d;)m=p(u),s(u),u=m;s(d)},b=(u,d,m)=>{const{bum:g,scope:y,update:x,subTree:I,um:E}=u;g&&Tt(g),y.stop(),x&&(x.active=!1,be(I,u,d,m)),E&&ae(E,d),ae(()=>{u.isUnmounted=!0},d),d&&d.pendingBranch&&!d.isUnmounted&&u.asyncDep&&!u.asyncResolved&&u.suspenseId===d.pendingId&&(d.deps--,d.deps===0&&d.resolve())},P=(u,d,m,g=!1,y=!1,x=0)=>{for(let I=x;Iu.shapeFlag&6?R(u.component.subTree):u.shapeFlag&128?u.suspense.next():p(u.anchor||u.el),M=(u,d,m)=>{u==null?d._vnode&&be(d._vnode,null,null,!0):$(d._vnode||null,u,d,null,null,null,m),ss(),vo(),d._vnode=u},V={p:$,um:be,m:Ie,r:vt,mt:ot,mc:me,pc:Q,pbc:fe,n:R,o:e};let re,H;return t&&([re,H]=t(V)),{render:M,hydrate:re,createApp:tc(M,re)}}function ct({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function Vo(e,t,n=!1){const r=e.children,s=t.children;if(D(r)&&D(s))for(let o=0;o>1,e[n[l]]0&&(t[r]=n[o-1]),n[o]=r)}}for(o=n.length,i=n[o-1];o-- >0;)n[o]=i,i=t[i];return n}const oc=e=>e.__isTeleport,Ae=Symbol(void 0),Ln=Symbol(void 0),gt=Symbol(void 0),Gn=Symbol(void 0),Yt=[];let $e=null;function ue(e=!1){Yt.push($e=e?null:[])}function ic(){Yt.pop(),$e=Yt[Yt.length-1]||null}let rn=1;function hs(e){rn+=e}function Go(e){return e.dynamicChildren=rn>0?$e||Pt:null,ic(),rn>0&&$e&&$e.push(e),e}function pe(e,t,n,r,s,o){return Go(j(e,t,n,r,s,o,!0))}function ar(e,t,n,r,s){return Go(Z(e,t,n,r,s,!0))}function xn(e){return e?e.__v_isVNode===!0:!1}function Ot(e,t){return e.type===t.type&&e.key===t.key}const Nn="__vInternal",zo=({key:e})=>e??null,gn=({ref:e,ref_key:t,ref_for:n})=>e!=null?oe(e)||he(e)||U(e)?{i:we,r:e,k:t,f:!!n}:e:null;function j(e,t=null,n=null,r=0,s=null,o=e===Ae?0:1,i=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&zo(t),ref:t&&gn(t),scopeId:kn,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:o,patchFlag:r,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:we};return l?(Br(c,n),o&128&&e.normalize(c)):n&&(c.shapeFlag|=oe(n)?8:16),rn>0&&!i&&$e&&(c.patchFlag>0||o&6)&&c.patchFlag!==32&&$e.push(c),c}const Z=lc;function lc(e,t=null,n=null,r=0,s=null,o=!1){if((!e||e===Mo)&&(e=gt),xn(e)){const l=_t(e,t,!0);return n&&Br(l,n),rn>0&&!o&&$e&&(l.shapeFlag&6?$e[$e.indexOf(e)]=l:$e.push(l)),l.patchFlag|=-2,l}if(bc(e)&&(e=e.__vccOpts),t){t=cc(t);let{class:l,style:c}=t;l&&!oe(l)&&(t.class=On(l)),te(c)&&(co(c)&&!D(c)&&(c=_e({},c)),t.style=yr(c))}const i=oe(e)?1:wo(e)?128:oc(e)?64:te(e)?4:U(e)?2:0;return j(e,t,n,r,s,i,o,!0)}function cc(e){return e?co(e)||Nn in e?_e({},e):e:null}function _t(e,t,n=!1){const{props:r,ref:s,patchFlag:o,children:i}=e,l=t?uc(r||{},t):r;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&zo(l),ref:t&&t.ref?n&&s?D(s)?s.concat(gn(t)):[s,gn(t)]:gn(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ae?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&_t(e.ssContent),ssFallback:e.ssFallback&&_t(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}}function He(e=" ",t=0){return Z(Ln,null,e,t)}function Fr(e="",t=!1){return t?(ue(),ar(gt,null,e)):Z(gt,null,e)}function De(e){return e==null||typeof e=="boolean"?Z(gt):D(e)?Z(Ae,null,e.slice()):typeof e=="object"?Ze(e):Z(Ln,null,String(e))}function Ze(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:_t(e)}function Br(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(D(t))n=16;else if(typeof t=="object")if(r&65){const s=t.default;s&&(s._c&&(s._d=!1),Br(e,s()),s._c&&(s._d=!0));return}else{n=32;const s=t._;!s&&!(Nn in t)?t._ctx=we:s===3&&we&&(we.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else U(t)?(t={default:t,_ctx:we},n=32):(t=String(t),r&64?(n=16,t=[He(t)]):n=8);e.children=t,e.shapeFlag|=n}function uc(...e){const t={};for(let n=0;nse||we,Lt=e=>{se=e,e.scope.on()},mt=()=>{se&&se.scope.off(),se=null};function Wo(e){return e.vnode.shapeFlag&4}let sn=!1;function pc(e,t=!1){sn=t;const{props:n,children:r}=e.vnode,s=Wo(e);Ql(e,n,s,t),Xl(e,r);const o=s?mc(e,t):void 0;return sn=!1,o}function mc(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=uo(new Proxy(e.ctx,Kl));const{setup:r}=n;if(r){const s=e.setupContext=r.length>1?_c(e):null;Lt(e),Bt();const o=rt(r,e,0,[e.props,s]);if(Dt(),mt(),Ws(o)){if(o.then(mt,mt),t)return o.then(i=>{ps(e,i,t)}).catch(i=>{Tn(i,e,0)});e.asyncDep=o}else ps(e,o,t)}else qo(e,t)}function ps(e,t,n){U(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:te(t)&&(e.setupState=mo(t)),qo(e,n)}let ms;function qo(e,t,n){const r=e.type;if(!e.render){if(!t&&ms&&!r.render){const s=r.template||Nr(e).template;if(s){const{isCustomElement:o,compilerOptions:i}=e.appContext.config,{delimiters:l,compilerOptions:c}=r,f=_e(_e({isCustomElement:o,delimiters:l},i),c);r.render=ms(s,f)}}e.render=r.render||Me}Lt(e),Bt(),Vl(e),Dt(),mt()}function gc(e){return new Proxy(e.attrs,{get(t,n){return ye(e,"get","$attrs"),t[n]}})}function _c(e){const t=r=>{e.exposed=r||{}};let n;return{get attrs(){return n||(n=gc(e))},slots:e.slots,emit:e.emit,expose:t}}function jn(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(mo(uo(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Qt)return Qt[n](e)},has(t,n){return n in t||n in Qt}}))}function fr(e,t=!0){return U(e)?e.displayName||e.name:e.name||t&&e.__name}function bc(e){return U(e)&&"__vccOpts"in e}const xe=(e,t)=>bl(e,t,sn);function Qo(e,t,n){const r=arguments.length;return r===2?te(t)&&!D(t)?xn(t)?Z(e,null,[t]):Z(e,t):Z(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&xn(n)&&(n=[n]),Z(e,t,n))}const yc=Symbol(""),vc=()=>We(yc),Ec="3.2.47",xc="http://www.w3.org/2000/svg",ft=typeof document<"u"?document:null,gs=ft&&ft.createElement("template"),wc={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const s=t?ft.createElementNS(xc,e):ft.createElement(e,n?{is:n}:void 0);return e==="select"&&r&&r.multiple!=null&&s.setAttribute("multiple",r.multiple),s},createText:e=>ft.createTextNode(e),createComment:e=>ft.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>ft.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,s,o){const i=n?n.previousSibling:t.lastChild;if(s&&(s===o||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===o||!(s=s.nextSibling)););else{gs.innerHTML=r?`${e}`:e;const l=gs.content;if(r){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}};function Cc(e,t,n){const r=e._vtc;r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}function Oc(e,t,n){const r=e.style,s=oe(n);if(n&&!s){if(t&&!oe(t))for(const o in t)n[o]==null&&dr(r,o,"");for(const o in n)dr(r,o,n[o])}else{const o=r.display;s?t!==n&&(r.cssText=n):t&&e.removeAttribute("style"),"_vod"in e&&(r.display=o)}}const _s=/\s*!important$/;function dr(e,t,n){if(D(n))n.forEach(r=>dr(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=Rc(e,t);_s.test(n)?e.setProperty(Ft(r),n.replace(_s,""),"important"):e[r]=n}}const bs=["Webkit","Moz","ms"],zn={};function Rc(e,t){const n=zn[t];if(n)return n;let r=Ke(t);if(r!=="filter"&&r in e)return zn[t]=r;r=Pn(r);for(let s=0;sWn||(kc.then(()=>Wn=0),Wn=Date.now());function Mc(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;Le(Lc(r,n.value),t,5,[r])};return n.value=e,n.attached=$c(),n}function Lc(e,t){if(D(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>s=>!s._stopped&&r&&r(s))}else return t}const Es=/^on[a-z]/,Nc=(e,t,n,r,s=!1,o,i,l,c)=>{t==="class"?Cc(e,r,s):t==="style"?Oc(e,n,r):Rn(t)?vr(t)||Tc(e,t,n,r,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):jc(e,t,r,s))?Pc(e,t,r,o,i,l,c):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),Ic(e,t,r,s))};function jc(e,t,n,r){return r?!!(t==="innerHTML"||t==="textContent"||t in e&&Es.test(t)&&U(n)):t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA"||Es.test(t)&&oe(n)?!1:t in e}const xs=e=>{const t=e.props["onUpdate:modelValue"]||!1;return D(t)?n=>Tt(t,n):t};function Fc(e){e.target.composing=!0}function ws(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Yo={created(e,{modifiers:{lazy:t,trim:n,number:r}},s){e._assign=xs(s);const o=r||s.props&&s.props.type==="number";Rt(e,t?"change":"input",i=>{if(i.target.composing)return;let l=e.value;n&&(l=l.trim()),o&&(l=Zn(l)),e._assign(l)}),n&&Rt(e,"change",()=>{e.value=e.value.trim()}),t||(Rt(e,"compositionstart",Fc),Rt(e,"compositionend",ws),Rt(e,"change",ws))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,modifiers:{lazy:n,trim:r,number:s}},o){if(e._assign=xs(o),e.composing||document.activeElement===e&&e.type!=="range"&&(n||r&&e.value.trim()===t||(s||e.type==="number")&&Zn(e.value)===t))return;const i=t??"";e.value!==i&&(e.value=i)}},Bc=["ctrl","shift","alt","meta"],Dc={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)=>Bc.some(n=>e[`${n}Key`]&&!t.includes(n))},Jo=(e,t)=>(n,...r)=>{for(let s=0;s{const t=Hc().createApp(...e),{mount:n}=t;return t.mount=r=>{const s=Vc(r);if(!s)return;const o=t._component;!U(o)&&!o.render&&!o.template&&(o.template=s.innerHTML),s.innerHTML="";const i=n(s,!1,s instanceof SVGElement);return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),i},t};function Vc(e){return oe(e)?document.querySelector(e):e}const Ye=(e,t)=>{const n=e.__vccOpts||e;for(const[r,s]of t)n[r]=s;return n},Gc={name:"app"},zc={id:"app"},Wc=j("header",null,[j("div",{class:"column"},[j("span",{class:"left-menu"}),j("span",{class:"middle-menu"},[j("h1",null,"Коллеров тестовое")]),j("span",{class:"right-menu"})])],-1),qc=j("footer",null,[j("div",{class:"column"},[j("div",{class:"footer-left"}," d.kollerov ")])],-1);function Qc(e,t,n,r,s,o){const i=Te("router-view");return ue(),pe("div",zc,[Wc,Z(i),qc])}const Yc=Ye(Gc,[["render",Qc]]);function Jc(){return Xo().__VUE_DEVTOOLS_GLOBAL_HOOK__}function Xo(){return typeof navigator<"u"&&typeof window<"u"?window:typeof global<"u"?global:{}}const Xc=typeof Proxy=="function",Zc="devtools-plugin:setup",eu="plugin:settings:set";let xt,hr;function tu(){var e;return xt!==void 0||(typeof window<"u"&&window.performance?(xt=!0,hr=window.performance):typeof global<"u"&&(!((e=global.perf_hooks)===null||e===void 0)&&e.performance)?(xt=!0,hr=global.perf_hooks.performance):xt=!1),xt}function nu(){return tu()?hr.now():Date.now()}class ru{constructor(t,n){this.target=null,this.targetQueue=[],this.onQueue=[],this.plugin=t,this.hook=n;const r={};if(t.settings)for(const i in t.settings){const l=t.settings[i];r[i]=l.defaultValue}const s=`__vue-devtools-plugin-settings__${t.id}`;let o=Object.assign({},r);try{const i=localStorage.getItem(s),l=JSON.parse(i);Object.assign(o,l)}catch{}this.fallbacks={getSettings(){return o},setSettings(i){try{localStorage.setItem(s,JSON.stringify(i))}catch{}o=i},now(){return nu()}},n&&n.on(eu,(i,l)=>{i===this.plugin.id&&this.fallbacks.setSettings(l)}),this.proxiedOn=new Proxy({},{get:(i,l)=>this.target?this.target.on[l]:(...c)=>{this.onQueue.push({method:l,args:c})}}),this.proxiedTarget=new Proxy({},{get:(i,l)=>this.target?this.target[l]:l==="on"?this.proxiedOn:Object.keys(this.fallbacks).includes(l)?(...c)=>(this.targetQueue.push({method:l,args:c,resolve:()=>{}}),this.fallbacks[l](...c)):(...c)=>new Promise(f=>{this.targetQueue.push({method:l,args:c,resolve:f})})})}async setRealTarget(t){this.target=t;for(const n of this.onQueue)this.target.on[n.method](...n.args);for(const n of this.targetQueue)n.resolve(await this.target[n.method](...n.args))}}function su(e,t){const n=e,r=Xo(),s=Jc(),o=Xc&&n.enableEarlyProxy;if(s&&(r.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__||!o))s.emit(Zc,e,t);else{const i=o?new ru(n,s):null;(r.__VUE_DEVTOOLS_PLUGINS__=r.__VUE_DEVTOOLS_PLUGINS__||[]).push({pluginDescriptor:n,setupFn:t,proxy:i}),i&&t(i.proxiedTarget)}}/*! + * vue-router v4.1.6 + * (c) 2022 Eduardo San Martin Morote + * @license MIT + */const It=typeof window<"u";function ou(e){return e.__esModule||e[Symbol.toStringTag]==="Module"}const q=Object.assign;function qn(e,t){const n={};for(const r in t){const s=t[r];n[r]=Ne(s)?s.map(e):e(s)}return n}const Jt=()=>{},Ne=Array.isArray,iu=/\/$/,lu=e=>e.replace(iu,"");function Qn(e,t,n="/"){let r,s={},o="",i="";const l=t.indexOf("#");let c=t.indexOf("?");return l=0&&(c=-1),c>-1&&(r=t.slice(0,c),o=t.slice(c+1,l>-1?l:t.length),s=e(o)),l>-1&&(r=r||t.slice(0,l),i=t.slice(l,t.length)),r=fu(r??t,n),{fullPath:r+(o&&"?")+o+i,path:r,query:s,hash:i}}function cu(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function Os(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function uu(e,t,n){const r=t.matched.length-1,s=n.matched.length-1;return r>-1&&r===s&&Nt(t.matched[r],n.matched[s])&&Zo(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Nt(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Zo(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!au(e[n],t[n]))return!1;return!0}function au(e,t){return Ne(e)?Rs(e,t):Ne(t)?Rs(t,e):e===t}function Rs(e,t){return Ne(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function fu(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/");let s=n.length-1,o,i;for(o=0;o1&&s--;else break;return n.slice(0,s).join("/")+"/"+r.slice(o-(o===r.length?1:0)).join("/")}var on;(function(e){e.pop="pop",e.push="push"})(on||(on={}));var Xt;(function(e){e.back="back",e.forward="forward",e.unknown=""})(Xt||(Xt={}));function du(e){if(!e)if(It){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),lu(e)}const hu=/^[^#]+#/;function pu(e,t){return e.replace(hu,"#")+t}function mu(e,t){const n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}const Fn=()=>({left:window.pageXOffset,top:window.pageYOffset});function gu(e){let t;if("el"in e){const n=e.el,r=typeof n=="string"&&n.startsWith("#"),s=typeof n=="string"?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!s)return;t=mu(s,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.pageXOffset,t.top!=null?t.top:window.pageYOffset)}function Is(e,t){return(history.state?history.state.position-t:-1)+e}const pr=new Map;function _u(e,t){pr.set(e,t)}function bu(e){const t=pr.get(e);return pr.delete(e),t}let yu=()=>location.protocol+"//"+location.host;function ei(e,t){const{pathname:n,search:r,hash:s}=t,o=e.indexOf("#");if(o>-1){let l=s.includes(e.slice(o))?e.slice(o).length:1,c=s.slice(l);return c[0]!=="/"&&(c="/"+c),Os(c,"")}return Os(n,e)+r+s}function vu(e,t,n,r){let s=[],o=[],i=null;const l=({state:p})=>{const _=ei(e,location),S=n.value,$=t.value;let F=0;if(p){if(n.value=_,t.value=p,i&&i===S){i=null;return}F=$?p.position-$.position:0}else r(_);s.forEach(A=>{A(n.value,S,{delta:F,type:on.pop,direction:F?F>0?Xt.forward:Xt.back:Xt.unknown})})};function c(){i=n.value}function f(p){s.push(p);const _=()=>{const S=s.indexOf(p);S>-1&&s.splice(S,1)};return o.push(_),_}function a(){const{history:p}=window;p.state&&p.replaceState(q({},p.state,{scroll:Fn()}),"")}function h(){for(const p of o)p();o=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",a)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",a),{pauseListeners:c,listen:f,destroy:h}}function Ps(e,t,n,r=!1,s=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:s?Fn():null}}function Eu(e){const{history:t,location:n}=window,r={value:ei(e,n)},s={value:t.state};s.value||o(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function o(c,f,a){const h=e.indexOf("#"),p=h>-1?(n.host&&document.querySelector("base")?e:e.slice(h))+c:yu()+e+c;try{t[a?"replaceState":"pushState"](f,"",p),s.value=f}catch(_){console.error(_),n[a?"replace":"assign"](p)}}function i(c,f){const a=q({},t.state,Ps(s.value.back,c,s.value.forward,!0),f,{position:s.value.position});o(c,a,!0),r.value=c}function l(c,f){const a=q({},s.value,t.state,{forward:c,scroll:Fn()});o(a.current,a,!0);const h=q({},Ps(r.value,c,null),{position:a.position+1},f);o(c,h,!1),r.value=c}return{location:r,state:s,push:l,replace:i}}function xu(e){e=du(e);const t=Eu(e),n=vu(e,t.state,t.location,t.replace);function r(o,i=!0){i||n.pauseListeners(),history.go(o)}const s=q({location:"",base:e,go:r,createHref:pu.bind(null,e)},t,n);return Object.defineProperty(s,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(s,"state",{enumerable:!0,get:()=>t.state.value}),s}function wu(e){return typeof e=="string"||e&&typeof e=="object"}function ti(e){return typeof e=="string"||typeof e=="symbol"}const Xe={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},ni=Symbol("");var Ss;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(Ss||(Ss={}));function jt(e,t){return q(new Error,{type:e,[ni]:!0},t)}function Ge(e,t){return e instanceof Error&&ni in e&&(t==null||!!(e.type&t))}const Ts="[^/]+?",Cu={sensitive:!1,strict:!1,start:!0,end:!0},Ou=/[.+*?^${}()[\]/\\]/g;function Ru(e,t){const n=q({},Cu,t),r=[];let s=n.start?"^":"";const o=[];for(const f of e){const a=f.length?[]:[90];n.strict&&!f.length&&(s+="/");for(let h=0;ht.length?t.length===1&&t[0]===40+40?1:-1:0}function Pu(e,t){let n=0;const r=e.score,s=t.score;for(;n0&&t[t.length-1]<0}const Su={type:0,value:""},Tu=/[a-zA-Z0-9_]/;function Au(e){if(!e)return[[]];if(e==="/")return[[Su]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(_){throw new Error(`ERR (${n})/"${f}": ${_}`)}let n=0,r=n;const s=[];let o;function i(){o&&s.push(o),o=[]}let l=0,c,f="",a="";function h(){f&&(n===0?o.push({type:0,value:f}):n===1||n===2||n===3?(o.length>1&&(c==="*"||c==="+")&&t(`A repeatable param (${f}) must be alone in its segment. eg: '/:ids+.`),o.push({type:1,value:f,regexp:a,repeatable:c==="*"||c==="+",optional:c==="*"||c==="?"})):t("Invalid state to consume buffer"),f="")}function p(){f+=c}for(;l{i(w)}:Jt}function i(a){if(ti(a)){const h=r.get(a);h&&(r.delete(a),n.splice(n.indexOf(h),1),h.children.forEach(i),h.alias.forEach(i))}else{const h=n.indexOf(a);h>-1&&(n.splice(h,1),a.record.name&&r.delete(a.record.name),a.children.forEach(i),a.alias.forEach(i))}}function l(){return n}function c(a){let h=0;for(;h=0&&(a.record.path!==n[h].record.path||!ri(a,n[h]));)h++;n.splice(h,0,a),a.record.name&&!$s(a)&&r.set(a.record.name,a)}function f(a,h){let p,_={},S,$;if("name"in a&&a.name){if(p=r.get(a.name),!p)throw jt(1,{location:a});$=p.record.name,_=q(ks(h.params,p.keys.filter(w=>!w.optional).map(w=>w.name)),a.params&&ks(a.params,p.keys.map(w=>w.name))),S=p.stringify(_)}else if("path"in a)S=a.path,p=n.find(w=>w.re.test(S)),p&&(_=p.parse(S),$=p.record.name);else{if(p=h.name?r.get(h.name):n.find(w=>w.re.test(h.path)),!p)throw jt(1,{location:a,currentLocation:h});$=p.record.name,_=q({},h.params,a.params),S=p.stringify(_)}const F=[];let A=p;for(;A;)F.unshift(A.record),A=A.parent;return{name:$,path:S,params:_,matched:F,meta:Nu(F)}}return e.forEach(a=>o(a)),{addRoute:o,resolve:f,removeRoute:i,getRoutes:l,getRecordMatcher:s}}function ks(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function Mu(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:Lu(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function Lu(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]=typeof n=="boolean"?n:n[r];return t}function $s(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Nu(e){return e.reduce((t,n)=>q(t,n.meta),{})}function Ms(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function ri(e,t){return t.children.some(n=>n===e||ri(e,n))}const si=/#/g,ju=/&/g,Fu=/\//g,Bu=/=/g,Du=/\?/g,oi=/\+/g,Uu=/%5B/g,Hu=/%5D/g,ii=/%5E/g,Ku=/%60/g,li=/%7B/g,Vu=/%7C/g,ci=/%7D/g,Gu=/%20/g;function Dr(e){return encodeURI(""+e).replace(Vu,"|").replace(Uu,"[").replace(Hu,"]")}function zu(e){return Dr(e).replace(li,"{").replace(ci,"}").replace(ii,"^")}function mr(e){return Dr(e).replace(oi,"%2B").replace(Gu,"+").replace(si,"%23").replace(ju,"%26").replace(Ku,"`").replace(li,"{").replace(ci,"}").replace(ii,"^")}function Wu(e){return mr(e).replace(Bu,"%3D")}function qu(e){return Dr(e).replace(si,"%23").replace(Du,"%3F")}function Qu(e){return e==null?"":qu(e).replace(Fu,"%2F")}function wn(e){try{return decodeURIComponent(""+e)}catch{}return""+e}function Yu(e){const t={};if(e===""||e==="?")return t;const r=(e[0]==="?"?e.slice(1):e).split("&");for(let s=0;so&&mr(o)):[r&&mr(r)]).forEach(o=>{o!==void 0&&(t+=(t.length?"&":"")+n,o!=null&&(t+="="+o))})}return t}function Ju(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=Ne(r)?r.map(s=>s==null?null:""+s):r==null?r:""+r)}return t}const Xu=Symbol(""),Ns=Symbol(""),Ur=Symbol(""),ui=Symbol(""),gr=Symbol("");function Gt(){let e=[];function t(r){return e.push(r),()=>{const s=e.indexOf(r);s>-1&&e.splice(s,1)}}function n(){e=[]}return{add:t,list:()=>e,reset:n}}function et(e,t,n,r,s){const o=r&&(r.enterCallbacks[s]=r.enterCallbacks[s]||[]);return()=>new Promise((i,l)=>{const c=h=>{h===!1?l(jt(4,{from:n,to:t})):h instanceof Error?l(h):wu(h)?l(jt(2,{from:t,to:h})):(o&&r.enterCallbacks[s]===o&&typeof h=="function"&&o.push(h),i())},f=e.call(r&&r.instances[s],t,n,c);let a=Promise.resolve(f);e.length<3&&(a=a.then(c)),a.catch(h=>l(h))})}function Yn(e,t,n,r){const s=[];for(const o of e)for(const i in o.components){let l=o.components[i];if(!(t!=="beforeRouteEnter"&&!o.instances[i]))if(Zu(l)){const f=(l.__vccOpts||l)[t];f&&s.push(et(f,n,r,o,i))}else{let c=l();s.push(()=>c.then(f=>{if(!f)return Promise.reject(new Error(`Couldn't resolve component "${i}" at "${o.path}"`));const a=ou(f)?f.default:f;o.components[i]=a;const p=(a.__vccOpts||a)[t];return p&&et(p,n,r,o,i)()}))}}return s}function Zu(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function js(e){const t=We(Ur),n=We(ui),r=xe(()=>t.resolve(kt(e.to))),s=xe(()=>{const{matched:c}=r.value,{length:f}=c,a=c[f-1],h=n.matched;if(!a||!h.length)return-1;const p=h.findIndex(Nt.bind(null,a));if(p>-1)return p;const _=Fs(c[f-2]);return f>1&&Fs(a)===_&&h[h.length-1].path!==_?h.findIndex(Nt.bind(null,c[f-2])):p}),o=xe(()=>s.value>-1&&ra(n.params,r.value.params)),i=xe(()=>s.value>-1&&s.value===n.matched.length-1&&Zo(n.params,r.value.params));function l(c={}){return na(c)?t[kt(e.replace)?"replace":"push"](kt(e.to)).catch(Jt):Promise.resolve()}return{route:r,href:xe(()=>r.value.href),isActive:o,isExactActive:i,navigate:l}}const ea=$n({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:js,setup(e,{slots:t}){const n=Ut(js(e)),{options:r}=We(Ur),s=xe(()=>({[Bs(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[Bs(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const o=t.default&&t.default(n);return e.custom?o:Qo("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:s.value},o)}}}),ta=ea;function na(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function ra(e,t){for(const n in t){const r=t[n],s=e[n];if(typeof r=="string"){if(r!==s)return!1}else if(!Ne(s)||s.length!==r.length||r.some((o,i)=>o!==s[i]))return!1}return!0}function Fs(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Bs=(e,t,n)=>e??t??n,sa=$n({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=We(gr),s=xe(()=>e.route||r.value),o=We(Ns,0),i=xe(()=>{let f=kt(o);const{matched:a}=s.value;let h;for(;(h=a[f])&&!h.components;)f++;return f}),l=xe(()=>s.value.matched[i.value]);mn(Ns,xe(()=>i.value+1)),mn(Xu,l),mn(gr,s);const c=pl();return pt(()=>[c.value,l.value,e.name],([f,a,h],[p,_,S])=>{a&&(a.instances[h]=f,_&&_!==a&&f&&f===p&&(a.leaveGuards.size||(a.leaveGuards=_.leaveGuards),a.updateGuards.size||(a.updateGuards=_.updateGuards))),f&&a&&(!_||!Nt(a,_)||!p)&&(a.enterCallbacks[h]||[]).forEach($=>$(f))},{flush:"post"}),()=>{const f=s.value,a=e.name,h=l.value,p=h&&h.components[a];if(!p)return Ds(n.default,{Component:p,route:f});const _=h.props[a],S=_?_===!0?f.params:typeof _=="function"?_(f):_:null,F=Qo(p,q({},S,t,{onVnodeUnmounted:A=>{A.component.isUnmounted&&(h.instances[a]=null)},ref:c}));return Ds(n.default,{Component:F,route:f})||F}}});function Ds(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const oa=sa;function ia(e){const t=$u(e.routes,e),n=e.parseQuery||Yu,r=e.stringifyQuery||Ls,s=e.history,o=Gt(),i=Gt(),l=Gt(),c=ho(Xe);let f=Xe;It&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const a=qn.bind(null,b=>""+b),h=qn.bind(null,Qu),p=qn.bind(null,wn);function _(b,P){let R,M;return ti(b)?(R=t.getRecordMatcher(b),M=P):M=b,t.addRoute(M,R)}function S(b){const P=t.getRecordMatcher(b);P&&t.removeRoute(P)}function $(){return t.getRoutes().map(b=>b.record)}function F(b){return!!t.getRecordMatcher(b)}function A(b,P){if(P=q({},P||c.value),typeof b=="string"){const u=Qn(n,b,P.path),d=t.resolve({path:u.path},P),m=s.createHref(u.fullPath);return q(u,d,{params:p(d.params),hash:wn(u.hash),redirectedFrom:void 0,href:m})}let R;if("path"in b)R=q({},b,{path:Qn(n,b.path,P.path).path});else{const u=q({},b.params);for(const d in u)u[d]==null&&delete u[d];R=q({},b,{params:h(b.params)}),P.params=h(P.params)}const M=t.resolve(R,P),V=b.hash||"";M.params=a(p(M.params));const re=cu(r,q({},b,{hash:zu(V),path:M.path})),H=s.createHref(re);return q({fullPath:re,hash:V,query:r===Ls?Ju(b.query):b.query||{}},M,{redirectedFrom:void 0,href:H})}function w(b){return typeof b=="string"?Qn(n,b,c.value.path):q({},b)}function C(b,P){if(f!==b)return jt(8,{from:P,to:b})}function T(b){return ie(b)}function W(b){return T(q(w(b),{replace:!0}))}function ne(b){const P=b.matched[b.matched.length-1];if(P&&P.redirect){const{redirect:R}=P;let M=typeof R=="function"?R(b):R;return typeof M=="string"&&(M=M.includes("?")||M.includes("#")?M=w(M):{path:M},M.params={}),q({query:b.query,hash:b.hash,params:"path"in M?{}:b.params},M)}}function ie(b,P){const R=f=A(b),M=c.value,V=b.state,re=b.force,H=b.replace===!0,u=ne(R);if(u)return ie(q(w(u),{state:typeof u=="object"?q({},V,u.state):V,force:re,replace:H}),P||R);const d=R;d.redirectedFrom=P;let m;return!re&&uu(r,M,R)&&(m=jt(16,{to:d,from:M}),it(M,M,!0,!1)),(m?Promise.resolve(m):Ve(d,M)).catch(g=>Ge(g)?Ge(g,2)?g:Re(g):J(g,d,M)).then(g=>{if(g){if(Ge(g,2))return ie(q({replace:H},w(g.to),{state:typeof g.to=="object"?q({},V,g.to.state):V,force:re}),P||d)}else g=Ce(d,M,!0,H,V);return fe(d,M,g),g})}function me(b,P){const R=C(b,P);return R?Promise.reject(R):Promise.resolve()}function Ve(b,P){let R;const[M,V,re]=la(b,P);R=Yn(M.reverse(),"beforeRouteLeave",b,P);for(const u of M)u.leaveGuards.forEach(d=>{R.push(et(d,b,P))});const H=me.bind(null,b,P);return R.push(H),wt(R).then(()=>{R=[];for(const u of o.list())R.push(et(u,b,P));return R.push(H),wt(R)}).then(()=>{R=Yn(V,"beforeRouteUpdate",b,P);for(const u of V)u.updateGuards.forEach(d=>{R.push(et(d,b,P))});return R.push(H),wt(R)}).then(()=>{R=[];for(const u of b.matched)if(u.beforeEnter&&!P.matched.includes(u))if(Ne(u.beforeEnter))for(const d of u.beforeEnter)R.push(et(d,b,P));else R.push(et(u.beforeEnter,b,P));return R.push(H),wt(R)}).then(()=>(b.matched.forEach(u=>u.enterCallbacks={}),R=Yn(re,"beforeRouteEnter",b,P),R.push(H),wt(R))).then(()=>{R=[];for(const u of i.list())R.push(et(u,b,P));return R.push(H),wt(R)}).catch(u=>Ge(u,8)?u:Promise.reject(u))}function fe(b,P,R){for(const M of l.list())M(b,P,R)}function Ce(b,P,R,M,V){const re=C(b,P);if(re)return re;const H=P===Xe,u=It?history.state:{};R&&(M||H?s.replace(b.fullPath,q({scroll:H&&u&&u.scroll},V)):s.push(b.fullPath,V)),c.value=b,it(b,P,R,H),Re()}let Fe;function yt(){Fe||(Fe=s.listen((b,P,R)=>{const M=A(b),V=ne(M);if(V){ie(q(V,{replace:!0}),M).catch(Jt);return}f=M;const re=c.value;It&&_u(Is(re.fullPath,R.delta),Fn()),Ve(M,re).catch(H=>Ge(H,12)?H:Ge(H,2)?(ie(H.to,M).then(u=>{Ge(u,20)&&!R.delta&&R.type===on.pop&&s.go(-1,!1)}).catch(Jt),Promise.reject()):(R.delta&&s.go(-R.delta,!1),J(H,M,re))).then(H=>{H=H||Ce(M,re,!1),H&&(R.delta&&!Ge(H,8)?s.go(-R.delta,!1):R.type===on.pop&&Ge(H,20)&&s.go(-1,!1)),fe(M,re,H)}).catch(Jt)}))}let ot=Gt(),Kt=Gt(),le;function J(b,P,R){Re(b);const M=Kt.list();return M.length?M.forEach(V=>V(b,P,R)):console.error(b),Promise.reject(b)}function Q(){return le&&c.value!==Xe?Promise.resolve():new Promise((b,P)=>{ot.add([b,P])})}function Re(b){return le||(le=!b,yt(),ot.list().forEach(([P,R])=>b?R(b):P()),ot.reset()),b}function it(b,P,R,M){const{scrollBehavior:V}=e;if(!It||!V)return Promise.resolve();const re=!R&&bu(Is(b.fullPath,0))||(M||!R)&&history.state&&history.state.scroll||null;return bo().then(()=>V(b,P,re)).then(H=>H&&gu(H)).catch(H=>J(H,b,P))}const Ie=b=>s.go(b);let be;const vt=new Set;return{currentRoute:c,listening:!0,addRoute:_,removeRoute:S,hasRoute:F,getRoutes:$,resolve:A,options:e,push:T,replace:W,go:Ie,back:()=>Ie(-1),forward:()=>Ie(1),beforeEach:o.add,beforeResolve:i.add,afterEach:l.add,onError:Kt.add,isReady:Q,install(b){const P=this;b.component("RouterLink",ta),b.component("RouterView",oa),b.config.globalProperties.$router=P,Object.defineProperty(b.config.globalProperties,"$route",{enumerable:!0,get:()=>kt(c)}),It&&!be&&c.value===Xe&&(be=!0,T(s.location).catch(V=>{}));const R={};for(const V in Xe)R[V]=xe(()=>c.value[V]);b.provide(Ur,P),b.provide(ui,Ut(R)),b.provide(gr,c);const M=b.unmount;vt.add(b),b.unmount=function(){vt.delete(b),vt.size<1&&(f=Xe,Fe&&Fe(),Fe=null,c.value=Xe,be=!1,le=!1),M()}}}}function wt(e){return e.reduce((t,n)=>t.then(()=>n()),Promise.resolve())}function la(e,t){const n=[],r=[],s=[],o=Math.max(t.matched.length,e.matched.length);for(let i=0;iNt(f,l))?r.push(l):n.push(l));const c=e.matched[i];c&&(t.matched.find(f=>Nt(f,c))||s.push(c))}return[n,r,s]}/*! + * vuex v4.1.0 + * (c) 2022 Evan You + * @license MIT + */var ca="store";function Ht(e,t){Object.keys(e).forEach(function(n){return t(e[n],n)})}function ai(e){return e!==null&&typeof e=="object"}function ua(e){return e&&typeof e.then=="function"}function aa(e,t){return function(){return e(t)}}function fi(e,t,n){return t.indexOf(e)<0&&(n&&n.prepend?t.unshift(e):t.push(e)),function(){var r=t.indexOf(e);r>-1&&t.splice(r,1)}}function di(e,t){e._actions=Object.create(null),e._mutations=Object.create(null),e._wrappedGetters=Object.create(null),e._modulesNamespaceMap=Object.create(null);var n=e.state;Bn(e,n,[],e._modules.root,!0),Hr(e,n,t)}function Hr(e,t,n){var r=e._state,s=e._scope;e.getters={},e._makeLocalGettersCache=Object.create(null);var o=e._wrappedGetters,i={},l={},c=Fi(!0);c.run(function(){Ht(o,function(f,a){i[a]=aa(f,e),l[a]=xe(function(){return i[a]()}),Object.defineProperty(e.getters,a,{get:function(){return l[a].value},enumerable:!0})})}),e._state=Ut({data:t}),e._scope=c,e.strict&&ma(e),r&&n&&e._withCommit(function(){r.data=null}),s&&s.stop()}function Bn(e,t,n,r,s){var o=!n.length,i=e._modules.getNamespace(n);if(r.namespaced&&(e._modulesNamespaceMap[i],e._modulesNamespaceMap[i]=r),!o&&!s){var l=Kr(t,n.slice(0,-1)),c=n[n.length-1];e._withCommit(function(){l[c]=r.state})}var f=r.context=fa(e,i,n);r.forEachMutation(function(a,h){var p=i+h;da(e,p,a,f)}),r.forEachAction(function(a,h){var p=a.root?h:i+h,_=a.handler||a;ha(e,p,_,f)}),r.forEachGetter(function(a,h){var p=i+h;pa(e,p,a,f)}),r.forEachChild(function(a,h){Bn(e,t,n.concat(h),a,s)})}function fa(e,t,n){var r=t==="",s={dispatch:r?e.dispatch:function(o,i,l){var c=Cn(o,i,l),f=c.payload,a=c.options,h=c.type;return(!a||!a.root)&&(h=t+h),e.dispatch(h,f)},commit:r?e.commit:function(o,i,l){var c=Cn(o,i,l),f=c.payload,a=c.options,h=c.type;(!a||!a.root)&&(h=t+h),e.commit(h,f,a)}};return Object.defineProperties(s,{getters:{get:r?function(){return e.getters}:function(){return hi(e,t)}},state:{get:function(){return Kr(e.state,n)}}}),s}function hi(e,t){if(!e._makeLocalGettersCache[t]){var n={},r=t.length;Object.keys(e.getters).forEach(function(s){if(s.slice(0,r)===t){var o=s.slice(r);Object.defineProperty(n,o,{get:function(){return e.getters[s]},enumerable:!0})}}),e._makeLocalGettersCache[t]=n}return e._makeLocalGettersCache[t]}function da(e,t,n,r){var s=e._mutations[t]||(e._mutations[t]=[]);s.push(function(i){n.call(e,r.state,i)})}function ha(e,t,n,r){var s=e._actions[t]||(e._actions[t]=[]);s.push(function(i){var l=n.call(e,{dispatch:r.dispatch,commit:r.commit,getters:r.getters,state:r.state,rootGetters:e.getters,rootState:e.state},i);return ua(l)||(l=Promise.resolve(l)),e._devtoolHook?l.catch(function(c){throw e._devtoolHook.emit("vuex:error",c),c}):l})}function pa(e,t,n,r){e._wrappedGetters[t]||(e._wrappedGetters[t]=function(o){return n(r.state,r.getters,o.state,o.getters)})}function ma(e){pt(function(){return e._state.data},function(){},{deep:!0,flush:"sync"})}function Kr(e,t){return t.reduce(function(n,r){return n[r]},e)}function Cn(e,t,n){return ai(e)&&e.type&&(n=t,t=e,e=e.type),{type:e,payload:t,options:n}}var ga="vuex bindings",Us="vuex:mutations",Jn="vuex:actions",Ct="vuex",_a=0;function ba(e,t){su({id:"org.vuejs.vuex",app:e,label:"Vuex",homepage:"https://next.vuex.vuejs.org/",logo:"https://vuejs.org/images/icons/favicon-96x96.png",packageName:"vuex",componentStateTypes:[ga]},function(n){n.addTimelineLayer({id:Us,label:"Vuex Mutations",color:Hs}),n.addTimelineLayer({id:Jn,label:"Vuex Actions",color:Hs}),n.addInspector({id:Ct,label:"Vuex",icon:"storage",treeFilterPlaceholder:"Filter stores..."}),n.on.getInspectorTree(function(r){if(r.app===e&&r.inspectorId===Ct)if(r.filter){var s=[];_i(s,t._modules.root,r.filter,""),r.rootNodes=s}else r.rootNodes=[gi(t._modules.root,"")]}),n.on.getInspectorState(function(r){if(r.app===e&&r.inspectorId===Ct){var s=r.nodeId;hi(t,s),r.state=Ea(wa(t._modules,s),s==="root"?t.getters:t._makeLocalGettersCache,s)}}),n.on.editInspectorState(function(r){if(r.app===e&&r.inspectorId===Ct){var s=r.nodeId,o=r.path;s!=="root"&&(o=s.split("/").filter(Boolean).concat(o)),t._withCommit(function(){r.set(t._state.data,o,r.state.value)})}}),t.subscribe(function(r,s){var o={};r.payload&&(o.payload=r.payload),o.state=s,n.notifyComponentUpdate(),n.sendInspectorTree(Ct),n.sendInspectorState(Ct),n.addTimelineEvent({layerId:Us,event:{time:Date.now(),title:r.type,data:o}})}),t.subscribeAction({before:function(r,s){var o={};r.payload&&(o.payload=r.payload),r._id=_a++,r._time=Date.now(),o.state=s,n.addTimelineEvent({layerId:Jn,event:{time:r._time,title:r.type,groupId:r._id,subtitle:"start",data:o}})},after:function(r,s){var o={},i=Date.now()-r._time;o.duration={_custom:{type:"duration",display:i+"ms",tooltip:"Action duration",value:i}},r.payload&&(o.payload=r.payload),o.state=s,n.addTimelineEvent({layerId:Jn,event:{time:Date.now(),title:r.type,groupId:r._id,subtitle:"end",data:o}})}})})}var Hs=8702998,ya=6710886,va=16777215,pi={label:"namespaced",textColor:va,backgroundColor:ya};function mi(e){return e&&e!=="root"?e.split("/").slice(-2,-1)[0]:"Root"}function gi(e,t){return{id:t||"root",label:mi(t),tags:e.namespaced?[pi]:[],children:Object.keys(e._children).map(function(n){return gi(e._children[n],t+n+"/")})}}function _i(e,t,n,r){r.includes(n)&&e.push({id:r||"root",label:r.endsWith("/")?r.slice(0,r.length-1):r||"Root",tags:t.namespaced?[pi]:[]}),Object.keys(t._children).forEach(function(s){_i(e,t._children[s],n,r+s+"/")})}function Ea(e,t,n){t=n==="root"?t:t[n];var r=Object.keys(t),s={state:Object.keys(e.state).map(function(i){return{key:i,editable:!0,value:e.state[i]}})};if(r.length){var o=xa(t);s.getters=Object.keys(o).map(function(i){return{key:i.endsWith("/")?mi(i):i,editable:!1,value:_r(function(){return o[i]})}})}return s}function xa(e){var t={};return Object.keys(e).forEach(function(n){var r=n.split("/");if(r.length>1){var s=t,o=r.pop();r.forEach(function(i){s[i]||(s[i]={_custom:{value:{},display:i,tooltip:"Module",abstract:!0}}),s=s[i]._custom.value}),s[o]=_r(function(){return e[n]})}else t[n]=_r(function(){return e[n]})}),t}function wa(e,t){var n=t.split("/").filter(function(r){return r});return n.reduce(function(r,s,o){var i=r[s];if(!i)throw new Error('Missing module "'+s+'" for path "'+t+'".');return o===n.length-1?i:i._children},t==="root"?e:e.root._children)}function _r(e){try{return e()}catch(t){return t}}var je=function(t,n){this.runtime=n,this._children=Object.create(null),this._rawModule=t;var r=t.state;this.state=(typeof r=="function"?r():r)||{}},bi={namespaced:{configurable:!0}};bi.namespaced.get=function(){return!!this._rawModule.namespaced};je.prototype.addChild=function(t,n){this._children[t]=n};je.prototype.removeChild=function(t){delete this._children[t]};je.prototype.getChild=function(t){return this._children[t]};je.prototype.hasChild=function(t){return t in this._children};je.prototype.update=function(t){this._rawModule.namespaced=t.namespaced,t.actions&&(this._rawModule.actions=t.actions),t.mutations&&(this._rawModule.mutations=t.mutations),t.getters&&(this._rawModule.getters=t.getters)};je.prototype.forEachChild=function(t){Ht(this._children,t)};je.prototype.forEachGetter=function(t){this._rawModule.getters&&Ht(this._rawModule.getters,t)};je.prototype.forEachAction=function(t){this._rawModule.actions&&Ht(this._rawModule.actions,t)};je.prototype.forEachMutation=function(t){this._rawModule.mutations&&Ht(this._rawModule.mutations,t)};Object.defineProperties(je.prototype,bi);var bt=function(t){this.register([],t,!1)};bt.prototype.get=function(t){return t.reduce(function(n,r){return n.getChild(r)},this.root)};bt.prototype.getNamespace=function(t){var n=this.root;return t.reduce(function(r,s){return n=n.getChild(s),r+(n.namespaced?s+"/":"")},"")};bt.prototype.update=function(t){yi([],this.root,t)};bt.prototype.register=function(t,n,r){var s=this;r===void 0&&(r=!0);var o=new je(n,r);if(t.length===0)this.root=o;else{var i=this.get(t.slice(0,-1));i.addChild(t[t.length-1],o)}n.modules&&Ht(n.modules,function(l,c){s.register(t.concat(c),l,r)})};bt.prototype.unregister=function(t){var n=this.get(t.slice(0,-1)),r=t[t.length-1],s=n.getChild(r);s&&s.runtime&&n.removeChild(r)};bt.prototype.isRegistered=function(t){var n=this.get(t.slice(0,-1)),r=t[t.length-1];return n?n.hasChild(r):!1};function yi(e,t,n){if(t.update(n),n.modules)for(var r in n.modules){if(!t.getChild(r))return;yi(e.concat(r),t.getChild(r),n.modules[r])}}function Ca(e){return new ve(e)}var ve=function(t){var n=this;t===void 0&&(t={});var r=t.plugins;r===void 0&&(r=[]);var s=t.strict;s===void 0&&(s=!1);var o=t.devtools;this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new bt(t),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._makeLocalGettersCache=Object.create(null),this._scope=null,this._devtools=o;var i=this,l=this,c=l.dispatch,f=l.commit;this.dispatch=function(p,_){return c.call(i,p,_)},this.commit=function(p,_,S){return f.call(i,p,_,S)},this.strict=s;var a=this._modules.root.state;Bn(this,a,[],this._modules.root),Hr(this,a),r.forEach(function(h){return h(n)})},Vr={state:{configurable:!0}};ve.prototype.install=function(t,n){t.provide(n||ca,this),t.config.globalProperties.$store=this;var r=this._devtools!==void 0?this._devtools:!1;r&&ba(t,this)};Vr.state.get=function(){return this._state.data};Vr.state.set=function(e){};ve.prototype.commit=function(t,n,r){var s=this,o=Cn(t,n,r),i=o.type,l=o.payload,c={type:i,payload:l},f=this._mutations[i];f&&(this._withCommit(function(){f.forEach(function(h){h(l)})}),this._subscribers.slice().forEach(function(a){return a(c,s.state)}))};ve.prototype.dispatch=function(t,n){var r=this,s=Cn(t,n),o=s.type,i=s.payload,l={type:o,payload:i},c=this._actions[o];if(c){try{this._actionSubscribers.slice().filter(function(a){return a.before}).forEach(function(a){return a.before(l,r.state)})}catch{}var f=c.length>1?Promise.all(c.map(function(a){return a(i)})):c[0](i);return new Promise(function(a,h){f.then(function(p){try{r._actionSubscribers.filter(function(_){return _.after}).forEach(function(_){return _.after(l,r.state)})}catch{}a(p)},function(p){try{r._actionSubscribers.filter(function(_){return _.error}).forEach(function(_){return _.error(l,r.state,p)})}catch{}h(p)})})}};ve.prototype.subscribe=function(t,n){return fi(t,this._subscribers,n)};ve.prototype.subscribeAction=function(t,n){var r=typeof t=="function"?{before:t}:t;return fi(r,this._actionSubscribers,n)};ve.prototype.watch=function(t,n,r){var s=this;return pt(function(){return t(s.state,s.getters)},n,Object.assign({},r))};ve.prototype.replaceState=function(t){var n=this;this._withCommit(function(){n._state.data=t})};ve.prototype.registerModule=function(t,n,r){r===void 0&&(r={}),typeof t=="string"&&(t=[t]),this._modules.register(t,n),Bn(this,this.state,t,this._modules.get(t),r.preserveState),Hr(this,this.state)};ve.prototype.unregisterModule=function(t){var n=this;typeof t=="string"&&(t=[t]),this._modules.unregister(t),this._withCommit(function(){var r=Kr(n.state,t.slice(0,-1));delete r[t[t.length-1]]}),di(this)};ve.prototype.hasModule=function(t){return typeof t=="string"&&(t=[t]),this._modules.isRegistered(t)};ve.prototype.hotUpdate=function(t){this._modules.update(t),di(this,!0)};ve.prototype._withCommit=function(t){var n=this._committing;this._committing=!0,t(),this._committing=n};Object.defineProperties(ve.prototype,Vr);var Gr=Ia(function(e,t){var n={};return Oa(t).forEach(function(r){var s=r.key,o=r.val;n[s]=function(){var l=this.$store.state,c=this.$store.getters;if(e){var f=Pa(this.$store,"mapState",e);if(!f)return;l=f.context.state,c=f.context.getters}return typeof o=="function"?o.call(this,l,c):l[o]},n[s].vuex=!0}),n});function Oa(e){return Ra(e)?Array.isArray(e)?e.map(function(t){return{key:t,val:t}}):Object.keys(e).map(function(t){return{key:t,val:e[t]}}):[]}function Ra(e){return Array.isArray(e)||ai(e)}function Ia(e){return function(t,n){return typeof t!="string"?(n=t,t=""):t.charAt(t.length-1)!=="/"&&(t+="/"),e(t,n)}}function Pa(e,t,n){var r=e._modulesNamespaceMap[n];return r}const Sa={name:"BookTable",data(){return{bookEntries:[]}},mounted(){this.getBookList()},computed:Gr({}),methods:{getBookList:function(){var e=this;fetch(this.$store.state.config.API_URL+"/Book").then(function(t){return t.json()}).then(t=>{e.bookEntries=t})},deleteBook(e){fetch(this.$store.state.config.API_URL+"/Book/"+e,{method:"DELETE",headers:{}}).then(function(t){if(!(t.status==401||t.status==403))return t.json()}).then(()=>{this.getBookList()}).error(t=>{t.status==401||t.status==403})}}},Ta=e=>($r("data-v-3a1e7e07"),e=e(),Mr(),e),Aa={class:"table-wrapper"},ka=Ta(()=>j("thead",null,[j("tr",null,[j("td",null,"Id"),He(),j("td",null,"Title"),He(),j("td",null,"Author"),He(),j("td",null,"Year published"),He(),j("td",null,"Index"),He(),j("td",null,"Actions")])],-1)),$a=["onClick"];function Ma(e,t,n,r,s,o){const i=Te("router-link");return ue(),pe("div",Aa,[Z(i,{class:"addbtn",to:{path:"/book-add"}},{default:vn(()=>[He("Add")]),_:1}),j("table",null,[ka,j("tbody",null,[(ue(!0),pe(Ae,null,No(s.bookEntries,l=>(ue(),pe("tr",{key:l.id},[j("td",null,tt(l.id),1),j("td",null,tt(l.title),1),j("td",null,tt(l.author),1),j("td",null,tt(l.yearPublished),1),j("td",null,tt(l.bookIndex),1),j("td",null,[Z(i,{to:{path:"/edit-book/"+l.id}},{default:vn(()=>[He("Edit")]),_:2},1032,["to"]),He(),j("button",{onClick:c=>o.deleteBook(l.id)},"Delete",8,$a)])]))),128))])])])}const Ks=Ye(Sa,[["render",Ma],["__scopeId","data-v-3a1e7e07"]]);const La={name:"Dashboard",data(){return{selectedTab:0,tabs:[{name:"Books",component:ho(Ks)}]}},components:{BookTable:Ks},mounted(){},methods:{selectTab(e){this.selectedTab=e}}},Na={class:"admin-dashboard"},ja={class:"admin-dashboard"},Fa=["innerHTML","onClick"],Ba={class:"shown-container"};function Da(e,t,n,r,s,o){return ue(),pe("div",Na,[j("div",ja,[(ue(!0),pe(Ae,null,No(s.tabs,i=>(ue(),pe("button",{class:On({tab:!0,active:s.tabs.indexOf(i)==s.selectedTab}),key:i.name,innerHTML:i.name,onClick:l=>o.selectTab(s.tabs.indexOf(i))},null,10,Fa))),128)),j("div",Ba,[(ue(),ar(kl,null,[(ue(),ar(Hl(this.tabs[this.selectedTab].component)))],1024))])])])}const Ua=Ye(La,[["render",Da],["__scopeId","data-v-e19aee3b"]]);const Ha={name:"Home",data(){},components:{Dashboard:Ua},methods:{},mounted(){}},Ka=e=>($r("data-v-aad8fcac"),e=e(),Mr(),e),Va={class:"home"},Ga={class:"background"},za={class:"list-container"},Wa=Ka(()=>j("h2",null,"Books",-1)),qa={class:"column"};function Qa(e,t,n,r,s,o){const i=Te("Dashboard");return ue(),pe("div",Va,[j("div",Ga,[j("div",za,[Wa,j("div",qa,[Z(i)])])])])}const Ya=Ye(Ha,[["render",Qa],["__scopeId","data-v-aad8fcac"]]);const Ja=$n({name:"SingleLineEdit",props:{label:null,name:null,value:{type:String,default(){return""}},is_disabled:{type:Boolean,default(){return!1}}},data(){return{innerValue:""}},watch:{innerValue:{handler:function(e){this.$emit("valueChanged",e)},immediate:!1},value:{handler:function(e){this.innerValue=e},immediate:!1}},mounted(){this.innerValue=this.value}}),Xa={class:"editor-line"},Za={class:"label"},ef={key:0},tf={class:"input"},nf=["name","disabled"];function rf(e,t,n,r,s,o){return ue(),pe("div",Xa,[j("div",Za,[this.label!=null?(ue(),pe("label",ef,tt(e.label),1)):Fr("",!0)]),j("div",tf,[$o(j("input",{name:e.name,type:"text","onUpdate:modelValue":t[0]||(t[0]=i=>e.innerValue=i),disabled:e.is_disabled},null,8,nf),[[Yo,e.innerValue]])])])}const sf=Ye(Ja,[["render",rf],["__scopeId","data-v-d6ae499b"]]);const of={name:"MultiLineEdit",data(){return{message_slug:""}},props:{label:null,name:null,value:"",is_disabled:{type:Boolean,default(){return!1}}},watch:{message_slug:{handler:function(e){this.$emit("valueChanged",e)},immediate:!1},value:{handler:function(e){this.message_slug=e},immediate:!1}},mounted(){this.message_slug=this.value}},lf={class:"editor-line"},cf={class:"label"},uf={key:0},af={class:"input"},ff=["name","disabled"];function df(e,t,n,r,s,o){return ue(),pe("div",lf,[j("div",cf,[this.label!=null?(ue(),pe("label",uf,tt(n.label),1)):Fr("",!0)]),j("div",af,[$o(j("textarea",{name:n.name,"onUpdate:modelValue":t[0]||(t[0]=i=>s.message_slug=i),disabled:n.is_disabled},null,8,ff),[[Yo,s.message_slug]])])])}const hf=Ye(of,[["render",df],["__scopeId","data-v-d1d12cd2"]]);$n({name:"DateEdit",props:{label:null,name:null,value:{type:Date,default(){return""}},is_disabled:{type:Boolean,default(){return!1}}},data(){return{innerValue:""}},watch:{innerValue:{handler:function(e){this.$emit("valueChanged",e)},immediate:!1},value:{handler:function(e){this.innerValue=e},immediate:!1}},mounted(){this.innerValue=this.value}});const pf={name:"BookEditor",model:{prop:"entry",event:"change"},props:{error:null,is_edit:{type:Boolean,default(){return!1}},editorTitle:{type:String,default(){return"Title"}},entry:{id:{type:String,default(){return null}},author:{type:String,default(){return null}},yearPublished:{type:Date,default(){return null}},bookIndex:{type:String,default(){return null}}}},components:{SingleLineEdit:sf,MultiLineEdit:hf,LinkEdit,ImageUploader},methods:{addFile(e){this.readFile(e,"fileadd")},addImage(e){this.readFile(e,"imageadd")},getPureBase64(e){var t=e.split(";"),n=t[t.length-1];return n.substr(n.indexOf(",")+1)},readFile(e,t){var n=this,r=e.name,s=new FileReader;s.readAsDataURL(e),s.onload=function(){n.$emit(t,{filename:r,base64:n.getPureBase64(s.result)})},s.onerror=function(o){n.$emit("error",new{message:"Could not load file: "+r+"; "+o.message,error:o})}},onHumanReadableId(e){this.$emit("modelEdit",{id:this.entry.id,humanReadableId:e,title:this.entry.title,description:this.entry.description,screenshots:this.entry.screenshots,links:this.entry.links})},onTitle(e){this.$emit("modelEdit",{id:this.entry.id,humanReadableId:this.entry.humanReadableId,title:e,description:this.entry.description,screenshots:this.entry.screenshots,links:this.entry.links})},onDescription(e){this.$emit("modelEdit",{id:this.entry.id,humanReadableId:this.entry.humanReadableId,title:this.entry.title,description:e,screenshots:this.entry.screenshots,links:this.entry.links})},onLinks(e){this.$emit("modelEdit",{id:this.entry.id,humanReadableId:this.entry.humanReadableId,title:this.entry.title,description:this.entry.description,screenshots:this.entry.screenshots,links:e})},onScreenshots(e){this.$emit("modelEdit",{id:this.entry.id,humanReadableId:this.entry.humanReadableId,title:this.entry.title,description:this.entry.description,screenshots:e,links:this.entry.links})}}},mf=e=>($r("data-v-ce0e1569"),e=e(),Mr(),e),gf={class:"editor"},_f={class:"column"},bf={key:0,class:"error"},yf=["innerHTML"],vf=mf(()=>j("input",{class:"savebtn",type:"submit",value:"Save"},null,-1));function Ef(e,t,n,r,s,o){const i=Te("router-link"),l=Te("SingleLineEdit"),c=Te("DateEdit"),f=Te("MultiLineEdit"),a=Te("LinkEdit"),h=Te("ImageUploader");return ue(),pe("div",gf,[j("div",_f,[j("h2",null,tt(n.editorTitle),1),this.error!=null?(ue(),pe("div",bf,[j("p",{innerHTML:this.error},null,8,yf)])):Fr("",!0),vf,Z(i,{class:"cancelbtn",to:{path:"/admin/dashboard"}},{default:vn(()=>[He("Cancel")]),_:1}),Z(l,{name:"title",label:"Title",value:n.entry.title,onValueChanged:t[0]||(t[0]=p=>o.onTitle(p))},null,8,["value"]),Z(l,{name:"author",label:"Author",value:n.entry.author,onValueChanged:t[1]||(t[1]=p=>o.onHumanReadableId(p))},null,8,["value"]),Z(c,{name:"yearPublished",label:"Year published",value:n.entry.yearPublished,onValueChanged:t[2]||(t[2]=p=>o.onDescription(p))},null,8,["value"]),Z(f,{name:"bookIndex",label:"Book index",value:n.entry.yearPublished,onValueChanged:t[3]||(t[3]=p=>o.onDescription(p))},null,8,["value"]),Z(a,{links:n.entry.links,onAdd:t[4]||(t[4]=p=>o.addFile(p)),onRemove:t[5]||(t[5]=p=>e.$emit("removeFile",p)),is_edit:n.is_edit,onValueChanged:t[6]||(t[6]=p=>o.onLinks(p))},null,8,["links","is_edit"]),Z(h,{images:n.entry.screenshots,onAdd:t[7]||(t[7]=p=>o.addImage(p)),onRemove:t[8]||(t[8]=p=>e.$emit("removeImage",p)),is_edit:n.is_edit,onValueChanged:t[9]||(t[9]=p=>o.onScreenshots(p))},null,8,["images","is_edit"])])])}const vi=Ye(pf,[["render",Ef],["__scopeId","data-v-ce0e1569"]]),xf={name:"GameAdd",data(){return{error:null,entry:{id:"",author:"",title:"",yearPublished:"",bookIndex:""}}},components:{GameEditor:vi},computed:Gr({token:e=>"Bearer "+e.token}),methods:{uploadBook:function(){var e=this;e.entry.screenshots.forEach(function(n){n.filename=n.link}),e.entry.links.forEach(function(n){n.filename=n.link});var t={author:e.entry.author,title:e.entry.title,yearPublished:e.entry.yearPublished,bookIndex:e.entry.bookIndex};fetch(e.$store.state.config.API_URL+"/games/",{method:"POST",headers:{"Content-Type":"application/json;charset=UTF-8"},body:JSON.stringify(t)}).then(function(n){if(!(n.status==401||n.status==403))return n.json()}).then(n=>{e.$router.push("/admin/dashboard")}).catch(n=>{n.status==401||n.status==403,e.error=n.bodyText})},onInput(e){this.entry=e}}},wf={class:"game"},Cf={class:"background"};function Of(e,t,n,r,s,o){const i=Te("GameEditor");return ue(),pe("div",wf,[j("div",Cf,[j("form",{onSubmit:t[2]||(t[2]=Jo((...l)=>e.uploadGame&&e.uploadGame(...l),["prevent"]))},[Z(i,{entry:s.entry,error:s.error,editorTitle:"Add game",is_edit:!1,onModelEdit:t[0]||(t[0]=l=>o.onInput(l)),onError:t[1]||(t[1]=l=>this.error=l.message)},null,8,["entry","error"])],32)])])}const Rf=Ye(xf,[["render",Of]]),If={name:"GameEdit",data(){return{error:null,entry:{id:"",author:"",title:"",yearPublished:"",bookIndex:""}}},components:{GameEditor:vi},computed:Gr({}),mounted(){this.getBook()},methods:{getBook(){var e=this.$route.params.id;fetch(this.$store.state.config.API_URL+"/Book/"+e,{headers:{"Content-Type":"application/json;charset=UTF-8"}}).then(function(t){if(!(t.status==401||t.status==403))return t.json()}).then(t=>{this.entry=t})},saveBook(){var e=this;e.entry.screenshots.forEach(function(n){n.filename=n.link}),e.entry.links.forEach(function(n){n.filename=n.link});var t={id:e.entry.id,author:e.entry.author,title:e.entry.title,yearPublished:e.entry.yearPublished,bookIndex:e.entry.bookIndex};fetch(e.$store.state.config.API_URL+"/Book/",{method:"PUT",headers:{Authorization:e.token,"Content-Type":"application/json;charset=UTF-8"},body:JSON.stringify(t)}).then(function(n){if(!(n.status==401||n.status==403))return n.json()}).then(n=>{e.$router.push("/admin/dashboard")}).catch(n=>{n.status==401||n.status==403,e.error=n.bodyText})},onInput(e){this.entry=e}}},Pf={class:"game"},Sf={class:"background"};function Tf(e,t,n,r,s,o){const i=Te("GameEditor");return ue(),pe("div",Pf,[j("div",Sf,[j("form",{onSubmit:t[2]||(t[2]=Jo((...l)=>e.saveGame&&e.saveGame(...l),["prevent"]))},[Z(i,{entry:s.entry,error:s.error,editorTitle:"Edit game",is_edit:!0,onModelEdit:t[0]||(t[0]=l=>o.onInput(l)),onError:t[1]||(t[1]=l=>this.error=l.message)},null,8,["entry","error"])],32)])])}const Af=Ye(If,[["render",Tf]]),Ei={API_URL:"http://localhost:5222",DEFAULT_TITLE:"Books"};let Xn="Not rocket science";const kf=[{path:"/",component:Ya,meta:{title:Xn}},{path:"/add-book",component:Rf,meta:{title:Xn+" EDIT"}},{path:"/edit-book/:id",component:Af,meta:{title:Xn+" EDIT"}}],xi=new Ca({state:{token:null,config:{API_URL:Ei.API_URL}},mutations:{setToken(e,t){e.token=t},purgeToken(e){e.token=null},initialiseStore(e){var t=localStorage.getItem("token");t&&(e.token=JSON.parse(t))}}});xi.subscribe((e,t)=>{localStorage.setItem("token",JSON.stringify(t.token))});const wi=new ia({routes:kf,history:xu()});wi.afterEach(e=>{document.title=e.meta.title||Ei.DEFAULT_TITLE});Kc({extends:Yc,beforeCreate(){this.$store.commit("initialiseStore")}}).use(wi).use(xi).mount("#app"); diff --git a/dist/index.html b/dist/index.html new file mode 100644 index 0000000..527715e --- /dev/null +++ b/dist/index.html @@ -0,0 +1,19 @@ + + + + + + + Notrocketscience + + + + + +
+ + + + \ No newline at end of file diff --git a/favicon.ico b/favicon.ico new file mode 100644 index 0000000..c7b9a43 Binary files /dev/null and b/favicon.ico differ diff --git a/frontend.njsproj b/frontend.njsproj new file mode 100644 index 0000000..ccbddf0 --- /dev/null +++ b/frontend.njsproj @@ -0,0 +1,158 @@ + + + + Debug + 2.0 + a14c5984-6907-420a-900f-ec6f55275e21 + . + npm + + + . + . + v4.0 + {3AF33F2E-1136-4D97-BBB7-1795711AC8B8};{349c5851-65df-11da-9384-00065b846f21};{9092AA53-FB77-4645-B42D-1CCCA6BD08BD} + 5173 + True + run dev + False + + + true + + + true + + + + + + Code + + + + + + + + + Code + + + + + Code + + + Code + + + + Code + + + Code + + + Code + + + + + + Code + + + Code + + + Code + + + + + Code + + + + Code + + + Code + + + Code + + + Code + + + + + + + + + + + + + + + + + + + + + + + Code + + + + + + npm run build + + + + + + + + False + True + 0 + / + http://localhost:48022/ + False + True + http://localhost:1337 + False + + + + + + + CurrentPage + False + False + False + False + + + + + + + + + False + False + + + + + \ No newline at end of file diff --git a/frontend.njsproj.user b/frontend.njsproj.user new file mode 100644 index 0000000..cce4380 --- /dev/null +++ b/frontend.njsproj.user @@ -0,0 +1,7 @@ + + + + Debug|Any CPU + D:\Program Files\nodejs\node.exe + + \ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 0000000..c95d708 --- /dev/null +++ b/index.html @@ -0,0 +1,17 @@ + + + + + + + Notrocketscience + + + +
+ + + + \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..7c9d923 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,2960 @@ +{ + "name": "3", + "version": "0.2.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "3", + "version": "0.2.0", + "dependencies": { + "ace-builds": "^1.44.0", + "vue": "^3.2.47", + "vue-router": "^4.1.6", + "vue3-ace-editor": "^2.2.4", + "vue3-carousel": "^0.2.16", + "vuex": "^4.1.0" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^4.1.0", + "@vitejs/plugin-vue-jsx": "^3.0.0", + "eslint": "^8.34.0", + "eslint-plugin-vue": "^9.9.0", + "vite": "^4.1.4" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", + "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.0.tgz", + "integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.0", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.21.0", + "@babel/helpers": "^7.21.0", + "@babel/parser": "^7.21.0", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.21.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.1.tgz", + "integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.21.0", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz", + "integrity": "sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-member-expression-to-functions": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/helper-split-export-declaration": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", + "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", + "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.2", + "@babel/types": "^7.21.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", + "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-member-expression-to-functions": "^7.20.7", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", + "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", + "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", + "dev": true, + "dependencies": { + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.0", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.2.tgz", + "integrity": "sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", + "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", + "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.21.0.tgz", + "integrity": "sha512-xo///XTPp3mDzTtrqXoBlK9eiAYW3wv9JXglcn/u1bi60RW11dEUxIgA8cbnDhutS1zacjMRmAwxE0gMklLnZg==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-typescript": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.2.tgz", + "integrity": "sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.21.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.21.2", + "@babel/types": "^7.21.2", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.21.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.2.tgz", + "integrity": "sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.17.tgz", + "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz", + "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.17.tgz", + "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz", + "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz", + "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz", + "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz", + "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz", + "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz", + "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz", + "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz", + "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz", + "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz", + "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz", + "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz", + "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz", + "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz", + "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz", + "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz", + "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz", + "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz", + "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz", + "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.0.tgz", + "integrity": "sha512-fluIaaV+GyV24CCu/ggiHdV+j4RNh85yQnAYS/G2mZODZgGmmlrgCydjUcV3YvxCm9x8nMAfThsqTni4KiXT4A==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.35.0.tgz", + "integrity": "sha512-JXdzbRiWclLVoD8sNUjR443VVlYqiYmDVT6rGUEIEHU5YJW0gaVZwV2xgM7D4arkvASqD0IlLUVjHiFuxaftRw==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@vitejs/plugin-vue": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.1.0.tgz", + "integrity": "sha512-++9JOAFdcXI3lyer9UKUV4rfoQ3T1RN8yDqoCLar86s0xQct5yblxAE+yWgRnU5/0FOlVCpTZpYSBV/bGWrSrQ==", + "dev": true, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@vitejs/plugin-vue-jsx": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-3.0.0.tgz", + "integrity": "sha512-vurkuzgac5SYuxd2HUZqAFAWGTF10diKBwJNbCvnWijNZfXd+7jMtqjPFbGt7idOJUn584fP1Ar9j/GN2jQ3Ew==", + "dev": true, + "dependencies": { + "@babel/core": "^7.20.5", + "@babel/plugin-transform-typescript": "^7.20.2", + "@vue/babel-plugin-jsx": "^1.1.1" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.0.0", + "vue": "^3.0.0" + } + }, + "node_modules/@vue/babel-helper-vue-transform-on": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.0.2.tgz", + "integrity": "sha512-hz4R8tS5jMn8lDq6iD+yWL6XNB699pGIVLk7WSJnn1dbpjaazsjZQkieJoRX6gW5zpYSCFqQ7jUquPNY65tQYA==", + "dev": true + }, + "node_modules/@vue/babel-plugin-jsx": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.1.1.tgz", + "integrity": "sha512-j2uVfZjnB5+zkcbc/zsOc0fSNGCMMjaEXP52wdwdIfn0qjFfEYpYZBFKFg+HHnQeJCVrjOeO0YxgaL7DMrym9w==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/plugin-syntax-jsx": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0", + "@vue/babel-helper-vue-transform-on": "^1.0.2", + "camelcase": "^6.0.0", + "html-tags": "^3.1.0", + "svg-tags": "^1.0.0" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.47.tgz", + "integrity": "sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==", + "dependencies": { + "@babel/parser": "^7.16.4", + "@vue/shared": "3.2.47", + "estree-walker": "^2.0.2", + "source-map": "^0.6.1" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.47.tgz", + "integrity": "sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==", + "dependencies": { + "@vue/compiler-core": "3.2.47", + "@vue/shared": "3.2.47" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.47.tgz", + "integrity": "sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==", + "dependencies": { + "@babel/parser": "^7.16.4", + "@vue/compiler-core": "3.2.47", + "@vue/compiler-dom": "3.2.47", + "@vue/compiler-ssr": "3.2.47", + "@vue/reactivity-transform": "3.2.47", + "@vue/shared": "3.2.47", + "estree-walker": "^2.0.2", + "magic-string": "^0.25.7", + "postcss": "^8.1.10", + "source-map": "^0.6.1" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.47.tgz", + "integrity": "sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==", + "dependencies": { + "@vue/compiler-dom": "3.2.47", + "@vue/shared": "3.2.47" + } + }, + "node_modules/@vue/devtools-api": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.0.tgz", + "integrity": "sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==" + }, + "node_modules/@vue/reactivity": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.47.tgz", + "integrity": "sha512-7khqQ/75oyyg+N/e+iwV6lpy1f5wq759NdlS1fpAhFXa8VeAIKGgk2E/C4VF59lx5b+Ezs5fpp/5WsRYXQiKxQ==", + "dependencies": { + "@vue/shared": "3.2.47" + } + }, + "node_modules/@vue/reactivity-transform": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.47.tgz", + "integrity": "sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==", + "dependencies": { + "@babel/parser": "^7.16.4", + "@vue/compiler-core": "3.2.47", + "@vue/shared": "3.2.47", + "estree-walker": "^2.0.2", + "magic-string": "^0.25.7" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.47.tgz", + "integrity": "sha512-RZxbLQIRB/K0ev0K9FXhNbBzT32H9iRtYbaXb0ZIz2usLms/D55dJR2t6cIEUn6vyhS3ALNvNthI+Q95C+NOpA==", + "dependencies": { + "@vue/reactivity": "3.2.47", + "@vue/shared": "3.2.47" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.47.tgz", + "integrity": "sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA==", + "dependencies": { + "@vue/runtime-core": "3.2.47", + "@vue/shared": "3.2.47", + "csstype": "^2.6.8" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.47.tgz", + "integrity": "sha512-dN9gc1i8EvmP9RCzvneONXsKfBRgqFeFZLurmHOveL7oH6HiFXJw5OGu294n1nHc/HMgTy6LulU/tv5/A7f/LA==", + "dependencies": { + "@vue/compiler-ssr": "3.2.47", + "@vue/shared": "3.2.47" + }, + "peerDependencies": { + "vue": "3.2.47" + } + }, + "node_modules/@vue/shared": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.47.tgz", + "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==" + }, + "node_modules/ace-builds": { + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.44.0.tgz", + "integrity": "sha512-PFNMSYqFdEUkul2Ntud0HvA09AgY+F1ag0UYdpMH60wNI/qOA8cB8tlTgoALMEwIdUPJK2CjrIQ7OnbiSS/ugQ==" + }, + "node_modules/acorn": { + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/browserslist": { + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001462", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001462.tgz", + "integrity": "sha512-PDd20WuOBPiasZ7KbFnmQRyuLE7cFXW2PVd7dmALzbkUXEP46upAuCDm9eY9vho8fgNMGmbAX92QBZHzcnWIqw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "2.6.21", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.21.tgz", + "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==" + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.324", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.324.tgz", + "integrity": "sha512-m+eBs/kh3TXnCuqDF6aHLLRwLK2U471JAbZ1KYigf0TM96fZglxv0/ZFBvyIxnLKsIWUoDiVnHTA2mhYz1fqdA==", + "dev": true + }, + "node_modules/esbuild": { + "version": "0.16.17", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.17.tgz", + "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.16.17", + "@esbuild/android-arm64": "0.16.17", + "@esbuild/android-x64": "0.16.17", + "@esbuild/darwin-arm64": "0.16.17", + "@esbuild/darwin-x64": "0.16.17", + "@esbuild/freebsd-arm64": "0.16.17", + "@esbuild/freebsd-x64": "0.16.17", + "@esbuild/linux-arm": "0.16.17", + "@esbuild/linux-arm64": "0.16.17", + "@esbuild/linux-ia32": "0.16.17", + "@esbuild/linux-loong64": "0.16.17", + "@esbuild/linux-mips64el": "0.16.17", + "@esbuild/linux-ppc64": "0.16.17", + "@esbuild/linux-riscv64": "0.16.17", + "@esbuild/linux-s390x": "0.16.17", + "@esbuild/linux-x64": "0.16.17", + "@esbuild/netbsd-x64": "0.16.17", + "@esbuild/openbsd-x64": "0.16.17", + "@esbuild/sunos-x64": "0.16.17", + "@esbuild/win32-arm64": "0.16.17", + "@esbuild/win32-ia32": "0.16.17", + "@esbuild/win32-x64": "0.16.17" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint": { + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.35.0.tgz", + "integrity": "sha512-BxAf1fVL7w+JLRQhWl2pzGeSiGqbWumV4WNvc9Rhp6tiCtm4oHnyPBSEtMGZwrQgudFQ+otqzWoPB7x+hxoWsw==", + "dev": true, + "dependencies": { + "@eslint/eslintrc": "^2.0.0", + "@eslint/js": "8.35.0", + "@humanwhocodes/config-array": "^0.11.8", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.4.0", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-vue": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.9.0.tgz", + "integrity": "sha512-YbubS7eK0J7DCf0U2LxvVP7LMfs6rC6UltihIgval3azO3gyDwEGVgsCMe1TmDiEkl6GdMKfRpaME6QxIYtzDQ==", + "dev": true, + "dependencies": { + "eslint-utils": "^3.0.0", + "natural-compare": "^1.4.0", + "nth-check": "^2.0.1", + "postcss-selector-parser": "^6.0.9", + "semver": "^7.3.5", + "vue-eslint-parser": "^9.0.1", + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/eslint-plugin-vue/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-vue/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-vue/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/eslint/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/espree": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "dev": true, + "dependencies": { + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/html-tags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", + "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/js-sdsl": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz", + "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "dependencies": { + "sourcemap-codec": "^1.4.8" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", + "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", + "dev": true + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==" + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.18.0.tgz", + "integrity": "sha512-J8C6VfEBjkvYPESMQYxKHxNOh4A5a3FlP+0BETGo34HEcE4eTlgCrO2+eWzlu2a/sHs2QUkZco+wscH7jhhgWg==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "deprecated": "Please use @jridgewell/sourcemap-codec instead" + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", + "dev": true + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/vite": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.1.4.tgz", + "integrity": "sha512-3knk/HsbSTKEin43zHu7jTwYWv81f8kgAL99G5NWBcA1LKvtvcVAC4JjBH1arBunO9kQka+1oGbrMKOjk4ZrBg==", + "dev": true, + "dependencies": { + "esbuild": "^0.16.14", + "postcss": "^8.4.21", + "resolve": "^1.22.1", + "rollup": "^3.10.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "@types/node": ">= 14", + "less": "*", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vue": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.47.tgz", + "integrity": "sha512-60188y/9Dc9WVrAZeUVSDxRQOZ+z+y5nO2ts9jWXSTkMvayiWxCWOWtBQoYjLeccfXkiiPZWAHcV+WTPhkqJHQ==", + "dependencies": { + "@vue/compiler-dom": "3.2.47", + "@vue/compiler-sfc": "3.2.47", + "@vue/runtime-dom": "3.2.47", + "@vue/server-renderer": "3.2.47", + "@vue/shared": "3.2.47" + } + }, + "node_modules/vue-eslint-parser": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.1.0.tgz", + "integrity": "sha512-NGn/iQy8/Wb7RrRa4aRkokyCZfOUWk19OP5HP6JEozQFX5AoS/t+Z0ZN7FY4LlmWc4FNI922V7cvX28zctN8dQ==", + "dev": true, + "dependencies": { + "debug": "^4.3.4", + "eslint-scope": "^7.1.1", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.1", + "esquery": "^1.4.0", + "lodash": "^4.17.21", + "semver": "^7.3.6" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/vue-eslint-parser/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/vue-eslint-parser/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/vue-eslint-parser/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/vue-router": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.1.6.tgz", + "integrity": "sha512-DYWYwsG6xNPmLq/FmZn8Ip+qrhFEzA14EI12MsMgVxvHFDYvlr4NXpVF5hrRH1wVcDP8fGi5F4rxuJSl8/r+EQ==", + "dependencies": { + "@vue/devtools-api": "^6.4.5" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/vue3-ace-editor": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/vue3-ace-editor/-/vue3-ace-editor-2.2.4.tgz", + "integrity": "sha512-FZkEyfpbH068BwjhMyNROxfEI8135Sc+x8ouxkMdCNkuj/Tuw83VP/gStFQqZHqljyX9/VfMTCdTqtOnJZGN8g==", + "dependencies": { + "resize-observer-polyfill": "^1.5.1" + }, + "peerDependencies": { + "ace-builds": "*", + "vue": "^3" + } + }, + "node_modules/vue3-carousel": { + "version": "0.2.16", + "resolved": "https://registry.npmjs.org/vue3-carousel/-/vue3-carousel-0.2.16.tgz", + "integrity": "sha512-M0erVlg00e79YF1N0puxPfGSpVTTkk0RUHgJaqv+gerw5sZC33SL5NYHJLqit1Kbm8ebS/KyiTi9gjtW2D6bZw==", + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/vuex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/vuex/-/vuex-4.1.0.tgz", + "integrity": "sha512-hmV6UerDrPcgbSy9ORAtNXDr9M4wlNP4pEFKye4ujJF8oqgFFuxDCdOLS3eNoRTtq5O3hoBDh9Doj1bQMYHRbQ==", + "dependencies": { + "@vue/devtools-api": "^6.0.0-beta.11" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/xml-name-validator": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", + "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..7d11c64 --- /dev/null +++ b/package.json @@ -0,0 +1,26 @@ +{ + "name": "3", + "version": "0.2.0", + "private": true, + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview", + "production": "vite preview --host 0.0.0.0" + }, + "dependencies": { + "ace-builds": "^1.44.0", + "vue": "^3.2.47", + "vue-router": "^4.1.6", + "vue3-ace-editor": "^2.2.4", + "vue3-carousel": "^0.2.16", + "vuex": "^4.1.0" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^4.1.0", + "@vitejs/plugin-vue-jsx": "^3.0.0", + "eslint": "^8.34.0", + "eslint-plugin-vue": "^9.9.0", + "vite": "^4.1.4" + } +} diff --git a/src/App.vue b/src/App.vue new file mode 100644 index 0000000..31d94fa --- /dev/null +++ b/src/App.vue @@ -0,0 +1,170 @@ + + + + + + diff --git a/src/assets/fonts/Buran USSR.ttf b/src/assets/fonts/Buran USSR.ttf new file mode 100644 index 0000000..de4693c Binary files /dev/null and b/src/assets/fonts/Buran USSR.ttf differ diff --git a/src/assets/fonts/MusticaPro-SemiBold.otf b/src/assets/fonts/MusticaPro-SemiBold.otf new file mode 100644 index 0000000..710e7d5 Binary files /dev/null and b/src/assets/fonts/MusticaPro-SemiBold.otf differ diff --git a/src/assets/fonts/README.txt b/src/assets/fonts/README.txt new file mode 100644 index 0000000..8d11ded --- /dev/null +++ b/src/assets/fonts/README.txt @@ -0,0 +1,33 @@ + +::: Buy Premium Version & Full Package, please visit ::: + +--> https://www.myfonts.com/fonts/alifinart-studio/mustica-pro/ + + +::: My Portfolio ::: + +--> www.behance.net/alifinart/ + + +::: Join our circle or subscribe now to get an extra-special offers ::: + +--> https://gumroad.com/alifinart + +-------------------- + +Any questions or request please feel free to email: + +alifinart@gmail.com + +Thank's. + +Copyright © 2021 Alifinart + +-------------------- + +If you distribute my work, MUST include the name of the foundry “Alifinart Studio” +and include a link to my portfolio (behance.net/alifinart), unless you have received +permission from us. + +Thank you. + diff --git a/src/components/Home.vue b/src/components/Home.vue new file mode 100644 index 0000000..41971bb --- /dev/null +++ b/src/components/Home.vue @@ -0,0 +1,52 @@ + + + + + + + diff --git a/src/components/admin/BookAdd.vue b/src/components/admin/BookAdd.vue new file mode 100644 index 0000000..077baa0 --- /dev/null +++ b/src/components/admin/BookAdd.vue @@ -0,0 +1,89 @@ + + + + + diff --git a/src/components/admin/BookEdit.vue b/src/components/admin/BookEdit.vue new file mode 100644 index 0000000..e09852c --- /dev/null +++ b/src/components/admin/BookEdit.vue @@ -0,0 +1,114 @@ + + + + + diff --git a/src/components/admin/BookTable.vue b/src/components/admin/BookTable.vue new file mode 100644 index 0000000..bbf30d4 --- /dev/null +++ b/src/components/admin/BookTable.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/src/components/admin/Dashboard.vue b/src/components/admin/Dashboard.vue new file mode 100644 index 0000000..6a9f38a --- /dev/null +++ b/src/components/admin/Dashboard.vue @@ -0,0 +1,67 @@ + + + + + \ No newline at end of file diff --git a/src/components/admin/elements/BookEditor.vue b/src/components/admin/elements/BookEditor.vue new file mode 100644 index 0000000..7ca2676 --- /dev/null +++ b/src/components/admin/elements/BookEditor.vue @@ -0,0 +1,159 @@ + + + + + \ No newline at end of file diff --git a/src/components/admin/elements/DateEdit.vue b/src/components/admin/elements/DateEdit.vue new file mode 100644 index 0000000..387dc80 --- /dev/null +++ b/src/components/admin/elements/DateEdit.vue @@ -0,0 +1,81 @@ + + + + + \ No newline at end of file diff --git a/src/components/admin/elements/MultiLineEdit.vue b/src/components/admin/elements/MultiLineEdit.vue new file mode 100644 index 0000000..ecdde44 --- /dev/null +++ b/src/components/admin/elements/MultiLineEdit.vue @@ -0,0 +1,90 @@ + + + + + \ No newline at end of file diff --git a/src/components/admin/elements/SingleLineEdit.vue b/src/components/admin/elements/SingleLineEdit.vue new file mode 100644 index 0000000..7a670a9 --- /dev/null +++ b/src/components/admin/elements/SingleLineEdit.vue @@ -0,0 +1,82 @@ + + + + + \ No newline at end of file diff --git a/src/config.js b/src/config.js new file mode 100644 index 0000000..9c680f9 --- /dev/null +++ b/src/config.js @@ -0,0 +1,2 @@ +import config from './infrastructure/config.js'; +export default config; \ No newline at end of file diff --git a/src/infrastructure/config.js b/src/infrastructure/config.js new file mode 100644 index 0000000..ff36413 --- /dev/null +++ b/src/infrastructure/config.js @@ -0,0 +1,4 @@ +export default { + API_URL: 'http://localhost:5222/api', + DEFAULT_TITLE: 'Books' +} \ No newline at end of file diff --git a/src/main.js b/src/main.js new file mode 100644 index 0000000..1434a84 --- /dev/null +++ b/src/main.js @@ -0,0 +1,88 @@ +import { createApp } from 'vue'; +import App from './App.vue'; +import { createWebHistory, createRouter } from 'vue-router'; +import { createStore } from 'vuex' + +import Home from './components/Home.vue'; +import BookAdd from './components/admin/BookAdd.vue'; +import BookEdit from './components/admin/BookEdit.vue'; + +import config from './config.js' + +import ace from 'ace-builds'; + +import modeJsonUrl from 'ace-builds/src-noconflict/mode-json?url'; +ace.config.setModuleUrl('ace/mode/json', modeJsonUrl); + +import themeChromeUrl from 'ace-builds/src-noconflict/theme-chrome?url'; +ace.config.setModuleUrl('ace/theme/chrome', themeChromeUrl); + +import workerJsonUrl from 'ace-builds/src-noconflict/worker-json?url'; // For vite +ace.config.setModuleUrl('ace/mode/json_worker', workerJsonUrl); + +let siteName = 'Not rocket science'; + +const routes = [ + { + path: '/', + component: Home, + meta: { title: siteName } + }, + { + path: '/add-book', + component: BookAdd, + meta: { title: siteName + " EDIT" } + }, + { + path: '/edit-book/:id', + component: BookEdit, + meta: { title: siteName + " EDIT" } + }, +]; + +const store = new createStore({ + state: { + token: null, + config: { + API_URL: config.API_URL + } + }, + mutations: { + setToken(state, token) { + state.token = token + }, + purgeToken(state) { + state.token = null + }, + initialiseStore(state) { + var tokenInStorage = localStorage.getItem('token'); + if (tokenInStorage) { + state.token = JSON.parse(tokenInStorage); + } + } + }, + +}); + +store.subscribe((mutation, state) => { + localStorage.setItem('token', JSON.stringify(state.token)); +}); + +const router = new createRouter({ + routes: routes, + history: createWebHistory() +}); + +router.afterEach((to) => { + document.title = to.meta.title || config.DEFAULT_TITLE; +}); + +const app = createApp({ + extends: App, + beforeCreate() { + this.$store.commit('initialiseStore') + } +}) +.use(router) +.use(store) +.mount('#app') diff --git a/vite.config.js b/vite.config.js new file mode 100644 index 0000000..de5cb31 --- /dev/null +++ b/vite.config.js @@ -0,0 +1,14 @@ +import { fileURLToPath, URL } from 'node:url' + +import { defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [vue()], + resolve: { + alias: { + '@': fileURLToPath(new URL('./src', import.meta.url)) + } + } +})