sibujs 4.10.1 → 4.12.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 (79) hide show
  1. package/README.md +2 -2
  2. package/dist/browser.cjs +1 -1
  3. package/dist/browser.js +4 -4
  4. package/dist/build.cjs +19 -1
  5. package/dist/build.js +13 -12
  6. package/dist/cdn.dev.global.js +12 -12
  7. package/dist/cdn.full.dev.global.js +13 -13
  8. package/dist/cdn.full.global.js +12 -12
  9. package/dist/cdn.global.js +12 -12
  10. package/dist/{chunk-FC6KCJSA.js → chunk-2F4PSJ5Z.js} +162 -67
  11. package/dist/{chunk-JZMLRF2G.js → chunk-653KGQS2.js} +3 -3
  12. package/dist/chunk-AM6DZLBM.js +181 -0
  13. package/dist/{chunk-NROLUUCO.js → chunk-B2Y5BJSP.js} +1 -1
  14. package/dist/{chunk-WHZKRSHQ.js → chunk-CI4W6XAU.js} +4 -4
  15. package/dist/{chunk-GEQNWNYS.js → chunk-DFZL3AX7.js} +6 -6
  16. package/dist/{chunk-6DYRY2NF.js → chunk-EMB5PG7V.js} +1 -1
  17. package/dist/{chunk-3ACAAQIN.js → chunk-F2UWOZ6J.js} +4 -0
  18. package/dist/{chunk-DA2LJXK3.js → chunk-HXT2RNH5.js} +1 -1
  19. package/dist/{chunk-BNZDDNBR.js → chunk-IHA62NGJ.js} +1 -1
  20. package/dist/{chunk-42REZXE4.js → chunk-LEUEKK4G.js} +2 -2
  21. package/dist/{chunk-CYUU3XXG.js → chunk-LXBMVGVB.js} +3 -3
  22. package/dist/{chunk-LYM6TT2R.js → chunk-LYTUTXQP.js} +4 -4
  23. package/dist/{chunk-2D47RVVK.js → chunk-NAVLCP4S.js} +4 -4
  24. package/dist/{chunk-MJZUXQHR.js → chunk-NB7TFSJE.js} +5 -5
  25. package/dist/{chunk-ADJEMTRC.js → chunk-QLG5IK7F.js} +4 -4
  26. package/dist/{chunk-LK3VK47W.js → chunk-RK7EPQPG.js} +1 -1
  27. package/dist/{chunk-YNE4FSVX.js → chunk-T5O2CUHV.js} +1 -1
  28. package/dist/{chunk-GVVZPMA5.js → chunk-WFRQ6D7H.js} +1 -1
  29. package/dist/{chunk-2T73SWKF.js → chunk-WH4U2VUE.js} +5 -3
  30. package/dist/{chunk-DS6PFIZK.js → chunk-XX4BRMWF.js} +15 -3
  31. package/dist/{chunk-HZQEL575.js → chunk-ZJCHY2IB.js} +1 -1
  32. package/dist/{chunk-CID4BYBF.js → chunk-ZPY2UAKM.js} +3 -3
  33. package/dist/{chunk-CZINTERN.js → chunk-ZTYCCBU3.js} +19 -11
  34. package/dist/data.cjs +1 -1
  35. package/dist/data.js +5 -5
  36. package/dist/devtools.cjs +1 -1
  37. package/dist/devtools.js +4 -4
  38. package/dist/ecosystem.cjs +9 -1
  39. package/dist/ecosystem.d.cts +1 -1
  40. package/dist/ecosystem.d.ts +1 -1
  41. package/dist/ecosystem.js +8 -8
  42. package/dist/extras.cjs +368 -154
  43. package/dist/extras.d.cts +2 -2
  44. package/dist/extras.d.ts +2 -2
  45. package/dist/extras.js +23 -22
  46. package/dist/index.cjs +19 -1
  47. package/dist/index.d.cts +91 -90
  48. package/dist/index.d.ts +91 -90
  49. package/dist/index.js +13 -12
  50. package/dist/motion.cjs +1 -1
  51. package/dist/motion.js +3 -3
  52. package/dist/patterns.cjs +1 -1
  53. package/dist/patterns.js +5 -5
  54. package/dist/performance.cjs +1 -1
  55. package/dist/performance.d.cts +2 -2
  56. package/dist/performance.d.ts +2 -2
  57. package/dist/performance.js +7 -6
  58. package/dist/plugins.cjs +482 -120
  59. package/dist/plugins.d.cts +20 -6
  60. package/dist/plugins.d.ts +20 -6
  61. package/dist/plugins.js +153 -23
  62. package/dist/{ssr-C8hgIAw7.d.cts → ssr-Db0Sgdu3.d.cts} +7 -4
  63. package/dist/{ssr-C8hgIAw7.d.ts → ssr-Db0Sgdu3.d.ts} +7 -4
  64. package/dist/{ssr-5OWAH3U2.js → ssr-VBM6J5SJ.js} +4 -2
  65. package/dist/ssr.cjs +346 -128
  66. package/dist/ssr.d.cts +1 -1
  67. package/dist/ssr.d.ts +1 -1
  68. package/dist/ssr.js +10 -9
  69. package/dist/{tagFactory-BL2fymez.d.ts → tagFactory-Bnd_Nph9.d.ts} +1 -1
  70. package/dist/{tagFactory-8qL9LCIx.d.cts → tagFactory-DkytnJws.d.cts} +1 -1
  71. package/dist/testing.cjs +1 -1
  72. package/dist/testing.js +2 -2
  73. package/dist/ui.cjs +251 -24
  74. package/dist/ui.d.cts +111 -1
  75. package/dist/ui.d.ts +111 -1
  76. package/dist/ui.js +130 -8
  77. package/dist/widgets.cjs +1 -1
  78. package/dist/widgets.js +6 -6
  79. package/package.json +1 -1
package/dist/extras.d.cts CHANGED
@@ -6,7 +6,7 @@ export { AnimationPreset, PresetOptions, SlideDirection, SpringOptions, Transiti
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, P as PaginationResult, 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, Q as removeScopedStyle, R as required, S as scopedStyle, U as ssnMask, W as svgElement, X as timeMask, Y as toast, Z as withScopedStyle, $ as zipMask } from './customElement-pYDKUzWl.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';
8
8
  export { ActionFn, ActionResult, Head, ISROptions, LoadRemoteModuleOptions, LoadWasmOptions, MicroApp, MicroAppConfig, MiddlewareFn, SSGOptions, SSGResult, ScrollRestorationOptions, ServiceWorkerState, SharedScope, UseWorkerFnReturn, UseWorkerReturn, WasmConfig, WasmModuleState, WorkerPool, clearWasmCache, composeMiddleware, createAction, createISR, createMicroApp, createMiddlewareChain, createSharedScope, createWasmBridge, createWorkerPool, defineRemoteComponent, generateStaticSite, isWasmCached, loadRemoteModule, loadWasmModule, loadWasmModuleWithOptions, preloadWasm, scrollRestoration, serviceWorker, setCanonical, setStructuredData, wasm, worker, workerFn } from './ssr.cjs';
9
- export { H as HydrateOptions, a as HydrationMismatch, T as TrustedHTML, c as collectStream, d as deserializeState, e as escapeScriptJson, h as hydrate, b as hydrateIslands, f as hydrateProgressively, i as isDangerousMetaRefresh, g as island, r as renderToDocument, j as renderToReadableStream, k as renderToStream, l as renderToString, m as renderToSuspenseStream, n as resetSSRState, s as serializeState, o as ssrSuspense, p as suspenseSwapScript, t as trustHTML } from './ssr-C8hgIAw7.cjs';
9
+ export { H as HydrateOptions, a as HydrationMismatch, T as TrustedHTML, c as collectStream, d as deserializeState, e as escapeScriptJson, h as hydrate, b as hydrateIslands, f as hydrateProgressively, i as isDangerousMetaRefresh, g as island, r as renderToDocument, j as renderToReadableStream, k as renderToStream, l as renderToString, m as renderToSuspenseStream, n as resetSSRState, s as serializeState, o as ssrSuspense, p as suspenseSwapScript, t as trustHTML } from './ssr-Db0Sgdu3.cjs';
10
10
  export { P as PluginContext, a as PluginInstallCancelledError, b as PluginRegistry, S as SibuPlugin, c as createPlugin, d as createPluginRegistry, i as inject, e as isPluginInstallCancelledError, p as plugin, r as resetPlugins, s as setDefaultPluginRegistry, t as triggerPluginError, f as triggerPluginMount, g as triggerPluginUnmount } from './plugin-DVgSnTfK.cjs';
11
11
  export { L as LazyModule, M as Migration, a as MigrationStorageError, P as PackageExportTarget, S as SemVer, V as VERSION, b as bundlerMetadata, c as checkCompatibility, d as compareSemVer, e as createBootSequence, f as createBundle, g as createMigrationRunner, h as createModuleRegistry, i as createSSRCache, j as createTestHarness, k as deferNonCritical, l as env, m as healthCheck, n as lazyModule, p as packageInfo, o as parseSemVer, q as preloadCritical, r as prerenderRoutes, s as satisfies } from './startup-BLfSeL15.cjs';
12
12
  export { D as DevToolsEvent, a as DevtoolsOverlayOptions, P as ProfilerResult, R as ReactiveNodeInfo, S as SibuError, c as checkLeaks, b as clearDebugValues, d as clearHMRModule, e as clearHMRState, f as clearPerformanceData, g as createDevtoolsOverlay, h as createErrorReporter, i as createHMRBoundary, j as createProfiler, k as debugLog, l as debugValue, m as devState, n as disableDebug, o as enableDebug, p as exposeHMR, q as formatError, r as getActiveDevTools, s as getDebugValues, t as getDependencies, u as getPerformanceReport, v as getSignalName, w as getSubscriberCount, x as hmrState, y as initDevTools, z as inspectSignal, A as isDebugEnabled, B as isHMRAvailable, C as measureRender, E as perfTracker, F as registerHMR, G as runCleanups, H as startMeasure, I as trackCleanup, J as walkDependencyGraph, K as withErrorTracking } from './introspect-D5xF-0Es.cjs';
@@ -15,4 +15,4 @@ export { AdaptedComponent, AdaptedComponentProps, AdapterConfig, ComponentMappin
15
15
  import './signal-EotCj4hS.cjs';
16
16
  import './types-CJFViL6Q.cjs';
17
17
  import './signal-BnWpq6WB.cjs';
18
- import './tagFactory-8qL9LCIx.cjs';
18
+ import './tagFactory-DkytnJws.cjs';
package/dist/extras.d.ts CHANGED
@@ -6,7 +6,7 @@ export { AnimationPreset, PresetOptions, SlideDirection, SpringOptions, Transiti
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, P as PaginationResult, 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, Q as removeScopedStyle, R as required, S as scopedStyle, U as ssnMask, W as svgElement, X as timeMask, Y as toast, Z as withScopedStyle, $ as zipMask } from './customElement-pYDKUzWl.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';
8
8
  export { ActionFn, ActionResult, Head, ISROptions, LoadRemoteModuleOptions, LoadWasmOptions, MicroApp, MicroAppConfig, MiddlewareFn, SSGOptions, SSGResult, ScrollRestorationOptions, ServiceWorkerState, SharedScope, UseWorkerFnReturn, UseWorkerReturn, WasmConfig, WasmModuleState, WorkerPool, clearWasmCache, composeMiddleware, createAction, createISR, createMicroApp, createMiddlewareChain, createSharedScope, createWasmBridge, createWorkerPool, defineRemoteComponent, generateStaticSite, isWasmCached, loadRemoteModule, loadWasmModule, loadWasmModuleWithOptions, preloadWasm, scrollRestoration, serviceWorker, setCanonical, setStructuredData, wasm, worker, workerFn } from './ssr.js';
9
- export { H as HydrateOptions, a as HydrationMismatch, T as TrustedHTML, c as collectStream, d as deserializeState, e as escapeScriptJson, h as hydrate, b as hydrateIslands, f as hydrateProgressively, i as isDangerousMetaRefresh, g as island, r as renderToDocument, j as renderToReadableStream, k as renderToStream, l as renderToString, m as renderToSuspenseStream, n as resetSSRState, s as serializeState, o as ssrSuspense, p as suspenseSwapScript, t as trustHTML } from './ssr-C8hgIAw7.js';
9
+ export { H as HydrateOptions, a as HydrationMismatch, T as TrustedHTML, c as collectStream, d as deserializeState, e as escapeScriptJson, h as hydrate, b as hydrateIslands, f as hydrateProgressively, i as isDangerousMetaRefresh, g as island, r as renderToDocument, j as renderToReadableStream, k as renderToStream, l as renderToString, m as renderToSuspenseStream, n as resetSSRState, s as serializeState, o as ssrSuspense, p as suspenseSwapScript, t as trustHTML } from './ssr-Db0Sgdu3.js';
10
10
  export { P as PluginContext, a as PluginInstallCancelledError, b as PluginRegistry, S as SibuPlugin, c as createPlugin, d as createPluginRegistry, i as inject, e as isPluginInstallCancelledError, p as plugin, r as resetPlugins, s as setDefaultPluginRegistry, t as triggerPluginError, f as triggerPluginMount, g as triggerPluginUnmount } from './plugin-DVgSnTfK.js';
11
11
  export { L as LazyModule, M as Migration, a as MigrationStorageError, P as PackageExportTarget, S as SemVer, V as VERSION, b as bundlerMetadata, c as checkCompatibility, d as compareSemVer, e as createBootSequence, f as createBundle, g as createMigrationRunner, h as createModuleRegistry, i as createSSRCache, j as createTestHarness, k as deferNonCritical, l as env, m as healthCheck, n as lazyModule, p as packageInfo, o as parseSemVer, q as preloadCritical, r as prerenderRoutes, s as satisfies } from './startup-BLfSeL15.js';
12
12
  export { D as DevToolsEvent, a as DevtoolsOverlayOptions, P as ProfilerResult, R as ReactiveNodeInfo, S as SibuError, c as checkLeaks, b as clearDebugValues, d as clearHMRModule, e as clearHMRState, f as clearPerformanceData, g as createDevtoolsOverlay, h as createErrorReporter, i as createHMRBoundary, j as createProfiler, k as debugLog, l as debugValue, m as devState, n as disableDebug, o as enableDebug, p as exposeHMR, q as formatError, r as getActiveDevTools, s as getDebugValues, t as getDependencies, u as getPerformanceReport, v as getSignalName, w as getSubscriberCount, x as hmrState, y as initDevTools, z as inspectSignal, A as isDebugEnabled, B as isHMRAvailable, C as measureRender, E as perfTracker, F as registerHMR, G as runCleanups, H as startMeasure, I as trackCleanup, J as walkDependencyGraph, K as withErrorTracking } from './introspect-rSBIxEQi.js';
@@ -15,4 +15,4 @@ export { AdaptedComponent, AdaptedComponentProps, AdapterConfig, ComponentMappin
15
15
  import './signal-EotCj4hS.js';
16
16
  import './types-CJFViL6Q.js';
17
17
  import './signal-BnWpq6WB.js';
18
- import './tagFactory-BL2fymez.js';
18
+ import './tagFactory-Bnd_Nph9.js';
package/dist/extras.js CHANGED
@@ -5,7 +5,7 @@ import {
5
5
  optimisticList,
6
6
  persisted,
7
7
  timeline
8
- } from "./chunk-CYUU3XXG.js";
8
+ } from "./chunk-LXBMVGVB.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-WHZKRSHQ.js";
44
+ } from "./chunk-CI4W6XAU.js";
45
45
  import {
46
46
  MigrationStorageError,
47
47
  VERSION,
@@ -63,7 +63,7 @@ import {
63
63
  preloadCritical,
64
64
  prerenderRoutes,
65
65
  satisfies
66
- } from "./chunk-JZMLRF2G.js";
66
+ } from "./chunk-653KGQS2.js";
67
67
  import {
68
68
  Head,
69
69
  clearWasmCache,
@@ -89,7 +89,7 @@ import {
89
89
  wasm,
90
90
  worker,
91
91
  workerFn
92
- } from "./chunk-MJZUXQHR.js";
92
+ } from "./chunk-NB7TFSJE.js";
93
93
  import {
94
94
  FocusTrap,
95
95
  VirtualList,
@@ -130,7 +130,7 @@ import {
130
130
  toast,
131
131
  withScopedStyle,
132
132
  zipMask
133
- } from "./chunk-GEQNWNYS.js";
133
+ } from "./chunk-DFZL3AX7.js";
134
134
  import {
135
135
  RenderProp,
136
136
  assertType,
@@ -157,7 +157,7 @@ import {
157
157
  select,
158
158
  tabs,
159
159
  tooltip
160
- } from "./chunk-LYM6TT2R.js";
160
+ } from "./chunk-LYTUTXQP.js";
161
161
  import {
162
162
  __resetSpeechCoordinator,
163
163
  animationFrame,
@@ -196,7 +196,7 @@ import {
196
196
  visibility,
197
197
  wakeLock,
198
198
  windowSize
199
- } from "./chunk-42REZXE4.js";
199
+ } from "./chunk-LEUEKK4G.js";
200
200
  import "./chunk-52XFPGSN.js";
201
201
  import {
202
202
  __resetQueryCache,
@@ -222,7 +222,7 @@ import {
222
222
  throttle,
223
223
  withLoader,
224
224
  withRetry
225
- } from "./chunk-ADJEMTRC.js";
225
+ } from "./chunk-QLG5IK7F.js";
226
226
  import {
227
227
  SibuError,
228
228
  checkLeaks,
@@ -260,7 +260,7 @@ import {
260
260
  trackCleanup,
261
261
  walkDependencyGraph,
262
262
  withErrorTracking
263
- } from "./chunk-CID4BYBF.js";
263
+ } from "./chunk-ZPY2UAKM.js";
264
264
  import {
265
265
  antdAdapter,
266
266
  chakraAdapter,
@@ -270,7 +270,7 @@ import {
270
270
  mobXAdapter,
271
271
  reduxAdapter,
272
272
  zustandAdapter
273
- } from "./chunk-2D47RVVK.js";
273
+ } from "./chunk-NAVLCP4S.js";
274
274
  import {
275
275
  PluginInstallCancelledError,
276
276
  createPlugin,
@@ -284,7 +284,7 @@ import {
284
284
  triggerPluginMount,
285
285
  triggerPluginUnmount
286
286
  } from "./chunk-J6FW5TV6.js";
287
- import "./chunk-YNE4FSVX.js";
287
+ import "./chunk-T5O2CUHV.js";
288
288
  import {
289
289
  collectStream,
290
290
  deserializeState,
@@ -304,16 +304,17 @@ import {
304
304
  ssrSuspense,
305
305
  suspenseSwapScript,
306
306
  trustHTML
307
- } from "./chunk-FC6KCJSA.js";
308
- import "./chunk-DA2LJXK3.js";
309
- import "./chunk-GVVZPMA5.js";
307
+ } from "./chunk-2F4PSJ5Z.js";
308
+ import "./chunk-AM6DZLBM.js";
309
+ import "./chunk-HXT2RNH5.js";
310
+ import "./chunk-WFRQ6D7H.js";
310
311
  import "./chunk-62BDYGAG.js";
311
- import "./chunk-2T73SWKF.js";
312
- import "./chunk-DS6PFIZK.js";
313
- import "./chunk-3ACAAQIN.js";
314
- import "./chunk-LK3VK47W.js";
312
+ import "./chunk-WH4U2VUE.js";
313
+ import "./chunk-XX4BRMWF.js";
314
+ import "./chunk-F2UWOZ6J.js";
315
+ import "./chunk-RK7EPQPG.js";
315
316
  import "./chunk-7ZHH77QA.js";
316
- import "./chunk-6DYRY2NF.js";
317
+ import "./chunk-EMB5PG7V.js";
317
318
  import "./chunk-EXXSN3BW.js";
318
319
  import "./chunk-7XHATCIH.js";
319
320
  import {
@@ -338,10 +339,10 @@ import {
338
339
  stagger,
339
340
  transition,
340
341
  viewTransition
341
- } from "./chunk-HZQEL575.js";
342
+ } from "./chunk-ZJCHY2IB.js";
342
343
  import "./chunk-5HZXGZ6T.js";
343
- import "./chunk-BNZDDNBR.js";
344
- import "./chunk-NROLUUCO.js";
344
+ import "./chunk-IHA62NGJ.js";
345
+ import "./chunk-B2Y5BJSP.js";
345
346
  import "./chunk-NYNYSPK7.js";
346
347
  export {
347
348
  DOMPool,
package/dist/index.cjs CHANGED
@@ -1723,7 +1723,7 @@ function forEachSubscriber(signal2, visit) {
1723
1723
  }
1724
1724
 
1725
1725
  // src/reactivity/track.ts
1726
- var _runtimeVersion = true ? "4.10.1" : "dev";
1726
+ var _runtimeVersion = true ? "4.12.0" : "dev";
1727
1727
  var REGISTRY_KEY = /* @__PURE__ */ Symbol.for("sibujs.reactive.v1");
1728
1728
  function resolveReactiveApi() {
1729
1729
  const g2 = globalThis;
@@ -2005,6 +2005,16 @@ function bindChildNode(placeholder, getter) {
2005
2005
  return reactiveBinding2(commit, placeholder);
2006
2006
  }
2007
2007
 
2008
+ // src/core/rendering/requireDocument.ts
2009
+ function noDocument() {
2010
+ throw new Error(
2011
+ "[SibuJS] renderToString needs a DOM: register happy-dom or jsdom globals first." + (DEV ? ' There is no global `document`, and SibuJS builds live DOM nodes, on the server too. For example: import { GlobalRegistrator } from "@happy-dom/global-registrator"; GlobalRegistrator.register(); See SSR in AGENTS.md \xA710.' : "")
2012
+ );
2013
+ }
2014
+ function requireDocument() {
2015
+ if (typeof document === "undefined") noDocument();
2016
+ }
2017
+
2008
2018
  // src/core/rendering/tagFactory.ts
2009
2019
  var SVG_NS3 = "http://www.w3.org/2000/svg";
2010
2020
  var CLOBBER_RISKY_IDS = /* @__PURE__ */ new Set([
@@ -2185,6 +2195,7 @@ function tagFactory(tag, ns) {
2185
2195
  if (blocked) {
2186
2196
  throw new Error(`tagFactory: refusing to create <${tag}> \u2014 tag is blocked for security reasons.`);
2187
2197
  }
2198
+ if (typeof document === "undefined") noDocument();
2188
2199
  const el = ns ? document.createElementNS(ns, tag) : document.createElement(tag);
2189
2200
  if (first === void 0) return el;
2190
2201
  if (typeof first === "string") {
@@ -4270,6 +4281,7 @@ function releaseBranchNode(node, owned) {
4270
4281
  node.parentNode?.removeChild(node);
4271
4282
  }
4272
4283
  function when(condition, thenBranch, elseBranch) {
4284
+ requireDocument();
4273
4285
  const anchor = document.createComment("when");
4274
4286
  let currentNode = null;
4275
4287
  let lastCondition;
@@ -4313,6 +4325,7 @@ function when(condition, thenBranch, elseBranch) {
4313
4325
  return anchor;
4314
4326
  }
4315
4327
  function match(value, cases, fallback) {
4328
+ requireDocument();
4316
4329
  const anchor = document.createComment("match");
4317
4330
  let currentNode = null;
4318
4331
  let lastKey;
@@ -4455,6 +4468,7 @@ function each(getArray, render, options) {
4455
4468
  options && typeof options.key === "function",
4456
4469
  "each: options.key must be a function that returns a unique key per item."
4457
4470
  );
4471
+ requireDocument();
4458
4472
  const anchor = document.createComment("each:anchor");
4459
4473
  const end = document.createComment("each:end");
4460
4474
  const oldKeysBufA = [];
@@ -4662,6 +4676,7 @@ function each(getArray, render, options) {
4662
4676
 
4663
4677
  // src/core/rendering/fragment.ts
4664
4678
  function Fragment(nodes) {
4679
+ requireDocument();
4665
4680
  const frag = document.createDocumentFragment();
4666
4681
  for (const child of nodes) {
4667
4682
  if (child == null || typeof child === "boolean") continue;
@@ -5028,6 +5043,7 @@ function __renderParsedTemplate(tree, values) {
5028
5043
  return renderTemplate(tree, values);
5029
5044
  }
5030
5045
  function renderTemplate(tmpl, values) {
5046
+ requireDocument();
5031
5047
  if (tmpl.length === 1 && tmpl[0].t === 0) {
5032
5048
  return executeElement(tmpl[0].el, values);
5033
5049
  }
@@ -5073,6 +5089,7 @@ function renderTemplate(tmpl, values) {
5073
5089
 
5074
5090
  // src/core/rendering/keepAlive.ts
5075
5091
  function KeepAlive(activeKey, cases, options) {
5092
+ requireDocument();
5076
5093
  const anchor = document.createComment("keep-alive");
5077
5094
  const cache2 = /* @__PURE__ */ new Map();
5078
5095
  const lruOrder = [];
@@ -5238,6 +5255,7 @@ function unmountRange(start, end) {
5238
5255
 
5239
5256
  // src/core/rendering/portal.ts
5240
5257
  function Portal(nodes, target) {
5258
+ requireDocument();
5241
5259
  const anchor = document.createComment("portal");
5242
5260
  const container = target || document.body;
5243
5261
  let portalContent = null;
package/dist/index.d.cts CHANGED
@@ -1,10 +1,10 @@
1
1
  import { a as NodeChild, C as Component, N as NodeChildren } from './types-CJFViL6Q.cjs';
2
2
  export { D as Dispose } from './types-CJFViL6Q.cjs';
3
- import { T as TagProps, a as TagFunction, D as DerivedAccessor } from './tagFactory-8qL9LCIx.cjs';
4
- export { S as SVG_NS, b as StyleMap, c as StyleObject, d as TagEventHandlers, e as derived, t as tagFactory } from './tagFactory-8qL9LCIx.cjs';
3
+ import { T as TagProps, a as TagFunction, D as DerivedAccessor } from './tagFactory-DkytnJws.cjs';
4
+ export { S as SVG_NS, b as StyleMap, c as StyleObject, d as TagEventHandlers, e as derived, t as tagFactory } from './tagFactory-DkytnJws.cjs';
5
5
  import { A as Accessor } from './signal-EotCj4hS.cjs';
6
6
  export { D as DisposableAccessor, E as ExternalSource, S as SignalOptions, e as external, s as signal } from './signal-EotCj4hS.cjs';
7
- export { T as TrustedHTML, t as trustHTML } from './ssr-C8hgIAw7.cjs';
7
+ export { T as TrustedHTML, t as trustHTML } from './ssr-Db0Sgdu3.cjs';
8
8
  import { R as ReactiveSignal } from './signal-BnWpq6WB.cjs';
9
9
 
10
10
  interface ErrorBoundaryOptions {
@@ -768,127 +768,128 @@ declare function html(strings: TemplateStringsArray, ...values: unknown[]): Elem
768
768
  declare function __renderParsedTemplate(tree: readonly unknown[], values: unknown[]): Element;
769
769
 
770
770
  type reactive<T> = T | (() => T);
771
+ type attr<T> = T | (() => T | null | undefined);
771
772
  interface AnchorProps extends TagProps<HTMLAnchorElement> {
772
- href?: reactive<string>;
773
- target?: reactive<"_self" | "_blank" | "_parent" | "_top" | (string & {})>;
774
- rel?: reactive<string>;
775
- download?: reactive<string | boolean>;
776
- hreflang?: reactive<string>;
777
- referrerpolicy?: reactive<"" | "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url">;
778
- ping?: reactive<string>;
773
+ href?: attr<string>;
774
+ target?: attr<"_self" | "_blank" | "_parent" | "_top" | (string & {})>;
775
+ rel?: attr<string>;
776
+ download?: attr<string | boolean>;
777
+ hreflang?: attr<string>;
778
+ referrerpolicy?: attr<"" | "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url">;
779
+ ping?: attr<string>;
779
780
  }
780
781
  type InputType = "button" | "checkbox" | "color" | "date" | "datetime-local" | "email" | "file" | "hidden" | "image" | "month" | "number" | "password" | "radio" | "range" | "reset" | "search" | "submit" | "tel" | "text" | "time" | "url" | "week";
781
782
  interface InputProps extends TagProps<HTMLInputElement> {
782
- type?: reactive<InputType | (string & {})>;
783
- name?: reactive<string>;
783
+ type?: attr<InputType | (string & {})>;
784
+ name?: attr<string>;
784
785
  value?: reactive<string | number>;
785
- placeholder?: reactive<string>;
786
- required?: reactive<boolean>;
786
+ placeholder?: attr<string>;
787
+ required?: attr<boolean>;
787
788
  disabled?: reactive<boolean>;
788
- readonly?: reactive<boolean>;
789
+ readonly?: attr<boolean>;
789
790
  checked?: reactive<boolean>;
790
- min?: reactive<string | number>;
791
- max?: reactive<string | number>;
792
- step?: reactive<string | number>;
793
- minlength?: reactive<number>;
794
- maxlength?: reactive<number>;
795
- pattern?: reactive<string>;
796
- autocomplete?: reactive<string>;
797
- autofocus?: reactive<boolean>;
798
- multiple?: reactive<boolean>;
799
- accept?: reactive<string>;
800
- size?: reactive<number>;
801
- form?: reactive<string>;
802
- list?: reactive<string>;
803
- inputmode?: reactive<"none" | "text" | "decimal" | "numeric" | "tel" | "search" | "email" | "url">;
791
+ min?: attr<string | number>;
792
+ max?: attr<string | number>;
793
+ step?: attr<string | number>;
794
+ minlength?: attr<number>;
795
+ maxlength?: attr<number>;
796
+ pattern?: attr<string>;
797
+ autocomplete?: attr<string>;
798
+ autofocus?: attr<boolean>;
799
+ multiple?: attr<boolean>;
800
+ accept?: attr<string>;
801
+ size?: attr<number>;
802
+ form?: attr<string>;
803
+ list?: attr<string>;
804
+ inputmode?: attr<"none" | "text" | "decimal" | "numeric" | "tel" | "search" | "email" | "url">;
804
805
  }
805
806
  interface ImgProps extends TagProps<HTMLImageElement> {
806
- src?: reactive<string>;
807
- alt?: reactive<string>;
808
- width?: reactive<number | string>;
809
- height?: reactive<number | string>;
810
- loading?: reactive<"lazy" | "eager">;
811
- decoding?: reactive<"sync" | "async" | "auto">;
812
- srcset?: reactive<string>;
813
- sizes?: reactive<string>;
814
- crossorigin?: reactive<"anonymous" | "use-credentials">;
815
- referrerpolicy?: reactive<string>;
807
+ src?: attr<string>;
808
+ alt?: attr<string>;
809
+ width?: attr<number | string>;
810
+ height?: attr<number | string>;
811
+ loading?: attr<"lazy" | "eager">;
812
+ decoding?: attr<"sync" | "async" | "auto">;
813
+ srcset?: attr<string>;
814
+ sizes?: attr<string>;
815
+ crossorigin?: attr<"anonymous" | "use-credentials">;
816
+ referrerpolicy?: attr<string>;
816
817
  }
817
818
  interface ButtonProps extends TagProps<HTMLButtonElement> {
818
- type?: reactive<"button" | "submit" | "reset">;
819
- name?: reactive<string>;
819
+ type?: attr<"button" | "submit" | "reset">;
820
+ name?: attr<string>;
820
821
  value?: reactive<string>;
821
822
  disabled?: reactive<boolean>;
822
- form?: reactive<string>;
823
- formaction?: reactive<string>;
824
- formenctype?: reactive<string>;
825
- formmethod?: reactive<"get" | "post" | "dialog">;
826
- formnovalidate?: reactive<boolean>;
827
- formtarget?: reactive<string>;
828
- autofocus?: reactive<boolean>;
823
+ form?: attr<string>;
824
+ formaction?: attr<string>;
825
+ formenctype?: attr<string>;
826
+ formmethod?: attr<"get" | "post" | "dialog">;
827
+ formnovalidate?: attr<boolean>;
828
+ formtarget?: attr<string>;
829
+ autofocus?: attr<boolean>;
829
830
  }
830
831
  interface FormProps extends TagProps<HTMLFormElement> {
831
- action?: reactive<string>;
832
- method?: reactive<"get" | "post" | "dialog">;
833
- enctype?: reactive<"application/x-www-form-urlencoded" | "multipart/form-data" | "text/plain">;
834
- name?: reactive<string>;
835
- novalidate?: reactive<boolean>;
836
- target?: reactive<string>;
837
- autocomplete?: reactive<"on" | "off">;
838
- acceptcharset?: reactive<string>;
832
+ action?: attr<string>;
833
+ method?: attr<"get" | "post" | "dialog">;
834
+ enctype?: attr<"application/x-www-form-urlencoded" | "multipart/form-data" | "text/plain">;
835
+ name?: attr<string>;
836
+ novalidate?: attr<boolean>;
837
+ target?: attr<string>;
838
+ autocomplete?: attr<"on" | "off">;
839
+ acceptcharset?: attr<string>;
839
840
  }
840
841
  interface SelectProps extends TagProps<HTMLSelectElement> {
841
- name?: reactive<string>;
842
+ name?: attr<string>;
842
843
  value?: reactive<string>;
843
844
  disabled?: reactive<boolean>;
844
- multiple?: reactive<boolean>;
845
- required?: reactive<boolean>;
846
- size?: reactive<number>;
847
- autocomplete?: reactive<string>;
848
- autofocus?: reactive<boolean>;
849
- form?: reactive<string>;
845
+ multiple?: attr<boolean>;
846
+ required?: attr<boolean>;
847
+ size?: attr<number>;
848
+ autocomplete?: attr<string>;
849
+ autofocus?: attr<boolean>;
850
+ form?: attr<string>;
850
851
  }
851
852
  interface TextareaProps extends TagProps<HTMLTextAreaElement> {
852
- name?: reactive<string>;
853
+ name?: attr<string>;
853
854
  value?: reactive<string>;
854
- placeholder?: reactive<string>;
855
+ placeholder?: attr<string>;
855
856
  disabled?: reactive<boolean>;
856
- readonly?: reactive<boolean>;
857
- required?: reactive<boolean>;
858
- rows?: reactive<number>;
859
- cols?: reactive<number>;
860
- minlength?: reactive<number>;
861
- maxlength?: reactive<number>;
862
- wrap?: reactive<"hard" | "soft" | "off">;
863
- autocomplete?: reactive<string>;
864
- autofocus?: reactive<boolean>;
865
- form?: reactive<string>;
866
- spellcheck?: reactive<boolean>;
857
+ readonly?: attr<boolean>;
858
+ required?: attr<boolean>;
859
+ rows?: attr<number>;
860
+ cols?: attr<number>;
861
+ minlength?: attr<number>;
862
+ maxlength?: attr<number>;
863
+ wrap?: attr<"hard" | "soft" | "off">;
864
+ autocomplete?: attr<string>;
865
+ autofocus?: attr<boolean>;
866
+ form?: attr<string>;
867
+ spellcheck?: attr<boolean>;
867
868
  }
868
869
  interface LabelProps extends TagProps<HTMLLabelElement> {
869
- for?: reactive<string>;
870
- form?: reactive<string>;
870
+ for?: attr<string>;
871
+ form?: attr<string>;
871
872
  }
872
873
  interface OptionProps extends TagProps<HTMLOptionElement> {
873
874
  value?: reactive<string | number>;
874
875
  selected?: reactive<boolean>;
875
876
  disabled?: reactive<boolean>;
876
- label?: reactive<string>;
877
+ label?: attr<string>;
877
878
  }
878
879
  interface MediaProps<El extends HTMLMediaElement = HTMLMediaElement> extends TagProps<El> {
879
- src?: reactive<string>;
880
- autoplay?: reactive<boolean>;
881
- controls?: reactive<boolean>;
882
- loop?: reactive<boolean>;
883
- muted?: reactive<boolean>;
884
- preload?: reactive<"none" | "metadata" | "auto">;
885
- crossorigin?: reactive<"anonymous" | "use-credentials">;
880
+ src?: attr<string>;
881
+ autoplay?: attr<boolean>;
882
+ controls?: attr<boolean>;
883
+ loop?: attr<boolean>;
884
+ muted?: attr<boolean>;
885
+ preload?: attr<"none" | "metadata" | "auto">;
886
+ crossorigin?: attr<"anonymous" | "use-credentials">;
886
887
  }
887
888
  interface VideoProps extends MediaProps<HTMLVideoElement> {
888
- poster?: reactive<string>;
889
- width?: reactive<number | string>;
890
- height?: reactive<number | string>;
891
- playsinline?: reactive<boolean>;
889
+ poster?: attr<string>;
890
+ width?: attr<number | string>;
891
+ height?: attr<number | string>;
892
+ playsinline?: attr<boolean>;
892
893
  }
893
894
  type AudioProps = MediaProps<HTMLAudioElement>;
894
895
  type TypedTagFunction<Props extends TagProps<El>, El extends Element> = TagFunction<El, Props>;