sibujs 4.4.0 → 4.6.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 (112) hide show
  1. package/README.md +11 -0
  2. package/dist/browser.cjs +339 -130
  3. package/dist/browser.d.cts +61 -16
  4. package/dist/browser.d.ts +61 -16
  5. package/dist/browser.js +8 -6
  6. package/dist/build.cjs +273 -82
  7. package/dist/build.js +15 -16
  8. package/dist/cdn.dev.global.js +12 -12
  9. package/dist/cdn.full.dev.global.js +11 -11
  10. package/dist/cdn.full.global.js +10 -10
  11. package/dist/cdn.global.js +12 -12
  12. package/dist/{chunk-IXKSNWV5.js → chunk-2INLLLMZ.js} +1 -1
  13. package/dist/chunk-3ISI6ACU.js +44 -0
  14. package/dist/{chunk-VCTAEPSB.js → chunk-47M47FOM.js} +11 -3
  15. package/dist/chunk-5HZXGZ6T.js +24 -0
  16. package/dist/{chunk-KKLW7YWL.js → chunk-5MT6SJ3P.js} +275 -144
  17. package/dist/{chunk-3BTTCZ5J.js → chunk-5Q4R7HCL.js} +42 -4
  18. package/dist/{chunk-ADM46X22.js → chunk-7GQCWFOE.js} +157 -61
  19. package/dist/{chunk-4Z3SPQ67.js → chunk-7NCARGJW.js} +16 -8
  20. package/dist/{chunk-5DXA2J44.js → chunk-7XHATCIH.js} +5 -2
  21. package/dist/{chunk-LQFGQNMV.js → chunk-AIF3Z2T7.js} +302 -39
  22. package/dist/{chunk-UCALUKB5.js → chunk-BAAG6ZTI.js} +98 -29
  23. package/dist/{chunk-NVNJH22U.js → chunk-D33YTSX5.js} +2 -2
  24. package/dist/{chunk-M2F7TZHH.js → chunk-DKGBBKOF.js} +136 -80
  25. package/dist/{chunk-NIOYEGBQ.js → chunk-HURREPU2.js} +27 -13
  26. package/dist/{chunk-HFCOH2GN.js → chunk-HYXDKS4N.js} +153 -110
  27. package/dist/chunk-J6FW5TV6.js +233 -0
  28. package/dist/{chunk-36S2YPP4.js → chunk-JSXPZCET.js} +1 -1
  29. package/dist/chunk-NYNYSPK7.js +318 -0
  30. package/dist/{chunk-HQSEH5F6.js → chunk-ORMZXBKQ.js} +108 -45
  31. package/dist/{chunk-LYVUX7NT.js → chunk-OXUY2A6L.js} +287 -130
  32. package/dist/{chunk-6GSIXTWX.js → chunk-PK6FK2G2.js} +187 -66
  33. package/dist/{chunk-W2EQ7X2L.js → chunk-QE4TTDU3.js} +47 -9
  34. package/dist/{chunk-XLO7SLIX.js → chunk-SXXVZMKZ.js} +262 -70
  35. package/dist/{chunk-R25EFXXC.js → chunk-TUCPL2HB.js} +3 -3
  36. package/dist/{chunk-RR7M3FHM.js → chunk-UZQ6ALFS.js} +3 -3
  37. package/dist/{chunk-PNIRUQ4C.js → chunk-VVWPJ543.js} +6 -8
  38. package/dist/{chunk-7GIHSAWB.js → chunk-XC4MEKGA.js} +3 -3
  39. package/dist/{chunk-SKPTERHP.js → chunk-XRRZKZYX.js} +55 -31
  40. package/dist/{contracts-DBdg9J_a.d.cts → contracts-DRIuclVT.d.cts} +10 -2
  41. package/dist/{contracts-DBdg9J_a.d.ts → contracts-DRIuclVT.d.ts} +10 -2
  42. package/dist/{customElement-CNZxEB9G.d.ts → customElement-MmInOW1U.d.cts} +59 -10
  43. package/dist/{customElement-CNZxEB9G.d.cts → customElement-MmInOW1U.d.ts} +59 -10
  44. package/dist/data.cjs +293 -125
  45. package/dist/data.d.cts +47 -9
  46. package/dist/data.d.ts +47 -9
  47. package/dist/data.js +12 -9
  48. package/dist/devtools.cjs +121 -58
  49. package/dist/devtools.js +7 -8
  50. package/dist/dispose-GEIG2KOF.js +28 -0
  51. package/dist/ecosystem.cjs +391 -112
  52. package/dist/ecosystem.d.cts +31 -7
  53. package/dist/ecosystem.d.ts +31 -7
  54. package/dist/ecosystem.js +12 -12
  55. package/dist/extras.cjs +2250 -879
  56. package/dist/extras.d.cts +10 -9
  57. package/dist/extras.d.ts +10 -9
  58. package/dist/extras.js +39 -28
  59. package/dist/index.cjs +273 -82
  60. package/dist/index.d.cts +44 -154
  61. package/dist/index.d.ts +44 -154
  62. package/dist/index.js +24 -27
  63. package/dist/motion.cjs +137 -42
  64. package/dist/motion.js +5 -5
  65. package/dist/patterns.cjs +397 -48
  66. package/dist/patterns.d.cts +32 -9
  67. package/dist/patterns.d.ts +32 -9
  68. package/dist/patterns.js +8 -8
  69. package/dist/performance.cjs +338 -217
  70. package/dist/performance.d.cts +2 -2
  71. package/dist/performance.d.ts +2 -2
  72. package/dist/performance.js +8 -9
  73. package/dist/plugin-DVgSnTfK.d.cts +112 -0
  74. package/dist/plugin-DVgSnTfK.d.ts +112 -0
  75. package/dist/plugins.cjs +587 -203
  76. package/dist/plugins.d.cts +3 -3
  77. package/dist/plugins.d.ts +3 -3
  78. package/dist/plugins.js +35 -23
  79. package/dist/signal-EotCj4hS.d.cts +110 -0
  80. package/dist/signal-EotCj4hS.d.ts +110 -0
  81. package/dist/{ssr-BiPRdZ6n.d.cts → ssr-Bli9XRW5.d.cts} +5 -0
  82. package/dist/{ssr-BiPRdZ6n.d.ts → ssr-Bli9XRW5.d.ts} +5 -0
  83. package/dist/{ssr-Y7XOEPEN.js → ssr-XOTUASDO.js} +4 -5
  84. package/dist/ssr.cjs +214 -73
  85. package/dist/ssr.d.cts +9 -3
  86. package/dist/ssr.d.ts +9 -3
  87. package/dist/ssr.js +11 -12
  88. package/dist/{startup-BMpaiMhP.d.ts → startup-BLfSeL15.d.cts} +73 -22
  89. package/dist/{startup-BMpaiMhP.d.cts → startup-BLfSeL15.d.ts} +73 -22
  90. package/dist/tagFactory-DFstCLQV.d.cts +117 -0
  91. package/dist/tagFactory-DkaNVUNV.d.ts +117 -0
  92. package/dist/testing.cjs +2481 -2153
  93. package/dist/testing.d.cts +56 -5
  94. package/dist/testing.d.ts +56 -5
  95. package/dist/testing.js +580 -307
  96. package/dist/ui.cjs +798 -328
  97. package/dist/ui.d.cts +40 -7
  98. package/dist/ui.d.ts +40 -7
  99. package/dist/ui.js +151 -56
  100. package/dist/widgets.cjs +319 -285
  101. package/dist/widgets.js +9 -10
  102. package/package.json +2 -2
  103. package/dist/chunk-2WLZ6757.js +0 -149
  104. package/dist/chunk-7NBDXVHS.js +0 -60
  105. package/dist/chunk-CCSJMTRN.js +0 -15
  106. package/dist/chunk-QKRPLZ2V.js +0 -108
  107. package/dist/chunk-WWV3SJ3L.js +0 -131
  108. package/dist/dispose-46BOMMQJ.js +0 -19
  109. package/dist/plugin-D30wlGW5.d.cts +0 -71
  110. package/dist/plugin-D30wlGW5.d.ts +0 -71
  111. package/dist/tagFactory-Bzupt4Pj.d.cts +0 -55
  112. package/dist/tagFactory-Bzupt4Pj.d.ts +0 -55
@@ -1,5 +1,6 @@
1
- import { S as SibuPlugin } from './plugin-D30wlGW5.cjs';
2
- import { T as TagProps } from './tagFactory-Bzupt4Pj.cjs';
1
+ import { S as SibuPlugin } from './plugin-DVgSnTfK.cjs';
2
+ import { D as DerivedAccessor, T as TagProps, a as NodeChildren } from './tagFactory-DFstCLQV.cjs';
3
+ import './signal-EotCj4hS.cjs';
3
4
 
4
5
  /** MobX autorun disposer function type. */
5
6
  type MobXReactionDisposer = () => void;
@@ -67,8 +68,12 @@ interface ReduxAdapterOptions<S = unknown> {
67
68
  interface ReduxAdapterAPI<S = unknown> {
68
69
  /** Full store state as a SibuJS reactive getter */
69
70
  getState: () => S;
70
- /** Create a SibuJS reactive getter from a Redux selector */
71
- select: <R>(selector: (state: S) => R) => () => R;
71
+ /**
72
+ * Create a SibuJS reactive getter from a Redux selector. The getter is a
73
+ * `derived()` subscribed to the store state; call its `dispose()` when a
74
+ * selector is discarded before the adapter.
75
+ */
76
+ select: <R>(selector: (state: S) => R) => DerivedAccessor<R>;
72
77
  /** Dispatch an action to the Redux store */
73
78
  dispatch: ReduxStore<S>["dispatch"];
74
79
  /** Unsubscribe from the Redux store */
@@ -110,8 +115,12 @@ interface ZustandAdapterOptions<S> {
110
115
  interface ZustandAdapterAPI<S> {
111
116
  /** Full Zustand state as a SibuJS reactive getter */
112
117
  getState: () => S;
113
- /** Create a SibuJS reactive getter from a Zustand selector */
114
- select: <R>(selector: (state: S) => R) => () => R;
118
+ /**
119
+ * Create a SibuJS reactive getter from a Zustand selector. The getter is a
120
+ * `derived()` subscribed to the store state; call its `dispose()` when a
121
+ * selector is discarded before the adapter.
122
+ */
123
+ select: <R>(selector: (state: S) => R) => DerivedAccessor<R>;
115
124
  /** Set state on the Zustand store */
116
125
  setState: ZustandStore<S>["setState"];
117
126
  /** Destroy the subscription and the Zustand store */
@@ -155,6 +164,16 @@ interface ThemeAPI {
155
164
  setTheme: (config: Partial<ThemeConfig>) => void;
156
165
  /** Resolve a component class name using prefix and overrides */
157
166
  resolveClass: (component: string, variant?: string) => string;
167
+ /**
168
+ * Install the theme's CSS variables on `root` (the theme root — typically the
169
+ * app container) and keep them in sync: variables added, changed or removed by
170
+ * `setTheme()` are reflected, and custom properties the theme never set are left
171
+ * alone. Handles may overlap on one root and be released in any order: the
172
+ * most recently applied live handle's value wins, and when no handle sets a
173
+ * property any more, the value and priority it had before are restored.
174
+ * Returns a function that stops syncing and releases this handle.
175
+ */
176
+ applyTo: (root: HTMLElement) => () => void;
158
177
  }
159
178
  /**
160
179
  * Creates a reactive theme for a UI component library adapter.
@@ -186,7 +205,12 @@ interface AdaptedComponentProps extends TagProps {
186
205
  /** Component size (e.g., "sm", "md", "lg") */
187
206
  size?: string;
188
207
  }
189
- type AdaptedComponent = (props?: AdaptedComponentProps) => Element;
208
+ /**
209
+ * A component produced by {@link componentAdapter}. Children may be passed
210
+ * positionally, exactly like a tag factory: `Button({ variant: "primary" }, "Save")`.
211
+ * Positional children take precedence over a `nodes` prop.
212
+ */
213
+ type AdaptedComponent = (props?: AdaptedComponentProps, children?: NodeChildren) => Element;
190
214
  /**
191
215
  * Creates a set of SibuJS components from a CSS framework's class mappings.
192
216
  *
@@ -1,5 +1,6 @@
1
- import { S as SibuPlugin } from './plugin-D30wlGW5.js';
2
- import { T as TagProps } from './tagFactory-Bzupt4Pj.js';
1
+ import { S as SibuPlugin } from './plugin-DVgSnTfK.js';
2
+ import { D as DerivedAccessor, T as TagProps, a as NodeChildren } from './tagFactory-DkaNVUNV.js';
3
+ import './signal-EotCj4hS.js';
3
4
 
4
5
  /** MobX autorun disposer function type. */
5
6
  type MobXReactionDisposer = () => void;
@@ -67,8 +68,12 @@ interface ReduxAdapterOptions<S = unknown> {
67
68
  interface ReduxAdapterAPI<S = unknown> {
68
69
  /** Full store state as a SibuJS reactive getter */
69
70
  getState: () => S;
70
- /** Create a SibuJS reactive getter from a Redux selector */
71
- select: <R>(selector: (state: S) => R) => () => R;
71
+ /**
72
+ * Create a SibuJS reactive getter from a Redux selector. The getter is a
73
+ * `derived()` subscribed to the store state; call its `dispose()` when a
74
+ * selector is discarded before the adapter.
75
+ */
76
+ select: <R>(selector: (state: S) => R) => DerivedAccessor<R>;
72
77
  /** Dispatch an action to the Redux store */
73
78
  dispatch: ReduxStore<S>["dispatch"];
74
79
  /** Unsubscribe from the Redux store */
@@ -110,8 +115,12 @@ interface ZustandAdapterOptions<S> {
110
115
  interface ZustandAdapterAPI<S> {
111
116
  /** Full Zustand state as a SibuJS reactive getter */
112
117
  getState: () => S;
113
- /** Create a SibuJS reactive getter from a Zustand selector */
114
- select: <R>(selector: (state: S) => R) => () => R;
118
+ /**
119
+ * Create a SibuJS reactive getter from a Zustand selector. The getter is a
120
+ * `derived()` subscribed to the store state; call its `dispose()` when a
121
+ * selector is discarded before the adapter.
122
+ */
123
+ select: <R>(selector: (state: S) => R) => DerivedAccessor<R>;
115
124
  /** Set state on the Zustand store */
116
125
  setState: ZustandStore<S>["setState"];
117
126
  /** Destroy the subscription and the Zustand store */
@@ -155,6 +164,16 @@ interface ThemeAPI {
155
164
  setTheme: (config: Partial<ThemeConfig>) => void;
156
165
  /** Resolve a component class name using prefix and overrides */
157
166
  resolveClass: (component: string, variant?: string) => string;
167
+ /**
168
+ * Install the theme's CSS variables on `root` (the theme root — typically the
169
+ * app container) and keep them in sync: variables added, changed or removed by
170
+ * `setTheme()` are reflected, and custom properties the theme never set are left
171
+ * alone. Handles may overlap on one root and be released in any order: the
172
+ * most recently applied live handle's value wins, and when no handle sets a
173
+ * property any more, the value and priority it had before are restored.
174
+ * Returns a function that stops syncing and releases this handle.
175
+ */
176
+ applyTo: (root: HTMLElement) => () => void;
158
177
  }
159
178
  /**
160
179
  * Creates a reactive theme for a UI component library adapter.
@@ -186,7 +205,12 @@ interface AdaptedComponentProps extends TagProps {
186
205
  /** Component size (e.g., "sm", "md", "lg") */
187
206
  size?: string;
188
207
  }
189
- type AdaptedComponent = (props?: AdaptedComponentProps) => Element;
208
+ /**
209
+ * A component produced by {@link componentAdapter}. Children may be passed
210
+ * positionally, exactly like a tag factory: `Button({ variant: "primary" }, "Save")`.
211
+ * Positional children take precedence over a `nodes` prop.
212
+ */
213
+ type AdaptedComponent = (props?: AdaptedComponentProps, children?: NodeChildren) => Element;
190
214
  /**
191
215
  * Creates a set of SibuJS components from a CSS framework's class mappings.
192
216
  *
package/dist/ecosystem.js CHANGED
@@ -7,19 +7,19 @@ import {
7
7
  mobXAdapter,
8
8
  reduxAdapter,
9
9
  zustandAdapter
10
- } from "./chunk-UCALUKB5.js";
11
- import "./chunk-WWV3SJ3L.js";
12
- import "./chunk-PNIRUQ4C.js";
13
- import "./chunk-VCTAEPSB.js";
14
- import "./chunk-W2EQ7X2L.js";
15
- import "./chunk-IXKSNWV5.js";
10
+ } from "./chunk-BAAG6ZTI.js";
11
+ import "./chunk-J6FW5TV6.js";
12
+ import "./chunk-VVWPJ543.js";
13
+ import "./chunk-47M47FOM.js";
14
+ import "./chunk-QE4TTDU3.js";
15
+ import "./chunk-2INLLLMZ.js";
16
16
  import "./chunk-7ZHH77QA.js";
17
- import "./chunk-7GIHSAWB.js";
18
- import "./chunk-5DXA2J44.js";
19
- import "./chunk-QKRPLZ2V.js";
20
- import "./chunk-NVNJH22U.js";
21
- import "./chunk-3BTTCZ5J.js";
22
- import "./chunk-2WLZ6757.js";
17
+ import "./chunk-XC4MEKGA.js";
18
+ import "./chunk-7XHATCIH.js";
19
+ import "./chunk-5HZXGZ6T.js";
20
+ import "./chunk-D33YTSX5.js";
21
+ import "./chunk-5Q4R7HCL.js";
22
+ import "./chunk-NYNYSPK7.js";
23
23
  export {
24
24
  antdAdapter,
25
25
  chakraAdapter,