@vizejs/composable 0.426.3 → 0.428.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/dist/abort-signal.d.mts +1 -1
- package/dist/active-element.d.mts +37 -0
- package/dist/active-element.mjs +56 -0
- package/dist/animate.d.mts +114 -0
- package/dist/animate.mjs +157 -0
- package/dist/battery.d.mts +61 -0
- package/dist/battery.mjs +90 -0
- package/dist/breakpoints.d.mts +82 -0
- package/dist/breakpoints.mjs +91 -0
- package/dist/catalog-BeTXFKxF.d.mts +4188 -0
- package/dist/catalog-r4Z5nptX.mjs +5144 -0
- package/dist/catalog.d.mts +1 -1
- package/dist/catalog.mjs +1 -1
- package/dist/color-mode.d.mts +131 -0
- package/dist/color-mode.mjs +133 -0
- package/dist/computed-async.d.mts +63 -0
- package/dist/computed-async.mjs +43 -0
- package/dist/computed-with-control.d.mts +44 -0
- package/dist/computed-with-control.mjs +54 -0
- package/dist/create-event-hook.d.mts +77 -0
- package/dist/create-event-hook.mjs +66 -0
- package/dist/create-global-state.d.mts +24 -0
- package/dist/create-global-state.mjs +34 -0
- package/dist/create-injection-state.d.mts +51 -0
- package/dist/create-injection-state.mjs +19 -0
- package/dist/create-shared-composable.d.mts +38 -0
- package/dist/create-shared-composable.mjs +54 -0
- package/dist/device-motion.d.mts +71 -0
- package/dist/device-motion.mjs +75 -0
- package/dist/device-orientation.d.mts +82 -0
- package/dist/device-orientation.mjs +86 -0
- package/dist/device-pixel-ratio.d.mts +45 -0
- package/dist/device-pixel-ratio.mjs +50 -0
- package/dist/document-visibility.mjs +6 -2
- package/dist/draggable.d.mts +121 -0
- package/dist/draggable.mjs +153 -0
- package/dist/element-bounding.d.mts +87 -0
- package/dist/element-bounding.mjs +95 -0
- package/dist/element-by-point.d.mts +70 -0
- package/dist/element-by-point.mjs +69 -0
- package/dist/element-hover.d.mts +42 -0
- package/dist/element-hover.mjs +70 -0
- package/dist/element-ref.d.mts +34 -0
- package/dist/element-ref.mjs +23 -0
- package/dist/element-target-Crpxl4D9.d.mts +60 -0
- package/dist/element-target.d.mts +2 -0
- package/dist/element-target.mjs +58 -0
- package/dist/event-listener.mjs +7 -3
- package/dist/focus.d.mts +69 -0
- package/dist/focus.mjs +124 -0
- package/dist/fps.d.mts +59 -0
- package/dist/fps.mjs +64 -0
- package/dist/geolocation.d.mts +98 -0
- package/dist/geolocation.mjs +86 -0
- package/dist/i18n.d.mts +237 -0
- package/dist/i18n.mjs +215 -0
- package/dist/icu-message.d.mts +235 -0
- package/dist/icu-message.mjs +343 -0
- package/dist/idle.d.mts +79 -0
- package/dist/idle.mjs +90 -0
- package/dist/index.d.mts +172 -6
- package/dist/index.mjs +173 -7
- package/dist/infinite-scroll.d.mts +56 -0
- package/dist/infinite-scroll.mjs +72 -0
- package/dist/intersection-observer.d.mts +122 -0
- package/dist/intersection-observer.mjs +117 -0
- package/dist/magic-keys.d.mts +121 -0
- package/dist/magic-keys.mjs +163 -0
- package/dist/math.d.mts +96 -0
- package/dist/math.mjs +84 -0
- package/dist/media-query.d.mts +3 -1
- package/dist/media-query.mjs +5 -3
- package/dist/mouse-in-element.d.mts +49 -0
- package/dist/mouse-in-element.mjs +66 -0
- package/dist/mouse.d.mts +77 -0
- package/dist/mouse.mjs +100 -0
- package/dist/mutation-observer.d.mts +98 -0
- package/dist/mutation-observer.mjs +69 -0
- package/dist/network.d.mts +96 -0
- package/dist/network.mjs +117 -0
- package/dist/on-click-outside.d.mts +69 -0
- package/dist/on-click-outside.mjs +115 -0
- package/dist/on-key-stroke.d.mts +71 -0
- package/dist/on-key-stroke.mjs +79 -0
- package/dist/on-long-press.d.mts +82 -0
- package/dist/on-long-press.mjs +105 -0
- package/dist/on-start-typing.d.mts +44 -0
- package/dist/on-start-typing.mjs +61 -0
- package/dist/page-leave.d.mts +26 -0
- package/dist/page-leave.mjs +40 -0
- package/dist/parent-element.d.mts +16 -0
- package/dist/parent-element.mjs +27 -0
- package/dist/pinch.d.mts +73 -0
- package/dist/pinch.mjs +138 -0
- package/dist/pointer-lock.d.mts +79 -0
- package/dist/pointer-lock.mjs +126 -0
- package/dist/pointer.d.mts +78 -0
- package/dist/pointer.mjs +95 -0
- package/dist/preferences.d.mts +55 -0
- package/dist/preferences.mjs +63 -0
- package/dist/preferred-languages.d.mts +43 -0
- package/dist/preferred-languages.mjs +44 -0
- package/dist/reactify.d.mts +28 -0
- package/dist/reactify.mjs +7 -0
- package/dist/ref-auto-reset.d.mts +47 -0
- package/dist/ref-auto-reset.mjs +70 -0
- package/dist/ref-debounced.d.mts +29 -0
- package/dist/ref-debounced.mjs +29 -0
- package/dist/ref-default.d.mts +27 -0
- package/dist/ref-default.mjs +33 -0
- package/dist/resize-observer.d.mts +96 -0
- package/dist/resize-observer.mjs +111 -0
- package/dist/resolver.d.mts +124 -0
- package/dist/resolver.mjs +138 -0
- package/dist/retry-async.d.mts +2 -2
- package/dist/retry-delay-DYsdq4SE.d.mts +73 -0
- package/dist/retry-delay.d.mts +1 -72
- package/dist/screen-orientation.d.mts +77 -0
- package/dist/screen-orientation.mjs +74 -0
- package/dist/scroll-lock.d.mts +37 -0
- package/dist/scroll-lock.mjs +50 -0
- package/dist/scroll.d.mts +158 -0
- package/dist/scroll.mjs +172 -0
- package/dist/standard-schema-DmNgFVK5.d.mts +107 -0
- package/dist/standard-schema.d.mts +2 -0
- package/dist/standard-schema.mjs +60 -0
- package/dist/swipe.d.mts +125 -0
- package/dist/swipe.mjs +225 -0
- package/dist/sync-ref.d.mts +80 -0
- package/dist/sync-ref.mjs +43 -0
- package/dist/text-selection.d.mts +46 -0
- package/dist/text-selection.mjs +62 -0
- package/dist/textarea-autosize.d.mts +58 -0
- package/dist/textarea-autosize.mjs +54 -0
- package/dist/timeout-scheduler-CI8RVLZs.d.mts +18 -0
- package/dist/timeout-scheduler.d.mts +1 -17
- package/dist/to-reactive.d.mts +26 -0
- package/dist/to-reactive.mjs +46 -0
- package/dist/transition.d.mts +125 -0
- package/dist/transition.mjs +266 -0
- package/dist/until.d.mts +177 -0
- package/dist/until.mjs +111 -0
- package/dist/use-array.d.mts +112 -0
- package/dist/use-array.mjs +90 -0
- package/dist/use-async-queue.d.mts +109 -0
- package/dist/use-async-queue.mjs +96 -0
- package/dist/use-async-state.d.mts +86 -0
- package/dist/use-async-state.mjs +41 -0
- package/dist/use-barcode-detector.d.mts +159 -0
- package/dist/use-barcode-detector.mjs +143 -0
- package/dist/use-bluetooth.d.mts +164 -0
- package/dist/use-bluetooth.mjs +183 -0
- package/dist/use-broadcast-channel.d.mts +115 -0
- package/dist/use-broadcast-channel.mjs +121 -0
- package/dist/use-builtin-ai.d.mts +342 -0
- package/dist/use-builtin-ai.mjs +261 -0
- package/dist/use-clipboard.d.mts +169 -0
- package/dist/use-clipboard.mjs +226 -0
- package/dist/use-compression-stream.d.mts +173 -0
- package/dist/use-compression-stream.mjs +166 -0
- package/dist/use-confirm-dialog.d.mts +70 -0
- package/dist/use-confirm-dialog.mjs +57 -0
- package/dist/use-contact-picker.d.mts +117 -0
- package/dist/use-contact-picker.mjs +103 -0
- package/dist/use-cookie.d.mts +196 -0
- package/dist/use-cookie.mjs +259 -0
- package/dist/use-countdown.d.mts +85 -0
- package/dist/use-countdown.mjs +74 -0
- package/dist/use-css-var.d.mts +96 -0
- package/dist/use-css-var.mjs +104 -0
- package/dist/use-cycle-list.d.mts +76 -0
- package/dist/use-cycle-list.mjs +39 -0
- package/dist/use-date-format.d.mts +103 -0
- package/dist/use-date-format.mjs +147 -0
- package/dist/use-date-time-format.d.mts +75 -0
- package/dist/use-date-time-format.mjs +53 -0
- package/dist/use-debounced.d.mts +1 -1
- package/dist/use-display-media.d.mts +62 -0
- package/dist/use-display-media.mjs +46 -0
- package/dist/use-display-names.d.mts +75 -0
- package/dist/use-display-names.mjs +52 -0
- package/dist/use-document-title.d.mts +88 -0
- package/dist/use-document-title.mjs +100 -0
- package/dist/use-drop-zone.d.mts +128 -0
- package/dist/use-drop-zone.mjs +154 -0
- package/dist/use-event-source.d.mts +184 -0
- package/dist/use-event-source.mjs +226 -0
- package/dist/use-eye-dropper.d.mts +79 -0
- package/dist/use-eye-dropper.mjs +68 -0
- package/dist/use-favicon.d.mts +78 -0
- package/dist/use-favicon.mjs +68 -0
- package/dist/use-fetch.d.mts +230 -0
- package/dist/use-fetch.mjs +263 -0
- package/dist/use-field.d.mts +107 -0
- package/dist/use-field.mjs +117 -0
- package/dist/use-file-dialog.d.mts +139 -0
- package/dist/use-file-dialog.mjs +101 -0
- package/dist/use-file-system-access.d.mts +184 -0
- package/dist/use-file-system-access.mjs +151 -0
- package/dist/use-form-field-props.d.mts +235 -0
- package/dist/use-form-field-props.mjs +164 -0
- package/dist/use-form.d.mts +324 -0
- package/dist/use-form.mjs +482 -0
- package/dist/use-fullscreen.d.mts +104 -0
- package/dist/use-fullscreen.mjs +95 -0
- package/dist/use-gamepad.d.mts +242 -0
- package/dist/use-gamepad.mjs +218 -0
- package/dist/use-hid.d.mts +160 -0
- package/dist/use-hid.mjs +156 -0
- package/dist/use-id-generator.d.mts +44 -0
- package/dist/use-id-generator.mjs +38 -0
- package/dist/use-image.d.mts +125 -0
- package/dist/use-image.mjs +109 -0
- package/dist/use-indexed-db.d.mts +207 -0
- package/dist/use-indexed-db.mjs +251 -0
- package/dist/use-interval-BA55gTHT.d.mts +140 -0
- package/dist/use-interval.d.mts +2 -0
- package/dist/use-interval.mjs +100 -0
- package/dist/use-list-format.d.mts +60 -0
- package/dist/use-list-format.mjs +40 -0
- package/dist/use-machine.d.mts +90 -0
- package/dist/use-machine.mjs +78 -0
- package/dist/use-map.d.mts +90 -0
- package/dist/use-map.mjs +70 -0
- package/dist/use-media-controls.d.mts +198 -0
- package/dist/use-media-controls.mjs +264 -0
- package/dist/use-memoize.d.mts +73 -0
- package/dist/use-memoize.mjs +28 -0
- package/dist/use-mounted.d.mts +24 -0
- package/dist/use-mounted.mjs +29 -0
- package/dist/use-navigation-api.d.mts +360 -0
- package/dist/use-navigation-api.mjs +231 -0
- package/dist/use-notification.d.mts +139 -0
- package/dist/use-notification.mjs +131 -0
- package/dist/use-now.d.mts +137 -0
- package/dist/use-now.mjs +44 -0
- package/dist/use-number-format.d.mts +73 -0
- package/dist/use-number-format.mjs +58 -0
- package/dist/use-object-url.d.mts +47 -0
- package/dist/use-object-url.mjs +54 -0
- package/dist/use-offset-pagination.d.mts +91 -0
- package/dist/use-offset-pagination.mjs +80 -0
- package/dist/use-payment-request.d.mts +239 -0
- package/dist/use-payment-request.mjs +206 -0
- package/dist/use-performance-observer.d.mts +285 -0
- package/dist/use-performance-observer.mjs +132 -0
- package/dist/use-permission.d.mts +99 -0
- package/dist/use-permission.mjs +92 -0
- package/dist/use-plural-rules.d.mts +79 -0
- package/dist/use-plural-rules.mjs +59 -0
- package/dist/use-push-subscription.d.mts +154 -0
- package/dist/use-push-subscription.mjs +146 -0
- package/dist/use-queue.d.mts +89 -0
- package/dist/use-queue.mjs +116 -0
- package/dist/use-raf-fn.d.mts +87 -0
- package/dist/use-raf-fn.mjs +99 -0
- package/dist/use-relative-time-format.d.mts +111 -0
- package/dist/use-relative-time-format.mjs +119 -0
- package/dist/use-request-idle-callback.d.mts +122 -0
- package/dist/use-request-idle-callback.mjs +147 -0
- package/dist/use-route-query.d.mts +149 -0
- package/dist/use-route-query.mjs +86 -0
- package/dist/use-scheduler-post-task.d.mts +156 -0
- package/dist/use-scheduler-post-task.mjs +182 -0
- package/dist/use-screen-details.d.mts +205 -0
- package/dist/use-screen-details.mjs +188 -0
- package/dist/use-script-tag.d.mts +162 -0
- package/dist/use-script-tag.mjs +171 -0
- package/dist/use-segmenter.d.mts +78 -0
- package/dist/use-segmenter.mjs +66 -0
- package/dist/use-selection.d.mts +125 -0
- package/dist/use-selection.mjs +77 -0
- package/dist/use-serial.d.mts +165 -0
- package/dist/use-serial.mjs +205 -0
- package/dist/use-service-worker.d.mts +177 -0
- package/dist/use-service-worker.mjs +178 -0
- package/dist/use-set.d.mts +96 -0
- package/dist/use-set.mjs +74 -0
- package/dist/use-share.d.mts +92 -0
- package/dist/use-share.mjs +99 -0
- package/dist/use-sorted-locale.d.mts +62 -0
- package/dist/use-sorted-locale.mjs +52 -0
- package/dist/use-sorted.d.mts +29 -0
- package/dist/use-sorted.mjs +14 -0
- package/dist/use-speech-recognition.d.mts +150 -0
- package/dist/use-speech-recognition.mjs +168 -0
- package/dist/use-speech-synthesis.d.mts +148 -0
- package/dist/use-speech-synthesis.mjs +152 -0
- package/dist/use-stack.d.mts +83 -0
- package/dist/use-stack.mjs +93 -0
- package/dist/use-stepper.d.mts +79 -0
- package/dist/use-stepper.mjs +52 -0
- package/dist/use-storage-estimate.d.mts +151 -0
- package/dist/use-storage-estimate.mjs +170 -0
- package/dist/use-storage.d.mts +214 -0
- package/dist/use-storage.mjs +415 -0
- package/dist/use-style-tag.d.mts +102 -0
- package/dist/use-style-tag.mjs +91 -0
- package/dist/use-supported.d.mts +23 -0
- package/dist/use-supported.mjs +26 -0
- package/dist/use-throttled.d.mts +1 -1
- package/dist/use-time-ago.d.mts +163 -0
- package/dist/use-time-ago.mjs +95 -0
- package/dist/use-timeout.d.mts +122 -0
- package/dist/use-timeout.mjs +65 -0
- package/dist/use-url-hash.d.mts +88 -0
- package/dist/use-url-hash.mjs +145 -0
- package/dist/use-url-search-params.d.mts +223 -0
- package/dist/use-url-search-params.mjs +295 -0
- package/dist/use-usb.d.mts +212 -0
- package/dist/use-usb.mjs +137 -0
- package/dist/use-user-activation.d.mts +83 -0
- package/dist/use-user-activation.mjs +113 -0
- package/dist/use-user-media.d.mts +194 -0
- package/dist/use-user-media.mjs +214 -0
- package/dist/use-v-model.d.mts +113 -0
- package/dist/use-v-model.mjs +40 -0
- package/dist/use-vibrate.d.mts +81 -0
- package/dist/use-vibrate.mjs +90 -0
- package/dist/use-view-transition.d.mts +106 -0
- package/dist/use-view-transition.mjs +101 -0
- package/dist/use-visual-viewport.d.mts +105 -0
- package/dist/use-visual-viewport.mjs +104 -0
- package/dist/use-wake-lock.d.mts +96 -0
- package/dist/use-wake-lock.mjs +106 -0
- package/dist/use-web-authn.d.mts +404 -0
- package/dist/use-web-authn.mjs +323 -0
- package/dist/use-web-locks.d.mts +180 -0
- package/dist/use-web-locks.mjs +136 -0
- package/dist/use-web-midi.d.mts +148 -0
- package/dist/use-web-midi.mjs +140 -0
- package/dist/use-web-vitals.d.mts +142 -0
- package/dist/use-web-vitals.mjs +248 -0
- package/dist/use-websocket.d.mts +218 -0
- package/dist/use-websocket.mjs +257 -0
- package/dist/use-worker-fn.d.mts +119 -0
- package/dist/use-worker-fn.mjs +162 -0
- package/dist/virtual-list.d.mts +105 -0
- package/dist/virtual-list.mjs +128 -0
- package/dist/watch-debounced.d.mts +84 -0
- package/dist/watch-debounced.mjs +84 -0
- package/dist/watch-ignorable.d.mts +47 -0
- package/dist/watch-ignorable.mjs +61 -0
- package/dist/watch-once.d.mts +29 -0
- package/dist/watch-once.mjs +10 -0
- package/dist/watch-pausable.d.mts +51 -0
- package/dist/watch-pausable.mjs +23 -0
- package/dist/watch-source.d.mts +29 -0
- package/dist/watch-source.mjs +1 -0
- package/dist/watch-throttled.d.mts +70 -0
- package/dist/watch-throttled.mjs +94 -0
- package/dist/whenever.d.mts +39 -0
- package/dist/whenever.mjs +41 -0
- package/dist/window-size.d.mts +87 -0
- package/dist/window-size.mjs +65 -0
- package/package.json +846 -5
- package/registry/files/abort-signal.ts +292 -0
- package/registry/files/active-element.ts +93 -0
- package/registry/files/animate.ts +322 -0
- package/registry/files/async-resource.ts +190 -0
- package/registry/files/battery.ts +166 -0
- package/registry/files/breakpoints.ts +166 -0
- package/registry/files/capability.ts +171 -0
- package/registry/files/color-mode.ts +274 -0
- package/registry/files/computed-async.ts +123 -0
- package/registry/files/computed-with-control.ts +80 -0
- package/registry/files/create-event-hook.ts +139 -0
- package/registry/files/create-global-state.ts +34 -0
- package/registry/files/create-injection-state.ts +75 -0
- package/registry/files/create-shared-composable.ts +74 -0
- package/registry/files/device-motion.ts +152 -0
- package/registry/files/device-orientation.ts +168 -0
- package/registry/files/device-pixel-ratio.ts +100 -0
- package/registry/files/disposal-scope.ts +201 -0
- package/registry/files/document-visibility.ts +152 -0
- package/registry/files/draggable.ts +273 -0
- package/registry/files/element-bounding.ts +175 -0
- package/registry/files/element-by-point.ts +149 -0
- package/registry/files/element-hover.ts +104 -0
- package/registry/files/element-ref.ts +58 -0
- package/registry/files/element-target.ts +99 -0
- package/registry/files/event-listener.ts +188 -0
- package/registry/files/focus.ts +181 -0
- package/registry/files/fps.ts +133 -0
- package/registry/files/geolocation.ts +214 -0
- package/registry/files/i18n.ts +524 -0
- package/registry/files/icu-message.ts +701 -0
- package/registry/files/idle.ts +176 -0
- package/registry/files/infinite-scroll.ts +135 -0
- package/registry/files/intersection-observer.ts +261 -0
- package/registry/files/locale.ts +148 -0
- package/registry/files/magic-keys.ts +298 -0
- package/registry/files/math.ts +175 -0
- package/registry/files/media-query.ts +102 -0
- package/registry/files/mouse-in-element.ts +107 -0
- package/registry/files/mouse.ts +167 -0
- package/registry/files/mutation-observer.ts +183 -0
- package/registry/files/network.ts +229 -0
- package/registry/files/on-click-outside.ts +178 -0
- package/registry/files/on-key-stroke.ts +135 -0
- package/registry/files/on-long-press.ts +188 -0
- package/registry/files/on-start-typing.ts +88 -0
- package/registry/files/page-leave.ts +57 -0
- package/registry/files/parent-element.ts +29 -0
- package/registry/files/pinch.ts +187 -0
- package/registry/files/pointer-lock.ts +232 -0
- package/registry/files/pointer.ts +153 -0
- package/registry/files/preferences.ts +98 -0
- package/registry/files/preferred-languages.ts +88 -0
- package/registry/files/reactify.ts +39 -0
- package/registry/files/ref-auto-reset.ts +102 -0
- package/registry/files/ref-debounced.ts +34 -0
- package/registry/files/ref-default.ts +35 -0
- package/registry/files/resize-observer.ts +220 -0
- package/registry/files/retry-async.ts +261 -0
- package/registry/files/retry-delay.ts +132 -0
- package/registry/files/scope.ts +21 -0
- package/registry/files/screen-orientation.ts +165 -0
- package/registry/files/scroll-lock.ts +80 -0
- package/registry/files/scroll.ts +338 -0
- package/registry/files/standard-schema.ts +163 -0
- package/registry/files/swipe.ts +321 -0
- package/registry/files/sync-ref.ts +166 -0
- package/registry/files/temporal.ts +182 -0
- package/registry/files/text-selection.ts +110 -0
- package/registry/files/textarea-autosize.ts +114 -0
- package/registry/files/timeout-scheduler.ts +16 -0
- package/registry/files/to-reactive.ts +44 -0
- package/registry/files/transition.ts +271 -0
- package/registry/files/until.ts +352 -0
- package/registry/files/use-array.ts +201 -0
- package/registry/files/use-async-queue.ts +278 -0
- package/registry/files/use-async-state.ts +139 -0
- package/registry/files/use-barcode-detector.ts +321 -0
- package/registry/files/use-bluetooth.ts +409 -0
- package/registry/files/use-broadcast-channel.ts +250 -0
- package/registry/files/use-builtin-ai.ts +674 -0
- package/registry/files/use-clipboard.ts +425 -0
- package/registry/files/use-compression-stream.ts +364 -0
- package/registry/files/use-confirm-dialog.ts +137 -0
- package/registry/files/use-contact-picker.ts +246 -0
- package/registry/files/use-cookie.ts +500 -0
- package/registry/files/use-countdown.ts +161 -0
- package/registry/files/use-counter.ts +147 -0
- package/registry/files/use-css-var.ts +191 -0
- package/registry/files/use-cycle-list.ts +136 -0
- package/registry/files/use-date-format.ts +281 -0
- package/registry/files/use-date-time-format.ts +113 -0
- package/registry/files/use-debounced.ts +163 -0
- package/registry/files/use-display-media.ts +89 -0
- package/registry/files/use-display-names.ts +122 -0
- package/registry/files/use-document-title.ts +196 -0
- package/registry/files/use-drop-zone.ts +287 -0
- package/registry/files/use-event-source.ts +470 -0
- package/registry/files/use-eye-dropper.ts +134 -0
- package/registry/files/use-favicon.ts +140 -0
- package/registry/files/use-fetch.ts +578 -0
- package/registry/files/use-field.ts +247 -0
- package/registry/files/use-file-dialog.ts +257 -0
- package/registry/files/use-file-system-access.ts +383 -0
- package/registry/files/use-form-field-props.ts +381 -0
- package/registry/files/use-form.ts +980 -0
- package/registry/files/use-fullscreen.ts +214 -0
- package/registry/files/use-gamepad.ts +463 -0
- package/registry/files/use-hid.ts +359 -0
- package/registry/files/use-history.ts +231 -0
- package/registry/files/use-id-generator.ts +61 -0
- package/registry/files/use-image.ts +253 -0
- package/registry/files/use-indexed-db.ts +508 -0
- package/registry/files/use-interval.ts +253 -0
- package/registry/files/use-list-format.ts +85 -0
- package/registry/files/use-machine.ts +171 -0
- package/registry/files/use-map.ts +145 -0
- package/registry/files/use-media-controls.ts +545 -0
- package/registry/files/use-memoize.ts +118 -0
- package/registry/files/use-mounted.ts +30 -0
- package/registry/files/use-navigation-api.ts +641 -0
- package/registry/files/use-notification.ts +285 -0
- package/registry/files/use-now.ts +194 -0
- package/registry/files/use-number-format.ts +120 -0
- package/registry/files/use-object-url.ts +87 -0
- package/registry/files/use-offset-pagination.ts +168 -0
- package/registry/files/use-payment-request.ts +465 -0
- package/registry/files/use-performance-observer.ts +469 -0
- package/registry/files/use-permission.ts +220 -0
- package/registry/files/use-plural-rules.ts +134 -0
- package/registry/files/use-previous.ts +62 -0
- package/registry/files/use-push-subscription.ts +352 -0
- package/registry/files/use-queue.ts +197 -0
- package/registry/files/use-raf-fn.ts +176 -0
- package/registry/files/use-relative-time-format.ts +201 -0
- package/registry/files/use-request-idle-callback.ts +278 -0
- package/registry/files/use-route-query.ts +300 -0
- package/registry/files/use-scheduler-post-task.ts +397 -0
- package/registry/files/use-screen-details.ts +393 -0
- package/registry/files/use-script-tag.ts +341 -0
- package/registry/files/use-segmenter.ts +147 -0
- package/registry/files/use-selection.ts +233 -0
- package/registry/files/use-serial.ts +404 -0
- package/registry/files/use-service-worker.ts +413 -0
- package/registry/files/use-set.ts +154 -0
- package/registry/files/use-share.ts +168 -0
- package/registry/files/use-sorted-locale.ts +130 -0
- package/registry/files/use-sorted.ts +49 -0
- package/registry/files/use-speech-recognition.ts +357 -0
- package/registry/files/use-speech-synthesis.ts +333 -0
- package/registry/files/use-stack.ts +164 -0
- package/registry/files/use-stepper.ts +166 -0
- package/registry/files/use-storage-estimate.ts +352 -0
- package/registry/files/use-storage.ts +635 -0
- package/registry/files/use-style-tag.ts +200 -0
- package/registry/files/use-supported.ts +26 -0
- package/registry/files/use-throttled.ts +215 -0
- package/registry/files/use-time-ago.ts +276 -0
- package/registry/files/use-timeout.ts +218 -0
- package/registry/files/use-toggle.ts +54 -0
- package/registry/files/use-url-hash.ts +280 -0
- package/registry/files/use-url-search-params.ts +497 -0
- package/registry/files/use-usb.ts +395 -0
- package/registry/files/use-user-activation.ts +215 -0
- package/registry/files/use-user-media.ts +422 -0
- package/registry/files/use-v-model.ts +210 -0
- package/registry/files/use-vibrate.ts +174 -0
- package/registry/files/use-view-transition.ts +229 -0
- package/registry/files/use-visual-viewport.ts +228 -0
- package/registry/files/use-wake-lock.ts +206 -0
- package/registry/files/use-web-authn.ts +793 -0
- package/registry/files/use-web-locks.ts +363 -0
- package/registry/files/use-web-midi.ts +306 -0
- package/registry/files/use-web-vitals.ts +409 -0
- package/registry/files/use-websocket.ts +553 -0
- package/registry/files/use-worker-fn.ts +306 -0
- package/registry/files/virtual-list.ts +230 -0
- package/registry/files/watch-debounced.ts +206 -0
- package/registry/files/watch-ignorable.ts +128 -0
- package/registry/files/watch-once.ts +46 -0
- package/registry/files/watch-pausable.ts +93 -0
- package/registry/files/watch-source.ts +51 -0
- package/registry/files/watch-throttled.ts +201 -0
- package/registry/files/whenever.ts +70 -0
- package/registry/files/window-size.ts +151 -0
- package/registry/registry.json +5792 -0
- package/dist/catalog-D2AL3xYl.d.mts +0 -523
- package/dist/catalog-D5SYCsgW.mjs +0 -549
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
import { hasInjectionContext, readonly, ref, shallowRef, toValue, watch } from "vue";
|
|
2
|
+
import type { MaybeRefOrGetter, Ref, ShallowRef } from "vue";
|
|
3
|
+
|
|
4
|
+
import { tryOnScopeDispose } from "./scope.ts";
|
|
5
|
+
|
|
6
|
+
/** Minimal `window` surface used by {@link useUrlHash}. */
|
|
7
|
+
export interface UrlHashHost extends Pick<EventTarget, "addEventListener" | "removeEventListener"> {
|
|
8
|
+
/** Current location; only the URL parts are read. */
|
|
9
|
+
readonly location: {
|
|
10
|
+
/** Fragment including the leading `#`, or `""`. */
|
|
11
|
+
readonly hash: string;
|
|
12
|
+
/** Path component. */
|
|
13
|
+
readonly pathname: string;
|
|
14
|
+
/** Query component including the leading `?`, or `""`. */
|
|
15
|
+
readonly search: string;
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
/** Session history used to write the fragment without scrolling. */
|
|
19
|
+
readonly history: {
|
|
20
|
+
/** Current history entry state, preserved when replacing. */
|
|
21
|
+
readonly state: unknown;
|
|
22
|
+
/** Replace the current entry's URL. */
|
|
23
|
+
readonly replaceState: (data: unknown, unused: string, url: string) => void;
|
|
24
|
+
/** Push a new entry with the given URL. */
|
|
25
|
+
readonly pushState: (data: unknown, unused: string, url: string) => void;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/** How a changed hash is written to session history. */
|
|
30
|
+
export type UrlHistoryMode = "replace" | "push";
|
|
31
|
+
|
|
32
|
+
/** Options shared by both {@link useUrlHash} overloads. */
|
|
33
|
+
export interface UseUrlHashOptions {
|
|
34
|
+
/**
|
|
35
|
+
* Browser host. `null`/`undefined` keeps the default (server rendering).
|
|
36
|
+
*
|
|
37
|
+
* @default window when a browser window exists
|
|
38
|
+
*/
|
|
39
|
+
readonly host?: MaybeRefOrGetter<UrlHashHost | null | undefined>;
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* History write mode for changes made through `state`.
|
|
43
|
+
*
|
|
44
|
+
* @default "replace"
|
|
45
|
+
*/
|
|
46
|
+
readonly mode?: UrlHistoryMode;
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Raw hash (without `#`) to use while no host is attached. Browsers never
|
|
50
|
+
* send the fragment to servers, so pass it only when it is known (for
|
|
51
|
+
* example from a client-side redirect).
|
|
52
|
+
*
|
|
53
|
+
* @default undefined (the default value is used)
|
|
54
|
+
*/
|
|
55
|
+
readonly ssrHash?: MaybeRefOrGetter<string | undefined>;
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* When the browser hash is first read. `"post-flush"` keeps the server
|
|
59
|
+
* value through hydration and reads the real hash after mounting.
|
|
60
|
+
*
|
|
61
|
+
* @default "post-flush" inside a component, "sync" otherwise
|
|
62
|
+
*/
|
|
63
|
+
readonly initialRead?: "sync" | "post-flush";
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/** Options for a typed {@link useUrlHash} with an explicit codec. */
|
|
67
|
+
export interface UseTypedUrlHashOptions<Value> extends UseUrlHashOptions {
|
|
68
|
+
/** Decode the raw (percent-decoded, `#`-less) hash. Throwing selects `default`. */
|
|
69
|
+
readonly parse: (raw: string) => Value;
|
|
70
|
+
|
|
71
|
+
/** Encode a value to a raw hash. An empty string removes the fragment. */
|
|
72
|
+
readonly serialize: (value: Value) => string;
|
|
73
|
+
|
|
74
|
+
/** Value used for an empty or unparsable hash. */
|
|
75
|
+
readonly default: Value;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/** Reactive state and controls returned by {@link useUrlHash}. */
|
|
79
|
+
export interface UrlHashControls<Value> {
|
|
80
|
+
/** Writable hash value; assignments update the URL. */
|
|
81
|
+
readonly state: Ref<Value>;
|
|
82
|
+
|
|
83
|
+
/** Whether a browser host is attached. */
|
|
84
|
+
readonly supported: Readonly<Ref<boolean>>;
|
|
85
|
+
|
|
86
|
+
/** Most recent parse failure, cleared by the next successful read. */
|
|
87
|
+
readonly error: Readonly<ShallowRef<unknown>>;
|
|
88
|
+
|
|
89
|
+
/** Re-read the current location hash. */
|
|
90
|
+
readonly refresh: () => void;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
function browserHost(): UrlHashHost | undefined {
|
|
94
|
+
return typeof window !== "undefined" ? window : undefined;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
function decodeFragment(hash: string): string {
|
|
98
|
+
const raw = hash.startsWith("#") ? hash.slice(1) : hash;
|
|
99
|
+
try {
|
|
100
|
+
return decodeURIComponent(raw);
|
|
101
|
+
} catch {
|
|
102
|
+
return raw;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
function encodeFragment(raw: string): string {
|
|
107
|
+
return encodeURI(raw).replaceAll("#", "%23");
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
interface HashCodec<Value> {
|
|
111
|
+
readonly parse: (raw: string) => Value;
|
|
112
|
+
readonly serialize: (value: Value) => string;
|
|
113
|
+
readonly default: Value;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* Track the URL fragment as a typed value decoded by `parse`.
|
|
118
|
+
*
|
|
119
|
+
* @typeParam Value Hash value type, inferred from the codec.
|
|
120
|
+
* @param options Codec, host, history mode, and server fallback.
|
|
121
|
+
* @returns The typed hash value and its controls.
|
|
122
|
+
*/
|
|
123
|
+
export function useUrlHash<Value>(options: UseTypedUrlHashOptions<Value>): UrlHashControls<Value>;
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Track the URL fragment as a plain string (without the leading `#`).
|
|
127
|
+
*
|
|
128
|
+
* @param options Host, history mode, and server fallback.
|
|
129
|
+
* @default options {}
|
|
130
|
+
* @returns The hash string and its controls.
|
|
131
|
+
*/
|
|
132
|
+
export function useUrlHash(options?: UseUrlHashOptions): UrlHashControls<string>;
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* Synchronize a typed value with the URL fragment (`location.hash`).
|
|
136
|
+
*
|
|
137
|
+
* Reading follows `hashchange` and `popstate`. Writing `state` updates the
|
|
138
|
+
* fragment through `history.replaceState` (or `pushState` with
|
|
139
|
+
* `mode: "push"`), which neither scrolls to an anchor nor fires
|
|
140
|
+
* `hashchange`; an empty serialized value removes the fragment. Values are
|
|
141
|
+
* percent-decoded on read and minimally encoded on write.
|
|
142
|
+
*
|
|
143
|
+
* Server rendering: browsers never send the fragment, so without a host the
|
|
144
|
+
* value is `ssrHash` (when given) or the default, and no global is read.
|
|
145
|
+
* Inside a component the browser hash is first read after mounting
|
|
146
|
+
* (`initialRead` defaults to `"post-flush"` there), so hydration never
|
|
147
|
+
* mismatches. Listeners are removed with the owning reactive scope.
|
|
148
|
+
*
|
|
149
|
+
* @example
|
|
150
|
+
* ```ts
|
|
151
|
+
* const { state: tab } = useUrlHash({
|
|
152
|
+
* parse: (raw) => (raw === "settings" ? "settings" : "profile"),
|
|
153
|
+
* serialize: (value) => value,
|
|
154
|
+
* default: "profile" as "profile" | "settings",
|
|
155
|
+
* });
|
|
156
|
+
* ```
|
|
157
|
+
*
|
|
158
|
+
* @param options Codec, host, history mode, and server fallback.
|
|
159
|
+
* @default options {}
|
|
160
|
+
* @returns The synchronized value and its controls.
|
|
161
|
+
*/
|
|
162
|
+
export function useUrlHash<Value>(
|
|
163
|
+
options: UseUrlHashOptions | UseTypedUrlHashOptions<Value> = {},
|
|
164
|
+
): UrlHashControls<Value> | UrlHashControls<string> {
|
|
165
|
+
if ("parse" in options) {
|
|
166
|
+
return createUrlHash<Value>(
|
|
167
|
+
{ parse: options.parse, serialize: options.serialize, default: options.default },
|
|
168
|
+
options,
|
|
169
|
+
);
|
|
170
|
+
}
|
|
171
|
+
return createUrlHash<string>({ parse: (raw) => raw, serialize: String, default: "" }, options);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
function createUrlHash<Value>(
|
|
175
|
+
codec: HashCodec<Value>,
|
|
176
|
+
options: UseUrlHashOptions,
|
|
177
|
+
): UrlHashControls<Value> {
|
|
178
|
+
const supported = ref(false);
|
|
179
|
+
const error = shallowRef<unknown>(undefined);
|
|
180
|
+
let ready = false;
|
|
181
|
+
let syncedRaw: string | undefined;
|
|
182
|
+
|
|
183
|
+
const resolveHost = (): UrlHashHost | undefined =>
|
|
184
|
+
options.host === undefined ? browserHost() : (toValue(options.host) ?? undefined);
|
|
185
|
+
|
|
186
|
+
const parse = (raw: string): Value => {
|
|
187
|
+
if (raw === "") return codec.default;
|
|
188
|
+
try {
|
|
189
|
+
const value = codec.parse(raw);
|
|
190
|
+
error.value = undefined;
|
|
191
|
+
return value;
|
|
192
|
+
} catch (cause) {
|
|
193
|
+
error.value = cause;
|
|
194
|
+
return codec.default;
|
|
195
|
+
}
|
|
196
|
+
};
|
|
197
|
+
|
|
198
|
+
const ssrRaw = toValue(options.ssrHash);
|
|
199
|
+
const state = shallowRef<Value>(ssrRaw === undefined ? codec.default : parse(ssrRaw));
|
|
200
|
+
|
|
201
|
+
const assign = (raw: string): void => {
|
|
202
|
+
syncedRaw = raw;
|
|
203
|
+
state.value = parse(raw);
|
|
204
|
+
};
|
|
205
|
+
|
|
206
|
+
const refresh = (): void => {
|
|
207
|
+
const host = resolveHost();
|
|
208
|
+
supported.value = host !== undefined;
|
|
209
|
+
if (host === undefined) {
|
|
210
|
+
const fallback = toValue(options.ssrHash);
|
|
211
|
+
assign(fallback ?? "");
|
|
212
|
+
return;
|
|
213
|
+
}
|
|
214
|
+
assign(decodeFragment(host.location.hash));
|
|
215
|
+
};
|
|
216
|
+
|
|
217
|
+
const onNavigate = (): void => {
|
|
218
|
+
if (ready) refresh();
|
|
219
|
+
};
|
|
220
|
+
|
|
221
|
+
const stopHost = watch(
|
|
222
|
+
resolveHost,
|
|
223
|
+
(host, _previous, onCleanup) => {
|
|
224
|
+
if (ready) refresh();
|
|
225
|
+
if (host === undefined) return;
|
|
226
|
+
host.addEventListener("hashchange", onNavigate);
|
|
227
|
+
host.addEventListener("popstate", onNavigate);
|
|
228
|
+
onCleanup(() => {
|
|
229
|
+
host.removeEventListener("hashchange", onNavigate);
|
|
230
|
+
host.removeEventListener("popstate", onNavigate);
|
|
231
|
+
});
|
|
232
|
+
},
|
|
233
|
+
{ immediate: true, flush: "sync" },
|
|
234
|
+
);
|
|
235
|
+
|
|
236
|
+
const stopWrite = watch(
|
|
237
|
+
state,
|
|
238
|
+
(value) => {
|
|
239
|
+
const host = resolveHost();
|
|
240
|
+
if (!ready || host === undefined) return;
|
|
241
|
+
const raw = codec.serialize(value);
|
|
242
|
+
if (raw === syncedRaw) return;
|
|
243
|
+
syncedRaw = raw;
|
|
244
|
+
const { pathname, search } = host.location;
|
|
245
|
+
const url = `${pathname}${search}${raw === "" ? "" : `#${encodeFragment(raw)}`}`;
|
|
246
|
+
if ((options.mode ?? "replace") === "push") host.history.pushState(null, "", url);
|
|
247
|
+
else host.history.replaceState(host.history.state, "", url);
|
|
248
|
+
},
|
|
249
|
+
{ flush: "sync" },
|
|
250
|
+
);
|
|
251
|
+
|
|
252
|
+
const start = (): void => {
|
|
253
|
+
ready = true;
|
|
254
|
+
refresh();
|
|
255
|
+
};
|
|
256
|
+
let stopDeferred: (() => void) | undefined;
|
|
257
|
+
if ((options.initialRead ?? (hasInjectionContext() ? "post-flush" : "sync")) === "sync") {
|
|
258
|
+
start();
|
|
259
|
+
} else {
|
|
260
|
+
const trigger = ref(0);
|
|
261
|
+
stopDeferred = watch(
|
|
262
|
+
trigger,
|
|
263
|
+
() => {
|
|
264
|
+
stopDeferred?.();
|
|
265
|
+
start();
|
|
266
|
+
},
|
|
267
|
+
{ flush: "post" },
|
|
268
|
+
);
|
|
269
|
+
trigger.value += 1;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
tryOnScopeDispose(() => {
|
|
273
|
+
ready = false;
|
|
274
|
+
stopDeferred?.();
|
|
275
|
+
stopHost();
|
|
276
|
+
stopWrite();
|
|
277
|
+
});
|
|
278
|
+
|
|
279
|
+
return { state, supported: readonly(supported), error, refresh };
|
|
280
|
+
}
|