@vizejs/composable 0.426.3 → 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.
Files changed (544) hide show
  1. package/dist/abort-signal.d.mts +1 -1
  2. package/dist/active-element.d.mts +37 -0
  3. package/dist/active-element.mjs +56 -0
  4. package/dist/animate.d.mts +114 -0
  5. package/dist/animate.mjs +157 -0
  6. package/dist/battery.d.mts +61 -0
  7. package/dist/battery.mjs +90 -0
  8. package/dist/breakpoints.d.mts +82 -0
  9. package/dist/breakpoints.mjs +91 -0
  10. package/dist/catalog-BeTXFKxF.d.mts +4188 -0
  11. package/dist/catalog-r4Z5nptX.mjs +5144 -0
  12. package/dist/catalog.d.mts +1 -1
  13. package/dist/catalog.mjs +1 -1
  14. package/dist/color-mode.d.mts +131 -0
  15. package/dist/color-mode.mjs +133 -0
  16. package/dist/computed-async.d.mts +63 -0
  17. package/dist/computed-async.mjs +43 -0
  18. package/dist/computed-with-control.d.mts +44 -0
  19. package/dist/computed-with-control.mjs +54 -0
  20. package/dist/create-event-hook.d.mts +77 -0
  21. package/dist/create-event-hook.mjs +66 -0
  22. package/dist/create-global-state.d.mts +24 -0
  23. package/dist/create-global-state.mjs +34 -0
  24. package/dist/create-injection-state.d.mts +51 -0
  25. package/dist/create-injection-state.mjs +19 -0
  26. package/dist/create-shared-composable.d.mts +38 -0
  27. package/dist/create-shared-composable.mjs +54 -0
  28. package/dist/device-motion.d.mts +71 -0
  29. package/dist/device-motion.mjs +75 -0
  30. package/dist/device-orientation.d.mts +82 -0
  31. package/dist/device-orientation.mjs +86 -0
  32. package/dist/device-pixel-ratio.d.mts +45 -0
  33. package/dist/device-pixel-ratio.mjs +50 -0
  34. package/dist/document-visibility.mjs +6 -2
  35. package/dist/draggable.d.mts +121 -0
  36. package/dist/draggable.mjs +153 -0
  37. package/dist/element-bounding.d.mts +87 -0
  38. package/dist/element-bounding.mjs +95 -0
  39. package/dist/element-by-point.d.mts +70 -0
  40. package/dist/element-by-point.mjs +69 -0
  41. package/dist/element-hover.d.mts +42 -0
  42. package/dist/element-hover.mjs +70 -0
  43. package/dist/element-ref.d.mts +34 -0
  44. package/dist/element-ref.mjs +23 -0
  45. package/dist/element-target-Crpxl4D9.d.mts +60 -0
  46. package/dist/element-target.d.mts +2 -0
  47. package/dist/element-target.mjs +58 -0
  48. package/dist/event-listener.mjs +7 -3
  49. package/dist/focus.d.mts +69 -0
  50. package/dist/focus.mjs +124 -0
  51. package/dist/fps.d.mts +59 -0
  52. package/dist/fps.mjs +64 -0
  53. package/dist/geolocation.d.mts +98 -0
  54. package/dist/geolocation.mjs +86 -0
  55. package/dist/i18n.d.mts +237 -0
  56. package/dist/i18n.mjs +215 -0
  57. package/dist/icu-message.d.mts +235 -0
  58. package/dist/icu-message.mjs +343 -0
  59. package/dist/idle.d.mts +79 -0
  60. package/dist/idle.mjs +90 -0
  61. package/dist/index.d.mts +172 -6
  62. package/dist/index.mjs +173 -7
  63. package/dist/infinite-scroll.d.mts +56 -0
  64. package/dist/infinite-scroll.mjs +72 -0
  65. package/dist/intersection-observer.d.mts +122 -0
  66. package/dist/intersection-observer.mjs +117 -0
  67. package/dist/magic-keys.d.mts +121 -0
  68. package/dist/magic-keys.mjs +163 -0
  69. package/dist/math.d.mts +96 -0
  70. package/dist/math.mjs +84 -0
  71. package/dist/media-query.d.mts +3 -1
  72. package/dist/media-query.mjs +5 -3
  73. package/dist/mouse-in-element.d.mts +49 -0
  74. package/dist/mouse-in-element.mjs +66 -0
  75. package/dist/mouse.d.mts +77 -0
  76. package/dist/mouse.mjs +100 -0
  77. package/dist/mutation-observer.d.mts +98 -0
  78. package/dist/mutation-observer.mjs +69 -0
  79. package/dist/network.d.mts +96 -0
  80. package/dist/network.mjs +117 -0
  81. package/dist/on-click-outside.d.mts +69 -0
  82. package/dist/on-click-outside.mjs +115 -0
  83. package/dist/on-key-stroke.d.mts +71 -0
  84. package/dist/on-key-stroke.mjs +79 -0
  85. package/dist/on-long-press.d.mts +82 -0
  86. package/dist/on-long-press.mjs +105 -0
  87. package/dist/on-start-typing.d.mts +44 -0
  88. package/dist/on-start-typing.mjs +61 -0
  89. package/dist/page-leave.d.mts +26 -0
  90. package/dist/page-leave.mjs +40 -0
  91. package/dist/parent-element.d.mts +16 -0
  92. package/dist/parent-element.mjs +27 -0
  93. package/dist/pinch.d.mts +73 -0
  94. package/dist/pinch.mjs +138 -0
  95. package/dist/pointer-lock.d.mts +79 -0
  96. package/dist/pointer-lock.mjs +126 -0
  97. package/dist/pointer.d.mts +78 -0
  98. package/dist/pointer.mjs +95 -0
  99. package/dist/preferences.d.mts +55 -0
  100. package/dist/preferences.mjs +63 -0
  101. package/dist/preferred-languages.d.mts +43 -0
  102. package/dist/preferred-languages.mjs +44 -0
  103. package/dist/reactify.d.mts +28 -0
  104. package/dist/reactify.mjs +7 -0
  105. package/dist/ref-auto-reset.d.mts +47 -0
  106. package/dist/ref-auto-reset.mjs +70 -0
  107. package/dist/ref-debounced.d.mts +29 -0
  108. package/dist/ref-debounced.mjs +29 -0
  109. package/dist/ref-default.d.mts +27 -0
  110. package/dist/ref-default.mjs +33 -0
  111. package/dist/resize-observer.d.mts +96 -0
  112. package/dist/resize-observer.mjs +111 -0
  113. package/dist/resolver.d.mts +124 -0
  114. package/dist/resolver.mjs +138 -0
  115. package/dist/retry-async.d.mts +2 -2
  116. package/dist/retry-delay-DYsdq4SE.d.mts +73 -0
  117. package/dist/retry-delay.d.mts +1 -72
  118. package/dist/screen-orientation.d.mts +77 -0
  119. package/dist/screen-orientation.mjs +74 -0
  120. package/dist/scroll-lock.d.mts +37 -0
  121. package/dist/scroll-lock.mjs +50 -0
  122. package/dist/scroll.d.mts +158 -0
  123. package/dist/scroll.mjs +172 -0
  124. package/dist/standard-schema-DmNgFVK5.d.mts +107 -0
  125. package/dist/standard-schema.d.mts +2 -0
  126. package/dist/standard-schema.mjs +60 -0
  127. package/dist/swipe.d.mts +125 -0
  128. package/dist/swipe.mjs +225 -0
  129. package/dist/sync-ref.d.mts +80 -0
  130. package/dist/sync-ref.mjs +43 -0
  131. package/dist/text-selection.d.mts +46 -0
  132. package/dist/text-selection.mjs +62 -0
  133. package/dist/textarea-autosize.d.mts +58 -0
  134. package/dist/textarea-autosize.mjs +54 -0
  135. package/dist/timeout-scheduler-CI8RVLZs.d.mts +18 -0
  136. package/dist/timeout-scheduler.d.mts +1 -17
  137. package/dist/to-reactive.d.mts +26 -0
  138. package/dist/to-reactive.mjs +46 -0
  139. package/dist/transition.d.mts +125 -0
  140. package/dist/transition.mjs +266 -0
  141. package/dist/until.d.mts +177 -0
  142. package/dist/until.mjs +111 -0
  143. package/dist/use-array.d.mts +112 -0
  144. package/dist/use-array.mjs +90 -0
  145. package/dist/use-async-queue.d.mts +109 -0
  146. package/dist/use-async-queue.mjs +96 -0
  147. package/dist/use-async-state.d.mts +86 -0
  148. package/dist/use-async-state.mjs +41 -0
  149. package/dist/use-barcode-detector.d.mts +159 -0
  150. package/dist/use-barcode-detector.mjs +143 -0
  151. package/dist/use-bluetooth.d.mts +164 -0
  152. package/dist/use-bluetooth.mjs +183 -0
  153. package/dist/use-broadcast-channel.d.mts +115 -0
  154. package/dist/use-broadcast-channel.mjs +121 -0
  155. package/dist/use-builtin-ai.d.mts +342 -0
  156. package/dist/use-builtin-ai.mjs +261 -0
  157. package/dist/use-clipboard.d.mts +169 -0
  158. package/dist/use-clipboard.mjs +226 -0
  159. package/dist/use-compression-stream.d.mts +173 -0
  160. package/dist/use-compression-stream.mjs +166 -0
  161. package/dist/use-confirm-dialog.d.mts +70 -0
  162. package/dist/use-confirm-dialog.mjs +57 -0
  163. package/dist/use-contact-picker.d.mts +117 -0
  164. package/dist/use-contact-picker.mjs +103 -0
  165. package/dist/use-cookie.d.mts +196 -0
  166. package/dist/use-cookie.mjs +259 -0
  167. package/dist/use-countdown.d.mts +85 -0
  168. package/dist/use-countdown.mjs +74 -0
  169. package/dist/use-css-var.d.mts +96 -0
  170. package/dist/use-css-var.mjs +104 -0
  171. package/dist/use-cycle-list.d.mts +76 -0
  172. package/dist/use-cycle-list.mjs +39 -0
  173. package/dist/use-date-format.d.mts +103 -0
  174. package/dist/use-date-format.mjs +147 -0
  175. package/dist/use-date-time-format.d.mts +75 -0
  176. package/dist/use-date-time-format.mjs +53 -0
  177. package/dist/use-debounced.d.mts +1 -1
  178. package/dist/use-display-media.d.mts +62 -0
  179. package/dist/use-display-media.mjs +46 -0
  180. package/dist/use-display-names.d.mts +75 -0
  181. package/dist/use-display-names.mjs +52 -0
  182. package/dist/use-document-title.d.mts +88 -0
  183. package/dist/use-document-title.mjs +100 -0
  184. package/dist/use-drop-zone.d.mts +128 -0
  185. package/dist/use-drop-zone.mjs +154 -0
  186. package/dist/use-event-source.d.mts +184 -0
  187. package/dist/use-event-source.mjs +226 -0
  188. package/dist/use-eye-dropper.d.mts +79 -0
  189. package/dist/use-eye-dropper.mjs +68 -0
  190. package/dist/use-favicon.d.mts +78 -0
  191. package/dist/use-favicon.mjs +68 -0
  192. package/dist/use-fetch.d.mts +230 -0
  193. package/dist/use-fetch.mjs +263 -0
  194. package/dist/use-field.d.mts +107 -0
  195. package/dist/use-field.mjs +117 -0
  196. package/dist/use-file-dialog.d.mts +139 -0
  197. package/dist/use-file-dialog.mjs +101 -0
  198. package/dist/use-file-system-access.d.mts +184 -0
  199. package/dist/use-file-system-access.mjs +151 -0
  200. package/dist/use-form-field-props.d.mts +235 -0
  201. package/dist/use-form-field-props.mjs +164 -0
  202. package/dist/use-form.d.mts +324 -0
  203. package/dist/use-form.mjs +482 -0
  204. package/dist/use-fullscreen.d.mts +104 -0
  205. package/dist/use-fullscreen.mjs +95 -0
  206. package/dist/use-gamepad.d.mts +242 -0
  207. package/dist/use-gamepad.mjs +218 -0
  208. package/dist/use-hid.d.mts +160 -0
  209. package/dist/use-hid.mjs +156 -0
  210. package/dist/use-id-generator.d.mts +44 -0
  211. package/dist/use-id-generator.mjs +38 -0
  212. package/dist/use-image.d.mts +125 -0
  213. package/dist/use-image.mjs +109 -0
  214. package/dist/use-indexed-db.d.mts +207 -0
  215. package/dist/use-indexed-db.mjs +251 -0
  216. package/dist/use-interval-BA55gTHT.d.mts +140 -0
  217. package/dist/use-interval.d.mts +2 -0
  218. package/dist/use-interval.mjs +100 -0
  219. package/dist/use-list-format.d.mts +60 -0
  220. package/dist/use-list-format.mjs +40 -0
  221. package/dist/use-machine.d.mts +90 -0
  222. package/dist/use-machine.mjs +78 -0
  223. package/dist/use-map.d.mts +90 -0
  224. package/dist/use-map.mjs +70 -0
  225. package/dist/use-media-controls.d.mts +198 -0
  226. package/dist/use-media-controls.mjs +264 -0
  227. package/dist/use-memoize.d.mts +73 -0
  228. package/dist/use-memoize.mjs +28 -0
  229. package/dist/use-mounted.d.mts +24 -0
  230. package/dist/use-mounted.mjs +29 -0
  231. package/dist/use-navigation-api.d.mts +360 -0
  232. package/dist/use-navigation-api.mjs +231 -0
  233. package/dist/use-notification.d.mts +139 -0
  234. package/dist/use-notification.mjs +131 -0
  235. package/dist/use-now.d.mts +137 -0
  236. package/dist/use-now.mjs +44 -0
  237. package/dist/use-number-format.d.mts +73 -0
  238. package/dist/use-number-format.mjs +58 -0
  239. package/dist/use-object-url.d.mts +47 -0
  240. package/dist/use-object-url.mjs +54 -0
  241. package/dist/use-offset-pagination.d.mts +91 -0
  242. package/dist/use-offset-pagination.mjs +80 -0
  243. package/dist/use-payment-request.d.mts +239 -0
  244. package/dist/use-payment-request.mjs +206 -0
  245. package/dist/use-performance-observer.d.mts +285 -0
  246. package/dist/use-performance-observer.mjs +132 -0
  247. package/dist/use-permission.d.mts +99 -0
  248. package/dist/use-permission.mjs +92 -0
  249. package/dist/use-plural-rules.d.mts +79 -0
  250. package/dist/use-plural-rules.mjs +59 -0
  251. package/dist/use-push-subscription.d.mts +154 -0
  252. package/dist/use-push-subscription.mjs +146 -0
  253. package/dist/use-queue.d.mts +89 -0
  254. package/dist/use-queue.mjs +116 -0
  255. package/dist/use-raf-fn.d.mts +87 -0
  256. package/dist/use-raf-fn.mjs +99 -0
  257. package/dist/use-relative-time-format.d.mts +111 -0
  258. package/dist/use-relative-time-format.mjs +119 -0
  259. package/dist/use-request-idle-callback.d.mts +122 -0
  260. package/dist/use-request-idle-callback.mjs +147 -0
  261. package/dist/use-route-query.d.mts +149 -0
  262. package/dist/use-route-query.mjs +86 -0
  263. package/dist/use-scheduler-post-task.d.mts +156 -0
  264. package/dist/use-scheduler-post-task.mjs +182 -0
  265. package/dist/use-screen-details.d.mts +205 -0
  266. package/dist/use-screen-details.mjs +188 -0
  267. package/dist/use-script-tag.d.mts +162 -0
  268. package/dist/use-script-tag.mjs +171 -0
  269. package/dist/use-segmenter.d.mts +78 -0
  270. package/dist/use-segmenter.mjs +66 -0
  271. package/dist/use-selection.d.mts +125 -0
  272. package/dist/use-selection.mjs +77 -0
  273. package/dist/use-serial.d.mts +165 -0
  274. package/dist/use-serial.mjs +205 -0
  275. package/dist/use-service-worker.d.mts +177 -0
  276. package/dist/use-service-worker.mjs +178 -0
  277. package/dist/use-set.d.mts +96 -0
  278. package/dist/use-set.mjs +74 -0
  279. package/dist/use-share.d.mts +92 -0
  280. package/dist/use-share.mjs +99 -0
  281. package/dist/use-sorted-locale.d.mts +62 -0
  282. package/dist/use-sorted-locale.mjs +52 -0
  283. package/dist/use-sorted.d.mts +29 -0
  284. package/dist/use-sorted.mjs +14 -0
  285. package/dist/use-speech-recognition.d.mts +150 -0
  286. package/dist/use-speech-recognition.mjs +168 -0
  287. package/dist/use-speech-synthesis.d.mts +148 -0
  288. package/dist/use-speech-synthesis.mjs +152 -0
  289. package/dist/use-stack.d.mts +83 -0
  290. package/dist/use-stack.mjs +93 -0
  291. package/dist/use-stepper.d.mts +79 -0
  292. package/dist/use-stepper.mjs +52 -0
  293. package/dist/use-storage-estimate.d.mts +151 -0
  294. package/dist/use-storage-estimate.mjs +170 -0
  295. package/dist/use-storage.d.mts +214 -0
  296. package/dist/use-storage.mjs +415 -0
  297. package/dist/use-style-tag.d.mts +102 -0
  298. package/dist/use-style-tag.mjs +91 -0
  299. package/dist/use-supported.d.mts +23 -0
  300. package/dist/use-supported.mjs +26 -0
  301. package/dist/use-throttled.d.mts +1 -1
  302. package/dist/use-time-ago.d.mts +163 -0
  303. package/dist/use-time-ago.mjs +95 -0
  304. package/dist/use-timeout.d.mts +122 -0
  305. package/dist/use-timeout.mjs +65 -0
  306. package/dist/use-url-hash.d.mts +88 -0
  307. package/dist/use-url-hash.mjs +145 -0
  308. package/dist/use-url-search-params.d.mts +223 -0
  309. package/dist/use-url-search-params.mjs +295 -0
  310. package/dist/use-usb.d.mts +212 -0
  311. package/dist/use-usb.mjs +137 -0
  312. package/dist/use-user-activation.d.mts +83 -0
  313. package/dist/use-user-activation.mjs +113 -0
  314. package/dist/use-user-media.d.mts +194 -0
  315. package/dist/use-user-media.mjs +214 -0
  316. package/dist/use-v-model.d.mts +113 -0
  317. package/dist/use-v-model.mjs +40 -0
  318. package/dist/use-vibrate.d.mts +81 -0
  319. package/dist/use-vibrate.mjs +90 -0
  320. package/dist/use-view-transition.d.mts +106 -0
  321. package/dist/use-view-transition.mjs +101 -0
  322. package/dist/use-visual-viewport.d.mts +105 -0
  323. package/dist/use-visual-viewport.mjs +104 -0
  324. package/dist/use-wake-lock.d.mts +96 -0
  325. package/dist/use-wake-lock.mjs +106 -0
  326. package/dist/use-web-authn.d.mts +404 -0
  327. package/dist/use-web-authn.mjs +323 -0
  328. package/dist/use-web-locks.d.mts +180 -0
  329. package/dist/use-web-locks.mjs +136 -0
  330. package/dist/use-web-midi.d.mts +148 -0
  331. package/dist/use-web-midi.mjs +140 -0
  332. package/dist/use-web-vitals.d.mts +142 -0
  333. package/dist/use-web-vitals.mjs +248 -0
  334. package/dist/use-websocket.d.mts +218 -0
  335. package/dist/use-websocket.mjs +257 -0
  336. package/dist/use-worker-fn.d.mts +119 -0
  337. package/dist/use-worker-fn.mjs +162 -0
  338. package/dist/virtual-list.d.mts +105 -0
  339. package/dist/virtual-list.mjs +128 -0
  340. package/dist/watch-debounced.d.mts +84 -0
  341. package/dist/watch-debounced.mjs +84 -0
  342. package/dist/watch-ignorable.d.mts +47 -0
  343. package/dist/watch-ignorable.mjs +61 -0
  344. package/dist/watch-once.d.mts +29 -0
  345. package/dist/watch-once.mjs +10 -0
  346. package/dist/watch-pausable.d.mts +51 -0
  347. package/dist/watch-pausable.mjs +23 -0
  348. package/dist/watch-source.d.mts +29 -0
  349. package/dist/watch-source.mjs +1 -0
  350. package/dist/watch-throttled.d.mts +70 -0
  351. package/dist/watch-throttled.mjs +94 -0
  352. package/dist/whenever.d.mts +39 -0
  353. package/dist/whenever.mjs +41 -0
  354. package/dist/window-size.d.mts +87 -0
  355. package/dist/window-size.mjs +65 -0
  356. package/package.json +846 -5
  357. package/registry/files/abort-signal.ts +292 -0
  358. package/registry/files/active-element.ts +93 -0
  359. package/registry/files/animate.ts +322 -0
  360. package/registry/files/async-resource.ts +190 -0
  361. package/registry/files/battery.ts +166 -0
  362. package/registry/files/breakpoints.ts +166 -0
  363. package/registry/files/capability.ts +171 -0
  364. package/registry/files/color-mode.ts +274 -0
  365. package/registry/files/computed-async.ts +123 -0
  366. package/registry/files/computed-with-control.ts +80 -0
  367. package/registry/files/create-event-hook.ts +139 -0
  368. package/registry/files/create-global-state.ts +34 -0
  369. package/registry/files/create-injection-state.ts +75 -0
  370. package/registry/files/create-shared-composable.ts +74 -0
  371. package/registry/files/device-motion.ts +152 -0
  372. package/registry/files/device-orientation.ts +168 -0
  373. package/registry/files/device-pixel-ratio.ts +100 -0
  374. package/registry/files/disposal-scope.ts +201 -0
  375. package/registry/files/document-visibility.ts +152 -0
  376. package/registry/files/draggable.ts +273 -0
  377. package/registry/files/element-bounding.ts +175 -0
  378. package/registry/files/element-by-point.ts +149 -0
  379. package/registry/files/element-hover.ts +104 -0
  380. package/registry/files/element-ref.ts +58 -0
  381. package/registry/files/element-target.ts +99 -0
  382. package/registry/files/event-listener.ts +188 -0
  383. package/registry/files/focus.ts +181 -0
  384. package/registry/files/fps.ts +133 -0
  385. package/registry/files/geolocation.ts +214 -0
  386. package/registry/files/i18n.ts +524 -0
  387. package/registry/files/icu-message.ts +701 -0
  388. package/registry/files/idle.ts +176 -0
  389. package/registry/files/infinite-scroll.ts +135 -0
  390. package/registry/files/intersection-observer.ts +261 -0
  391. package/registry/files/locale.ts +148 -0
  392. package/registry/files/magic-keys.ts +298 -0
  393. package/registry/files/math.ts +175 -0
  394. package/registry/files/media-query.ts +102 -0
  395. package/registry/files/mouse-in-element.ts +107 -0
  396. package/registry/files/mouse.ts +167 -0
  397. package/registry/files/mutation-observer.ts +183 -0
  398. package/registry/files/network.ts +229 -0
  399. package/registry/files/on-click-outside.ts +178 -0
  400. package/registry/files/on-key-stroke.ts +135 -0
  401. package/registry/files/on-long-press.ts +188 -0
  402. package/registry/files/on-start-typing.ts +88 -0
  403. package/registry/files/page-leave.ts +57 -0
  404. package/registry/files/parent-element.ts +29 -0
  405. package/registry/files/pinch.ts +187 -0
  406. package/registry/files/pointer-lock.ts +232 -0
  407. package/registry/files/pointer.ts +153 -0
  408. package/registry/files/preferences.ts +98 -0
  409. package/registry/files/preferred-languages.ts +88 -0
  410. package/registry/files/reactify.ts +39 -0
  411. package/registry/files/ref-auto-reset.ts +102 -0
  412. package/registry/files/ref-debounced.ts +34 -0
  413. package/registry/files/ref-default.ts +35 -0
  414. package/registry/files/resize-observer.ts +220 -0
  415. package/registry/files/retry-async.ts +261 -0
  416. package/registry/files/retry-delay.ts +132 -0
  417. package/registry/files/scope.ts +21 -0
  418. package/registry/files/screen-orientation.ts +165 -0
  419. package/registry/files/scroll-lock.ts +80 -0
  420. package/registry/files/scroll.ts +338 -0
  421. package/registry/files/standard-schema.ts +163 -0
  422. package/registry/files/swipe.ts +321 -0
  423. package/registry/files/sync-ref.ts +166 -0
  424. package/registry/files/temporal.ts +182 -0
  425. package/registry/files/text-selection.ts +110 -0
  426. package/registry/files/textarea-autosize.ts +114 -0
  427. package/registry/files/timeout-scheduler.ts +16 -0
  428. package/registry/files/to-reactive.ts +44 -0
  429. package/registry/files/transition.ts +271 -0
  430. package/registry/files/until.ts +352 -0
  431. package/registry/files/use-array.ts +201 -0
  432. package/registry/files/use-async-queue.ts +278 -0
  433. package/registry/files/use-async-state.ts +139 -0
  434. package/registry/files/use-barcode-detector.ts +321 -0
  435. package/registry/files/use-bluetooth.ts +409 -0
  436. package/registry/files/use-broadcast-channel.ts +250 -0
  437. package/registry/files/use-builtin-ai.ts +674 -0
  438. package/registry/files/use-clipboard.ts +425 -0
  439. package/registry/files/use-compression-stream.ts +364 -0
  440. package/registry/files/use-confirm-dialog.ts +137 -0
  441. package/registry/files/use-contact-picker.ts +246 -0
  442. package/registry/files/use-cookie.ts +500 -0
  443. package/registry/files/use-countdown.ts +161 -0
  444. package/registry/files/use-counter.ts +147 -0
  445. package/registry/files/use-css-var.ts +191 -0
  446. package/registry/files/use-cycle-list.ts +136 -0
  447. package/registry/files/use-date-format.ts +281 -0
  448. package/registry/files/use-date-time-format.ts +113 -0
  449. package/registry/files/use-debounced.ts +163 -0
  450. package/registry/files/use-display-media.ts +89 -0
  451. package/registry/files/use-display-names.ts +122 -0
  452. package/registry/files/use-document-title.ts +196 -0
  453. package/registry/files/use-drop-zone.ts +287 -0
  454. package/registry/files/use-event-source.ts +470 -0
  455. package/registry/files/use-eye-dropper.ts +134 -0
  456. package/registry/files/use-favicon.ts +140 -0
  457. package/registry/files/use-fetch.ts +578 -0
  458. package/registry/files/use-field.ts +247 -0
  459. package/registry/files/use-file-dialog.ts +257 -0
  460. package/registry/files/use-file-system-access.ts +383 -0
  461. package/registry/files/use-form-field-props.ts +381 -0
  462. package/registry/files/use-form.ts +980 -0
  463. package/registry/files/use-fullscreen.ts +214 -0
  464. package/registry/files/use-gamepad.ts +463 -0
  465. package/registry/files/use-hid.ts +359 -0
  466. package/registry/files/use-history.ts +231 -0
  467. package/registry/files/use-id-generator.ts +61 -0
  468. package/registry/files/use-image.ts +253 -0
  469. package/registry/files/use-indexed-db.ts +508 -0
  470. package/registry/files/use-interval.ts +253 -0
  471. package/registry/files/use-list-format.ts +85 -0
  472. package/registry/files/use-machine.ts +171 -0
  473. package/registry/files/use-map.ts +145 -0
  474. package/registry/files/use-media-controls.ts +545 -0
  475. package/registry/files/use-memoize.ts +118 -0
  476. package/registry/files/use-mounted.ts +30 -0
  477. package/registry/files/use-navigation-api.ts +641 -0
  478. package/registry/files/use-notification.ts +285 -0
  479. package/registry/files/use-now.ts +194 -0
  480. package/registry/files/use-number-format.ts +120 -0
  481. package/registry/files/use-object-url.ts +87 -0
  482. package/registry/files/use-offset-pagination.ts +168 -0
  483. package/registry/files/use-payment-request.ts +465 -0
  484. package/registry/files/use-performance-observer.ts +469 -0
  485. package/registry/files/use-permission.ts +220 -0
  486. package/registry/files/use-plural-rules.ts +134 -0
  487. package/registry/files/use-previous.ts +62 -0
  488. package/registry/files/use-push-subscription.ts +352 -0
  489. package/registry/files/use-queue.ts +197 -0
  490. package/registry/files/use-raf-fn.ts +176 -0
  491. package/registry/files/use-relative-time-format.ts +201 -0
  492. package/registry/files/use-request-idle-callback.ts +278 -0
  493. package/registry/files/use-route-query.ts +300 -0
  494. package/registry/files/use-scheduler-post-task.ts +397 -0
  495. package/registry/files/use-screen-details.ts +393 -0
  496. package/registry/files/use-script-tag.ts +341 -0
  497. package/registry/files/use-segmenter.ts +147 -0
  498. package/registry/files/use-selection.ts +233 -0
  499. package/registry/files/use-serial.ts +404 -0
  500. package/registry/files/use-service-worker.ts +413 -0
  501. package/registry/files/use-set.ts +154 -0
  502. package/registry/files/use-share.ts +168 -0
  503. package/registry/files/use-sorted-locale.ts +130 -0
  504. package/registry/files/use-sorted.ts +49 -0
  505. package/registry/files/use-speech-recognition.ts +357 -0
  506. package/registry/files/use-speech-synthesis.ts +333 -0
  507. package/registry/files/use-stack.ts +164 -0
  508. package/registry/files/use-stepper.ts +166 -0
  509. package/registry/files/use-storage-estimate.ts +352 -0
  510. package/registry/files/use-storage.ts +635 -0
  511. package/registry/files/use-style-tag.ts +200 -0
  512. package/registry/files/use-supported.ts +26 -0
  513. package/registry/files/use-throttled.ts +215 -0
  514. package/registry/files/use-time-ago.ts +276 -0
  515. package/registry/files/use-timeout.ts +218 -0
  516. package/registry/files/use-toggle.ts +54 -0
  517. package/registry/files/use-url-hash.ts +280 -0
  518. package/registry/files/use-url-search-params.ts +497 -0
  519. package/registry/files/use-usb.ts +395 -0
  520. package/registry/files/use-user-activation.ts +215 -0
  521. package/registry/files/use-user-media.ts +422 -0
  522. package/registry/files/use-v-model.ts +210 -0
  523. package/registry/files/use-vibrate.ts +174 -0
  524. package/registry/files/use-view-transition.ts +229 -0
  525. package/registry/files/use-visual-viewport.ts +228 -0
  526. package/registry/files/use-wake-lock.ts +206 -0
  527. package/registry/files/use-web-authn.ts +793 -0
  528. package/registry/files/use-web-locks.ts +363 -0
  529. package/registry/files/use-web-midi.ts +306 -0
  530. package/registry/files/use-web-vitals.ts +409 -0
  531. package/registry/files/use-websocket.ts +553 -0
  532. package/registry/files/use-worker-fn.ts +306 -0
  533. package/registry/files/virtual-list.ts +230 -0
  534. package/registry/files/watch-debounced.ts +206 -0
  535. package/registry/files/watch-ignorable.ts +128 -0
  536. package/registry/files/watch-once.ts +46 -0
  537. package/registry/files/watch-pausable.ts +93 -0
  538. package/registry/files/watch-source.ts +51 -0
  539. package/registry/files/watch-throttled.ts +201 -0
  540. package/registry/files/whenever.ts +70 -0
  541. package/registry/files/window-size.ts +151 -0
  542. package/registry/registry.json +5792 -0
  543. package/dist/catalog-D2AL3xYl.d.mts +0 -523
  544. package/dist/catalog-D5SYCsgW.mjs +0 -549
@@ -0,0 +1,29 @@
1
+ import { UseDebouncedOptions } from "./use-debounced.mjs";
2
+ import { MaybeRefOrGetter, ShallowRef } from "vue";
3
+
4
+ //#region src/ref-debounced.d.ts
5
+ /**
6
+ * Readonly ref that follows `source` after it stayed quiet for `waitMs`.
7
+ *
8
+ * Shorthand for `useDebounced(source, waitMs, options).debounced` when the
9
+ * pending flag and cancel/flush controls are not needed. Inherits every rule
10
+ * of {@link useDebounced}: synchronous mirroring on the server, reactive
11
+ * wait, and scope-bound cleanup.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * const query = ref("");
16
+ * const debouncedQuery = refDebounced(query, 300);
17
+ * ```
18
+ *
19
+ * @param source Reactive source.
20
+ * @param waitMs Reactive quiet period in milliseconds.
21
+ * @param options Server and scheduler policy.
22
+ * @default options {}
23
+ * @throws `RangeError` tagged `VIZE_COMPOSE_DEBOUNCE_INVALID_WAIT` for invalid
24
+ * waits (see {@link useDebounced}).
25
+ * @returns The debounced readonly ref.
26
+ */
27
+ declare function refDebounced<Value>(source: MaybeRefOrGetter<Value>, waitMs: MaybeRefOrGetter<number>, options?: UseDebouncedOptions): Readonly<ShallowRef<Value>>;
28
+ //#endregion
29
+ export { refDebounced };
@@ -0,0 +1,29 @@
1
+ import { useDebounced } from "./use-debounced.mjs";
2
+ //#region src/ref-debounced.ts
3
+ /**
4
+ * Readonly ref that follows `source` after it stayed quiet for `waitMs`.
5
+ *
6
+ * Shorthand for `useDebounced(source, waitMs, options).debounced` when the
7
+ * pending flag and cancel/flush controls are not needed. Inherits every rule
8
+ * of {@link useDebounced}: synchronous mirroring on the server, reactive
9
+ * wait, and scope-bound cleanup.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * const query = ref("");
14
+ * const debouncedQuery = refDebounced(query, 300);
15
+ * ```
16
+ *
17
+ * @param source Reactive source.
18
+ * @param waitMs Reactive quiet period in milliseconds.
19
+ * @param options Server and scheduler policy.
20
+ * @default options {}
21
+ * @throws `RangeError` tagged `VIZE_COMPOSE_DEBOUNCE_INVALID_WAIT` for invalid
22
+ * waits (see {@link useDebounced}).
23
+ * @returns The debounced readonly ref.
24
+ */
25
+ function refDebounced(source, waitMs, options = {}) {
26
+ return useDebounced(source, waitMs, options).debounced;
27
+ }
28
+ //#endregion
29
+ export { refDebounced };
@@ -0,0 +1,27 @@
1
+ import { MaybeRefOrGetter, Ref, WritableComputedRef } from "vue";
2
+
3
+ //#region src/ref-default.d.ts
4
+ /**
5
+ * View a nullable ref through a default value.
6
+ *
7
+ * Reads return the source value, or the (possibly reactive) default while the
8
+ * source holds `null` or `undefined`, so the read type drops those members.
9
+ * Writes go straight to the source and accept its full type, including
10
+ * `null`/`undefined` to fall back to the default again. Pure derived state:
11
+ * SSR-safe and nothing to dispose.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * const raw = ref<string | undefined>();
16
+ * const name = refDefault(raw, "Anonymous");
17
+ * name.value; // "Anonymous"
18
+ * name.value = "Ada"; // raw.value === "Ada"
19
+ * ```
20
+ *
21
+ * @param source Writable nullable ref.
22
+ * @param defaultValue Reactive fallback.
23
+ * @returns A writable computed ref whose reads never yield `null`/`undefined`.
24
+ */
25
+ declare function refDefault<Value>(source: Ref<Value>, defaultValue: MaybeRefOrGetter<NonNullable<Value>>): WritableComputedRef<NonNullable<Value>, Value>;
26
+ //#endregion
27
+ export { refDefault };
@@ -0,0 +1,33 @@
1
+ import { computed, toValue } from "vue";
2
+ //#region src/ref-default.ts
3
+ /**
4
+ * View a nullable ref through a default value.
5
+ *
6
+ * Reads return the source value, or the (possibly reactive) default while the
7
+ * source holds `null` or `undefined`, so the read type drops those members.
8
+ * Writes go straight to the source and accept its full type, including
9
+ * `null`/`undefined` to fall back to the default again. Pure derived state:
10
+ * SSR-safe and nothing to dispose.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * const raw = ref<string | undefined>();
15
+ * const name = refDefault(raw, "Anonymous");
16
+ * name.value; // "Anonymous"
17
+ * name.value = "Ada"; // raw.value === "Ada"
18
+ * ```
19
+ *
20
+ * @param source Writable nullable ref.
21
+ * @param defaultValue Reactive fallback.
22
+ * @returns A writable computed ref whose reads never yield `null`/`undefined`.
23
+ */
24
+ function refDefault(source, defaultValue) {
25
+ return computed({
26
+ get: () => source.value ?? toValue(defaultValue),
27
+ set: (value) => {
28
+ source.value = value;
29
+ }
30
+ });
31
+ }
32
+ //#endregion
33
+ export { refDefault };
@@ -0,0 +1,96 @@
1
+ import { n as MaybeElementTarget, r as MaybeElementTargets } from "./element-target-Crpxl4D9.mjs";
2
+ import { MaybeRefOrGetter, Ref } from "vue";
3
+
4
+ //#region src/resize-observer.d.ts
5
+ /** Runtime capability that supplies the `ResizeObserver` constructor. */
6
+ interface ResizeObserverHost {
7
+ /** `ResizeObserver` constructor, absent in unsupported runtimes. */
8
+ readonly ResizeObserver?: new (callback: ResizeObserverCallback) => ResizeObserver;
9
+ }
10
+ /** Options for {@link useResizeObserver}. */
11
+ interface UseResizeObserverOptions {
12
+ /**
13
+ * Box model reported by the observer.
14
+ *
15
+ * @default "content-box"
16
+ */
17
+ readonly box?: ResizeObserverBoxOptions;
18
+ /**
19
+ * Reactive constructor capability for alternate runtimes and tests.
20
+ *
21
+ * @default window when it provides `ResizeObserver`
22
+ */
23
+ readonly host?: MaybeRefOrGetter<ResizeObserverHost | null | undefined>;
24
+ /**
25
+ * Target resolution timing. `"post"` observes template refs after mount.
26
+ *
27
+ * @default "post"
28
+ */
29
+ readonly flush?: "pre" | "post" | "sync";
30
+ }
31
+ /** Controls returned by {@link useResizeObserver}. */
32
+ interface ResizeObserverControls {
33
+ /** Whether the host provides `ResizeObserver`. `false` during server rendering. */
34
+ readonly isSupported: Readonly<Ref<boolean>>;
35
+ /** Disconnect the observer and stop following the reactive targets. Idempotent. */
36
+ readonly stop: () => void;
37
+ }
38
+ /**
39
+ * Observe size changes of one or more reactive elements.
40
+ *
41
+ * A single observer is (re)created whenever the resolved targets, the box
42
+ * option, or the host change; unresolved targets are skipped. The observer is
43
+ * disconnected when the owning reactive scope stops or `stop` is called.
44
+ * During server rendering no host resolves, `isSupported` stays `false`, and
45
+ * the callback never runs.
46
+ *
47
+ * Inside a component the host is read after mounting, so hydration renders
48
+ * the server fallback first and never mismatches.
49
+ *
50
+ * @param targets Reactive element target or list of targets.
51
+ * @param callback Native `ResizeObserver` callback.
52
+ * @param options Box model, runtime capability, and watcher timing.
53
+ * @default options {}
54
+ * @returns Support flag and stop control.
55
+ */
56
+ declare function useResizeObserver(targets: MaybeElementTargets, callback: ResizeObserverCallback, options?: UseResizeObserverOptions): ResizeObserverControls;
57
+ /** Element dimensions reported by {@link useElementSize}. */
58
+ interface ElementSize {
59
+ /** Inline size in CSS pixels. */
60
+ readonly width: number;
61
+ /** Block size in CSS pixels. */
62
+ readonly height: number;
63
+ }
64
+ /** Options for {@link useElementSize}. */
65
+ interface UseElementSizeOptions extends UseResizeObserverOptions {
66
+ /**
67
+ * Size exposed before the first observation and during server rendering.
68
+ * Keep it identical on server and client to avoid hydration mismatches.
69
+ *
70
+ * @default { width: 0, height: 0 }
71
+ */
72
+ readonly initialSize?: ElementSize;
73
+ }
74
+ /** Reactive size returned by {@link useElementSize}. */
75
+ interface ElementSizeControls extends ResizeObserverControls {
76
+ /** Observed inline size in CSS pixels. */
77
+ readonly width: Readonly<Ref<number>>;
78
+ /** Observed block size in CSS pixels. */
79
+ readonly height: Readonly<Ref<number>>;
80
+ }
81
+ /**
82
+ * Track the rendered size of a reactive element.
83
+ *
84
+ * Reads the requested box from `contentBoxSize`/`borderBoxSize` (summing
85
+ * fragments) and falls back to `contentRect` for older engines. When the
86
+ * target unmounts the size resets to the initial value so stale geometry never
87
+ * leaks into the next render. Server renders expose `initialSize`.
88
+ *
89
+ * @param target Reactive element target.
90
+ * @param options Initial size, box model, capability, and watcher timing.
91
+ * @default options {}
92
+ * @returns Reactive width/height plus observer controls.
93
+ */
94
+ declare function useElementSize(target: MaybeElementTarget, options?: UseElementSizeOptions): ElementSizeControls;
95
+ //#endregion
96
+ export { ElementSize, ElementSizeControls, ResizeObserverControls, ResizeObserverHost, UseElementSizeOptions, UseResizeObserverOptions, useElementSize, useResizeObserver };
@@ -0,0 +1,111 @@
1
+ import { tryOnScopeDispose } from "./scope.mjs";
2
+ import { resolveElement, resolveElements } from "./element-target.mjs";
3
+ import { computed, hasInjectionContext, readonly, ref, shallowRef, toValue, watch, watchPostEffect } from "vue";
4
+ //#region src/resize-observer.ts
5
+ /**
6
+ * Observe size changes of one or more reactive elements.
7
+ *
8
+ * A single observer is (re)created whenever the resolved targets, the box
9
+ * option, or the host change; unresolved targets are skipped. The observer is
10
+ * disconnected when the owning reactive scope stops or `stop` is called.
11
+ * During server rendering no host resolves, `isSupported` stays `false`, and
12
+ * the callback never runs.
13
+ *
14
+ * Inside a component the host is read after mounting, so hydration renders
15
+ * the server fallback first and never mismatches.
16
+ *
17
+ * @param targets Reactive element target or list of targets.
18
+ * @param callback Native `ResizeObserver` callback.
19
+ * @param options Box model, runtime capability, and watcher timing.
20
+ * @default options {}
21
+ * @returns Support flag and stop control.
22
+ */
23
+ function useResizeObserver(targets, callback, options = {}) {
24
+ const isSupported = ref(false);
25
+ const hydrated = shallowRef(!hasInjectionContext());
26
+ if (!hydrated.value) watchPostEffect(() => {
27
+ hydrated.value = true;
28
+ });
29
+ let stopWatch = watch(() => [hydrated.value ? options.host === void 0 ? browserResizeObserverHost() : toValue(options.host) : void 0, resolveElements(targets)], ([host, elements], _previous, onCleanup) => {
30
+ const Observer = host?.ResizeObserver;
31
+ isSupported.value = Observer !== void 0;
32
+ if (!Observer || elements.length === 0) return;
33
+ const observer = new Observer(callback);
34
+ const observeOptions = { box: options.box ?? "content-box" };
35
+ for (const element of elements) observer.observe(element, observeOptions);
36
+ onCleanup(() => observer.disconnect());
37
+ }, {
38
+ immediate: true,
39
+ flush: options.flush ?? "post"
40
+ });
41
+ const stop = () => {
42
+ stopWatch?.stop();
43
+ stopWatch = void 0;
44
+ };
45
+ tryOnScopeDispose(stop);
46
+ return {
47
+ isSupported: readonly(isSupported),
48
+ stop
49
+ };
50
+ }
51
+ /**
52
+ * Track the rendered size of a reactive element.
53
+ *
54
+ * Reads the requested box from `contentBoxSize`/`borderBoxSize` (summing
55
+ * fragments) and falls back to `contentRect` for older engines. When the
56
+ * target unmounts the size resets to the initial value so stale geometry never
57
+ * leaks into the next render. Server renders expose `initialSize`.
58
+ *
59
+ * @param target Reactive element target.
60
+ * @param options Initial size, box model, capability, and watcher timing.
61
+ * @default options {}
62
+ * @returns Reactive width/height plus observer controls.
63
+ */
64
+ function useElementSize(target, options = {}) {
65
+ const initial = options.initialSize ?? {
66
+ width: 0,
67
+ height: 0
68
+ };
69
+ const width = ref(initial.width);
70
+ const height = ref(initial.height);
71
+ const box = options.box ?? "content-box";
72
+ const controls = useResizeObserver(target, (entries) => {
73
+ const entry = entries.at(-1);
74
+ if (!entry) return;
75
+ const sizes = box === "border-box" ? entry.borderBoxSize : box === "content-box" ? entry.contentBoxSize : entry.devicePixelContentBoxSize;
76
+ if (sizes && sizes.length > 0) {
77
+ let inline = 0;
78
+ let block = 0;
79
+ for (const size of sizes) {
80
+ inline += size.inlineSize;
81
+ block += size.blockSize;
82
+ }
83
+ width.value = inline;
84
+ height.value = block;
85
+ return;
86
+ }
87
+ width.value = entry.contentRect.width;
88
+ height.value = entry.contentRect.height;
89
+ }, options);
90
+ const stopReset = watch(computed(() => resolveElement(target) !== null), (isMounted) => {
91
+ if (isMounted) return;
92
+ width.value = initial.width;
93
+ height.value = initial.height;
94
+ });
95
+ const stop = () => {
96
+ stopReset.stop();
97
+ controls.stop();
98
+ };
99
+ tryOnScopeDispose(stop);
100
+ return {
101
+ width: readonly(width),
102
+ height: readonly(height),
103
+ isSupported: controls.isSupported,
104
+ stop
105
+ };
106
+ }
107
+ function browserResizeObserverHost() {
108
+ return typeof window !== "undefined" && typeof window.ResizeObserver === "function" ? window : void 0;
109
+ }
110
+ //#endregion
111
+ export { useElementSize, useResizeObserver };
@@ -0,0 +1,124 @@
1
+ //#region src/resolver.d.ts
2
+ /** Package that owns the resolvable exports. */
3
+ declare const VIZE_COMPOSABLE_PACKAGE = "@vizejs/composable";
4
+ /** Entry name (subpath without `./`) that exposes at least one auto-importable export. */
5
+ type VizeComposableEntry = string;
6
+ /** One `vize-lib.lock.json` item (the fields the resolver reads). */
7
+ interface VizeComposableLockedItem {
8
+ /** Item name, for example `"use-toggle"`. */
9
+ readonly name: string;
10
+ /** Item kind, for example `"composable"`. */
11
+ readonly kind: string;
12
+ /** Project-relative POSIX directory the registry layout was copied into. */
13
+ readonly dir: string;
14
+ }
15
+ /** The parts of `vize-lib.lock.json` the resolver reads. */
16
+ interface VizeComposableLockfile {
17
+ /** Lockfile schema version. */
18
+ readonly lockfileVersion: number;
19
+ /** Pulled items. */
20
+ readonly items: readonly VizeComposableLockedItem[];
21
+ }
22
+ /** Options for the `@vizejs/composable` resolvers. */
23
+ interface VizeComposableResolverOptions {
24
+ /**
25
+ * Only resolve exports of these entries (for example `"use-toggle"`).
26
+ *
27
+ * @default every entry
28
+ */
29
+ readonly include?: readonly VizeComposableEntry[];
30
+ /**
31
+ * Never resolve exports of these entries.
32
+ *
33
+ * @default []
34
+ */
35
+ readonly exclude?: readonly VizeComposableEntry[];
36
+ /**
37
+ * Only resolve these export names (for example to avoid clashing with another library).
38
+ *
39
+ * @default every runtime export
40
+ */
41
+ readonly names?: readonly string[];
42
+ /**
43
+ * Resolve to the npm package, or to `vize lib pull` copies recorded in the lockfile.
44
+ *
45
+ * @default "package"
46
+ */
47
+ readonly source?: "local" | "package";
48
+ /**
49
+ * Project root used to locate the lockfile and pulled directories.
50
+ *
51
+ * @default process.cwd()
52
+ */
53
+ readonly root?: string;
54
+ /**
55
+ * Lockfile path (relative to `root`) or an already-parsed lockfile.
56
+ *
57
+ * @default "vize-lib.lock.json"
58
+ */
59
+ readonly lockfile?: string | VizeComposableLockfile;
60
+ /**
61
+ * In `local` mode, resolve entries that were not pulled to the package.
62
+ *
63
+ * @default true
64
+ */
65
+ readonly fallback?: boolean;
66
+ }
67
+ /** An import produced by the resolver: `import { name } from from`. */
68
+ interface VizeComposableImport {
69
+ /** Export name. */
70
+ readonly name: string;
71
+ /** Module specifier or absolute file path. */
72
+ readonly from: string;
73
+ }
74
+ /**
75
+ * Read and validate `vize-lib.lock.json`.
76
+ *
77
+ * @param file Absolute lockfile path.
78
+ * @returns The parsed lockfile.
79
+ * @throws {Error} `[VIZE_COMPOSE_RESOLVER_LOCKFILE]` when missing or malformed.
80
+ */
81
+ declare function readComposableLockfile(file: string): VizeComposableLockfile;
82
+ /**
83
+ * Every auto-importable export the options allow, with its direct subpath import.
84
+ *
85
+ * @param options Filters and source mode.
86
+ * @default options {}
87
+ * @returns Imports in catalog order.
88
+ */
89
+ declare function listVizeComposableImports(options?: VizeComposableResolverOptions): readonly VizeComposableImport[];
90
+ /**
91
+ * `unplugin-auto-import` resolver for every `@vizejs/composable` export.
92
+ *
93
+ * Server/SSR: build-time only; reads the lockfile once in `local` mode.
94
+ *
95
+ * @example
96
+ * ```ts
97
+ * AutoImport({ resolvers: [VizeComposableResolver()] });
98
+ * // useToggle() -> import { useToggle } from "@vizejs/composable/use-toggle"
99
+ * ```
100
+ *
101
+ * @param options Filters and source mode.
102
+ * @default options {}
103
+ * @returns A name -> import resolver function.
104
+ */
105
+ declare function VizeComposableResolver(options?: VizeComposableResolverOptions): (name: string) => VizeComposableImport | undefined;
106
+ /**
107
+ * `unplugin-auto-import` `imports` preset: `{ "@vizejs/composable/use-toggle": ["useToggle"] }`.
108
+ *
109
+ * @param options Filters and source mode.
110
+ * @default options {}
111
+ * @returns Export names grouped by module.
112
+ */
113
+ declare function vizeComposableImports(options?: VizeComposableResolverOptions): Readonly<Record<string, readonly string[]>>;
114
+ /**
115
+ * Global declarations for auto-imported composables, for setups without a
116
+ * generator (Nuxt and `unplugin-auto-import` emit their own).
117
+ *
118
+ * @param options Filters and source mode.
119
+ * @default options {}
120
+ * @returns A `.d.ts` module declaring each export as a global.
121
+ */
122
+ declare function createVizeComposableDeclarations(options?: VizeComposableResolverOptions): string;
123
+ //#endregion
124
+ export { VIZE_COMPOSABLE_PACKAGE, VizeComposableEntry, VizeComposableImport, VizeComposableLockedItem, VizeComposableLockfile, VizeComposableResolver, VizeComposableResolverOptions, createVizeComposableDeclarations, listVizeComposableImports, readComposableLockfile, vizeComposableImports };
@@ -0,0 +1,138 @@
1
+ import { t as COMPOSABLE_CATALOG } from "./catalog-r4Z5nptX.mjs";
2
+ import { readFileSync } from "node:fs";
3
+ import path from "node:path";
4
+ //#region src/resolver.ts
5
+ /**
6
+ * Build-time auto-import resolver for `@vizejs/composable`, driven by the
7
+ * package catalog so every new entry is picked up automatically.
8
+ *
9
+ * Every export resolves to its own subpath (`@vizejs/composable/use-toggle`),
10
+ * so auto-imported code tree-shakes exactly like hand-written imports; this
11
+ * module runs in Node (Vite/Nuxt config) and never ships to the browser.
12
+ * With `source: "local"`, entries pulled by `vize lib pull` (recorded in
13
+ * `vize-lib.lock.json`) resolve to the local copies.
14
+ */
15
+ /** Package that owns the resolvable exports. */
16
+ const VIZE_COMPOSABLE_PACKAGE = "@vizejs/composable";
17
+ /** Subpaths that are tooling, not auto-importable runtime code. */
18
+ const NON_IMPORTABLE_SUBPATHS = new Set(["./catalog", "./resolver"]);
19
+ /** Export name -> owning entry, first catalog entry wins. */
20
+ function catalogExports() {
21
+ const exports = /* @__PURE__ */ new Map();
22
+ for (const entry of COMPOSABLE_CATALOG.entries) {
23
+ if (NON_IMPORTABLE_SUBPATHS.has(entry.subpath)) continue;
24
+ for (const name of entry.runtimeExports) if (!exports.has(name)) exports.set(name, {
25
+ entry: entry.subpath.slice(2),
26
+ source: entry.source.slice(4)
27
+ });
28
+ }
29
+ return exports;
30
+ }
31
+ function isLockfile(value) {
32
+ return typeof value === "object" && value !== null && "items" in value && Array.isArray(value.items) && value.items.every((item) => typeof item === "object" && item !== null && "name" in item && "kind" in item && "dir" in item && typeof item.name === "string" && typeof item.kind === "string" && typeof item.dir === "string");
33
+ }
34
+ /**
35
+ * Read and validate `vize-lib.lock.json`.
36
+ *
37
+ * @param file Absolute lockfile path.
38
+ * @returns The parsed lockfile.
39
+ * @throws {Error} `[VIZE_COMPOSE_RESOLVER_LOCKFILE]` when missing or malformed.
40
+ */
41
+ function readComposableLockfile(file) {
42
+ let parsed;
43
+ try {
44
+ parsed = JSON.parse(readFileSync(file, "utf8"));
45
+ } catch (error) {
46
+ throw new Error(`[VIZE_COMPOSE_RESOLVER_LOCKFILE] cannot read ${file}`, { cause: error });
47
+ }
48
+ if (!isLockfile(parsed)) throw new Error(`[VIZE_COMPOSE_RESOLVER_LOCKFILE] ${file} is not a vize lib lockfile`);
49
+ return parsed;
50
+ }
51
+ function createLocator(options) {
52
+ const include = options.include === void 0 ? void 0 : new Set(options.include);
53
+ const exclude = new Set(options.exclude ?? []);
54
+ const allowed = (entry) => (include === void 0 || include.has(entry)) && !exclude.has(entry);
55
+ if (options.source !== "local") return (item) => allowed(item.entry) ? `${VIZE_COMPOSABLE_PACKAGE}/${item.entry}` : void 0;
56
+ const root = options.root ?? process.cwd();
57
+ const lockfile = typeof options.lockfile === "object" ? options.lockfile : readComposableLockfile(path.resolve(root, options.lockfile ?? "vize-lib.lock.json"));
58
+ const pulled = new Map(lockfile.items.filter((item) => item.kind === "composable").map((item) => [item.name, item.dir]));
59
+ const fallback = options.fallback ?? true;
60
+ return (item) => {
61
+ if (!allowed(item.entry)) return void 0;
62
+ const dir = pulled.get(item.entry);
63
+ if (dir === void 0) return fallback ? `${VIZE_COMPOSABLE_PACKAGE}/${item.entry}` : void 0;
64
+ return path.resolve(root, dir, item.source).split(path.sep).join("/");
65
+ };
66
+ }
67
+ /**
68
+ * Every auto-importable export the options allow, with its direct subpath import.
69
+ *
70
+ * @param options Filters and source mode.
71
+ * @default options {}
72
+ * @returns Imports in catalog order.
73
+ */
74
+ function listVizeComposableImports(options = {}) {
75
+ const locate = createLocator(options);
76
+ const names = options.names === void 0 ? void 0 : new Set(options.names);
77
+ const imports = [];
78
+ for (const [name, item] of catalogExports()) {
79
+ if (names !== void 0 && !names.has(name)) continue;
80
+ const from = locate(item);
81
+ if (from !== void 0) imports.push({
82
+ name,
83
+ from
84
+ });
85
+ }
86
+ return imports;
87
+ }
88
+ /**
89
+ * `unplugin-auto-import` resolver for every `@vizejs/composable` export.
90
+ *
91
+ * Server/SSR: build-time only; reads the lockfile once in `local` mode.
92
+ *
93
+ * @example
94
+ * ```ts
95
+ * AutoImport({ resolvers: [VizeComposableResolver()] });
96
+ * // useToggle() -> import { useToggle } from "@vizejs/composable/use-toggle"
97
+ * ```
98
+ *
99
+ * @param options Filters and source mode.
100
+ * @default options {}
101
+ * @returns A name -> import resolver function.
102
+ */
103
+ function VizeComposableResolver(options = {}) {
104
+ const allowed = new Map(listVizeComposableImports(options).map((item) => [item.name, item]));
105
+ return (name) => allowed.get(name);
106
+ }
107
+ /**
108
+ * `unplugin-auto-import` `imports` preset: `{ "@vizejs/composable/use-toggle": ["useToggle"] }`.
109
+ *
110
+ * @param options Filters and source mode.
111
+ * @default options {}
112
+ * @returns Export names grouped by module.
113
+ */
114
+ function vizeComposableImports(options = {}) {
115
+ const grouped = {};
116
+ for (const { name, from } of listVizeComposableImports(options)) (grouped[from] ??= []).push(name);
117
+ return grouped;
118
+ }
119
+ /**
120
+ * Global declarations for auto-imported composables, for setups without a
121
+ * generator (Nuxt and `unplugin-auto-import` emit their own).
122
+ *
123
+ * @param options Filters and source mode.
124
+ * @default options {}
125
+ * @returns A `.d.ts` module declaring each export as a global.
126
+ */
127
+ function createVizeComposableDeclarations(options = {}) {
128
+ return [
129
+ "// Generated by @vizejs/composable/resolver. Do not edit.",
130
+ "export {};",
131
+ "declare global {",
132
+ ...listVizeComposableImports(options).map((item) => ` const ${item.name}: typeof import(${JSON.stringify(item.from)})["${item.name}"];`),
133
+ "}",
134
+ ""
135
+ ].join("\n");
136
+ }
137
+ //#endregion
138
+ export { VIZE_COMPOSABLE_PACKAGE, VizeComposableResolver, createVizeComposableDeclarations, listVizeComposableImports, readComposableLockfile, vizeComposableImports };
@@ -1,5 +1,5 @@
1
- import { TimeoutScheduler } from "./timeout-scheduler.mjs";
2
- import { RetryDelayOptions } from "./retry-delay.mjs";
1
+ import { t as TimeoutScheduler } from "./timeout-scheduler-CI8RVLZs.mjs";
2
+ import { t as RetryDelayOptions } from "./retry-delay-DYsdq4SE.mjs";
3
3
 
4
4
  //#region src/retry-async.d.ts
5
5
  /** Context supplied to every invocation of a retried operation. */
@@ -0,0 +1,73 @@
1
+ //#region src/retry-delay.d.ts
2
+ /** Options for {@link calculateRetryDelay}. */
3
+ interface RetryDelayOptions {
4
+ /**
5
+ * Delay before the first retry, in milliseconds.
6
+ *
7
+ * @default 100
8
+ */
9
+ readonly initialDelayMs?: number;
10
+ /**
11
+ * Exponential multiplier applied for each subsequent retry.
12
+ *
13
+ * Values may be fractional but must be finite and at least one. The
14
+ * calculated delay is rounded up so a retry never starts earlier than the
15
+ * requested backoff.
16
+ *
17
+ * @default 2
18
+ */
19
+ readonly multiplier?: number;
20
+ /**
21
+ * Inclusive ceiling for the calculated delay, in milliseconds.
22
+ *
23
+ * The ceiling may be lower than {@link RetryDelayOptions.initialDelayMs};
24
+ * in that case it also caps the first retry.
25
+ *
26
+ * @default 30000
27
+ */
28
+ readonly maximumDelayMs?: number;
29
+ /**
30
+ * Fraction of the capped delay eligible for downward jitter.
31
+ *
32
+ * `0` is deterministic exponential backoff, `0.5` samples from the upper
33
+ * half of the range, and `1` applies full jitter from zero through the
34
+ * capped delay. Jitter never exceeds the unjittered delay.
35
+ *
36
+ * @default 0
37
+ */
38
+ readonly jitterRatio?: number;
39
+ /**
40
+ * Entropy source returning a number in the half-open interval `[0, 1)`.
41
+ * It is called exactly once when the selected jitter range contains more
42
+ * than one integer millisecond, and is otherwise not read.
43
+ *
44
+ * @default Math.random
45
+ */
46
+ readonly random?: () => number;
47
+ }
48
+ /**
49
+ * Calculate a bounded exponential-backoff delay for a one-based retry.
50
+ *
51
+ * The first retry is `retryAttempt = 1`. The result is always an integer from
52
+ * zero through `2_147_483_647`, making it safe to pass to common host timer
53
+ * APIs without implementation-specific clamping. The calculation is pure
54
+ * unless jitter requires the supplied entropy source, and it performs no work
55
+ * when the module is imported.
56
+ *
57
+ * Jitter samples uniformly from the inclusive integer range
58
+ * `ceil(cappedDelay * (1 - jitterRatio))...cappedDelay`. Capping occurs before
59
+ * jitter, so neither floating-point overflow nor entropy can exceed the
60
+ * configured maximum.
61
+ *
62
+ * @param retryAttempt One-based retry number after a failed initial attempt.
63
+ * @param options Backoff, cap, jitter, and entropy configuration.
64
+ * @default options {}
65
+ * @throws {RangeError} A tagged error when the retry number, delay options, or
66
+ * entropy value is outside its documented range.
67
+ * @throws {TypeError} A tagged error when `options` is not an object or
68
+ * `random` is not callable.
69
+ * @returns An integer delay in milliseconds.
70
+ */
71
+ declare function calculateRetryDelay(retryAttempt: number, options?: RetryDelayOptions): number;
72
+ //#endregion
73
+ export { calculateRetryDelay as n, RetryDelayOptions as t };