@ohos-ports/stacksjs-stx 0.2.287-beta.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.
- package/LICENSE.md +21 -0
- package/README.md +1042 -0
- package/dist/a11y.d.ts +256 -0
- package/dist/a11y.js +671 -0
- package/dist/analytics.d.ts +40 -0
- package/dist/analytics.js +159 -0
- package/dist/analyzer.d.ts +68 -0
- package/dist/analyzer.js +240 -0
- package/dist/animation.d.ts +123 -0
- package/dist/animation.js +688 -0
- package/dist/app-shell.d.ts +76 -0
- package/dist/app-shell.js +209 -0
- package/dist/app.d.ts +65 -0
- package/dist/app.js +79 -0
- package/dist/appearance-bootstrap.d.ts +54 -0
- package/dist/appearance-bootstrap.js +92 -0
- package/dist/asset-roots.d.ts +32 -0
- package/dist/asset-roots.js +7 -0
- package/dist/assets.d.ts +21 -0
- package/dist/assets.js +155 -0
- package/dist/ast.d.ts +265 -0
- package/dist/ast.js +630 -0
- package/dist/async-components.d.ts +123 -0
- package/dist/async-components.js +428 -0
- package/dist/auth.d.ts +13 -0
- package/dist/auth.js +12 -0
- package/dist/broadcasting.d.ts +77 -0
- package/dist/broadcasting.js +103 -0
- package/dist/browser-composables.d.ts +348 -0
- package/dist/browser-composables.js +606 -0
- package/dist/browser-core-imports.d.ts +12 -0
- package/dist/browser-core-imports.js +28 -0
- package/dist/build-assets.d.ts +32 -0
- package/dist/build-assets.js +29 -0
- package/dist/build-externalize-repeated.d.ts +34 -0
- package/dist/build-externalize-repeated.js +101 -0
- package/dist/build-externalize.d.ts +73 -0
- package/dist/build-externalize.js +80 -0
- package/dist/build-id.d.ts +57 -0
- package/dist/build-id.js +25 -0
- package/dist/build-message.d.ts +81 -0
- package/dist/build-message.js +65 -0
- package/dist/build-mode-detector.d.ts +26 -0
- package/dist/build-mode-detector.js +50 -0
- package/dist/build-optimizer.d.ts +101 -0
- package/dist/build-optimizer.js +433 -0
- package/dist/build-views.d.ts +56 -0
- package/dist/build-views.js +180 -0
- package/dist/build.d.ts +31 -0
- package/dist/build.js +34 -0
- package/dist/builtins/attrs.d.ts +49 -0
- package/dist/builtins/attrs.js +39 -0
- package/dist/builtins/drawer.d.ts +24 -0
- package/dist/builtins/drawer.js +37 -0
- package/dist/builtins/escape.d.ts +12 -0
- package/dist/builtins/escape.js +3 -0
- package/dist/builtins/icon.d.ts +45 -0
- package/dist/builtins/icon.js +100 -0
- package/dist/builtins/image-delivery.d.ts +16 -0
- package/dist/builtins/image-delivery.js +115 -0
- package/dist/builtins/image-placeholder.d.ts +78 -0
- package/dist/builtins/image-placeholder.js +137 -0
- package/dist/builtins/index.d.ts +26 -0
- package/dist/builtins/index.js +34 -0
- package/dist/builtins/modal.d.ts +26 -0
- package/dist/builtins/modal.js +38 -0
- package/dist/builtins/safe-image.d.ts +44 -0
- package/dist/builtins/safe-image.js +45 -0
- package/dist/builtins/stx-image.d.ts +29 -0
- package/dist/builtins/stx-image.js +222 -0
- package/dist/builtins/stx-link.d.ts +11 -0
- package/dist/builtins/stx-link.js +35 -0
- package/dist/builtins/stx-loading-indicator.d.ts +13 -0
- package/dist/builtins/stx-loading-indicator.js +35 -0
- package/dist/builtins/suspense.d.ts +30 -0
- package/dist/builtins/suspense.js +24 -0
- package/dist/builtins/toast.d.ts +19 -0
- package/dist/builtins/toast.js +42 -0
- package/dist/builtins/tooltip.d.ts +18 -0
- package/dist/builtins/tooltip.js +106 -0
- package/dist/builtins/transition-group.d.ts +27 -0
- package/dist/builtins/transition-group.js +22 -0
- package/dist/bun-shim.js +496 -0
- package/dist/bundle-analyzer/collector.d.ts +66 -0
- package/dist/bundle-analyzer/collector.js +233 -0
- package/dist/bundle-analyzer/index.d.ts +98 -0
- package/dist/bundle-analyzer/index.js +82 -0
- package/dist/bundle-analyzer/report.d.ts +39 -0
- package/dist/bundle-analyzer/report.js +318 -0
- package/dist/bundle-analyzer/treemap.d.ts +19 -0
- package/dist/bundle-analyzer/treemap.js +594 -0
- package/dist/bundle-analyzer.js +499 -0
- package/dist/caching.d.ts +69 -0
- package/dist/caching.js +135 -0
- package/dist/chunk-0y46fbkx.js +3 -0
- package/dist/chunk-122tyfre.js +2 -0
- package/dist/chunk-19nfvxfw.js +43 -0
- package/dist/chunk-1kah92n2.js +3 -0
- package/dist/chunk-1kms3b9d.js +2 -0
- package/dist/chunk-1q4y74mh.js +1194 -0
- package/dist/chunk-248e84r1.js +4 -0
- package/dist/chunk-24ps8kft.js +2 -0
- package/dist/chunk-2et5hxfv.js +2 -0
- package/dist/chunk-2r1rd8f0.js +2 -0
- package/dist/chunk-2tk1zkrz.js +2 -0
- package/dist/chunk-38ejahd9.js +3 -0
- package/dist/chunk-3zv4wz87.js +2 -0
- package/dist/chunk-4122k1bh.js +2 -0
- package/dist/chunk-45az9zht.js +2 -0
- package/dist/chunk-4qr85f07.js +2 -0
- package/dist/chunk-4ww3znrr.js +15 -0
- package/dist/chunk-54st8g2j.js +397 -0
- package/dist/chunk-58f0mthg.js +3 -0
- package/dist/chunk-5a19dhx5.js +2 -0
- package/dist/chunk-5kk8gsj2.js +3 -0
- package/dist/chunk-5w1e3yxs.js +499 -0
- package/dist/chunk-6gdycmxr.js +2 -0
- package/dist/chunk-6hmnaza7.js +4473 -0
- package/dist/chunk-71t0yan0.js +5 -0
- package/dist/chunk-74cv4ta1.js +3 -0
- package/dist/chunk-74v15e8z.js +2 -0
- package/dist/chunk-7b329e5v.js +3 -0
- package/dist/chunk-7q9mwh4v.js +84 -0
- package/dist/chunk-866y9d8b.js +8169 -0
- package/dist/chunk-8fwerspy.js +2 -0
- package/dist/chunk-8mjdpr94.js +147 -0
- package/dist/chunk-92mj1t26.js +60 -0
- package/dist/chunk-9b22663r.js +2 -0
- package/dist/chunk-9hjdgm4d.js +2 -0
- package/dist/chunk-9n0gvfrg.js +4 -0
- package/dist/chunk-9wr7zcad.js +18 -0
- package/dist/chunk-9y0g8kzt.js +358 -0
- package/dist/chunk-a0nfbmeh.js +3 -0
- package/dist/chunk-acn1b56m.js +1280 -0
- package/dist/chunk-awkq3xfx.js +2 -0
- package/dist/chunk-b6ej2fdf.js +1814 -0
- package/dist/chunk-b8rrnqry.js +2 -0
- package/dist/chunk-bfqfs07m.js +3022 -0
- package/dist/chunk-bs6kapy7.js +2 -0
- package/dist/chunk-btav940g.js +2 -0
- package/dist/chunk-bz820epz.js +3 -0
- package/dist/chunk-ccspd3mc.js +2 -0
- package/dist/chunk-csbgwaa5.js +2 -0
- package/dist/chunk-d8t4sjsp.js +2 -0
- package/dist/chunk-dap191q2.js +2 -0
- package/dist/chunk-de7fye10.js +4 -0
- package/dist/chunk-dgrt76d2.js +2 -0
- package/dist/chunk-dhh5q7qt.js +3 -0
- package/dist/chunk-dsffsqnt.js +2 -0
- package/dist/chunk-dtq7y5ym.js +2 -0
- package/dist/chunk-fed3xsp9.js +3 -0
- package/dist/chunk-ferav3bw.js +19 -0
- package/dist/chunk-fvhm8psm.js +3 -0
- package/dist/chunk-g4vpzv6b.js +2 -0
- package/dist/chunk-g9csmj0s.js +2 -0
- package/dist/chunk-gtcrpmz1.js +2 -0
- package/dist/chunk-h4xh8cms.js +4 -0
- package/dist/chunk-h8yqsz9m.js +2 -0
- package/dist/chunk-hcq5dw7a.js +2 -0
- package/dist/chunk-hm0xha6c.js +12 -0
- package/dist/chunk-hpybjwwf.js +8 -0
- package/dist/chunk-jegt35zh.js +2 -0
- package/dist/chunk-jr3jp3ev.js +8 -0
- package/dist/chunk-k56rjjc0.js +24 -0
- package/dist/chunk-kdh37tp8.js +194 -0
- package/dist/chunk-kxzb4et3.js +29 -0
- package/dist/chunk-mf4n3x1j.js +14 -0
- package/dist/chunk-mkd9kjgb.js +3 -0
- package/dist/chunk-mxfh1nxg.js +2 -0
- package/dist/chunk-n3ggrhb3.js +3 -0
- package/dist/chunk-nkb3scg6.js +8 -0
- package/dist/chunk-nnd4wq8j.js +231 -0
- package/dist/chunk-nsp1cw38.js +11 -0
- package/dist/chunk-nx5qkm8k.js +30 -0
- package/dist/chunk-p3242nck.js +2 -0
- package/dist/chunk-p98kfh94.js +2 -0
- package/dist/chunk-pkaabd8h.js +3 -0
- package/dist/chunk-pzm13sdc.js +3 -0
- package/dist/chunk-q4p5k2p3.js +2 -0
- package/dist/chunk-q9n5swx7.js +3 -0
- package/dist/chunk-qc1f74ek.js +3 -0
- package/dist/chunk-qpyjak7z.js +2 -0
- package/dist/chunk-qr82je1m.js +22 -0
- package/dist/chunk-qy73j6m4.js +288 -0
- package/dist/chunk-qzkhpsam.js +505 -0
- package/dist/chunk-r3ayvdz3.js +2 -0
- package/dist/chunk-r7r66978.js +2 -0
- package/dist/chunk-rbb7dvja.js +30 -0
- package/dist/chunk-refwkt87.js +71 -0
- package/dist/chunk-rj4kajww.js +2 -0
- package/dist/chunk-rp4rjjmf.js +2 -0
- package/dist/chunk-se0p17c2.js +898 -0
- package/dist/chunk-sj9pmene.js +2 -0
- package/dist/chunk-sscwkffs.js +2 -0
- package/dist/chunk-svpqxn2c.js +2 -0
- package/dist/chunk-t6nseeb9.js +351 -0
- package/dist/chunk-t8y1ggdy.js +2 -0
- package/dist/chunk-tndhnk9e.js +2 -0
- package/dist/chunk-v5e1gxwm.js +3 -0
- package/dist/chunk-vqxmxgaj.js +4 -0
- package/dist/chunk-vrrax298.js +2 -0
- package/dist/chunk-w3ycm4na.js +3 -0
- package/dist/chunk-wcm80anz.js +321 -0
- package/dist/chunk-wrzwgkbx.js +22 -0
- package/dist/chunk-x650vjcp.js +302 -0
- package/dist/chunk-xgnc1wy6.js +116 -0
- package/dist/chunk-xpp135ad.js +11 -0
- package/dist/chunk-xttsqmkm.js +216 -0
- package/dist/chunk-y11cxbxd.js +3757 -0
- package/dist/chunk-y7m2dpd3.js +341 -0
- package/dist/chunk-y98jsjqq.js +2 -0
- package/dist/chunk-ya386h70.js +2 -0
- package/dist/chunk-ydrz60kr.js +2 -0
- package/dist/chunk-ypmqf7tm.js +4 -0
- package/dist/chunk-z4jhj5e5.js +28 -0
- package/dist/chunk-zg75gjns.js +2 -0
- package/dist/chunk-zqqx1qaj.js +2 -0
- package/dist/cli-flags.d.ts +34 -0
- package/dist/cli-flags.js +20 -0
- package/dist/cli.js +174 -0
- package/dist/client/directive.d.ts +17 -0
- package/dist/client/directive.js +14 -0
- package/dist/client/index.d.ts +7 -0
- package/dist/client/index.js +2 -0
- package/dist/client-helpers.d.ts +317 -0
- package/dist/client-helpers.js +312 -0
- package/dist/client-script-bundler.d.ts +103 -0
- package/dist/client-script-bundler.js +390 -0
- package/dist/client-script.d.ts +215 -0
- package/dist/client-script.js +865 -0
- package/dist/client.d.ts +21 -0
- package/dist/client.js +73 -0
- package/dist/codemod.d.ts +33 -0
- package/dist/codemod.js +244 -0
- package/dist/color-mode-boot.d.ts +92 -0
- package/dist/color-mode-boot.js +72 -0
- package/dist/component-client-factories.d.ts +33 -0
- package/dist/component-client-factories.js +77 -0
- package/dist/component-hmr.d.ts +107 -0
- package/dist/component-hmr.js +585 -0
- package/dist/component-library.d.ts +38 -0
- package/dist/component-library.js +994 -0
- package/dist/component-processing.d.ts +198 -0
- package/dist/component-processing.js +677 -0
- package/dist/component-registry.d.ts +127 -0
- package/dist/component-registry.js +90 -0
- package/dist/component-renderer.d.ts +52 -0
- package/dist/component-renderer.js +790 -0
- package/dist/components/StxImage.stx +12 -0
- package/dist/components/StxLink.stx +18 -0
- package/dist/components.d.ts +28 -0
- package/dist/components.js +213 -0
- package/dist/composable-loader.d.ts +62 -0
- package/dist/composable-loader.js +190 -0
- package/dist/composables/index.d.ts +417 -0
- package/dist/composables/index.js +222 -0
- package/dist/composables/use-battery.d.ts +46 -0
- package/dist/composables/use-battery.js +101 -0
- package/dist/composables/use-broadcast-channel.d.ts +59 -0
- package/dist/composables/use-broadcast-channel.js +80 -0
- package/dist/composables/use-channel.d.ts +67 -0
- package/dist/composables/use-channel.js +124 -0
- package/dist/composables/use-clipboard.d.ts +30 -0
- package/dist/composables/use-clipboard.js +90 -0
- package/dist/composables/use-color-mode.d.ts +67 -0
- package/dist/composables/use-color-mode.js +152 -0
- package/dist/composables/use-cookie.d.ts +59 -0
- package/dist/composables/use-cookie.js +86 -0
- package/dist/composables/use-device-orientation.d.ts +116 -0
- package/dist/composables/use-device-orientation.js +181 -0
- package/dist/composables/use-event-listener.d.ts +35 -0
- package/dist/composables/use-event-listener.js +27 -0
- package/dist/composables/use-event-source.d.ts +90 -0
- package/dist/composables/use-event-source.js +166 -0
- package/dist/composables/use-eye-dropper.d.ts +117 -0
- package/dist/composables/use-eye-dropper.js +142 -0
- package/dist/composables/use-fetch.d.ts +59 -0
- package/dist/composables/use-fetch.js +273 -0
- package/dist/composables/use-form.d.ts +91 -0
- package/dist/composables/use-form.js +112 -0
- package/dist/composables/use-fullscreen.d.ts +47 -0
- package/dist/composables/use-fullscreen.js +110 -0
- package/dist/composables/use-geolocation.d.ts +62 -0
- package/dist/composables/use-geolocation.js +101 -0
- package/dist/composables/use-idle.d.ts +102 -0
- package/dist/composables/use-idle.js +182 -0
- package/dist/composables/use-intersection-observer.d.ts +83 -0
- package/dist/composables/use-intersection-observer.js +168 -0
- package/dist/composables/use-keyboard.d.ts +100 -0
- package/dist/composables/use-keyboard.js +224 -0
- package/dist/composables/use-media-query.d.ts +56 -0
- package/dist/composables/use-media-query.js +62 -0
- package/dist/composables/use-meta.d.ts +35 -0
- package/dist/composables/use-meta.js +48 -0
- package/dist/composables/use-mouse.d.ts +65 -0
- package/dist/composables/use-mouse.js +286 -0
- package/dist/composables/use-mutation-observer.d.ts +101 -0
- package/dist/composables/use-mutation-observer.js +129 -0
- package/dist/composables/use-network.d.ts +40 -0
- package/dist/composables/use-network.js +85 -0
- package/dist/composables/use-notification.d.ts +98 -0
- package/dist/composables/use-notification.js +94 -0
- package/dist/composables/use-permissions.d.ts +119 -0
- package/dist/composables/use-permissions.js +132 -0
- package/dist/composables/use-query.d.ts +48 -0
- package/dist/composables/use-query.js +0 -0
- package/dist/composables/use-resize-observer.d.ts +60 -0
- package/dist/composables/use-resize-observer.js +157 -0
- package/dist/composables/use-router.d.ts +80 -0
- package/dist/composables/use-router.js +105 -0
- package/dist/composables/use-scroll-lock.d.ts +13 -0
- package/dist/composables/use-scroll-lock.js +55 -0
- package/dist/composables/use-share.d.ts +74 -0
- package/dist/composables/use-share.js +104 -0
- package/dist/composables/use-speech.d.ts +117 -0
- package/dist/composables/use-speech.js +294 -0
- package/dist/composables/use-storage.d.ts +69 -0
- package/dist/composables/use-storage.js +196 -0
- package/dist/composables/use-text-selection.d.ts +121 -0
- package/dist/composables/use-text-selection.js +205 -0
- package/dist/composables/use-timer.d.ts +92 -0
- package/dist/composables/use-timer.js +193 -0
- package/dist/composables/use-utilities.d.ts +103 -0
- package/dist/composables/use-utilities.js +176 -0
- package/dist/composables/use-wake-lock.d.ts +85 -0
- package/dist/composables/use-wake-lock.js +122 -0
- package/dist/composables/use-websocket.d.ts +70 -0
- package/dist/composables/use-websocket.js +165 -0
- package/dist/composables/use-window.d.ts +84 -0
- package/dist/composables/use-window.js +163 -0
- package/dist/composables.d.ts +287 -0
- package/dist/composables.js +562 -0
- package/dist/composition-api.d.ts +197 -0
- package/dist/composition-api.js +199 -0
- package/dist/compression.d.ts +30 -0
- package/dist/compression.js +107 -0
- package/dist/computed.d.ts +138 -0
- package/dist/computed.js +382 -0
- package/dist/conditionals.d.ts +48 -0
- package/dist/conditionals.js +626 -0
- package/dist/config.d.ts +77 -0
- package/dist/config.js +828 -0
- package/dist/cookie-serialize.d.ts +40 -0
- package/dist/cookie-serialize.js +18 -0
- package/dist/craft-bridge.d.ts +525 -0
- package/dist/craft-bridge.js +511 -0
- package/dist/craft-compiler.d.ts +245 -0
- package/dist/craft-compiler.js +810 -0
- package/dist/craft-components.d.ts +739 -0
- package/dist/craft-components.js +1074 -0
- package/dist/craft-entry.d.ts +6 -0
- package/dist/craft-entry.js +9 -0
- package/dist/craft-ssr.d.ts +147 -0
- package/dist/craft-ssr.js +559 -0
- package/dist/craft.js +9 -0
- package/dist/csp.d.ts +295 -0
- package/dist/csp.js +220 -0
- package/dist/csrf.d.ts +38 -0
- package/dist/csrf.js +38 -0
- package/dist/custom-directives.d.ts +5 -0
- package/dist/custom-directives.js +136 -0
- package/dist/database.d.ts +391 -0
- package/dist/database.js +5 -0
- package/dist/defer.d.ts +28 -0
- package/dist/defer.js +156 -0
- package/dist/deploy/config-generators.d.ts +75 -0
- package/dist/deploy/config-generators.js +214 -0
- package/dist/deploy/index.d.ts +88 -0
- package/dist/deploy/index.js +203 -0
- package/dist/deploy/netlify.d.ts +109 -0
- package/dist/deploy/netlify.js +167 -0
- package/dist/desktop.d.ts +16 -0
- package/dist/desktop.js +1 -0
- package/dist/dev-server/index.d.ts +22 -0
- package/dist/dev-server/index.js +7 -0
- package/dist/dev-server/keyboard-shortcuts.d.ts +34 -0
- package/dist/dev-server/keyboard-shortcuts.js +81 -0
- package/dist/dev-server/native-window.d.ts +59 -0
- package/dist/dev-server/native-window.js +91 -0
- package/dist/dev-server/port-utils.d.ts +27 -0
- package/dist/dev-server/port-utils.js +40 -0
- package/dist/dev-server/serve-app.d.ts +15 -0
- package/dist/dev-server/serve-app.js +727 -0
- package/dist/dev-server/serve-file.d.ts +3 -0
- package/dist/dev-server/serve-file.js +443 -0
- package/dist/dev-server/serve-markdown.d.ts +3 -0
- package/dist/dev-server/serve-markdown.js +284 -0
- package/dist/dev-server/serve-multi.d.ts +5 -0
- package/dist/dev-server/serve-multi.js +596 -0
- package/dist/dev-server/terminal-colors.d.ts +56 -0
- package/dist/dev-server/terminal-colors.js +45 -0
- package/dist/dev-server/theme-selector.d.ts +32 -0
- package/dist/dev-server/theme-selector.js +111 -0
- package/dist/dev-server/ts-css.d.ts +108 -0
- package/dist/dev-server/ts-css.js +438 -0
- package/dist/dev-server/types.d.ts +99 -0
- package/dist/dev-server/types.js +43 -0
- package/dist/dev-server.d.ts +6 -0
- package/dist/dev-server.js +4 -0
- package/dist/devtools.d.ts +182 -0
- package/dist/devtools.js +593 -0
- package/dist/directive-api.d.ts +154 -0
- package/dist/directive-api.js +355 -0
- package/dist/docs.d.ts +56 -0
- package/dist/docs.js +567 -0
- package/dist/doctor.d.ts +29 -0
- package/dist/doctor.js +123 -0
- package/dist/document-shell.d.ts +218 -0
- package/dist/document-shell.js +338 -0
- package/dist/dynamic-components.d.ts +23 -0
- package/dist/dynamic-components.js +197 -0
- package/dist/edge-runtime.d.ts +193 -0
- package/dist/edge-runtime.js +525 -0
- package/dist/env.d.ts +3 -0
- package/dist/env.js +9 -0
- package/dist/error-boundaries.d.ts +78 -0
- package/dist/error-boundaries.js +281 -0
- package/dist/error-handling.d.ts +14 -0
- package/dist/error-handling.js +1 -0
- package/dist/errors/codes.d.ts +92 -0
- package/dist/errors/codes.js +97 -0
- package/dist/errors/formatter.d.ts +84 -0
- package/dist/errors/formatter.js +196 -0
- package/dist/errors/index.d.ts +12 -0
- package/dist/errors/index.js +44 -0
- package/dist/errors/logger.d.ts +135 -0
- package/dist/errors/logger.js +250 -0
- package/dist/errors/sanitizer.d.ts +73 -0
- package/dist/errors/sanitizer.js +181 -0
- package/dist/errors/types.d.ts +92 -0
- package/dist/errors/types.js +86 -0
- package/dist/events.d.ts +145 -0
- package/dist/events.js +396 -0
- package/dist/expressions.d.ts +180 -0
- package/dist/expressions.js +719 -0
- package/dist/find-body-tag.d.ts +50 -0
- package/dist/find-body-tag.js +57 -0
- package/dist/formatter.d.ts +19 -0
- package/dist/formatter.js +265 -0
- package/dist/forms-validation.d.ts +189 -0
- package/dist/forms-validation.js +421 -0
- package/dist/forms.d.ts +224 -0
- package/dist/forms.js +729 -0
- package/dist/fragment-container.d.ts +57 -0
- package/dist/fragment-container.js +123 -0
- package/dist/framework-composables.d.ts +73 -0
- package/dist/framework-composables.js +126 -0
- package/dist/head-injection.d.ts +61 -0
- package/dist/head-injection.js +28 -0
- package/dist/head.d.ts +282 -0
- package/dist/head.js +231 -0
- package/dist/heatmap.d.ts +206 -0
- package/dist/heatmap.js +566 -0
- package/dist/hot-reload.d.ts +87 -0
- package/dist/hot-reload.js +373 -0
- package/dist/html-masking.d.ts +125 -0
- package/dist/html-masking.js +196 -0
- package/dist/hydration-runtime.d.ts +44 -0
- package/dist/hydration-runtime.js +195 -0
- package/dist/hydration.d.ts +135 -0
- package/dist/hydration.js +654 -0
- package/dist/i18n.d.ts +342 -0
- package/dist/i18n.js +678 -0
- package/dist/image-optimization/auto-sibling.d.ts +42 -0
- package/dist/image-optimization/auto-sibling.js +88 -0
- package/dist/image-optimization/build-plugin.d.ts +54 -0
- package/dist/image-optimization/build-plugin.js +241 -0
- package/dist/image-optimization/component.d.ts +46 -0
- package/dist/image-optimization/component.js +244 -0
- package/dist/image-optimization/directive.d.ts +30 -0
- package/dist/image-optimization/directive.js +203 -0
- package/dist/image-optimization/index.d.ts +156 -0
- package/dist/image-optimization/index.js +54 -0
- package/dist/image-optimization/processor.d.ts +140 -0
- package/dist/image-optimization/processor.js +262 -0
- package/dist/image-optimization/serve.d.ts +54 -0
- package/dist/image-optimization/serve.js +102 -0
- package/dist/import-rebase.d.ts +16 -0
- package/dist/import-rebase.js +16 -0
- package/dist/imported-signals.d.ts +43 -0
- package/dist/imported-signals.js +35 -0
- package/dist/includes.d.ts +171 -0
- package/dist/includes.js +764 -0
- package/dist/index.d.ts +365 -0
- package/dist/index.js +202 -0
- package/dist/init.d.ts +39 -0
- package/dist/init.js +505 -0
- package/dist/inline-assets.d.ts +28 -0
- package/dist/inline-assets.js +82 -0
- package/dist/interactive.d.ts +14 -0
- package/dist/interactive.js +383 -0
- package/dist/internal-markdown.d.ts +22 -0
- package/dist/internal-markdown.js +141 -0
- package/dist/island-chunking.d.ts +48 -0
- package/dist/island-chunking.js +52 -0
- package/dist/isolated-build.d.ts +12 -0
- package/dist/isolated-build.js +18 -0
- package/dist/js-ts.d.ts +10 -0
- package/dist/js-ts.js +60 -0
- package/dist/jsx-runtime.d.ts +92 -0
- package/dist/jsx-runtime.js +289 -0
- package/dist/keep-alive.d.ts +108 -0
- package/dist/keep-alive.js +421 -0
- package/dist/layout-types.d.ts +45 -0
- package/dist/layout-types.js +56 -0
- package/dist/lazy-loader.d.ts +90 -0
- package/dist/lazy-loader.js +245 -0
- package/dist/lazy-module.d.ts +11 -0
- package/dist/lazy-module.js +18 -0
- package/dist/loading-indicator.d.ts +50 -0
- package/dist/loading-indicator.js +322 -0
- package/dist/loops.d.ts +91 -0
- package/dist/loops.js +690 -0
- package/dist/manifest.d.ts +41 -0
- package/dist/manifest.js +31 -0
- package/dist/markdown-view.d.ts +25 -0
- package/dist/markdown-view.js +39 -0
- package/dist/markdown.d.ts +10 -0
- package/dist/markdown.js +68 -0
- package/dist/media/client/blur-up.d.ts +66 -0
- package/dist/media/client/blur-up.js +217 -0
- package/dist/media/client/index.d.ts +93 -0
- package/dist/media/client/index.js +53 -0
- package/dist/media/client/lazy-load.d.ts +74 -0
- package/dist/media/client/lazy-load.js +283 -0
- package/dist/media/client/upload-handler.d.ts +80 -0
- package/dist/media/client/upload-handler.js +354 -0
- package/dist/media/image/component.d.ts +60 -0
- package/dist/media/image/component.js +574 -0
- package/dist/media/image/directive.d.ts +23 -0
- package/dist/media/image/directive.js +160 -0
- package/dist/media/image/editing.d.ts +212 -0
- package/dist/media/image/editing.js +193 -0
- package/dist/media/image/index.d.ts +142 -0
- package/dist/media/image/index.js +80 -0
- package/dist/media/image/placeholder.d.ts +89 -0
- package/dist/media/image/placeholder.js +188 -0
- package/dist/media/image/processor/cache.d.ts +53 -0
- package/dist/media/image/processor/cache.js +51 -0
- package/dist/media/image/processor/index.d.ts +11 -0
- package/dist/media/image/processor/index.js +3 -0
- package/dist/media/image/processor/optimizer.d.ts +24 -0
- package/dist/media/image/processor/optimizer.js +202 -0
- package/dist/media/image/processor/responsive.d.ts +28 -0
- package/dist/media/image/processor/responsive.js +162 -0
- package/dist/media/image/srcset.d.ts +157 -0
- package/dist/media/image/srcset.js +194 -0
- package/dist/media/index.d.ts +331 -0
- package/dist/media/index.js +198 -0
- package/dist/media/manager/embed.d.ts +25 -0
- package/dist/media/manager/embed.js +253 -0
- package/dist/media/protected/component.d.ts +33 -0
- package/dist/media/protected/component.js +235 -0
- package/dist/media/protected/index.d.ts +47 -0
- package/dist/media/protected/index.js +20 -0
- package/dist/media/protected/signature.d.ts +72 -0
- package/dist/media/protected/signature.js +205 -0
- package/dist/media/shared/cache.d.ts +76 -0
- package/dist/media/shared/cache.js +132 -0
- package/dist/media/shared/hash.d.ts +31 -0
- package/dist/media/shared/hash.js +35 -0
- package/dist/media/shared/index.d.ts +7 -0
- package/dist/media/shared/index.js +2 -0
- package/dist/media/types.d.ts +1477 -0
- package/dist/media/types.js +0 -0
- package/dist/media/upload/component.d.ts +9 -0
- package/dist/media/upload/component.js +320 -0
- package/dist/media/upload/index.d.ts +8 -0
- package/dist/media/upload/index.js +1 -0
- package/dist/media/video/directive.d.ts +23 -0
- package/dist/media/video/directive.js +142 -0
- package/dist/media/video/index.d.ts +76 -0
- package/dist/media/video/index.js +583 -0
- package/dist/media/video/processor/cache.d.ts +55 -0
- package/dist/media/video/processor/cache.js +52 -0
- package/dist/media/video/processor/index.d.ts +12 -0
- package/dist/media/video/processor/index.js +4 -0
- package/dist/media/video/processor/streaming.d.ts +26 -0
- package/dist/media/video/processor/streaming.js +197 -0
- package/dist/media/video/processor/thumbnail.d.ts +35 -0
- package/dist/media/video/processor/thumbnail.js +134 -0
- package/dist/media/video/processor/transcoder.d.ts +19 -0
- package/dist/media/video/processor/transcoder.js +283 -0
- package/dist/menubar.d.ts +65 -0
- package/dist/menubar.js +99 -0
- package/dist/method-spoofing.d.ts +20 -0
- package/dist/method-spoofing.js +17 -0
- package/dist/middleware.d.ts +112 -0
- package/dist/middleware.js +40 -0
- package/dist/misc-directives.d.ts +55 -0
- package/dist/misc-directives.js +328 -0
- package/dist/native-build.d.ts +88 -0
- package/dist/native-build.js +575 -0
- package/dist/owned-routes.d.ts +42 -0
- package/dist/owned-routes.js +26 -0
- package/dist/page-action.d.ts +73 -0
- package/dist/page-action.js +91 -0
- package/dist/page-meta.d.ts +38 -0
- package/dist/page-meta.js +16 -0
- package/dist/page-response.d.ts +120 -0
- package/dist/page-response.js +117 -0
- package/dist/parser/directive-parser.d.ts +119 -0
- package/dist/parser/directive-parser.js +249 -0
- package/dist/parser/expression-parser.d.ts +58 -0
- package/dist/parser/expression-parser.js +358 -0
- package/dist/parser/index.d.ts +13 -0
- package/dist/parser/index.js +23 -0
- package/dist/parser/tokenizer.d.ts +77 -0
- package/dist/parser/tokenizer.js +534 -0
- package/dist/partial-hydration.d.ts +123 -0
- package/dist/partial-hydration.js +427 -0
- package/dist/performance-utils.d.ts +318 -0
- package/dist/performance-utils.js +466 -0
- package/dist/placeholder.d.ts +54 -0
- package/dist/placeholder.js +35 -0
- package/dist/plugin-system.d.ts +301 -0
- package/dist/plugin-system.js +214 -0
- package/dist/plugin.d.ts +3 -0
- package/dist/plugin.js +174 -0
- package/dist/precompiler.d.ts +43 -0
- package/dist/precompiler.js +670 -0
- package/dist/process.d.ts +16 -0
- package/dist/process.js +879 -0
- package/dist/production-build.d.ts +163 -0
- package/dist/production-build.js +596 -0
- package/dist/production-builder.d.ts +42 -0
- package/dist/production-builder.js +146 -0
- package/dist/production-server.d.ts +19 -0
- package/dist/production-server.js +208 -0
- package/dist/prop-sentinels.d.ts +31 -0
- package/dist/prop-sentinels.js +7 -0
- package/dist/props.d.ts +216 -0
- package/dist/props.js +224 -0
- package/dist/public-env.d.ts +29 -0
- package/dist/public-env.js +19 -0
- package/dist/pwa/audit.d.ts +42 -0
- package/dist/pwa/audit.js +255 -0
- package/dist/pwa/directives.d.ts +38 -0
- package/dist/pwa/directives.js +332 -0
- package/dist/pwa/icons.d.ts +42 -0
- package/dist/pwa/icons.js +109 -0
- package/dist/pwa/index.d.ts +104 -0
- package/dist/pwa/index.js +47 -0
- package/dist/pwa/inject.d.ts +32 -0
- package/dist/pwa/inject.js +102 -0
- package/dist/pwa/manifest.d.ts +104 -0
- package/dist/pwa/manifest.js +186 -0
- package/dist/pwa/offline.d.ts +8 -0
- package/dist/pwa/offline.js +259 -0
- package/dist/pwa/precache.d.ts +35 -0
- package/dist/pwa/precache.js +116 -0
- package/dist/pwa/service-worker.d.ts +33 -0
- package/dist/pwa/service-worker.js +860 -0
- package/dist/pwa/workbox-strategies.d.ts +100 -0
- package/dist/pwa/workbox-strategies.js +167 -0
- package/dist/pwa/workbox.d.ts +51 -0
- package/dist/pwa/workbox.js +382 -0
- package/dist/pwa.d.ts +52 -0
- package/dist/pwa.js +236 -0
- package/dist/reactive-bindings.d.ts +47 -0
- package/dist/reactive-bindings.js +268 -0
- package/dist/reactive-tracking.d.ts +81 -0
- package/dist/reactive-tracking.js +49 -0
- package/dist/reactive.d.ts +117 -0
- package/dist/reactive.js +593 -0
- package/dist/reactivity.d.ts +206 -0
- package/dist/reactivity.js +574 -0
- package/dist/release.d.ts +1 -0
- package/dist/release.js +1 -0
- package/dist/render-memo.d.ts +40 -0
- package/dist/render-memo.js +33 -0
- package/dist/render.d.ts +54 -0
- package/dist/render.js +153 -0
- package/dist/resolve-stx-targets.d.ts +49 -0
- package/dist/resolve-stx-targets.js +38 -0
- package/dist/route-middleware.d.ts +2 -0
- package/dist/route-middleware.js +17 -0
- package/dist/route-types.d.ts +134 -0
- package/dist/route-types.js +24 -0
- package/dist/router.d.ts +9 -0
- package/dist/router.js +9 -0
- package/dist/routes.d.ts +6 -0
- package/dist/routes.js +14 -0
- package/dist/runtime-globals.d.ts +236 -0
- package/dist/runtime-globals.js +230 -0
- package/dist/runtime-injection.d.ts +113 -0
- package/dist/runtime-injection.js +156 -0
- package/dist/runtime.d.ts +140 -0
- package/dist/runtime.js +94 -0
- package/dist/safe-evaluator.d.ts +165 -0
- package/dist/safe-evaluator.js +461 -0
- package/dist/scaffolding.d.ts +113 -0
- package/dist/scaffolding.js +897 -0
- package/dist/screenshot.d.ts +22 -0
- package/dist/screenshot.js +100 -0
- package/dist/script-classifier.d.ts +41 -0
- package/dist/script-classifier.js +51 -0
- package/dist/script-emit.d.ts +50 -0
- package/dist/script-emit.js +11 -0
- package/dist/script-json.d.ts +36 -0
- package/dist/script-json.js +6 -0
- package/dist/script-validation.d.ts +26 -0
- package/dist/script-validation.js +179 -0
- package/dist/seo.d.ts +225 -0
- package/dist/seo.js +486 -0
- package/dist/serve.d.ts +44 -0
- package/dist/serve.js +233 -0
- package/dist/server-bindings.d.ts +39 -0
- package/dist/server-bindings.js +171 -0
- package/dist/server-components.d.ts +138 -0
- package/dist/server-components.js +427 -0
- package/dist/sfc-template.d.ts +17 -0
- package/dist/sfc-template.js +32 -0
- package/dist/signal-processing.d.ts +222 -0
- package/dist/signal-processing.js +1081 -0
- package/dist/signals-api.d.ts +459 -0
- package/dist/signals-api.js +172 -0
- package/dist/signals.d.ts +41 -0
- package/dist/signals.js +8233 -0
- package/dist/site-builder/build.d.ts +18 -0
- package/dist/site-builder/build.js +252 -0
- package/dist/site-builder/i18n.d.ts +104 -0
- package/dist/site-builder/i18n.js +150 -0
- package/dist/site-builder/index.d.ts +27 -0
- package/dist/site-builder/index.js +16 -0
- package/dist/site-builder/robots.d.ts +2 -0
- package/dist/site-builder/robots.js +26 -0
- package/dist/site-builder/router.d.ts +10 -0
- package/dist/site-builder/router.js +27 -0
- package/dist/site-builder/seo.d.ts +8 -0
- package/dist/site-builder/seo.js +67 -0
- package/dist/site-builder/sitemap.d.ts +10 -0
- package/dist/site-builder/sitemap.js +26 -0
- package/dist/site-builder/theme.d.ts +12 -0
- package/dist/site-builder/theme.js +38 -0
- package/dist/site-builder/types.d.ts +74 -0
- package/dist/site-builder/types.js +0 -0
- package/dist/site-url.d.ts +46 -0
- package/dist/site-url.js +70 -0
- package/dist/slots.d.ts +129 -0
- package/dist/slots.js +286 -0
- package/dist/source-maps.d.ts +98 -0
- package/dist/source-maps.js +350 -0
- package/dist/source-signature.d.ts +45 -0
- package/dist/source-signature.js +20 -0
- package/dist/spa-nav.d.ts +49 -0
- package/dist/spa-nav.js +12 -0
- package/dist/spa-shell.d.ts +21 -0
- package/dist/spa-shell.js +34 -0
- package/dist/ssg.d.ts +357 -0
- package/dist/ssg.js +94 -0
- package/dist/ssr.d.ts +116 -0
- package/dist/ssr.js +339 -0
- package/dist/state-dir.d.ts +36 -0
- package/dist/state-dir.js +22 -0
- package/dist/state-management.d.ts +299 -0
- package/dist/state-management.js +519 -0
- package/dist/store-imports.d.ts +47 -0
- package/dist/store-imports.js +16 -0
- package/dist/store-loader.d.ts +15 -0
- package/dist/store-loader.js +111 -0
- package/dist/stores-client.d.ts +70 -0
- package/dist/stores-client.js +132 -0
- package/dist/story/addons.d.ts +123 -0
- package/dist/story/addons.js +261 -0
- package/dist/story/analytics.d.ts +163 -0
- package/dist/story/analytics.js +235 -0
- package/dist/story/auto-stories.d.ts +38 -0
- package/dist/story/auto-stories.js +158 -0
- package/dist/story/bookmarks.d.ts +102 -0
- package/dist/story/bookmarks.js +277 -0
- package/dist/story/bun-test.d.ts +45 -0
- package/dist/story/bun-test.js +102 -0
- package/dist/story/cli.d.ts +132 -0
- package/dist/story/cli.js +155 -0
- package/dist/story/collect/analyzer.d.ts +33 -0
- package/dist/story/collect/analyzer.js +305 -0
- package/dist/story/collect/index.d.ts +31 -0
- package/dist/story/collect/index.js +27 -0
- package/dist/story/collect/parser.d.ts +17 -0
- package/dist/story/collect/parser.js +129 -0
- package/dist/story/collect/scanner.d.ts +17 -0
- package/dist/story/collect/scanner.js +101 -0
- package/dist/story/collect/tree.d.ts +24 -0
- package/dist/story/collect/tree.js +110 -0
- package/dist/story/commands/build.d.ts +19 -0
- package/dist/story/commands/build.js +172 -0
- package/dist/story/commands/dev.d.ts +23 -0
- package/dist/story/commands/dev.js +78 -0
- package/dist/story/commands/index.d.ts +9 -0
- package/dist/story/commands/index.js +3 -0
- package/dist/story/commands/preview.d.ts +21 -0
- package/dist/story/commands/preview.js +56 -0
- package/dist/story/compiled-output.d.ts +27 -0
- package/dist/story/compiled-output.js +151 -0
- package/dist/story/composition.d.ts +47 -0
- package/dist/story/composition.js +261 -0
- package/dist/story/config-watcher.d.ts +33 -0
- package/dist/story/config-watcher.js +67 -0
- package/dist/story/config.d.ts +29 -0
- package/dist/story/config.js +64 -0
- package/dist/story/context.d.ts +27 -0
- package/dist/story/context.js +27 -0
- package/dist/story/controls/index.d.ts +54 -0
- package/dist/story/controls/index.js +320 -0
- package/dist/story/desktop-preview.d.ts +34 -0
- package/dist/story/desktop-preview.js +105 -0
- package/dist/story/docs-generator.d.ts +30 -0
- package/dist/story/docs-generator.js +187 -0
- package/dist/story/errors.d.ts +47 -0
- package/dist/story/errors.js +239 -0
- package/dist/story/figma-export.d.ts +169 -0
- package/dist/story/figma-export.js +224 -0
- package/dist/story/generator.d.ts +21 -0
- package/dist/story/generator.js +165 -0
- package/dist/story/hmr.d.ts +62 -0
- package/dist/story/hmr.js +131 -0
- package/dist/story/hot-swap.d.ts +46 -0
- package/dist/story/hot-swap.js +207 -0
- package/dist/story/index.d.ts +99 -0
- package/dist/story/index.js +49 -0
- package/dist/story/interactions.d.ts +53 -0
- package/dist/story/interactions.js +225 -0
- package/dist/story/keyboard-shortcuts.d.ts +39 -0
- package/dist/story/keyboard-shortcuts.js +345 -0
- package/dist/story/output.d.ts +115 -0
- package/dist/story/output.js +153 -0
- package/dist/story/performance.d.ts +129 -0
- package/dist/story/performance.js +252 -0
- package/dist/story/presets.d.ts +123 -0
- package/dist/story/presets.js +289 -0
- package/dist/story/props-validation.d.ts +45 -0
- package/dist/story/props-validation.js +215 -0
- package/dist/story/renderer.d.ts +69 -0
- package/dist/story/renderer.js +209 -0
- package/dist/story/search-index.d.ts +47 -0
- package/dist/story/search-index.js +106 -0
- package/dist/story/search.d.ts +56 -0
- package/dist/story/search.js +140 -0
- package/dist/story/server.d.ts +31 -0
- package/dist/story/server.js +965 -0
- package/dist/story/setup.d.ts +56 -0
- package/dist/story/setup.js +78 -0
- package/dist/story/snapshots.d.ts +65 -0
- package/dist/story/snapshots.js +171 -0
- package/dist/story/testing.d.ts +83 -0
- package/dist/story/testing.js +164 -0
- package/dist/story/theme.d.ts +68 -0
- package/dist/story/theme.js +170 -0
- package/dist/story/ts-css.d.ts +29 -0
- package/dist/story/ts-css.js +189 -0
- package/dist/story/types.d.ts +342 -0
- package/dist/story/types.js +0 -0
- package/dist/story/ui/code-panel.d.ts +43 -0
- package/dist/story/ui/code-panel.js +175 -0
- package/dist/story/ui/controls-panel.d.ts +25 -0
- package/dist/story/ui/controls-panel.js +168 -0
- package/dist/story/ui/index.d.ts +8 -0
- package/dist/story/ui/index.js +4 -0
- package/dist/story/ui/navigation.d.ts +55 -0
- package/dist/story/ui/navigation.js +250 -0
- package/dist/story/ui/preview.d.ts +46 -0
- package/dist/story/ui/preview.js +251 -0
- package/dist/story/visual-testing.d.ts +45 -0
- package/dist/story/visual-testing.js +248 -0
- package/dist/streaming.d.ts +238 -0
- package/dist/streaming.js +537 -0
- package/dist/strict-lint.d.ts +52 -0
- package/dist/strict-lint.js +269 -0
- package/dist/strip-literals.d.ts +40 -0
- package/dist/strip-literals.js +149 -0
- package/dist/stx-virtual-ts.d.ts +358 -0
- package/dist/stx-virtual-ts.js +670 -0
- package/dist/stx.d.ts +924 -0
- package/dist/style-scoping.d.ts +42 -0
- package/dist/style-scoping.js +82 -0
- package/dist/suspense.d.ts +98 -0
- package/dist/suspense.js +398 -0
- package/dist/teleport.d.ts +31 -0
- package/dist/teleport.js +109 -0
- package/dist/template-compiler.d.ts +33 -0
- package/dist/template-compiler.js +68 -0
- package/dist/template-hydrator.d.ts +28 -0
- package/dist/template-hydrator.js +95 -0
- package/dist/template-tag-balance.d.ts +32 -0
- package/dist/template-tag-balance.js +93 -0
- package/dist/testing.d.ts +330 -0
- package/dist/testing.js +588 -0
- package/dist/theme-tokens.d.ts +88 -0
- package/dist/theme-tokens.js +71 -0
- package/dist/transitions.d.ts +99 -0
- package/dist/transitions.js +443 -0
- package/dist/ts-css-config.d.ts +71 -0
- package/dist/ts-css-config.js +44 -0
- package/dist/type-checker.d.ts +85 -0
- package/dist/type-checker.js +581 -0
- package/dist/typecheck.d.ts +70 -0
- package/dist/typecheck.js +365 -0
- package/dist/types/component-types.d.ts +248 -0
- package/dist/types/component-types.js +0 -0
- package/dist/types/config-types.d.ts +938 -0
- package/dist/types/config-types.js +0 -0
- package/dist/types/context-types.d.ts +122 -0
- package/dist/types/context-types.js +0 -0
- package/dist/types/csp-types.d.ts +83 -0
- package/dist/types/csp-types.js +0 -0
- package/dist/types/directive-types.d.ts +315 -0
- package/dist/types/directive-types.js +3 -0
- package/dist/types/index.d.ts +20 -0
- package/dist/types/index.js +1 -0
- package/dist/types/pwa-types.d.ts +338 -0
- package/dist/types/pwa-types.js +0 -0
- package/dist/types.d.ts +27 -0
- package/dist/types.js +1 -0
- package/dist/typescript-templates.d.ts +156 -0
- package/dist/typescript-templates.js +386 -0
- package/dist/unresolved-identifiers.d.ts +52 -0
- package/dist/unresolved-identifiers.js +148 -0
- package/dist/utils.d.ts +112 -0
- package/dist/utils.js +1170 -0
- package/dist/validator.d.ts +80 -0
- package/dist/validator.js +171 -0
- package/dist/variable-extractor.d.ts +142 -0
- package/dist/variable-extractor.js +1306 -0
- package/dist/view-composers.d.ts +171 -0
- package/dist/view-composers.js +29 -0
- package/dist/virtual-scrolling.d.ts +127 -0
- package/dist/virtual-scrolling.js +454 -0
- package/dist/visual-editor.d.ts +185 -0
- package/dist/visual-editor.js +735 -0
- package/dist/visual-testing.d.ts +135 -0
- package/dist/visual-testing.js +126 -0
- package/dist/vue-template.d.ts +39 -0
- package/dist/vue-template.js +476 -0
- package/dist/web-components/css-scoping.d.ts +64 -0
- package/dist/web-components/css-scoping.js +210 -0
- package/dist/web-components/index.d.ts +29 -0
- package/dist/web-components/index.js +13 -0
- package/dist/web-components/reactive-generator.d.ts +72 -0
- package/dist/web-components/reactive-generator.js +484 -0
- package/dist/web-components.d.ts +253 -0
- package/dist/web-components.js +1466 -0
- package/dist/x-element.d.ts +42 -0
- package/dist/x-element.js +301 -0
- package/package.json +107 -0
- package/stx.d.ts +924 -0
package/stx.d.ts
ADDED
|
@@ -0,0 +1,924 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* STX Ambient Type Declarations
|
|
3
|
+
*
|
|
4
|
+
* This file is shipped with the @stacksjs/stx package and referenced from
|
|
5
|
+
* the package's main types entry. When stx is installed, TypeScript picks
|
|
6
|
+
* these declarations up automatically — apps do NOT need to write their own
|
|
7
|
+
* stx.d.ts workaround for runtime globals.
|
|
8
|
+
*
|
|
9
|
+
* What's declared here:
|
|
10
|
+
* 1. Module declarations for `*.stx` and `*.md` imports
|
|
11
|
+
* 2. Runtime globals injected by the stx signals runtime into <script client>
|
|
12
|
+
* blocks (signals, lifecycle, stores, composables, head, routing, etc.)
|
|
13
|
+
* 3. The `window.stx` registry interface
|
|
14
|
+
*
|
|
15
|
+
* Source of truth for the auto-imported global list:
|
|
16
|
+
* packages/stx/src/client-script.ts → STX_AUTO_IMPORTS
|
|
17
|
+
* packages/stx/src/signals.ts → window.stx = { ... }
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
// ============================================================================
|
|
21
|
+
// Module declarations
|
|
22
|
+
// ============================================================================
|
|
23
|
+
|
|
24
|
+
// Allow importing .stx files
|
|
25
|
+
declare module '*.stx'
|
|
26
|
+
|
|
27
|
+
// Allow importing .md files with frontmatter
|
|
28
|
+
declare module '*.md' {
|
|
29
|
+
const content: string
|
|
30
|
+
const data: Record<string, any>
|
|
31
|
+
export default content
|
|
32
|
+
export { data }
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// ============================================================================
|
|
36
|
+
// Signal types
|
|
37
|
+
// ============================================================================
|
|
38
|
+
|
|
39
|
+
interface StxSignal<T> {
|
|
40
|
+
(): T
|
|
41
|
+
value: T
|
|
42
|
+
set: (value: T) => void
|
|
43
|
+
update: (fn: (current: T) => T) => void
|
|
44
|
+
subscribe: (cb: (value: T) => void) => () => void
|
|
45
|
+
readonly _isSignal: true
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
interface StxDerivedSignal<T> {
|
|
49
|
+
(): T
|
|
50
|
+
readonly value: T
|
|
51
|
+
// Derived signals carry `_isDerived: true` (distinguishes them from state
|
|
52
|
+
// signals, which carry `_isSignal: true`). The two branches are exposed
|
|
53
|
+
// separately as `isSignal()` / `isDerived()`. Surfaced by the dual-impl
|
|
54
|
+
// parity test — both implementations agree on this contract.
|
|
55
|
+
readonly _isDerived: true
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
interface StxRef<T> {
|
|
59
|
+
value: T
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
type StxCleanup = () => void
|
|
63
|
+
|
|
64
|
+
// ============================================================================
|
|
65
|
+
// Signals (modern reactivity)
|
|
66
|
+
// ============================================================================
|
|
67
|
+
|
|
68
|
+
declare function state<T>(_initial: T): StxSignal<T>
|
|
69
|
+
declare function derived<T>(_compute: () => T): StxDerivedSignal<T>
|
|
70
|
+
declare function effect(_fn: () => void | StxCleanup): StxCleanup
|
|
71
|
+
declare function batch(_fn: () => void): void
|
|
72
|
+
declare function untrack<T>(_value: T | StxSignal<T> | StxDerivedSignal<T>): T
|
|
73
|
+
declare function peek<T>(_fn: () => T): T
|
|
74
|
+
declare function isSignal(_value: unknown): value is StxSignal<unknown>
|
|
75
|
+
declare function isDerived(_value: unknown): value is StxDerivedSignal<unknown>
|
|
76
|
+
|
|
77
|
+
// ============================================================================
|
|
78
|
+
// Lifecycle
|
|
79
|
+
// ============================================================================
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* A lifecycle hook may be `async`.
|
|
83
|
+
*
|
|
84
|
+
* `onMount(async () => { rows.set(await load()) })` is the documented way to
|
|
85
|
+
* fetch a component's initial data - it is the second JSDoc example on both
|
|
86
|
+
* `onMount` implementations - and the runtime has always awaited nothing and
|
|
87
|
+
* simply let the promise run. These declarations left the promise out of the
|
|
88
|
+
* return union, so every async `onMount` in a real app was a type error
|
|
89
|
+
* against a call that works.
|
|
90
|
+
*
|
|
91
|
+
* Only a synchronous return can be a cleanup function: the runtime registers
|
|
92
|
+
* it before the next hook runs. So a promise resolves to `void`.
|
|
93
|
+
*/
|
|
94
|
+
declare function onMount(_fn: () => void | StxCleanup | Promise<void>): void
|
|
95
|
+
declare function onDestroy(_fn: () => void | Promise<void>): void
|
|
96
|
+
declare function onBeforeMount(_fn: () => void | Promise<void>): void
|
|
97
|
+
declare function onMounted(_fn: () => void | StxCleanup | Promise<void>): void
|
|
98
|
+
declare function onBeforeUnmount(_fn: () => void | Promise<void>): void
|
|
99
|
+
declare function onUnmounted(_fn: () => void | Promise<void>): void
|
|
100
|
+
// onBeforeUpdate / onUpdated / onErrorCaptured are NOT declared: they exist in
|
|
101
|
+
// reactivity.ts and composition-api.ts but have no client-runtime counterpart,
|
|
102
|
+
// so declaring them promised a global that resolved to undefined (#1804).
|
|
103
|
+
|
|
104
|
+
// ============================================================================
|
|
105
|
+
// Template refs
|
|
106
|
+
// ============================================================================
|
|
107
|
+
|
|
108
|
+
/** Stable per-component id, unique across instances. */
|
|
109
|
+
declare function useId(_prefix?: string): string
|
|
110
|
+
/**
|
|
111
|
+
* Signal tracking a parent-driven `:prop="signal()"` attribute on the
|
|
112
|
+
* component's root element. One-way: parent to child.
|
|
113
|
+
*/
|
|
114
|
+
declare function useReactiveProp<T = unknown>(
|
|
115
|
+
_name: string,
|
|
116
|
+
_defaultValue?: T,
|
|
117
|
+
_options?: { parse?: (_value: string) => T },
|
|
118
|
+
): StxSignal<T>
|
|
119
|
+
/**
|
|
120
|
+
* A template ref. Read it however the surrounding code reads things: `ref()`
|
|
121
|
+
* like every other stx accessor, or `ref.current` / `ref.value` for the
|
|
122
|
+
* Vue- and React-shaped call sites.
|
|
123
|
+
*/
|
|
124
|
+
interface StxTemplateRef<T> {
|
|
125
|
+
(): T | null
|
|
126
|
+
readonly current: T | null
|
|
127
|
+
readonly value: T | null
|
|
128
|
+
}
|
|
129
|
+
declare function useRef<T = HTMLElement>(_name: string): StxTemplateRef<T>
|
|
130
|
+
|
|
131
|
+
// ============================================================================
|
|
132
|
+
// Routing / navigation
|
|
133
|
+
// ============================================================================
|
|
134
|
+
|
|
135
|
+
interface StxNavigateOptions {
|
|
136
|
+
/** Replace the current history entry instead of pushing a new one. */
|
|
137
|
+
replace?: boolean
|
|
138
|
+
/** Bypass the SPA router and perform a full document load. */
|
|
139
|
+
reload?: boolean
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Navigate via the SPA router.
|
|
144
|
+
*
|
|
145
|
+
* The second argument is deliberately NOT typed to also accept a boolean. The
|
|
146
|
+
* legacy positional `forceReload` boolean still works at runtime — it was the
|
|
147
|
+
* shape that actually shipped — but keeping it out of the type means nothing
|
|
148
|
+
* that type-checks today changes meaning (#1807).
|
|
149
|
+
*/
|
|
150
|
+
declare function navigate<T extends string>(
|
|
151
|
+
_url: T & import('@stacksjs/stx').CheckHref<T>,
|
|
152
|
+
_options?: StxNavigateOptions,
|
|
153
|
+
): void
|
|
154
|
+
declare function goBack(): void
|
|
155
|
+
declare function goForward(): void
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Re-run the current route against the server and swap the result, without a
|
|
159
|
+
* document load. Use after a mutation that changed server-rendered content.
|
|
160
|
+
*/
|
|
161
|
+
declare function refresh(): Promise<boolean>
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Expire one cached route so the next visit re-fetches it. Defaults to the
|
|
165
|
+
* current path.
|
|
166
|
+
*/
|
|
167
|
+
declare function invalidateRoute(_url?: string): void
|
|
168
|
+
declare function useRoute(): {
|
|
169
|
+
path: string
|
|
170
|
+
params: Record<string, string>
|
|
171
|
+
query: Record<string, string>
|
|
172
|
+
hash: string
|
|
173
|
+
}
|
|
174
|
+
declare function setRouteParams(_params: Record<string, string>): void
|
|
175
|
+
|
|
176
|
+
/**
|
|
177
|
+
* Reactive access to the current route's dynamic segments.
|
|
178
|
+
*
|
|
179
|
+
* Published on `window.stx` by 5daaba1f9b but never added to the auto-imported
|
|
180
|
+
* list, so it was reachable only as `window.stx.useRouteParams()` — exactly the
|
|
181
|
+
* authoring-surface gap in #1846.
|
|
182
|
+
*/
|
|
183
|
+
declare function useRouteParams(): StxSignal<Record<string, string>>
|
|
184
|
+
/** One dynamic segment, as a signal. */
|
|
185
|
+
declare function useRouteParam(_name: string, _defaultValue?: string): StxSignal<string>
|
|
186
|
+
/** How a search-param mutation is written to session history (#1825). */
|
|
187
|
+
interface StxSearchParamsCommitOptions {
|
|
188
|
+
/** Replace the current history entry instead of pushing a new one. */
|
|
189
|
+
replace?: boolean
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
/**
|
|
193
|
+
* Reactive access to the URL query string.
|
|
194
|
+
*
|
|
195
|
+
* The declaration was wrong in both directions (#1806): it promised `delete`
|
|
196
|
+
* and `has`, which did not exist at runtime, and omitted `setAll` and `data`,
|
|
197
|
+
* which did. `delete`/`has` are now implemented rather than dropped; `get`
|
|
198
|
+
* returns `undefined` for a missing key, not `null`, which is what the runtime
|
|
199
|
+
* and the docs have always said.
|
|
200
|
+
*/
|
|
201
|
+
declare function useSearchParams(): {
|
|
202
|
+
/** The backing signal — read it to make a binding reactive to the query. */
|
|
203
|
+
data: StxSignal<Record<string, string>>
|
|
204
|
+
get: (_key: string) => string | undefined
|
|
205
|
+
has: (_key: string) => boolean
|
|
206
|
+
/** Set a param. Pushes a history entry unless `{ replace: true }` is passed. */
|
|
207
|
+
set: (_key: string, _value: string, _options?: StxSearchParamsCommitOptions) => void
|
|
208
|
+
/**
|
|
209
|
+
* Remove a param. Pushes a history entry unless `{ replace: true }` is passed.
|
|
210
|
+
*
|
|
211
|
+
* CONSUMING a one-shot param — an OAuth callback result, `?checkout=success`,
|
|
212
|
+
* a flash token — needs `{ replace: true }`. Under the default push, the URL
|
|
213
|
+
* that still carries the param becomes the previous history entry, so Back
|
|
214
|
+
* replays the callback and re-runs whatever consuming it triggered (#1825).
|
|
215
|
+
*/
|
|
216
|
+
delete: (_key: string, _options?: StxSearchParamsCommitOptions) => void
|
|
217
|
+
/** Set several params. Pushes a history entry unless `{ replace: true }` is passed. */
|
|
218
|
+
setAll: (_values: Record<string, string>, _options?: StxSearchParamsCommitOptions) => void
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
// ============================================================================
|
|
222
|
+
// Data fetching
|
|
223
|
+
// ============================================================================
|
|
224
|
+
|
|
225
|
+
/** How one run of a request should behave. */
|
|
226
|
+
interface StxRefetchOptions {
|
|
227
|
+
/**
|
|
228
|
+
* Refresh without touching `loading` or clearing the current error.
|
|
229
|
+
*
|
|
230
|
+
* A poll refreshes data that is already on screen, so driving the first-load
|
|
231
|
+
* state from it puts a spinner over a populated view on every tick — the
|
|
232
|
+
* reason a polling view could not use these primitives at all (#1929). Bind
|
|
233
|
+
* `isFetching` for a subtle in-flight indicator instead.
|
|
234
|
+
*/
|
|
235
|
+
background?: boolean
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
interface StxFetchResult<T> {
|
|
239
|
+
data: StxSignal<T | null>
|
|
240
|
+
/** True while a first-load request is in flight. A background one leaves it alone. */
|
|
241
|
+
loading: StxSignal<boolean>
|
|
242
|
+
/** True while ANY request is in flight, background ones included. */
|
|
243
|
+
isFetching: StxSignal<boolean>
|
|
244
|
+
error: StxSignal<Error | null>
|
|
245
|
+
refetch: (_options?: StxRefetchOptions) => Promise<void>
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
/*
|
|
249
|
+
* `useQuery` returns more than `useFetch` does, and declaring one shape for
|
|
250
|
+
* both hid it: `isStale` and `invalidate` existed at runtime and were invisible
|
|
251
|
+
* to the type, so reading either was an error on a value that was really there
|
|
252
|
+
* (#1929). Extending rather than widening the shared interface, because the
|
|
253
|
+
* inverse mistake is worse — declaring `invalidate` on `useFetch` would
|
|
254
|
+
* type-check a call to something that is undefined at runtime.
|
|
255
|
+
*/
|
|
256
|
+
interface StxQueryResult<T> extends StxFetchResult<T> {
|
|
257
|
+
/** True when cached data is on screen while a revalidation runs. */
|
|
258
|
+
isStale: StxSignal<boolean>
|
|
259
|
+
/** Drop this key from the cache and refetch. */
|
|
260
|
+
invalidate: (_options?: StxRefetchOptions) => Promise<void>
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
interface StxMutationResult<T> {
|
|
264
|
+
data: StxSignal<T | null>
|
|
265
|
+
loading: StxSignal<boolean>
|
|
266
|
+
error: StxSignal<Error | null>
|
|
267
|
+
mutate: (body?: unknown) => Promise<T>
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
declare function useFetch<T = any>(_url: string, _options?: any): StxFetchResult<T>
|
|
271
|
+
declare function useQuery<T = any>(_url: string, _options?: any): StxQueryResult<T>
|
|
272
|
+
declare function useMutation<T = any>(_url: string, _options?: any): StxMutationResult<T>
|
|
273
|
+
|
|
274
|
+
/** Context handed to a request interceptor. Mutate it; the return is ignored. */
|
|
275
|
+
interface StxFetchRequestContext {
|
|
276
|
+
/** Which primitive made the call: 'useFetch' | 'useQuery' | 'useMutation'. */
|
|
277
|
+
source: string
|
|
278
|
+
/** Reassignable, so a hook can prefix a baseURL. */
|
|
279
|
+
url: string
|
|
280
|
+
/** `headers` is normalised to an object before the hook runs. */
|
|
281
|
+
options: RequestInit & { headers: Record<string, string> }
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
/** Context handed to a response interceptor. */
|
|
285
|
+
interface StxFetchResponseContext extends StxFetchRequestContext {
|
|
286
|
+
response: Response
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
/**
|
|
290
|
+
* Context handed to an error interceptor. `response` is the non-ok Response, or
|
|
291
|
+
* null when the fetch itself threw (a network failure); `error` is set only in
|
|
292
|
+
* the latter case.
|
|
293
|
+
*/
|
|
294
|
+
interface StxFetchErrorContext extends StxFetchRequestContext {
|
|
295
|
+
response: Response | null
|
|
296
|
+
error: Error | null
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
/**
|
|
300
|
+
* Install request/response interceptors for every stx data primitive.
|
|
301
|
+
*
|
|
302
|
+
* All three funnel through one internal fetch, so a single pair of hooks
|
|
303
|
+
* carries an auth header or observes a 401 across `useFetch`, `useQuery` and
|
|
304
|
+
* `useMutation`. Calling this again REPLACES the hooks rather than adding to
|
|
305
|
+
* them, so a re-evaluated module cannot install the same interceptor twice.
|
|
306
|
+
*
|
|
307
|
+
* `onResponseError` fires for a non-ok response and for a thrown fetch. Return
|
|
308
|
+
* a Response to replace the failed one — the shape a 401 -> refresh -> retry
|
|
309
|
+
* takes: refresh the token, re-issue the request with a plain `fetch()` (not
|
|
310
|
+
* this data layer, so it does not re-enter the hook), and return that Response.
|
|
311
|
+
* Return nothing to let the original error stand.
|
|
312
|
+
*/
|
|
313
|
+
declare function configureFetch(_config: {
|
|
314
|
+
onRequest?: (_ctx: StxFetchRequestContext) => void | Promise<void>
|
|
315
|
+
onResponse?: (_ctx: StxFetchResponseContext) => void | Promise<void>
|
|
316
|
+
onResponseError?: (_ctx: StxFetchErrorContext) => void | Response | Promise<void | Response>
|
|
317
|
+
}): void
|
|
318
|
+
|
|
319
|
+
declare function useOptimistic<T = any, A = any>(
|
|
320
|
+
_base: StxSignal<T> | (() => T) | T,
|
|
321
|
+
_reducer: (_current: T, _action: A) => T,
|
|
322
|
+
): [StxSignal<T>, (_action: A, _settleWhen?: PromiseLike<unknown>) => () => void]
|
|
323
|
+
|
|
324
|
+
// ============================================================================
|
|
325
|
+
// DOM utilities
|
|
326
|
+
// ============================================================================
|
|
327
|
+
|
|
328
|
+
/**
|
|
329
|
+
* Options the runtime reads, including the target it binds to.
|
|
330
|
+
*
|
|
331
|
+
* The target travels HERE rather than in a leading parameter, because that is
|
|
332
|
+
* what the implementation does: `var target = (options && options.target) || window`.
|
|
333
|
+
*/
|
|
334
|
+
interface StxEventListenerOptions {
|
|
335
|
+
/** Element, selector, or document/window. Defaults to `window`. */
|
|
336
|
+
target?: Window | Document | HTMLElement | string | null
|
|
337
|
+
capture?: boolean
|
|
338
|
+
passive?: boolean
|
|
339
|
+
once?: boolean
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
/*
|
|
343
|
+
* Event first, then handler, then options (stacksjs/stx#1923).
|
|
344
|
+
*
|
|
345
|
+
* This was declared target-first while the runtime has always been
|
|
346
|
+
* event-first, so the two disagreed in the worst possible direction: `_target`
|
|
347
|
+
* accepted `string`, so the CORRECT call got as far as reading 'keydown' as a
|
|
348
|
+
* selector before failing on the handler, and an author who trusted the type
|
|
349
|
+
* and added a target wrote `useEventListener(window, 'keydown', fn)` — which
|
|
350
|
+
* binds an event named "window" with the string 'keydown' as its handler, and
|
|
351
|
+
* silently attaches nothing.
|
|
352
|
+
*
|
|
353
|
+
* `browser-composables.ts` had it right all along; the package shipped two
|
|
354
|
+
* declarations of one name with different arities and the registry got the
|
|
355
|
+
* wrong one. Same shape as the `reactive` split: one name, two conventions, and
|
|
356
|
+
* no way for the call site to tell which it has.
|
|
357
|
+
*/
|
|
358
|
+
declare function useEventListener<K extends keyof WindowEventMap>(
|
|
359
|
+
_event: K,
|
|
360
|
+
_handler: (event: WindowEventMap[K]) => void,
|
|
361
|
+
_options?: StxEventListenerOptions,
|
|
362
|
+
): StxCleanup
|
|
363
|
+
declare function useEventListener(
|
|
364
|
+
_event: string,
|
|
365
|
+
_handler: (event: Event) => void,
|
|
366
|
+
_options?: StxEventListenerOptions,
|
|
367
|
+
): StxCleanup
|
|
368
|
+
declare function useScrollLock(
|
|
369
|
+
_target?: HTMLElement | null | { current?: HTMLElement | null, value?: HTMLElement | null } | (() => HTMLElement | null | undefined),
|
|
370
|
+
): StxSignal<boolean>
|
|
371
|
+
declare function useClickOutside(_target: HTMLElement | StxRef<HTMLElement | null> | string | null, _handler: (event: MouseEvent) => void): StxCleanup
|
|
372
|
+
declare function useFocus(_target: HTMLElement | StxRef<HTMLElement | null> | string | null): { focused: StxSignal<boolean>, focus: () => void, blur: () => void }
|
|
373
|
+
|
|
374
|
+
// ============================================================================
|
|
375
|
+
// Timers / scheduling
|
|
376
|
+
// ============================================================================
|
|
377
|
+
|
|
378
|
+
declare function useDebounce<T extends (..._args: any[]) => any>(_fn: T, _delay: number): T
|
|
379
|
+
declare function useDebouncedValue<T>(_value: StxSignal<T>, _delay: number): StxSignal<T>
|
|
380
|
+
declare function useThrottle<T extends (..._args: any[]) => any>(_fn: T, _delay: number): T
|
|
381
|
+
interface StxIntervalOptions {
|
|
382
|
+
/** Tick once on start/resume instead of waiting out the first interval. */
|
|
383
|
+
immediate?: boolean
|
|
384
|
+
/** Gate ticks. `false`, or a function returning false, skips them entirely. */
|
|
385
|
+
enabled?: boolean | (() => boolean)
|
|
386
|
+
/** Skip ticks while `document.hidden`. */
|
|
387
|
+
whileVisible?: boolean
|
|
388
|
+
}
|
|
389
|
+
|
|
390
|
+
interface StxIntervalControls {
|
|
391
|
+
/**
|
|
392
|
+
* Ticks elapsed. A plain number — read it, do not call it. It is not a
|
|
393
|
+
* signal and an `effect` cannot track it; use `subscribe` to react.
|
|
394
|
+
*/
|
|
395
|
+
readonly counter: number
|
|
396
|
+
pause: () => void
|
|
397
|
+
resume: () => void
|
|
398
|
+
reset: () => void
|
|
399
|
+
/** Runs on each tick with the new count. Returns an unsubscribe. */
|
|
400
|
+
subscribe: (_fn: (_count: number) => void) => () => void
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
/**
|
|
404
|
+
* Interval with controls. Both call forms work:
|
|
405
|
+
* `useInterval(1000)` for the counter, `useInterval(fn, 1000)` to run something.
|
|
406
|
+
*
|
|
407
|
+
* There is deliberately no `start`/`stop`/`isActive` here. A declaration of that
|
|
408
|
+
* shape shipped for some time and nothing implemented it, so calls against it
|
|
409
|
+
* typechecked clean and threw `poll.start is not a function` on mount (#1941).
|
|
410
|
+
* `resume`/`pause` are the real names.
|
|
411
|
+
*/
|
|
412
|
+
declare function useInterval(_interval?: number, _options?: StxIntervalOptions): StxIntervalControls
|
|
413
|
+
declare function useInterval(_fn: (_count: number) => void, _ms?: number, _options?: StxIntervalOptions): StxIntervalControls
|
|
414
|
+
declare function useInterval(_fn: (_count: number) => void, _options?: StxIntervalOptions): StxIntervalControls
|
|
415
|
+
declare function useTimeout(_fn: () => void, _ms?: number): {
|
|
416
|
+
/** Plain boolean, not a signal. Use `subscribe` to react to it. */
|
|
417
|
+
readonly isPending: boolean
|
|
418
|
+
start: () => void
|
|
419
|
+
stop: () => void
|
|
420
|
+
subscribe: (_fn: (_pending: boolean) => void) => () => void
|
|
421
|
+
}
|
|
422
|
+
declare function nextTick(_fn?: () => void): Promise<void>
|
|
423
|
+
|
|
424
|
+
// ============================================================================
|
|
425
|
+
// State utilities
|
|
426
|
+
// ============================================================================
|
|
427
|
+
|
|
428
|
+
declare function useToggle(_initial?: boolean): [StxSignal<boolean>, (value?: boolean) => void]
|
|
429
|
+
declare function useCounter(_initial?: number, _options?: { min?: number, max?: number }): {
|
|
430
|
+
count: StxSignal<number>
|
|
431
|
+
inc: (n?: number) => void
|
|
432
|
+
dec: (n?: number) => void
|
|
433
|
+
set: (n: number) => void
|
|
434
|
+
reset: () => void
|
|
435
|
+
}
|
|
436
|
+
declare function useAsync<T>(_fn: () => Promise<T>): {
|
|
437
|
+
data: StxSignal<T | null>
|
|
438
|
+
loading: StxSignal<boolean>
|
|
439
|
+
error: StxSignal<Error | null>
|
|
440
|
+
execute: () => Promise<T>
|
|
441
|
+
}
|
|
442
|
+
|
|
443
|
+
// ============================================================================
|
|
444
|
+
// Storage
|
|
445
|
+
// ============================================================================
|
|
446
|
+
|
|
447
|
+
declare function useLocalStorage<T>(_key: string, _defaultValue: T): StxSignal<T>
|
|
448
|
+
declare function useSessionStorage<T>(_key: string, _defaultValue: T): StxSignal<T>
|
|
449
|
+
|
|
450
|
+
/**
|
|
451
|
+
* Options accepted by the auto-imported `useCookie` global.
|
|
452
|
+
*
|
|
453
|
+
* This describes the CLIENT RUNTIME's cookie composable, which is what a bare
|
|
454
|
+
* `useCookie(...)` in a `<script client>` block resolves to. The module export
|
|
455
|
+
* `@stacksjs/stx/composables` accepts a slightly wider `expires` (Date, epoch ms
|
|
456
|
+
* or parseable string); the runtime calls `.toUTCString()` on it, so only a Date
|
|
457
|
+
* works there. See #1710.
|
|
458
|
+
*/
|
|
459
|
+
interface StxCookieOptions {
|
|
460
|
+
/** Max age in seconds. */
|
|
461
|
+
maxAge?: number
|
|
462
|
+
/** Expiration date. */
|
|
463
|
+
expires?: Date
|
|
464
|
+
/** Cookie path. Defaults to '/'. */
|
|
465
|
+
path?: string
|
|
466
|
+
/** Cookie domain. */
|
|
467
|
+
domain?: string
|
|
468
|
+
/** Secure flag. Defaults to true when location.protocol is https:. */
|
|
469
|
+
secure?: boolean
|
|
470
|
+
/** SameSite attribute. Defaults to 'Lax'. */
|
|
471
|
+
sameSite?: 'Strict' | 'Lax' | 'None' | 'strict' | 'lax' | 'none'
|
|
472
|
+
/** Value returned when the cookie is absent. Defaults to ''. */
|
|
473
|
+
defaultValue?: string
|
|
474
|
+
/** Custom encoder. Defaults to encodeURIComponent. */
|
|
475
|
+
encode?: (_value: string) => string
|
|
476
|
+
/** Custom decoder. Defaults to decodeURIComponent. */
|
|
477
|
+
decode?: (_value: string) => string
|
|
478
|
+
}
|
|
479
|
+
|
|
480
|
+
/**
|
|
481
|
+
* Reactive binding to a single cookie (#1808).
|
|
482
|
+
*
|
|
483
|
+
* Returns a signal, like `useLocalStorage` — writes serialise straight to
|
|
484
|
+
* `document.cookie`, and `.set('')` deletes by emitting `max-age=0`.
|
|
485
|
+
*/
|
|
486
|
+
declare function useCookie(_name: string, _options?: StxCookieOptions): StxSignal<string>
|
|
487
|
+
|
|
488
|
+
// ============================================================================
|
|
489
|
+
// WebSocket
|
|
490
|
+
// ============================================================================
|
|
491
|
+
|
|
492
|
+
declare function useWebSocket(_url: string, _options?: {
|
|
493
|
+
immediate?: boolean
|
|
494
|
+
autoReconnect?: boolean | { retries?: number, delay?: number }
|
|
495
|
+
onMessage?: (event: MessageEvent) => void
|
|
496
|
+
onConnected?: () => void
|
|
497
|
+
onDisconnected?: () => void
|
|
498
|
+
onError?: (event: Event) => void
|
|
499
|
+
}): {
|
|
500
|
+
status: StxSignal<'CONNECTING' | 'OPEN' | 'CLOSING' | 'CLOSED'>
|
|
501
|
+
data: StxSignal<unknown>
|
|
502
|
+
send: (data: string | ArrayBuffer | Blob) => void
|
|
503
|
+
open: () => void
|
|
504
|
+
close: () => void
|
|
505
|
+
ws: WebSocket | null
|
|
506
|
+
}
|
|
507
|
+
|
|
508
|
+
// ============================================================================
|
|
509
|
+
// Color mode
|
|
510
|
+
// ============================================================================
|
|
511
|
+
|
|
512
|
+
interface StxColorModeOptions {
|
|
513
|
+
/** localStorage key holding the preference. @default 'stx-color-mode' */
|
|
514
|
+
storageKey?: string
|
|
515
|
+
/** Mode used when nothing valid is stored. @default 'auto' */
|
|
516
|
+
initialMode?: 'light' | 'dark' | 'auto' | 'system'
|
|
517
|
+
/**
|
|
518
|
+
* Class applied to `<html>` when dark. @default 'dark'
|
|
519
|
+
* Applied alongside `attribute`; pass `null` to opt out of the class.
|
|
520
|
+
*/
|
|
521
|
+
darkClass?: string | null
|
|
522
|
+
/** Attribute set to the resolved mode on `<html>`, e.g. 'data-theme'. */
|
|
523
|
+
attribute?: string | null
|
|
524
|
+
/**
|
|
525
|
+
* Spelling written to storage for "follow the system".
|
|
526
|
+
* @default whatever is already stored, else 'auto'
|
|
527
|
+
*/
|
|
528
|
+
autoValue?: 'auto' | 'system'
|
|
529
|
+
/** Suppress CSS transitions across a mode switch. @default true */
|
|
530
|
+
disableTransitions?: boolean
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
/**
|
|
534
|
+
* Omitting the options picks up whatever `app.colorMode` in `stx.config.ts`
|
|
535
|
+
* published via the pre-paint boot script (stacksjs/stx#1794), so the storage
|
|
536
|
+
* key and attribute don't have to be repeated at the call site.
|
|
537
|
+
*/
|
|
538
|
+
declare function useColorMode(_options?: StxColorModeOptions): {
|
|
539
|
+
/** Current resolved mode. */
|
|
540
|
+
readonly mode: 'light' | 'dark'
|
|
541
|
+
/** User preference, which may be 'auto'. */
|
|
542
|
+
readonly preference: 'light' | 'dark' | 'auto'
|
|
543
|
+
readonly isDark: boolean
|
|
544
|
+
set: (mode: 'light' | 'dark' | 'auto' | 'system') => void
|
|
545
|
+
toggle: () => void
|
|
546
|
+
subscribe: (fn: (mode: 'light' | 'dark', preference: 'light' | 'dark' | 'auto') => void) => () => void
|
|
547
|
+
}
|
|
548
|
+
declare function useDark(_options?: StxColorModeOptions): StxSignal<boolean> & {
|
|
549
|
+
readonly isDark: boolean
|
|
550
|
+
toggle: () => void
|
|
551
|
+
}
|
|
552
|
+
declare function useMediaQuery(query: string): StxSignal<boolean> & {
|
|
553
|
+
readonly matches: boolean
|
|
554
|
+
readonly value: boolean
|
|
555
|
+
}
|
|
556
|
+
declare function usePreferredDark(): ReturnType<typeof useMediaQuery>
|
|
557
|
+
declare function usePreferredLight(): ReturnType<typeof useMediaQuery>
|
|
558
|
+
declare function usePreferredReducedMotion(): ReturnType<typeof useMediaQuery>
|
|
559
|
+
declare function usePreferredContrast(): ReturnType<typeof useMediaQuery>
|
|
560
|
+
|
|
561
|
+
// ============================================================================
|
|
562
|
+
// Head / SEO
|
|
563
|
+
// ============================================================================
|
|
564
|
+
|
|
565
|
+
interface StxHeadConfig {
|
|
566
|
+
title?: string
|
|
567
|
+
titleTemplate?: string | ((title?: string) => string)
|
|
568
|
+
meta?: Array<Record<string, string>>
|
|
569
|
+
link?: Array<Record<string, string>>
|
|
570
|
+
script?: Array<Record<string, string> & { children?: string }>
|
|
571
|
+
style?: Array<Record<string, string> & { children?: string }>
|
|
572
|
+
htmlAttrs?: Record<string, string>
|
|
573
|
+
bodyAttrs?: Record<string, string>
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
interface StxSeoMetaConfig {
|
|
577
|
+
title?: string
|
|
578
|
+
description?: string
|
|
579
|
+
keywords?: string
|
|
580
|
+
author?: string
|
|
581
|
+
ogTitle?: string
|
|
582
|
+
ogDescription?: string
|
|
583
|
+
ogImage?: string
|
|
584
|
+
ogUrl?: string
|
|
585
|
+
ogType?: string
|
|
586
|
+
twitterCard?: 'summary' | 'summary_large_image' | 'app' | 'player'
|
|
587
|
+
twitterTitle?: string
|
|
588
|
+
twitterDescription?: string
|
|
589
|
+
twitterImage?: string
|
|
590
|
+
robots?: string
|
|
591
|
+
canonical?: string
|
|
592
|
+
}
|
|
593
|
+
|
|
594
|
+
declare function useHead(_config: StxHeadConfig): void
|
|
595
|
+
declare function useSeoMeta(_config: StxSeoMetaConfig): void
|
|
596
|
+
/** No-op on the client; the real one runs at SSR/SSG time. */
|
|
597
|
+
declare function definePageMeta(_meta: Record<string, unknown>): void
|
|
598
|
+
|
|
599
|
+
// ============================================================================
|
|
600
|
+
// Vue-style reactivity (alternative API)
|
|
601
|
+
// ============================================================================
|
|
602
|
+
|
|
603
|
+
declare function ref<T>(_value: T): StxRef<T>
|
|
604
|
+
declare function reactive<T extends object>(_target: T): T
|
|
605
|
+
declare function computed<T>(_getter: () => T): StxRef<T>
|
|
606
|
+
declare function watch<T>(
|
|
607
|
+
_source: (() => T) | StxRef<T> | StxSignal<T>,
|
|
608
|
+
_callback: (value: T, oldValue: T) => void,
|
|
609
|
+
_options?: { immediate?: boolean, deep?: boolean },
|
|
610
|
+
): StxCleanup
|
|
611
|
+
declare function watchEffect(_fn: () => void): StxCleanup
|
|
612
|
+
declare function watchMultiple(
|
|
613
|
+
_sources: Array<() => unknown>,
|
|
614
|
+
_callback: (values: unknown[], oldValues: unknown[]) => void,
|
|
615
|
+
_options?: { immediate?: boolean },
|
|
616
|
+
): StxCleanup
|
|
617
|
+
|
|
618
|
+
// ============================================================================
|
|
619
|
+
// Component definition / composition API
|
|
620
|
+
// ============================================================================
|
|
621
|
+
|
|
622
|
+
declare function defineProps<T extends Record<string, any> = Record<string, any>>(_definitions?: any): T
|
|
623
|
+
declare function withDefaults<T extends Record<string, any>>(_props: T, _defaults: Partial<T>): T
|
|
624
|
+
/**
|
|
625
|
+
* Two forms, matching the runtime.
|
|
626
|
+
*
|
|
627
|
+
* The union form names the events and leaves the payload open. The map form
|
|
628
|
+
* gives each event a payload tuple, so `emit('view')` with a missing record
|
|
629
|
+
* and `emit('view', record, extra)` with a spare one are both errors.
|
|
630
|
+
*
|
|
631
|
+
* This used to be the union form alone, with a single optional `_payload`.
|
|
632
|
+
* That made the documented map form - the one `props.ts` and the composition
|
|
633
|
+
* API both implement, and the one the dashboard tables are written in - a
|
|
634
|
+
* constraint violation, and made a third argument an arity error even though
|
|
635
|
+
* the runtime forwards every argument it is given.
|
|
636
|
+
*
|
|
637
|
+
* @example
|
|
638
|
+
* const emit = defineEmits<'change' | 'close'>()
|
|
639
|
+
* @example
|
|
640
|
+
* const emit = defineEmits<{ view: [record: Row], remove: [id: number] }>()
|
|
641
|
+
*/
|
|
642
|
+
declare function defineEmits<T extends string = string>(): (_event: T, ..._args: unknown[]) => void
|
|
643
|
+
declare function defineEmits<T extends Record<string, unknown[]>>(): <K extends keyof T & string>(_event: K, ..._args: T[K]) => void
|
|
644
|
+
declare function defineExpose<T extends Record<string, any>>(_exposed: T): void
|
|
645
|
+
declare function defineSlots<T extends Record<string, (..._args: any[]) => any> = Record<string, (..._args: any[]) => any>>(): T
|
|
646
|
+
declare function provide<T>(_key: string | symbol, _value: T): void
|
|
647
|
+
declare function inject<T>(_key: string | symbol, _defaultValue?: T): T | undefined
|
|
648
|
+
declare function useSlots(): Record<string, any>
|
|
649
|
+
// getCurrentInstance / useAttrs are NOT declared — composition-api.ts exports
|
|
650
|
+
// them for server use; no client-runtime counterpart exists (#1804).
|
|
651
|
+
declare function $computed<T>(_getter: () => T): StxRef<T>
|
|
652
|
+
declare function $watch<T>(
|
|
653
|
+
_source: (() => T) | StxRef<T> | StxSignal<T>,
|
|
654
|
+
_callback: (value: T, oldValue: T) => void,
|
|
655
|
+
_options?: { immediate?: boolean, deep?: boolean },
|
|
656
|
+
): StxCleanup
|
|
657
|
+
|
|
658
|
+
// ============================================================================
|
|
659
|
+
// Toast notifications
|
|
660
|
+
// ============================================================================
|
|
661
|
+
|
|
662
|
+
/*
|
|
663
|
+
* Every option `addToast` reads (#1932).
|
|
664
|
+
*
|
|
665
|
+
* `title`, `id` and `dark` shipped in the runtime for #1913 and none of them
|
|
666
|
+
* reached here, so the feature built to unblock a migration could not be called
|
|
667
|
+
* from a typechecked file — `stx typecheck` rejected the exact snippet that
|
|
668
|
+
* issue was closed with.
|
|
669
|
+
*
|
|
670
|
+
* `test/signals/toast-declaration-drift.test.ts` now reads the option names out
|
|
671
|
+
* of the runtime and fails if this list falls behind again. Adding an option
|
|
672
|
+
* here without the runtime reading it fails too: a documented option that does
|
|
673
|
+
* nothing is the quieter half of the same problem.
|
|
674
|
+
*/
|
|
675
|
+
interface StxToastOptions {
|
|
676
|
+
/** Auto-dismiss duration in ms. 0 = persistent. Default: 3000 */
|
|
677
|
+
duration?: number
|
|
678
|
+
/** Heading rendered above the message, in bold. */
|
|
679
|
+
title?: string
|
|
680
|
+
/**
|
|
681
|
+
* Semantic key. A second toast with the same id REPLACES the first in place
|
|
682
|
+
* rather than stacking, and `dismiss(id)` ends it — so a persistent
|
|
683
|
+
* "Publishing…" toast and the call that clears it need not thread the numeric
|
|
684
|
+
* handle between them.
|
|
685
|
+
*/
|
|
686
|
+
id?: string | number
|
|
687
|
+
/**
|
|
688
|
+
* Force the dark or light palette. Omitted, it follows the document — the
|
|
689
|
+
* `dark` class, then `data-theme` / `data-color-mode`, then the OS setting.
|
|
690
|
+
*/
|
|
691
|
+
dark?: boolean
|
|
692
|
+
}
|
|
693
|
+
|
|
694
|
+
interface StxToast {
|
|
695
|
+
/** Show a success toast (green) */
|
|
696
|
+
success: (message: string, options?: StxToastOptions) => number
|
|
697
|
+
/** Show an error toast (red) */
|
|
698
|
+
error: (message: string, options?: StxToastOptions) => number
|
|
699
|
+
/** Show an info toast (blue) */
|
|
700
|
+
info: (message: string, options?: StxToastOptions) => number
|
|
701
|
+
/** Show a warning toast (yellow) */
|
|
702
|
+
warning: (message: string, options?: StxToastOptions) => number
|
|
703
|
+
/**
|
|
704
|
+
* Dismiss a toast, or all of them if nothing is given.
|
|
705
|
+
*
|
|
706
|
+
* Takes the semantic `id` the toast was created with, or the numeric handle
|
|
707
|
+
* these methods return. The runtime branches on which it got, so a caller does
|
|
708
|
+
* not have to know which kind it is holding — this used to accept `number`
|
|
709
|
+
* only, which made replace-by-id unreachable from a typechecked call site.
|
|
710
|
+
*/
|
|
711
|
+
dismiss: (id?: string | number) => void
|
|
712
|
+
}
|
|
713
|
+
|
|
714
|
+
declare const toast: StxToast
|
|
715
|
+
|
|
716
|
+
// ============================================================================
|
|
717
|
+
// Modal system
|
|
718
|
+
// ============================================================================
|
|
719
|
+
|
|
720
|
+
interface StxModal {
|
|
721
|
+
/** Open a modal by its id */
|
|
722
|
+
open: (id: string) => void
|
|
723
|
+
/** Close a modal by its id */
|
|
724
|
+
close: (id: string) => void
|
|
725
|
+
/** Toggle a modal by its id */
|
|
726
|
+
toggle: (id: string) => void
|
|
727
|
+
}
|
|
728
|
+
|
|
729
|
+
declare const modal: StxModal
|
|
730
|
+
|
|
731
|
+
// ============================================================================
|
|
732
|
+
// Drawer system
|
|
733
|
+
// ============================================================================
|
|
734
|
+
|
|
735
|
+
interface StxDrawer {
|
|
736
|
+
/** Open a drawer by its id */
|
|
737
|
+
open: (id: string) => void
|
|
738
|
+
/** Close a drawer by its id */
|
|
739
|
+
close: (id: string) => void
|
|
740
|
+
/** Toggle a drawer by its id */
|
|
741
|
+
toggle: (id: string) => void
|
|
742
|
+
}
|
|
743
|
+
|
|
744
|
+
declare const drawer: StxDrawer
|
|
745
|
+
|
|
746
|
+
// ============================================================================
|
|
747
|
+
// Alert & Confirm dialogs
|
|
748
|
+
// ============================================================================
|
|
749
|
+
|
|
750
|
+
interface StxDialogOptions {
|
|
751
|
+
/** Dialog title displayed above the message */
|
|
752
|
+
title?: string
|
|
753
|
+
/** Icon type: 'info' | 'warning' | 'error' | 'success' | 'question' */
|
|
754
|
+
type?: 'info' | 'warning' | 'error' | 'success' | 'question'
|
|
755
|
+
/** Text for the confirm/OK button (default: 'OK') */
|
|
756
|
+
confirmText?: string
|
|
757
|
+
/** Text for the cancel button — confirm only (default: 'Cancel') */
|
|
758
|
+
cancelText?: string
|
|
759
|
+
}
|
|
760
|
+
|
|
761
|
+
/** Styled replacement for window.alert(). Returns a Promise that resolves when dismissed. */
|
|
762
|
+
declare function stxAlert(_message: string, _options?: StxDialogOptions): Promise<void>
|
|
763
|
+
|
|
764
|
+
/** Styled replacement for window.confirm(). Returns a Promise<boolean>. */
|
|
765
|
+
declare function stxConfirm(_message: string, _options?: StxDialogOptions): Promise<boolean>
|
|
766
|
+
|
|
767
|
+
// ============================================================================
|
|
768
|
+
// Stores (Pinia-inspired, signals-based)
|
|
769
|
+
// ============================================================================
|
|
770
|
+
|
|
771
|
+
interface StxStorePersistOptions {
|
|
772
|
+
pick?: string[]
|
|
773
|
+
storage?: 'localStorage' | 'sessionStorage'
|
|
774
|
+
key?: string
|
|
775
|
+
}
|
|
776
|
+
|
|
777
|
+
interface StxStoreOptions {
|
|
778
|
+
persist?: boolean | StxStorePersistOptions
|
|
779
|
+
}
|
|
780
|
+
|
|
781
|
+
declare function defineStore<T>(
|
|
782
|
+
_id: string,
|
|
783
|
+
_setup: () => T,
|
|
784
|
+
_options?: StxStoreOptions,
|
|
785
|
+
): () => T
|
|
786
|
+
declare function defineStore<S extends Record<string, any>, G extends Record<string, any>, A extends Record<string, any>>(
|
|
787
|
+
_id: string,
|
|
788
|
+
_options: {
|
|
789
|
+
state?: () => S
|
|
790
|
+
getters?: G
|
|
791
|
+
actions?: A
|
|
792
|
+
persist?: boolean | StxStorePersistOptions
|
|
793
|
+
},
|
|
794
|
+
): () => S & G & A
|
|
795
|
+
declare function useStore<T = any>(_id: string): T
|
|
796
|
+
declare function registerStoresClient(_stores: Record<string, unknown>): void
|
|
797
|
+
// createStore / createSelector are exported by state-management.ts for server
|
|
798
|
+
// use and `action` has no implementation anywhere; none reaches window.stx, so
|
|
799
|
+
// none is declared as an ambient global (#1804).
|
|
800
|
+
|
|
801
|
+
// ============================================================================
|
|
802
|
+
// JSX runtime (Vue/React style)
|
|
803
|
+
// ============================================================================
|
|
804
|
+
|
|
805
|
+
// h / Fragment belong to the JSX runtime (jsx-runtime.ts) and are resolved by
|
|
806
|
+
// the transform, not destructured off window.stx — so they are not ambient
|
|
807
|
+
// globals (#1804). Import them explicitly if you call them directly.
|
|
808
|
+
|
|
809
|
+
// ============================================================================
|
|
810
|
+
// window.stx registry
|
|
811
|
+
// ============================================================================
|
|
812
|
+
|
|
813
|
+
interface StxRuntimeRegistry {
|
|
814
|
+
// Signals
|
|
815
|
+
state: typeof state
|
|
816
|
+
derived: typeof derived
|
|
817
|
+
effect: typeof effect
|
|
818
|
+
batch: typeof batch
|
|
819
|
+
untrack: typeof untrack
|
|
820
|
+
peek: typeof peek
|
|
821
|
+
isSignal: typeof isSignal
|
|
822
|
+
|
|
823
|
+
// Lifecycle
|
|
824
|
+
onMount: typeof onMount
|
|
825
|
+
onDestroy: typeof onDestroy
|
|
826
|
+
|
|
827
|
+
// Composables
|
|
828
|
+
useFetch: typeof useFetch
|
|
829
|
+
useRef: typeof useRef
|
|
830
|
+
useQuery: typeof useQuery
|
|
831
|
+
useMutation: typeof useMutation
|
|
832
|
+
configureFetch: typeof configureFetch
|
|
833
|
+
useOptimistic: typeof useOptimistic
|
|
834
|
+
|
|
835
|
+
// Routing
|
|
836
|
+
navigate: typeof navigate
|
|
837
|
+
goBack: typeof goBack
|
|
838
|
+
goForward: typeof goForward
|
|
839
|
+
refresh: typeof refresh
|
|
840
|
+
invalidateRoute: typeof invalidateRoute
|
|
841
|
+
useRoute: typeof useRoute
|
|
842
|
+
setRouteParams: typeof setRouteParams
|
|
843
|
+
useRouteParams: typeof useRouteParams
|
|
844
|
+
useRouteParam: typeof useRouteParam
|
|
845
|
+
useSearchParams: typeof useSearchParams
|
|
846
|
+
|
|
847
|
+
// Composition
|
|
848
|
+
provide: typeof provide
|
|
849
|
+
defineProps: typeof defineProps
|
|
850
|
+
withDefaults: typeof withDefaults
|
|
851
|
+
defineEmits: typeof defineEmits
|
|
852
|
+
defineExpose: typeof defineExpose
|
|
853
|
+
defineSlots: typeof defineSlots
|
|
854
|
+
|
|
855
|
+
// Vue compat
|
|
856
|
+
ref: typeof ref
|
|
857
|
+
reactive: typeof reactive
|
|
858
|
+
computed: typeof computed
|
|
859
|
+
watch: typeof watch
|
|
860
|
+
watchEffect: typeof watchEffect
|
|
861
|
+
$computed: typeof $computed
|
|
862
|
+
$watch: typeof $watch
|
|
863
|
+
|
|
864
|
+
// Utilities
|
|
865
|
+
useDebounce: typeof useDebounce
|
|
866
|
+
useDebouncedValue: typeof useDebouncedValue
|
|
867
|
+
useThrottle: typeof useThrottle
|
|
868
|
+
useInterval: typeof useInterval
|
|
869
|
+
useTimeout: typeof useTimeout
|
|
870
|
+
useToggle: typeof useToggle
|
|
871
|
+
useCounter: typeof useCounter
|
|
872
|
+
useClickOutside: typeof useClickOutside
|
|
873
|
+
useFocus: typeof useFocus
|
|
874
|
+
useAsync: typeof useAsync
|
|
875
|
+
useLocalStorage: typeof useLocalStorage
|
|
876
|
+
useSessionStorage: typeof useSessionStorage
|
|
877
|
+
useEventListener: typeof useEventListener
|
|
878
|
+
useScrollLock: typeof useScrollLock
|
|
879
|
+
useWebSocket: typeof useWebSocket
|
|
880
|
+
useColorMode: typeof useColorMode
|
|
881
|
+
useDark: typeof useDark
|
|
882
|
+
useHead: typeof useHead
|
|
883
|
+
useSeoMeta: typeof useSeoMeta
|
|
884
|
+
|
|
885
|
+
// Stores
|
|
886
|
+
defineStore: typeof defineStore
|
|
887
|
+
useStore: typeof useStore
|
|
888
|
+
|
|
889
|
+
// Toast
|
|
890
|
+
toast: StxToast
|
|
891
|
+
|
|
892
|
+
// Modal
|
|
893
|
+
modal: StxModal
|
|
894
|
+
|
|
895
|
+
// Drawer
|
|
896
|
+
drawer: StxDrawer
|
|
897
|
+
|
|
898
|
+
// Dialogs
|
|
899
|
+
alert: typeof stxAlert
|
|
900
|
+
confirm: typeof stxConfirm
|
|
901
|
+
|
|
902
|
+
// Mount API
|
|
903
|
+
mount: (setupFn: () => any) => void
|
|
904
|
+
mountEl: (selector: string, setupFn: () => any) => void
|
|
905
|
+
|
|
906
|
+
// Helpers (template helpers — populated by app)
|
|
907
|
+
helpers: Record<string, any>
|
|
908
|
+
|
|
909
|
+
// Internals (escape hatch)
|
|
910
|
+
[key: string]: any
|
|
911
|
+
}
|
|
912
|
+
|
|
913
|
+
// Bare global so existing code that references `stx` (without `window.`) still works
|
|
914
|
+
declare const stx: StxRuntimeRegistry
|
|
915
|
+
|
|
916
|
+
// Augment Window so `window.stx` is typed
|
|
917
|
+
interface Window {
|
|
918
|
+
stx: StxRuntimeRegistry
|
|
919
|
+
__STX_STORES__?: Record<string, any>
|
|
920
|
+
__STX_CURRENT_PROPS__?: Record<string, any>
|
|
921
|
+
__STX_CURRENT_ELEMENT__?: HTMLElement | null
|
|
922
|
+
__stxRouter?: boolean
|
|
923
|
+
__stxRouterConfig?: Record<string, any>
|
|
924
|
+
}
|