sibujs 4.2.0 → 4.4.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.
Files changed (69) hide show
  1. package/README.md +23 -4
  2. package/dist/browser.cjs +1 -1
  3. package/dist/browser.js +4 -4
  4. package/dist/build.cjs +30 -8
  5. package/dist/build.js +10 -10
  6. package/dist/cdn.dev.global.js +10 -10
  7. package/dist/cdn.full.dev.global.js +400 -0
  8. package/dist/cdn.full.global.js +398 -0
  9. package/dist/cdn.global.js +10 -10
  10. package/dist/{chunk-P3DHXBR6.js → chunk-36S2YPP4.js} +1 -1
  11. package/dist/{chunk-7ALC7KGE.js → chunk-3BTTCZ5J.js} +1 -1
  12. package/dist/{chunk-QL4UREZO.js → chunk-4Z3SPQ67.js} +3 -3
  13. package/dist/{chunk-XZ2N525U.js → chunk-6GSIXTWX.js} +4 -4
  14. package/dist/{chunk-7VEC3UD2.js → chunk-7GIHSAWB.js} +1 -1
  15. package/dist/{chunk-FOWBJZDL.js → chunk-7NBDXVHS.js} +1 -1
  16. package/dist/{chunk-HZEBO22J.js → chunk-ADM46X22.js} +38 -16
  17. package/dist/{chunk-QCFLDD7C.js → chunk-HFCOH2GN.js} +4 -4
  18. package/dist/{chunk-NEYWS4EX.js → chunk-HQSEH5F6.js} +3 -3
  19. package/dist/{chunk-OUWAIXIK.js → chunk-LQFGQNMV.js} +3 -3
  20. package/dist/{chunk-KE4KWRDY.js → chunk-LYVUX7NT.js} +2 -2
  21. package/dist/{chunk-BNKV4REK.js → chunk-M2F7TZHH.js} +2 -2
  22. package/dist/{chunk-HECVW343.js → chunk-NVNJH22U.js} +1 -1
  23. package/dist/{chunk-6ZGI3RBE.js → chunk-PNIRUQ4C.js} +2 -2
  24. package/dist/{chunk-VJE6DDYM.js → chunk-R25EFXXC.js} +40 -26
  25. package/dist/{chunk-BMYYZWHX.js → chunk-RR7M3FHM.js} +1 -1
  26. package/dist/{chunk-3VTSPNC5.js → chunk-SKPTERHP.js} +1 -1
  27. package/dist/{chunk-GDUNQCCW.js → chunk-UCALUKB5.js} +4 -4
  28. package/dist/{chunk-HJEPKZ2O.js → chunk-VCTAEPSB.js} +1 -1
  29. package/dist/{chunk-2LOYNGBY.js → chunk-W2EQ7X2L.js} +1 -1
  30. package/dist/{chunk-SF3TB4K6.js → chunk-XLO7SLIX.js} +5 -5
  31. package/dist/{contracts-Hg6ITAEF.d.cts → contracts-DBdg9J_a.d.cts} +25 -4
  32. package/dist/{contracts-Hg6ITAEF.d.ts → contracts-DBdg9J_a.d.ts} +25 -4
  33. package/dist/data.cjs +1 -1
  34. package/dist/data.js +6 -6
  35. package/dist/devtools.cjs +1 -1
  36. package/dist/devtools.js +4 -4
  37. package/dist/ecosystem.cjs +1 -1
  38. package/dist/ecosystem.js +7 -7
  39. package/dist/extras.cjs +36 -27
  40. package/dist/extras.d.cts +1 -1
  41. package/dist/extras.d.ts +1 -1
  42. package/dist/extras.js +20 -20
  43. package/dist/index.cjs +30 -8
  44. package/dist/index.d.cts +36 -4
  45. package/dist/index.d.ts +36 -4
  46. package/dist/index.js +10 -10
  47. package/dist/motion.cjs +1 -1
  48. package/dist/motion.js +3 -3
  49. package/dist/patterns.cjs +36 -27
  50. package/dist/patterns.d.cts +1 -1
  51. package/dist/patterns.d.ts +1 -1
  52. package/dist/patterns.js +6 -6
  53. package/dist/performance.cjs +1 -1
  54. package/dist/performance.js +4 -4
  55. package/dist/plugins.cjs +4 -3
  56. package/dist/plugins.d.cts +10 -2
  57. package/dist/plugins.d.ts +10 -2
  58. package/dist/plugins.js +9 -8
  59. package/dist/ssr.cjs +1 -1
  60. package/dist/ssr.js +7 -7
  61. package/dist/testing.cjs +1 -1
  62. package/dist/testing.js +2 -2
  63. package/dist/ui.cjs +36 -27
  64. package/dist/ui.d.cts +1 -1
  65. package/dist/ui.d.ts +1 -1
  66. package/dist/ui.js +7 -7
  67. package/dist/widgets.cjs +1 -1
  68. package/dist/widgets.js +6 -6
  69. package/package.json +7 -1
@@ -597,7 +597,7 @@ function forEachSubscriber(signal2, visit) {
597
597
  }
598
598
 
599
599
  // src/reactivity/track.ts
600
- var _runtimeVersion = true ? "4.2.0" : "dev";
600
+ var _runtimeVersion = true ? "4.4.0" : "dev";
601
601
  var REGISTRY_KEY = /* @__PURE__ */ Symbol.for("sibujs.reactive.v1");
602
602
  function resolveReactiveApi() {
603
603
  const g = globalThis;
package/dist/ecosystem.js CHANGED
@@ -7,18 +7,18 @@ import {
7
7
  mobXAdapter,
8
8
  reduxAdapter,
9
9
  zustandAdapter
10
- } from "./chunk-GDUNQCCW.js";
10
+ } from "./chunk-UCALUKB5.js";
11
11
  import "./chunk-WWV3SJ3L.js";
12
- import "./chunk-6ZGI3RBE.js";
13
- import "./chunk-HJEPKZ2O.js";
14
- import "./chunk-2LOYNGBY.js";
12
+ import "./chunk-PNIRUQ4C.js";
13
+ import "./chunk-VCTAEPSB.js";
14
+ import "./chunk-W2EQ7X2L.js";
15
15
  import "./chunk-IXKSNWV5.js";
16
16
  import "./chunk-7ZHH77QA.js";
17
- import "./chunk-7VEC3UD2.js";
17
+ import "./chunk-7GIHSAWB.js";
18
18
  import "./chunk-5DXA2J44.js";
19
19
  import "./chunk-QKRPLZ2V.js";
20
- import "./chunk-HECVW343.js";
21
- import "./chunk-7ALC7KGE.js";
20
+ import "./chunk-NVNJH22U.js";
21
+ import "./chunk-3BTTCZ5J.js";
22
22
  import "./chunk-2WLZ6757.js";
23
23
  export {
24
24
  antdAdapter,
package/dist/extras.cjs CHANGED
@@ -888,7 +888,7 @@ function forEachSubscriber(signal2, visit) {
888
888
  }
889
889
 
890
890
  // src/reactivity/track.ts
891
- var _runtimeVersion = true ? "4.2.0" : "dev";
891
+ var _runtimeVersion = true ? "4.4.0" : "dev";
892
892
  var REGISTRY_KEY = /* @__PURE__ */ Symbol.for("sibujs.reactive.v1");
893
893
  function resolveReactiveApi() {
894
894
  const g2 = globalThis;
@@ -5122,31 +5122,39 @@ var validators = {
5122
5122
  };
5123
5123
  function validateProps(props, schema) {
5124
5124
  const result = { ...props };
5125
- const errors = [];
5126
- const isDev2 = typeof process === "undefined" || process?.env?.NODE_ENV !== "production";
5127
- for (const [key, def] of Object.entries(schema)) {
5128
- const propDef = typeof def === "function" ? { type: def } : def;
5129
- if (result[key] == null && propDef.default !== void 0) {
5130
- result[key] = typeof propDef.default === "function" ? propDef.default() : propDef.default;
5131
- }
5132
- if (!isDev2) continue;
5133
- if (propDef.required && result[key] == null) {
5134
- errors.push(`Prop '${key}' is required`);
5135
- continue;
5136
- }
5137
- if (result[key] == null) continue;
5138
- if (propDef.type) {
5139
- const typeResult = propDef.type(result[key], key);
5140
- if (typeResult !== true) errors.push(typeResult);
5125
+ if (typeof __SIBU_DEV__ !== "undefined" ? __SIBU_DEV__ : DEV) {
5126
+ const errors = [];
5127
+ for (const [key, def] of Object.entries(schema)) {
5128
+ const propDef = typeof def === "function" ? { type: def } : def;
5129
+ if (result[key] == null && propDef.default !== void 0) {
5130
+ result[key] = typeof propDef.default === "function" ? propDef.default() : propDef.default;
5131
+ }
5132
+ if (propDef.required && result[key] == null) {
5133
+ errors.push(`Prop '${key}' is required`);
5134
+ continue;
5135
+ }
5136
+ if (result[key] == null) continue;
5137
+ if (propDef.type) {
5138
+ const typeResult = propDef.type(result[key], key);
5139
+ if (typeResult !== true) errors.push(typeResult);
5140
+ }
5141
+ if (propDef.validator) {
5142
+ const validResult = propDef.validator(result[key], key);
5143
+ if (validResult !== true) errors.push(validResult);
5144
+ }
5141
5145
  }
5142
- if (propDef.validator) {
5143
- const validResult = propDef.validator(result[key], key);
5144
- if (validResult !== true) errors.push(validResult);
5146
+ if (errors.length > 0) {
5147
+ devWarn(`Prop validation errors:
5148
+ ${errors.map((e) => ` - ${e}`).join("\n")}`);
5145
5149
  }
5150
+ return result;
5146
5151
  }
5147
- if (errors.length > 0 && isDev2) {
5148
- console.warn(`[SibuJS] Prop validation errors:
5149
- ${errors.map((e) => ` - ${e}`).join("\n")}`);
5152
+ for (const [key, def] of Object.entries(schema)) {
5153
+ if (typeof def === "function") continue;
5154
+ const fallback = def.default;
5155
+ if (result[key] == null && fallback !== void 0) {
5156
+ result[key] = typeof fallback === "function" ? fallback() : fallback;
5157
+ }
5150
5158
  }
5151
5159
  return result;
5152
5160
  }
@@ -5157,10 +5165,11 @@ function defineStrictComponent(config) {
5157
5165
  };
5158
5166
  }
5159
5167
  function assertType(value, validator, label2) {
5160
- if (typeof process !== "undefined" && process?.env?.NODE_ENV === "production") return;
5161
- const result = validator(value, label2 || "value");
5162
- if (result !== true) {
5163
- throw new TypeError(`[SibuJS Contract] ${result}`);
5168
+ if (typeof __SIBU_DEV__ !== "undefined" ? __SIBU_DEV__ : DEV) {
5169
+ const result = validator(value, label2 || "value");
5170
+ if (result !== true) {
5171
+ throw new TypeError(`[SibuJS Contract] ${result}`);
5172
+ }
5164
5173
  }
5165
5174
  }
5166
5175
  function createGuard(validator) {
package/dist/extras.d.cts CHANGED
@@ -1,7 +1,7 @@
1
1
  export { ConflictStrategy, InfiniteQueryOptions, InfiniteQueryResult, LoaderRoute, MutationOptions, MutationResult, OfflineStore, OfflineStoreOptions, QueryOptions, QueryResult, Resource, ResourceOptions, RetryOptions, RouteLoaderFn, SyncAdapter, SyncChange, SyncConflict, SyncResult, __resetQueryCache, calculateDelay, clearQueryCache, debounce, executeLoader, getQueryData, infiniteQuery, invalidateQueries, loaderData, mutation, offlineStore, preloadRoute, previous, query, resource, setQueryData, socket, stream, syncAdapter, throttle, withRetry } from './data.cjs';
2
2
  export { AnimationFrameOptions, BoundsRect, GamepadSnapshot, ImageLoaderState, KeyboardOptions, MouseOptions, MutationObserverOptions, SpeakOptions, SwipeDirection, SwipeOptions, TextSelectionState, UrlStateOptions, animationFrame, battery, bounds, broadcast, clipboard, colorScheme, draggable, dropZone, favicon, formatCurrency, formatNumber, fullscreen, gamepad, geo, idle, imageLoader, keyboard, media, mouse, mutationObserver, network, online, permissions, pointerLock, resize, scroll, speech, svgFavicon, swipe, textSelection, title, urlState, vibrate, visibility, wakeLock, windowSize } from './browser.cjs';
3
3
  export { GlobalStore, MachineConfig, MachineReturn, Middleware, PersistOptions, Selector, StoreActionMap, TimeTravelReturn, globalStore, machine, optimistic, optimisticList, persisted, timeline } from './patterns.cjs';
4
- export { C as ComponentProps, P as PropDef, a as PropSchema, R as RenderProp, V as Validator, b as assertType, c as compose, d as createGuard, e as createSlots, f as defineComponent, g as defineSlottedComponent, h as defineStrictComponent, v as validateProps, i as validators, w as withBoundary, j as withDefaults, k as withProps, l as withWrapper } from './contracts-Hg6ITAEF.cjs';
4
+ export { C as ComponentProps, P as PropDef, a as PropSchema, R as RenderProp, V as Validator, b as assertType, c as compose, d as createGuard, e as createSlots, f as defineComponent, g as defineSlottedComponent, h as defineStrictComponent, v as validateProps, i as validators, w as withBoundary, j as withDefaults, k as withProps, l as withWrapper } from './contracts-DBdg9J_a.cjs';
5
5
  export { AnimationPreset, PresetOptions, SlideDirection, SpringOptions, TransitionGroup, TransitionGroupOptions, TransitionOptions, animate, bounceIn, bounceOut, fadeIn, fadeOut, flipIn, prefersReducedMotion, pulse, reducedMotion, scaleDown, scaleUp, sequence, shake, slideIn, slideOut, spring, springSignal, stagger, transition, viewTransition } from './motion.cjs';
6
6
  export { A as AttributeSource, a as AttributeValue, B as BoundFieldProps, C as CustomElementOptions, F as FieldConfig, b as FocusTrap, c as FormConfig, d as FormField, e as FormReturn, I as IntersectionResult, M as MaskOptions, T as Toast, f as ToastInstance, V as ValidatorFn, g as VirtualList, h as VirtualListProps, _ as __resetDialogStack, i as announce, j as aria, k as bindAttrs, l as bindBoolAttr, m as bindData, n as bindField, o as creditCardMask, p as custom, q as dateMask, r as defineElement, s as dialog, t as email, u as eventBus, v as focus, w as form, x as hotkey, y as infiniteScroll, z as inputMask, D as intersection, E as lazyLoad, G as matchesPattern, H as max, J as maxLength, K as min, L as minLength, N as pagination, O as phoneMask, P as removeScopedStyle, Q as required, R as scopedStyle, S as ssnMask, U as svgElement, W as timeMask, X as toast, Y as withScopedStyle, Z as zipMask } from './customElement-CNZxEB9G.cjs';
7
7
  export { ChunkConfig, DOMPool, Features, NormalizeResult, NormalizedEntities, NormalizedSchema, NormalizedState, NormalizedStoreActions, Priority, PriorityLevel, block, cloneTemplate, conditional, createChunkRegistry, deferredValue, denormalize, devOnly, flushScheduler, getDOMPool, hoistable, lazyChunk, noSideEffect, normalize, normalizedStore, pendingTasks, precompile, prefetch, preloadImage, preloadModule, preloadModules, preloadResource, processInChunks, pure, resetIdCounter, scheduleUpdate, setIdPrefix, startTransition, staticTemplate, transitionState, uniqueId, yieldToMain } from './performance.cjs';
package/dist/extras.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export { ConflictStrategy, InfiniteQueryOptions, InfiniteQueryResult, LoaderRoute, MutationOptions, MutationResult, OfflineStore, OfflineStoreOptions, QueryOptions, QueryResult, Resource, ResourceOptions, RetryOptions, RouteLoaderFn, SyncAdapter, SyncChange, SyncConflict, SyncResult, __resetQueryCache, calculateDelay, clearQueryCache, debounce, executeLoader, getQueryData, infiniteQuery, invalidateQueries, loaderData, mutation, offlineStore, preloadRoute, previous, query, resource, setQueryData, socket, stream, syncAdapter, throttle, withRetry } from './data.js';
2
2
  export { AnimationFrameOptions, BoundsRect, GamepadSnapshot, ImageLoaderState, KeyboardOptions, MouseOptions, MutationObserverOptions, SpeakOptions, SwipeDirection, SwipeOptions, TextSelectionState, UrlStateOptions, animationFrame, battery, bounds, broadcast, clipboard, colorScheme, draggable, dropZone, favicon, formatCurrency, formatNumber, fullscreen, gamepad, geo, idle, imageLoader, keyboard, media, mouse, mutationObserver, network, online, permissions, pointerLock, resize, scroll, speech, svgFavicon, swipe, textSelection, title, urlState, vibrate, visibility, wakeLock, windowSize } from './browser.js';
3
3
  export { GlobalStore, MachineConfig, MachineReturn, Middleware, PersistOptions, Selector, StoreActionMap, TimeTravelReturn, globalStore, machine, optimistic, optimisticList, persisted, timeline } from './patterns.js';
4
- export { C as ComponentProps, P as PropDef, a as PropSchema, R as RenderProp, V as Validator, b as assertType, c as compose, d as createGuard, e as createSlots, f as defineComponent, g as defineSlottedComponent, h as defineStrictComponent, v as validateProps, i as validators, w as withBoundary, j as withDefaults, k as withProps, l as withWrapper } from './contracts-Hg6ITAEF.js';
4
+ export { C as ComponentProps, P as PropDef, a as PropSchema, R as RenderProp, V as Validator, b as assertType, c as compose, d as createGuard, e as createSlots, f as defineComponent, g as defineSlottedComponent, h as defineStrictComponent, v as validateProps, i as validators, w as withBoundary, j as withDefaults, k as withProps, l as withWrapper } from './contracts-DBdg9J_a.js';
5
5
  export { AnimationPreset, PresetOptions, SlideDirection, SpringOptions, TransitionGroup, TransitionGroupOptions, TransitionOptions, animate, bounceIn, bounceOut, fadeIn, fadeOut, flipIn, prefersReducedMotion, pulse, reducedMotion, scaleDown, scaleUp, sequence, shake, slideIn, slideOut, spring, springSignal, stagger, transition, viewTransition } from './motion.js';
6
6
  export { A as AttributeSource, a as AttributeValue, B as BoundFieldProps, C as CustomElementOptions, F as FieldConfig, b as FocusTrap, c as FormConfig, d as FormField, e as FormReturn, I as IntersectionResult, M as MaskOptions, T as Toast, f as ToastInstance, V as ValidatorFn, g as VirtualList, h as VirtualListProps, _ as __resetDialogStack, i as announce, j as aria, k as bindAttrs, l as bindBoolAttr, m as bindData, n as bindField, o as creditCardMask, p as custom, q as dateMask, r as defineElement, s as dialog, t as email, u as eventBus, v as focus, w as form, x as hotkey, y as infiniteScroll, z as inputMask, D as intersection, E as lazyLoad, G as matchesPattern, H as max, J as maxLength, K as min, L as minLength, N as pagination, O as phoneMask, P as removeScopedStyle, Q as required, R as scopedStyle, S as ssnMask, U as svgElement, W as timeMask, X as toast, Y as withScopedStyle, Z as zipMask } from './customElement-CNZxEB9G.js';
7
7
  export { ChunkConfig, DOMPool, Features, NormalizeResult, NormalizedEntities, NormalizedSchema, NormalizedState, NormalizedStoreActions, Priority, PriorityLevel, block, cloneTemplate, conditional, createChunkRegistry, deferredValue, denormalize, devOnly, flushScheduler, getDOMPool, hoistable, lazyChunk, noSideEffect, normalize, normalizedStore, pendingTasks, precompile, prefetch, preloadImage, preloadModule, preloadModules, preloadResource, processInChunks, pure, resetIdCounter, scheduleUpdate, setIdPrefix, startTransition, staticTemplate, transitionState, uniqueId, yieldToMain } from './performance.js';
package/dist/extras.js CHANGED
@@ -5,7 +5,7 @@ import {
5
5
  optimisticList,
6
6
  persisted,
7
7
  timeline
8
- } from "./chunk-OUWAIXIK.js";
8
+ } from "./chunk-LQFGQNMV.js";
9
9
  import {
10
10
  DOMPool,
11
11
  Features,
@@ -41,7 +41,7 @@ import {
41
41
  transitionState,
42
42
  uniqueId,
43
43
  yieldToMain
44
- } from "./chunk-BNKV4REK.js";
44
+ } from "./chunk-M2F7TZHH.js";
45
45
  import {
46
46
  VERSION,
47
47
  bundlerMetadata,
@@ -88,7 +88,7 @@ import {
88
88
  wasm,
89
89
  worker,
90
90
  workerFn
91
- } from "./chunk-NEYWS4EX.js";
91
+ } from "./chunk-HQSEH5F6.js";
92
92
  import {
93
93
  FocusTrap,
94
94
  VirtualList,
@@ -129,7 +129,7 @@ import {
129
129
  toast,
130
130
  withScopedStyle,
131
131
  zipMask
132
- } from "./chunk-SF3TB4K6.js";
132
+ } from "./chunk-XLO7SLIX.js";
133
133
  import {
134
134
  RenderProp,
135
135
  assertType,
@@ -145,7 +145,7 @@ import {
145
145
  withDefaults,
146
146
  withProps,
147
147
  withWrapper
148
- } from "./chunk-VJE6DDYM.js";
148
+ } from "./chunk-R25EFXXC.js";
149
149
  import {
150
150
  accordion,
151
151
  combobox,
@@ -156,7 +156,7 @@ import {
156
156
  select,
157
157
  tabs,
158
158
  tooltip
159
- } from "./chunk-QCFLDD7C.js";
159
+ } from "./chunk-HFCOH2GN.js";
160
160
  import {
161
161
  animationFrame,
162
162
  battery,
@@ -194,7 +194,7 @@ import {
194
194
  visibility,
195
195
  wakeLock,
196
196
  windowSize
197
- } from "./chunk-KE4KWRDY.js";
197
+ } from "./chunk-LYVUX7NT.js";
198
198
  import "./chunk-H3SRKIYX.js";
199
199
  import "./chunk-52XFPGSN.js";
200
200
  import {
@@ -219,7 +219,7 @@ import {
219
219
  syncAdapter,
220
220
  throttle,
221
221
  withRetry
222
- } from "./chunk-XZ2N525U.js";
222
+ } from "./chunk-6GSIXTWX.js";
223
223
  import {
224
224
  SibuError,
225
225
  checkLeaks,
@@ -257,7 +257,7 @@ import {
257
257
  trackCleanup,
258
258
  walkDependencyGraph,
259
259
  withErrorTracking
260
- } from "./chunk-QL4UREZO.js";
260
+ } from "./chunk-4Z3SPQ67.js";
261
261
  import {
262
262
  antdAdapter,
263
263
  chakraAdapter,
@@ -267,7 +267,7 @@ import {
267
267
  mobXAdapter,
268
268
  reduxAdapter,
269
269
  zustandAdapter
270
- } from "./chunk-GDUNQCCW.js";
270
+ } from "./chunk-UCALUKB5.js";
271
271
  import {
272
272
  createPlugin,
273
273
  createPluginRegistry,
@@ -279,7 +279,7 @@ import {
279
279
  triggerPluginMount,
280
280
  triggerPluginUnmount
281
281
  } from "./chunk-WWV3SJ3L.js";
282
- import "./chunk-P3DHXBR6.js";
282
+ import "./chunk-36S2YPP4.js";
283
283
  import {
284
284
  collectStream,
285
285
  deserializeState,
@@ -300,15 +300,15 @@ import {
300
300
  suspenseSwapScript,
301
301
  trustHTML
302
302
  } from "./chunk-NIOYEGBQ.js";
303
- import "./chunk-BMYYZWHX.js";
303
+ import "./chunk-RR7M3FHM.js";
304
304
  import "./chunk-CCSJMTRN.js";
305
- import "./chunk-FOWBJZDL.js";
306
- import "./chunk-6ZGI3RBE.js";
307
- import "./chunk-HJEPKZ2O.js";
308
- import "./chunk-2LOYNGBY.js";
305
+ import "./chunk-7NBDXVHS.js";
306
+ import "./chunk-PNIRUQ4C.js";
307
+ import "./chunk-VCTAEPSB.js";
308
+ import "./chunk-W2EQ7X2L.js";
309
309
  import "./chunk-IXKSNWV5.js";
310
310
  import "./chunk-7ZHH77QA.js";
311
- import "./chunk-7VEC3UD2.js";
311
+ import "./chunk-7GIHSAWB.js";
312
312
  import "./chunk-5DXA2J44.js";
313
313
  import {
314
314
  TransitionGroup,
@@ -332,10 +332,10 @@ import {
332
332
  stagger,
333
333
  transition,
334
334
  viewTransition
335
- } from "./chunk-3VTSPNC5.js";
335
+ } from "./chunk-SKPTERHP.js";
336
336
  import "./chunk-QKRPLZ2V.js";
337
- import "./chunk-HECVW343.js";
338
- import "./chunk-7ALC7KGE.js";
337
+ import "./chunk-NVNJH22U.js";
338
+ import "./chunk-3BTTCZ5J.js";
339
339
  import "./chunk-2WLZ6757.js";
340
340
  export {
341
341
  DOMPool,
package/dist/index.cjs CHANGED
@@ -1210,7 +1210,7 @@ function forEachSubscriber(signal2, visit) {
1210
1210
  }
1211
1211
 
1212
1212
  // src/reactivity/track.ts
1213
- var _runtimeVersion = true ? "4.2.0" : "dev";
1213
+ var _runtimeVersion = true ? "4.4.0" : "dev";
1214
1214
  var REGISTRY_KEY = /* @__PURE__ */ Symbol.for("sibujs.reactive.v1");
1215
1215
  function resolveReactiveApi() {
1216
1216
  const g2 = globalThis;
@@ -5256,7 +5256,16 @@ function enhance(target, setup) {
5256
5256
  const teardowns = [];
5257
5257
  const owner = /* @__PURE__ */ Symbol("sibujs.enhance");
5258
5258
  let disposed = false;
5259
- const bind = (target_, fn) => {
5259
+ let closed = false;
5260
+ const isClosed = (method) => {
5261
+ if (!closed) return false;
5262
+ devWarnLazy(
5263
+ () => `enhance: ctx.${method}() was called after this enhancement was rolled back or disposed, so it was ignored. The setup is still running past the point where its transaction ended \u2014 usually an async setup continuing after an await, or a callback it queued before it threw. Registrations made now would belong to nothing: the root carries no enhancement marker and the disposer has already run, so nothing could ever release them.`
5264
+ );
5265
+ return true;
5266
+ };
5267
+ const bind = (method, target_, fn) => {
5268
+ if (isClosed(method)) return;
5260
5269
  const el = resolveTarget(root, target_);
5261
5270
  if (!el) {
5262
5271
  if (typeof console !== "undefined") {
@@ -5278,14 +5287,14 @@ function enhance(target, setup) {
5278
5287
  }
5279
5288
  },
5280
5289
  on: (t, event, handler, options) => {
5281
- bind(t, (el) => {
5290
+ bind("on", t, (el) => {
5282
5291
  const wrapped = (e) => handler(e, el);
5283
5292
  el.addEventListener(event, wrapped, options);
5284
5293
  teardowns.push(() => el.removeEventListener(event, wrapped, options));
5285
5294
  });
5286
5295
  },
5287
5296
  text: (t, value) => {
5288
- bind(t, (el) => {
5297
+ bind("text", t, (el) => {
5289
5298
  teardowns.push(
5290
5299
  bindNode(el, () => {
5291
5300
  const v = value();
@@ -5296,7 +5305,7 @@ function enhance(target, setup) {
5296
5305
  });
5297
5306
  },
5298
5307
  attr: (t, name, value) => {
5299
- bind(t, (el) => {
5308
+ bind("attr", t, (el) => {
5300
5309
  teardowns.push(
5301
5310
  bindNode(el, () => {
5302
5311
  const v = value();
@@ -5307,7 +5316,7 @@ function enhance(target, setup) {
5307
5316
  });
5308
5317
  },
5309
5318
  classed: (t, name, on2) => {
5310
- bind(t, (el) => {
5319
+ bind("classed", t, (el) => {
5311
5320
  teardowns.push(
5312
5321
  bindNode(el, () => {
5313
5322
  el.classList.toggle(name, Boolean(on2()));
@@ -5316,7 +5325,7 @@ function enhance(target, setup) {
5316
5325
  });
5317
5326
  },
5318
5327
  show: (t, when2) => {
5319
- bind(t, (el) => {
5328
+ bind("show", t, (el) => {
5320
5329
  const prevHidden = el.hidden;
5321
5330
  teardowns.push(
5322
5331
  bindNode(el, () => {
@@ -5329,7 +5338,7 @@ function enhance(target, setup) {
5329
5338
  });
5330
5339
  },
5331
5340
  model: (t, state2, options) => {
5332
- bind(t, (el) => {
5341
+ bind("model", t, (el) => {
5333
5342
  const control = el;
5334
5343
  const [get, set] = state2;
5335
5344
  const evt = options?.event ?? (control instanceof HTMLSelectElement || control instanceof HTMLInputElement && (control.type === "checkbox" || control.type === "radio") ? "change" : "input");
@@ -5344,6 +5353,7 @@ function enhance(target, setup) {
5344
5353
  });
5345
5354
  },
5346
5355
  each: (target_, describe2) => {
5356
+ if (isClosed("each")) return;
5347
5357
  devAssert(typeof describe2 === "function", "ctx.each: second argument must be a function.");
5348
5358
  const elements = typeof target_ === "string" ? ctx.refs(target_) : Array.from(target_);
5349
5359
  for (let i2 = 0; i2 < elements.length; i2++) {
@@ -5354,14 +5364,25 @@ function enhance(target, setup) {
5354
5364
  }
5355
5365
  },
5356
5366
  cleanup: (fn) => {
5367
+ if (isClosed("cleanup")) return;
5357
5368
  teardowns.push(fn);
5358
5369
  }
5359
5370
  };
5360
5371
  let extra;
5361
5372
  try {
5362
5373
  extra = setup(ctx);
5374
+ const returned = extra;
5375
+ if (returned && typeof returned.then === "function") {
5376
+ returned.then(void 0, (reason) => {
5377
+ devWarnLazy(() => `enhance: the promise returned by the setup also rejected: ${String(reason)}`);
5378
+ });
5379
+ throw new Error(
5380
+ (typeof __SIBU_DEV__ !== "undefined" ? __SIBU_DEV__ : DEV) ? "[SibuJS enhance] the setup returned a promise, so its work did not complete inside the enhancement transaction. If it is a lazy import, register it as lazyIsland(() => import(\u2026)): an unwrapped loader is called as a setup, so its module is fetched but the setup it resolves to is discarded. If it is an async setup, make it synchronous \u2014 this enhancement has been rolled back, and ctx registrations made after this point are ignored." : "[SibuJS enhance] setup returned a promise"
5381
+ );
5382
+ }
5363
5383
  } catch (err) {
5364
5384
  drainTeardowns(teardowns, "enhance");
5385
+ closed = true;
5365
5386
  throw err;
5366
5387
  }
5367
5388
  if (typeof extra === "function") teardowns.push(extra);
@@ -5374,6 +5395,7 @@ function enhance(target, setup) {
5374
5395
  }
5375
5396
  unregisterDisposer(root, dispose2);
5376
5397
  drainTeardowns(teardowns, "enhance");
5398
+ closed = true;
5377
5399
  };
5378
5400
  registerDisposer(root, dispose2);
5379
5401
  enhancementOwner.set(root, owner);
package/dist/index.d.cts CHANGED
@@ -1984,8 +1984,40 @@ type IslandStrategy = "load" | "idle" | "visible" | "interaction" | "media";
1984
1984
  type IslandLoader = () => Promise<EnhanceSetup | {
1985
1985
  default: EnhanceSetup;
1986
1986
  }>;
1987
- /** Either an inline setup, or a {@link lazyIsland}-branded loader. */
1988
- type IslandRegistration = EnhanceSetup | IslandLoader;
1987
+ /**
1988
+ * A loader that has been through {@link lazyIsland}.
1989
+ *
1990
+ * Exported for callers that want to be explicit about having wrapped one. It is
1991
+ * NOT required by {@link IslandRegistration}, and that is deliberate.
1992
+ *
1993
+ * Requiring the brand would catch a forgotten `lazyIsland(...)` at compile time,
1994
+ * which is where a mistake is cheapest to find — but it also rejects code that
1995
+ * compiles today, and this package's contract is that the existing public API
1996
+ * keeps working, widening rather than replacing, with a codemod for anything
1997
+ * that cannot be widened. There is no codemod infrastructure here to ship one
1998
+ * through, so the narrowing is not taken: the mistake is caught at mount time
1999
+ * instead, by the thenable guard in `enhance()`, which throws immediately with
2000
+ * an actionable message and leaves the element unenhanced. Loud and instant at
2001
+ * runtime beats a type error that arrives with a breaking change attached.
2002
+ *
2003
+ * The brand is a phantom STRING-keyed property, never a `unique symbol`. A
2004
+ * `unique symbol` has nominal identity per declaration, so two copies of this
2005
+ * package's `.d.ts` in one dependency tree would produce two incompatible
2006
+ * types. That is not hypothetical: the registry is deliberately shared through
2007
+ * `Symbol.for` precisely because duplicate copies are expected. The property
2008
+ * exists only in the type — the runtime marker is the global symbol below.
2009
+ */
2010
+ type LazyIslandLoader = IslandLoader & {
2011
+ readonly __sibujsLazyIsland: true;
2012
+ };
2013
+ /**
2014
+ * Either an inline setup, or a loader.
2015
+ *
2016
+ * Unchanged from 4.2: an unbranded `IslandLoader` is still accepted, so no
2017
+ * previously-compiling code breaks. Wrapping with {@link lazyIsland} is what
2018
+ * makes it *work* — see {@link LazyIslandLoader} for why this is not narrowed.
2019
+ */
2020
+ type IslandRegistration = EnhanceSetup | IslandLoader | LazyIslandLoader;
1989
2021
  /**
1990
2022
  * Mark a loader as lazy island code — its module is fetched only when the island
1991
2023
  * activates, so a page ships ~0 JS for islands that never trigger.
@@ -1995,7 +2027,7 @@ type IslandRegistration = EnhanceSetup | IslandLoader;
1995
2027
  * registerIsland("chart", lazyIsland(() => import("./islands/chart.js")));
1996
2028
  * ```
1997
2029
  */
1998
- declare function lazyIsland(loader: IslandLoader): IslandLoader;
2030
+ declare function lazyIsland(loader: IslandLoader): LazyIslandLoader;
1999
2031
  /**
2000
2032
  * Register an island by name. The setup is applied via `enhance()` when a
2001
2033
  * matching `[data-sibu-island="name"]` element activates.
@@ -2274,4 +2306,4 @@ declare const untracked: ReactiveApi["untracked"];
2274
2306
  declare const retrack: ReactiveApi["retrack"];
2275
2307
  declare const setMaxDrainIterations: ReactiveApi["setMaxDrainIterations"];
2276
2308
 
2277
- export { type Accessor, type ActionFn, type AnchorProps, type ArrayActions, type AsyncDerivedContext, type AsyncDerivedState, type AudioProps, type ButtonProps, type Context, DynamicComponent, type EachBindings, type EachEventBindings, type EffectBody, type EffectOptions, type EnhanceContext, type EnhanceSetup, ErrorBoundary, type ErrorBoundaryOptions, type ErrorBoundaryProps, ErrorDisplay, type ErrorDisplayProps, type ErrorSeverity, type ExternalSource, type FormProps, Fragment, type ImgProps, type InputProps, type InputType, type IslandLoader, type IslandRegistration, type IslandStrategy, KeepAlive, type KeepAliveOptions, type LabelProps, Loading, type LoadingProps, type LongPressOptions, MAX_DRAIN_TEARDOWNS, type MediaProps, type MountIslandsOptions, NodeChild, NodeChildren, type OnCleanup, type OptionProps, Portal, type Ref, type RuntimeErrorContext, type RuntimeErrorHandler, type RuntimeErrorPhase, type SSRStore, type SelectProps, type SignalOptions, type SlotFn, type Slots, type StoreActions, Suspense, type SuspenseProps, TagProps, type TextareaProps, type TypedTagFunction, type VideoProps, __resetIdCounter, a, abbr, action, address, area, array, article, aside, asyncDerived, audio, autoResize, b, base, batch, bdi, bdo, bindDynamic, blockquote, body, br, button, canvas, caption, catchError, catchErrorAsync, center, checkLeaks, circle, cite, clickOutside, clipPath, code, col, colgroup, context, copyOnClick, createId, customElement, data, datalist, dd, deepEqual, deepSignal, defer, defs, del, derived, details, dfn, dialog, disableSSR, dispose, div, dl, dt, each, effect, ellipse, em, embed, enableSSR, enhance, enhanceAll, enqueueBatchedSignal, external, fieldset, figcaption, figure, font, footer, form, g, getAction, getRequestScopedCache, getRuntimeErrorHandler, getSSRStore, getSlot, h1, h2, h3, h4, h5, h6, head, header, hr, html, i, iframe, img, input, ins, isBatching, isSSR, kbd, label, lazy, lazyIsland, legend, li, line, linearGradient, link, longPress, main, map, mark, marker, marquee, mask, match, math, menu, meta, meter, mount, mountIslands, nav, nextTick, noscript, object, ol, on, onCleanup, onMount, onUnmount, optgroup, option, output, p, param, path, pattern, picture, polygon, polyline, portal, pre, progress, q, radialGradient, reactiveArray, rect, ref, registerAction, registerComponent, registerDisposer, registerIsland, replaceChildrenSafely, reportDrainRunaway, reportError, resolveComponent, retrack, rp, rt, ruby, runInSSRContext, s, samp, script, section, select, setGlobalErrorHandler, setMaxDrainIterations, setRuntimeErrorHandler, show, signal, slot, small, source, span, stop, store, strict, strictEffect, strong, style, sub, summary, sup, svg, symbol, table, takePendingError, tbody, td, template, text, textarea, tfoot, th, thead, time, title, tr, track$1 as track, transition, trapFocus, tspan, u, ul, unregisterComponent, unregisterDisposer, unregisterIsland, untracked, use, var_, video, watch, when, withSSR, writable };
2309
+ export { type Accessor, type ActionFn, type AnchorProps, type ArrayActions, type AsyncDerivedContext, type AsyncDerivedState, type AudioProps, type ButtonProps, type Context, DynamicComponent, type EachBindings, type EachEventBindings, type EffectBody, type EffectOptions, type EnhanceContext, type EnhanceSetup, ErrorBoundary, type ErrorBoundaryOptions, type ErrorBoundaryProps, ErrorDisplay, type ErrorDisplayProps, type ErrorSeverity, type ExternalSource, type FormProps, Fragment, type ImgProps, type InputProps, type InputType, type IslandLoader, type IslandRegistration, type IslandStrategy, KeepAlive, type KeepAliveOptions, type LabelProps, type LazyIslandLoader, Loading, type LoadingProps, type LongPressOptions, MAX_DRAIN_TEARDOWNS, type MediaProps, type MountIslandsOptions, NodeChild, NodeChildren, type OnCleanup, type OptionProps, Portal, type Ref, type RuntimeErrorContext, type RuntimeErrorHandler, type RuntimeErrorPhase, type SSRStore, type SelectProps, type SignalOptions, type SlotFn, type Slots, type StoreActions, Suspense, type SuspenseProps, TagProps, type TextareaProps, type TypedTagFunction, type VideoProps, __resetIdCounter, a, abbr, action, address, area, array, article, aside, asyncDerived, audio, autoResize, b, base, batch, bdi, bdo, bindDynamic, blockquote, body, br, button, canvas, caption, catchError, catchErrorAsync, center, checkLeaks, circle, cite, clickOutside, clipPath, code, col, colgroup, context, copyOnClick, createId, customElement, data, datalist, dd, deepEqual, deepSignal, defer, defs, del, derived, details, dfn, dialog, disableSSR, dispose, div, dl, dt, each, effect, ellipse, em, embed, enableSSR, enhance, enhanceAll, enqueueBatchedSignal, external, fieldset, figcaption, figure, font, footer, form, g, getAction, getRequestScopedCache, getRuntimeErrorHandler, getSSRStore, getSlot, h1, h2, h3, h4, h5, h6, head, header, hr, html, i, iframe, img, input, ins, isBatching, isSSR, kbd, label, lazy, lazyIsland, legend, li, line, linearGradient, link, longPress, main, map, mark, marker, marquee, mask, match, math, menu, meta, meter, mount, mountIslands, nav, nextTick, noscript, object, ol, on, onCleanup, onMount, onUnmount, optgroup, option, output, p, param, path, pattern, picture, polygon, polyline, portal, pre, progress, q, radialGradient, reactiveArray, rect, ref, registerAction, registerComponent, registerDisposer, registerIsland, replaceChildrenSafely, reportDrainRunaway, reportError, resolveComponent, retrack, rp, rt, ruby, runInSSRContext, s, samp, script, section, select, setGlobalErrorHandler, setMaxDrainIterations, setRuntimeErrorHandler, show, signal, slot, small, source, span, stop, store, strict, strictEffect, strong, style, sub, summary, sup, svg, symbol, table, takePendingError, tbody, td, template, text, textarea, tfoot, th, thead, time, title, tr, track$1 as track, transition, trapFocus, tspan, u, ul, unregisterComponent, unregisterDisposer, unregisterIsland, untracked, use, var_, video, watch, when, withSSR, writable };
package/dist/index.d.ts CHANGED
@@ -1984,8 +1984,40 @@ type IslandStrategy = "load" | "idle" | "visible" | "interaction" | "media";
1984
1984
  type IslandLoader = () => Promise<EnhanceSetup | {
1985
1985
  default: EnhanceSetup;
1986
1986
  }>;
1987
- /** Either an inline setup, or a {@link lazyIsland}-branded loader. */
1988
- type IslandRegistration = EnhanceSetup | IslandLoader;
1987
+ /**
1988
+ * A loader that has been through {@link lazyIsland}.
1989
+ *
1990
+ * Exported for callers that want to be explicit about having wrapped one. It is
1991
+ * NOT required by {@link IslandRegistration}, and that is deliberate.
1992
+ *
1993
+ * Requiring the brand would catch a forgotten `lazyIsland(...)` at compile time,
1994
+ * which is where a mistake is cheapest to find — but it also rejects code that
1995
+ * compiles today, and this package's contract is that the existing public API
1996
+ * keeps working, widening rather than replacing, with a codemod for anything
1997
+ * that cannot be widened. There is no codemod infrastructure here to ship one
1998
+ * through, so the narrowing is not taken: the mistake is caught at mount time
1999
+ * instead, by the thenable guard in `enhance()`, which throws immediately with
2000
+ * an actionable message and leaves the element unenhanced. Loud and instant at
2001
+ * runtime beats a type error that arrives with a breaking change attached.
2002
+ *
2003
+ * The brand is a phantom STRING-keyed property, never a `unique symbol`. A
2004
+ * `unique symbol` has nominal identity per declaration, so two copies of this
2005
+ * package's `.d.ts` in one dependency tree would produce two incompatible
2006
+ * types. That is not hypothetical: the registry is deliberately shared through
2007
+ * `Symbol.for` precisely because duplicate copies are expected. The property
2008
+ * exists only in the type — the runtime marker is the global symbol below.
2009
+ */
2010
+ type LazyIslandLoader = IslandLoader & {
2011
+ readonly __sibujsLazyIsland: true;
2012
+ };
2013
+ /**
2014
+ * Either an inline setup, or a loader.
2015
+ *
2016
+ * Unchanged from 4.2: an unbranded `IslandLoader` is still accepted, so no
2017
+ * previously-compiling code breaks. Wrapping with {@link lazyIsland} is what
2018
+ * makes it *work* — see {@link LazyIslandLoader} for why this is not narrowed.
2019
+ */
2020
+ type IslandRegistration = EnhanceSetup | IslandLoader | LazyIslandLoader;
1989
2021
  /**
1990
2022
  * Mark a loader as lazy island code — its module is fetched only when the island
1991
2023
  * activates, so a page ships ~0 JS for islands that never trigger.
@@ -1995,7 +2027,7 @@ type IslandRegistration = EnhanceSetup | IslandLoader;
1995
2027
  * registerIsland("chart", lazyIsland(() => import("./islands/chart.js")));
1996
2028
  * ```
1997
2029
  */
1998
- declare function lazyIsland(loader: IslandLoader): IslandLoader;
2030
+ declare function lazyIsland(loader: IslandLoader): LazyIslandLoader;
1999
2031
  /**
2000
2032
  * Register an island by name. The setup is applied via `enhance()` when a
2001
2033
  * matching `[data-sibu-island="name"]` element activates.
@@ -2274,4 +2306,4 @@ declare const untracked: ReactiveApi["untracked"];
2274
2306
  declare const retrack: ReactiveApi["retrack"];
2275
2307
  declare const setMaxDrainIterations: ReactiveApi["setMaxDrainIterations"];
2276
2308
 
2277
- export { type Accessor, type ActionFn, type AnchorProps, type ArrayActions, type AsyncDerivedContext, type AsyncDerivedState, type AudioProps, type ButtonProps, type Context, DynamicComponent, type EachBindings, type EachEventBindings, type EffectBody, type EffectOptions, type EnhanceContext, type EnhanceSetup, ErrorBoundary, type ErrorBoundaryOptions, type ErrorBoundaryProps, ErrorDisplay, type ErrorDisplayProps, type ErrorSeverity, type ExternalSource, type FormProps, Fragment, type ImgProps, type InputProps, type InputType, type IslandLoader, type IslandRegistration, type IslandStrategy, KeepAlive, type KeepAliveOptions, type LabelProps, Loading, type LoadingProps, type LongPressOptions, MAX_DRAIN_TEARDOWNS, type MediaProps, type MountIslandsOptions, NodeChild, NodeChildren, type OnCleanup, type OptionProps, Portal, type Ref, type RuntimeErrorContext, type RuntimeErrorHandler, type RuntimeErrorPhase, type SSRStore, type SelectProps, type SignalOptions, type SlotFn, type Slots, type StoreActions, Suspense, type SuspenseProps, TagProps, type TextareaProps, type TypedTagFunction, type VideoProps, __resetIdCounter, a, abbr, action, address, area, array, article, aside, asyncDerived, audio, autoResize, b, base, batch, bdi, bdo, bindDynamic, blockquote, body, br, button, canvas, caption, catchError, catchErrorAsync, center, checkLeaks, circle, cite, clickOutside, clipPath, code, col, colgroup, context, copyOnClick, createId, customElement, data, datalist, dd, deepEqual, deepSignal, defer, defs, del, derived, details, dfn, dialog, disableSSR, dispose, div, dl, dt, each, effect, ellipse, em, embed, enableSSR, enhance, enhanceAll, enqueueBatchedSignal, external, fieldset, figcaption, figure, font, footer, form, g, getAction, getRequestScopedCache, getRuntimeErrorHandler, getSSRStore, getSlot, h1, h2, h3, h4, h5, h6, head, header, hr, html, i, iframe, img, input, ins, isBatching, isSSR, kbd, label, lazy, lazyIsland, legend, li, line, linearGradient, link, longPress, main, map, mark, marker, marquee, mask, match, math, menu, meta, meter, mount, mountIslands, nav, nextTick, noscript, object, ol, on, onCleanup, onMount, onUnmount, optgroup, option, output, p, param, path, pattern, picture, polygon, polyline, portal, pre, progress, q, radialGradient, reactiveArray, rect, ref, registerAction, registerComponent, registerDisposer, registerIsland, replaceChildrenSafely, reportDrainRunaway, reportError, resolveComponent, retrack, rp, rt, ruby, runInSSRContext, s, samp, script, section, select, setGlobalErrorHandler, setMaxDrainIterations, setRuntimeErrorHandler, show, signal, slot, small, source, span, stop, store, strict, strictEffect, strong, style, sub, summary, sup, svg, symbol, table, takePendingError, tbody, td, template, text, textarea, tfoot, th, thead, time, title, tr, track$1 as track, transition, trapFocus, tspan, u, ul, unregisterComponent, unregisterDisposer, unregisterIsland, untracked, use, var_, video, watch, when, withSSR, writable };
2309
+ export { type Accessor, type ActionFn, type AnchorProps, type ArrayActions, type AsyncDerivedContext, type AsyncDerivedState, type AudioProps, type ButtonProps, type Context, DynamicComponent, type EachBindings, type EachEventBindings, type EffectBody, type EffectOptions, type EnhanceContext, type EnhanceSetup, ErrorBoundary, type ErrorBoundaryOptions, type ErrorBoundaryProps, ErrorDisplay, type ErrorDisplayProps, type ErrorSeverity, type ExternalSource, type FormProps, Fragment, type ImgProps, type InputProps, type InputType, type IslandLoader, type IslandRegistration, type IslandStrategy, KeepAlive, type KeepAliveOptions, type LabelProps, type LazyIslandLoader, Loading, type LoadingProps, type LongPressOptions, MAX_DRAIN_TEARDOWNS, type MediaProps, type MountIslandsOptions, NodeChild, NodeChildren, type OnCleanup, type OptionProps, Portal, type Ref, type RuntimeErrorContext, type RuntimeErrorHandler, type RuntimeErrorPhase, type SSRStore, type SelectProps, type SignalOptions, type SlotFn, type Slots, type StoreActions, Suspense, type SuspenseProps, TagProps, type TextareaProps, type TypedTagFunction, type VideoProps, __resetIdCounter, a, abbr, action, address, area, array, article, aside, asyncDerived, audio, autoResize, b, base, batch, bdi, bdo, bindDynamic, blockquote, body, br, button, canvas, caption, catchError, catchErrorAsync, center, checkLeaks, circle, cite, clickOutside, clipPath, code, col, colgroup, context, copyOnClick, createId, customElement, data, datalist, dd, deepEqual, deepSignal, defer, defs, del, derived, details, dfn, dialog, disableSSR, dispose, div, dl, dt, each, effect, ellipse, em, embed, enableSSR, enhance, enhanceAll, enqueueBatchedSignal, external, fieldset, figcaption, figure, font, footer, form, g, getAction, getRequestScopedCache, getRuntimeErrorHandler, getSSRStore, getSlot, h1, h2, h3, h4, h5, h6, head, header, hr, html, i, iframe, img, input, ins, isBatching, isSSR, kbd, label, lazy, lazyIsland, legend, li, line, linearGradient, link, longPress, main, map, mark, marker, marquee, mask, match, math, menu, meta, meter, mount, mountIslands, nav, nextTick, noscript, object, ol, on, onCleanup, onMount, onUnmount, optgroup, option, output, p, param, path, pattern, picture, polygon, polyline, portal, pre, progress, q, radialGradient, reactiveArray, rect, ref, registerAction, registerComponent, registerDisposer, registerIsland, replaceChildrenSafely, reportDrainRunaway, reportError, resolveComponent, retrack, rp, rt, ruby, runInSSRContext, s, samp, script, section, select, setGlobalErrorHandler, setMaxDrainIterations, setRuntimeErrorHandler, show, signal, slot, small, source, span, stop, store, strict, strictEffect, strong, style, sub, summary, sup, svg, symbol, table, takePendingError, tbody, td, template, text, textarea, tfoot, th, thead, time, title, tr, track$1 as track, transition, trapFocus, tspan, u, ul, unregisterComponent, unregisterDisposer, unregisterIsland, untracked, use, var_, video, watch, when, withSSR, writable };
package/dist/index.js CHANGED
@@ -52,7 +52,7 @@ import {
52
52
  unregisterIsland,
53
53
  when,
54
54
  writable
55
- } from "./chunk-HZEBO22J.js";
55
+ } from "./chunk-ADM46X22.js";
56
56
  import {
57
57
  a,
58
58
  abbr,
@@ -190,36 +190,36 @@ import {
190
190
  use,
191
191
  var_,
192
192
  video
193
- } from "./chunk-P3DHXBR6.js";
193
+ } from "./chunk-36S2YPP4.js";
194
194
  import {
195
195
  trustHTML
196
196
  } from "./chunk-NIOYEGBQ.js";
197
197
  import {
198
198
  watch
199
- } from "./chunk-BMYYZWHX.js";
199
+ } from "./chunk-RR7M3FHM.js";
200
200
  import {
201
201
  __resetIdCounter,
202
202
  createId
203
203
  } from "./chunk-CCSJMTRN.js";
204
204
  import {
205
205
  context
206
- } from "./chunk-FOWBJZDL.js";
206
+ } from "./chunk-7NBDXVHS.js";
207
207
  import {
208
208
  SVG_NS,
209
209
  tagFactory
210
- } from "./chunk-6ZGI3RBE.js";
210
+ } from "./chunk-PNIRUQ4C.js";
211
211
  import {
212
212
  bindDynamic
213
- } from "./chunk-HJEPKZ2O.js";
213
+ } from "./chunk-VCTAEPSB.js";
214
214
  import {
215
215
  derived
216
- } from "./chunk-2LOYNGBY.js";
216
+ } from "./chunk-W2EQ7X2L.js";
217
217
  import "./chunk-IXKSNWV5.js";
218
218
  import "./chunk-7ZHH77QA.js";
219
219
  import {
220
220
  effect,
221
221
  on
222
- } from "./chunk-7VEC3UD2.js";
222
+ } from "./chunk-7GIHSAWB.js";
223
223
  import {
224
224
  disableSSR,
225
225
  enableSSR,
@@ -244,12 +244,12 @@ import {
244
244
  external,
245
245
  isBatching,
246
246
  signal
247
- } from "./chunk-HECVW343.js";
247
+ } from "./chunk-NVNJH22U.js";
248
248
  import {
249
249
  retrack,
250
250
  setMaxDrainIterations,
251
251
  untracked
252
- } from "./chunk-7ALC7KGE.js";
252
+ } from "./chunk-3BTTCZ5J.js";
253
253
  import {
254
254
  getRuntimeErrorHandler,
255
255
  reportError,
package/dist/motion.cjs CHANGED
@@ -700,7 +700,7 @@ function forEachSubscriber(signal2, visit) {
700
700
  }
701
701
 
702
702
  // src/reactivity/track.ts
703
- var _runtimeVersion = true ? "4.2.0" : "dev";
703
+ var _runtimeVersion = true ? "4.4.0" : "dev";
704
704
  var REGISTRY_KEY = /* @__PURE__ */ Symbol.for("sibujs.reactive.v1");
705
705
  function resolveReactiveApi() {
706
706
  const g = globalThis;
package/dist/motion.js CHANGED
@@ -20,10 +20,10 @@ import {
20
20
  stagger,
21
21
  transition,
22
22
  viewTransition
23
- } from "./chunk-3VTSPNC5.js";
23
+ } from "./chunk-SKPTERHP.js";
24
24
  import "./chunk-QKRPLZ2V.js";
25
- import "./chunk-HECVW343.js";
26
- import "./chunk-7ALC7KGE.js";
25
+ import "./chunk-NVNJH22U.js";
26
+ import "./chunk-3BTTCZ5J.js";
27
27
  import "./chunk-2WLZ6757.js";
28
28
  export {
29
29
  TransitionGroup,