voodoojs 0.6.1 → 0.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +65 -13
- package/dist/index.cjs +4 -3
- package/dist/index.js +4 -3
- package/dist/voodoo.full.js +4 -3
- package/dist/voodoo.full.min.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,6 +4,13 @@
|
|
|
4
4
|
|
|
5
5
|
No mandatory build step · No runtime dependencies · No Virtual DOM · No configuration required
|
|
6
6
|
|
|
7
|
+
[Website](https://kwy404.github.io/Voodoo.js/) ·
|
|
8
|
+
[Playground](https://kwy404.github.io/Voodoo.js/playground.html) ·
|
|
9
|
+
[Components](https://kwy404.github.io/Voodoo.js/components.html) ·
|
|
10
|
+
[Examples](https://kwy404.github.io/Voodoo.js/examples/) ·
|
|
11
|
+
[Documentation](https://kwy404.github.io/Voodoo.js/docs/) ·
|
|
12
|
+
[GitHub](https://github.com/kwy404/Voodoo.js)
|
|
13
|
+
|
|
7
14
|
---
|
|
8
15
|
|
|
9
16
|
## Install
|
|
@@ -15,14 +22,16 @@ npm install voodoojs
|
|
|
15
22
|
Or drop it into a page, with nothing else:
|
|
16
23
|
|
|
17
24
|
```html
|
|
18
|
-
<script src="https://cdn.jsdelivr.net/npm/voodoojs/dist/voodoo.min.js" defer></script>
|
|
25
|
+
<script src="https://cdn.jsdelivr.net/npm/voodoojs@0.6/dist/voodoo.min.js" defer></script>
|
|
19
26
|
|
|
20
27
|
<div v-data="{ count: 0 }">
|
|
21
28
|
<button @click="count++">Clicked { count } times</button>
|
|
22
29
|
</div>
|
|
23
30
|
```
|
|
24
31
|
|
|
25
|
-
That page is a complete application. There is no build step, no bundler and no
|
|
32
|
+
That page is a complete application. There is no build step, no bundler and no
|
|
33
|
+
configuration. The tag is pinned to the `0.6` line, so patch releases arrive
|
|
34
|
+
without an edit; pin the exact version if you would rather approve each one.
|
|
26
35
|
|
|
27
36
|
## Two ways to write it
|
|
28
37
|
|
|
@@ -45,30 +54,73 @@ effect(() => console.log(state.count));
|
|
|
45
54
|
state.count++;
|
|
46
55
|
```
|
|
47
56
|
|
|
57
|
+
## What you get
|
|
58
|
+
|
|
59
|
+
Reactivity, components, a router, HTTP, forms with validation and masks, input
|
|
60
|
+
masks, i18n, charts, motion, sound, a devtools inspector, and 29 ready-made
|
|
61
|
+
components that need no registration — writing the tag is the whole usage.
|
|
62
|
+
|
|
63
|
+
```html
|
|
64
|
+
<v-button variant="primary">Save</v-button>
|
|
65
|
+
<v-input label="Email" type="email"></v-input>
|
|
66
|
+
<v-table :columns="cols" :rows="people"></v-table>
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## No eval, anywhere
|
|
70
|
+
|
|
71
|
+
Expressions run through a lexer, a Pratt parser and an interpreter, never `eval`
|
|
72
|
+
or `new Function`. That is why the library works under a strict Content Security
|
|
73
|
+
Policy with no `unsafe-eval`, which a browser test proves by loading it under
|
|
74
|
+
`script-src 'self'` and asserting no policy violation is raised.
|
|
75
|
+
|
|
76
|
+
## It cleans up after itself
|
|
77
|
+
|
|
78
|
+
Once a directive is installed, its attribute is read into memory and removed from
|
|
79
|
+
the document. What ships to the page is ordinary HTML, with no framework residue
|
|
80
|
+
in the inspector. Turn it off with `V.config.cleanAttributes = false` if you need
|
|
81
|
+
the attributes for something else.
|
|
82
|
+
|
|
48
83
|
## Builds
|
|
49
84
|
|
|
50
|
-
| File | What it carries |
|
|
51
|
-
| --- | --- |
|
|
52
|
-
| `dist/voodoo.core.min.js` | Reactivity, expressions, DOM engine, components, core directives |
|
|
53
|
-
| `dist/voodoo.min.js` | The above plus forms, validation, masks, UI and HTTP
|
|
54
|
-
| `dist/voodoo.full.min.js` | Everything: charts, motion, router, i18n, sound
|
|
85
|
+
| File | What it carries | Gzip |
|
|
86
|
+
| --- | --- | --- |
|
|
87
|
+
| `dist/voodoo.core.min.js` | Reactivity, expressions, DOM engine, components, core directives | 46 KB |
|
|
88
|
+
| `dist/voodoo.min.js` | The above plus forms, validation, masks, UI and HTTP | 83 KB |
|
|
89
|
+
| `dist/voodoo.full.min.js` | Everything: charts, motion, router, i18n, sound, devtools | 129 KB |
|
|
55
90
|
|
|
56
|
-
Module entry points are
|
|
91
|
+
Module entry points are published for bundlers, in ESM and CJS, with types:
|
|
57
92
|
|
|
58
93
|
```js
|
|
59
94
|
import { reactive } from 'voodoojs/reactivity';
|
|
60
95
|
import { http } from 'voodoojs/http';
|
|
61
96
|
```
|
|
62
97
|
|
|
63
|
-
|
|
98
|
+
## Performance
|
|
64
99
|
|
|
65
|
-
|
|
100
|
+
A 1,000-row keyed list, median of 30 samples, against the same document, every
|
|
101
|
+
framework bundled production and minified. Lower is better.
|
|
102
|
+
|
|
103
|
+
| | create 1k | update 1 in 10 | clear 1k |
|
|
104
|
+
| --- | ---: | ---: | ---: |
|
|
105
|
+
| vanilla JS | 48.74 | 7.52 | 21.06 |
|
|
106
|
+
| Preact 10.29.8 | 91.62 | 2.59 | 29.48 |
|
|
107
|
+
| **Voodoo.js** | **97.70** | **5.42** | **30.44** |
|
|
108
|
+
| React 19.2.8 | 100.23 | 4.63 | 33.59 |
|
|
109
|
+
| Vue 3.5.42 | 110.56 | 19.21 | 31.65 |
|
|
110
|
+
| Solid 1.9.15 | 111.63 | 0.91 | 19.99 |
|
|
111
|
+
| Alpine 3.17.1 | 179.47 | 104.51 | 31.39 |
|
|
66
112
|
|
|
67
|
-
|
|
113
|
+
Read honestly: hand-written vanilla still builds a list twice as fast, and Voodoo
|
|
114
|
+
is by far the largest bundle in that table. If size is your main constraint,
|
|
115
|
+
Alpine and Preact are the honest recommendation. Method and per-framework
|
|
116
|
+
adapters are in the repository.
|
|
68
117
|
|
|
69
|
-
|
|
118
|
+
## Documentation
|
|
70
119
|
|
|
71
|
-
|
|
120
|
+
Everything lives at **[kwy404.github.io/Voodoo.js](https://kwy404.github.io/Voodoo.js/)**:
|
|
121
|
+
a guide, an API reference, 13 working example applications, a playground with 26
|
|
122
|
+
runnable examples, and the component gallery. The site is built with Voodoo.js
|
|
123
|
+
itself and has no build step of its own.
|
|
72
124
|
|
|
73
125
|
## License
|
|
74
126
|
|
package/dist/index.cjs
CHANGED
|
@@ -7746,12 +7746,13 @@ function writeUrl(state2, url2, replace) {
|
|
|
7746
7746
|
}
|
|
7747
7747
|
}
|
|
7748
7748
|
if (settings2.mode !== "hash") return;
|
|
7749
|
-
const
|
|
7749
|
+
const marker = url2.indexOf("#");
|
|
7750
|
+
if (marker < 0) return;
|
|
7751
|
+
const hash = url2.slice(marker);
|
|
7750
7752
|
if (window.location.hash === hash) return;
|
|
7751
7753
|
writingHash = true;
|
|
7752
7754
|
try {
|
|
7753
|
-
|
|
7754
|
-
else window.location.hash = hash;
|
|
7755
|
+
window.location.hash = hash;
|
|
7755
7756
|
} finally {
|
|
7756
7757
|
setTimeout(() => {
|
|
7757
7758
|
writingHash = false;
|
package/dist/index.js
CHANGED
|
@@ -142,12 +142,13 @@ function writeUrl(state2, url2, replace) {
|
|
|
142
142
|
}
|
|
143
143
|
}
|
|
144
144
|
if (settings.mode !== "hash") return;
|
|
145
|
-
const
|
|
145
|
+
const marker = url2.indexOf("#");
|
|
146
|
+
if (marker < 0) return;
|
|
147
|
+
const hash = url2.slice(marker);
|
|
146
148
|
if (window.location.hash === hash) return;
|
|
147
149
|
writingHash = true;
|
|
148
150
|
try {
|
|
149
|
-
|
|
150
|
-
else window.location.hash = hash;
|
|
151
|
+
window.location.hash = hash;
|
|
151
152
|
} finally {
|
|
152
153
|
setTimeout(() => {
|
|
153
154
|
writingHash = false;
|
package/dist/voodoo.full.js
CHANGED
|
@@ -7869,12 +7869,13 @@ Suggestion: attribute expressions accept a single value. If the logic spans more
|
|
|
7869
7869
|
}
|
|
7870
7870
|
}
|
|
7871
7871
|
if (settings2.mode !== "hash") return;
|
|
7872
|
-
const
|
|
7872
|
+
const marker = url2.indexOf("#");
|
|
7873
|
+
if (marker < 0) return;
|
|
7874
|
+
const hash = url2.slice(marker);
|
|
7873
7875
|
if (window.location.hash === hash) return;
|
|
7874
7876
|
writingHash = true;
|
|
7875
7877
|
try {
|
|
7876
|
-
|
|
7877
|
-
else window.location.hash = hash;
|
|
7878
|
+
window.location.hash = hash;
|
|
7878
7879
|
} finally {
|
|
7879
7880
|
setTimeout(() => {
|
|
7880
7881
|
writingHash = false;
|
package/dist/voodoo.full.min.js
CHANGED
|
@@ -135,7 +135,7 @@ Suggestion: attribute expressions accept a single value. If the logic spans more
|
|
|
135
135
|
.v-json-object dt{font-weight:600;color:var(--v-text-muted,#6B6580)}
|
|
136
136
|
.v-json-object dd{margin:0}
|
|
137
137
|
.v-json-empty{color:var(--v-text-muted,#6B6580);font-style:italic}
|
|
138
|
-
`)}))}function Bv(e){let t=e.tagName;if(t==="FORM")return"submit";if(t==="INPUT"||t==="SELECT"||t==="TEXTAREA"){let n=e.type;return n==="button"||n==="submit"?"click":"change"}return"click"}function jv({el:e,cleanup:t,run:n}){var d,u;let r=V(e,"trigger")||Bv(e),[o,...i]=r.split(/[.\s]+/),s=G((d=V(e,"poll"))!=null?d:void 0,0);if(s>0){n();let p=setInterval(()=>{document.visibilityState==="visible"&&n()},s);t(()=>clearInterval(p));return}if(o==="load"||o==="ready"){n();return}if(o==="visible"||o==="revealed"){if(typeof IntersectionObserver=="undefined"){n();return}let p=new IntersectionObserver(f=>{for(let m of f)m.isIntersecting&&(n(),i.includes("repeat")||p.unobserve(e))},{rootMargin:"80px"});p.observe(e),t(()=>p.disconnect());return}let a=i.includes("once"),l=G((u=V(e,"debounce"))!=null?u:void 0,0),c=p=>{(e.tagName==="FORM"||e.href)&&p.preventDefault(),n(p)};l>0&&(c=Ue(c,l)),e.addEventListener(o,c,{once:a}),t(()=>e.removeEventListener(o,c))}var qv=[["get","GET"],["post","POST"],["put","PUT"],["patch","PATCH"],["delete","DELETE"]];for(let[e,t]of qv)y(e,({el:n,scope:r,expression:o,cleanup:i})=>{jv({el:n,scope:r,cleanup:i,run:a=>{let l=qr(o,r);if(!l)return;let c=V(n,"body")||V(n,"data-body"),d=c?q(c,r.child({$event:a}),"v-body"):void 0,u=V(n,"params"),p=u?q(u,r,"v-params"):void 0;jr({el:n,scope:r,method:t,url:l,body:d,params:p,event:a})}})});function qr(e,t){let n=e.trim();if(!n)return"";if((/^[./#?]/.test(n)||/^https?:\/\//i.test(n)||/^[\w-]+\/[\w\-/.]*$/.test(n))&&!/[+`'"]|\$\{/.test(n))return n;let o=q(n,t,"URL");return typeof o=="string"?o:n}y("load",({el:e,scope:t,expression:n})=>{let r=qr(n,t);r&&jr({el:e,scope:t,method:"GET",url:r})});y("load-visible",({el:e,scope:t,cleanup:n,expression:r})=>{let o=qr(r,t);if(!o)return;if(typeof IntersectionObserver=="undefined"){jr({el:e,scope:t,method:"GET",url:o});return}let i=new IntersectionObserver(s=>{for(let a of s)a.isIntersecting&&(i.unobserve(e),jr({el:e,scope:t,method:"GET",url:o}))},{rootMargin:"120px"});i.observe(e),n(()=>i.disconnect())});y("search",({el:e,scope:t,expression:n,cleanup:r})=>{var u,p;let o=e,i=qr(n,t),s=V(e,"param")||o.getAttribute("name")||"q",a=G((u=V(e,"debounce"))!=null?u:void 0,300),l=Number((p=V(e,"min-length"))!=null?p:0),c=Ue(()=>{let f=o.value.trim();f.length<l||jr({el:e,scope:t,method:"GET",url:i,params:{[s]:f}})},a),d=()=>c();o.addEventListener("input",d),r(()=>{o.removeEventListener("input",d),c.cancel()})});y("resource",({el:e,scope:t,expression:n,cleanup:r})=>{var l,c,d,u;let o=n.indexOf(":"),i=V(e,"as")||"resource",s=n.trim();if(o>-1){let p=n.slice(0,o).trim();/^[A-Za-z_$][\w$]*$/.test(p)&&(i=p,s=n.slice(o+1).trim())}let a=ii(()=>qr(s,t),{method:(V(e,"method")||"GET").toUpperCase(),params:()=>V(e,"params")?q(V(e,"params"),t,"v-params"):void 0,cache:G((l=V(e,"cache"))!=null?l:void 0,0)||void 0,retry:Number((c=V(e,"retry"))!=null?c:0),timeout:G((d=V(e,"timeout"))!=null?d:void 0,ve.defaults.timeout),jsonPath:V(e,"json-path"),poll:G((u=V(e,"poll"))!=null?u:void 0,0),manual:xa(e,"manual"),onSuccess:p=>Yn(e,"voodoo:success",{data:p}),onError:(p,f)=>Yn(e,"voodoo:error",{error:p,message:f})});t.set(i,a),r(()=>a.stop())},{priority:j.DATA});for(let e of["target","swap","trigger","poll","param","params","body","data-body","headers","cache","retry","timeout","as","json-path","template","offline-queue","min-length","scroll-to","manual","debounce","throttle","indicator"])y(e,()=>{},{priority:j.TRANSITION});od(ud);dd(Ot);gd(eu);Nd();var Vr=new Map;function Zd(e,t){let n=Vr.get(e);return n||Vr.set(e,n=new Set),n.add(t),()=>n.delete(t)}function Vv(e,t){let n=Zd(e,r=>{n(),t(r)});return n}function Uv(e,t){let n=Vr.get(e);if(n)for(let r of[...n])try{r(t)}catch(o){K(o,`event "${e}"`)}}function Wv(e,t){var n;if(!t){Vr.delete(e);return}(n=Vr.get(e))==null||n.delete(t)}function eu(e,t){var r,o;let n=typeof t=="function"?{mounted:t,updated:t}:t;y(e,i=>{var d,u;let s,a=!1,l=p=>{var f,m;return{el:i.el,value:p,oldValue:s,arg:i.arg,modifiers:i.modifiers,expression:i.expression,scope:i.scope,instance:(m=(f=i.scope.owner)==null?void 0:f.component)!=null?m:null}},c=n.raw?i.expression:i.evaluate();(d=n.created)==null||d.call(n,i.el,l(c)),(u=n.beforeMount)==null||u.call(n,i.el,l(c)),i.effect(()=>{var m,h;let p=n.raw?i.expression:i.evaluate();if(!a){a=!0,s=p,(m=n.mounted)==null||m.call(n,i.el,l(p));return}if(p===s)return;let f=l(p);(h=n.updated)==null||h.call(n,i.el,f),s=p}),i.cleanup(()=>{var f,m;let p=l(s);(f=n.beforeUnmount)==null||f.call(n,i.el,p),(m=n.unmounted)==null||m.call(n,i.el,p)})},{priority:(r=n.priority)!=null?r:j.DEFAULT,terminal:(o=n.terminal)!=null?o:!1})}function _v(e){return Object.defineProperties(ct.data,Object.getOwnPropertyDescriptors(e)),ct.data}var Kv="0.4.6",li={...ca,version:Kv,config:w,reactive:Z,ref:Mr,shallowRef:Ns,computed:Sr,effect:_e,watch:Oe,watchEffect:Fs,nextTick:at,toRaw:Le,markRaw:Hs,unref:Os,stop:Cs,effectScope:Rs,EffectScope:et,flushSync:Ls,data:_v,store:wd,stores:Fn,removeStore:Ed,storeNames:Ko,scope:ct,component:Ft,components:$e,directive:eu,directives:wt,magic:P,magics:Ar,createApp:bd,start:sd,whenReady:Uo,whenElement:Wo,walk:se,refresh:ld,destroy:X,stopObserving:ad,getScope:Lt,findScope:Ve,addCleanup:dt,parseAttribute:$n,parse:lt,tokenize:Po,evaluate:F,evaluateIn:q,stringify:Ht,clearParseCache:Oc,globals:Pe,http:ve,request:zt,HttpError:Ee,resource:ii,toast:tt,storage:ue,session:ei,cookie:ti,cache:ni,url:jt,theme:ut,clipboard:oi,screen:Ke,network:qt,enter:zr,leave:Br,fadeIn:_n,fadeOut:Kn,slideUp:dn,slideDown:cn,viewTransition:si,injectStyle:ne,ensureTokens:he,on:Zd,once:Vv,off:Wv,emit:Uv,use(e,t){No(li,e,t)},onError(e){Ms(e)},instances:Mt,Scope:on,PRIORITY:j,VoodooSyntaxError:de,VoodooRuntimeError:Re};xd(li);be();var Yv=new Set(["animation-iteration-count","aspect-ratio","border-image-slice","column-count","flex","flex-grow","flex-shrink","font-weight","grid-area","grid-column","grid-row","line-height","opacity","order","orphans","scale","tab-size","widows","z-index","zoom"]);function cu(e){return e.startsWith("--")?e:e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}function nt(e){return e.length<2?e:Array.from(new Set(e))}function un(e){return String(e!=null?e:"").split(/\s+/).filter(Boolean)}function wa(e){if(typeof document=="undefined")return[];let t=document.createElement("template");t.innerHTML=e.trim();let n=[];for(let r of Array.from(t.content.children))n.push(r);return n}function du(e){return e.length>2&&e.charCodeAt(0)===60&&e.endsWith(">")}function Xv(e){if(e==null)return typeof document=="undefined"?[]:[document];if(e instanceof ft)return e.toArray();if(typeof e=="string")return fn(e);if(typeof e=="function")return typeof document=="undefined"?[]:[document];let t=fn(e);return t.length?t:typeof document=="undefined"?[]:[document]}function fn(e,t){if(e==null)return[];if(typeof e=="string"){let o=e.trim();if(!o)return[];if(du(o))return wa(o);let i=[];for(let s of Xv(t))try{for(let a of Array.from(s.querySelectorAll(o)))i.push(a)}catch(a){}return nt(i)}if(e instanceof ft)return e.toArray();if(typeof e=="function")return[];let n=e;if(typeof n.nodeType=="number"){if(n.nodeType===1)return[n];if(n.nodeType===9){let o=n;return o.documentElement?[o.documentElement]:[]}return n.nodeType===11?Array.from(n.children):[]}let r=e;if(typeof r.length=="number"){let o=[];for(let i=0;i<r.length;i++){let s=r[i];s&&s.nodeType===1&&o.push(s)}return nt(o)}return[]}function tu(e){if(e==null)return[];if(typeof e=="string"){let r=e;return du(r.trim())?wa(r):[document.createTextNode(r)]}if(e instanceof ft)return e.toArray();if(typeof e=="function")return[];let t=e;if(typeof t.nodeType=="number")return[t];let n=e;if(typeof n.length=="number"){let r=[];for(let o=0;o<n.length;o++)n[o]&&r.push(n[o]);return r}return[]}function ci(e,t,n){let r=cu(t);if(n===null||n===""){e.style.removeProperty(r);return}let o=typeof n=="number"&&!Yv.has(r)&&!r.startsWith("--")?`${n}px`:String(n);e.style.setProperty(r,o)}function Gv(e,t){for(let[n,r]of Object.entries(t))ci(e,n,r)}function nu(e){if(e===void 0)return;if(e==="")return"";if(e==="true")return!0;if(e==="false")return!1;if(e==="null")return null;if(/^-?\d+(\.\d+)?$/.test(e))return Number(e);let t=e.charCodeAt(0);if(t===123||t===91||t===34)try{return JSON.parse(e)}catch(n){return e}return e}function ru(e){return e.replace(/-([a-z0-9])/g,(t,n)=>n.toUpperCase())}var uu=new WeakMap;function ou(e){return e.hasAttribute("hidden")||e.style.display==="none"?!0:e.isConnected?getComputedStyle(e).display==="none":!1}function iu(e){e.removeAttribute("hidden");let t=uu.get(e);t!==void 0&&t!=="none"?e.style.display=t:e.style.removeProperty("display"),e.isConnected&&getComputedStyle(e).display==="none"&&(e.style.display="block")}function su(e){let t=e.style.display;t&&t!=="none"&&uu.set(e,t),e.style.display="none"}var au="input,select,textarea";function lu(e){return e.matches(au)?[e]:Array.from(e.querySelectorAll(au))}function Qv(e){let t=e;if(!t.name||t.disabled)return!1;let n=(t.getAttribute("type")||"").toLowerCase();return!(n==="file"||n==="submit"||n==="reset"||n==="button"||(n==="checkbox"||n==="radio")&&!t.checked)}var di=new WeakMap;function Jv(e){let t=di.get(e);return t||di.set(e,t=[]),t}var ft=class e{constructor(t=[]){H(this,"length");H(this,"elements");this.elements=t,this.length=t.length;let n=this;for(let r=0;r<t.length;r++)n[r]=t[r]}[Symbol.iterator](){return this.elements[Symbol.iterator]()}find(t){let n=[];for(let r of this.elements)try{for(let o of Array.from(r.querySelectorAll(t)))n.push(o)}catch(o){}return new e(nt(n))}closest(t){let n=[];for(let r of this.elements){let o=r.closest(t);o&&n.push(o)}return new e(nt(n))}parent(t){let n=[];for(let r of this.elements){let o=r.parentElement;o&&(!t||o.matches(t))&&n.push(o)}return new e(nt(n))}parents(t){let n=[];for(let r of this.elements){let o=r.parentElement;for(;o;)(!t||o.matches(t))&&n.push(o),o=o.parentElement}return new e(nt(n))}children(t){let n=[];for(let r of this.elements)for(let o of Array.from(r.children))(!t||o.matches(t))&&n.push(o);return new e(nt(n))}siblings(t){let n=[];for(let r of this.elements){let o=r.parentElement;if(o)for(let i of Array.from(o.children))i!==r&&(!t||i.matches(t))&&n.push(i)}return new e(nt(n))}next(t){let n=[];for(let r of this.elements){let o=r.nextElementSibling;o&&(!t||o.matches(t))&&n.push(o)}return new e(nt(n))}prev(t){let n=[];for(let r of this.elements){let o=r.previousElementSibling;o&&(!t||o.matches(t))&&n.push(o)}return new e(nt(n))}first(){return this.eq(0)}last(){return this.eq(-1)}eq(t){let n=t<0?this.elements.length+t:t,r=this.elements[n];return new e(r?[r]:[])}filter(t){let n=this.elements.filter((r,o)=>typeof t=="function"?t(r,o):r.matches(t));return new e(n)}not(t){let n=this.elements.filter((r,o)=>typeof t=="function"?!t(r,o):!r.matches(t));return new e(n)}has(t){let n=this.elements.filter(r=>typeof t=="string"?r.querySelector(t)!==null:r.contains(t));return new e(n)}is(t){return this.elements.some((n,r)=>typeof t=="function"?t(n,r):n.matches(t))}map(t){return this.elements.map((n,r)=>t(n,r))}each(t){for(let n=0;n<this.elements.length;n++){let r=this.elements[n];if(t.call(r,r,n)===!1)break}return this}get(...t){if(!t.length)return this.toArray();let n=Number(t[0]);return this.elements[n<0?this.elements.length+n:n]}toArray(){return this.elements.slice()}add(t,n){return new e(nt([...this.elements,...fn(t,n)]))}slice(t,n){return new e(this.elements.slice(t,n))}text(...t){var o,i;if(!t.length)return(i=(o=this.elements[0])==null?void 0:o.textContent)!=null?i:"";let n=t[0],r=n==null?"":String(n);for(let s of this.elements){for(let a of Array.from(s.childNodes))X(a);s.textContent=r}return this}html(...t){var o,i;if(!t.length)return(i=(o=this.elements[0])==null?void 0:o.innerHTML)!=null?i:"";let n=t[0],r=n==null?"":String(n);for(let s of this.elements){for(let a of Array.from(s.childNodes))X(a);s.innerHTML=r}return this}val(...t){var r;if(!t.length){let o=this.elements[0];if(!o)return"";let i=o;return o.tagName==="SELECT"&&i.multiple?Array.from(i.selectedOptions).map(s=>s.value):o.type==="checkbox"?o.checked?o.value||"on":"":(r=o.value)!=null?r:""}let n=t[0];for(let o of this.elements){let i=o,s=o;if(i.tagName==="SELECT"&&s.multiple){let a=(Array.isArray(n)?n:[n]).map(String);for(let l of Array.from(s.options))l.selected=a.includes(l.value);continue}if(i.type==="checkbox"||i.type==="radio"){i.checked=Array.isArray(n)?n.map(String).includes(i.value):n===!0||String(n)===i.value;continue}i.value=n==null?"":String(n)}return this}attr(...t){var i,s;let n=t[0];if(n!==null&&typeof n=="object"){for(let a of this.elements)for(let[l,c]of Object.entries(n))c===null||c===!1?a.removeAttribute(l):a.setAttribute(l,c===!0?"":String(c));return this}let r=String(n);if(t.length<2)return(s=(i=this.elements[0])==null?void 0:i.getAttribute(r))!=null?s:void 0;let o=t[1];for(let a of this.elements)o===null||o===!1?a.removeAttribute(r):a.setAttribute(r,o===!0?"":String(o));return this}removeAttr(t){let n=un(t);for(let r of this.elements)for(let o of n)r.removeAttribute(o);return this}prop(...t){let n=String(t[0]);if(t.length<2){let r=this.elements[0];return r?r[n]:void 0}for(let r of this.elements)r[n]=t[1];return this}data(...t){let n=t[0];if(!t.length){let i=this.elements[0];if(!i)return{};let s={};for(let[a,l]of Object.entries(i.dataset))s[a]=nu(l);return s}if(n!==null&&typeof n=="object"){for(let i of this.elements)for(let[s,a]of Object.entries(n))i.dataset[ru(s)]=typeof a=="string"?a:JSON.stringify(a!=null?a:null);return this}let r=ru(String(n));if(t.length<2){let i=this.elements[0];return i?nu(i.dataset[r]):void 0}let o=t[1];for(let i of this.elements)i.dataset[r]=typeof o=="string"?o:JSON.stringify(o!=null?o:null);return this}css(...t){let n=t[0];if(n!==null&&typeof n=="object"){for(let o of this.elements)Gv(o,n);return this}let r=String(n);if(t.length<2){let o=this.elements[0];if(!o)return"";let i=cu(r);return((o.isConnected?getComputedStyle(o).getPropertyValue(i):"")||o.style.getPropertyValue(i)).trim()}for(let o of this.elements)ci(o,r,t[1]);return this}width(...t){if(!t.length){let n=this.elements[0];return n?n.getBoundingClientRect().width:0}for(let n of this.elements)ci(n,"width",t[0]);return this}height(...t){if(!t.length){let n=this.elements[0];return n?n.getBoundingClientRect().height:0}for(let n of this.elements)ci(n,"height",t[0]);return this}offset(){let t=this.elements[0];if(!t)return{top:0,left:0};let n=t.getBoundingClientRect();return{top:n.top+window.scrollY,left:n.left+window.scrollX}}position(){let t=this.elements[0];return t?{top:t.offsetTop,left:t.offsetLeft}:{top:0,left:0}}scrollTop(...t){var r,o;if(!t.length)return(o=(r=this.elements[0])==null?void 0:r.scrollTop)!=null?o:0;let n=Number(t[0])||0;for(let i of this.elements)i.scrollTop=n;return this}addClass(t){let n=un(t);if(n.length)for(let r of this.elements)r.classList.add(...n);return this}removeClass(t){let n=un(t);if(n.length)for(let r of this.elements)r.classList.remove(...n);return this}toggleClass(t,n){let r=un(t);for(let o of this.elements)for(let i of r)n===void 0?o.classList.toggle(i):o.classList.toggle(i,n);return this}hasClass(t){let n=un(t);return n.length?this.elements.some(r=>n.every(o=>r.classList.contains(o))):!1}insert(t,n){let r=this.elements.length;for(let o=0;o<r;o++){let i=this.elements[o];for(let s of tu(t))n(i,o===r-1?s:s.cloneNode(!0))}return this}append(t){return this.insert(t,(n,r)=>n.appendChild(r))}prepend(t){return this.insert(t,(n,r)=>n.insertBefore(r,n.firstChild))}before(t){return this.insert(t,(n,r)=>{var o;return(o=n.parentNode)==null?void 0:o.insertBefore(r,n)})}after(t){return this.insert(t,(n,r)=>{var o;return(o=n.parentNode)==null?void 0:o.insertBefore(r,n.nextSibling)})}appendTo(t){let n=fn(t);for(let r=0;r<n.length;r++)for(let o of this.elements)n[r].appendChild(r===n.length-1?o:o.cloneNode(!0));return this}prependTo(t){let n=fn(t);for(let r=0;r<n.length;r++){let o=n[r],i=this.elements.map(s=>r===n.length-1?s:s.cloneNode(!0));for(let s=i.length-1;s>=0;s--)o.insertBefore(i[s],o.firstChild)}return this}replaceWith(t){for(let n of this.elements){let r=n.parentNode;if(r){for(let o of tu(t))r.insertBefore(o,n);X(n),n.remove()}}return this}wrap(t){var n;for(let r of this.elements){let o=fn(t)[0];if(!o)continue;let i=o.cloneNode(!0);(n=r.parentNode)==null||n.insertBefore(i,r);let s=i;for(;s.firstElementChild;)s=s.firstElementChild;s.appendChild(r)}return this}unwrap(){let t=new Set;for(let n of this.elements){let r=n.parentElement;r&&r!==document.body&&t.add(r)}for(let n of t){let r=n.parentNode;if(r){for(;n.firstChild;)r.insertBefore(n.firstChild,n);X(n),n.remove()}}return this}remove(){for(let t of this.elements)X(t),t.remove();return this}empty(){for(let t of this.elements){for(let n of Array.from(t.childNodes))X(n);t.replaceChildren()}return this}clone(t=!0){return new e(this.elements.map(n=>n.cloneNode(t)))}on(t,...n){var a;let r=typeof n[0]=="string",o=r?n[0]:null,i=r?n[1]:n[0],s=(a=r?n[2]:n[1])!=null?a:{};if(typeof i!="function")return this;for(let l of this.elements)for(let c of un(t)){let d=u=>{if(!o){i.call(l,u);return}let p=u.target,f=p==null?void 0:p.closest(o);!f||!l.contains(f)||i.call(f,u)};l.addEventListener(c,d,s),Jv(l).push({type:c,selector:o,handler:i,wrapped:d,options:s})}return this}off(t,n,r){let o=typeof n=="string"?n:null,i=typeof n=="function"?n:r!=null?r:null,s=t?un(t):null;for(let a of this.elements){let l=di.get(a);if(!l)continue;let c=[];for(let d of l){let u=!s||s.includes(d.type),p=o===null||d.selector===o,f=i===null||d.handler===i;u&&p&&f?a.removeEventListener(d.type,d.wrapped,d.options):c.push(d)}di.set(a,c)}return this}once(t,...n){let r=typeof n[0]=="string",o=r?n[0]:null,i=r?n[1]:n[0];if(typeof i!="function")return this;let s=this,a=function(l){return o?s.off(t,o,a):s.off(t,a),i.call(this,l)};return o?this.on(t,o,a):this.on(t,a)}trigger(t,n){for(let r of this.elements){if(n===void 0&&typeof r[t]=="function"){r[t]();continue}let o=new CustomEvent(t,{detail:n,bubbles:!0,cancelable:!0});o.__voodoo=!0,r.dispatchEvent(o)}return this}emit(t,n){for(let r of this.elements){let o=new CustomEvent(t,{detail:n,bubbles:!0,cancelable:!0});o.__voodoo=!0,r.dispatchEvent(o)}return this}show(){for(let t of this.elements)iu(t);return this}hide(){for(let t of this.elements)su(t);return this}toggle(t){for(let n of this.elements)(t===void 0?ou(n):t)?iu(n):su(n);return this}fadeIn(t=220){for(let n of this.elements)n.removeAttribute("hidden"),_n(n,t);return this}fadeOut(t=220){for(let n of this.elements)Kn(n,t);return this}slideUp(t=240){for(let n of this.elements)dn(n,t);return this}slideDown(t=240){for(let n of this.elements)n.removeAttribute("hidden"),cn(n,t);return this}slideToggle(t=240){for(let n of this.elements)ou(n)?(n.removeAttribute("hidden"),cn(n,t)):dn(n,t);return this}animate(t,n=300){for(let r of this.elements)typeof r.animate=="function"&&r.animate(t,n);return this}scrollIntoView(t={behavior:"smooth",block:"start"}){var n;return(n=this.elements[0])==null||n.scrollIntoView(t),this}serialize(){let t=this.elements[0];if(!t)return"";let n=new URLSearchParams;for(let r of lu(t)){if(!Qv(r))continue;let o=r,i=r;if(o.tagName==="SELECT"&&i.multiple){for(let s of Array.from(i.selectedOptions))n.append(o.name,s.value);continue}n.append(o.name,o.value)}return n.toString()}serializeObject(){var r,o,i,s;let t=this.elements[0],n={};if(!t)return n;for(let a of lu(t)){let l=a;if(!l.name||l.disabled)continue;let c=(l.getAttribute("type")||"").toLowerCase();if(c==="submit"||c==="reset"||c==="button")continue;let d=l.name.endsWith("[]"),u=d?l.name.slice(0,-2):l.name,p=a,f;if(c==="checkbox"){if(!l.checked&&!d){n[u]=(r=n[u])!=null?r:!1;continue}if(!l.checked)continue;f=l.value==="on"?!0:l.value}else if(c==="radio"){if(!l.checked)continue;f=l.value}else c==="file"?f=l.multiple?Array.from((o=l.files)!=null?o:[]):(s=(i=l.files)==null?void 0:i[0])!=null?s:null:l.tagName==="SELECT"&&p.multiple?f=Array.from(p.selectedOptions).map(m=>m.value):c==="number"||c==="range"?f=l.value===""?null:Number(l.value):f=l.value;if(d){let m=n[u];Array.isArray(m)?m.push(f):n[u]=[f];continue}if(Object.prototype.hasOwnProperty.call(n,u)){let m=n[u];Array.isArray(m)?m.push(f):m===void 0||m===!1?n[u]=f:n[u]=[m,f];continue}n[u]=f}return n}focus(t){var n;return(n=this.elements[0])==null||n.focus(t),this}blur(){for(let t of this.elements)t.blur();return this}select(){for(let t of this.elements){let n=t;typeof n.select=="function"&&n.select()}return this}walk(t=!1){for(let n of this.elements)t&&X(n),se(n,Ve(n.parentNode));return this}destroy(){for(let t of this.elements)X(t);return this}};function Ea(e,t){if(typeof e=="function"){ka(e);let n=typeof document!="undefined"?document.documentElement:null;return new ft(n?[n]:[])}return new ft(fn(e,t))}function ka(e){return typeof document=="undefined"?Promise.resolve():new Promise(t=>{hd(()=>{try{e==null||e()}catch(n){K(n,"V.ready")}t()})})}function fu(e){return new ft(wa(e))}be();le();var pn=new Map,Fe={emit(e,t){let n=pn.get(e);if(!(!n||n.size===0))for(let r of[...n])try{r(t)}catch(o){console.error("[Voodoo] error in devtools listener:",o)}},on(e,t){let n=pn.get(e);return n||pn.set(e,n=new Set),n.add(t),()=>{n==null||n.delete(t)}},off(e,t){var n;(n=pn.get(e))==null||n.delete(t)},clear(e){e?pn.delete(e):pn.clear()},count(e){var t,n;return(n=(t=pn.get(e))==null?void 0:t.size)!=null?n:0}};var U={mode:"history",base:"/",beforeEach:null,afterEach:null,linkActiveClass:"v-link-active",linkExactActiveClass:"v-link-exact-active",transition:!0,titleTemplate:"%s",scrollBehavior:null},ui="__voodooRoute",vu=10,pt=[],hu=new Map,fi=new Map,Xn="inicial",pi=!1,gu=!1;function Zv(){return{path:"/",fullPath:"/",params:{},query:{},hash:"",name:"",meta:{},matched:null}}var ce=Z(Zv());function Ur(e){let t=e||"/";return t.startsWith("/")||(t=`/${t}`),t=t.replace(/\/{2,}/g,"/"),t.length>1&&t.endsWith("/")&&(t=t.slice(0,-1)),t}function bu(e){let t={};return e&&new URLSearchParams(e.startsWith("?")?e.slice(1):e).forEach((r,o)=>{t[o]=r}),t}function eh(e){let t=new URLSearchParams;for(let[n,r]of Object.entries(e))r!=null&&t.append(n,String(r));return t.toString()}function Sa(e){let t=e||"/",n="",r=t.indexOf("#");r>-1&&(n=t.slice(r+1),t=t.slice(0,r));let o={},i=t.indexOf("?");return i>-1&&(o=bu(t.slice(i+1)),t=t.slice(0,i)),{path:Ur(t),query:o,hash:n}}function th(e){let t=U.base.replace(/\/$/,"");return!t||t===""?e:e===t?"/":e.startsWith(`${t}/`)?e.slice(t.length):e}function yu(){return typeof window=="undefined"?{path:"/",query:{},hash:""}:U.mode==="hash"?Sa(window.location.hash.slice(1)||"/"):{path:Ur(th(window.location.pathname)),query:bu(window.location.search),hash:window.location.hash.slice(1)}}function xu(e,t,n){let r=eh(t);return`${e}${r?`?${r}`:""}${n?`#${n}`:""}`}function Aa(e){let t=xu(e.path,e.query,e.hash);if(U.mode==="hash"){let{pathname:r,search:o}=window.location;return`${r}${o}#${t}`}return`${U.base==="/"?"":U.base.replace(/\/$/,"")}${t}`||"/"}var La=!1,mi=!1;function Ca(e,t,n){if(!La)try{n?window.history.replaceState(e,"",t):window.history.pushState(e,"",t);return}catch(o){if(!(o instanceof Error)||o.name!=="SecurityError")throw o;La=!0}if(U.mode!=="hash")return;let r=t.slice(t.indexOf("#"));if(window.location.hash!==r){mi=!0;try{n?window.location.replace(t):window.location.hash=r}finally{setTimeout(()=>{mi=!1},0)}}}function wu(e,t){let n=e==="*"?"*":Ur(e),r=n==="*"?["*"]:n.split("/").filter(Boolean),o=[],i=r.length*10;for(let s of r){if(s==="*"||s==="**"){o.push({type:"wildcard",value:"*",optional:!0}),i-=30;continue}if(s.startsWith(":")){let a=s.endsWith("?"),l=s.slice(1,a?-1:void 0);o.push({type:"param",value:l,optional:a}),i+=a?1:2;continue}o.push({type:"static",value:s,optional:!1}),i+=4}return{pattern:n,segments:o,score:i,record:t}}function nh(e,t){let n={},r=0;for(let o of e){if(o.type==="wildcard")return n["*"]=t.slice(r).map(Ta).join("/"),n;if(r>=t.length){if(o.optional)continue;return null}let i=t[r];if(o.type==="static"){if(Ta(i)!==o.value)return null;r++;continue}n[o.value]=Ta(i),r++}return r===t.length?n:null}function Ta(e){try{return decodeURIComponent(e)}catch(t){return e}}function rh(e){let t=e.split("/").filter(Boolean),n=null;for(let r of pt){let o=nh(r.segments,t);o&&(!n||r.score>n.route.score)&&(n={route:r,params:o})}return n}function Ra(e){var t,n;return e&&(n=(t=pt.find(r=>r.pattern===e))==null?void 0:t.record)!=null?n:null}function Gn(e){let{path:t,query:n,hash:r}=Sa(e);return $a(t,n,r)}function $a(e,t,n){var o,i;let r=rh(e);return{path:e,fullPath:xu(e,t,n),params:r?r.params:{},query:t,hash:n,name:(o=r==null?void 0:r.route.record.name)!=null?o:"",meta:(i=r==null?void 0:r.route.record.meta)!=null?i:{},matched:r?r.route.pattern:null}}function Qn(){return{path:ce.path,fullPath:ce.fullPath,params:{...ce.params},query:{...ce.query},hash:ce.hash,name:ce.name,meta:ce.meta,matched:ce.matched}}function Da(e){ce.path=e.path,ce.fullPath=e.fullPath,ce.params=e.params,ce.query=e.query,ce.hash=e.hash,ce.name=e.name,ce.meta=e.meta,ce.matched=e.matched;let t=Ra(e.matched);t!=null&&t.title&&typeof document!="undefined"&&(document.title=U.titleTemplate.includes("%s")?U.titleTemplate.replace("%s",t.title):t.title)}async function Ha(e,t){let n=Ra(e.matched);if(n!=null&&n.redirect)return n.redirect;if(n!=null&&n.beforeEnter){let r=await n.beforeEnter(e,t);if(r===!1)return!1;if(typeof r=="string")return r}if(U.beforeEach){let r=await U.beforeEach(e,t);if(r===!1)return!1;if(typeof r=="string")return r}return!0}function hi(){typeof window!="undefined"&&hu.set(Xn,window.scrollY)}function Pa(e,t,n){typeof window!="undefined"&&Me(()=>{requestAnimationFrame(()=>{var o;let r=i=>{Math.abs(window.scrollY-i)>1&&window.scrollTo(0,i)};if(U.scrollBehavior){let i=U.scrollBehavior(e,t,n);if(i===!1)return;if(typeof i=="number"){r(i);return}}if(e.hash){let i=(o=document.getElementById(e.hash))!=null?o:/^[\w-]+$/.test(e.hash)?document.querySelector(`[name="${e.hash}"]`):null;if(i){i.scrollIntoView({behavior:"smooth",block:"start"});return}}r(n!=null?n:0)})})}async function Vt(e,t={}){var a,l;if(typeof window=="undefined")return!1;Eu();let n=Qn(),r=Gn(e);if(!t.force&&r.fullPath===n.fullPath)return!0;for(let c=0;;c++){if(c>vu)return Y(`Router: too many redirects when navigating to "${e}".`),!1;let d=await Ha(r,n);if(d===!1)return Fe.emit("navigation",{from:n.fullPath,to:r.fullPath,cancelled:!0,matched:r.matched}),!1;if(typeof d=="string"){r=Gn(d);continue}break}hi();let o=ae("rota"),i={...(a=t.state)!=null?a:{},[ui]:o},s=Aa(r);return Ca(i,s,t.replace===!0),Xn=o,Da(r),t.scroll!==!1&&Pa(r,n,null),(l=U.afterEach)==null||l.call(U,Qn(),n),Fe.emit("navigation",{from:n.fullPath,to:r.fullPath,matched:r.matched}),!0}async function oh(e){var c,d;if(mi)return;let{path:t,query:n,hash:r}=yu(),o=$a(t,n,r),i=Qn();if(o.fullPath===i.fullPath)return;let s=await Ha(o,i);if(s===!1){Ca({[ui]:Xn},Aa(i),!0),Fe.emit("navigation",{from:i.fullPath,to:o.fullPath,cancelled:!0,matched:o.matched});return}if(typeof s=="string"){Vt(s,{replace:!0});return}hi();let a=e.state,l=a&&a[ui]||ae("rota");Xn=l,Da(o),Pa(o,i,(c=hu.get(l))!=null?c:0),(d=U.afterEach)==null||d.call(U,Qn(),i),Fe.emit("navigation",{from:i.fullPath,to:o.fullPath,matched:o.matched})}function vi(e){oh(e)}function Eu(){pi||typeof window=="undefined"||(pi=!0,"scrollRestoration"in window.history&&(window.history.scrollRestoration="manual"),window.addEventListener("popstate",vi),U.mode==="hash"&&window.addEventListener("hashchange",vi),window.addEventListener("beforeunload",hi))}function ih(){!pi||typeof window=="undefined"||(pi=!1,window.removeEventListener("popstate",vi),window.removeEventListener("hashchange",vi),window.removeEventListener("beforeunload",hi),La=!1,mi=!1)}async function sh(){var i;if(typeof window=="undefined")return;let{path:e,query:t,hash:n}=yu(),r=Qn(),o=$a(e,t,n);for(let s=0;;s++){if(s>vu){Y("Router: too many redirects in the initial route.");return}let a=await Ha(o,r);if(a===!1)return;if(typeof a=="string"){o=Gn(a);continue}break}Xn=ae("rota"),Ca({[ui]:Xn},Aa(o),!0),Da(o),o.hash&&Pa(o,r,null),(i=U.afterEach)==null||i.call(U,Qn(),r)}function ah(e,t){let n=wu(e,t),r=pt.findIndex(o=>o.pattern===n.pattern);r>-1?pt.splice(r,1,n):pt.push(n)}function lh(e){let t=e==="*"?"*":Ur(e),n=pt.findIndex(r=>r.pattern===t);n>-1&&pt.splice(n,1)}function ch(){return[...pt].sort((e,t)=>t.score-e.score).map(e=>e.pattern)}function dh(e){e?fi.delete(e):fi.clear()}function uh(e){var t,n,r,o,i,s,a,l,c,d;U.mode=(t=e.mode)!=null?t:"history",U.base=Ur((n=e.base)!=null?n:"/"),U.beforeEach=(r=e.beforeEach)!=null?r:null,U.afterEach=(o=e.afterEach)!=null?o:null,U.linkActiveClass=(i=e.linkActiveClass)!=null?i:"v-link-active",U.linkExactActiveClass=(s=e.linkExactActiveClass)!=null?s:"v-link-exact-active",U.transition=(a=e.transition)!=null?a:!0,U.titleTemplate=(l=e.titleTemplate)!=null?l:"%s",U.scrollBehavior=(c=e.scrollBehavior)!=null?c:null,pt.length=0;for(let[u,p]of Object.entries((d=e.routes)!=null?d:{}))pt.push(wu(u,p));return gu=!0,Eu(),sh(),Wr}var fh={get current(){return ce},push:(e,t={})=>Vt(e,t),replace:(e,t={})=>Vt(e,{...t,replace:!0}),navigate:Vt,back:()=>{typeof window!="undefined"&&window.history.back()},forward:()=>{typeof window!="undefined"&&window.history.forward()},go:e=>{typeof window!="undefined"&&window.history.go(e)},resolve:Gn,addRoute:ah,removeRoute:lh,patterns:ch,stop:ih,clearViewCache:dh,get ready(){return gu}},Wr=Object.defineProperties(uh,Object.getOwnPropertyDescriptors(fh));P("$route",()=>ce);P("$router",()=>Wr);async function ph(e){let t=fi.get(e);if(t!==void 0)return t;let n=await ve.get(e,{responseType:"text"}),r=typeof n=="string"?n:String(n!=null?n:"");return fi.set(e,r),r}function mh(e){return Object.keys(e).sort().map(n=>`${n}=${e[n]}`).join("&")}y("router-view",({el:e,scope:t,modifiers:n,effect:r,cleanup:o})=>{jo(e);let i=e.innerHTML,s=U.transition&&!n["no-transition"],a=0,l=()=>{for(let u of Array.from(e.childNodes))X(u);e.textContent=""},c=(u,p)=>{if(l(),u!=null&&u.component){let f=document.createElement("div");f.setAttribute(`${w.prefix}component`,u.component),f.className="v-router-page",e.appendChild(f),se(f,t);return}e.innerHTML=p!=null?p:i;for(let f of Array.from(e.childNodes))se(f,t)},d=async(u,p)=>{let f=null;if(u!=null&&u.view){e.classList.add("v-router-loading");try{f=await ph(u.view)}catch(m){K(m,`v-router-view loading "${u.view}"`),f=""}finally{e.classList.remove("v-router-loading")}if(p!==a)return}s?si(()=>c(u,f)):c(u,f)};r(()=>{let u=ce.matched;mh(ce.params);let p=Ra(u);d(p,++a)}),o(()=>{a++,l()})},{priority:j.DEFAULT});var vh=/^[a-z][a-z0-9+.-]*:/i;function pu(e){return!!(!e||e.startsWith("//")||vh.test(e))}function mu(e,t,n){var i;let r=t.trim();if(r){if(r.startsWith("/")||r.startsWith("#"))return r;let s=n(r);return typeof s=="string"&&s?s:r}let o=(i=e.getAttribute("href"))!=null?i:"";return U.mode==="hash"&&o.startsWith("#")?o.slice(1)||"/":o}function Ma(e,t){let{path:n}=Sa(e);return n==="/"||t?ce.path===n:ce.path===n||ce.path.startsWith(`${n}/`)}y("link",({el:e,expression:t,modifiers:n,effect:r,cleanup:o,evaluate:i})=>{let s=e,a=l=>{var u;if(l.defaultPrevented||l.metaKey||l.ctrlKey||l.shiftKey||l.altKey||typeof l.button=="number"&&l.button!==0)return;let c=s.getAttribute("target");if(c&&c!=="_self"||s.hasAttribute("download")||((u=s.getAttribute("rel"))!=null?u:"").split(/\s+/).includes("external"))return;let d=mu(e,t,i);d&&(pu(d)||U.mode!=="hash"&&d.startsWith("#")||(l.preventDefault(),Vt(d,{replace:!!n.replace,scroll:n["no-scroll"]?!1:void 0})))};e.addEventListener("click",a),o(()=>e.removeEventListener("click",a)),r(()=>{let l=mu(e,t,i);if(!l||pu(l))return;let c=Ma(l,!0),d=c||Ma(l,!1);e.classList.toggle(U.linkActiveClass,d),e.classList.toggle(U.linkExactActiveClass,c),c?e.setAttribute("aria-current","page"):e.removeAttribute("aria-current")})});y("route-active",({el:e,expression:t,arg:n,modifiers:r,effect:o,evaluate:i})=>{let s=n||"active";o(()=>{var d;let a=t.trim(),l=a.startsWith("/")||!a?a:(d=i(a))!=null?d:a,c=l?Ma(String(l),!!r.exact):!1;e.classList.toggle(s,c)})});be();le();var hh="voodoo:locale",z=Z({locale:w.locale||"pt-BR",fallback:"en",currency:w.currency||"BRL",messages:{}}),Jn=hh,Zn="",Na=new Map;function gi(e,t){let n=z.messages[e];if(!n)return null;let r=n[t];if(typeof r=="string")return r;let o=n;for(let i of t.split(".")){if(o==null||typeof o=="string")return null;o=o[i]}return typeof o=="string"?o:null}function bi(e){let t=[e],n=e.split("-")[0];n&&n!==e&&t.push(n);for(let r of Object.keys(z.messages))r!==e&&r.split("-")[0]===n&&t.push(r);return t}var ku=new Map;function gh(e,t){try{let n=ku.get(e);return n||ku.set(e,n=new Intl.PluralRules(e)),n.select(t)}catch(n){return t===1?"one":"other"}}var bh=["zero","one","two","few","many","other"];function yh(e,t,n){var i;if(e.length<=1)return(i=e[0])!=null?i:"";let r=gh(n,t);if(e.length===2)return r==="one"?e[0]:e[1];if(e.length===3)return t===0?e[0]:r==="one"?e[1]:e[2];let o=bh.indexOf(r);return e[Math.min(o<0?e.length-1:o,e.length-1)]}var xh=/\{\s*([\w.$-]+)\s*\}/g;function wh(e,t){return e.indexOf("{")===-1?e:e.replace(xh,(n,r)=>{let o=t[r];return o==null?n:String(o)})}function Eh(e){return e==null?{}:typeof e=="number"?{n:e}:e}function er(e,t){var i,s;if(!e)return"";let n=Eh(t),r=z.locale,o=null;for(let a of bi(r))if(o=gi(a,e),o!==null)break;if(o===null&&z.fallback&&z.fallback!==r){for(let a of bi(z.fallback))if(o=gi(a,e),o!==null)break}if(o===null)return e;if(o.includes("|")){let a=Number((s=(i=n.n)!=null?i:n.count)!=null?s:0),l=o.split("|").map(c=>c.trim());o=yh(l,Number.isNaN(a)?0:a,r)}return wh(o,n)}function kh(e,t){let n=t!=null?t:z.locale;for(let r of bi(n))if(gi(r,e)!==null)return!0;if(z.fallback&&z.fallback!==n){for(let r of bi(z.fallback))if(gi(r,e)!==null)return!0}return!1}function Tu(e,t={}){return sa(e,{...t,locale:z.locale})}function Lu(e,t){return ia(e,{locale:z.locale,currency:t!=null?t:z.currency})}function Mu(e,t="short"){return aa(e,t,z.locale)}function Su(e){return la(e,z.locale)}function xi(){return z.locale}function Th(e){var t;return(t=z.messages[e!=null?e:z.locale])!=null?t:{}}function yi(e,t){let n=z.messages[e];return n?Xo(n,t):z.messages[e]=t,e}async function Oa(e,t){if(typeof t!="string"){yi(e,t);return}let n=Na.get(e);if(n)return n;let r=ve.get(t,{responseType:"json"}).then(o=>{o&&typeof o=="object"&&yi(e,o)}).catch(o=>{K(o,`i18n ao carregar "${t}"`)}).finally(()=>{Na.delete(e)});return Na.set(e,r),r}function _r(e){let t=e==null?void 0:e.trim();if(!t||t===z.locale)return Promise.resolve();let n=z.locale;return z.locale=t,z.currency=z.currency||w.currency,w.locale=t,Qo(t,z.currency),Jn&&ue.set(Jn,t),typeof document!="undefined"&&(document.documentElement.lang=t),Fe.emit("locale",{from:n,to:t}),!z.messages[t]&&Zn?Oa(t,Zn.replace("{locale}",t)):Promise.resolve()}function Au(){var n;if(typeof navigator=="undefined")return null;let e=Object.keys(z.messages);if(!e.length)return null;let t=(n=navigator.languages)!=null&&n.length?[...navigator.languages]:[navigator.language];for(let r of t){if(!r)continue;let o=e.find(a=>a.toLowerCase()===r.toLowerCase());if(o)return o;let i=r.split("-")[0].toLowerCase(),s=e.find(a=>a.split("-")[0].toLowerCase()===i);if(s)return s}return null}function Lh(e={}){var o,i,s,a;if(e.messages)for(let[l,c]of Object.entries(e.messages))yi(l,c);z.fallback=(o=e.fallback)!=null?o:z.fallback,z.currency=(s=(i=e.currency)!=null?i:w.currency)!=null?s:z.currency,Zn=(a=e.loadPath)!=null?a:Zn,e.persist===!1?Jn=null:typeof e.persist=="string"&&(Jn=e.persist);let t=Jn?ue.get(Jn):void 0,n=e.detect===!1?null:Au(),r=t||n||e.locale||z.locale||z.fallback;return z.locale=r,w.locale=r,Qo(r,z.currency),typeof document!="undefined"&&(document.documentElement.lang=r),!z.messages[r]&&Zn&&Oa(r,Zn.replace("{locale}",r)),Kr}var Mh={get locale(){return z.locale},get fallback(){return z.fallback},get locales(){return Object.keys(z.messages)},t:er,te:kh,n:Tu,c:Lu,d:Mu,rt:Su,setLocale:_r,getLocale:xi,addMessages:yi,loadMessages:Oa,messagesOf:Th,detectLocale:Au},Kr=Object.defineProperties(Lh,Object.getOwnPropertyDescriptors(Mh));P("$t",()=>er);P("$locale",()=>z.locale);P("$i18n",()=>Kr);P("$n",()=>Tu);P("$c",()=>Lu);P("$d",()=>Mu);P("$rt",()=>Su);var Sh=/^[A-Za-z_$][\w$-]*(\.[A-Za-z_$][\w$-]*)*$/;function Ah(e,t){let n=e.trim();if(!n)return"";if(Sh.test(n))return n;let r=t(n);return typeof r=="string"?r:n}function Ch(e,t){var o;let n=(o=ke(e,`${w.prefix}t-params`))!=null?o:ke(e,"data-v-t-params");if(!n)return{};let r=t(n);return r&&typeof r=="object"?r:{}}y("t",({el:e,arg:t,expression:n,effect:r,evaluate:o})=>{r(()=>{let i=Ah(n,o);if(!i)return;let s=er(i,Ch(e,o));t?e.setAttribute(t,s):e.textContent!==s&&(e.textContent=s)})});y("t-params",()=>{});y("locale",({el:e,expression:t,effect:n,cleanup:r,evaluate:o})=>{let i=()=>{let a=t.trim();if(!a)return"";if(/^[A-Za-z]{2,3}([-_][A-Za-z0-9]{2,8})*$/.test(a))return a.replace("_","-");let l=o(a);return typeof l=="string"?l:a},s=()=>{let a=i();a&&_r(a)};e.addEventListener("click",s),r(()=>e.removeEventListener("click",s)),n(()=>{e.classList.toggle("v-locale-active",i()===z.locale)})});be();le();He();He();le();var Fa=new WeakMap;function Wt(e,t){var n;return(n=ke(e,`${w.prefix}${t}`))!=null?n:ke(e,`data-v-${t}`)}function wi(e,t){return Nt(e,`${w.prefix}${t}`)||Nt(e,`data-v-${t}`)}function J(e,t){let n=Fa.get(e);return n&&t in n?n[t]:Wt(e,t)}function Ei(e,t,n){var o;let r=(o=Fa.get(e))!=null?o:{};r[t]=n,Fa.set(e,r)}function _(e){y(e,({el:t,expression:n})=>{Ei(t,e,n)},{priority:j.BIND})}function fe(e,t,n){e.dispatchEvent(new CustomEvent(t,{detail:n,bubbles:!0}))}function mt(e,t,n,r,o){if(!e.trim())return;let i=t.child({$el:n,$event:r!=null?r:null,$detail:o}),s=q(e,i,"directive de UI");return typeof s=="function"?s.call(t.data,o!=null?o:r):s}var Rh=`
|
|
138
|
+
`)}))}function Bv(e){let t=e.tagName;if(t==="FORM")return"submit";if(t==="INPUT"||t==="SELECT"||t==="TEXTAREA"){let n=e.type;return n==="button"||n==="submit"?"click":"change"}return"click"}function jv({el:e,cleanup:t,run:n}){var d,u;let r=V(e,"trigger")||Bv(e),[o,...i]=r.split(/[.\s]+/),s=G((d=V(e,"poll"))!=null?d:void 0,0);if(s>0){n();let p=setInterval(()=>{document.visibilityState==="visible"&&n()},s);t(()=>clearInterval(p));return}if(o==="load"||o==="ready"){n();return}if(o==="visible"||o==="revealed"){if(typeof IntersectionObserver=="undefined"){n();return}let p=new IntersectionObserver(f=>{for(let m of f)m.isIntersecting&&(n(),i.includes("repeat")||p.unobserve(e))},{rootMargin:"80px"});p.observe(e),t(()=>p.disconnect());return}let a=i.includes("once"),l=G((u=V(e,"debounce"))!=null?u:void 0,0),c=p=>{(e.tagName==="FORM"||e.href)&&p.preventDefault(),n(p)};l>0&&(c=Ue(c,l)),e.addEventListener(o,c,{once:a}),t(()=>e.removeEventListener(o,c))}var qv=[["get","GET"],["post","POST"],["put","PUT"],["patch","PATCH"],["delete","DELETE"]];for(let[e,t]of qv)y(e,({el:n,scope:r,expression:o,cleanup:i})=>{jv({el:n,scope:r,cleanup:i,run:a=>{let l=qr(o,r);if(!l)return;let c=V(n,"body")||V(n,"data-body"),d=c?q(c,r.child({$event:a}),"v-body"):void 0,u=V(n,"params"),p=u?q(u,r,"v-params"):void 0;jr({el:n,scope:r,method:t,url:l,body:d,params:p,event:a})}})});function qr(e,t){let n=e.trim();if(!n)return"";if((/^[./#?]/.test(n)||/^https?:\/\//i.test(n)||/^[\w-]+\/[\w\-/.]*$/.test(n))&&!/[+`'"]|\$\{/.test(n))return n;let o=q(n,t,"URL");return typeof o=="string"?o:n}y("load",({el:e,scope:t,expression:n})=>{let r=qr(n,t);r&&jr({el:e,scope:t,method:"GET",url:r})});y("load-visible",({el:e,scope:t,cleanup:n,expression:r})=>{let o=qr(r,t);if(!o)return;if(typeof IntersectionObserver=="undefined"){jr({el:e,scope:t,method:"GET",url:o});return}let i=new IntersectionObserver(s=>{for(let a of s)a.isIntersecting&&(i.unobserve(e),jr({el:e,scope:t,method:"GET",url:o}))},{rootMargin:"120px"});i.observe(e),n(()=>i.disconnect())});y("search",({el:e,scope:t,expression:n,cleanup:r})=>{var u,p;let o=e,i=qr(n,t),s=V(e,"param")||o.getAttribute("name")||"q",a=G((u=V(e,"debounce"))!=null?u:void 0,300),l=Number((p=V(e,"min-length"))!=null?p:0),c=Ue(()=>{let f=o.value.trim();f.length<l||jr({el:e,scope:t,method:"GET",url:i,params:{[s]:f}})},a),d=()=>c();o.addEventListener("input",d),r(()=>{o.removeEventListener("input",d),c.cancel()})});y("resource",({el:e,scope:t,expression:n,cleanup:r})=>{var l,c,d,u;let o=n.indexOf(":"),i=V(e,"as")||"resource",s=n.trim();if(o>-1){let p=n.slice(0,o).trim();/^[A-Za-z_$][\w$]*$/.test(p)&&(i=p,s=n.slice(o+1).trim())}let a=ii(()=>qr(s,t),{method:(V(e,"method")||"GET").toUpperCase(),params:()=>V(e,"params")?q(V(e,"params"),t,"v-params"):void 0,cache:G((l=V(e,"cache"))!=null?l:void 0,0)||void 0,retry:Number((c=V(e,"retry"))!=null?c:0),timeout:G((d=V(e,"timeout"))!=null?d:void 0,ve.defaults.timeout),jsonPath:V(e,"json-path"),poll:G((u=V(e,"poll"))!=null?u:void 0,0),manual:xa(e,"manual"),onSuccess:p=>Yn(e,"voodoo:success",{data:p}),onError:(p,f)=>Yn(e,"voodoo:error",{error:p,message:f})});t.set(i,a),r(()=>a.stop())},{priority:j.DATA});for(let e of["target","swap","trigger","poll","param","params","body","data-body","headers","cache","retry","timeout","as","json-path","template","offline-queue","min-length","scroll-to","manual","debounce","throttle","indicator"])y(e,()=>{},{priority:j.TRANSITION});od(ud);dd(Ot);gd(eu);Nd();var Vr=new Map;function Zd(e,t){let n=Vr.get(e);return n||Vr.set(e,n=new Set),n.add(t),()=>n.delete(t)}function Vv(e,t){let n=Zd(e,r=>{n(),t(r)});return n}function Uv(e,t){let n=Vr.get(e);if(n)for(let r of[...n])try{r(t)}catch(o){K(o,`event "${e}"`)}}function Wv(e,t){var n;if(!t){Vr.delete(e);return}(n=Vr.get(e))==null||n.delete(t)}function eu(e,t){var r,o;let n=typeof t=="function"?{mounted:t,updated:t}:t;y(e,i=>{var d,u;let s,a=!1,l=p=>{var f,m;return{el:i.el,value:p,oldValue:s,arg:i.arg,modifiers:i.modifiers,expression:i.expression,scope:i.scope,instance:(m=(f=i.scope.owner)==null?void 0:f.component)!=null?m:null}},c=n.raw?i.expression:i.evaluate();(d=n.created)==null||d.call(n,i.el,l(c)),(u=n.beforeMount)==null||u.call(n,i.el,l(c)),i.effect(()=>{var m,h;let p=n.raw?i.expression:i.evaluate();if(!a){a=!0,s=p,(m=n.mounted)==null||m.call(n,i.el,l(p));return}if(p===s)return;let f=l(p);(h=n.updated)==null||h.call(n,i.el,f),s=p}),i.cleanup(()=>{var f,m;let p=l(s);(f=n.beforeUnmount)==null||f.call(n,i.el,p),(m=n.unmounted)==null||m.call(n,i.el,p)})},{priority:(r=n.priority)!=null?r:j.DEFAULT,terminal:(o=n.terminal)!=null?o:!1})}function _v(e){return Object.defineProperties(ct.data,Object.getOwnPropertyDescriptors(e)),ct.data}var Kv="0.4.6",li={...ca,version:Kv,config:w,reactive:Z,ref:Mr,shallowRef:Ns,computed:Sr,effect:_e,watch:Oe,watchEffect:Fs,nextTick:at,toRaw:Le,markRaw:Hs,unref:Os,stop:Cs,effectScope:Rs,EffectScope:et,flushSync:Ls,data:_v,store:wd,stores:Fn,removeStore:Ed,storeNames:Ko,scope:ct,component:Ft,components:$e,directive:eu,directives:wt,magic:P,magics:Ar,createApp:bd,start:sd,whenReady:Uo,whenElement:Wo,walk:se,refresh:ld,destroy:X,stopObserving:ad,getScope:Lt,findScope:Ve,addCleanup:dt,parseAttribute:$n,parse:lt,tokenize:Po,evaluate:F,evaluateIn:q,stringify:Ht,clearParseCache:Oc,globals:Pe,http:ve,request:zt,HttpError:Ee,resource:ii,toast:tt,storage:ue,session:ei,cookie:ti,cache:ni,url:jt,theme:ut,clipboard:oi,screen:Ke,network:qt,enter:zr,leave:Br,fadeIn:_n,fadeOut:Kn,slideUp:dn,slideDown:cn,viewTransition:si,injectStyle:ne,ensureTokens:he,on:Zd,once:Vv,off:Wv,emit:Uv,use(e,t){No(li,e,t)},onError(e){Ms(e)},instances:Mt,Scope:on,PRIORITY:j,VoodooSyntaxError:de,VoodooRuntimeError:Re};xd(li);be();var Yv=new Set(["animation-iteration-count","aspect-ratio","border-image-slice","column-count","flex","flex-grow","flex-shrink","font-weight","grid-area","grid-column","grid-row","line-height","opacity","order","orphans","scale","tab-size","widows","z-index","zoom"]);function cu(e){return e.startsWith("--")?e:e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}function nt(e){return e.length<2?e:Array.from(new Set(e))}function un(e){return String(e!=null?e:"").split(/\s+/).filter(Boolean)}function wa(e){if(typeof document=="undefined")return[];let t=document.createElement("template");t.innerHTML=e.trim();let n=[];for(let r of Array.from(t.content.children))n.push(r);return n}function du(e){return e.length>2&&e.charCodeAt(0)===60&&e.endsWith(">")}function Xv(e){if(e==null)return typeof document=="undefined"?[]:[document];if(e instanceof ft)return e.toArray();if(typeof e=="string")return fn(e);if(typeof e=="function")return typeof document=="undefined"?[]:[document];let t=fn(e);return t.length?t:typeof document=="undefined"?[]:[document]}function fn(e,t){if(e==null)return[];if(typeof e=="string"){let o=e.trim();if(!o)return[];if(du(o))return wa(o);let i=[];for(let s of Xv(t))try{for(let a of Array.from(s.querySelectorAll(o)))i.push(a)}catch(a){}return nt(i)}if(e instanceof ft)return e.toArray();if(typeof e=="function")return[];let n=e;if(typeof n.nodeType=="number"){if(n.nodeType===1)return[n];if(n.nodeType===9){let o=n;return o.documentElement?[o.documentElement]:[]}return n.nodeType===11?Array.from(n.children):[]}let r=e;if(typeof r.length=="number"){let o=[];for(let i=0;i<r.length;i++){let s=r[i];s&&s.nodeType===1&&o.push(s)}return nt(o)}return[]}function tu(e){if(e==null)return[];if(typeof e=="string"){let r=e;return du(r.trim())?wa(r):[document.createTextNode(r)]}if(e instanceof ft)return e.toArray();if(typeof e=="function")return[];let t=e;if(typeof t.nodeType=="number")return[t];let n=e;if(typeof n.length=="number"){let r=[];for(let o=0;o<n.length;o++)n[o]&&r.push(n[o]);return r}return[]}function ci(e,t,n){let r=cu(t);if(n===null||n===""){e.style.removeProperty(r);return}let o=typeof n=="number"&&!Yv.has(r)&&!r.startsWith("--")?`${n}px`:String(n);e.style.setProperty(r,o)}function Gv(e,t){for(let[n,r]of Object.entries(t))ci(e,n,r)}function nu(e){if(e===void 0)return;if(e==="")return"";if(e==="true")return!0;if(e==="false")return!1;if(e==="null")return null;if(/^-?\d+(\.\d+)?$/.test(e))return Number(e);let t=e.charCodeAt(0);if(t===123||t===91||t===34)try{return JSON.parse(e)}catch(n){return e}return e}function ru(e){return e.replace(/-([a-z0-9])/g,(t,n)=>n.toUpperCase())}var uu=new WeakMap;function ou(e){return e.hasAttribute("hidden")||e.style.display==="none"?!0:e.isConnected?getComputedStyle(e).display==="none":!1}function iu(e){e.removeAttribute("hidden");let t=uu.get(e);t!==void 0&&t!=="none"?e.style.display=t:e.style.removeProperty("display"),e.isConnected&&getComputedStyle(e).display==="none"&&(e.style.display="block")}function su(e){let t=e.style.display;t&&t!=="none"&&uu.set(e,t),e.style.display="none"}var au="input,select,textarea";function lu(e){return e.matches(au)?[e]:Array.from(e.querySelectorAll(au))}function Qv(e){let t=e;if(!t.name||t.disabled)return!1;let n=(t.getAttribute("type")||"").toLowerCase();return!(n==="file"||n==="submit"||n==="reset"||n==="button"||(n==="checkbox"||n==="radio")&&!t.checked)}var di=new WeakMap;function Jv(e){let t=di.get(e);return t||di.set(e,t=[]),t}var ft=class e{constructor(t=[]){H(this,"length");H(this,"elements");this.elements=t,this.length=t.length;let n=this;for(let r=0;r<t.length;r++)n[r]=t[r]}[Symbol.iterator](){return this.elements[Symbol.iterator]()}find(t){let n=[];for(let r of this.elements)try{for(let o of Array.from(r.querySelectorAll(t)))n.push(o)}catch(o){}return new e(nt(n))}closest(t){let n=[];for(let r of this.elements){let o=r.closest(t);o&&n.push(o)}return new e(nt(n))}parent(t){let n=[];for(let r of this.elements){let o=r.parentElement;o&&(!t||o.matches(t))&&n.push(o)}return new e(nt(n))}parents(t){let n=[];for(let r of this.elements){let o=r.parentElement;for(;o;)(!t||o.matches(t))&&n.push(o),o=o.parentElement}return new e(nt(n))}children(t){let n=[];for(let r of this.elements)for(let o of Array.from(r.children))(!t||o.matches(t))&&n.push(o);return new e(nt(n))}siblings(t){let n=[];for(let r of this.elements){let o=r.parentElement;if(o)for(let i of Array.from(o.children))i!==r&&(!t||i.matches(t))&&n.push(i)}return new e(nt(n))}next(t){let n=[];for(let r of this.elements){let o=r.nextElementSibling;o&&(!t||o.matches(t))&&n.push(o)}return new e(nt(n))}prev(t){let n=[];for(let r of this.elements){let o=r.previousElementSibling;o&&(!t||o.matches(t))&&n.push(o)}return new e(nt(n))}first(){return this.eq(0)}last(){return this.eq(-1)}eq(t){let n=t<0?this.elements.length+t:t,r=this.elements[n];return new e(r?[r]:[])}filter(t){let n=this.elements.filter((r,o)=>typeof t=="function"?t(r,o):r.matches(t));return new e(n)}not(t){let n=this.elements.filter((r,o)=>typeof t=="function"?!t(r,o):!r.matches(t));return new e(n)}has(t){let n=this.elements.filter(r=>typeof t=="string"?r.querySelector(t)!==null:r.contains(t));return new e(n)}is(t){return this.elements.some((n,r)=>typeof t=="function"?t(n,r):n.matches(t))}map(t){return this.elements.map((n,r)=>t(n,r))}each(t){for(let n=0;n<this.elements.length;n++){let r=this.elements[n];if(t.call(r,r,n)===!1)break}return this}get(...t){if(!t.length)return this.toArray();let n=Number(t[0]);return this.elements[n<0?this.elements.length+n:n]}toArray(){return this.elements.slice()}add(t,n){return new e(nt([...this.elements,...fn(t,n)]))}slice(t,n){return new e(this.elements.slice(t,n))}text(...t){var o,i;if(!t.length)return(i=(o=this.elements[0])==null?void 0:o.textContent)!=null?i:"";let n=t[0],r=n==null?"":String(n);for(let s of this.elements){for(let a of Array.from(s.childNodes))X(a);s.textContent=r}return this}html(...t){var o,i;if(!t.length)return(i=(o=this.elements[0])==null?void 0:o.innerHTML)!=null?i:"";let n=t[0],r=n==null?"":String(n);for(let s of this.elements){for(let a of Array.from(s.childNodes))X(a);s.innerHTML=r}return this}val(...t){var r;if(!t.length){let o=this.elements[0];if(!o)return"";let i=o;return o.tagName==="SELECT"&&i.multiple?Array.from(i.selectedOptions).map(s=>s.value):o.type==="checkbox"?o.checked?o.value||"on":"":(r=o.value)!=null?r:""}let n=t[0];for(let o of this.elements){let i=o,s=o;if(i.tagName==="SELECT"&&s.multiple){let a=(Array.isArray(n)?n:[n]).map(String);for(let l of Array.from(s.options))l.selected=a.includes(l.value);continue}if(i.type==="checkbox"||i.type==="radio"){i.checked=Array.isArray(n)?n.map(String).includes(i.value):n===!0||String(n)===i.value;continue}i.value=n==null?"":String(n)}return this}attr(...t){var i,s;let n=t[0];if(n!==null&&typeof n=="object"){for(let a of this.elements)for(let[l,c]of Object.entries(n))c===null||c===!1?a.removeAttribute(l):a.setAttribute(l,c===!0?"":String(c));return this}let r=String(n);if(t.length<2)return(s=(i=this.elements[0])==null?void 0:i.getAttribute(r))!=null?s:void 0;let o=t[1];for(let a of this.elements)o===null||o===!1?a.removeAttribute(r):a.setAttribute(r,o===!0?"":String(o));return this}removeAttr(t){let n=un(t);for(let r of this.elements)for(let o of n)r.removeAttribute(o);return this}prop(...t){let n=String(t[0]);if(t.length<2){let r=this.elements[0];return r?r[n]:void 0}for(let r of this.elements)r[n]=t[1];return this}data(...t){let n=t[0];if(!t.length){let i=this.elements[0];if(!i)return{};let s={};for(let[a,l]of Object.entries(i.dataset))s[a]=nu(l);return s}if(n!==null&&typeof n=="object"){for(let i of this.elements)for(let[s,a]of Object.entries(n))i.dataset[ru(s)]=typeof a=="string"?a:JSON.stringify(a!=null?a:null);return this}let r=ru(String(n));if(t.length<2){let i=this.elements[0];return i?nu(i.dataset[r]):void 0}let o=t[1];for(let i of this.elements)i.dataset[r]=typeof o=="string"?o:JSON.stringify(o!=null?o:null);return this}css(...t){let n=t[0];if(n!==null&&typeof n=="object"){for(let o of this.elements)Gv(o,n);return this}let r=String(n);if(t.length<2){let o=this.elements[0];if(!o)return"";let i=cu(r);return((o.isConnected?getComputedStyle(o).getPropertyValue(i):"")||o.style.getPropertyValue(i)).trim()}for(let o of this.elements)ci(o,r,t[1]);return this}width(...t){if(!t.length){let n=this.elements[0];return n?n.getBoundingClientRect().width:0}for(let n of this.elements)ci(n,"width",t[0]);return this}height(...t){if(!t.length){let n=this.elements[0];return n?n.getBoundingClientRect().height:0}for(let n of this.elements)ci(n,"height",t[0]);return this}offset(){let t=this.elements[0];if(!t)return{top:0,left:0};let n=t.getBoundingClientRect();return{top:n.top+window.scrollY,left:n.left+window.scrollX}}position(){let t=this.elements[0];return t?{top:t.offsetTop,left:t.offsetLeft}:{top:0,left:0}}scrollTop(...t){var r,o;if(!t.length)return(o=(r=this.elements[0])==null?void 0:r.scrollTop)!=null?o:0;let n=Number(t[0])||0;for(let i of this.elements)i.scrollTop=n;return this}addClass(t){let n=un(t);if(n.length)for(let r of this.elements)r.classList.add(...n);return this}removeClass(t){let n=un(t);if(n.length)for(let r of this.elements)r.classList.remove(...n);return this}toggleClass(t,n){let r=un(t);for(let o of this.elements)for(let i of r)n===void 0?o.classList.toggle(i):o.classList.toggle(i,n);return this}hasClass(t){let n=un(t);return n.length?this.elements.some(r=>n.every(o=>r.classList.contains(o))):!1}insert(t,n){let r=this.elements.length;for(let o=0;o<r;o++){let i=this.elements[o];for(let s of tu(t))n(i,o===r-1?s:s.cloneNode(!0))}return this}append(t){return this.insert(t,(n,r)=>n.appendChild(r))}prepend(t){return this.insert(t,(n,r)=>n.insertBefore(r,n.firstChild))}before(t){return this.insert(t,(n,r)=>{var o;return(o=n.parentNode)==null?void 0:o.insertBefore(r,n)})}after(t){return this.insert(t,(n,r)=>{var o;return(o=n.parentNode)==null?void 0:o.insertBefore(r,n.nextSibling)})}appendTo(t){let n=fn(t);for(let r=0;r<n.length;r++)for(let o of this.elements)n[r].appendChild(r===n.length-1?o:o.cloneNode(!0));return this}prependTo(t){let n=fn(t);for(let r=0;r<n.length;r++){let o=n[r],i=this.elements.map(s=>r===n.length-1?s:s.cloneNode(!0));for(let s=i.length-1;s>=0;s--)o.insertBefore(i[s],o.firstChild)}return this}replaceWith(t){for(let n of this.elements){let r=n.parentNode;if(r){for(let o of tu(t))r.insertBefore(o,n);X(n),n.remove()}}return this}wrap(t){var n;for(let r of this.elements){let o=fn(t)[0];if(!o)continue;let i=o.cloneNode(!0);(n=r.parentNode)==null||n.insertBefore(i,r);let s=i;for(;s.firstElementChild;)s=s.firstElementChild;s.appendChild(r)}return this}unwrap(){let t=new Set;for(let n of this.elements){let r=n.parentElement;r&&r!==document.body&&t.add(r)}for(let n of t){let r=n.parentNode;if(r){for(;n.firstChild;)r.insertBefore(n.firstChild,n);X(n),n.remove()}}return this}remove(){for(let t of this.elements)X(t),t.remove();return this}empty(){for(let t of this.elements){for(let n of Array.from(t.childNodes))X(n);t.replaceChildren()}return this}clone(t=!0){return new e(this.elements.map(n=>n.cloneNode(t)))}on(t,...n){var a;let r=typeof n[0]=="string",o=r?n[0]:null,i=r?n[1]:n[0],s=(a=r?n[2]:n[1])!=null?a:{};if(typeof i!="function")return this;for(let l of this.elements)for(let c of un(t)){let d=u=>{if(!o){i.call(l,u);return}let p=u.target,f=p==null?void 0:p.closest(o);!f||!l.contains(f)||i.call(f,u)};l.addEventListener(c,d,s),Jv(l).push({type:c,selector:o,handler:i,wrapped:d,options:s})}return this}off(t,n,r){let o=typeof n=="string"?n:null,i=typeof n=="function"?n:r!=null?r:null,s=t?un(t):null;for(let a of this.elements){let l=di.get(a);if(!l)continue;let c=[];for(let d of l){let u=!s||s.includes(d.type),p=o===null||d.selector===o,f=i===null||d.handler===i;u&&p&&f?a.removeEventListener(d.type,d.wrapped,d.options):c.push(d)}di.set(a,c)}return this}once(t,...n){let r=typeof n[0]=="string",o=r?n[0]:null,i=r?n[1]:n[0];if(typeof i!="function")return this;let s=this,a=function(l){return o?s.off(t,o,a):s.off(t,a),i.call(this,l)};return o?this.on(t,o,a):this.on(t,a)}trigger(t,n){for(let r of this.elements){if(n===void 0&&typeof r[t]=="function"){r[t]();continue}let o=new CustomEvent(t,{detail:n,bubbles:!0,cancelable:!0});o.__voodoo=!0,r.dispatchEvent(o)}return this}emit(t,n){for(let r of this.elements){let o=new CustomEvent(t,{detail:n,bubbles:!0,cancelable:!0});o.__voodoo=!0,r.dispatchEvent(o)}return this}show(){for(let t of this.elements)iu(t);return this}hide(){for(let t of this.elements)su(t);return this}toggle(t){for(let n of this.elements)(t===void 0?ou(n):t)?iu(n):su(n);return this}fadeIn(t=220){for(let n of this.elements)n.removeAttribute("hidden"),_n(n,t);return this}fadeOut(t=220){for(let n of this.elements)Kn(n,t);return this}slideUp(t=240){for(let n of this.elements)dn(n,t);return this}slideDown(t=240){for(let n of this.elements)n.removeAttribute("hidden"),cn(n,t);return this}slideToggle(t=240){for(let n of this.elements)ou(n)?(n.removeAttribute("hidden"),cn(n,t)):dn(n,t);return this}animate(t,n=300){for(let r of this.elements)typeof r.animate=="function"&&r.animate(t,n);return this}scrollIntoView(t={behavior:"smooth",block:"start"}){var n;return(n=this.elements[0])==null||n.scrollIntoView(t),this}serialize(){let t=this.elements[0];if(!t)return"";let n=new URLSearchParams;for(let r of lu(t)){if(!Qv(r))continue;let o=r,i=r;if(o.tagName==="SELECT"&&i.multiple){for(let s of Array.from(i.selectedOptions))n.append(o.name,s.value);continue}n.append(o.name,o.value)}return n.toString()}serializeObject(){var r,o,i,s;let t=this.elements[0],n={};if(!t)return n;for(let a of lu(t)){let l=a;if(!l.name||l.disabled)continue;let c=(l.getAttribute("type")||"").toLowerCase();if(c==="submit"||c==="reset"||c==="button")continue;let d=l.name.endsWith("[]"),u=d?l.name.slice(0,-2):l.name,p=a,f;if(c==="checkbox"){if(!l.checked&&!d){n[u]=(r=n[u])!=null?r:!1;continue}if(!l.checked)continue;f=l.value==="on"?!0:l.value}else if(c==="radio"){if(!l.checked)continue;f=l.value}else c==="file"?f=l.multiple?Array.from((o=l.files)!=null?o:[]):(s=(i=l.files)==null?void 0:i[0])!=null?s:null:l.tagName==="SELECT"&&p.multiple?f=Array.from(p.selectedOptions).map(m=>m.value):c==="number"||c==="range"?f=l.value===""?null:Number(l.value):f=l.value;if(d){let m=n[u];Array.isArray(m)?m.push(f):n[u]=[f];continue}if(Object.prototype.hasOwnProperty.call(n,u)){let m=n[u];Array.isArray(m)?m.push(f):m===void 0||m===!1?n[u]=f:n[u]=[m,f];continue}n[u]=f}return n}focus(t){var n;return(n=this.elements[0])==null||n.focus(t),this}blur(){for(let t of this.elements)t.blur();return this}select(){for(let t of this.elements){let n=t;typeof n.select=="function"&&n.select()}return this}walk(t=!1){for(let n of this.elements)t&&X(n),se(n,Ve(n.parentNode));return this}destroy(){for(let t of this.elements)X(t);return this}};function Ea(e,t){if(typeof e=="function"){ka(e);let n=typeof document!="undefined"?document.documentElement:null;return new ft(n?[n]:[])}return new ft(fn(e,t))}function ka(e){return typeof document=="undefined"?Promise.resolve():new Promise(t=>{hd(()=>{try{e==null||e()}catch(n){K(n,"V.ready")}t()})})}function fu(e){return new ft(wa(e))}be();le();var pn=new Map,Fe={emit(e,t){let n=pn.get(e);if(!(!n||n.size===0))for(let r of[...n])try{r(t)}catch(o){console.error("[Voodoo] error in devtools listener:",o)}},on(e,t){let n=pn.get(e);return n||pn.set(e,n=new Set),n.add(t),()=>{n==null||n.delete(t)}},off(e,t){var n;(n=pn.get(e))==null||n.delete(t)},clear(e){e?pn.delete(e):pn.clear()},count(e){var t,n;return(n=(t=pn.get(e))==null?void 0:t.size)!=null?n:0}};var U={mode:"history",base:"/",beforeEach:null,afterEach:null,linkActiveClass:"v-link-active",linkExactActiveClass:"v-link-exact-active",transition:!0,titleTemplate:"%s",scrollBehavior:null},ui="__voodooRoute",vu=10,pt=[],hu=new Map,fi=new Map,Xn="inicial",pi=!1,gu=!1;function Zv(){return{path:"/",fullPath:"/",params:{},query:{},hash:"",name:"",meta:{},matched:null}}var ce=Z(Zv());function Ur(e){let t=e||"/";return t.startsWith("/")||(t=`/${t}`),t=t.replace(/\/{2,}/g,"/"),t.length>1&&t.endsWith("/")&&(t=t.slice(0,-1)),t}function bu(e){let t={};return e&&new URLSearchParams(e.startsWith("?")?e.slice(1):e).forEach((r,o)=>{t[o]=r}),t}function eh(e){let t=new URLSearchParams;for(let[n,r]of Object.entries(e))r!=null&&t.append(n,String(r));return t.toString()}function Sa(e){let t=e||"/",n="",r=t.indexOf("#");r>-1&&(n=t.slice(r+1),t=t.slice(0,r));let o={},i=t.indexOf("?");return i>-1&&(o=bu(t.slice(i+1)),t=t.slice(0,i)),{path:Ur(t),query:o,hash:n}}function th(e){let t=U.base.replace(/\/$/,"");return!t||t===""?e:e===t?"/":e.startsWith(`${t}/`)?e.slice(t.length):e}function yu(){return typeof window=="undefined"?{path:"/",query:{},hash:""}:U.mode==="hash"?Sa(window.location.hash.slice(1)||"/"):{path:Ur(th(window.location.pathname)),query:bu(window.location.search),hash:window.location.hash.slice(1)}}function xu(e,t,n){let r=eh(t);return`${e}${r?`?${r}`:""}${n?`#${n}`:""}`}function Aa(e){let t=xu(e.path,e.query,e.hash);if(U.mode==="hash"){let{pathname:r,search:o}=window.location;return`${r}${o}#${t}`}return`${U.base==="/"?"":U.base.replace(/\/$/,"")}${t}`||"/"}var La=!1,mi=!1;function Ca(e,t,n){if(!La)try{n?window.history.replaceState(e,"",t):window.history.pushState(e,"",t);return}catch(i){if(!(i instanceof Error)||i.name!=="SecurityError")throw i;La=!0}if(U.mode!=="hash")return;let r=t.indexOf("#");if(r<0)return;let o=t.slice(r);if(window.location.hash!==o){mi=!0;try{window.location.hash=o}finally{setTimeout(()=>{mi=!1},0)}}}function wu(e,t){let n=e==="*"?"*":Ur(e),r=n==="*"?["*"]:n.split("/").filter(Boolean),o=[],i=r.length*10;for(let s of r){if(s==="*"||s==="**"){o.push({type:"wildcard",value:"*",optional:!0}),i-=30;continue}if(s.startsWith(":")){let a=s.endsWith("?"),l=s.slice(1,a?-1:void 0);o.push({type:"param",value:l,optional:a}),i+=a?1:2;continue}o.push({type:"static",value:s,optional:!1}),i+=4}return{pattern:n,segments:o,score:i,record:t}}function nh(e,t){let n={},r=0;for(let o of e){if(o.type==="wildcard")return n["*"]=t.slice(r).map(Ta).join("/"),n;if(r>=t.length){if(o.optional)continue;return null}let i=t[r];if(o.type==="static"){if(Ta(i)!==o.value)return null;r++;continue}n[o.value]=Ta(i),r++}return r===t.length?n:null}function Ta(e){try{return decodeURIComponent(e)}catch(t){return e}}function rh(e){let t=e.split("/").filter(Boolean),n=null;for(let r of pt){let o=nh(r.segments,t);o&&(!n||r.score>n.route.score)&&(n={route:r,params:o})}return n}function Ra(e){var t,n;return e&&(n=(t=pt.find(r=>r.pattern===e))==null?void 0:t.record)!=null?n:null}function Gn(e){let{path:t,query:n,hash:r}=Sa(e);return $a(t,n,r)}function $a(e,t,n){var o,i;let r=rh(e);return{path:e,fullPath:xu(e,t,n),params:r?r.params:{},query:t,hash:n,name:(o=r==null?void 0:r.route.record.name)!=null?o:"",meta:(i=r==null?void 0:r.route.record.meta)!=null?i:{},matched:r?r.route.pattern:null}}function Qn(){return{path:ce.path,fullPath:ce.fullPath,params:{...ce.params},query:{...ce.query},hash:ce.hash,name:ce.name,meta:ce.meta,matched:ce.matched}}function Da(e){ce.path=e.path,ce.fullPath=e.fullPath,ce.params=e.params,ce.query=e.query,ce.hash=e.hash,ce.name=e.name,ce.meta=e.meta,ce.matched=e.matched;let t=Ra(e.matched);t!=null&&t.title&&typeof document!="undefined"&&(document.title=U.titleTemplate.includes("%s")?U.titleTemplate.replace("%s",t.title):t.title)}async function Ha(e,t){let n=Ra(e.matched);if(n!=null&&n.redirect)return n.redirect;if(n!=null&&n.beforeEnter){let r=await n.beforeEnter(e,t);if(r===!1)return!1;if(typeof r=="string")return r}if(U.beforeEach){let r=await U.beforeEach(e,t);if(r===!1)return!1;if(typeof r=="string")return r}return!0}function hi(){typeof window!="undefined"&&hu.set(Xn,window.scrollY)}function Pa(e,t,n){typeof window!="undefined"&&Me(()=>{requestAnimationFrame(()=>{var o;let r=i=>{Math.abs(window.scrollY-i)>1&&window.scrollTo(0,i)};if(U.scrollBehavior){let i=U.scrollBehavior(e,t,n);if(i===!1)return;if(typeof i=="number"){r(i);return}}if(e.hash){let i=(o=document.getElementById(e.hash))!=null?o:/^[\w-]+$/.test(e.hash)?document.querySelector(`[name="${e.hash}"]`):null;if(i){i.scrollIntoView({behavior:"smooth",block:"start"});return}}r(n!=null?n:0)})})}async function Vt(e,t={}){var a,l;if(typeof window=="undefined")return!1;Eu();let n=Qn(),r=Gn(e);if(!t.force&&r.fullPath===n.fullPath)return!0;for(let c=0;;c++){if(c>vu)return Y(`Router: too many redirects when navigating to "${e}".`),!1;let d=await Ha(r,n);if(d===!1)return Fe.emit("navigation",{from:n.fullPath,to:r.fullPath,cancelled:!0,matched:r.matched}),!1;if(typeof d=="string"){r=Gn(d);continue}break}hi();let o=ae("rota"),i={...(a=t.state)!=null?a:{},[ui]:o},s=Aa(r);return Ca(i,s,t.replace===!0),Xn=o,Da(r),t.scroll!==!1&&Pa(r,n,null),(l=U.afterEach)==null||l.call(U,Qn(),n),Fe.emit("navigation",{from:n.fullPath,to:r.fullPath,matched:r.matched}),!0}async function oh(e){var c,d;if(mi)return;let{path:t,query:n,hash:r}=yu(),o=$a(t,n,r),i=Qn();if(o.fullPath===i.fullPath)return;let s=await Ha(o,i);if(s===!1){Ca({[ui]:Xn},Aa(i),!0),Fe.emit("navigation",{from:i.fullPath,to:o.fullPath,cancelled:!0,matched:o.matched});return}if(typeof s=="string"){Vt(s,{replace:!0});return}hi();let a=e.state,l=a&&a[ui]||ae("rota");Xn=l,Da(o),Pa(o,i,(c=hu.get(l))!=null?c:0),(d=U.afterEach)==null||d.call(U,Qn(),i),Fe.emit("navigation",{from:i.fullPath,to:o.fullPath,matched:o.matched})}function vi(e){oh(e)}function Eu(){pi||typeof window=="undefined"||(pi=!0,"scrollRestoration"in window.history&&(window.history.scrollRestoration="manual"),window.addEventListener("popstate",vi),U.mode==="hash"&&window.addEventListener("hashchange",vi),window.addEventListener("beforeunload",hi))}function ih(){!pi||typeof window=="undefined"||(pi=!1,window.removeEventListener("popstate",vi),window.removeEventListener("hashchange",vi),window.removeEventListener("beforeunload",hi),La=!1,mi=!1)}async function sh(){var i;if(typeof window=="undefined")return;let{path:e,query:t,hash:n}=yu(),r=Qn(),o=$a(e,t,n);for(let s=0;;s++){if(s>vu){Y("Router: too many redirects in the initial route.");return}let a=await Ha(o,r);if(a===!1)return;if(typeof a=="string"){o=Gn(a);continue}break}Xn=ae("rota"),Ca({[ui]:Xn},Aa(o),!0),Da(o),o.hash&&Pa(o,r,null),(i=U.afterEach)==null||i.call(U,Qn(),r)}function ah(e,t){let n=wu(e,t),r=pt.findIndex(o=>o.pattern===n.pattern);r>-1?pt.splice(r,1,n):pt.push(n)}function lh(e){let t=e==="*"?"*":Ur(e),n=pt.findIndex(r=>r.pattern===t);n>-1&&pt.splice(n,1)}function ch(){return[...pt].sort((e,t)=>t.score-e.score).map(e=>e.pattern)}function dh(e){e?fi.delete(e):fi.clear()}function uh(e){var t,n,r,o,i,s,a,l,c,d;U.mode=(t=e.mode)!=null?t:"history",U.base=Ur((n=e.base)!=null?n:"/"),U.beforeEach=(r=e.beforeEach)!=null?r:null,U.afterEach=(o=e.afterEach)!=null?o:null,U.linkActiveClass=(i=e.linkActiveClass)!=null?i:"v-link-active",U.linkExactActiveClass=(s=e.linkExactActiveClass)!=null?s:"v-link-exact-active",U.transition=(a=e.transition)!=null?a:!0,U.titleTemplate=(l=e.titleTemplate)!=null?l:"%s",U.scrollBehavior=(c=e.scrollBehavior)!=null?c:null,pt.length=0;for(let[u,p]of Object.entries((d=e.routes)!=null?d:{}))pt.push(wu(u,p));return gu=!0,Eu(),sh(),Wr}var fh={get current(){return ce},push:(e,t={})=>Vt(e,t),replace:(e,t={})=>Vt(e,{...t,replace:!0}),navigate:Vt,back:()=>{typeof window!="undefined"&&window.history.back()},forward:()=>{typeof window!="undefined"&&window.history.forward()},go:e=>{typeof window!="undefined"&&window.history.go(e)},resolve:Gn,addRoute:ah,removeRoute:lh,patterns:ch,stop:ih,clearViewCache:dh,get ready(){return gu}},Wr=Object.defineProperties(uh,Object.getOwnPropertyDescriptors(fh));P("$route",()=>ce);P("$router",()=>Wr);async function ph(e){let t=fi.get(e);if(t!==void 0)return t;let n=await ve.get(e,{responseType:"text"}),r=typeof n=="string"?n:String(n!=null?n:"");return fi.set(e,r),r}function mh(e){return Object.keys(e).sort().map(n=>`${n}=${e[n]}`).join("&")}y("router-view",({el:e,scope:t,modifiers:n,effect:r,cleanup:o})=>{jo(e);let i=e.innerHTML,s=U.transition&&!n["no-transition"],a=0,l=()=>{for(let u of Array.from(e.childNodes))X(u);e.textContent=""},c=(u,p)=>{if(l(),u!=null&&u.component){let f=document.createElement("div");f.setAttribute(`${w.prefix}component`,u.component),f.className="v-router-page",e.appendChild(f),se(f,t);return}e.innerHTML=p!=null?p:i;for(let f of Array.from(e.childNodes))se(f,t)},d=async(u,p)=>{let f=null;if(u!=null&&u.view){e.classList.add("v-router-loading");try{f=await ph(u.view)}catch(m){K(m,`v-router-view loading "${u.view}"`),f=""}finally{e.classList.remove("v-router-loading")}if(p!==a)return}s?si(()=>c(u,f)):c(u,f)};r(()=>{let u=ce.matched;mh(ce.params);let p=Ra(u);d(p,++a)}),o(()=>{a++,l()})},{priority:j.DEFAULT});var vh=/^[a-z][a-z0-9+.-]*:/i;function pu(e){return!!(!e||e.startsWith("//")||vh.test(e))}function mu(e,t,n){var i;let r=t.trim();if(r){if(r.startsWith("/")||r.startsWith("#"))return r;let s=n(r);return typeof s=="string"&&s?s:r}let o=(i=e.getAttribute("href"))!=null?i:"";return U.mode==="hash"&&o.startsWith("#")?o.slice(1)||"/":o}function Ma(e,t){let{path:n}=Sa(e);return n==="/"||t?ce.path===n:ce.path===n||ce.path.startsWith(`${n}/`)}y("link",({el:e,expression:t,modifiers:n,effect:r,cleanup:o,evaluate:i})=>{let s=e,a=l=>{var u;if(l.defaultPrevented||l.metaKey||l.ctrlKey||l.shiftKey||l.altKey||typeof l.button=="number"&&l.button!==0)return;let c=s.getAttribute("target");if(c&&c!=="_self"||s.hasAttribute("download")||((u=s.getAttribute("rel"))!=null?u:"").split(/\s+/).includes("external"))return;let d=mu(e,t,i);d&&(pu(d)||U.mode!=="hash"&&d.startsWith("#")||(l.preventDefault(),Vt(d,{replace:!!n.replace,scroll:n["no-scroll"]?!1:void 0})))};e.addEventListener("click",a),o(()=>e.removeEventListener("click",a)),r(()=>{let l=mu(e,t,i);if(!l||pu(l))return;let c=Ma(l,!0),d=c||Ma(l,!1);e.classList.toggle(U.linkActiveClass,d),e.classList.toggle(U.linkExactActiveClass,c),c?e.setAttribute("aria-current","page"):e.removeAttribute("aria-current")})});y("route-active",({el:e,expression:t,arg:n,modifiers:r,effect:o,evaluate:i})=>{let s=n||"active";o(()=>{var d;let a=t.trim(),l=a.startsWith("/")||!a?a:(d=i(a))!=null?d:a,c=l?Ma(String(l),!!r.exact):!1;e.classList.toggle(s,c)})});be();le();var hh="voodoo:locale",z=Z({locale:w.locale||"pt-BR",fallback:"en",currency:w.currency||"BRL",messages:{}}),Jn=hh,Zn="",Na=new Map;function gi(e,t){let n=z.messages[e];if(!n)return null;let r=n[t];if(typeof r=="string")return r;let o=n;for(let i of t.split(".")){if(o==null||typeof o=="string")return null;o=o[i]}return typeof o=="string"?o:null}function bi(e){let t=[e],n=e.split("-")[0];n&&n!==e&&t.push(n);for(let r of Object.keys(z.messages))r!==e&&r.split("-")[0]===n&&t.push(r);return t}var ku=new Map;function gh(e,t){try{let n=ku.get(e);return n||ku.set(e,n=new Intl.PluralRules(e)),n.select(t)}catch(n){return t===1?"one":"other"}}var bh=["zero","one","two","few","many","other"];function yh(e,t,n){var i;if(e.length<=1)return(i=e[0])!=null?i:"";let r=gh(n,t);if(e.length===2)return r==="one"?e[0]:e[1];if(e.length===3)return t===0?e[0]:r==="one"?e[1]:e[2];let o=bh.indexOf(r);return e[Math.min(o<0?e.length-1:o,e.length-1)]}var xh=/\{\s*([\w.$-]+)\s*\}/g;function wh(e,t){return e.indexOf("{")===-1?e:e.replace(xh,(n,r)=>{let o=t[r];return o==null?n:String(o)})}function Eh(e){return e==null?{}:typeof e=="number"?{n:e}:e}function er(e,t){var i,s;if(!e)return"";let n=Eh(t),r=z.locale,o=null;for(let a of bi(r))if(o=gi(a,e),o!==null)break;if(o===null&&z.fallback&&z.fallback!==r){for(let a of bi(z.fallback))if(o=gi(a,e),o!==null)break}if(o===null)return e;if(o.includes("|")){let a=Number((s=(i=n.n)!=null?i:n.count)!=null?s:0),l=o.split("|").map(c=>c.trim());o=yh(l,Number.isNaN(a)?0:a,r)}return wh(o,n)}function kh(e,t){let n=t!=null?t:z.locale;for(let r of bi(n))if(gi(r,e)!==null)return!0;if(z.fallback&&z.fallback!==n){for(let r of bi(z.fallback))if(gi(r,e)!==null)return!0}return!1}function Tu(e,t={}){return sa(e,{...t,locale:z.locale})}function Lu(e,t){return ia(e,{locale:z.locale,currency:t!=null?t:z.currency})}function Mu(e,t="short"){return aa(e,t,z.locale)}function Su(e){return la(e,z.locale)}function xi(){return z.locale}function Th(e){var t;return(t=z.messages[e!=null?e:z.locale])!=null?t:{}}function yi(e,t){let n=z.messages[e];return n?Xo(n,t):z.messages[e]=t,e}async function Oa(e,t){if(typeof t!="string"){yi(e,t);return}let n=Na.get(e);if(n)return n;let r=ve.get(t,{responseType:"json"}).then(o=>{o&&typeof o=="object"&&yi(e,o)}).catch(o=>{K(o,`i18n ao carregar "${t}"`)}).finally(()=>{Na.delete(e)});return Na.set(e,r),r}function _r(e){let t=e==null?void 0:e.trim();if(!t||t===z.locale)return Promise.resolve();let n=z.locale;return z.locale=t,z.currency=z.currency||w.currency,w.locale=t,Qo(t,z.currency),Jn&&ue.set(Jn,t),typeof document!="undefined"&&(document.documentElement.lang=t),Fe.emit("locale",{from:n,to:t}),!z.messages[t]&&Zn?Oa(t,Zn.replace("{locale}",t)):Promise.resolve()}function Au(){var n;if(typeof navigator=="undefined")return null;let e=Object.keys(z.messages);if(!e.length)return null;let t=(n=navigator.languages)!=null&&n.length?[...navigator.languages]:[navigator.language];for(let r of t){if(!r)continue;let o=e.find(a=>a.toLowerCase()===r.toLowerCase());if(o)return o;let i=r.split("-")[0].toLowerCase(),s=e.find(a=>a.split("-")[0].toLowerCase()===i);if(s)return s}return null}function Lh(e={}){var o,i,s,a;if(e.messages)for(let[l,c]of Object.entries(e.messages))yi(l,c);z.fallback=(o=e.fallback)!=null?o:z.fallback,z.currency=(s=(i=e.currency)!=null?i:w.currency)!=null?s:z.currency,Zn=(a=e.loadPath)!=null?a:Zn,e.persist===!1?Jn=null:typeof e.persist=="string"&&(Jn=e.persist);let t=Jn?ue.get(Jn):void 0,n=e.detect===!1?null:Au(),r=t||n||e.locale||z.locale||z.fallback;return z.locale=r,w.locale=r,Qo(r,z.currency),typeof document!="undefined"&&(document.documentElement.lang=r),!z.messages[r]&&Zn&&Oa(r,Zn.replace("{locale}",r)),Kr}var Mh={get locale(){return z.locale},get fallback(){return z.fallback},get locales(){return Object.keys(z.messages)},t:er,te:kh,n:Tu,c:Lu,d:Mu,rt:Su,setLocale:_r,getLocale:xi,addMessages:yi,loadMessages:Oa,messagesOf:Th,detectLocale:Au},Kr=Object.defineProperties(Lh,Object.getOwnPropertyDescriptors(Mh));P("$t",()=>er);P("$locale",()=>z.locale);P("$i18n",()=>Kr);P("$n",()=>Tu);P("$c",()=>Lu);P("$d",()=>Mu);P("$rt",()=>Su);var Sh=/^[A-Za-z_$][\w$-]*(\.[A-Za-z_$][\w$-]*)*$/;function Ah(e,t){let n=e.trim();if(!n)return"";if(Sh.test(n))return n;let r=t(n);return typeof r=="string"?r:n}function Ch(e,t){var o;let n=(o=ke(e,`${w.prefix}t-params`))!=null?o:ke(e,"data-v-t-params");if(!n)return{};let r=t(n);return r&&typeof r=="object"?r:{}}y("t",({el:e,arg:t,expression:n,effect:r,evaluate:o})=>{r(()=>{let i=Ah(n,o);if(!i)return;let s=er(i,Ch(e,o));t?e.setAttribute(t,s):e.textContent!==s&&(e.textContent=s)})});y("t-params",()=>{});y("locale",({el:e,expression:t,effect:n,cleanup:r,evaluate:o})=>{let i=()=>{let a=t.trim();if(!a)return"";if(/^[A-Za-z]{2,3}([-_][A-Za-z0-9]{2,8})*$/.test(a))return a.replace("_","-");let l=o(a);return typeof l=="string"?l:a},s=()=>{let a=i();a&&_r(a)};e.addEventListener("click",s),r(()=>e.removeEventListener("click",s)),n(()=>{e.classList.toggle("v-locale-active",i()===z.locale)})});be();le();He();He();le();var Fa=new WeakMap;function Wt(e,t){var n;return(n=ke(e,`${w.prefix}${t}`))!=null?n:ke(e,`data-v-${t}`)}function wi(e,t){return Nt(e,`${w.prefix}${t}`)||Nt(e,`data-v-${t}`)}function J(e,t){let n=Fa.get(e);return n&&t in n?n[t]:Wt(e,t)}function Ei(e,t,n){var o;let r=(o=Fa.get(e))!=null?o:{};r[t]=n,Fa.set(e,r)}function _(e){y(e,({el:t,expression:n})=>{Ei(t,e,n)},{priority:j.BIND})}function fe(e,t,n){e.dispatchEvent(new CustomEvent(t,{detail:n,bubbles:!0}))}function mt(e,t,n,r,o){if(!e.trim())return;let i=t.child({$el:n,$event:r!=null?r:null,$detail:o}),s=q(e,i,"directive de UI");return typeof s=="function"?s.call(t.data,o!=null?o:r):s}var Rh=`
|
|
139
139
|
.v-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
|
|
140
140
|
clip:rect(0 0 0 0);white-space:nowrap;border:0}
|
|
141
141
|
`,Ut=null;function Ye(e){if(typeof document=="undefined")return;ne("ui-live",Rh),(!Ut||!Ut.isConnected)&&(Ut=document.createElement("div"),Ut.className="v-visually-hidden",Ut.setAttribute("role","status"),Ut.setAttribute("aria-live","polite"),document.body.appendChild(Ut));let t=Ut;t.textContent="",setTimeout(()=>{t.textContent=e},40)}function ki(e,t,n){return Bo(e,t).filter(r=>Hn(r,n)===e)}He();le();var $h=`
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "voodoojs",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.2",
|
|
4
4
|
"description": "Voodoo.js: the HTML-first JavaScript framework. Build reactive applications directly in HTML: fine-grained reactivity, components, HTTP, forms, validation, router and UI. No mandatory build step, no runtime dependencies, no Virtual DOM, no eval.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"javascript",
|