voodoojs 0.10.1 → 0.11.1

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.
Files changed (41) hide show
  1. package/README.md +1 -1
  2. package/dist/{chunk-5E3UZREN.js → chunk-32J7GDLD.js} +7 -7
  3. package/dist/{chunk-2UST7MKN.js → chunk-BEQEBFQ2.js} +3 -3
  4. package/dist/{chunk-5D7TM3GL.js → chunk-FCJ2APGN.js} +5 -5
  5. package/dist/{chunk-246ZC2JD.js → chunk-FITEA237.js} +4 -4
  6. package/dist/{chunk-D4DNTWIS.js → chunk-GC3BKNPT.js} +3 -3
  7. package/dist/{chunk-KQRWQPD6.js → chunk-J6RTM5P4.js} +4 -4
  8. package/dist/{chunk-DNIQLT66.js → chunk-KE6WWJOB.js} +6 -6
  9. package/dist/{chunk-WYSN4IOV.js → chunk-OHSGDVPA.js} +5 -5
  10. package/dist/{chunk-F3Z3HMZR.js → chunk-OJDW7KXT.js} +4 -4
  11. package/dist/{chunk-RREZZ4FB.js → chunk-TXWSOPF2.js} +4 -4
  12. package/dist/{chunk-4MJIS5RZ.js → chunk-XG2UDP4O.js} +13 -13
  13. package/dist/essential.cjs +2 -2
  14. package/dist/essential.d.cts +1 -1
  15. package/dist/essential.d.ts +1 -1
  16. package/dist/essential.js +10 -10
  17. package/dist/gpu.cjs +1 -1
  18. package/dist/gpu.js +10 -10
  19. package/dist/http.cjs +1 -1
  20. package/dist/http.js +5 -5
  21. package/dist/index.cjs +64 -10
  22. package/dist/index.d.cts +2 -2
  23. package/dist/index.d.ts +2 -2
  24. package/dist/index.js +82 -28
  25. package/dist/reactivity.cjs +1 -1
  26. package/dist/reactivity.js +2 -2
  27. package/dist/socket.cjs +1 -1
  28. package/dist/socket.js +9 -9
  29. package/dist/style-MX6ZATL4.js +5 -0
  30. package/dist/utils.cjs +1 -1
  31. package/dist/utils.js +2 -2
  32. package/dist/voodoo.core.js +2 -2
  33. package/dist/voodoo.core.min.js +2 -2
  34. package/dist/voodoo.full.js +66 -11
  35. package/dist/voodoo.full.min.js +25 -25
  36. package/dist/voodoo.js +2 -2
  37. package/dist/voodoo.min.js +2 -2
  38. package/package.json +1 -1
  39. package/dist/style-BSEVBI4K.js +0 -5
  40. package/dist/{query-DiQAS73Q.d.cts → query-CbHihkvO.d.cts} +28 -28
  41. package/dist/{query-Cf-7iibE.d.ts → query-p04Fl8VW.d.ts} +28 -28
package/README.md CHANGED
@@ -22,7 +22,7 @@ npm install voodoojs
22
22
  Or drop it into a page, with nothing else:
23
23
 
24
24
  ```html
25
- <script src="https://cdn.jsdelivr.net/npm/voodoojs@0.10/dist/voodoo.min.js" defer></script>
25
+ <script src="https://cdn.jsdelivr.net/npm/voodoojs@0.11/dist/voodoo.min.js" defer></script>
26
26
 
27
27
  <div v-data="{ count: 0 }">
28
28
  <button @click="count++">Clicked { count } times</button>
@@ -1,10 +1,10 @@
1
- import { reactive, handleError, EffectScope, effect } from './chunk-246ZC2JD.js';
2
- import { inDevelopment, warnInvalidExpression, warnUnknownDirective } from './chunk-RREZZ4FB.js';
3
- import { config, directives, components } from './chunk-D4DNTWIS.js';
4
- import { __publicField } from './chunk-2UST7MKN.js';
1
+ import { reactive, handleError, EffectScope, effect } from './chunk-FITEA237.js';
2
+ import { inDevelopment, warnInvalidExpression, warnUnknownDirective } from './chunk-TXWSOPF2.js';
3
+ import { config, directives, components } from './chunk-GC3BKNPT.js';
4
+ import { __publicField } from './chunk-BEQEBFQ2.js';
5
5
 
6
6
  /**
7
- * Voodoo.js v0.10.1
7
+ * Voodoo.js v0.11.1
8
8
  * JavaScript feels like magic.
9
9
  * (c) 2026 Voodoo.js contributors. MIT License.
10
10
  */
@@ -2102,5 +2102,5 @@ function refresh(root) {
2102
2102
  }
2103
2103
 
2104
2104
  export { Scope, VoodooRuntimeError, VoodooSyntaxError, addCleanup, allowedGlobals, clearParseCache, closestDirective, collectDirectives, componentAliases, destroy, evaluate, evaluateIn, findScope, getEffectScopes, getScope, hadDirectives, hasAttr, hasDirective, hasDirectives, isInitialized, magic, magics, markInitialized, markNodeScope, markSkipChildren, onStart, originalAttributes, parse, parseAttribute, queryDirective, readAttr, refresh, removeQuietly, restoreAttributes, rootScope, setComponentMounter, start, stopObserving, stringify, tokenize, unwrap, walk };
2105
- //# sourceMappingURL=chunk-5E3UZREN.js.map
2106
- //# sourceMappingURL=chunk-5E3UZREN.js.map
2105
+ //# sourceMappingURL=chunk-32J7GDLD.js.map
2106
+ //# sourceMappingURL=chunk-32J7GDLD.js.map
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Voodoo.js v0.10.1
2
+ * Voodoo.js v0.11.1
3
3
  * JavaScript feels like magic.
4
4
  * (c) 2026 Voodoo.js contributors. MIT License.
5
5
  */
@@ -12,5 +12,5 @@ var __export = (target, all) => {
12
12
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
13
13
 
14
14
  export { __export, __publicField };
15
- //# sourceMappingURL=chunk-2UST7MKN.js.map
16
- //# sourceMappingURL=chunk-2UST7MKN.js.map
15
+ //# sourceMappingURL=chunk-BEQEBFQ2.js.map
16
+ //# sourceMappingURL=chunk-BEQEBFQ2.js.map
@@ -1,8 +1,8 @@
1
- import { reactive } from './chunk-246ZC2JD.js';
2
- import { warnOnce } from './chunk-RREZZ4FB.js';
1
+ import { reactive } from './chunk-FITEA237.js';
2
+ import { warnOnce } from './chunk-TXWSOPF2.js';
3
3
 
4
4
  /**
5
- * Voodoo.js v0.10.1
5
+ * Voodoo.js v0.11.1
6
6
  * JavaScript feels like magic.
7
7
  * (c) 2026 Voodoo.js contributors. MIT License.
8
8
  */
@@ -942,5 +942,5 @@ Object.defineProperty(factory, "open", {
942
942
  var socket = factory;
943
943
 
944
944
  export { ENGINE, SIO, createSocket, decodeEngine, decodeSocketIo, devtoolsBus, encodeSocketIo, engineURL, resolveSocketURL, socket, socketSupported };
945
- //# sourceMappingURL=chunk-5D7TM3GL.js.map
946
- //# sourceMappingURL=chunk-5D7TM3GL.js.map
945
+ //# sourceMappingURL=chunk-FCJ2APGN.js.map
946
+ //# sourceMappingURL=chunk-FCJ2APGN.js.map
@@ -1,7 +1,7 @@
1
- import { __publicField } from './chunk-2UST7MKN.js';
1
+ import { __publicField } from './chunk-BEQEBFQ2.js';
2
2
 
3
3
  /**
4
- * Voodoo.js v0.10.1
4
+ * Voodoo.js v0.11.1
5
5
  * JavaScript feels like magic.
6
6
  * (c) 2026 Voodoo.js contributors. MIT License.
7
7
  */
@@ -637,5 +637,5 @@ function traverse(value, seen = /* @__PURE__ */ new Set()) {
637
637
  }
638
638
 
639
639
  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 };
640
- //# sourceMappingURL=chunk-246ZC2JD.js.map
641
- //# sourceMappingURL=chunk-246ZC2JD.js.map
640
+ //# sourceMappingURL=chunk-FITEA237.js.map
641
+ //# sourceMappingURL=chunk-FITEA237.js.map
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Voodoo.js v0.10.1
2
+ * Voodoo.js v0.11.1
3
3
  * JavaScript feels like magic.
4
4
  * (c) 2026 Voodoo.js contributors. MIT License.
5
5
  */
@@ -61,5 +61,5 @@ function usePlugin(V, plugin, options) {
61
61
  }
62
62
 
63
63
  export { PRIORITY, components, config, defineDirective, directives, normalizeComponentName, usePlugin };
64
- //# sourceMappingURL=chunk-D4DNTWIS.js.map
65
- //# sourceMappingURL=chunk-D4DNTWIS.js.map
64
+ //# sourceMappingURL=chunk-GC3BKNPT.js.map
65
+ //# sourceMappingURL=chunk-GC3BKNPT.js.map
@@ -1,7 +1,7 @@
1
- import { config } from './chunk-D4DNTWIS.js';
1
+ import { config } from './chunk-GC3BKNPT.js';
2
2
 
3
3
  /**
4
- * Voodoo.js v0.10.1
4
+ * Voodoo.js v0.11.1
5
5
  * JavaScript feels like magic.
6
6
  * (c) 2026 Voodoo.js contributors. MIT License.
7
7
  */
@@ -68,5 +68,5 @@ function ensureTokens() {
68
68
  }
69
69
 
70
70
  export { BASE_TOKENS, ensureTokens, injectStyle };
71
- //# sourceMappingURL=chunk-KQRWQPD6.js.map
72
- //# sourceMappingURL=chunk-KQRWQPD6.js.map
71
+ //# sourceMappingURL=chunk-J6RTM5P4.js.map
72
+ //# sourceMappingURL=chunk-J6RTM5P4.js.map
@@ -1,9 +1,9 @@
1
- import { warnOnce } from './chunk-RREZZ4FB.js';
2
- import { parseDuration } from './chunk-F3Z3HMZR.js';
3
- import { __publicField } from './chunk-2UST7MKN.js';
1
+ import { warnOnce } from './chunk-TXWSOPF2.js';
2
+ import { parseDuration } from './chunk-OJDW7KXT.js';
3
+ import { __publicField } from './chunk-BEQEBFQ2.js';
4
4
 
5
5
  /**
6
- * Voodoo.js v0.10.1
6
+ * Voodoo.js v0.11.1
7
7
  * JavaScript feels like magic.
8
8
  * (c) 2026 Voodoo.js contributors. MIT License.
9
9
  */
@@ -444,5 +444,5 @@ var http = {
444
444
  };
445
445
 
446
446
  export { HttpError, clearCache, flushOfflineQueue, http, request };
447
- //# sourceMappingURL=chunk-DNIQLT66.js.map
448
- //# sourceMappingURL=chunk-DNIQLT66.js.map
447
+ //# sourceMappingURL=chunk-KE6WWJOB.js.map
448
+ //# sourceMappingURL=chunk-KE6WWJOB.js.map
@@ -1,8 +1,8 @@
1
- import { handleError } from './chunk-246ZC2JD.js';
2
- import { warn } from './chunk-RREZZ4FB.js';
1
+ import { handleError } from './chunk-FITEA237.js';
2
+ import { warn } from './chunk-TXWSOPF2.js';
3
3
 
4
4
  /**
5
- * Voodoo.js v0.10.1
5
+ * Voodoo.js v0.11.1
6
6
  * JavaScript feels like magic.
7
7
  * (c) 2026 Voodoo.js contributors. MIT License.
8
8
  */
@@ -1192,5 +1192,5 @@ var gpu = {
1192
1192
  };
1193
1193
 
1194
1194
  export { clock, compute, describeWgslType, destroy, effect, findEntry, flattenValue, frame, frameLoop, gpu, inferStruct, init, packStruct, reflectBindings, reflectEntries, reflectStructs, reflectWgsl, resetShared, shared, splitTopLevel, stripWgslComments, supported, surface, target, uniforms, writeField, writeStruct };
1195
- //# sourceMappingURL=chunk-WYSN4IOV.js.map
1196
- //# sourceMappingURL=chunk-WYSN4IOV.js.map
1195
+ //# sourceMappingURL=chunk-OHSGDVPA.js.map
1196
+ //# sourceMappingURL=chunk-OHSGDVPA.js.map
@@ -1,7 +1,7 @@
1
- import { __export } from './chunk-2UST7MKN.js';
1
+ import { __export } from './chunk-BEQEBFQ2.js';
2
2
 
3
3
  /**
4
- * Voodoo.js v0.10.1
4
+ * Voodoo.js v0.11.1
5
5
  * JavaScript feels like magic.
6
6
  * (c) 2026 Voodoo.js contributors. MIT License.
7
7
  */
@@ -397,5 +397,5 @@ var device = {
397
397
  };
398
398
 
399
399
  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, utils_exports, uuid };
400
- //# sourceMappingURL=chunk-F3Z3HMZR.js.map
401
- //# sourceMappingURL=chunk-F3Z3HMZR.js.map
400
+ //# sourceMappingURL=chunk-OJDW7KXT.js.map
401
+ //# sourceMappingURL=chunk-OJDW7KXT.js.map
@@ -1,7 +1,7 @@
1
- import { config } from './chunk-D4DNTWIS.js';
1
+ import { config } from './chunk-GC3BKNPT.js';
2
2
 
3
3
  /**
4
- * Voodoo.js v0.10.1
4
+ * Voodoo.js v0.11.1
5
5
  * JavaScript feels like magic.
6
6
  * (c) 2026 Voodoo.js contributors. MIT License.
7
7
  */
@@ -78,5 +78,5 @@ function warnAlias(alias, canonical) {
78
78
  }
79
79
 
80
80
  export { describeElement, inDevelopment, warn, warnAlias, warnDuplicateKey, warnInvalidExpression, warnOnce, warnRequiredProp, warnUnknownComponent, warnUnknownDirective };
81
- //# sourceMappingURL=chunk-RREZZ4FB.js.map
82
- //# sourceMappingURL=chunk-RREZZ4FB.js.map
81
+ //# sourceMappingURL=chunk-TXWSOPF2.js.map
82
+ //# sourceMappingURL=chunk-TXWSOPF2.js.map
@@ -1,14 +1,14 @@
1
- import { http, HttpError, request } from './chunk-DNIQLT66.js';
2
- import { stringify, markInitialized, markSkipChildren, destroy, walk, removeQuietly, evaluateIn, addCleanup, markNodeScope, setComponentMounter, closestDirective, magic, readAttr, hasAttr, componentAliases, Scope, queryDirective, parse, evaluate, parseAttribute, originalAttributes, hasDirective, findScope, VoodooRuntimeError, VoodooSyntaxError, allowedGlobals, clearParseCache, tokenize, getScope, stopObserving, refresh, start, magics, rootScope, isInitialized, restoreAttributes, hasDirectives } from './chunk-5E3UZREN.js';
3
- import { ref, reactive, handleError, nextTick, queuePostFlush, warn, watch, EffectScope, computed, effect, toRaw, flushSync, effectScope, stop, unref, markRaw, watchEffect, shallowRef, setErrorHandler } from './chunk-246ZC2JD.js';
4
- import { warnDuplicateKey, warn as warn$1, describeElement, warnUnknownComponent, warnAlias, warnRequiredProp } from './chunk-RREZZ4FB.js';
5
- import { parseDuration, debounce, utils_exports, throttle, uid, device, escapeHtml } from './chunk-F3Z3HMZR.js';
6
- import { injectStyle, ensureTokens } from './chunk-KQRWQPD6.js';
7
- import { defineDirective, config, PRIORITY, directives, normalizeComponentName, components, usePlugin } from './chunk-D4DNTWIS.js';
8
- import { __publicField } from './chunk-2UST7MKN.js';
1
+ import { http, HttpError, request } from './chunk-KE6WWJOB.js';
2
+ import { stringify, markInitialized, markSkipChildren, destroy, walk, removeQuietly, evaluateIn, addCleanup, markNodeScope, setComponentMounter, closestDirective, magic, readAttr, hasAttr, componentAliases, Scope, queryDirective, parse, evaluate, parseAttribute, originalAttributes, hasDirective, findScope, VoodooRuntimeError, VoodooSyntaxError, allowedGlobals, clearParseCache, tokenize, getScope, stopObserving, refresh, start, magics, rootScope, isInitialized, restoreAttributes, hasDirectives } from './chunk-32J7GDLD.js';
3
+ import { ref, reactive, handleError, nextTick, queuePostFlush, warn, watch, EffectScope, computed, effect, toRaw, flushSync, effectScope, stop, unref, markRaw, watchEffect, shallowRef, setErrorHandler } from './chunk-FITEA237.js';
4
+ import { warnDuplicateKey, warn as warn$1, describeElement, warnUnknownComponent, warnAlias, warnRequiredProp } from './chunk-TXWSOPF2.js';
5
+ import { parseDuration, debounce, utils_exports, throttle, uid, device, escapeHtml } from './chunk-OJDW7KXT.js';
6
+ import { injectStyle, ensureTokens } from './chunk-J6RTM5P4.js';
7
+ import { defineDirective, config, PRIORITY, directives, normalizeComponentName, components, usePlugin } from './chunk-GC3BKNPT.js';
8
+ import { __publicField } from './chunk-BEQEBFQ2.js';
9
9
 
10
10
  /**
11
- * Voodoo.js v0.10.1
11
+ * Voodoo.js v0.11.1
12
12
  * JavaScript feels like magic.
13
13
  * (c) 2026 Voodoo.js contributors. MIT License.
14
14
  */
@@ -2662,7 +2662,7 @@ var jsonStylesInjected = false;
2662
2662
  function injectJSONStyles() {
2663
2663
  if (jsonStylesInjected) return;
2664
2664
  jsonStylesInjected = true;
2665
- void import('./style-BSEVBI4K.js').then(({ injectStyle: injectStyle2 }) => {
2665
+ void import('./style-MX6ZATL4.js').then(({ injectStyle: injectStyle2 }) => {
2666
2666
  injectStyle2(
2667
2667
  "json-render",
2668
2668
  `
@@ -2949,7 +2949,7 @@ function data(values) {
2949
2949
  Object.defineProperties(rootScope.data, Object.getOwnPropertyDescriptors(values));
2950
2950
  return rootScope.data;
2951
2951
  }
2952
- var version2 = "0.10.1";
2952
+ var version2 = "0.11.1";
2953
2953
  var core = {
2954
2954
  // Utilities first: Voodoo's own names can override.
2955
2955
  ...utils_exports,
@@ -10271,5 +10271,5 @@ defineDirective(
10271
10271
  );
10272
10272
 
10273
10273
  export { VoodooCollection, alert, allStores, applyMask, cache, clearErrors, clipboard, confirm, cookie, core, createApp, createResource, defineComponent, dialog, efeitos, ensurePalette, enter, fadeIn, fadeOut, fromHtml, hotkey, instances, leave, mask, masks, messages, modal, mountComponent, network, palette, prompt, query, ready, ready2, registerMask, removeStore, screen, serializeForm, session, showFieldError, showFormErrors, slideDown, slideUp, sound, storage, store, storeNames, theme, toast, unmask, url, validate, validator, viewTransition, whenElement, whenReady };
10274
- //# sourceMappingURL=chunk-4MJIS5RZ.js.map
10275
- //# sourceMappingURL=chunk-4MJIS5RZ.js.map
10274
+ //# sourceMappingURL=chunk-XG2UDP4O.js.map
10275
+ //# sourceMappingURL=chunk-XG2UDP4O.js.map
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  /**
6
- * Voodoo.js v0.10.1
6
+ * Voodoo.js v0.11.1
7
7
  * JavaScript feels like magic.
8
8
  * (c) 2026 Voodoo.js contributors. MIT License.
9
9
  */
@@ -6764,7 +6764,7 @@ function data(values) {
6764
6764
  Object.defineProperties(rootScope.data, Object.getOwnPropertyDescriptors(values));
6765
6765
  return rootScope.data;
6766
6766
  }
6767
- var version2 = "0.10.1";
6767
+ var version2 = "0.11.1";
6768
6768
  var core = {
6769
6769
  // Utilities first: Voodoo's own names can override.
6770
6770
  ...utils_exports,
@@ -1,4 +1,4 @@
1
- import { c as core, V as VoodooCollection } from './query-DiQAS73Q.cjs';
1
+ import { c as core, V as VoodooCollection } from './query-CbHihkvO.cjs';
2
2
  import './http.cjs';
3
3
  import './utils.cjs';
4
4
  import './reactivity.cjs';
@@ -1,4 +1,4 @@
1
- import { c as core, V as VoodooCollection } from './query-Cf-7iibE.js';
1
+ import { c as core, V as VoodooCollection } from './query-p04Fl8VW.js';
2
2
  import './http.js';
3
3
  import './utils.js';
4
4
  import './reactivity.js';
package/dist/essential.js CHANGED
@@ -1,15 +1,15 @@
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 } from './chunk-4MJIS5RZ.js';
2
- import './chunk-DNIQLT66.js';
3
- import { magic } from './chunk-5E3UZREN.js';
4
- import './chunk-246ZC2JD.js';
5
- import './chunk-RREZZ4FB.js';
6
- import './chunk-F3Z3HMZR.js';
7
- import './chunk-KQRWQPD6.js';
8
- import './chunk-D4DNTWIS.js';
9
- import './chunk-2UST7MKN.js';
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 } from './chunk-XG2UDP4O.js';
2
+ import './chunk-KE6WWJOB.js';
3
+ import { magic } from './chunk-32J7GDLD.js';
4
+ import './chunk-FITEA237.js';
5
+ import './chunk-TXWSOPF2.js';
6
+ import './chunk-OJDW7KXT.js';
7
+ import './chunk-J6RTM5P4.js';
8
+ import './chunk-GC3BKNPT.js';
9
+ import './chunk-BEQEBFQ2.js';
10
10
 
11
11
  /**
12
- * Voodoo.js v0.10.1
12
+ * Voodoo.js v0.11.1
13
13
  * JavaScript feels like magic.
14
14
  * (c) 2026 Voodoo.js contributors. MIT License.
15
15
  */
package/dist/gpu.cjs CHANGED
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  /**
6
- * Voodoo.js v0.10.1
6
+ * Voodoo.js v0.11.1
7
7
  * JavaScript feels like magic.
8
8
  * (c) 2026 Voodoo.js contributors. MIT License.
9
9
  */
package/dist/gpu.js CHANGED
@@ -1,15 +1,15 @@
1
- import { supported, clock, shared, gpu, surface, effect, frameLoop, frame } from './chunk-WYSN4IOV.js';
2
- export { clock, compute, describeWgslType, destroy, effect, findEntry, flattenValue, frame, frameLoop, gpu, inferStruct, init, packStruct, reflectBindings, reflectEntries, reflectStructs, reflectWgsl, resetShared, shared, splitTopLevel, stripWgslComments, supported, surface, target, uniforms, writeField, writeStruct } from './chunk-WYSN4IOV.js';
3
- import { http } from './chunk-DNIQLT66.js';
4
- import { originalAttributes, destroy } from './chunk-5E3UZREN.js';
5
- import { handleError } from './chunk-246ZC2JD.js';
6
- import { warn, describeElement } from './chunk-RREZZ4FB.js';
7
- import './chunk-F3Z3HMZR.js';
8
- import { defineDirective } from './chunk-D4DNTWIS.js';
9
- import './chunk-2UST7MKN.js';
1
+ import { supported, clock, shared, gpu, surface, effect, frameLoop, frame } from './chunk-OHSGDVPA.js';
2
+ export { clock, compute, describeWgslType, destroy, effect, findEntry, flattenValue, frame, frameLoop, gpu, inferStruct, init, packStruct, reflectBindings, reflectEntries, reflectStructs, reflectWgsl, resetShared, shared, splitTopLevel, stripWgslComments, supported, surface, target, uniforms, writeField, writeStruct } from './chunk-OHSGDVPA.js';
3
+ import { http } from './chunk-KE6WWJOB.js';
4
+ import { originalAttributes, destroy } from './chunk-32J7GDLD.js';
5
+ import { handleError } from './chunk-FITEA237.js';
6
+ import { warn, describeElement } from './chunk-TXWSOPF2.js';
7
+ import './chunk-OJDW7KXT.js';
8
+ import { defineDirective } from './chunk-GC3BKNPT.js';
9
+ import './chunk-BEQEBFQ2.js';
10
10
 
11
11
  /**
12
- * Voodoo.js v0.10.1
12
+ * Voodoo.js v0.11.1
13
13
  * JavaScript feels like magic.
14
14
  * (c) 2026 Voodoo.js contributors. MIT License.
15
15
  */
package/dist/http.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  /**
4
- * Voodoo.js v0.10.1
4
+ * Voodoo.js v0.11.1
5
5
  * JavaScript feels like magic.
6
6
  * (c) 2026 Voodoo.js contributors. MIT License.
7
7
  */
package/dist/http.js CHANGED
@@ -1,7 +1,7 @@
1
- export { HttpError, clearCache, flushOfflineQueue, http, request } from './chunk-DNIQLT66.js';
2
- import './chunk-RREZZ4FB.js';
3
- import './chunk-F3Z3HMZR.js';
4
- import './chunk-D4DNTWIS.js';
5
- import './chunk-2UST7MKN.js';
1
+ export { HttpError, clearCache, flushOfflineQueue, http, request } from './chunk-KE6WWJOB.js';
2
+ import './chunk-TXWSOPF2.js';
3
+ import './chunk-OJDW7KXT.js';
4
+ import './chunk-GC3BKNPT.js';
5
+ import './chunk-BEQEBFQ2.js';
6
6
  //# sourceMappingURL=http.js.map
7
7
  //# sourceMappingURL=http.js.map
package/dist/index.cjs CHANGED
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  /**
6
- * Voodoo.js v0.10.1
6
+ * Voodoo.js v0.11.1
7
7
  * JavaScript feels like magic.
8
8
  * (c) 2026 Voodoo.js contributors. MIT License.
9
9
  */
@@ -6778,7 +6778,7 @@ function data(values) {
6778
6778
  Object.defineProperties(rootScope.data, Object.getOwnPropertyDescriptors(values));
6779
6779
  return rootScope.data;
6780
6780
  }
6781
- var version2 = "0.10.1";
6781
+ var version2 = "0.11.1";
6782
6782
  var core = {
6783
6783
  // Utilities first: Voodoo's own names can override.
6784
6784
  ...utils_exports,
@@ -20791,6 +20791,30 @@ function collect(start2, offset) {
20791
20791
  if (!closed) return null;
20792
20792
  return { source, templates, nodes, tail };
20793
20793
  }
20794
+ function recoverFromTable(collected) {
20795
+ const empties = collected.source.match(/\(\s*\)/g);
20796
+ if (!empties) return false;
20797
+ const first = collected.nodes[0];
20798
+ const last = collected.nodes[collected.nodes.length - 1];
20799
+ const table = [last?.nextSibling, first?.previousSibling].map((from) => {
20800
+ let node = from ?? null;
20801
+ while (node && node.nodeType === Node.TEXT_NODE && !(node.textContent ?? "").trim()) {
20802
+ node = node === last?.nextSibling ? node.nextSibling : node.previousSibling;
20803
+ }
20804
+ return node && node.nodeType === Node.ELEMENT_NODE ? node : null;
20805
+ }).find((el) => el?.tagName === "TABLE");
20806
+ if (!table) return false;
20807
+ const body = table.querySelector("tbody");
20808
+ if (!body) return false;
20809
+ const rows = Array.from(body.children).filter((el) => el.tagName === "TR");
20810
+ if (rows.length !== empties.length) return false;
20811
+ let index = 0;
20812
+ collected.source = collected.source.replace(/\(\s*\)/g, () => `($t(${index++}, $__jsx))`);
20813
+ collected.templates = rows;
20814
+ collected.host = body;
20815
+ collected.nodes.push(...rows);
20816
+ return true;
20817
+ }
20794
20818
  function render2(value, templates, scope, out) {
20795
20819
  if (value == null || value === false || value === true) return;
20796
20820
  if (Array.isArray(value)) {
@@ -20832,7 +20856,11 @@ function applyRegions(root, parentScope) {
20832
20856
  continue;
20833
20857
  }
20834
20858
  const collected = collect(child, open);
20835
- if (!collected || collected.templates.length === 0) {
20859
+ if (!collected) {
20860
+ child = next;
20861
+ continue;
20862
+ }
20863
+ if (collected.templates.length === 0 && !recoverFromTable(collected)) {
20836
20864
  child = next;
20837
20865
  continue;
20838
20866
  }
@@ -20855,8 +20883,9 @@ function install(parent, collected, hint) {
20855
20883
  if (tail && tail.offset < (tail.node.textContent ?? "").length) {
20856
20884
  tail.node.splitText(tail.offset);
20857
20885
  }
20886
+ const target2 = collected.host ?? parent;
20858
20887
  const anchor = document.createComment("v-jsx");
20859
- parent.insertBefore(anchor, nodes[0]);
20888
+ target2.insertBefore(anchor, collected.host ? collected.host.firstChild : nodes[0]);
20860
20889
  for (const node of nodes) node.remove();
20861
20890
  let rendered = [];
20862
20891
  pending.push(() => activateRegion());
@@ -20872,7 +20901,7 @@ function install(parent, collected, hint) {
20872
20901
  render2(value, templates, local, out);
20873
20902
  for (const node of rendered) node.remove();
20874
20903
  rendered = out;
20875
- for (const node of out) parent.insertBefore(node, anchor);
20904
+ for (const node of out) target2.insertBefore(node, anchor);
20876
20905
  });
20877
20906
  addCleanup(anchor, () => {
20878
20907
  runner.effect.stop();
@@ -20883,10 +20912,14 @@ function install(parent, collected, hint) {
20883
20912
  function readDeclarationBlock(root = document.body) {
20884
20913
  for (const node of Array.from(root.childNodes)) {
20885
20914
  if (node.nodeType !== Node.TEXT_NODE) continue;
20886
- const text = (node.textContent ?? "").trim();
20887
- if (!text.startsWith("{") || !text.endsWith("}")) continue;
20888
- if (!/\b(const|let|var)\s/.test(text)) continue;
20889
- const body = text.slice(1, -1).replace(/\b(?:const|let|var)\s+/g, "");
20915
+ const raw = node.textContent ?? "";
20916
+ const open = raw.indexOf("{");
20917
+ if (open < 0) continue;
20918
+ const end = matchBrace(raw, open);
20919
+ if (end < 0) continue;
20920
+ const group = raw.slice(open, end + 1);
20921
+ if (!/\b(?:const|let|var)\s/.test(group)) continue;
20922
+ const body = group.slice(1, -1).replace(/\b(?:const|let|var)\s+/g, "");
20890
20923
  const data2 = reactive({});
20891
20924
  try {
20892
20925
  evaluate(parse(body), new Scope(data2));
@@ -20896,11 +20929,32 @@ function readDeclarationBlock(root = document.body) {
20896
20929
  }
20897
20930
  return null;
20898
20931
  }
20899
- node.remove();
20932
+ node.textContent = raw.slice(0, open) + raw.slice(end + 1);
20900
20933
  return data2;
20901
20934
  }
20902
20935
  return null;
20903
20936
  }
20937
+ function matchBrace(text, from) {
20938
+ let depth = 0;
20939
+ let quote = null;
20940
+ let escaped = false;
20941
+ for (let i = from; i < text.length; i++) {
20942
+ const ch = text[i];
20943
+ if (escaped) {
20944
+ escaped = false;
20945
+ continue;
20946
+ }
20947
+ if (quote) {
20948
+ if (ch === "\\") escaped = true;
20949
+ else if (ch === quote) quote = null;
20950
+ continue;
20951
+ }
20952
+ if (ch === '"' || ch === "'" || ch === "`") quote = ch;
20953
+ else if (ch === "{") depth++;
20954
+ else if (ch === "}" && --depth === 0) return i;
20955
+ }
20956
+ return -1;
20957
+ }
20904
20958
  function activateJsx() {
20905
20959
  const work = pending.splice(0, pending.length);
20906
20960
  for (const run of work) {
package/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { S as Scope, c as core, V as VoodooCollection } from './query-DiQAS73Q.cjs';
2
- export { A as App, a as AppOptions, C as ComponentDefinition, D as DirectiveBinding, b as DirectiveHooks, P as PRIORITY, R as Resource, d as ResourceOptions, e as VoodooConfig, f as VoodooPlugin, g as VoodooRuntimeError, h as VoodooSyntaxError, i as addCleanup, j as allStores, k as allowedGlobals, l as cache, m as clearParseCache, n as config, o as cookie, p as createApp, q as createResource, r as defineComponent, s as defineDirective, t as destroy, u as documentReady, v as ensureTokens, w as enter, x as evaluate, y as fadeIn, z as fadeOut, B as findScope, E as fromHtml, F as getScope, G as injectStyle, H as instances, I as leave, J as magic, K as magics, L as mountComponent, M as parse, N as query, O as ready, Q as refresh, T as removeStore, q as resource, U as rootScope, W as session, X as slideDown, Y as slideUp, Z as start, _ as storage, $ as store, a0 as storeNames, a1 as stringify, a2 as theme, a3 as toast, a4 as tokenize, a5 as url, a6 as viewTransition, a7 as walk, a8 as whenElement, a9 as whenReady } from './query-DiQAS73Q.cjs';
1
+ import { S as Scope, c as core, V as VoodooCollection } from './query-CbHihkvO.cjs';
2
+ export { A as App, a as AppOptions, C as ComponentDefinition, D as DirectiveBinding, b as DirectiveHooks, P as PRIORITY, R as Resource, d as ResourceOptions, e as VoodooConfig, f as VoodooPlugin, g as VoodooRuntimeError, h as VoodooSyntaxError, i as addCleanup, j as allStores, k as allowedGlobals, l as cache, m as clearParseCache, n as config, o as cookie, p as createApp, q as createResource, r as defineComponent, s as defineDirective, t as destroy, u as documentReady, v as ensureTokens, w as enter, x as evaluate, y as fadeIn, z as fadeOut, B as findScope, E as fromHtml, F as getScope, G as injectStyle, H as instances, I as leave, J as magic, K as magics, L as mountComponent, M as parse, N as query, O as ready, Q as refresh, T as removeStore, q as resource, U as rootScope, W as session, X as slideDown, Y as slideUp, Z as start, _ as storage, $ as store, a0 as storeNames, a1 as stringify, a2 as theme, a3 as toast, a4 as tokenize, a5 as url, a6 as viewTransition, a7 as walk, a8 as whenElement, a9 as whenReady } from './query-CbHihkvO.cjs';
3
3
  export { EffectScope, computed, effect, effectScope, flushSync, isReactive, markRaw, nextTick, reactive, ref, shallowRef, stop, toRaw, unref, watch, watchEffect } from './reactivity.cjs';
4
4
  export { HttpError, HttpMethod, HttpResponse, RequestConfig, http, request } from './http.cjs';
5
5
  export { R as RoomOptions, a as RoomState, S as SocketMessage, b as SocketOptions, c as SocketRoom, d as SocketState, e as SocketTransport, V as VoodooSocket, f as createSocket, s as socket, g as socketSupported } from './index-DTllqUtj.cjs';
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { S as Scope, c as core, V as VoodooCollection } from './query-Cf-7iibE.js';
2
- export { A as App, a as AppOptions, C as ComponentDefinition, D as DirectiveBinding, b as DirectiveHooks, P as PRIORITY, R as Resource, d as ResourceOptions, e as VoodooConfig, f as VoodooPlugin, g as VoodooRuntimeError, h as VoodooSyntaxError, i as addCleanup, j as allStores, k as allowedGlobals, l as cache, m as clearParseCache, n as config, o as cookie, p as createApp, q as createResource, r as defineComponent, s as defineDirective, t as destroy, u as documentReady, v as ensureTokens, w as enter, x as evaluate, y as fadeIn, z as fadeOut, B as findScope, E as fromHtml, F as getScope, G as injectStyle, H as instances, I as leave, J as magic, K as magics, L as mountComponent, M as parse, N as query, O as ready, Q as refresh, T as removeStore, q as resource, U as rootScope, W as session, X as slideDown, Y as slideUp, Z as start, _ as storage, $ as store, a0 as storeNames, a1 as stringify, a2 as theme, a3 as toast, a4 as tokenize, a5 as url, a6 as viewTransition, a7 as walk, a8 as whenElement, a9 as whenReady } from './query-Cf-7iibE.js';
1
+ import { S as Scope, c as core, V as VoodooCollection } from './query-p04Fl8VW.js';
2
+ export { A as App, a as AppOptions, C as ComponentDefinition, D as DirectiveBinding, b as DirectiveHooks, P as PRIORITY, R as Resource, d as ResourceOptions, e as VoodooConfig, f as VoodooPlugin, g as VoodooRuntimeError, h as VoodooSyntaxError, i as addCleanup, j as allStores, k as allowedGlobals, l as cache, m as clearParseCache, n as config, o as cookie, p as createApp, q as createResource, r as defineComponent, s as defineDirective, t as destroy, u as documentReady, v as ensureTokens, w as enter, x as evaluate, y as fadeIn, z as fadeOut, B as findScope, E as fromHtml, F as getScope, G as injectStyle, H as instances, I as leave, J as magic, K as magics, L as mountComponent, M as parse, N as query, O as ready, Q as refresh, T as removeStore, q as resource, U as rootScope, W as session, X as slideDown, Y as slideUp, Z as start, _ as storage, $ as store, a0 as storeNames, a1 as stringify, a2 as theme, a3 as toast, a4 as tokenize, a5 as url, a6 as viewTransition, a7 as walk, a8 as whenElement, a9 as whenReady } from './query-p04Fl8VW.js';
3
3
  export { EffectScope, computed, effect, effectScope, flushSync, isReactive, markRaw, nextTick, reactive, ref, shallowRef, stop, toRaw, unref, watch, watchEffect } from './reactivity.js';
4
4
  export { HttpError, HttpMethod, HttpResponse, RequestConfig, http, request } from './http.js';
5
5
  export { R as RoomOptions, a as RoomState, S as SocketMessage, b as SocketOptions, c as SocketRoom, d as SocketState, e as SocketTransport, V as VoodooSocket, f as createSocket, s as socket, g as socketSupported } from './index-DTllqUtj.js';