sibujs 1.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +1630 -0
- package/dist/browser.cjs +815 -0
- package/dist/browser.d.cts +174 -0
- package/dist/browser.d.ts +174 -0
- package/dist/browser.js +458 -0
- package/dist/build.cjs +4970 -0
- package/dist/build.d.cts +630 -0
- package/dist/build.d.ts +630 -0
- package/dist/build.js +2478 -0
- package/dist/cdn.global.js +115 -0
- package/dist/chunk-27QC4FPL.js +67 -0
- package/dist/chunk-2ABBWCGC.js +65 -0
- package/dist/chunk-2MUNQYZ7.js +26 -0
- package/dist/chunk-2PSPKNUI.js +1711 -0
- package/dist/chunk-35CDLDX5.js +1758 -0
- package/dist/chunk-36MU4CFV.js +41 -0
- package/dist/chunk-3FIQOFI6.js +182 -0
- package/dist/chunk-3GHNC2BN.js +28 -0
- package/dist/chunk-3HLWWEPU.js +909 -0
- package/dist/chunk-3IVI3J54.js +252 -0
- package/dist/chunk-3KZ72WNW.js +944 -0
- package/dist/chunk-4AU64SQV.js +182 -0
- package/dist/chunk-4MOK7HAR.js +84 -0
- package/dist/chunk-4QK6FBDH.js +1429 -0
- package/dist/chunk-566Z7HXB.js +737 -0
- package/dist/chunk-5CRBB7XP.js +358 -0
- package/dist/chunk-5G67D3IZ.js +168 -0
- package/dist/chunk-5NCPAWBE.js +99 -0
- package/dist/chunk-5O2RKXR3.js +1444 -0
- package/dist/chunk-6BTBDO6A.js +633 -0
- package/dist/chunk-6IWEHW57.js +43 -0
- package/dist/chunk-6JGMNCD6.js +282 -0
- package/dist/chunk-6QRLJNXR.js +1425 -0
- package/dist/chunk-7HM5UE5T.js +270 -0
- package/dist/chunk-7JOLTGUH.js +58 -0
- package/dist/chunk-7MCWJCQK.js +909 -0
- package/dist/chunk-7RIIFP3E.js +1758 -0
- package/dist/chunk-7UASYN3G.js +254 -0
- package/dist/chunk-7W2WYHDI.js +741 -0
- package/dist/chunk-7Y35RDSJ.js +872 -0
- package/dist/chunk-A65GFJBL.js +65 -0
- package/dist/chunk-AD6ZIEDK.js +67 -0
- package/dist/chunk-AK5Y72F3.js +1426 -0
- package/dist/chunk-APOMMWH4.js +282 -0
- package/dist/chunk-ARZVTWIQ.js +1750 -0
- package/dist/chunk-AWWBM2BI.js +664 -0
- package/dist/chunk-AX5VEQTY.js +58 -0
- package/dist/chunk-AYTXVOW3.js +1708 -0
- package/dist/chunk-BG4A246G.js +1746 -0
- package/dist/chunk-BNFJJA2L.js +1425 -0
- package/dist/chunk-BPKPBVU5.js +59 -0
- package/dist/chunk-BPKPPSXC.js +282 -0
- package/dist/chunk-BPWKKK7F.js +1711 -0
- package/dist/chunk-CCKX6YTC.js +1735 -0
- package/dist/chunk-CIF5Z3MP.js +58 -0
- package/dist/chunk-CSXYU7IO.js +457 -0
- package/dist/chunk-D6JD4FDC.js +26 -0
- package/dist/chunk-E7NGA7X2.js +59 -0
- package/dist/chunk-EEPPJKAE.js +443 -0
- package/dist/chunk-EJMYGAGQ.js +717 -0
- package/dist/chunk-EL6Z5MDY.js +55 -0
- package/dist/chunk-EP7VRLEB.js +41 -0
- package/dist/chunk-ETMEC6FH.js +99 -0
- package/dist/chunk-EZ2WHYVL.js +65 -0
- package/dist/chunk-EZRVMSZK.js +67 -0
- package/dist/chunk-F2TRGINX.js +254 -0
- package/dist/chunk-F5JCIH3Q.js +642 -0
- package/dist/chunk-FGK3JKMN.js +909 -0
- package/dist/chunk-FQWPKSTD.js +1437 -0
- package/dist/chunk-FWHVLMCI.js +26 -0
- package/dist/chunk-GBEYQRO2.js +303 -0
- package/dist/chunk-GBLES3NK.js +248 -0
- package/dist/chunk-GQVGUQW6.js +1436 -0
- package/dist/chunk-HCV2T76T.js +457 -0
- package/dist/chunk-HS7ZKVPR.js +182 -0
- package/dist/chunk-HXDVV7HZ.js +909 -0
- package/dist/chunk-IB23VMO3.js +1746 -0
- package/dist/chunk-IEMZ7RTT.js +99 -0
- package/dist/chunk-IPGRSN42.js +1750 -0
- package/dist/chunk-IVMOK2QN.js +1750 -0
- package/dist/chunk-JCLGQO7T.js +443 -0
- package/dist/chunk-JDXL7KDB.js +1436 -0
- package/dist/chunk-JIIFW636.js +270 -0
- package/dist/chunk-JWGEEH7H.js +944 -0
- package/dist/chunk-K2BESAG7.js +1688 -0
- package/dist/chunk-K2U5YGF4.js +877 -0
- package/dist/chunk-K45FQ4Y4.js +175 -0
- package/dist/chunk-K7BPE427.js +1432 -0
- package/dist/chunk-KL3266RS.js +26 -0
- package/dist/chunk-KNN4P7DZ.js +84 -0
- package/dist/chunk-KP2DZH5Q.js +254 -0
- package/dist/chunk-KZHAJSQR.js +1636 -0
- package/dist/chunk-LBKGHMQV.js +1750 -0
- package/dist/chunk-LBTEPL7A.js +1731 -0
- package/dist/chunk-LEBBPTDB.js +1444 -0
- package/dist/chunk-LLH63WVQ.js +98 -0
- package/dist/chunk-LWVR2C4G.js +1711 -0
- package/dist/chunk-M3MDTVV2.js +896 -0
- package/dist/chunk-M5GNLDEO.js +303 -0
- package/dist/chunk-MFHVGKET.js +267 -0
- package/dist/chunk-MGWSG3PM.js +358 -0
- package/dist/chunk-MJNB47HB.js +19 -0
- package/dist/chunk-MLKGABMK.js +9 -0
- package/dist/chunk-MQWTY3JY.js +944 -0
- package/dist/chunk-MZZOQHNI.js +642 -0
- package/dist/chunk-NIHWGZS4.js +1426 -0
- package/dist/chunk-NSVVHQK5.js +41 -0
- package/dist/chunk-NVI2WE7D.js +443 -0
- package/dist/chunk-O7QBO3PH.js +58 -0
- package/dist/chunk-OAUPQBO2.js +270 -0
- package/dist/chunk-OB2LMD7C.js +297 -0
- package/dist/chunk-OHEYBWQU.js +58 -0
- package/dist/chunk-OI6OXUHJ.js +443 -0
- package/dist/chunk-OX2VMRMV.js +633 -0
- package/dist/chunk-P4FYE5TX.js +866 -0
- package/dist/chunk-P5KFWM4H.js +98 -0
- package/dist/chunk-PUMLE7RJ.js +1711 -0
- package/dist/chunk-Q4MFANBF.js +282 -0
- package/dist/chunk-QLEKZMMU.js +282 -0
- package/dist/chunk-RGGNGVO3.js +98 -0
- package/dist/chunk-RKJDRVV6.js +443 -0
- package/dist/chunk-S5BHU353.js +43 -0
- package/dist/chunk-SHQUSFH7.js +1426 -0
- package/dist/chunk-SMB4DBMD.js +182 -0
- package/dist/chunk-SNYHQP3D.js +743 -0
- package/dist/chunk-T24L3TBF.js +1717 -0
- package/dist/chunk-TAQNSOKT.js +692 -0
- package/dist/chunk-TDNY4SUA.js +41 -0
- package/dist/chunk-TNNF56IQ.js +1750 -0
- package/dist/chunk-TR7E6LYX.js +457 -0
- package/dist/chunk-URWUFH45.js +98 -0
- package/dist/chunk-UUSIH3XH.js +1429 -0
- package/dist/chunk-UYFNXLKR.js +1436 -0
- package/dist/chunk-V6F7KUWD.js +270 -0
- package/dist/chunk-VCZLXRMR.js +254 -0
- package/dist/chunk-VDHXSSBT.js +1426 -0
- package/dist/chunk-VM4QMKVK.js +254 -0
- package/dist/chunk-VWGYKYL2.js +737 -0
- package/dist/chunk-VX2OFBJN.js +1426 -0
- package/dist/chunk-VXVIE6DG.js +84 -0
- package/dist/chunk-W4OH7HG4.js +40 -0
- package/dist/chunk-WBVJX4GZ.js +98 -0
- package/dist/chunk-WDU2ZV4I.js +1426 -0
- package/dist/chunk-X6VUCICU.js +457 -0
- package/dist/chunk-XAY7FM7Y.js +618 -0
- package/dist/chunk-XJZ5Z2CM.js +642 -0
- package/dist/chunk-XKVFQTJJ.js +254 -0
- package/dist/chunk-XRLFASCY.js +22 -0
- package/dist/chunk-XYU6TZOW.js +182 -0
- package/dist/chunk-Y745CBVB.js +944 -0
- package/dist/chunk-YLBJSXYY.js +944 -0
- package/dist/chunk-YQJIKVPZ.js +1429 -0
- package/dist/chunk-YRM2VCZF.js +457 -0
- package/dist/chunk-YS33KBVJ.js +944 -0
- package/dist/chunk-Z27DZPDG.js +41 -0
- package/dist/chunk-ZXQ5NAEN.js +32 -0
- package/dist/contracts-B552GopR.d.cts +245 -0
- package/dist/contracts-B552GopR.d.ts +245 -0
- package/dist/contracts-Bg1ECISC.d.cts +245 -0
- package/dist/contracts-Bg1ECISC.d.ts +245 -0
- package/dist/contracts-CMriKJ6P.d.cts +245 -0
- package/dist/contracts-CMriKJ6P.d.ts +245 -0
- package/dist/contracts-DOrhwbke.d.cts +245 -0
- package/dist/contracts-DOrhwbke.d.ts +245 -0
- package/dist/data.cjs +1373 -0
- package/dist/data.d.cts +434 -0
- package/dist/data.d.ts +434 -0
- package/dist/data.js +945 -0
- package/dist/devtools.cjs +1357 -0
- package/dist/devtools.d.cts +473 -0
- package/dist/devtools.d.ts +473 -0
- package/dist/devtools.js +1084 -0
- package/dist/ecosystem.cjs +1046 -0
- package/dist/ecosystem.d.cts +247 -0
- package/dist/ecosystem.d.ts +247 -0
- package/dist/ecosystem.js +369 -0
- package/dist/extras.cjs +8457 -0
- package/dist/extras.d.cts +2356 -0
- package/dist/extras.d.ts +2356 -0
- package/dist/extras.js +5152 -0
- package/dist/index.cjs +2648 -0
- package/dist/index.d.cts +869 -0
- package/dist/index.d.ts +869 -0
- package/dist/index.js +386 -0
- package/dist/motion.cjs +604 -0
- package/dist/motion.d.cts +146 -0
- package/dist/motion.d.ts +146 -0
- package/dist/motion.js +346 -0
- package/dist/patterns.cjs +815 -0
- package/dist/patterns.d.cts +163 -0
- package/dist/patterns.d.ts +163 -0
- package/dist/patterns.js +296 -0
- package/dist/performance.cjs +927 -0
- package/dist/performance.d.cts +416 -0
- package/dist/performance.d.ts +416 -0
- package/dist/performance.js +654 -0
- package/dist/plugins.cjs +2487 -0
- package/dist/plugins.d.cts +393 -0
- package/dist/plugins.d.ts +393 -0
- package/dist/plugins.js +1504 -0
- package/dist/signal-BnWpq6WB.d.cts +5 -0
- package/dist/signal-BnWpq6WB.d.ts +5 -0
- package/dist/src/components/ErrorBoundary.d.ts +15 -0
- package/dist/src/components/ErrorBoundary.js +119 -0
- package/dist/src/core/catch.d.ts +11 -0
- package/dist/src/core/catch.js +28 -0
- package/dist/src/core/each.d.ts +13 -0
- package/dist/src/core/each.js +68 -0
- package/dist/src/core/for.d.ts +12 -0
- package/dist/src/core/for.js +67 -0
- package/dist/src/core/html.d.ts +137 -0
- package/dist/src/core/html.js +155 -0
- package/dist/src/core/htmlIf.d.ts +11 -0
- package/dist/src/core/htmlIf.js +18 -0
- package/dist/src/core/lazy.d.ts +7 -0
- package/dist/src/core/lazy.js +16 -0
- package/dist/src/core/mount.d.ts +7 -0
- package/dist/src/core/mount.js +12 -0
- package/dist/src/core/slots.d.ts +3 -0
- package/dist/src/core/slots.js +3 -0
- package/dist/src/core/suspense.d.ts +10 -0
- package/dist/src/core/suspense.js +33 -0
- package/dist/src/core/tagFactory.d.ts +13 -0
- package/dist/src/core/tagFactory.js +86 -0
- package/dist/src/core/test.d.ts +11 -0
- package/dist/src/core/test.js +28 -0
- package/dist/src/core/types.d.ts +2 -0
- package/dist/src/core/types.js +1 -0
- package/dist/src/core/useComputed.d.ts +6 -0
- package/dist/src/core/useComputed.js +30 -0
- package/dist/src/core/useEffect.d.ts +6 -0
- package/dist/src/core/useEffect.js +23 -0
- package/dist/src/core/useState.d.ts +10 -0
- package/dist/src/core/useState.js +34 -0
- package/dist/src/core/useStore.d.ts +19 -0
- package/dist/src/core/useStore.js +53 -0
- package/dist/src/core/useWatch.d.ts +8 -0
- package/dist/src/core/useWatch.js +23 -0
- package/dist/src/plugins/i18n.d.ts +6 -0
- package/dist/src/plugins/i18n.js +16 -0
- package/dist/src/plugins/router.d.ts +188 -0
- package/dist/src/plugins/router.js +1178 -0
- package/dist/src/reactivity/bindAttribute.d.ts +5 -0
- package/dist/src/reactivity/bindAttribute.js +31 -0
- package/dist/src/reactivity/bindChildNode.d.ts +10 -0
- package/dist/src/reactivity/bindChildNode.js +46 -0
- package/dist/src/reactivity/bindTextNode.d.ts +10 -0
- package/dist/src/reactivity/bindTextNode.js +27 -0
- package/dist/src/reactivity/signal.d.ts +3 -0
- package/dist/src/reactivity/signal.js +1 -0
- package/dist/src/reactivity/track.d.ts +18 -0
- package/dist/src/reactivity/track.js +73 -0
- package/dist/src/reactivity/useComputed.d.ts +6 -0
- package/dist/src/reactivity/useComputed.js +30 -0
- package/dist/src/reactivity/useEffect.d.ts +6 -0
- package/dist/src/reactivity/useEffect.js +23 -0
- package/dist/src/reactivity/useState.d.ts +10 -0
- package/dist/src/reactivity/useState.js +34 -0
- package/dist/src/reactivity/useStore.d.ts +19 -0
- package/dist/src/reactivity/useStore.js +53 -0
- package/dist/src/reactivity/useWatch.d.ts +8 -0
- package/dist/src/reactivity/useWatch.js +23 -0
- package/dist/src/utils/sanitize.d.ts +1 -0
- package/dist/src/utils/sanitize.js +8 -0
- package/dist/ssr-27FOM46T.js +35 -0
- package/dist/ssr-GFUTTSJD.js +22 -0
- package/dist/ssr-K7DCR6BZ.js +35 -0
- package/dist/ssr-O6LFMRFP.js +35 -0
- package/dist/ssr-QZEVGMMK.js +35 -0
- package/dist/ssr-SGVBCAGC.js +35 -0
- package/dist/ssr-UB2IXCYX.js +35 -0
- package/dist/ssr-XBZQNV4O.js +22 -0
- package/dist/ssr-Y76FSXDU.js +35 -0
- package/dist/ssr-YQJ4AYBD.js +35 -0
- package/dist/ssr.cjs +1757 -0
- package/dist/ssr.d.cts +478 -0
- package/dist/ssr.d.ts +478 -0
- package/dist/ssr.js +743 -0
- package/dist/tagFactory-CZPO4RXF.d.cts +34 -0
- package/dist/tagFactory-CZPO4RXF.d.ts +34 -0
- package/dist/tagFactory-CgImPVMY.d.cts +22 -0
- package/dist/tagFactory-CgImPVMY.d.ts +22 -0
- package/dist/tagFactory-Cw1iv5if.d.cts +22 -0
- package/dist/tagFactory-Cw1iv5if.d.ts +22 -0
- package/dist/tagFactory-DeAXq9ef.d.cts +30 -0
- package/dist/tagFactory-DeAXq9ef.d.ts +30 -0
- package/dist/tagFactory-SkY0a7L1.d.cts +22 -0
- package/dist/tagFactory-SkY0a7L1.d.ts +22 -0
- package/dist/testing.cjs +1919 -0
- package/dist/testing.d.cts +491 -0
- package/dist/testing.d.ts +491 -0
- package/dist/testing.js +1862 -0
- package/dist/ui.cjs +1497 -0
- package/dist/ui.d.cts +264 -0
- package/dist/ui.d.ts +264 -0
- package/dist/ui.js +900 -0
- package/dist/widgets.cjs +919 -0
- package/dist/widgets.d.cts +165 -0
- package/dist/widgets.d.ts +165 -0
- package/dist/widgets.js +545 -0
- package/package.json +134 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,869 @@
|
|
|
1
|
+
import { T as TagProps, N as NodeChildren, a as NodeChild } from './tagFactory-DeAXq9ef.js';
|
|
2
|
+
export { S as SVG_NS, t as tagFactory } from './tagFactory-DeAXq9ef.js';
|
|
3
|
+
import { R as ReactiveSignal } from './signal-BnWpq6WB.js';
|
|
4
|
+
|
|
5
|
+
declare const head: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
6
|
+
declare const body: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
7
|
+
declare const title: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
8
|
+
declare const div: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
9
|
+
declare const span: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
10
|
+
declare const section: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
11
|
+
declare const article: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
12
|
+
declare const header: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
13
|
+
declare const footer: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
14
|
+
declare const nav: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
15
|
+
declare const main: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
16
|
+
declare const aside: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
17
|
+
declare const address: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
18
|
+
declare const p: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
19
|
+
declare const h1: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
20
|
+
declare const h2: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
21
|
+
declare const h3: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
22
|
+
declare const h4: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
23
|
+
declare const h5: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
24
|
+
declare const h6: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
25
|
+
declare const blockquote: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
26
|
+
declare const dd: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
27
|
+
declare const dl: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
28
|
+
declare const dt: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
29
|
+
declare const figcaption: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
30
|
+
declare const figure: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
31
|
+
declare const hr: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
32
|
+
declare const li: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
33
|
+
declare const ol: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
34
|
+
declare const ul: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
35
|
+
declare const pre: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
36
|
+
declare const a: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
37
|
+
declare const abbr: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
38
|
+
declare const b: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
39
|
+
declare const bdi: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
40
|
+
declare const bdo: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
41
|
+
declare const br: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
42
|
+
declare const cite: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
43
|
+
declare const code: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
44
|
+
declare const data: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
45
|
+
declare const dfn: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
46
|
+
declare const em: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
47
|
+
declare const i: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
48
|
+
declare const kbd: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
49
|
+
declare const mark: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
50
|
+
declare const q: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
51
|
+
declare const rp: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
52
|
+
declare const rt: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
53
|
+
declare const ruby: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
54
|
+
declare const s: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
55
|
+
declare const samp: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
56
|
+
declare const small: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
57
|
+
declare const strong: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
58
|
+
declare const sub: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
59
|
+
declare const sup: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
60
|
+
declare const time: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
61
|
+
declare const u: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
62
|
+
declare const var_: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
63
|
+
declare const area: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
64
|
+
declare const audio: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
65
|
+
declare const img: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
66
|
+
declare const map: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
67
|
+
declare const track: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
68
|
+
declare const video: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
69
|
+
declare const embed: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
70
|
+
declare const iframe: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
71
|
+
declare const object: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
72
|
+
declare const param: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
73
|
+
declare const picture: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
74
|
+
declare const portal: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
75
|
+
declare const source: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
76
|
+
declare const svg: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
77
|
+
declare const math: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
78
|
+
declare const canvas: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
79
|
+
declare const noscript: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
80
|
+
declare const script: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
81
|
+
declare const del: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
82
|
+
declare const ins: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
83
|
+
declare const caption: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
84
|
+
declare const col: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
85
|
+
declare const colgroup: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
86
|
+
declare const table: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
87
|
+
declare const tbody: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
88
|
+
declare const td: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
89
|
+
declare const tfoot: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
90
|
+
declare const th: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
91
|
+
declare const thead: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
92
|
+
declare const tr: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
93
|
+
declare const button: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
94
|
+
declare const datalist: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
95
|
+
declare const fieldset: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
96
|
+
declare const form: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
97
|
+
declare const input: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
98
|
+
declare const label: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
99
|
+
declare const legend: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
100
|
+
declare const meter: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
101
|
+
declare const optgroup: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
102
|
+
declare const option: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
103
|
+
declare const output: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
104
|
+
declare const progress: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
105
|
+
declare const select: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
106
|
+
declare const textarea: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
107
|
+
declare const details: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
108
|
+
declare const dialog: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
109
|
+
declare const menu: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
110
|
+
declare const summary: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
111
|
+
declare const slot: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
112
|
+
declare const template: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
113
|
+
declare const base: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
114
|
+
declare const link: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
115
|
+
declare const meta: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
116
|
+
declare const style: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
117
|
+
declare const circle: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
118
|
+
declare const ellipse: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
119
|
+
declare const g: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
120
|
+
declare const line: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
121
|
+
declare const path: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
122
|
+
declare const polygon: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
123
|
+
declare const polyline: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
124
|
+
declare const rect: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
125
|
+
declare const text: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
126
|
+
declare const tspan: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
127
|
+
declare const defs: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
128
|
+
declare const clipPath: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
129
|
+
declare const mask: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
130
|
+
declare const pattern: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
131
|
+
declare const linearGradient: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
132
|
+
declare const radialGradient: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
133
|
+
declare const stop: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
134
|
+
declare const use: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
135
|
+
declare const symbol: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
136
|
+
declare const marker: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
137
|
+
declare const center: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
138
|
+
declare const font: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
139
|
+
declare const marquee: (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
140
|
+
declare const customElement: (tagName: string) => (first?: TagProps | NodeChildren, second?: NodeChildren) => Element;
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Tagged template literal for building Sibu elements with HTML-like syntax.
|
|
144
|
+
* Runtime-only — no compiler or build step required.
|
|
145
|
+
*
|
|
146
|
+
* Templates are parsed once per call site and cached. Subsequent calls at the
|
|
147
|
+
* same source location skip parsing entirely and only replay the cached
|
|
148
|
+
* structure with fresh expression values.
|
|
149
|
+
*
|
|
150
|
+
* Usage:
|
|
151
|
+
* html`<div class="container">
|
|
152
|
+
* <h1>${() => title()}</h1>
|
|
153
|
+
* <button on:click=${handler}>Click me</button>
|
|
154
|
+
* ${each(() => items(), item => html`<li>${item.name}</li>`)}
|
|
155
|
+
* </div>`
|
|
156
|
+
*
|
|
157
|
+
* Supports:
|
|
158
|
+
* - All HTML/SVG tags → Sibu elements via tagFactory
|
|
159
|
+
* - Static attributes: class="foo"
|
|
160
|
+
* - Dynamic attributes: class=${() => "active"}, id=${myId}
|
|
161
|
+
* - Event handlers: on:click=${handler}
|
|
162
|
+
* - Reactive children: ${() => count()}
|
|
163
|
+
* - Sibu directives as children: ${each(...)}, ${when(...)}
|
|
164
|
+
* - Self-closing tags: <br />, <img src="..." />
|
|
165
|
+
* - Void elements: <br>, <input type="text">
|
|
166
|
+
*/
|
|
167
|
+
declare function html(strings: TemplateStringsArray, ...values: unknown[]): Element;
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Mounts a root component into a DOM element.
|
|
171
|
+
* Supports both function components and pre-created HTMLElements.
|
|
172
|
+
*/
|
|
173
|
+
declare function mount(component: (() => Element) | Element | Node, container: Element | null): {
|
|
174
|
+
node: Node;
|
|
175
|
+
unmount: () => void;
|
|
176
|
+
};
|
|
177
|
+
|
|
178
|
+
/**
|
|
179
|
+
* Renders a list of nodes efficiently with key-based diffing and
|
|
180
|
+
* LIS-based move minimization.
|
|
181
|
+
*
|
|
182
|
+
* The reconciliation algorithm works as follows:
|
|
183
|
+
* 1. Build or reuse nodes by key (create new, keep existing).
|
|
184
|
+
* 2. Remove nodes whose keys no longer exist.
|
|
185
|
+
* 3. For nodes that existed in both old and new lists, compute their
|
|
186
|
+
* old indices and find the Longest Increasing Subsequence (LIS).
|
|
187
|
+
* Nodes in the LIS are already in the correct relative order and
|
|
188
|
+
* do NOT need to be moved. Only nodes outside the LIS are moved.
|
|
189
|
+
* 4. Walk the new key list in reverse and insert/position each node,
|
|
190
|
+
* skipping DOM operations for nodes that are part of the LIS.
|
|
191
|
+
*
|
|
192
|
+
* @param getArray A reactive getter returning an array.
|
|
193
|
+
* @param render A function that returns a NodeChild for each item.
|
|
194
|
+
* @param options A key function for unique identity of items.
|
|
195
|
+
* @returns A Comment node serving as the anchor for the list.
|
|
196
|
+
*/
|
|
197
|
+
declare function each<T>(getArray: () => T[], render: (item: T, index: number) => NodeChild, options: {
|
|
198
|
+
key: (item: T) => string | number;
|
|
199
|
+
}): Comment;
|
|
200
|
+
|
|
201
|
+
/**
|
|
202
|
+
* Fragment groups multiple nodes without adding a wrapper DOM element.
|
|
203
|
+
* Returns a DocumentFragment that can be appended to any parent.
|
|
204
|
+
*
|
|
205
|
+
* @example
|
|
206
|
+
* ```ts
|
|
207
|
+
* div({
|
|
208
|
+
* nodes: [
|
|
209
|
+
* Fragment([
|
|
210
|
+
* p({ nodes: "First" }),
|
|
211
|
+
* p({ nodes: "Second" }),
|
|
212
|
+
* ])
|
|
213
|
+
* ]
|
|
214
|
+
* });
|
|
215
|
+
* ```
|
|
216
|
+
*
|
|
217
|
+
* @param nodes Array of child nodes to include in the fragment
|
|
218
|
+
* @returns A DocumentFragment containing all nodes
|
|
219
|
+
*/
|
|
220
|
+
declare function Fragment(nodes: NodeChildren[]): DocumentFragment;
|
|
221
|
+
|
|
222
|
+
/**
|
|
223
|
+
* Portal renders nodes into a DOM node outside the parent component hierarchy.
|
|
224
|
+
* Useful for modals, tooltips, dropdowns, and overlays.
|
|
225
|
+
*
|
|
226
|
+
* @param nodes Function that returns the content to render
|
|
227
|
+
* @param target Target DOM element (defaults to document.body)
|
|
228
|
+
* @returns A Comment anchor node in the original position
|
|
229
|
+
*
|
|
230
|
+
* @example
|
|
231
|
+
* ```ts
|
|
232
|
+
* // Render modal at document.body
|
|
233
|
+
* Portal(() => div({ class: "modal", nodes: "Modal content" }));
|
|
234
|
+
*
|
|
235
|
+
* // Render into specific container
|
|
236
|
+
* const overlay = document.getElementById("overlay-root")!;
|
|
237
|
+
* Portal(() => div({ nodes: "Tooltip" }), overlay);
|
|
238
|
+
* ```
|
|
239
|
+
*/
|
|
240
|
+
declare function Portal(nodes: () => HTMLElement, target?: HTMLElement): Comment;
|
|
241
|
+
|
|
242
|
+
type Component$1 = () => HTMLElement;
|
|
243
|
+
/**
|
|
244
|
+
* Register a component by name for dynamic resolution.
|
|
245
|
+
*
|
|
246
|
+
* @param name Unique component identifier
|
|
247
|
+
* @param component The component function
|
|
248
|
+
*
|
|
249
|
+
* @example
|
|
250
|
+
* ```ts
|
|
251
|
+
* registerComponent("UserCard", UserCard);
|
|
252
|
+
* registerComponent("AdminPanel", AdminPanel);
|
|
253
|
+
* ```
|
|
254
|
+
*/
|
|
255
|
+
declare function registerComponent(name: string, component: Component$1): void;
|
|
256
|
+
/**
|
|
257
|
+
* Unregister a previously registered component.
|
|
258
|
+
*/
|
|
259
|
+
declare function unregisterComponent(name: string): void;
|
|
260
|
+
/**
|
|
261
|
+
* Resolve and render a dynamically registered component by name.
|
|
262
|
+
* Returns a placeholder if the component is not found.
|
|
263
|
+
*
|
|
264
|
+
* @param name Component name to resolve
|
|
265
|
+
* @returns The rendered HTMLElement or a fallback
|
|
266
|
+
*
|
|
267
|
+
* @example
|
|
268
|
+
* ```ts
|
|
269
|
+
* registerComponent("Widget", MyWidget);
|
|
270
|
+
* div({ nodes: [resolveComponent("Widget")] });
|
|
271
|
+
* ```
|
|
272
|
+
*/
|
|
273
|
+
declare function resolveComponent(name: string): HTMLElement;
|
|
274
|
+
/**
|
|
275
|
+
* Dynamic component that reactively switches between components
|
|
276
|
+
* based on a reactive getter returning a component name or function.
|
|
277
|
+
*
|
|
278
|
+
* @param is Reactive getter returning component name (string) or component function
|
|
279
|
+
* @param props Optional props to pass
|
|
280
|
+
* @returns Container element that swaps content reactively
|
|
281
|
+
*
|
|
282
|
+
* @example
|
|
283
|
+
* ```ts
|
|
284
|
+
* const [view, setView] = signal("list");
|
|
285
|
+
* DynamicComponent(() => view()); // Renders registered "list" component
|
|
286
|
+
* setView("grid"); // Swaps to registered "grid" component
|
|
287
|
+
* ```
|
|
288
|
+
*/
|
|
289
|
+
declare function DynamicComponent(is: () => string | Component$1): HTMLElement;
|
|
290
|
+
|
|
291
|
+
type SlotFn = () => Element | string | number | null | undefined;
|
|
292
|
+
type Slots = Record<string, SlotFn>;
|
|
293
|
+
declare function getSlot(slots: Slots | undefined, name?: string): SlotFn | undefined;
|
|
294
|
+
|
|
295
|
+
/**
|
|
296
|
+
* Conditional rendering directive. Shows or hides an element reactively.
|
|
297
|
+
* Unlike `when()`, the element is always created — it just toggles display.
|
|
298
|
+
*
|
|
299
|
+
* @param condition Reactive getter returning boolean
|
|
300
|
+
* @param element The element to show/hide
|
|
301
|
+
* @returns The element with reactive display binding
|
|
302
|
+
*
|
|
303
|
+
* @example
|
|
304
|
+
* ```ts
|
|
305
|
+
* const [visible, setVisible] = signal(true);
|
|
306
|
+
* div({ nodes: [show(() => visible(), span({ nodes: "I toggle!" }))] });
|
|
307
|
+
* ```
|
|
308
|
+
*/
|
|
309
|
+
declare function show(condition: () => boolean, element: HTMLElement): HTMLElement;
|
|
310
|
+
/**
|
|
311
|
+
* Conditional rendering directive. Renders content only when condition is true.
|
|
312
|
+
* When false, renders nothing (comment placeholder). Re-evaluates reactively.
|
|
313
|
+
*
|
|
314
|
+
* @param condition Reactive getter returning boolean
|
|
315
|
+
* @param thenBranch Function returning element when true
|
|
316
|
+
* @param elseBranch Optional function returning element when false
|
|
317
|
+
* @returns A Comment anchor that manages the conditional content
|
|
318
|
+
*
|
|
319
|
+
* @example
|
|
320
|
+
* ```ts
|
|
321
|
+
* when(
|
|
322
|
+
* () => isLoggedIn(),
|
|
323
|
+
* () => div({ nodes: "Welcome!" }),
|
|
324
|
+
* () => div({ nodes: "Please log in" })
|
|
325
|
+
* );
|
|
326
|
+
* ```
|
|
327
|
+
*/
|
|
328
|
+
declare function when(condition: () => boolean, thenBranch: () => NodeChild, elseBranch?: () => NodeChild): Comment;
|
|
329
|
+
/**
|
|
330
|
+
* Pattern matching directive. Renders content based on matching a reactive value
|
|
331
|
+
* against multiple cases. Similar to a switch statement.
|
|
332
|
+
*
|
|
333
|
+
* @param value Reactive getter returning the value to match
|
|
334
|
+
* @param cases Object mapping values to render functions
|
|
335
|
+
* @param fallback Optional default case if no match found
|
|
336
|
+
* @returns A Comment anchor that manages the matched content
|
|
337
|
+
*
|
|
338
|
+
* @example
|
|
339
|
+
* ```ts
|
|
340
|
+
* match(
|
|
341
|
+
* () => status(),
|
|
342
|
+
* {
|
|
343
|
+
* loading: () => Spinner(),
|
|
344
|
+
* error: () => ErrorMessage(),
|
|
345
|
+
* success: () => Content(),
|
|
346
|
+
* },
|
|
347
|
+
* () => div({ nodes: "Unknown status" })
|
|
348
|
+
* );
|
|
349
|
+
* ```
|
|
350
|
+
*/
|
|
351
|
+
declare function match<T extends string | number>(value: () => T, cases: Record<string, () => NodeChild>, fallback?: () => NodeChild): Comment;
|
|
352
|
+
|
|
353
|
+
type ErrorHandler = (error: unknown, context?: string) => void;
|
|
354
|
+
/**
|
|
355
|
+
* Wraps a function in a try/catch block with typed error handling.
|
|
356
|
+
* Supports both sync and async functions (catches Promise rejections).
|
|
357
|
+
*
|
|
358
|
+
* @param fn Function to execute safely
|
|
359
|
+
* @param onError Optional error handler (receives error and optional context)
|
|
360
|
+
* @returns The function's return value, or null on error
|
|
361
|
+
*/
|
|
362
|
+
declare function catchError<T>(fn: () => T, onError?: ErrorHandler): T | null;
|
|
363
|
+
/**
|
|
364
|
+
* Async version of catchError for explicit async/await usage.
|
|
365
|
+
*
|
|
366
|
+
* @param fn Async function to execute safely
|
|
367
|
+
* @param onError Optional error handler
|
|
368
|
+
* @returns Promise resolving to the result or null on error
|
|
369
|
+
*/
|
|
370
|
+
declare function catchErrorAsync<T>(fn: () => Promise<T>, onError?: ErrorHandler): Promise<T | null>;
|
|
371
|
+
/**
|
|
372
|
+
* Sets a global error handler used by default if no onError is provided.
|
|
373
|
+
*/
|
|
374
|
+
declare function setGlobalErrorHandler(handler: ErrorHandler): void;
|
|
375
|
+
|
|
376
|
+
/**
|
|
377
|
+
* Register a teardown function for a DOM node.
|
|
378
|
+
* When dispose(node) is called, all registered teardowns run.
|
|
379
|
+
*/
|
|
380
|
+
declare function registerDisposer(node: Node, teardown: () => void): void;
|
|
381
|
+
/**
|
|
382
|
+
* Run all registered teardowns for a node and its descendants,
|
|
383
|
+
* cleaning up reactive subscriptions to prevent memory leaks.
|
|
384
|
+
* Call this when removing elements from the DOM.
|
|
385
|
+
*/
|
|
386
|
+
declare function dispose(node: Node): void;
|
|
387
|
+
/**
|
|
388
|
+
* Check for potential binding leaks. Returns the number of active DOM bindings.
|
|
389
|
+
* In dev mode, logs a warning if the count is unexpectedly high.
|
|
390
|
+
*
|
|
391
|
+
* Usage in tests or dev tools:
|
|
392
|
+
* const before = checkLeaks();
|
|
393
|
+
* // mount and unmount component
|
|
394
|
+
* const after = checkLeaks();
|
|
395
|
+
* assert(after === before); // no leaked bindings
|
|
396
|
+
*/
|
|
397
|
+
declare function checkLeaks(warnThreshold?: number): number;
|
|
398
|
+
|
|
399
|
+
type SetState<T> = (next: T | ((prev: T) => T)) => void;
|
|
400
|
+
type StateTuple<T> = [() => T, SetState<T>];
|
|
401
|
+
/** Options for signal */
|
|
402
|
+
interface SignalOptions {
|
|
403
|
+
/** Debug name for devtools inspection. Only used in development. */
|
|
404
|
+
name?: string;
|
|
405
|
+
}
|
|
406
|
+
/**
|
|
407
|
+
* signal creates a reactive signal that holds a value of type T.
|
|
408
|
+
* Returns a tuple: [getter, setter].
|
|
409
|
+
*
|
|
410
|
+
* @param initial Initial value
|
|
411
|
+
* @param options Optional config: `{ name: "count" }` for devtools labeling
|
|
412
|
+
*
|
|
413
|
+
* When __SIBU_DEVTOOLS_GLOBAL_HOOK__ is present on the window,
|
|
414
|
+
* signals are automatically registered and state changes are emitted.
|
|
415
|
+
* The hook check is a single property read — zero overhead when absent.
|
|
416
|
+
*/
|
|
417
|
+
declare function signal<T>(initial: T, options?: SignalOptions): StateTuple<T>;
|
|
418
|
+
|
|
419
|
+
/**
|
|
420
|
+
* effect runs the provided effectFn immediately and re-runs it whenever
|
|
421
|
+
* any reactive dependency changes.
|
|
422
|
+
* Returns a cleanup function to stop further executions.
|
|
423
|
+
*
|
|
424
|
+
* In SSR mode, effect is a no-op — side effects should not run on the server.
|
|
425
|
+
*/
|
|
426
|
+
declare function effect(effectFn: () => void): () => void;
|
|
427
|
+
|
|
428
|
+
/**
|
|
429
|
+
* derived creates a derived reactive signal whose value updates when dependencies change.
|
|
430
|
+
*
|
|
431
|
+
* Uses lazy pull-based evaluation with dirty flagging:
|
|
432
|
+
* - When a dependency changes, the computed is marked dirty (no re-evaluation).
|
|
433
|
+
* - Dirtiness propagates downstream via notifySubscribers.
|
|
434
|
+
* - The getter only re-evaluates when actually read (pull-based).
|
|
435
|
+
*/
|
|
436
|
+
declare function derived<T>(getter: () => T, options?: {
|
|
437
|
+
name?: string;
|
|
438
|
+
}): () => T;
|
|
439
|
+
|
|
440
|
+
/**
|
|
441
|
+
* Watches a reactive getter and calls callback with (newValue, oldValue) when it changes.
|
|
442
|
+
*
|
|
443
|
+
* In SSR mode, watch is a no-op — subscriptions should not run on the server.
|
|
444
|
+
*
|
|
445
|
+
* @param getter Function that returns the value to watch (reads reactive signals).
|
|
446
|
+
* @param callback Function called when the watched value changes.
|
|
447
|
+
* @returns Teardown function to cancel the watcher.
|
|
448
|
+
*/
|
|
449
|
+
declare function watch<T>(getter: () => T, callback: (value: T, prev: T | undefined) => void): () => void;
|
|
450
|
+
|
|
451
|
+
type StoreSubscriber<T> = (state: T) => void;
|
|
452
|
+
interface StoreActions<T> {
|
|
453
|
+
/** Apply a partial patch or updater function */
|
|
454
|
+
setState: (patch: Partial<T> | ((state: T) => T)) => void;
|
|
455
|
+
/** Revert to initial state */
|
|
456
|
+
reset: () => void;
|
|
457
|
+
/** Subscribe to all state changes. Returns unsubscribe function. */
|
|
458
|
+
subscribe: (callback: StoreSubscriber<T>) => () => void;
|
|
459
|
+
/** Subscribe to changes on a specific key. Returns unsubscribe function. */
|
|
460
|
+
subscribeKey: <K extends keyof T>(key: K, callback: (value: T[K], prev: T[K]) => void) => () => void;
|
|
461
|
+
/** Get a snapshot of the current state (non-reactive) */
|
|
462
|
+
getSnapshot: () => T;
|
|
463
|
+
}
|
|
464
|
+
/**
|
|
465
|
+
* Creates a global store with reactive properties and subscription support.
|
|
466
|
+
*
|
|
467
|
+
* @param initialState Initial state object
|
|
468
|
+
* @returns A tuple [store, actions]
|
|
469
|
+
*
|
|
470
|
+
* @example
|
|
471
|
+
* ```ts
|
|
472
|
+
* const [store, { setState, subscribe, subscribeKey }] = store({
|
|
473
|
+
* count: 0,
|
|
474
|
+
* name: "Alice"
|
|
475
|
+
* });
|
|
476
|
+
*
|
|
477
|
+
* // Subscribe to all changes
|
|
478
|
+
* const unsub = subscribe((state) => console.log("Changed:", state));
|
|
479
|
+
*
|
|
480
|
+
* // Subscribe to specific key
|
|
481
|
+
* const unsub2 = subscribeKey("count", (val, prev) => {
|
|
482
|
+
* console.log(`count: ${prev} → ${val}`);
|
|
483
|
+
* });
|
|
484
|
+
* ```
|
|
485
|
+
*/
|
|
486
|
+
declare function store<T extends object>(initialState: T): [store: {
|
|
487
|
+
readonly [K in keyof T]: T[K];
|
|
488
|
+
}, actions: StoreActions<T>];
|
|
489
|
+
|
|
490
|
+
/**
|
|
491
|
+
* ref creates a mutable reference object that persists across renders.
|
|
492
|
+
* Unlike signal, updating a ref does NOT trigger re-renders.
|
|
493
|
+
*
|
|
494
|
+
* Common uses:
|
|
495
|
+
* - Storing DOM element references
|
|
496
|
+
* - Holding mutable values without causing reactivity
|
|
497
|
+
* - Imperative API handles (e.g., focus, scroll)
|
|
498
|
+
*
|
|
499
|
+
* @param initial Optional initial value for the ref
|
|
500
|
+
* @returns An object with a mutable `current` property
|
|
501
|
+
*/
|
|
502
|
+
interface Ref<T> {
|
|
503
|
+
current: T;
|
|
504
|
+
}
|
|
505
|
+
declare function ref<T>(initial: T): Ref<T>;
|
|
506
|
+
declare function ref<T = undefined>(): Ref<T | undefined>;
|
|
507
|
+
|
|
508
|
+
/**
|
|
509
|
+
* memo returns a memoized value that only recomputes when its
|
|
510
|
+
* reactive dependencies change. This is semantically identical to
|
|
511
|
+
* derived but named for convenience.
|
|
512
|
+
*
|
|
513
|
+
* Use this to avoid expensive computations on every render cycle.
|
|
514
|
+
*
|
|
515
|
+
* @param factory Function that computes the memoized value
|
|
516
|
+
* @returns Getter function that returns the memoized value
|
|
517
|
+
*/
|
|
518
|
+
declare function memo<T>(factory: () => T): () => T;
|
|
519
|
+
|
|
520
|
+
/**
|
|
521
|
+
* memoFn returns a memoized callback function that only updates
|
|
522
|
+
* when its reactive dependencies change. This prevents unnecessary
|
|
523
|
+
* re-creations of callback functions passed to child components.
|
|
524
|
+
*
|
|
525
|
+
* @param callback The callback function to memoize
|
|
526
|
+
* @returns Getter that returns the current memoized callback
|
|
527
|
+
*/
|
|
528
|
+
declare function memoFn<T extends (...args: any[]) => any>(callback: () => T): () => T;
|
|
529
|
+
|
|
530
|
+
/**
|
|
531
|
+
* Reactive array hook. Provides common array operations that
|
|
532
|
+
* automatically trigger reactive updates.
|
|
533
|
+
*
|
|
534
|
+
* @param initial Initial array value
|
|
535
|
+
* @returns Tuple [getter, actions]
|
|
536
|
+
*
|
|
537
|
+
* @example
|
|
538
|
+
* ```ts
|
|
539
|
+
* const [items, { push, remove, clear }] = array([1, 2, 3]);
|
|
540
|
+
* push(4); // [1, 2, 3, 4]
|
|
541
|
+
* remove(1); // [1, 3, 4] (removes index 1)
|
|
542
|
+
* clear(); // []
|
|
543
|
+
* ```
|
|
544
|
+
*/
|
|
545
|
+
interface ArrayActions<T> {
|
|
546
|
+
/** Add one or more items to the end */
|
|
547
|
+
push(...items: T[]): void;
|
|
548
|
+
/** Remove and return the last item */
|
|
549
|
+
pop(): T | undefined;
|
|
550
|
+
/** Remove and return the first item */
|
|
551
|
+
shift(): T | undefined;
|
|
552
|
+
/** Add one or more items to the beginning */
|
|
553
|
+
unshift(...items: T[]): void;
|
|
554
|
+
/** Remove/replace elements at a position */
|
|
555
|
+
splice(start: number, deleteCount?: number, ...items: T[]): T[];
|
|
556
|
+
/** Remove item at index */
|
|
557
|
+
remove(index: number): void;
|
|
558
|
+
/** Remove first item matching predicate */
|
|
559
|
+
removeWhere(predicate: (item: T) => boolean): void;
|
|
560
|
+
/** Replace the entire array */
|
|
561
|
+
set(items: T[]): void;
|
|
562
|
+
/** Update item at a specific index */
|
|
563
|
+
update(index: number, value: T): void;
|
|
564
|
+
/** Update item at a specific index via updater function */
|
|
565
|
+
updateWhere(predicate: (item: T) => boolean, updater: (item: T) => T): void;
|
|
566
|
+
/** Sort the array in place */
|
|
567
|
+
sort(compareFn?: (a: T, b: T) => number): void;
|
|
568
|
+
/** Reverse the array in place */
|
|
569
|
+
reverse(): void;
|
|
570
|
+
/** Filter the array (returns new reactive array) */
|
|
571
|
+
filter(predicate: (item: T, index: number) => boolean): void;
|
|
572
|
+
/** Map and replace (transforms all items) */
|
|
573
|
+
map(transform: (item: T, index: number) => T): void;
|
|
574
|
+
/** Clear all items */
|
|
575
|
+
clear(): void;
|
|
576
|
+
}
|
|
577
|
+
declare function array<T>(initial?: T[]): [() => T[], ArrayActions<T>];
|
|
578
|
+
/**
|
|
579
|
+
* Optimized reactive array hook. Uses in-place mutations with a version
|
|
580
|
+
* counter to avoid full array copies on every operation.
|
|
581
|
+
*
|
|
582
|
+
* Internally maintains a mutable array and only creates a frozen snapshot
|
|
583
|
+
* when the getter is called after a mutation. Operations like push, pop,
|
|
584
|
+
* splice, sort, and reverse mutate in-place (O(1) or O(n) as appropriate)
|
|
585
|
+
* instead of copying the entire array.
|
|
586
|
+
*
|
|
587
|
+
* The public API is identical to `array`.
|
|
588
|
+
*
|
|
589
|
+
* @param initial Initial array value
|
|
590
|
+
* @returns Tuple [getter, actions]
|
|
591
|
+
*
|
|
592
|
+
* @example
|
|
593
|
+
* ```ts
|
|
594
|
+
* const [items, { push, remove, clear }] = reactiveArray([1, 2, 3]);
|
|
595
|
+
* push(4); // [1, 2, 3, 4] — mutates in-place, no copy
|
|
596
|
+
* remove(1); // [1, 3, 4]
|
|
597
|
+
* clear(); // []
|
|
598
|
+
* ```
|
|
599
|
+
*/
|
|
600
|
+
declare function reactiveArray<T>(initial?: T[]): [() => readonly T[], ArrayActions<T>];
|
|
601
|
+
|
|
602
|
+
/**
|
|
603
|
+
* Like signal but uses deep equality comparison instead of Object.is.
|
|
604
|
+
* This prevents unnecessary re-renders when setting an object/array
|
|
605
|
+
* to a structurally identical value.
|
|
606
|
+
*
|
|
607
|
+
* @param initial Initial value
|
|
608
|
+
* @returns Tuple [getter, setter]
|
|
609
|
+
*
|
|
610
|
+
* @example
|
|
611
|
+
* ```ts
|
|
612
|
+
* const [user, setUser] = deepSignal({ name: "Alice", age: 25 });
|
|
613
|
+
* setUser({ name: "Alice", age: 25 }); // No notification — same structure
|
|
614
|
+
* setUser({ name: "Bob", age: 25 }); // Notifies — different value
|
|
615
|
+
* ```
|
|
616
|
+
*/
|
|
617
|
+
declare function deepSignal<T>(initial: T): [() => T, (next: T | ((prev: T) => T)) => void];
|
|
618
|
+
|
|
619
|
+
/**
|
|
620
|
+
* Lifecycle hooks for SibuJS components.
|
|
621
|
+
*
|
|
622
|
+
* These hooks schedule callbacks to run after the component's DOM
|
|
623
|
+
* has been mounted or when it is removed from the document.
|
|
624
|
+
*
|
|
625
|
+
* @example
|
|
626
|
+
* ```ts
|
|
627
|
+
* function MyComponent() {
|
|
628
|
+
* onMount(() => {
|
|
629
|
+
* console.log("Component is in the DOM");
|
|
630
|
+
* });
|
|
631
|
+
*
|
|
632
|
+
* onUnmount(() => {
|
|
633
|
+
* console.log("Component was removed");
|
|
634
|
+
* });
|
|
635
|
+
*
|
|
636
|
+
* return div({ nodes: "Hello" });
|
|
637
|
+
* }
|
|
638
|
+
* ```
|
|
639
|
+
*/
|
|
640
|
+
type CleanupFn = () => void;
|
|
641
|
+
/**
|
|
642
|
+
* Runs a callback once the component's element has been inserted into the DOM.
|
|
643
|
+
* Uses queueMicrotask to defer execution until after the current synchronous
|
|
644
|
+
* rendering pass completes.
|
|
645
|
+
*
|
|
646
|
+
* Optionally returns a cleanup function that will be called on unmount
|
|
647
|
+
* (if you also use onUnmount, prefer that for explicit cleanup).
|
|
648
|
+
*
|
|
649
|
+
* @param callback Function to run after mount. May return a cleanup function.
|
|
650
|
+
* @param element Optional element to observe; if provided, waits until it's connected.
|
|
651
|
+
*/
|
|
652
|
+
declare function onMount(callback: () => undefined | CleanupFn, element?: HTMLElement): void;
|
|
653
|
+
/**
|
|
654
|
+
* Runs a callback when the given element is removed from the DOM.
|
|
655
|
+
* Uses MutationObserver to watch for disconnection.
|
|
656
|
+
*
|
|
657
|
+
* @param callback Function to run on unmount
|
|
658
|
+
* @param element The element to watch for removal
|
|
659
|
+
*/
|
|
660
|
+
declare function onUnmount(callback: CleanupFn, element: HTMLElement): void;
|
|
661
|
+
|
|
662
|
+
/**
|
|
663
|
+
* Context API for SibuJS — provides dependency injection across
|
|
664
|
+
* component trees without prop drilling.
|
|
665
|
+
*
|
|
666
|
+
* Inspired by React's Context and Vue's provide/inject patterns.
|
|
667
|
+
*
|
|
668
|
+
* @example
|
|
669
|
+
* ```ts
|
|
670
|
+
* // Create a context with a default value
|
|
671
|
+
* const ThemeContext = context("light");
|
|
672
|
+
*
|
|
673
|
+
* // Provide a value at a parent level
|
|
674
|
+
* function App() {
|
|
675
|
+
* ThemeContext.provide("dark");
|
|
676
|
+
* return div({ nodes: [Child()] });
|
|
677
|
+
* }
|
|
678
|
+
*
|
|
679
|
+
* // Consume the value anywhere below
|
|
680
|
+
* function Child() {
|
|
681
|
+
* const theme = ThemeContext.use(); // reactive getter
|
|
682
|
+
* return div({ nodes: () => `Theme: ${theme()}` });
|
|
683
|
+
* }
|
|
684
|
+
* ```
|
|
685
|
+
*/
|
|
686
|
+
interface Context<T> {
|
|
687
|
+
/** Provide a value for this context. Overrides any parent provider. */
|
|
688
|
+
provide(value: T): void;
|
|
689
|
+
/** Get a reactive getter for the current context value. */
|
|
690
|
+
use(): () => T;
|
|
691
|
+
/** Get the current value directly (non-reactive). */
|
|
692
|
+
get(): T;
|
|
693
|
+
/** Update the provided value reactively. */
|
|
694
|
+
set(value: T): void;
|
|
695
|
+
}
|
|
696
|
+
/**
|
|
697
|
+
* Creates a new context with an optional default value.
|
|
698
|
+
*
|
|
699
|
+
* @param defaultValue The fallback value when no provider is found
|
|
700
|
+
* @returns A Context object with provide, use, get, and set methods
|
|
701
|
+
*/
|
|
702
|
+
declare function context<T>(defaultValue: T): Context<T>;
|
|
703
|
+
|
|
704
|
+
/**
|
|
705
|
+
* SSR context for SibuJS.
|
|
706
|
+
*
|
|
707
|
+
* During server-side rendering, side effects (effect, watch, onMount)
|
|
708
|
+
* should not run. This module provides a flag to enable/disable SSR mode.
|
|
709
|
+
*
|
|
710
|
+
* Usage:
|
|
711
|
+
* enableSSR(); // Call before rendering on the server
|
|
712
|
+
* renderToString(...);
|
|
713
|
+
* disableSSR(); // Call after rendering (cleanup)
|
|
714
|
+
*
|
|
715
|
+
* Or use the scoped helper:
|
|
716
|
+
* withSSR(() => renderToString(...));
|
|
717
|
+
*/
|
|
718
|
+
/** Returns true when running in SSR mode. */
|
|
719
|
+
declare function isSSR(): boolean;
|
|
720
|
+
/** Enable SSR mode. Side effects (effect, watch, onMount) become no-ops. */
|
|
721
|
+
declare function enableSSR(): void;
|
|
722
|
+
/** Disable SSR mode. Side effects resume normal behavior. */
|
|
723
|
+
declare function disableSSR(): void;
|
|
724
|
+
/**
|
|
725
|
+
* Run a function in SSR mode. Automatically enables/disables SSR around the callback.
|
|
726
|
+
* Returns whatever the callback returns.
|
|
727
|
+
*/
|
|
728
|
+
declare function withSSR<T>(fn: () => T): T;
|
|
729
|
+
|
|
730
|
+
/**
|
|
731
|
+
* Batch multiple state updates into a single notification pass.
|
|
732
|
+
* Subscribers are only notified once after the batch completes,
|
|
733
|
+
* preventing excessive re-renders during bulk updates.
|
|
734
|
+
*
|
|
735
|
+
* Can be nested — only the outermost batch triggers notifications.
|
|
736
|
+
*
|
|
737
|
+
* @param fn Function containing state updates to batch
|
|
738
|
+
*
|
|
739
|
+
* @example
|
|
740
|
+
* ```ts
|
|
741
|
+
* const [name, setName] = signal("Alice");
|
|
742
|
+
* const [age, setAge] = signal(25);
|
|
743
|
+
*
|
|
744
|
+
* batch(() => {
|
|
745
|
+
* setName("Bob");
|
|
746
|
+
* setAge(30);
|
|
747
|
+
* }); // Only one notification pass
|
|
748
|
+
* ```
|
|
749
|
+
*/
|
|
750
|
+
declare function batch(fn: () => void): void;
|
|
751
|
+
/**
|
|
752
|
+
* Queue a signal for deferred notification during a batch.
|
|
753
|
+
* If not batching, returns false so the caller can notify immediately.
|
|
754
|
+
*/
|
|
755
|
+
declare function enqueueBatchedSignal(signal: ReactiveSignal): boolean;
|
|
756
|
+
/**
|
|
757
|
+
* Check if we're currently inside a batch.
|
|
758
|
+
*/
|
|
759
|
+
declare function isBatching(): boolean;
|
|
760
|
+
|
|
761
|
+
/**
|
|
762
|
+
* Bind a dynamic attribute where both name and value can change reactively.
|
|
763
|
+
* Useful for `:attr.name` style dynamic keys.
|
|
764
|
+
*
|
|
765
|
+
* When the attribute name changes, the old attribute is removed and the
|
|
766
|
+
* new one is set. Returns a teardown function that stops reactive tracking
|
|
767
|
+
* and removes the current attribute from the element.
|
|
768
|
+
*/
|
|
769
|
+
declare function bindDynamic(el: HTMLElement, nameGetter: string | (() => string), valueGetter: string | (() => unknown)): () => void;
|
|
770
|
+
|
|
771
|
+
type Component = () => HTMLElement;
|
|
772
|
+
type LazyImport = () => Promise<{
|
|
773
|
+
default: Component;
|
|
774
|
+
}>;
|
|
775
|
+
/**
|
|
776
|
+
* lazy() enables code-splitting by deferring the import of a component
|
|
777
|
+
* until it is first rendered. Returns a wrapper component that shows a
|
|
778
|
+
* loading state while the import resolves.
|
|
779
|
+
*
|
|
780
|
+
* @example
|
|
781
|
+
* ```ts
|
|
782
|
+
* const LazyDashboard = lazy(() => import("./Dashboard"));
|
|
783
|
+
*
|
|
784
|
+
* // Use inside Suspense for custom loading UI
|
|
785
|
+
* Suspense({
|
|
786
|
+
* nodes: () => LazyDashboard(),
|
|
787
|
+
* fallback: () => div({ nodes: "Loading dashboard..." }),
|
|
788
|
+
* });
|
|
789
|
+
*
|
|
790
|
+
* // Or use standalone — shows default "Loading..." text
|
|
791
|
+
* LazyDashboard();
|
|
792
|
+
* ```
|
|
793
|
+
*
|
|
794
|
+
* @param importFn Dynamic import function returning `{ default: Component }`
|
|
795
|
+
* @returns A component function that lazy-loads on first call
|
|
796
|
+
*/
|
|
797
|
+
declare function lazy(importFn: LazyImport): Component;
|
|
798
|
+
/**
|
|
799
|
+
* Suspense provides a fallback UI while lazy or async nodes are loading.
|
|
800
|
+
*
|
|
801
|
+
* @example
|
|
802
|
+
* ```ts
|
|
803
|
+
* Suspense({
|
|
804
|
+
* nodes: () => LazyChart(),
|
|
805
|
+
* fallback: () => div({ nodes: "Loading chart..." }),
|
|
806
|
+
* });
|
|
807
|
+
* ```
|
|
808
|
+
*
|
|
809
|
+
* @param props.nodes Function that returns the async/lazy component
|
|
810
|
+
* @param props.fallback Function that returns the loading UI
|
|
811
|
+
* @returns An HTMLElement that swaps from fallback to content when ready
|
|
812
|
+
*/
|
|
813
|
+
interface SuspenseProps {
|
|
814
|
+
nodes: () => HTMLElement;
|
|
815
|
+
fallback: () => HTMLElement;
|
|
816
|
+
}
|
|
817
|
+
declare function Suspense({ nodes, fallback }: SuspenseProps): HTMLElement;
|
|
818
|
+
|
|
819
|
+
interface ErrorBoundaryProps {
|
|
820
|
+
/**
|
|
821
|
+
* Function that renders child content or throws.
|
|
822
|
+
*/
|
|
823
|
+
nodes: () => Element;
|
|
824
|
+
/**
|
|
825
|
+
* Fallback renderer given an Error and retry callback.
|
|
826
|
+
* Memoized internally — only re-created when the error changes.
|
|
827
|
+
*/
|
|
828
|
+
fallback?: (error: Error, retry: () => void) => Element;
|
|
829
|
+
/**
|
|
830
|
+
* Called when an error is caught (sync or async).
|
|
831
|
+
*/
|
|
832
|
+
onError?: (error: Error) => void;
|
|
833
|
+
}
|
|
834
|
+
/**
|
|
835
|
+
* ErrorBoundary component using SibuJS reactive pattern.
|
|
836
|
+
*
|
|
837
|
+
* Features:
|
|
838
|
+
* - Catches sync errors thrown by nodes
|
|
839
|
+
* - Catches async errors (Promise rejections) from nodes
|
|
840
|
+
* - Supports nested ErrorBoundaries (inner catches first, outer catches propagation)
|
|
841
|
+
* - Retry functionality to clear error and re-render nodes
|
|
842
|
+
* - Memoized fallback to avoid re-creating fallback UI on every render
|
|
843
|
+
* - onError callback for logging/telemetry
|
|
844
|
+
* - Improved CSS styling
|
|
845
|
+
*/
|
|
846
|
+
declare function ErrorBoundary({ nodes, fallback, onError }: ErrorBoundaryProps): Element;
|
|
847
|
+
|
|
848
|
+
interface LoadingProps {
|
|
849
|
+
/** Text to show alongside the spinner */
|
|
850
|
+
text?: string;
|
|
851
|
+
/** Visual variant: "spinner" (default) or "dots" */
|
|
852
|
+
variant?: "spinner" | "dots";
|
|
853
|
+
/** Size: "sm", "md" (default), "lg" */
|
|
854
|
+
size?: "sm" | "md" | "lg";
|
|
855
|
+
}
|
|
856
|
+
/**
|
|
857
|
+
* Built-in loading indicator component.
|
|
858
|
+
*
|
|
859
|
+
* @example
|
|
860
|
+
* ```ts
|
|
861
|
+
* Loading(); // Default spinner
|
|
862
|
+
* Loading({ text: "Loading data..." }); // With text
|
|
863
|
+
* Loading({ variant: "dots" }); // Dots animation
|
|
864
|
+
* Loading({ size: "lg" }); // Large spinner
|
|
865
|
+
* ```
|
|
866
|
+
*/
|
|
867
|
+
declare function Loading(props?: LoadingProps): HTMLElement;
|
|
868
|
+
|
|
869
|
+
export { type ArrayActions, type Context, DynamicComponent, ErrorBoundary, type ErrorBoundaryProps, Fragment, Loading, type LoadingProps, Portal, type Ref, type SignalOptions, type SlotFn, type Slots, type StoreActions, Suspense, type SuspenseProps, TagProps, a, abbr, address, area, array, article, aside, audio, b, base, batch, bdi, bdo, bindDynamic, blockquote, body, br, button, canvas, caption, catchError, catchErrorAsync, center, checkLeaks, circle, cite, clipPath, code, col, colgroup, context, customElement, data, datalist, dd, deepSignal, defs, del, derived, details, dfn, dialog, disableSSR, dispose, div, dl, dt, each, effect, ellipse, em, embed, enableSSR, enqueueBatchedSignal, fieldset, figcaption, figure, font, footer, form, g, getSlot, h1, h2, h3, h4, h5, h6, head, header, hr, html, i, iframe, img, input, ins, isBatching, isSSR, kbd, label, lazy, legend, li, line, linearGradient, link, main, map, mark, marker, marquee, mask, match, math, memo, memoFn, menu, meta, meter, mount, nav, noscript, object, ol, onMount, onUnmount, optgroup, option, output, p, param, path, pattern, picture, polygon, polyline, portal, pre, progress, q, radialGradient, reactiveArray, rect, ref, registerComponent, registerDisposer, resolveComponent, rp, rt, ruby, s, samp, script, section, select, setGlobalErrorHandler, show, signal, slot, small, source, span, stop, store, strong, style, sub, summary, sup, svg, symbol, table, tbody, td, template, text, textarea, tfoot, th, thead, time, title, tr, track, tspan, u, ul, unregisterComponent, use, var_, video, watch, when, withSSR };
|