voodoojs 0.6.1 → 0.7.0
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/{chunk-NNU6WOOU.js → chunk-4T2UIPWX.js} +4 -4
- package/dist/{chunk-A2UOVQBP.js → chunk-CYN6VLMD.js} +4 -4
- package/dist/{chunk-JZIYRIY6.js → chunk-E5T65CEI.js} +5 -5
- package/dist/{chunk-U76IRJKH.js → chunk-GIWKGFGY.js} +4 -4
- package/dist/{chunk-CNHNFTPC.js → chunk-II3XBOAP.js} +13 -13
- package/dist/{chunk-PHMBDPWH.js → chunk-JB2YYNK6.js} +7 -7
- package/dist/{chunk-5777LJVW.js → chunk-MMLUK37L.js} +3 -3
- package/dist/{chunk-4LR3IFPX.js → chunk-QO3I7VLJ.js} +5 -5
- package/dist/{chunk-PQZEVFVZ.js → chunk-WSDB7K4X.js} +6 -6
- package/dist/{chunk-E27NRARW.js → chunk-YOZTHZS2.js} +3 -3
- package/dist/{chunk-234ZLC6W.js → chunk-ZIWLQZZL.js} +4 -4
- package/dist/essential.cjs +2 -2
- package/dist/essential.js +10 -10
- package/dist/gpu.cjs +1 -1
- package/dist/gpu.js +10 -10
- package/dist/http.cjs +1 -1
- package/dist/http.js +5 -5
- package/dist/index.cjs +10 -9
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +28 -27
- package/dist/reactivity.cjs +1 -1
- package/dist/reactivity.js +2 -2
- package/dist/socket.cjs +1 -1
- package/dist/socket.js +9 -9
- package/dist/style-SLQ6PHZK.js +5 -0
- package/dist/utils.cjs +1 -1
- package/dist/utils.js +2 -2
- package/dist/voodoo.core.js +2 -2
- package/dist/voodoo.core.min.js +2 -2
- package/dist/voodoo.full.js +10 -9
- package/dist/voodoo.full.min.js +4 -4
- package/dist/voodoo.js +2 -2
- package/dist/voodoo.min.js +2 -2
- package/package.json +1 -1
- package/dist/style-XEUAGGJK.js +0 -5
package/dist/index.js
CHANGED
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { core, sound, hotkey, palette, registerMask, unmask, applyMask, masks, mask, clearErrors, showFieldError, showFormErrors, messages, serializeForm, validate, validator, dialog, prompt, confirm, alert, modal, VoodooCollection, fromHtml, ready2, query, viewTransition, defineComponent, storage, ensurePalette, instances, storeNames, allStores } from './chunk-
|
|
2
|
-
export { VoodooCollection, alert, allStores, applyMask, cache, clearErrors, clipboard, confirm, cookie, createApp, createResource, defineComponent, dialog, ready as documentReady, enter, fadeIn, fadeOut, fromHtml, hotkey, instances, leave, mask, masks, modal, mountComponent, network, palette, prompt, query, ready2 as ready, registerMask, removeStore, createResource as resource, screen, serializeForm, session, showFormErrors, slideDown, slideUp, sound, efeitos as soundEffects, storage, store, storeNames, theme, toast, unmask, url, validate, validator, viewTransition, whenElement, whenReady } from './chunk-
|
|
3
|
-
export { gpu, reflectWgsl } from './chunk-
|
|
4
|
-
import { http } from './chunk-
|
|
5
|
-
export { HttpError, http, request } from './chunk-
|
|
6
|
-
import { devtoolsBus } from './chunk-
|
|
7
|
-
export { createSocket, devtoolsBus, socket, socketSupported } from './chunk-
|
|
8
|
-
import { magic, markSkipChildren, destroy, readAttr, walk, hadDirectives, getScope, collectDirectives, findScope, getEffectScopes, evaluateIn } from './chunk-
|
|
9
|
-
export { Scope, VoodooRuntimeError, VoodooSyntaxError, addCleanup, allowedGlobals, clearParseCache, destroy, evaluate, findScope, getScope, magic, magics, parse, refresh, rootScope, start, stringify, tokenize, walk } from './chunk-
|
|
10
|
-
import { reactive, warn, handleError, queuePostFlush, nextTick } from './chunk-
|
|
11
|
-
export { EffectScope, computed, effect, effectScope, flushSync, isReactive, markRaw, nextTick, reactive, ref, shallowRef, stop, toRaw, unref, watch, watchEffect } from './chunk-
|
|
12
|
-
import { warnAlias } from './chunk-
|
|
13
|
-
import { parseDuration, formatNumber, formatCurrency, formatDate, relativeTime, device, setFormatDefaults, uid, merge, escapeHtml, truncate, get, titleCase } from './chunk-
|
|
14
|
-
export { capitalize, chunk, clone, debounce, device, escapeHtml, formatCurrency, formatDate, formatFileSize, formatNumber, formatPercent, get, groupBy, isBrowser, matchesMedia, memoize, merge, once, parseDuration, random, relativeTime, sample, set, setFormatDefaults, sleep, slugify, sortBy, stripTags, throttle, titleCase, truncate, uid, unique, uuid } from './chunk-
|
|
15
|
-
import { ensureTokens, injectStyle } from './chunk-
|
|
16
|
-
export { ensureTokens, injectStyle } from './chunk-
|
|
17
|
-
import { defineDirective, PRIORITY, config } from './chunk-
|
|
18
|
-
export { PRIORITY, config, defineDirective } from './chunk-
|
|
19
|
-
import './chunk-
|
|
1
|
+
import { core, sound, hotkey, palette, registerMask, unmask, applyMask, masks, mask, clearErrors, showFieldError, showFormErrors, messages, serializeForm, validate, validator, dialog, prompt, confirm, alert, modal, VoodooCollection, fromHtml, ready2, query, viewTransition, defineComponent, storage, ensurePalette, instances, storeNames, allStores } from './chunk-II3XBOAP.js';
|
|
2
|
+
export { VoodooCollection, alert, allStores, applyMask, cache, clearErrors, clipboard, confirm, cookie, createApp, createResource, defineComponent, dialog, ready as documentReady, enter, fadeIn, fadeOut, fromHtml, hotkey, instances, leave, mask, masks, modal, mountComponent, network, palette, prompt, query, ready2 as ready, registerMask, removeStore, createResource as resource, screen, serializeForm, session, showFormErrors, slideDown, slideUp, sound, efeitos as soundEffects, storage, store, storeNames, theme, toast, unmask, url, validate, validator, viewTransition, whenElement, whenReady } from './chunk-II3XBOAP.js';
|
|
3
|
+
export { gpu, reflectWgsl } from './chunk-E5T65CEI.js';
|
|
4
|
+
import { http } from './chunk-WSDB7K4X.js';
|
|
5
|
+
export { HttpError, http, request } from './chunk-WSDB7K4X.js';
|
|
6
|
+
import { devtoolsBus } from './chunk-QO3I7VLJ.js';
|
|
7
|
+
export { createSocket, devtoolsBus, socket, socketSupported } from './chunk-QO3I7VLJ.js';
|
|
8
|
+
import { magic, markSkipChildren, destroy, readAttr, walk, hadDirectives, getScope, collectDirectives, findScope, getEffectScopes, evaluateIn } from './chunk-JB2YYNK6.js';
|
|
9
|
+
export { Scope, VoodooRuntimeError, VoodooSyntaxError, addCleanup, allowedGlobals, clearParseCache, destroy, evaluate, findScope, getScope, magic, magics, parse, refresh, rootScope, start, stringify, tokenize, walk } from './chunk-JB2YYNK6.js';
|
|
10
|
+
import { reactive, warn, handleError, queuePostFlush, nextTick } from './chunk-4T2UIPWX.js';
|
|
11
|
+
export { EffectScope, computed, effect, effectScope, flushSync, isReactive, markRaw, nextTick, reactive, ref, shallowRef, stop, toRaw, unref, watch, watchEffect } from './chunk-4T2UIPWX.js';
|
|
12
|
+
import { warnAlias } from './chunk-CYN6VLMD.js';
|
|
13
|
+
import { parseDuration, formatNumber, formatCurrency, formatDate, relativeTime, device, setFormatDefaults, uid, merge, escapeHtml, truncate, get, titleCase } from './chunk-ZIWLQZZL.js';
|
|
14
|
+
export { capitalize, chunk, clone, debounce, device, escapeHtml, formatCurrency, formatDate, formatFileSize, formatNumber, formatPercent, get, groupBy, isBrowser, matchesMedia, memoize, merge, once, parseDuration, random, relativeTime, sample, set, setFormatDefaults, sleep, slugify, sortBy, stripTags, throttle, titleCase, truncate, uid, unique, uuid } from './chunk-ZIWLQZZL.js';
|
|
15
|
+
import { ensureTokens, injectStyle } from './chunk-GIWKGFGY.js';
|
|
16
|
+
export { ensureTokens, injectStyle } from './chunk-GIWKGFGY.js';
|
|
17
|
+
import { defineDirective, PRIORITY, config } from './chunk-MMLUK37L.js';
|
|
18
|
+
export { PRIORITY, config, defineDirective } from './chunk-MMLUK37L.js';
|
|
19
|
+
import './chunk-YOZTHZS2.js';
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
|
-
* Voodoo.js v0.
|
|
22
|
+
* Voodoo.js v0.7.0
|
|
23
23
|
* JavaScript feels like magic.
|
|
24
24
|
* (c) 2026 Voodoo.js contributors. MIT License.
|
|
25
25
|
*/
|
|
@@ -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;
|
|
@@ -6500,8 +6501,8 @@ function enableXrayShortcut() {
|
|
|
6500
6501
|
if (shortcutInstalled || typeof document === "undefined") return;
|
|
6501
6502
|
shortcutInstalled = true;
|
|
6502
6503
|
document.addEventListener("keydown", (event) => {
|
|
6503
|
-
if (!event.
|
|
6504
|
-
if (event.key !== "
|
|
6504
|
+
if (!event.altKey || !event.shiftKey || event.ctrlKey || event.metaKey) return;
|
|
6505
|
+
if (event.code !== "KeyV" && event.key !== "V" && event.key !== "v") return;
|
|
6505
6506
|
event.preventDefault();
|
|
6506
6507
|
xray();
|
|
6507
6508
|
});
|
|
@@ -6693,9 +6694,9 @@ function build() {
|
|
|
6693
6694
|
const button = document.createElement("button");
|
|
6694
6695
|
button.type = "button";
|
|
6695
6696
|
button.className = "v-devtools-btn";
|
|
6696
|
-
button.setAttribute("aria-label", "Open Voodoo devtools (
|
|
6697
|
+
button.setAttribute("aria-label", "Open Voodoo devtools (Alt+Shift+V)");
|
|
6697
6698
|
button.setAttribute("aria-pressed", "false");
|
|
6698
|
-
button.title = "Voodoo devtools \u2014 click to inspect, drag to move (
|
|
6699
|
+
button.title = "Voodoo devtools \u2014 click to inspect, drag to move (Alt+Shift+V)";
|
|
6699
6700
|
button.innerHTML = MARK;
|
|
6700
6701
|
const label = document.createElement("span");
|
|
6701
6702
|
label.className = "v-devtools-label";
|
package/dist/reactivity.cjs
CHANGED
package/dist/reactivity.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { EffectScope, ITERATE_KEY, ReactiveEffect, TriggerType, computed, effect, effectScope, enableTracking, flushSync, getActiveEffect, getActiveScope, handleError, hasChanged, isReactive, isRef, markRaw, nextTick, pauseTracking, queueJob, queuePostFlush, reactive, ref, resetTracking, setErrorHandler, shallowRef, stop, toRaw, track, trigger, unref, warn, watch, watchEffect } from './chunk-
|
|
2
|
-
import './chunk-
|
|
1
|
+
export { EffectScope, ITERATE_KEY, ReactiveEffect, TriggerType, computed, effect, effectScope, enableTracking, flushSync, getActiveEffect, getActiveScope, handleError, hasChanged, isReactive, isRef, markRaw, nextTick, pauseTracking, queueJob, queuePostFlush, reactive, ref, resetTracking, setErrorHandler, shallowRef, stop, toRaw, track, trigger, unref, warn, watch, watchEffect } from './chunk-4T2UIPWX.js';
|
|
2
|
+
import './chunk-YOZTHZS2.js';
|
|
3
3
|
//# sourceMappingURL=reactivity.js.map
|
|
4
4
|
//# sourceMappingURL=reactivity.js.map
|
package/dist/socket.cjs
CHANGED
package/dist/socket.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { socketSupported, createSocket, socket } from './chunk-
|
|
2
|
-
export { ENGINE, SIO, createSocket, decodeEngine, decodeSocketIo, encodeSocketIo, engineURL, resolveSocketURL, socket, socketSupported } from './chunk-
|
|
3
|
-
import { evaluateIn, readAttr } from './chunk-
|
|
4
|
-
import { reactive } from './chunk-
|
|
5
|
-
import { warnAlias } from './chunk-
|
|
6
|
-
import { parseDuration } from './chunk-
|
|
7
|
-
import { defineDirective, PRIORITY, config } from './chunk-
|
|
8
|
-
import './chunk-
|
|
1
|
+
import { socketSupported, createSocket, socket } from './chunk-QO3I7VLJ.js';
|
|
2
|
+
export { ENGINE, SIO, createSocket, decodeEngine, decodeSocketIo, encodeSocketIo, engineURL, resolveSocketURL, socket, socketSupported } from './chunk-QO3I7VLJ.js';
|
|
3
|
+
import { evaluateIn, readAttr } from './chunk-JB2YYNK6.js';
|
|
4
|
+
import { reactive } from './chunk-4T2UIPWX.js';
|
|
5
|
+
import { warnAlias } from './chunk-CYN6VLMD.js';
|
|
6
|
+
import { parseDuration } from './chunk-ZIWLQZZL.js';
|
|
7
|
+
import { defineDirective, PRIORITY, config } from './chunk-MMLUK37L.js';
|
|
8
|
+
import './chunk-YOZTHZS2.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* Voodoo.js v0.
|
|
11
|
+
* Voodoo.js v0.7.0
|
|
12
12
|
* JavaScript feels like magic.
|
|
13
13
|
* (c) 2026 Voodoo.js contributors. MIT License.
|
|
14
14
|
*/
|
package/dist/utils.cjs
CHANGED
package/dist/utils.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { capitalize, chunk, clone, debounce, device, escapeHtml, formatCurrency, formatDate, formatFileSize, formatNumber, formatPercent, get, groupBy, isBrowser, matchesMedia, memoize, merge, once, parseDuration, random, relativeTime, sample, set, setFormatDefaults, sleep, slugify, sortBy, stripTags, throttle, titleCase, truncate, uid, unique, uuid } from './chunk-
|
|
2
|
-
import './chunk-
|
|
1
|
+
export { capitalize, chunk, clone, debounce, device, escapeHtml, formatCurrency, formatDate, formatFileSize, formatNumber, formatPercent, get, groupBy, isBrowser, matchesMedia, memoize, merge, once, parseDuration, random, relativeTime, sample, set, setFormatDefaults, sleep, slugify, sortBy, stripTags, throttle, titleCase, truncate, uid, unique, uuid } from './chunk-ZIWLQZZL.js';
|
|
2
|
+
import './chunk-YOZTHZS2.js';
|
|
3
3
|
//# sourceMappingURL=utils.js.map
|
|
4
4
|
//# sourceMappingURL=utils.js.map
|
package/dist/voodoo.core.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Voodoo.js v0.
|
|
2
|
+
* Voodoo.js v0.7.0
|
|
3
3
|
* JavaScript feels like magic.
|
|
4
4
|
* (c) 2026 Voodoo.js contributors. MIT License.
|
|
5
5
|
*/
|
|
@@ -6566,7 +6566,7 @@ Suggestion: attribute expressions accept a single value. If the logic spans more
|
|
|
6566
6566
|
Object.defineProperties(rootScope.data, Object.getOwnPropertyDescriptors(values));
|
|
6567
6567
|
return rootScope.data;
|
|
6568
6568
|
}
|
|
6569
|
-
var version2 = "0.
|
|
6569
|
+
var version2 = "0.7.0";
|
|
6570
6570
|
var core = {
|
|
6571
6571
|
// Utilities first: Voodoo's own names can override.
|
|
6572
6572
|
...utils_exports,
|
package/dist/voodoo.core.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Voodoo.js v0.
|
|
2
|
+
* Voodoo.js v0.7.0
|
|
3
3
|
* JavaScript feels like magic.
|
|
4
4
|
* (c) 2026 Voodoo.js contributors. MIT License.
|
|
5
5
|
*/
|
|
@@ -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 oc(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 ic({el:e,cleanup:t,run:n}){var l,f;let r=E(e,"trigger")||oc(e),[o,...i]=r.split(/[.\s]+/),s=q((l=E(e,"poll"))!=null?l: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(d=>{for(let m of d)m.isIntersecting&&(n(),i.includes("repeat")||p.unobserve(e))},{rootMargin:"80px"});p.observe(e),t(()=>p.disconnect());return}let a=i.includes("once"),c=q((f=E(e,"debounce"))!=null?f:void 0,0),u=p=>{(e.tagName==="FORM"||e.href)&&p.preventDefault(),n(p)};c>0&&(u=Fe(u,c)),e.addEventListener(o,u,{once:a}),t(()=>e.removeEventListener(o,u))}var sc=[["get","GET"],["post","POST"],["put","PUT"],["patch","PATCH"],["delete","DELETE"]];for(let[e,t]of sc)A(e,({el:n,scope:r,expression:o,cleanup:i})=>{ic({el:n,scope:r,cleanup:i,run:a=>{let c=It(o,r);if(!c)return;let u=E(n,"body")||E(n,"data-body"),l=u?N(u,r.child({$event:a}),"v-body"):void 0,f=E(n,"params"),p=f?N(f,r,"v-params"):void 0;Dt({el:n,scope:r,method:t,url:c,body:l,params:p,event:a})}})});function It(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=N(n,t,"URL");return typeof o=="string"?o:n}A("load",({el:e,scope:t,expression:n})=>{let r=It(n,t);r&&Dt({el:e,scope:t,method:"GET",url:r})});A("load-visible",({el:e,scope:t,cleanup:n,expression:r})=>{let o=It(r,t);if(!o)return;if(typeof IntersectionObserver=="undefined"){Dt({el:e,scope:t,method:"GET",url:o});return}let i=new IntersectionObserver(s=>{for(let a of s)a.isIntersecting&&(i.unobserve(e),Dt({el:e,scope:t,method:"GET",url:o}))},{rootMargin:"120px"});i.observe(e),n(()=>i.disconnect())});A("search",({el:e,scope:t,expression:n,cleanup:r})=>{var f,p;let o=e,i=It(n,t),s=E(e,"param")||o.getAttribute("name")||"q",a=q((f=E(e,"debounce"))!=null?f:void 0,300),c=Number((p=E(e,"min-length"))!=null?p:0),u=Fe(()=>{let d=o.value.trim();d.length<c||Dt({el:e,scope:t,method:"GET",url:i,params:{[s]:d}})},a),l=()=>u();o.addEventListener("input",l),r(()=>{o.removeEventListener("input",l),u.cancel()})});A("resource",({el:e,scope:t,expression:n,cleanup:r})=>{var c,u,l,f;let o=n.indexOf(":"),i=E(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=vn(()=>It(s,t),{method:(E(e,"method")||"GET").toUpperCase(),params:()=>E(e,"params")?N(E(e,"params"),t,"v-params"):void 0,cache:q((c=E(e,"cache"))!=null?c:void 0,0)||void 0,retry:Number((u=E(e,"retry"))!=null?u:0),timeout:q((l=E(e,"timeout"))!=null?l:void 0,oe.defaults.timeout),jsonPath:E(e,"json-path"),poll:q((f=E(e,"poll"))!=null?f:void 0,0),manual:Lr(e,"manual"),onSuccess:p=>ht(e,"voodoo:success",{data:p}),onError:(p,d)=>ht(e,"voodoo:error",{error:p,message:d})});t.set(i,a),r(()=>a.stop())},{priority:B.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"])A(e,()=>{},{priority:B.TRANSITION});Oo(Bo);Fo(St);zo(Ni);fi();var jt=new Map;function Pi(e,t){let n=jt.get(e);return n||jt.set(e,n=new Set),n.add(t),()=>n.delete(t)}function ac(e,t){let n=Pi(e,r=>{n(),t(r)});return n}function cc(e,t){let n=jt.get(e);if(n)for(let r of[...n])try{r(t)}catch(o){O(o,`event "${e}"`)}}function uc(e,t){var n;if(!t){jt.delete(e);return}(n=jt.get(e))==null||n.delete(t)}function Ni(e,t){var r,o;let n=typeof t=="function"?{mounted:t,updated:t}:t;A(e,i=>{var l,f;let s,a=!1,c=p=>{var d,m;return{el:i.el,value:p,oldValue:s,arg:i.arg,modifiers:i.modifiers,expression:i.expression,scope:i.scope,instance:(m=(d=i.scope.owner)==null?void 0:d.component)!=null?m:null}},u=n.raw?i.expression:i.evaluate();(l=n.created)==null||l.call(n,i.el,c(u)),(f=n.beforeMount)==null||f.call(n,i.el,c(u)),i.effect(()=>{var m,g;let p=n.raw?i.expression:i.evaluate();if(!a){a=!0,s=p,(m=n.mounted)==null||m.call(n,i.el,c(p));return}if(p===s)return;let d=c(p);(g=n.updated)==null||g.call(n,i.el,d),s=p}),i.cleanup(()=>{var d,m;let p=c(s);(d=n.beforeUnmount)==null||d.call(n,i.el,p),(m=n.unmounted)==null||m.call(n,i.el,p)})},{priority:(r=n.priority)!=null?r:B.DEFAULT,terminal:(o=n.terminal)!=null?o:!1})}function lc(e){return Object.defineProperties(de.data,Object.getOwnPropertyDescriptors(e)),de.data}var dc="0.4.6",xn={...vr,version:dc,config:T,reactive:F,ref:Tt,shallowRef:Qn,computed:xt,effect:te,watch:ue,watchEffect:Gn,nextTick:Oe,toRaw:K,markRaw:Wn,unref:Kn,stop:Un,effectScope:qn,EffectScope:ne,flushSync:In,data:lc,store:Yo,stores:un,removeStore:Xo,storeNames:Jo,scope:de,component:rt,components:z,directive:Ni,directives:ge,magic:P,magics:Et,createApp:Qo,start:Ho,whenReady:sn,whenElement:an,walk:j,refresh:Io,destroy:$,stopObserving:Do,getScope:et,findScope:we,addCleanup:fe,parseAttribute:Je,parse:le,tokenize:Xt,evaluate:x,evaluateIn:N,stringify:Se,clearParseCache:ao,globals:G,http:oe,request:Lt,HttpError:X,resource:vn,toast:Ce,storage:ie,session:pn,cookie:mn,cache:gn,url:hn,theme:ft,clipboard:kr,screen:se,network:_e,enter:Nt,leave:Ot,fadeIn:bn,fadeOut:wn,slideUp:Ht,slideDown:$t,viewTransition:yi,injectStyle:Te,ensureTokens:Ue,on:Pi,once:ac,off:uc,emit:cc,use(e,t){Jt(xn,e,t)},onError(e){jn(e)},instances:rn,Scope:De,PRIORITY:B,VoodooSyntaxError:D,VoodooRuntimeError:W};Go(xn);Z();var fc=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 Ui(e){return e.startsWith("--")?e:e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}function ae(e){return e.length<2?e:Array.from(new Set(e))}function Ve(e){return String(e!=null?e:"").split(/\s+/).filter(Boolean)}function Pr(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 qi(e){return e.length>2&&e.charCodeAt(0)===60&&e.endsWith(">")}function pc(e){if(e==null)return typeof document=="undefined"?[]:[document];if(e instanceof pe)return e.toArray();if(typeof e=="string")return We(e);if(typeof e=="function")return typeof document=="undefined"?[]:[document];let t=We(e);return t.length?t:typeof document=="undefined"?[]:[document]}function We(e,t){if(e==null)return[];if(typeof e=="string"){let o=e.trim();if(!o)return[];if(qi(o))return Pr(o);let i=[];for(let s of pc(t))try{for(let a of Array.from(s.querySelectorAll(o)))i.push(a)}catch(a){}return ae(i)}if(e instanceof pe)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 ae(o)}return[]}function Oi(e){if(e==null)return[];if(typeof e=="string"){let r=e;return qi(r.trim())?Pr(r):[document.createTextNode(r)]}if(e instanceof pe)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 En(e,t,n){let r=Ui(t);if(n===null||n===""){e.style.removeProperty(r);return}let o=typeof n=="number"&&!fc.has(r)&&!r.startsWith("--")?`${n}px`:String(n);e.style.setProperty(r,o)}function mc(e,t){for(let[n,r]of Object.entries(t))En(e,n,r)}function $i(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 Hi(e){return e.replace(/-([a-z0-9])/g,(t,n)=>n.toUpperCase())}var _i=new WeakMap;function Di(e){return e.hasAttribute("hidden")||e.style.display==="none"?!0:e.isConnected?getComputedStyle(e).display==="none":!1}function Ii(e){e.removeAttribute("hidden");let t=_i.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 ji(e){let t=e.style.display;t&&t!=="none"&&_i.set(e,t),e.style.display="none"}var Fi="input,select,textarea";function Bi(e){return e.matches(Fi)?[e]:Array.from(e.querySelectorAll(Fi))}function hc(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 kn=new WeakMap;function gc(e){let t=kn.get(e);return t||kn.set(e,t=[]),t}var pe=class e{constructor(t=[]){L(this,"length");L(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(ae(n))}closest(t){let n=[];for(let r of this.elements){let o=r.closest(t);o&&n.push(o)}return new e(ae(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(ae(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(ae(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(ae(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(ae(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(ae(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(ae(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(ae([...this.elements,...We(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))$(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))$(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 c of Array.from(s.options))c.selected=a.includes(c.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[c,u]of Object.entries(n))u===null||u===!1?a.removeAttribute(c):a.setAttribute(c,u===!0?"":String(u));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=Ve(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,c]of Object.entries(i.dataset))s[a]=$i(c);return s}if(n!==null&&typeof n=="object"){for(let i of this.elements)for(let[s,a]of Object.entries(n))i.dataset[Hi(s)]=typeof a=="string"?a:JSON.stringify(a!=null?a:null);return this}let r=Hi(String(n));if(t.length<2){let i=this.elements[0];return i?$i(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)mc(o,n);return this}let r=String(n);if(t.length<2){let o=this.elements[0];if(!o)return"";let i=Ui(r);return((o.isConnected?getComputedStyle(o).getPropertyValue(i):"")||o.style.getPropertyValue(i)).trim()}for(let o of this.elements)En(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)En(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)En(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=Ve(t);if(n.length)for(let r of this.elements)r.classList.add(...n);return this}removeClass(t){let n=Ve(t);if(n.length)for(let r of this.elements)r.classList.remove(...n);return this}toggleClass(t,n){let r=Ve(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=Ve(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 Oi(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=We(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=We(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 Oi(t))r.insertBefore(o,n);$(n),n.remove()}}return this}wrap(t){var n;for(let r of this.elements){let o=We(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);$(n),n.remove()}}return this}remove(){for(let t of this.elements)$(t),t.remove();return this}empty(){for(let t of this.elements){for(let n of Array.from(t.childNodes))$(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 c of this.elements)for(let u of Ve(t)){let l=f=>{if(!o){i.call(c,f);return}let p=f.target,d=p==null?void 0:p.closest(o);!d||!c.contains(d)||i.call(d,f)};c.addEventListener(u,l,s),gc(c).push({type:u,selector:o,handler:i,wrapped:l,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?Ve(t):null;for(let a of this.elements){let c=kn.get(a);if(!c)continue;let u=[];for(let l of c){let f=!s||s.includes(l.type),p=o===null||l.selector===o,d=i===null||l.handler===i;f&&p&&d?a.removeEventListener(l.type,l.wrapped,l.options):u.push(l)}kn.set(a,u)}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(c){return o?s.off(t,o,a):s.off(t,a),i.call(this,c)};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)Ii(t);return this}hide(){for(let t of this.elements)ji(t);return this}toggle(t){for(let n of this.elements)(t===void 0?Di(n):t)?Ii(n):ji(n);return this}fadeIn(t=220){for(let n of this.elements)n.removeAttribute("hidden"),bn(n,t);return this}fadeOut(t=220){for(let n of this.elements)wn(n,t);return this}slideUp(t=240){for(let n of this.elements)Ht(n,t);return this}slideDown(t=240){for(let n of this.elements)n.removeAttribute("hidden"),$t(n,t);return this}slideToggle(t=240){for(let n of this.elements)Di(n)?(n.removeAttribute("hidden"),$t(n,t)):Ht(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 Bi(t)){if(!hc(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 Bi(t)){let c=a;if(!c.name||c.disabled)continue;let u=(c.getAttribute("type")||"").toLowerCase();if(u==="submit"||u==="reset"||u==="button")continue;let l=c.name.endsWith("[]"),f=l?c.name.slice(0,-2):c.name,p=a,d;if(u==="checkbox"){if(!c.checked&&!l){n[f]=(r=n[f])!=null?r:!1;continue}if(!c.checked)continue;d=c.value==="on"?!0:c.value}else if(u==="radio"){if(!c.checked)continue;d=c.value}else u==="file"?d=c.multiple?Array.from((o=c.files)!=null?o:[]):(s=(i=c.files)==null?void 0:i[0])!=null?s:null:c.tagName==="SELECT"&&p.multiple?d=Array.from(p.selectedOptions).map(m=>m.value):u==="number"||u==="range"?d=c.value===""?null:Number(c.value):d=c.value;if(l){let m=n[f];Array.isArray(m)?m.push(d):n[f]=[d];continue}if(Object.prototype.hasOwnProperty.call(n,f)){let m=n[f];Array.isArray(m)?m.push(d):m===void 0||m===!1?n[f]=d:n[f]=[m,d];continue}n[f]=d}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&&$(n),j(n,we(n.parentNode));return this}destroy(){for(let t of this.elements)$(t);return this}};function Nr(e,t){if(typeof e=="function"){Or(e);let n=typeof document!="undefined"?document.documentElement:null;return new pe(n?[n]:[])}return new pe(We(e,t))}function Or(e){return typeof document=="undefined"?Promise.resolve():new Promise(t=>{Wo(()=>{try{e==null||e()}catch(n){O(n,"V.ready")}t()})})}function Vi(e){return new pe(Pr(e))}var Wi=((e,t)=>Nr(e,t));Object.assign(Wi,xn,{query:Nr,ready:Or,fromHtml:Vi,Collection:pe,magic:P});var $r=Wi;re();ut();re();var yc=/^#([0-9a-f])([0-9a-f])([0-9a-f])[0-9a-f]?$/i,vc=/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})(?:[0-9a-f]{2})?$/i,bc=/^rgba?\(([^)]+)\)$/i,wc=/^hsla?\(([^)]+)\)$/i;function zi(e){return e.split(/[\s,/]+/).map(t=>parseFloat(t)).filter(t=>!Number.isNaN(t))}function Tc(e,t,n){let r=(e%360+360)%360,o=J(t/100,0,1),i=J(n/100,0,1),s=(1-Math.abs(2*i-1))*o,a=s*(1-Math.abs(r/60%2-1)),c=i-s/2,u=Math.floor(r/60)%6,l=[[s,a,0],[a,s,0],[0,s,a],[0,a,s],[a,0,s],[s,0,a]],[f,p,d]=l[u];return{r:Math.round((f+c)*255),g:Math.round((p+c)*255),b:Math.round((d+c)*255)}}function me(e){let t=String(e!=null?e:"").trim();if(!t)return null;let n=yc.exec(t);if(n)return{r:parseInt(n[1]+n[1],16),g:parseInt(n[2]+n[2],16),b:parseInt(n[3]+n[3],16)};let r=vc.exec(t);if(r)return{r:parseInt(r[1],16),g:parseInt(r[2],16),b:parseInt(r[3],16)};let o=bc.exec(t);if(o){let[s,a,c]=zi(o[1]);return s===void 0||a===void 0||c===void 0?null:{r:J(s,0,255),g:J(a,0,255),b:J(c,0,255)}}let i=wc.exec(t);if(i){let[s,a,c]=zi(i[1]);return s===void 0||a===void 0||c===void 0?null:Tc(s,a,c)}return null}function J(e,t,n){return e<t?t:e>n?n:e}function vt(e){let t=e/255;return t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Hr(e){return e<=.0031308?e*12.92:1.055*Math.pow(e,.4166666666666667)-.055}function xc(e){let t=vt(e.r),n=vt(e.g),r=vt(e.b),o=.4122214708*t+.5363325363*n+.0514459929*r,i=.2119034982*t+.6806995451*n+.1073969566*r,s=.0883024619*t+.2817188376*n+.6299787005*r,a=Math.cbrt(o),c=Math.cbrt(i),u=Math.cbrt(s);return{l:.2104542553*a+.793617785*c-.0040720468*u,a:1.9779984951*a-2.428592205*c+.4505937099*u,b:.0259040371*a+.7827717662*c-.808675766*u}}function Ec(e){let t=e.l+.3963377774*e.a+.2158037573*e.b,n=e.l-.1055613458*e.a-.0638541728*e.b,r=e.l-.0894841775*e.a-1.291485548*e.b,o=t*t*t,i=n*n*n,s=r*r*r;return{r:Hr(4.0767416621*o-3.3077115913*i+.2309699292*s),g:Hr(-1.2684380046*o+2.6097574011*i-.3413193965*s),b:Hr(-.0041960863*o-.7034186147*i+1.707614701*s)}}function An(e){let t=xc(e),n=Math.sqrt(t.a*t.a+t.b*t.b),r=Math.atan2(t.b,t.a)*180/Math.PI;return r<0&&(r+=360),{l:t.l,c:n,h:n<1e-5?0:r}}function Qi(e){let t=e.h*Math.PI/180;return Ec({l:e.l,a:Math.cos(t)*e.c,b:Math.sin(t)*e.c})}function yt(e){let t=Math.max(0,e.c);for(let r=0;r<32;r++){let o=Qi({l:J(e.l,0,1),c:t,h:e.h});if(o.r>=-.001&&o.r<=1.001&&o.g>=-.001&&o.g<=1.001&&o.b>=-.001&&o.b<=1.001)return{r:Math.round(J(o.r,0,1)*255),g:Math.round(J(o.g,0,1)*255),b:Math.round(J(o.b,0,1)*255)};t*=.92}let n=Qi({l:J(e.l,0,1),c:0,h:e.h});return{r:Math.round(J(n.r,0,1)*255),g:Math.round(J(n.g,0,1)*255),b:Math.round(J(n.b,0,1)*255)}}function Dr(e){return J(Math.round(e),0,255).toString(16).padStart(2,"0")}function ze(e){return`#${Dr(e.r)}${Dr(e.g)}${Dr(e.b)}`}function gt(e,t){return`rgba(${Math.round(e.r)}, ${Math.round(e.g)}, ${Math.round(e.b)}, ${Number(t.toFixed(3))})`}function Ji(e){return ze(yt(e))}function jr(e){return .2126*vt(e.r)+.7152*vt(e.g)+.0722*vt(e.b)}function Fr(e,t){let n=typeof e=="string"?me(e):e,r=typeof t=="string"?me(t):t;if(!n||!r)return 1;let o=jr(n),i=jr(r),s=Math.max(o,i),a=Math.min(o,i);return(s+.05)/(a+.05)}var Zi={r:255,g:255,b:255},Rn={r:0,g:0,b:0};function Ft(e){let t=typeof e=="string"?me(e):e;return t?Fr(t,Zi)>=Fr(t,Rn)?"#ffffff":"#000000":"#ffffff"}var Br=[50,100,200,300,400,500,600,700,800,900],es=[.973,.941,.889,.819,.732,.638,.558,.478,.399,.327],kc=[.14,.26,.46,.68,.88,1,.97,.89,.78,.65],ts=[.244,.286,.343,.408,.484,.588,.668,.748,.836,.928],Sc=[.3,.42,.6,.78,.92,1,.92,.78,.57,.33];function ns(e,t=!1){var a;let n=typeof e=="string"?(a=me(e))!=null?a:Rn:e,r=An(n),o=t?ts:es,i=t?Sc:kc,s={};return Br.forEach((c,u)=>{s[String(c)]=Ji({l:o[u],c:r.c*i[u],h:r.h})}),s}var Cn={violeta:{primary:"#6D3BF5",accent:"#FF3D8B",success:"#16A34A",warning:"#D97706",danger:"#E11D48",info:"#7C6BFF"},oceano:{primary:"#0E7BC4",accent:"#0FB5C9",success:"#0F9D6E",warning:"#D08700",danger:"#DC2F3E",info:"#3B82F6"},floresta:{primary:"#1F8A4C",accent:"#7FA80E",success:"#18A05A",warning:"#C97A0A",danger:"#C93A2E",info:"#2C8FA8"},poente:{primary:"#E4632A",accent:"#D62F63",success:"#3E9B52",warning:"#D99000",danger:"#D32F2F",info:"#B45FC0"},grafite:{primary:"#4C5A70",accent:"#2E7FD1",success:"#2F8F60",warning:"#B57A12",danger:"#C2453F",info:"#5B7A99"}},rs=["primary","accent","success","warning","danger","info"],Ur="voodoo:palette",Ki="voodoo-palette",Ac="system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",Rc="ui-monospace, SFMono-Regular, Menlo, Consolas, 'Liberation Mono', monospace";function Gi(e,t){let n=(e!=null?e:"").trim();return n?n.includes(",")?n:`${/^['"]/.test(n)?n:`'${n}'`}, ${t}`:t}var Cc=/^([\d.]+)(px|rem|em)$/;function Mc(e){let t=(e||"12px").trim(),n=Cc.exec(t);if(!n)return{"--v-radius":t,"--v-radius-sm":`calc(${t} * 0.6)`,"--v-radius-lg":`calc(${t} * 1.5)`,"--v-radius-xl":`calc(${t} * 2)`,"--v-radius-full":"999px"};let r=parseFloat(n[1]),o=n[2],i=s=>`${Math.round(s*1e3)/1e3}${o}`;return{"--v-radius":i(r),"--v-radius-sm":i(Math.max(r*.55,0)),"--v-radius-lg":i(r*1.5),"--v-radius-xl":i(r*2),"--v-radius-full":"999px"}}function Yi(e,t){var u,l,f,p;let n={},r={},o={};for(let d of rs){let m=(u=me(e[d]))!=null?u:Rn,g=An(m),h=ns(m,t);r[d]=h;for(let M of Br)n[`--v-${d}-${M}`]=h[String(M)];let y=t?{l:Math.max(g.l,.62),c:g.c*.95,h:g.h}:g,S=t?{l:Math.min(y.l+.07,.94),c:y.c*.95,h:y.h}:{l:Math.max(y.l-.055,.12),c:y.c,h:y.h},_=t?{l:Math.min(y.l+.13,.97),c:y.c*.88,h:y.h}:{l:Math.max(y.l-.105,.1),c:y.c,h:y.h},k=yt(y),v=yt(S),I=yt(_);n[`--v-${d}`]=ze(t?k:m),n[`--v-${d}-hover`]=ze(v),n[`--v-${d}-active`]=ze(I),n[`--v-${d}-contrast`]=Ft(t?k:m),n[`--v-${d}-contrast-hover`]=Ft(v),n[`--v-${d}-contrast-active`]=Ft(I);let H=h[50],C=h[100],V=t?h[800]:h[700];n[`--v-${d}-soft`]=H,n[`--v-${d}-soft-hover`]=C,n[`--v-${d}-soft-text`]=V,n[`--v-${d}-ring`]=gt(k,t?.45:.32),n[`--v-${d}-border`]=t?h[300]:h[200],o[d]=n[`--v-${d}-contrast`]}let i=(f=me((l=e.neutral)!=null?l:e.primary))!=null?f:Rn,s=An(i).h,a=(d,m)=>Ji({l:d,c:m,h:s}),c={};if(Br.forEach((d,m)=>{let g=t?ts:es;c[String(d)]=a(g[m],.012),n[`--v-neutral-${d}`]=c[String(d)]}),r.neutral=c,t)n["--v-surface"]=a(.248,.021),n["--v-surface-2"]=a(.196,.021),n["--v-surface-3"]=a(.305,.024),n["--v-surface-inset"]=a(.17,.02),n["--v-text"]=a(.965,.008),n["--v-text-muted"]=a(.748,.017),n["--v-text-soft"]=a(.63,.017),n["--v-border"]=a(.355,.023),n["--v-border-strong"]=a(.46,.026),n["--v-overlay"]="rgba(0, 0, 0, 0.62)",n["--v-shadow-sm"]="0 1px 2px rgba(0, 0, 0, 0.5)",n["--v-shadow"]="0 10px 30px rgba(0, 0, 0, 0.5)",n["--v-shadow-lg"]="0 24px 60px rgba(0, 0, 0, 0.62)";else{let d=yt({l:.24,c:.028,h:s});n["--v-surface"]=a(1,0),n["--v-surface-2"]=a(.981,.006),n["--v-surface-3"]=a(.955,.009),n["--v-surface-inset"]=a(.968,.008),n["--v-text"]=ze(d),n["--v-text-muted"]=a(.53,.023),n["--v-text-soft"]=a(.655,.018),n["--v-border"]=a(.906,.012),n["--v-border-strong"]=a(.828,.016),n["--v-overlay"]=gt(d,.45),n["--v-shadow-sm"]=`0 1px 2px ${gt(d,.08)}`,n["--v-shadow"]=`0 10px 30px ${gt(d,.14)}`,n["--v-shadow-lg"]=`0 24px 60px ${gt(d,.2)}`}return n["--v-focus-ring"]=n["--v-primary-ring"],o.surface=Ft((p=me(n["--v-surface"]))!=null?p:Zi),{vars:n,scales:r,contrast:o}}function Ir(e,t){let n=Object.entries(t).map(([r,o])=>` ${r}: ${o};`).join(`
|
|
138
|
+
`)}))}function oc(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 ic({el:e,cleanup:t,run:n}){var l,f;let r=E(e,"trigger")||oc(e),[o,...i]=r.split(/[.\s]+/),s=q((l=E(e,"poll"))!=null?l: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(d=>{for(let m of d)m.isIntersecting&&(n(),i.includes("repeat")||p.unobserve(e))},{rootMargin:"80px"});p.observe(e),t(()=>p.disconnect());return}let a=i.includes("once"),c=q((f=E(e,"debounce"))!=null?f:void 0,0),u=p=>{(e.tagName==="FORM"||e.href)&&p.preventDefault(),n(p)};c>0&&(u=Fe(u,c)),e.addEventListener(o,u,{once:a}),t(()=>e.removeEventListener(o,u))}var sc=[["get","GET"],["post","POST"],["put","PUT"],["patch","PATCH"],["delete","DELETE"]];for(let[e,t]of sc)A(e,({el:n,scope:r,expression:o,cleanup:i})=>{ic({el:n,scope:r,cleanup:i,run:a=>{let c=It(o,r);if(!c)return;let u=E(n,"body")||E(n,"data-body"),l=u?N(u,r.child({$event:a}),"v-body"):void 0,f=E(n,"params"),p=f?N(f,r,"v-params"):void 0;Dt({el:n,scope:r,method:t,url:c,body:l,params:p,event:a})}})});function It(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=N(n,t,"URL");return typeof o=="string"?o:n}A("load",({el:e,scope:t,expression:n})=>{let r=It(n,t);r&&Dt({el:e,scope:t,method:"GET",url:r})});A("load-visible",({el:e,scope:t,cleanup:n,expression:r})=>{let o=It(r,t);if(!o)return;if(typeof IntersectionObserver=="undefined"){Dt({el:e,scope:t,method:"GET",url:o});return}let i=new IntersectionObserver(s=>{for(let a of s)a.isIntersecting&&(i.unobserve(e),Dt({el:e,scope:t,method:"GET",url:o}))},{rootMargin:"120px"});i.observe(e),n(()=>i.disconnect())});A("search",({el:e,scope:t,expression:n,cleanup:r})=>{var f,p;let o=e,i=It(n,t),s=E(e,"param")||o.getAttribute("name")||"q",a=q((f=E(e,"debounce"))!=null?f:void 0,300),c=Number((p=E(e,"min-length"))!=null?p:0),u=Fe(()=>{let d=o.value.trim();d.length<c||Dt({el:e,scope:t,method:"GET",url:i,params:{[s]:d}})},a),l=()=>u();o.addEventListener("input",l),r(()=>{o.removeEventListener("input",l),u.cancel()})});A("resource",({el:e,scope:t,expression:n,cleanup:r})=>{var c,u,l,f;let o=n.indexOf(":"),i=E(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=vn(()=>It(s,t),{method:(E(e,"method")||"GET").toUpperCase(),params:()=>E(e,"params")?N(E(e,"params"),t,"v-params"):void 0,cache:q((c=E(e,"cache"))!=null?c:void 0,0)||void 0,retry:Number((u=E(e,"retry"))!=null?u:0),timeout:q((l=E(e,"timeout"))!=null?l:void 0,oe.defaults.timeout),jsonPath:E(e,"json-path"),poll:q((f=E(e,"poll"))!=null?f:void 0,0),manual:Lr(e,"manual"),onSuccess:p=>ht(e,"voodoo:success",{data:p}),onError:(p,d)=>ht(e,"voodoo:error",{error:p,message:d})});t.set(i,a),r(()=>a.stop())},{priority:B.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"])A(e,()=>{},{priority:B.TRANSITION});Oo(Bo);Fo(St);zo(Ni);fi();var jt=new Map;function Pi(e,t){let n=jt.get(e);return n||jt.set(e,n=new Set),n.add(t),()=>n.delete(t)}function ac(e,t){let n=Pi(e,r=>{n(),t(r)});return n}function cc(e,t){let n=jt.get(e);if(n)for(let r of[...n])try{r(t)}catch(o){O(o,`event "${e}"`)}}function uc(e,t){var n;if(!t){jt.delete(e);return}(n=jt.get(e))==null||n.delete(t)}function Ni(e,t){var r,o;let n=typeof t=="function"?{mounted:t,updated:t}:t;A(e,i=>{var l,f;let s,a=!1,c=p=>{var d,m;return{el:i.el,value:p,oldValue:s,arg:i.arg,modifiers:i.modifiers,expression:i.expression,scope:i.scope,instance:(m=(d=i.scope.owner)==null?void 0:d.component)!=null?m:null}},u=n.raw?i.expression:i.evaluate();(l=n.created)==null||l.call(n,i.el,c(u)),(f=n.beforeMount)==null||f.call(n,i.el,c(u)),i.effect(()=>{var m,g;let p=n.raw?i.expression:i.evaluate();if(!a){a=!0,s=p,(m=n.mounted)==null||m.call(n,i.el,c(p));return}if(p===s)return;let d=c(p);(g=n.updated)==null||g.call(n,i.el,d),s=p}),i.cleanup(()=>{var d,m;let p=c(s);(d=n.beforeUnmount)==null||d.call(n,i.el,p),(m=n.unmounted)==null||m.call(n,i.el,p)})},{priority:(r=n.priority)!=null?r:B.DEFAULT,terminal:(o=n.terminal)!=null?o:!1})}function lc(e){return Object.defineProperties(de.data,Object.getOwnPropertyDescriptors(e)),de.data}var dc="0.7.0",xn={...vr,version:dc,config:T,reactive:F,ref:Tt,shallowRef:Qn,computed:xt,effect:te,watch:ue,watchEffect:Gn,nextTick:Oe,toRaw:K,markRaw:Wn,unref:Kn,stop:Un,effectScope:qn,EffectScope:ne,flushSync:In,data:lc,store:Yo,stores:un,removeStore:Xo,storeNames:Jo,scope:de,component:rt,components:z,directive:Ni,directives:ge,magic:P,magics:Et,createApp:Qo,start:Ho,whenReady:sn,whenElement:an,walk:j,refresh:Io,destroy:$,stopObserving:Do,getScope:et,findScope:we,addCleanup:fe,parseAttribute:Je,parse:le,tokenize:Xt,evaluate:x,evaluateIn:N,stringify:Se,clearParseCache:ao,globals:G,http:oe,request:Lt,HttpError:X,resource:vn,toast:Ce,storage:ie,session:pn,cookie:mn,cache:gn,url:hn,theme:ft,clipboard:kr,screen:se,network:_e,enter:Nt,leave:Ot,fadeIn:bn,fadeOut:wn,slideUp:Ht,slideDown:$t,viewTransition:yi,injectStyle:Te,ensureTokens:Ue,on:Pi,once:ac,off:uc,emit:cc,use(e,t){Jt(xn,e,t)},onError(e){jn(e)},instances:rn,Scope:De,PRIORITY:B,VoodooSyntaxError:D,VoodooRuntimeError:W};Go(xn);Z();var fc=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 Ui(e){return e.startsWith("--")?e:e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}function ae(e){return e.length<2?e:Array.from(new Set(e))}function Ve(e){return String(e!=null?e:"").split(/\s+/).filter(Boolean)}function Pr(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 qi(e){return e.length>2&&e.charCodeAt(0)===60&&e.endsWith(">")}function pc(e){if(e==null)return typeof document=="undefined"?[]:[document];if(e instanceof pe)return e.toArray();if(typeof e=="string")return We(e);if(typeof e=="function")return typeof document=="undefined"?[]:[document];let t=We(e);return t.length?t:typeof document=="undefined"?[]:[document]}function We(e,t){if(e==null)return[];if(typeof e=="string"){let o=e.trim();if(!o)return[];if(qi(o))return Pr(o);let i=[];for(let s of pc(t))try{for(let a of Array.from(s.querySelectorAll(o)))i.push(a)}catch(a){}return ae(i)}if(e instanceof pe)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 ae(o)}return[]}function Oi(e){if(e==null)return[];if(typeof e=="string"){let r=e;return qi(r.trim())?Pr(r):[document.createTextNode(r)]}if(e instanceof pe)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 En(e,t,n){let r=Ui(t);if(n===null||n===""){e.style.removeProperty(r);return}let o=typeof n=="number"&&!fc.has(r)&&!r.startsWith("--")?`${n}px`:String(n);e.style.setProperty(r,o)}function mc(e,t){for(let[n,r]of Object.entries(t))En(e,n,r)}function $i(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 Hi(e){return e.replace(/-([a-z0-9])/g,(t,n)=>n.toUpperCase())}var _i=new WeakMap;function Di(e){return e.hasAttribute("hidden")||e.style.display==="none"?!0:e.isConnected?getComputedStyle(e).display==="none":!1}function Ii(e){e.removeAttribute("hidden");let t=_i.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 ji(e){let t=e.style.display;t&&t!=="none"&&_i.set(e,t),e.style.display="none"}var Fi="input,select,textarea";function Bi(e){return e.matches(Fi)?[e]:Array.from(e.querySelectorAll(Fi))}function hc(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 kn=new WeakMap;function gc(e){let t=kn.get(e);return t||kn.set(e,t=[]),t}var pe=class e{constructor(t=[]){L(this,"length");L(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(ae(n))}closest(t){let n=[];for(let r of this.elements){let o=r.closest(t);o&&n.push(o)}return new e(ae(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(ae(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(ae(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(ae(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(ae(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(ae(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(ae(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(ae([...this.elements,...We(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))$(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))$(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 c of Array.from(s.options))c.selected=a.includes(c.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[c,u]of Object.entries(n))u===null||u===!1?a.removeAttribute(c):a.setAttribute(c,u===!0?"":String(u));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=Ve(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,c]of Object.entries(i.dataset))s[a]=$i(c);return s}if(n!==null&&typeof n=="object"){for(let i of this.elements)for(let[s,a]of Object.entries(n))i.dataset[Hi(s)]=typeof a=="string"?a:JSON.stringify(a!=null?a:null);return this}let r=Hi(String(n));if(t.length<2){let i=this.elements[0];return i?$i(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)mc(o,n);return this}let r=String(n);if(t.length<2){let o=this.elements[0];if(!o)return"";let i=Ui(r);return((o.isConnected?getComputedStyle(o).getPropertyValue(i):"")||o.style.getPropertyValue(i)).trim()}for(let o of this.elements)En(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)En(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)En(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=Ve(t);if(n.length)for(let r of this.elements)r.classList.add(...n);return this}removeClass(t){let n=Ve(t);if(n.length)for(let r of this.elements)r.classList.remove(...n);return this}toggleClass(t,n){let r=Ve(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=Ve(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 Oi(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=We(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=We(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 Oi(t))r.insertBefore(o,n);$(n),n.remove()}}return this}wrap(t){var n;for(let r of this.elements){let o=We(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);$(n),n.remove()}}return this}remove(){for(let t of this.elements)$(t),t.remove();return this}empty(){for(let t of this.elements){for(let n of Array.from(t.childNodes))$(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 c of this.elements)for(let u of Ve(t)){let l=f=>{if(!o){i.call(c,f);return}let p=f.target,d=p==null?void 0:p.closest(o);!d||!c.contains(d)||i.call(d,f)};c.addEventListener(u,l,s),gc(c).push({type:u,selector:o,handler:i,wrapped:l,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?Ve(t):null;for(let a of this.elements){let c=kn.get(a);if(!c)continue;let u=[];for(let l of c){let f=!s||s.includes(l.type),p=o===null||l.selector===o,d=i===null||l.handler===i;f&&p&&d?a.removeEventListener(l.type,l.wrapped,l.options):u.push(l)}kn.set(a,u)}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(c){return o?s.off(t,o,a):s.off(t,a),i.call(this,c)};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)Ii(t);return this}hide(){for(let t of this.elements)ji(t);return this}toggle(t){for(let n of this.elements)(t===void 0?Di(n):t)?Ii(n):ji(n);return this}fadeIn(t=220){for(let n of this.elements)n.removeAttribute("hidden"),bn(n,t);return this}fadeOut(t=220){for(let n of this.elements)wn(n,t);return this}slideUp(t=240){for(let n of this.elements)Ht(n,t);return this}slideDown(t=240){for(let n of this.elements)n.removeAttribute("hidden"),$t(n,t);return this}slideToggle(t=240){for(let n of this.elements)Di(n)?(n.removeAttribute("hidden"),$t(n,t)):Ht(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 Bi(t)){if(!hc(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 Bi(t)){let c=a;if(!c.name||c.disabled)continue;let u=(c.getAttribute("type")||"").toLowerCase();if(u==="submit"||u==="reset"||u==="button")continue;let l=c.name.endsWith("[]"),f=l?c.name.slice(0,-2):c.name,p=a,d;if(u==="checkbox"){if(!c.checked&&!l){n[f]=(r=n[f])!=null?r:!1;continue}if(!c.checked)continue;d=c.value==="on"?!0:c.value}else if(u==="radio"){if(!c.checked)continue;d=c.value}else u==="file"?d=c.multiple?Array.from((o=c.files)!=null?o:[]):(s=(i=c.files)==null?void 0:i[0])!=null?s:null:c.tagName==="SELECT"&&p.multiple?d=Array.from(p.selectedOptions).map(m=>m.value):u==="number"||u==="range"?d=c.value===""?null:Number(c.value):d=c.value;if(l){let m=n[f];Array.isArray(m)?m.push(d):n[f]=[d];continue}if(Object.prototype.hasOwnProperty.call(n,f)){let m=n[f];Array.isArray(m)?m.push(d):m===void 0||m===!1?n[f]=d:n[f]=[m,d];continue}n[f]=d}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&&$(n),j(n,we(n.parentNode));return this}destroy(){for(let t of this.elements)$(t);return this}};function Nr(e,t){if(typeof e=="function"){Or(e);let n=typeof document!="undefined"?document.documentElement:null;return new pe(n?[n]:[])}return new pe(We(e,t))}function Or(e){return typeof document=="undefined"?Promise.resolve():new Promise(t=>{Wo(()=>{try{e==null||e()}catch(n){O(n,"V.ready")}t()})})}function Vi(e){return new pe(Pr(e))}var Wi=((e,t)=>Nr(e,t));Object.assign(Wi,xn,{query:Nr,ready:Or,fromHtml:Vi,Collection:pe,magic:P});var $r=Wi;re();ut();re();var yc=/^#([0-9a-f])([0-9a-f])([0-9a-f])[0-9a-f]?$/i,vc=/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})(?:[0-9a-f]{2})?$/i,bc=/^rgba?\(([^)]+)\)$/i,wc=/^hsla?\(([^)]+)\)$/i;function zi(e){return e.split(/[\s,/]+/).map(t=>parseFloat(t)).filter(t=>!Number.isNaN(t))}function Tc(e,t,n){let r=(e%360+360)%360,o=J(t/100,0,1),i=J(n/100,0,1),s=(1-Math.abs(2*i-1))*o,a=s*(1-Math.abs(r/60%2-1)),c=i-s/2,u=Math.floor(r/60)%6,l=[[s,a,0],[a,s,0],[0,s,a],[0,a,s],[a,0,s],[s,0,a]],[f,p,d]=l[u];return{r:Math.round((f+c)*255),g:Math.round((p+c)*255),b:Math.round((d+c)*255)}}function me(e){let t=String(e!=null?e:"").trim();if(!t)return null;let n=yc.exec(t);if(n)return{r:parseInt(n[1]+n[1],16),g:parseInt(n[2]+n[2],16),b:parseInt(n[3]+n[3],16)};let r=vc.exec(t);if(r)return{r:parseInt(r[1],16),g:parseInt(r[2],16),b:parseInt(r[3],16)};let o=bc.exec(t);if(o){let[s,a,c]=zi(o[1]);return s===void 0||a===void 0||c===void 0?null:{r:J(s,0,255),g:J(a,0,255),b:J(c,0,255)}}let i=wc.exec(t);if(i){let[s,a,c]=zi(i[1]);return s===void 0||a===void 0||c===void 0?null:Tc(s,a,c)}return null}function J(e,t,n){return e<t?t:e>n?n:e}function vt(e){let t=e/255;return t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Hr(e){return e<=.0031308?e*12.92:1.055*Math.pow(e,.4166666666666667)-.055}function xc(e){let t=vt(e.r),n=vt(e.g),r=vt(e.b),o=.4122214708*t+.5363325363*n+.0514459929*r,i=.2119034982*t+.6806995451*n+.1073969566*r,s=.0883024619*t+.2817188376*n+.6299787005*r,a=Math.cbrt(o),c=Math.cbrt(i),u=Math.cbrt(s);return{l:.2104542553*a+.793617785*c-.0040720468*u,a:1.9779984951*a-2.428592205*c+.4505937099*u,b:.0259040371*a+.7827717662*c-.808675766*u}}function Ec(e){let t=e.l+.3963377774*e.a+.2158037573*e.b,n=e.l-.1055613458*e.a-.0638541728*e.b,r=e.l-.0894841775*e.a-1.291485548*e.b,o=t*t*t,i=n*n*n,s=r*r*r;return{r:Hr(4.0767416621*o-3.3077115913*i+.2309699292*s),g:Hr(-1.2684380046*o+2.6097574011*i-.3413193965*s),b:Hr(-.0041960863*o-.7034186147*i+1.707614701*s)}}function An(e){let t=xc(e),n=Math.sqrt(t.a*t.a+t.b*t.b),r=Math.atan2(t.b,t.a)*180/Math.PI;return r<0&&(r+=360),{l:t.l,c:n,h:n<1e-5?0:r}}function Qi(e){let t=e.h*Math.PI/180;return Ec({l:e.l,a:Math.cos(t)*e.c,b:Math.sin(t)*e.c})}function yt(e){let t=Math.max(0,e.c);for(let r=0;r<32;r++){let o=Qi({l:J(e.l,0,1),c:t,h:e.h});if(o.r>=-.001&&o.r<=1.001&&o.g>=-.001&&o.g<=1.001&&o.b>=-.001&&o.b<=1.001)return{r:Math.round(J(o.r,0,1)*255),g:Math.round(J(o.g,0,1)*255),b:Math.round(J(o.b,0,1)*255)};t*=.92}let n=Qi({l:J(e.l,0,1),c:0,h:e.h});return{r:Math.round(J(n.r,0,1)*255),g:Math.round(J(n.g,0,1)*255),b:Math.round(J(n.b,0,1)*255)}}function Dr(e){return J(Math.round(e),0,255).toString(16).padStart(2,"0")}function ze(e){return`#${Dr(e.r)}${Dr(e.g)}${Dr(e.b)}`}function gt(e,t){return`rgba(${Math.round(e.r)}, ${Math.round(e.g)}, ${Math.round(e.b)}, ${Number(t.toFixed(3))})`}function Ji(e){return ze(yt(e))}function jr(e){return .2126*vt(e.r)+.7152*vt(e.g)+.0722*vt(e.b)}function Fr(e,t){let n=typeof e=="string"?me(e):e,r=typeof t=="string"?me(t):t;if(!n||!r)return 1;let o=jr(n),i=jr(r),s=Math.max(o,i),a=Math.min(o,i);return(s+.05)/(a+.05)}var Zi={r:255,g:255,b:255},Rn={r:0,g:0,b:0};function Ft(e){let t=typeof e=="string"?me(e):e;return t?Fr(t,Zi)>=Fr(t,Rn)?"#ffffff":"#000000":"#ffffff"}var Br=[50,100,200,300,400,500,600,700,800,900],es=[.973,.941,.889,.819,.732,.638,.558,.478,.399,.327],kc=[.14,.26,.46,.68,.88,1,.97,.89,.78,.65],ts=[.244,.286,.343,.408,.484,.588,.668,.748,.836,.928],Sc=[.3,.42,.6,.78,.92,1,.92,.78,.57,.33];function ns(e,t=!1){var a;let n=typeof e=="string"?(a=me(e))!=null?a:Rn:e,r=An(n),o=t?ts:es,i=t?Sc:kc,s={};return Br.forEach((c,u)=>{s[String(c)]=Ji({l:o[u],c:r.c*i[u],h:r.h})}),s}var Cn={violeta:{primary:"#6D3BF5",accent:"#FF3D8B",success:"#16A34A",warning:"#D97706",danger:"#E11D48",info:"#7C6BFF"},oceano:{primary:"#0E7BC4",accent:"#0FB5C9",success:"#0F9D6E",warning:"#D08700",danger:"#DC2F3E",info:"#3B82F6"},floresta:{primary:"#1F8A4C",accent:"#7FA80E",success:"#18A05A",warning:"#C97A0A",danger:"#C93A2E",info:"#2C8FA8"},poente:{primary:"#E4632A",accent:"#D62F63",success:"#3E9B52",warning:"#D99000",danger:"#D32F2F",info:"#B45FC0"},grafite:{primary:"#4C5A70",accent:"#2E7FD1",success:"#2F8F60",warning:"#B57A12",danger:"#C2453F",info:"#5B7A99"}},rs=["primary","accent","success","warning","danger","info"],Ur="voodoo:palette",Ki="voodoo-palette",Ac="system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",Rc="ui-monospace, SFMono-Regular, Menlo, Consolas, 'Liberation Mono', monospace";function Gi(e,t){let n=(e!=null?e:"").trim();return n?n.includes(",")?n:`${/^['"]/.test(n)?n:`'${n}'`}, ${t}`:t}var Cc=/^([\d.]+)(px|rem|em)$/;function Mc(e){let t=(e||"12px").trim(),n=Cc.exec(t);if(!n)return{"--v-radius":t,"--v-radius-sm":`calc(${t} * 0.6)`,"--v-radius-lg":`calc(${t} * 1.5)`,"--v-radius-xl":`calc(${t} * 2)`,"--v-radius-full":"999px"};let r=parseFloat(n[1]),o=n[2],i=s=>`${Math.round(s*1e3)/1e3}${o}`;return{"--v-radius":i(r),"--v-radius-sm":i(Math.max(r*.55,0)),"--v-radius-lg":i(r*1.5),"--v-radius-xl":i(r*2),"--v-radius-full":"999px"}}function Yi(e,t){var u,l,f,p;let n={},r={},o={};for(let d of rs){let m=(u=me(e[d]))!=null?u:Rn,g=An(m),h=ns(m,t);r[d]=h;for(let M of Br)n[`--v-${d}-${M}`]=h[String(M)];let y=t?{l:Math.max(g.l,.62),c:g.c*.95,h:g.h}:g,S=t?{l:Math.min(y.l+.07,.94),c:y.c*.95,h:y.h}:{l:Math.max(y.l-.055,.12),c:y.c,h:y.h},_=t?{l:Math.min(y.l+.13,.97),c:y.c*.88,h:y.h}:{l:Math.max(y.l-.105,.1),c:y.c,h:y.h},k=yt(y),v=yt(S),I=yt(_);n[`--v-${d}`]=ze(t?k:m),n[`--v-${d}-hover`]=ze(v),n[`--v-${d}-active`]=ze(I),n[`--v-${d}-contrast`]=Ft(t?k:m),n[`--v-${d}-contrast-hover`]=Ft(v),n[`--v-${d}-contrast-active`]=Ft(I);let H=h[50],C=h[100],V=t?h[800]:h[700];n[`--v-${d}-soft`]=H,n[`--v-${d}-soft-hover`]=C,n[`--v-${d}-soft-text`]=V,n[`--v-${d}-ring`]=gt(k,t?.45:.32),n[`--v-${d}-border`]=t?h[300]:h[200],o[d]=n[`--v-${d}-contrast`]}let i=(f=me((l=e.neutral)!=null?l:e.primary))!=null?f:Rn,s=An(i).h,a=(d,m)=>Ji({l:d,c:m,h:s}),c={};if(Br.forEach((d,m)=>{let g=t?ts:es;c[String(d)]=a(g[m],.012),n[`--v-neutral-${d}`]=c[String(d)]}),r.neutral=c,t)n["--v-surface"]=a(.248,.021),n["--v-surface-2"]=a(.196,.021),n["--v-surface-3"]=a(.305,.024),n["--v-surface-inset"]=a(.17,.02),n["--v-text"]=a(.965,.008),n["--v-text-muted"]=a(.748,.017),n["--v-text-soft"]=a(.63,.017),n["--v-border"]=a(.355,.023),n["--v-border-strong"]=a(.46,.026),n["--v-overlay"]="rgba(0, 0, 0, 0.62)",n["--v-shadow-sm"]="0 1px 2px rgba(0, 0, 0, 0.5)",n["--v-shadow"]="0 10px 30px rgba(0, 0, 0, 0.5)",n["--v-shadow-lg"]="0 24px 60px rgba(0, 0, 0, 0.62)";else{let d=yt({l:.24,c:.028,h:s});n["--v-surface"]=a(1,0),n["--v-surface-2"]=a(.981,.006),n["--v-surface-3"]=a(.955,.009),n["--v-surface-inset"]=a(.968,.008),n["--v-text"]=ze(d),n["--v-text-muted"]=a(.53,.023),n["--v-text-soft"]=a(.655,.018),n["--v-border"]=a(.906,.012),n["--v-border-strong"]=a(.828,.016),n["--v-overlay"]=gt(d,.45),n["--v-shadow-sm"]=`0 1px 2px ${gt(d,.08)}`,n["--v-shadow"]=`0 10px 30px ${gt(d,.14)}`,n["--v-shadow-lg"]=`0 24px 60px ${gt(d,.2)}`}return n["--v-focus-ring"]=n["--v-primary-ring"],o.surface=Ft((p=me(n["--v-surface"]))!=null?p:Zi),{vars:n,scales:r,contrast:o}}function Ir(e,t){let n=Object.entries(t).map(([r,o])=>` ${r}: ${o};`).join(`
|
|
139
139
|
`);return`${e} {
|
|
140
140
|
${n}
|
|
141
141
|
}`}var Ut=null,Bt=null;function Lc(e){var r,o,i,s,a,c,u,l,f;let t=(r=Cn[e.preset])!=null?r:Cn.violeta,n={primary:(o=e.primary)!=null?o:t.primary,accent:(i=e.accent)!=null?i:t.accent,success:(s=e.success)!=null?s:t.success,warning:(a=e.warning)!=null?a:t.warning,danger:(c=e.danger)!=null?c:t.danger,info:(u=e.info)!=null?u:t.info,neutral:(l=e.neutral)!=null?l:t.neutral};for(let p of rs)me(n[p])||(console.warn(`[Voodoo] invalid color in palette.${p}: "${n[p]}". Using preset.`),n[p]=t[p]);return{colors:n,radius:(f=e.radius)!=null?f:"12px",font:Gi(e.font,Ac),mono:Gi(e.monoFont,Rc)}}function Pc(e){if(typeof document=="undefined"||!T.injectStyles)return;Ue();let t=document.getElementById(Ki);t||(t=document.createElement("style"),t.id=Ki,t.setAttribute("data-voodoo","palette"),document.head.appendChild(t)),t.textContent=e}function Sn(e={}){let{colors:t,radius:n,font:r,mono:o}=Lc(e),i=Yi(t,!1),s=Yi(t,!0),a={...Mc(n),"--v-font-sans":r,"--v-font-mono":o},c=["/* Palette generated by V.palette(). Do not edit manually. */",Ir(":root",{...a,...i.vars}),`@media (prefers-color-scheme: dark) {
|
package/dist/voodoo.full.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Voodoo.js v0.
|
|
2
|
+
* Voodoo.js v0.7.0
|
|
3
3
|
* JavaScript feels like magic.
|
|
4
4
|
* (c) 2026 Voodoo.js contributors. MIT License.
|
|
5
5
|
*/
|
|
@@ -6621,7 +6621,7 @@ Suggestion: attribute expressions accept a single value. If the logic spans more
|
|
|
6621
6621
|
Object.defineProperties(rootScope.data, Object.getOwnPropertyDescriptors(values));
|
|
6622
6622
|
return rootScope.data;
|
|
6623
6623
|
}
|
|
6624
|
-
var version2 = "0.
|
|
6624
|
+
var version2 = "0.7.0";
|
|
6625
6625
|
var core = {
|
|
6626
6626
|
// Utilities first: Voodoo's own names can override.
|
|
6627
6627
|
...utils_exports,
|
|
@@ -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;
|
|
@@ -20711,8 +20712,8 @@ textarea.v-dialog-input{min-height:96px;resize:vertical}
|
|
|
20711
20712
|
if (shortcutInstalled || typeof document === "undefined") return;
|
|
20712
20713
|
shortcutInstalled = true;
|
|
20713
20714
|
document.addEventListener("keydown", (event) => {
|
|
20714
|
-
if (!event.
|
|
20715
|
-
if (event.key !== "
|
|
20715
|
+
if (!event.altKey || !event.shiftKey || event.ctrlKey || event.metaKey) return;
|
|
20716
|
+
if (event.code !== "KeyV" && event.key !== "V" && event.key !== "v") return;
|
|
20716
20717
|
event.preventDefault();
|
|
20717
20718
|
xray();
|
|
20718
20719
|
});
|
|
@@ -20905,9 +20906,9 @@ textarea.v-dialog-input{min-height:96px;resize:vertical}
|
|
|
20905
20906
|
const button = document.createElement("button");
|
|
20906
20907
|
button.type = "button";
|
|
20907
20908
|
button.className = "v-devtools-btn";
|
|
20908
|
-
button.setAttribute("aria-label", "Open Voodoo devtools (
|
|
20909
|
+
button.setAttribute("aria-label", "Open Voodoo devtools (Alt+Shift+V)");
|
|
20909
20910
|
button.setAttribute("aria-pressed", "false");
|
|
20910
|
-
button.title = "Voodoo devtools \u2014 click to inspect, drag to move (
|
|
20911
|
+
button.title = "Voodoo devtools \u2014 click to inspect, drag to move (Alt+Shift+V)";
|
|
20911
20912
|
button.innerHTML = MARK;
|
|
20912
20913
|
const label = document.createElement("span");
|
|
20913
20914
|
label.className = "v-devtools-label";
|