@vizejs/composable 0.426.2 → 0.427.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,321 @@
|
|
|
1
|
+
import {
|
|
2
|
+
computed,
|
|
3
|
+
hasInjectionContext,
|
|
4
|
+
readonly,
|
|
5
|
+
shallowRef,
|
|
6
|
+
toValue,
|
|
7
|
+
unref,
|
|
8
|
+
watchPostEffect,
|
|
9
|
+
} from "vue";
|
|
10
|
+
import type { ComputedRef, MaybeRef, MaybeRefOrGetter, ShallowRef } from "vue";
|
|
11
|
+
|
|
12
|
+
import { useRafFn } from "./use-raf-fn.ts";
|
|
13
|
+
import type { FrameScheduler } from "./use-raf-fn.ts";
|
|
14
|
+
|
|
15
|
+
/** Barcode symbology supported by the Barcode Detection API. */
|
|
16
|
+
export type BarcodeFormat =
|
|
17
|
+
| "aztec"
|
|
18
|
+
| "code_128"
|
|
19
|
+
| "code_39"
|
|
20
|
+
| "code_93"
|
|
21
|
+
| "codabar"
|
|
22
|
+
| "data_matrix"
|
|
23
|
+
| "ean_13"
|
|
24
|
+
| "ean_8"
|
|
25
|
+
| "itf"
|
|
26
|
+
| "pdf417"
|
|
27
|
+
| "qr_code"
|
|
28
|
+
| "upc_a"
|
|
29
|
+
| "upc_e"
|
|
30
|
+
| "unknown";
|
|
31
|
+
|
|
32
|
+
/** Axis-aligned bounds of a detected barcode, in source pixels. */
|
|
33
|
+
export interface BarcodeBoundingBox {
|
|
34
|
+
/** Left edge. */
|
|
35
|
+
readonly x: number;
|
|
36
|
+
/** Top edge. */
|
|
37
|
+
readonly y: number;
|
|
38
|
+
/** Width. */
|
|
39
|
+
readonly width: number;
|
|
40
|
+
/** Height. */
|
|
41
|
+
readonly height: number;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/** Corner of a detected barcode, in source pixels. */
|
|
45
|
+
export interface BarcodePoint {
|
|
46
|
+
/** Horizontal coordinate. */
|
|
47
|
+
readonly x: number;
|
|
48
|
+
/** Vertical coordinate. */
|
|
49
|
+
readonly y: number;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/** Normalized detection result. */
|
|
53
|
+
export interface DetectedBarcode {
|
|
54
|
+
/** Decoded text. */
|
|
55
|
+
readonly rawValue: string;
|
|
56
|
+
/** Symbology (`"unknown"` for formats this module does not know). */
|
|
57
|
+
readonly format: BarcodeFormat;
|
|
58
|
+
/** Bounding box. */
|
|
59
|
+
readonly boundingBox: BarcodeBoundingBox;
|
|
60
|
+
/** Corner points, clockwise from top-left. */
|
|
61
|
+
readonly cornerPoints: readonly BarcodePoint[];
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/** Raw detection result produced by a host detector. */
|
|
65
|
+
export interface DetectedBarcodeLike {
|
|
66
|
+
/** Decoded text. */
|
|
67
|
+
readonly rawValue: string;
|
|
68
|
+
/** Symbology name. */
|
|
69
|
+
readonly format: string;
|
|
70
|
+
/** Bounding box. */
|
|
71
|
+
readonly boundingBox: BarcodeBoundingBox;
|
|
72
|
+
/** Corner points. */
|
|
73
|
+
readonly cornerPoints: readonly BarcodePoint[];
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/** Minimal `BarcodeDetector` instance. */
|
|
77
|
+
export interface BarcodeDetectorLike {
|
|
78
|
+
/** Detect barcodes in an image source. */
|
|
79
|
+
detect(source: ImageBitmapSource): Promise<readonly DetectedBarcodeLike[]>;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/** Minimal `BarcodeDetector` constructor. */
|
|
83
|
+
export interface BarcodeDetectorHost {
|
|
84
|
+
/** Create a detector restricted to `formats`. */
|
|
85
|
+
new (options?: { formats?: BarcodeFormat[] }): BarcodeDetectorLike;
|
|
86
|
+
/** Formats the platform can detect. */
|
|
87
|
+
getSupportedFormats?(): Promise<readonly string[]>;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/** Options for {@link useBarcodeDetector}. */
|
|
91
|
+
export interface UseBarcodeDetectorOptions {
|
|
92
|
+
/**
|
|
93
|
+
* `BarcodeDetector` constructor for alternate runtimes and tests. A ref
|
|
94
|
+
* (not a getter) because the host is a constructor function.
|
|
95
|
+
*
|
|
96
|
+
* @default window.BarcodeDetector when it exists
|
|
97
|
+
*/
|
|
98
|
+
readonly BarcodeDetector?: MaybeRef<BarcodeDetectorHost | null | undefined>;
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Formats to detect. Reactive; a new detector is created when it changes.
|
|
102
|
+
*
|
|
103
|
+
* @default undefined (every supported format)
|
|
104
|
+
*/
|
|
105
|
+
readonly formats?: MaybeRefOrGetter<readonly BarcodeFormat[] | undefined>;
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Source scanned continuously (for example a camera `<video>`). Video
|
|
109
|
+
* frames are skipped until `readyState >= 2`.
|
|
110
|
+
*
|
|
111
|
+
* @default undefined
|
|
112
|
+
*/
|
|
113
|
+
readonly source?: MaybeRefOrGetter<ImageBitmapSource | null | undefined>;
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Start continuous detection immediately.
|
|
117
|
+
*
|
|
118
|
+
* @default true when `source` is set
|
|
119
|
+
*/
|
|
120
|
+
readonly immediate?: boolean;
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* Maximum continuous detections per second. A frame is also skipped while
|
|
124
|
+
* the previous detection is still running.
|
|
125
|
+
*
|
|
126
|
+
* @default 10
|
|
127
|
+
*/
|
|
128
|
+
readonly fpsLimit?: MaybeRefOrGetter<number | undefined>;
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* Frame host for continuous detection. An injected scheduler also drives
|
|
132
|
+
* frames without a browser `window` (native or offscreen hosts, tests).
|
|
133
|
+
*
|
|
134
|
+
* @default globalThis animation-frame functions when available
|
|
135
|
+
*/
|
|
136
|
+
readonly scheduler?: FrameScheduler;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
/** Reactive state and actions returned by {@link useBarcodeDetector}. */
|
|
140
|
+
export interface BarcodeDetectorControls {
|
|
141
|
+
/** Whether the Barcode Detection API is available. */
|
|
142
|
+
readonly supported: ComputedRef<boolean>;
|
|
143
|
+
/** Barcodes found by the most recent successful detection. */
|
|
144
|
+
readonly barcodes: Readonly<ShallowRef<readonly DetectedBarcode[]>>;
|
|
145
|
+
/** Most recent detection failure, cleared on success. */
|
|
146
|
+
readonly error: Readonly<ShallowRef<unknown>>;
|
|
147
|
+
/** Whether continuous detection is running. */
|
|
148
|
+
readonly isActive: Readonly<ShallowRef<boolean>>;
|
|
149
|
+
/**
|
|
150
|
+
* Detect barcodes once.
|
|
151
|
+
*
|
|
152
|
+
* @param source Image, video, canvas, bitmap, blob, or image data.
|
|
153
|
+
* @returns Detected barcodes; empty when unsupported or failing (see `error`).
|
|
154
|
+
*/
|
|
155
|
+
readonly detect: (source: ImageBitmapSource) => Promise<readonly DetectedBarcode[]>;
|
|
156
|
+
/**
|
|
157
|
+
* Formats the platform supports.
|
|
158
|
+
*
|
|
159
|
+
* @returns Known supported formats; empty when unsupported or failing.
|
|
160
|
+
*/
|
|
161
|
+
readonly getSupportedFormats: () => Promise<BarcodeFormat[]>;
|
|
162
|
+
/** Start continuous detection of `source`. */
|
|
163
|
+
readonly start: () => void;
|
|
164
|
+
/** Stop continuous detection. Idempotent. */
|
|
165
|
+
readonly stop: () => void;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
const knownFormats: readonly string[] = [
|
|
169
|
+
"aztec",
|
|
170
|
+
"code_128",
|
|
171
|
+
"code_39",
|
|
172
|
+
"code_93",
|
|
173
|
+
"codabar",
|
|
174
|
+
"data_matrix",
|
|
175
|
+
"ean_13",
|
|
176
|
+
"ean_8",
|
|
177
|
+
"itf",
|
|
178
|
+
"pdf417",
|
|
179
|
+
"qr_code",
|
|
180
|
+
"upc_a",
|
|
181
|
+
"upc_e",
|
|
182
|
+
"unknown",
|
|
183
|
+
];
|
|
184
|
+
|
|
185
|
+
function isBarcodeFormat(value: string): value is BarcodeFormat {
|
|
186
|
+
return knownFormats.includes(value);
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
function isDetectorHost(candidate: unknown): candidate is BarcodeDetectorHost {
|
|
190
|
+
return typeof candidate === "function";
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
function browserDetector(): BarcodeDetectorHost | undefined {
|
|
194
|
+
if (typeof window === "undefined") return undefined;
|
|
195
|
+
const candidate: unknown = Reflect.get(window, "BarcodeDetector");
|
|
196
|
+
return isDetectorHost(candidate) ? candidate : undefined;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
function isFrameReady(source: ImageBitmapSource): boolean {
|
|
200
|
+
return (
|
|
201
|
+
!("readyState" in source) || typeof source.readyState !== "number" || source.readyState >= 2
|
|
202
|
+
);
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
function normalize(barcode: DetectedBarcodeLike): DetectedBarcode {
|
|
206
|
+
const { x, y, width, height } = barcode.boundingBox;
|
|
207
|
+
return {
|
|
208
|
+
rawValue: barcode.rawValue,
|
|
209
|
+
format: isBarcodeFormat(barcode.format) ? barcode.format : "unknown",
|
|
210
|
+
boundingBox: { x, y, width, height },
|
|
211
|
+
cornerPoints: barcode.cornerPoints.map((point) => ({ x: point.x, y: point.y })),
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
/**
|
|
216
|
+
* Detect barcodes and QR codes with the Barcode Detection API.
|
|
217
|
+
*
|
|
218
|
+
* `detect(source)` scans once; with a `source` (typically a camera video),
|
|
219
|
+
* detection also runs on animation frames through {@link useRafFn}, throttled
|
|
220
|
+
* by `fpsLimit` and never overlapping. Results are normalized into plain
|
|
221
|
+
* {@link DetectedBarcode} objects. The frame loop stops with the owning
|
|
222
|
+
* reactive scope; outside a scope call `stop()`.
|
|
223
|
+
*
|
|
224
|
+
* Server rendering: nothing is constructed or scheduled, `supported` is
|
|
225
|
+
* false and `barcodes` is empty.
|
|
226
|
+
* Inside a component `supported` turns true only after mounting, so
|
|
227
|
+
* hydration renders this server state first.
|
|
228
|
+
*
|
|
229
|
+
* @example
|
|
230
|
+
* ```ts
|
|
231
|
+
* const video = useTemplateRef<HTMLVideoElement>("video");
|
|
232
|
+
* const { barcodes } = useBarcodeDetector({ source: video, formats: ["qr_code"] });
|
|
233
|
+
* ```
|
|
234
|
+
*
|
|
235
|
+
* @param options Constructor host, formats, and continuous-scan policy.
|
|
236
|
+
* @default options {}
|
|
237
|
+
* @throws `RangeError` tagged `VIZE_COMPOSE_RAF_INVALID_FPS_LIMIT` for an invalid `fpsLimit`.
|
|
238
|
+
* @returns Detector state and actions.
|
|
239
|
+
*/
|
|
240
|
+
export function useBarcodeDetector(
|
|
241
|
+
options: UseBarcodeDetectorOptions = {},
|
|
242
|
+
): BarcodeDetectorControls {
|
|
243
|
+
const barcodes = shallowRef<readonly DetectedBarcode[]>([]);
|
|
244
|
+
const error = shallowRef<unknown>(undefined);
|
|
245
|
+
let cached: { host: BarcodeDetectorHost; key: string; detector: BarcodeDetectorLike } | undefined;
|
|
246
|
+
let busy = false;
|
|
247
|
+
|
|
248
|
+
// Inside a component the host is resolved only after mounting, so a
|
|
249
|
+
// hydrating client renders the server's unsupported state first. Outside
|
|
250
|
+
// components it resolves synchronously.
|
|
251
|
+
const hydrated = shallowRef(!hasInjectionContext());
|
|
252
|
+
if (!hydrated.value) {
|
|
253
|
+
watchPostEffect(() => {
|
|
254
|
+
hydrated.value = true;
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
const resolveHost = (): BarcodeDetectorHost | undefined =>
|
|
259
|
+
options.BarcodeDetector === undefined
|
|
260
|
+
? browserDetector()
|
|
261
|
+
: (unref(options.BarcodeDetector) ?? undefined);
|
|
262
|
+
|
|
263
|
+
const resolveDetector = (Host: BarcodeDetectorHost): BarcodeDetectorLike => {
|
|
264
|
+
const formats = toValue(options.formats);
|
|
265
|
+
const key = formats?.join() ?? "*";
|
|
266
|
+
if (cached?.host !== Host || cached.key !== key) {
|
|
267
|
+
const detector = new Host(formats ? { formats: [...formats] } : undefined);
|
|
268
|
+
cached = { host: Host, key, detector };
|
|
269
|
+
}
|
|
270
|
+
return cached.detector;
|
|
271
|
+
};
|
|
272
|
+
|
|
273
|
+
const detect = async (source: ImageBitmapSource): Promise<readonly DetectedBarcode[]> => {
|
|
274
|
+
const host = resolveHost();
|
|
275
|
+
if (!host) return [];
|
|
276
|
+
try {
|
|
277
|
+
const found = (await resolveDetector(host).detect(source)).map(normalize);
|
|
278
|
+
barcodes.value = found;
|
|
279
|
+
error.value = undefined;
|
|
280
|
+
return found;
|
|
281
|
+
} catch (cause) {
|
|
282
|
+
error.value = cause;
|
|
283
|
+
return [];
|
|
284
|
+
}
|
|
285
|
+
};
|
|
286
|
+
|
|
287
|
+
const getSupportedFormats = async (): Promise<BarcodeFormat[]> => {
|
|
288
|
+
try {
|
|
289
|
+
return [...((await resolveHost()?.getSupportedFormats?.()) ?? [])].filter(isBarcodeFormat);
|
|
290
|
+
} catch {
|
|
291
|
+
return [];
|
|
292
|
+
}
|
|
293
|
+
};
|
|
294
|
+
|
|
295
|
+
const loop = useRafFn(
|
|
296
|
+
() => {
|
|
297
|
+
const source = toValue(options.source);
|
|
298
|
+
if (busy || !source || !isFrameReady(source)) return;
|
|
299
|
+
busy = true;
|
|
300
|
+
void detect(source).finally(() => {
|
|
301
|
+
busy = false;
|
|
302
|
+
});
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
immediate: options.immediate ?? options.source !== undefined,
|
|
306
|
+
fpsLimit: () => toValue(options.fpsLimit) ?? 10,
|
|
307
|
+
...(options.scheduler ? { scheduler: options.scheduler, runOnServer: true } : {}),
|
|
308
|
+
},
|
|
309
|
+
);
|
|
310
|
+
|
|
311
|
+
return {
|
|
312
|
+
supported: computed(() => hydrated.value && resolveHost() !== undefined),
|
|
313
|
+
barcodes: readonly(barcodes),
|
|
314
|
+
error: readonly(error),
|
|
315
|
+
isActive: loop.isActive,
|
|
316
|
+
detect,
|
|
317
|
+
getSupportedFormats,
|
|
318
|
+
start: loop.resume,
|
|
319
|
+
stop: loop.pause,
|
|
320
|
+
};
|
|
321
|
+
}
|