@mkbabb/glass-ui 5.0.0 → 6.0.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 (470) hide show
  1. package/README.md +30 -27
  2. package/dist/DropdownMenuTrigger-BzQtd9lt.js +65 -0
  3. package/dist/{FadingScroll-BSRLqQCx.js → FadingScroll-C1ZWEjmG.js} +32 -25
  4. package/dist/{Input-DKf-XwUM.js → Input-B4WQ_CMc.js} +1 -1
  5. package/dist/{PagerDots-BP6jh7z4.js → PagerDots-BoTQ7g5l.js} +123 -95
  6. package/dist/{accent-tone-solve-CBw3L0cy.js → accent-tone-solve-Dii9ePhK.js} +1 -1
  7. package/dist/animated-digit.js +1 -1
  8. package/dist/aurora.js +324 -314
  9. package/dist/blob-config.d.ts +0 -4
  10. package/dist/blob-config.js +1 -1
  11. package/dist/blob.js +280 -261
  12. package/dist/{button-BXzhydVB.js → button-32mg6xA8.js} +63 -56
  13. package/dist/button.js +1 -1
  14. package/dist/canvas.js +1 -1
  15. package/dist/{CardAction-2uUvjMQK.js → card-16xmzIr3.js} +29 -11
  16. package/dist/card.js +1 -1
  17. package/dist/carousel.d.ts +1 -2
  18. package/dist/carousel.js +26 -95
  19. package/dist/chip.d.ts +0 -9
  20. package/dist/chip.js +1 -1
  21. package/dist/collapsible.js +1 -1
  22. package/dist/color-swatch.js +1 -0
  23. package/dist/color.js +87 -3
  24. package/dist/{CommandShortcut-fmdbsEJL.js → command-BjPjUU9z.js} +56 -51
  25. package/dist/command.js +1 -1
  26. package/dist/completion-seal.js +64 -55
  27. package/dist/components/_shared/ModalOverlay.vue.d.ts +5 -52
  28. package/dist/components/_shared/field-surfaces.css +1 -0
  29. package/dist/components/_shared/menuItemVariants.d.ts +2 -2
  30. package/dist/components/_shared/useMotionAxis.d.ts +2 -2
  31. package/dist/components/_shared/valueDomain.d.ts +6 -0
  32. package/dist/components/alert/index.d.ts +1 -1
  33. package/dist/components/animated-digit/AnimatedDigit.vue.d.ts +1 -1
  34. package/dist/components/aurora/Aurora.vue.d.ts +7 -1
  35. package/dist/components/aurora/composables/runtime.d.ts +5 -3
  36. package/dist/components/aurora/composables/useAurora.d.ts +4 -2
  37. package/dist/components/avatar/AvatarImage.vue.d.ts +3 -1
  38. package/dist/components/badge/index.d.ts +2 -2
  39. package/dist/components/blob/Blob.vue.d.ts +11 -0
  40. package/dist/components/blob/composables/useMetaballRenderer.d.ts +2 -0
  41. package/dist/components/button/Button.vue.d.ts +4 -2
  42. package/dist/components/button/index.d.ts +2 -2
  43. package/dist/components/card/Card.vue.d.ts +4 -4
  44. package/dist/components/card/ScrollCard.vue.d.ts +1 -1
  45. package/dist/components/card/styles.css +1 -0
  46. package/dist/components/carousel/Carousel.vue.d.ts +2 -2
  47. package/dist/components/carousel/CarouselNext.vue.d.ts +1 -1
  48. package/dist/components/carousel/CarouselPrevious.vue.d.ts +1 -1
  49. package/dist/components/carousel/index.d.ts +0 -1
  50. package/dist/components/carousel/useCarousel.d.ts +2 -2
  51. package/dist/components/combobox/ComboboxList.vue.d.ts +1 -1
  52. package/dist/components/combobox/index.d.ts +1 -3
  53. package/dist/components/command/Command.vue.d.ts +1 -1
  54. package/dist/components/command/CommandDialog.vue.d.ts +9 -6
  55. package/dist/components/completion-seal/styles.css +1 -0
  56. package/dist/components/constellation/Constellation.vue.d.ts +6 -1
  57. package/dist/components/constellation/composables/useConstellation.d.ts +3 -16
  58. package/dist/components/constellation/constants.d.ts +6 -16
  59. package/dist/components/constellation/constellationField.d.ts +3 -5
  60. package/dist/components/constellation/constellationInteraction.d.ts +1 -1
  61. package/dist/components/constellation/constellationRender.d.ts +11 -21
  62. package/dist/components/constellation/constellationTypes.d.ts +12 -9
  63. package/dist/components/constellation/index.d.ts +1 -1
  64. package/dist/components/controls/DarkModeToggle.vue.d.ts +0 -2
  65. package/dist/components/data-table/DataTable.vue.d.ts +14 -2
  66. package/dist/components/data-table/index.d.ts +1 -2
  67. package/dist/components/data-table/types.d.ts +26 -1
  68. package/dist/components/deck/constants.d.ts +0 -10
  69. package/dist/components/deck/index.d.ts +0 -1
  70. package/dist/components/dialog/DialogContent.vue.d.ts +7 -1
  71. package/dist/components/dialog/index.d.ts +0 -1
  72. package/dist/components/dock/DockControl.vue.d.ts +4 -4
  73. package/dist/components/dock/DockStack.vue.d.ts +2 -2
  74. package/dist/components/dock/GlassDock.vue.d.ts +1 -0
  75. package/dist/components/dock/composables/dockMorphContext.d.ts +2 -0
  76. package/dist/components/dock/composables/dockMorphMeasure.d.ts +11 -1
  77. package/dist/components/dock/composables/useDockClickIntegrity.d.ts +4 -0
  78. package/dist/components/dock/composables/useDockOverflowFit.d.ts +3 -3
  79. package/dist/components/dock/composables/useDockPopover.d.ts +2 -0
  80. package/dist/components/dock/composables/useDockShellProps.d.ts +7 -0
  81. package/dist/components/dock/composables/useDockState.d.ts +2 -2
  82. package/dist/components/dock/constants.d.ts +0 -12
  83. package/dist/components/dock/index.d.ts +1 -0
  84. package/dist/components/dock/styles/adaptive-legibility.css +1 -0
  85. package/dist/components/dock/styles/controls/icon-button.css +1 -0
  86. package/dist/{styles/dock-controls → components/dock/styles/controls}/touch-floor.css +1 -1
  87. package/dist/components/dock/styles/controls.css +1 -0
  88. package/dist/{styles/dock → components/dock/styles}/density.css +1 -1
  89. package/dist/components/dock/styles/dock.css +1 -0
  90. package/dist/components/dock/styles/index.css +1 -0
  91. package/dist/components/dock/styles/layer-group.css +1 -0
  92. package/dist/components/dock/styles/layers.css +1 -0
  93. package/dist/components/dock/styles/overflow.css +1 -0
  94. package/dist/components/dock/styles/popover.css +1 -0
  95. package/dist/components/dock/styles/shape.css +1 -0
  96. package/dist/components/dock/styles/shell.css +1 -0
  97. package/dist/components/drawer/Drawer.vue.d.ts +3 -3
  98. package/dist/components/drawer/composables/drawerSnapContext.d.ts +3 -1
  99. package/dist/components/drawer/constants.d.ts +6 -6
  100. package/dist/components/drawer/index.d.ts +4 -6
  101. package/dist/components/drawer/styles.css +1 -0
  102. package/dist/components/dropdown-menu/DropdownMenuContent.vue.d.ts +1 -1
  103. package/dist/components/dropdown-menu/DropdownMenuTrigger.vue.d.ts +9 -3
  104. package/dist/components/dropdown-menu/index.d.ts +0 -1
  105. package/dist/components/easing/EasingConfigurator.vue.d.ts +1 -1
  106. package/dist/components/easing/EasingPicker.vue.d.ts +2 -2
  107. package/dist/components/easing/composables/useEasingPicker.d.ts +4 -0
  108. package/dist/components/easing/constants.d.ts +2 -0
  109. package/dist/components/fading-scroll/composables/useFadingScroll.d.ts +3 -3
  110. package/dist/components/fourier-field/FourierField.vue.d.ts +7 -1
  111. package/dist/components/fourier-field/composables/useFourierField.d.ts +2 -1
  112. package/dist/components/handmark/HandMark.vue.d.ts +1 -1
  113. package/dist/components/handmark/geometry.d.ts +1 -1
  114. package/dist/components/handmark/index.d.ts +4 -6
  115. package/dist/components/icon-chip/styles.css +1 -0
  116. package/dist/components/index.d.ts +0 -1
  117. package/dist/components/infinite-scroll/index.d.ts +1 -0
  118. package/dist/components/instrument-chassis/styles.css +1 -0
  119. package/dist/components/labeled-field/LabeledField.vue.d.ts +12 -2
  120. package/dist/components/labeled-field/LabeledInput.vue.d.ts +10 -3
  121. package/dist/components/liquid-grid/LiquidGrid.vue.d.ts +4 -0
  122. package/dist/components/liquid-grid/composables/useLiquidGrid.d.ts +2 -1
  123. package/dist/components/metric-stack/MetricStack.vue.d.ts +1 -1
  124. package/dist/components/pager-dots/PagerDots.vue.d.ts +1 -1
  125. package/dist/components/popover/PopoverContent.vue.d.ts +1 -1
  126. package/dist/components/progress/Progress.vue.d.ts +5 -40
  127. package/dist/components/progress/ProgressDefault.vue.d.ts +1 -17
  128. package/dist/components/progress/ProgressGradient.vue.d.ts +1 -0
  129. package/dist/components/progress/ProgressLiquid.vue.d.ts +1 -0
  130. package/dist/components/progress/index.d.ts +0 -5
  131. package/dist/components/progress/valueMarks.css +1 -0
  132. package/dist/components/pulse/Pulse.vue.d.ts +2 -2
  133. package/dist/components/scroll-progress-rim/styles.css +1 -0
  134. package/dist/components/search/FuzzySearch.vue.d.ts +4 -2
  135. package/dist/components/search/SearchBar.vue.d.ts +2 -2
  136. package/dist/components/search/searchVariants.d.ts +1 -1
  137. package/dist/components/select/SelectContent.vue.d.ts +1 -1
  138. package/dist/components/select/index.d.ts +0 -2
  139. package/dist/components/skeleton/Skeleton.vue.d.ts +1 -1
  140. package/dist/components/slider/Slider.vue.d.ts +2 -0
  141. package/dist/components/split-chars/SplitChars.vue.d.ts +1 -1
  142. package/dist/components/surface/Surface.vue.d.ts +1 -1
  143. package/dist/components/table/Table.vue.d.ts +4 -0
  144. package/dist/components/tabs/SegmentedTabs.vue.d.ts +10 -0
  145. package/dist/components/tabs/index.d.ts +1 -1
  146. package/dist/components/tabs/styles/drag.css +1 -0
  147. package/dist/components/tags-input/TagsInput.vue.d.ts +2 -2
  148. package/dist/components/timeline/ContinuousTimeline.vue.d.ts +1 -1
  149. package/dist/components/timeline/GlassTimeline.vue.d.ts +4 -4
  150. package/dist/components/toast/Toast.vue.d.ts +3 -3
  151. package/dist/components/toast/use-toast.d.ts +4 -4
  152. package/dist/components/typewriter/TypewriterText.vue.d.ts +1 -4
  153. package/dist/components/typewriter/composables/useTypewriter.d.ts +0 -1
  154. package/dist/components/typewriter/utils/graphemes.d.ts +1 -0
  155. package/dist/components/watercolor-dot/WatercolorDot.vue.d.ts +2 -2
  156. package/dist/composables/glass/useGlassBackdropLuminance.d.ts +31 -0
  157. package/dist/composables/glass/webgpu/rendererStatus.d.ts +13 -0
  158. package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +3 -0
  159. package/dist/composables/glass/webgpu/webgpuCanvasTypes.d.ts +2 -0
  160. package/dist/composables/motion/springProjection.d.ts +16 -0
  161. package/dist/composables/motion/useAnimatedNumber.d.ts +1 -6
  162. package/dist/composables/motion/useCountup.d.ts +1 -6
  163. package/dist/composables/motion/useDockCtaReceive.d.ts +55 -0
  164. package/dist/composables/motion/useElementMorph.d.ts +8 -0
  165. package/dist/composables/motion/useLiquidPress.d.ts +12 -4
  166. package/dist/composables/motion/useNumericTransition.d.ts +2 -0
  167. package/dist/composables/motion/useTextHighlight.d.ts +2 -1
  168. package/dist/configurator-CSENXXSy.js +311 -0
  169. package/dist/configurator.js +2 -3
  170. package/dist/constellation.js +235 -571
  171. package/dist/controls.js +55 -63
  172. package/dist/{createCanvasLifecycle-DlrcvWbb.js → createCanvasLifecycle-hsFkQVdl.js} +32 -32
  173. package/dist/dark-DIH-blY1.js +70 -0
  174. package/dist/dark.d.ts +1 -2
  175. package/dist/dark.js +2 -20
  176. package/dist/{DataTable-Bxya8nBn.js → data-table-DveMdgBM.js} +231 -120
  177. package/dist/data-table.js +2 -2
  178. package/dist/deck.js +10 -21
  179. package/dist/dialog-BzQxKrUr.js +281 -0
  180. package/dist/dialog.js +2 -3
  181. package/dist/dock.js +561 -428
  182. package/dist/{dockContext-d-WpJN2Z.js → dockContext-4S9qP0Z4.js} +1 -1
  183. package/dist/dom.js +196 -7
  184. package/dist/drawer.js +111 -66
  185. package/dist/dropdown-menu-DORIA52F.js +378 -0
  186. package/dist/dropdown-menu.js +3 -2
  187. package/dist/easing.d.ts +0 -9
  188. package/dist/easing.js +334 -187
  189. package/dist/expandable-container.js +12 -4
  190. package/dist/fading-scroll.js +1 -1
  191. package/dist/focus-scope.js +1 -1
  192. package/dist/forms.js +37 -78
  193. package/dist/fourier-field.js +273 -263
  194. package/dist/fourier-math.d.ts +0 -6
  195. package/dist/fourier-math.js +112 -2
  196. package/dist/glass-ui.css +1 -1
  197. package/dist/glass-ui.js +131 -195
  198. package/dist/handmark.d.ts +0 -2
  199. package/dist/handmark.js +82 -82
  200. package/dist/header-ribbon.js +41 -30
  201. package/dist/{IconChip-CwLmBJ_K.js → icon-chip-BWuxz1-u.js} +1 -1
  202. package/dist/icon-chip.js +1 -1
  203. package/dist/{IconTooltip-D9sbK-Mk.js → icon-tooltip-CO6rw0dZ.js} +1 -1
  204. package/dist/icon-tooltip.js +1 -1
  205. package/dist/index.d.ts +0 -1
  206. package/dist/infinite-scroll.d.ts +0 -1
  207. package/dist/infinite-scroll.js +17 -15
  208. package/dist/instrument-chassis.js +1 -1
  209. package/dist/keyboard.js +104 -2
  210. package/dist/label.js +1 -1
  211. package/dist/labeled-field.js +95 -69
  212. package/dist/liquid-grid.js +173 -162
  213. package/dist/metric-badge.js +3 -3
  214. package/dist/metric-cell.js +2 -2
  215. package/dist/metric-stack.js +1 -1
  216. package/dist/motion-core.js +15 -16
  217. package/dist/motion-curves.d.ts +0 -20
  218. package/dist/motion.js +59 -58
  219. package/dist/{Notification-DQv2cOh9.js → notification-DVs7ODMg.js} +17 -8
  220. package/dist/notification.js +1 -1
  221. package/dist/{NumberFieldContent-BkE7xPS9.js → number-field-PvkGedHk.js} +2 -2
  222. package/dist/number-field.js +1 -1
  223. package/dist/pager-dots.js +1 -1
  224. package/dist/paper-backdrop.js +31 -2
  225. package/dist/{PopoverContent-DOtszFWK.js → popover-WMgyRSyN.js} +7 -2
  226. package/dist/popover.js +1 -1
  227. package/dist/procedural-color.wgsl-B9mLK7v0.js +377 -0
  228. package/dist/progress-C-HHuFZy.js +192 -0
  229. package/dist/progress.js +2 -2
  230. package/dist/pulse.js +3 -1
  231. package/dist/reactive.js +19 -3
  232. package/dist/rendererStatus-C2-zC2Q-.js +40 -0
  233. package/dist/{resolveCanvasColor-B3L-akX0.js → resolveCanvasColor-yarP5bdk.js} +1 -1
  234. package/dist/scroll-progress-rim.js +1 -1
  235. package/dist/search.js +187 -146
  236. package/dist/{SelectScrollDownButton-CDtwaWkZ.js → select-BIv4R3Ir.js} +109 -44
  237. package/dist/select.js +2 -4
  238. package/dist/separator-CBU94kTM.js +62 -0
  239. package/dist/separator.js +1 -1
  240. package/dist/sidebar.js +1 -1
  241. package/dist/slider-Cc_qw6GA.js +166 -0
  242. package/dist/slider.js +1 -1
  243. package/dist/sortable-list.js +43 -43
  244. package/dist/styles/accessibility.css +1 -0
  245. package/dist/styles/components.css +1 -1
  246. package/dist/styles/glass/control-surfaces.css +1 -1
  247. package/dist/styles/glass/glass-capsule.css +1 -1
  248. package/dist/styles/glass/ladder.css +1 -1
  249. package/dist/styles/glass/liquid-fill.css +1 -1
  250. package/dist/styles/glass/material-roles.css +1 -0
  251. package/dist/styles/glass/material.css +1 -1
  252. package/dist/styles/glass/surface-axis.css +1 -1
  253. package/dist/styles/glass/surfaces-pager.css +1 -1
  254. package/dist/styles/glass/surfaces.css +1 -1
  255. package/dist/styles/glass.css +1 -1
  256. package/dist/styles/index.css +1 -1
  257. package/dist/styles/theme/bridges.css +1 -1
  258. package/dist/styles/tokens/glass-fx.css +1 -1
  259. package/dist/styles/tokens/glass.css +1 -1
  260. package/dist/styles/tokens/offsets.css +1 -1
  261. package/dist/styles/tokens/scale-paper.css +1 -1
  262. package/dist/styles/tokens/scheme-spring.css +1 -1
  263. package/dist/styles/tokens/shadow.css +1 -1
  264. package/dist/styles/tokens.d.ts +53 -0
  265. package/dist/styles/tokens.ts +58 -0
  266. package/dist/styles/typography/scale.css +1 -1
  267. package/dist/styles/typography/semantic.css +1 -1
  268. package/dist/styles/typography/utilities.css +1 -1
  269. package/dist/styles/utilities/base.css +1 -1
  270. package/dist/styles/utilities/btn.css +1 -1
  271. package/dist/styles/utilities/components.css +1 -1
  272. package/dist/styles/utilities.css +1 -1
  273. package/dist/{Switch-BPBfhMU3.js → switch-Boj4Ucn5.js} +1 -1
  274. package/dist/switch.js +1 -1
  275. package/dist/tabs.js +51 -45
  276. package/dist/timeline.js +2 -2
  277. package/dist/toast.js +1 -1
  278. package/dist/{ToggleGroupItem-DNWx2aSW.js → toggle-group-BPchFsns.js} +10 -7
  279. package/dist/toggle-group.js +1 -1
  280. package/dist/tokens.d.ts +1 -53
  281. package/dist/tokens.js +1 -1
  282. package/dist/{TooltipProvider-GtfYdSVf.js → tooltip-BmOQJzh0.js} +1 -0
  283. package/dist/tooltip.js +1 -1
  284. package/dist/typewriter.js +151 -166
  285. package/dist/{useAccentTone-D25DxviG.js → useAccentTone-C-p6WdPe.js} +1 -1
  286. package/dist/{useAnimatedNumber-2XC4aRB6.js → useAnimatedNumber-BRVVaFFc.js} +1 -1
  287. package/dist/useDockCtaReceive-CK-RLASa.js +257 -0
  288. package/dist/{useGooMorph-CU1pwuC6.js → useGooMorph-D1F6QJlH.js} +140 -59
  289. package/dist/{useIntersectionPause-Cmt5Tnv9.js → useIntersectionPause-B-dbxl9w.js} +1 -1
  290. package/dist/useLiquidPress-BYcwwGQV.js +68 -0
  291. package/dist/{useRAFLoop-CvOo_kgb.js → useRAFLoop-BtwQ9DyY.js} +1 -1
  292. package/dist/{useScrollProgress-C-yImzhU.js → useScrollProgress-DZI4nf4v.js} +1 -1
  293. package/dist/{useSelectionGroup-Btpf24aY.js → useSelectionGroup-LDzBdR1Y.js} +3 -3
  294. package/dist/{useTabRovingFocus-CG1H1k1J.js → useTabRovingFocus-DkLYwo4L.js} +1 -1
  295. package/dist/{useTouchGate-BlegwvwL.js → useTouchGate-Cj5fOkTv.js} +1 -1
  296. package/dist/valueDomain-B8L04u3U.js +13 -0
  297. package/dist/watercolor-dot.js +5 -3
  298. package/package.json +5 -12
  299. package/src/styles/accessibility.css +48 -0
  300. package/src/styles/glass/glass-capsule.css +2 -2
  301. package/src/styles/glass/ladder.css +1 -1
  302. package/src/styles/glass/material-roles.css +18 -0
  303. package/src/styles/glass/material.css +18 -12
  304. package/src/styles/glass.css +5 -5
  305. package/src/styles/index.css +38 -30
  306. package/src/styles/theme/bridges.css +0 -6
  307. package/src/styles/tokens/glass-fx.css +1 -5
  308. package/src/styles/tokens/glass.css +1 -2
  309. package/src/styles/tokens/offsets.css +0 -1
  310. package/src/styles/tokens/property-regs.css +11 -10
  311. package/src/styles/tokens/scale-paper.css +0 -1
  312. package/src/styles/tokens/scheme-motion.css +3 -0
  313. package/src/styles/tokens/scheme-spring.css +0 -10
  314. package/src/styles/tokens/shadow.css +3 -29
  315. package/src/styles/tokens.ts +58 -0
  316. package/src/styles/typography/scale.css +5 -2
  317. package/src/styles/typography/semantic.css +5 -5
  318. package/src/styles/typography/utilities.css +5 -5
  319. package/src/styles/utilities/base.css +5 -5
  320. package/src/styles/utilities/btn.css +6 -27
  321. package/src/styles/utilities.css +4 -6
  322. package/dist/ConfiguratorRow-BV6zPjTM.js +0 -151
  323. package/dist/DialogContent-Bl4v10AC.js +0 -192
  324. package/dist/DialogFooter-C0v4Hz2F.js +0 -168
  325. package/dist/PaperBackdrop-BYwE8_kg.js +0 -31
  326. package/dist/Progress-uWLyXE7J.js +0 -308
  327. package/dist/SelectGroup-BuEptUsa.js +0 -31
  328. package/dist/SelectSeparator-4QGephvr.js +0 -49
  329. package/dist/Separator-DqJ6PfOd.js +0 -44
  330. package/dist/color-Bp5jmv4Z.js +0 -86
  331. package/dist/components/carousel/GlassCarouselPager.vue.d.ts +0 -50
  332. package/dist/components/combobox/ComboboxSeparator.vue.d.ts +0 -18
  333. package/dist/components/combobox/ComboboxViewport.vue.d.ts +0 -18
  334. package/dist/components/constellation/composables/constellationGLSetup.d.ts +0 -10
  335. package/dist/components/constellation/composables/constellationWGPUSetup.d.ts +0 -19
  336. package/dist/components/constellation/composables/uniformBridgeWGPU.d.ts +0 -66
  337. package/dist/components/constellation/shaders/constellation-lines.glsl.d.ts +0 -2
  338. package/dist/components/constellation/shaders/constellation-lines.wgsl.d.ts +0 -1
  339. package/dist/components/constellation/shaders/constellation-points.glsl.d.ts +0 -2
  340. package/dist/components/constellation/shaders/constellation-points.wgsl.d.ts +0 -1
  341. package/dist/components/deck/composables/useDeckSpring.d.ts +0 -22
  342. package/dist/components/dialog/DialogScrollContent.vue.d.ts +0 -33
  343. package/dist/components/progress/ProgressSectioned.vue.d.ts +0 -47
  344. package/dist/components/progress/useProgressGeometry.d.ts +0 -60
  345. package/dist/components/section/Section.vue.d.ts +0 -73
  346. package/dist/components/section/index.d.ts +0 -1
  347. package/dist/components/stacked-icons/StackedIconGroup.vue.d.ts +0 -30
  348. package/dist/components/stacked-icons/index.d.ts +0 -2
  349. package/dist/components/stacked-icons/types.d.ts +0 -19
  350. package/dist/dropdown-menu-DaGlVdp9.js +0 -421
  351. package/dist/math-CIEcwsYi.js +0 -112
  352. package/dist/procedural-color.wgsl-ByduxnzV.js +0 -4
  353. package/dist/slider-Cxuj_W_H.js +0 -151
  354. package/dist/stacked-icons.d.ts +0 -1
  355. package/dist/stacked-icons.js +0 -98
  356. package/dist/styles/cards.css +0 -1
  357. package/dist/styles/completion-seal.css +0 -1
  358. package/dist/styles/dock/adaptive-legibility.css +0 -1
  359. package/dist/styles/dock/dock.css +0 -1
  360. package/dist/styles/dock/layer-group.css +0 -1
  361. package/dist/styles/dock/layers.css +0 -1
  362. package/dist/styles/dock/overflow.css +0 -1
  363. package/dist/styles/dock/popover.css +0 -1
  364. package/dist/styles/dock/shape.css +0 -1
  365. package/dist/styles/dock/shell.css +0 -1
  366. package/dist/styles/dock-controls/icon-button.css +0 -1
  367. package/dist/styles/dock-controls.css +0 -1
  368. package/dist/styles/dock.css +0 -1
  369. package/dist/styles/drawer.css +0 -1
  370. package/dist/styles/icon-chip.css +0 -1
  371. package/dist/styles/instrument-chassis.css +0 -1
  372. package/dist/styles/scroll-progress-rim.css +0 -1
  373. package/dist/styles/select.css +0 -1
  374. package/dist/styles/tabs/segmented-tabs-drag.css +0 -1
  375. package/dist/styles/utilities/animate.css +0 -0
  376. package/dist/useConfiguratorState-Dq35N_7t.js +0 -167
  377. package/dist/useDockCtaReceive-BgMmeINo.js +0 -161
  378. package/dist/useGlobalDark-DjKMEQE2.js +0 -53
  379. package/dist/useGpuSubstrate-DcY584kE.js +0 -347
  380. package/dist/useInterval-ZATRi-1T.js +0 -18
  381. package/dist/useKeyboardShortcuts-ynVmNFo3.js +0 -104
  382. package/dist/useLiquidPress-BXNHydZh.js +0 -40
  383. package/dist/useTextHighlight-C46Le9u_.js +0 -72
  384. package/dist/useViewportReady-c0isoKL8.js +0 -191
  385. package/src/styles/card-scroll.css +0 -189
  386. package/src/styles/cards.css +0 -485
  387. package/src/styles/completion-seal.css +0 -205
  388. package/src/styles/configurator.css +0 -359
  389. package/src/styles/dialog-placement.css +0 -68
  390. package/src/styles/dock/adaptive-legibility.css +0 -119
  391. package/src/styles/dock/crossfade.css +0 -139
  392. package/src/styles/dock/cta-seat.css +0 -87
  393. package/src/styles/dock/density.css +0 -458
  394. package/src/styles/dock/dock.css +0 -199
  395. package/src/styles/dock/fisheye.css +0 -81
  396. package/src/styles/dock/layer-group.css +0 -329
  397. package/src/styles/dock/layers.css +0 -438
  398. package/src/styles/dock/morph.css +0 -455
  399. package/src/styles/dock/overflow.css +0 -332
  400. package/src/styles/dock/popover.css +0 -249
  401. package/src/styles/dock/search.css +0 -68
  402. package/src/styles/dock/section.css +0 -59
  403. package/src/styles/dock/shape.css +0 -188
  404. package/src/styles/dock/shell-regions.css +0 -73
  405. package/src/styles/dock/shell.css +0 -500
  406. package/src/styles/dock-controls/dark-mode-toggle.css +0 -123
  407. package/src/styles/dock-controls/icon-button.css +0 -221
  408. package/src/styles/dock-controls/tab-button.css +0 -143
  409. package/src/styles/dock-controls/touch-floor.css +0 -119
  410. package/src/styles/dock-controls/triggers.css +0 -157
  411. package/src/styles/dock-controls.css +0 -92
  412. package/src/styles/dock.css +0 -219
  413. package/src/styles/drawer.css +0 -434
  414. package/src/styles/feedback-tone.css +0 -104
  415. package/src/styles/icon-chip.css +0 -256
  416. package/src/styles/instrument-chassis.css +0 -449
  417. package/src/styles/menu.css +0 -187
  418. package/src/styles/scroll-progress-rim.css +0 -87
  419. package/src/styles/segmented-tabs.css +0 -424
  420. package/src/styles/select.css +0 -201
  421. package/src/styles/tabs/segmented-tabs-drag.css +0 -200
  422. package/src/styles/utilities/animate.css +0 -29
  423. /package/dist/{coalesce-metric-B8o7zT9u.js → coalesce-metric-znAcLzkB.js} +0 -0
  424. /package/dist/{CollapsibleContent-DiHcB_HH.js → collapsible-bPzS1aQk.js} +0 -0
  425. /package/dist/{compile-C55K3P9g.js → compile-DK3Fri1B.js} +0 -0
  426. /package/dist/{styles → components/_shared}/feedback-tone.css +0 -0
  427. /package/dist/{styles → components/_shared}/menu.css +0 -0
  428. /package/dist/{styles → components/card}/card-scroll.css +0 -0
  429. /package/dist/{styles/configurator.css → components/configurator/styles.css} +0 -0
  430. /package/dist/{styles/dock-controls → components/controls}/dark-mode-toggle.css +0 -0
  431. /package/dist/{styles/dialog-placement.css → components/dialog/placement.css} +0 -0
  432. /package/dist/{styles/dock-controls → components/dock/styles/controls}/tab-button.css +0 -0
  433. /package/dist/{styles/dock-controls → components/dock/styles/controls}/triggers.css +0 -0
  434. /package/dist/{styles/dock → components/dock/styles}/crossfade.css +0 -0
  435. /package/dist/{styles/dock → components/dock/styles}/cta-seat.css +0 -0
  436. /package/dist/{styles/dock → components/dock/styles}/fisheye.css +0 -0
  437. /package/dist/{styles/dock → components/dock/styles}/morph.css +0 -0
  438. /package/dist/{styles/dock → components/dock/styles}/search.css +0 -0
  439. /package/dist/{styles/dock → components/dock/styles}/section.css +0 -0
  440. /package/dist/{styles/dock → components/dock/styles}/shell-regions.css +0 -0
  441. /package/dist/{styles/segmented-tabs.css → components/tabs/styles/segmented.css} +0 -0
  442. /package/dist/{constants-D8lSMkOz.js → constants-DRZmNIY-.js} +0 -0
  443. /package/dist/{createContext-BQ1Gy_LB.js → createContext-FU0n5MGK.js} +0 -0
  444. /package/dist/{flow.glsl-CVqPSj8_.js → flow.glsl-DEGFGE11.js} +0 -0
  445. /package/dist/{FocusScope-BzKwhsBn.js → focus-scope-DUTKveod.js} +0 -0
  446. /package/dist/{InstrumentChassis-Dss5Tjcm.js → instrument-chassis-Cvstg4_U.js} +0 -0
  447. /package/dist/{Label-C84TaQiw.js → label-Cj38tJKG.js} +0 -0
  448. /package/dist/{menuItemVariants-DbO-Fr74.js → menuItemVariants-D6AOzzND.js} +0 -0
  449. /package/dist/{pointerFieldMappings-4VtmkOWv.js → pointerFieldMappings-CZojkgKj.js} +0 -0
  450. /package/dist/{presets-B07HzyKd.js → presets-CxeNvxuO.js} +0 -0
  451. /package/dist/{prng-B0PLRmR6.js → prng-Dz2_9RJu.js} +0 -0
  452. /package/dist/{scrollReader-DzYqPQ6V.js → scrollReader-C2oK9Hb8.js} +0 -0
  453. /package/dist/{supportsCssTimeline-Ie4xJFbD.js → supportsCssTimeline-Dz-GVxXM.js} +0 -0
  454. /package/dist/{Toaster-C_-WeU9W.js → toast-kAbchIN2.js} +0 -0
  455. /package/dist/{useControlSize-DJwe-7ZQ.js → useControlSize-CFfOk8I-.js} +0 -0
  456. /package/dist/{useDocumentVisibility-CpJGUgcJ.js → useDocumentVisibility-YeBDGqtI.js} +0 -0
  457. /package/dist/{useDragMorph-65ihHePq.js → useDragMorph-7ygF9O0m.js} +0 -0
  458. /package/dist/{useDragVelocity-BWcNMCux.js → useDragVelocity-CbMZEBaC.js} +0 -0
  459. /package/dist/{useFuzzySearch-KslRxiJY.js → useFuzzySearch-BOgep7RE.js} +0 -0
  460. /package/dist/{useLeadTrail-DOH4XkL1.js → useLeadTrail-BYu8dq4G.js} +0 -0
  461. /package/dist/{usePointerVelocityField-CwXyeW0Z.js → usePointerVelocityField-BdvnO0py.js} +0 -0
  462. /package/dist/{useResizeObserver-DDuoBeBo.js → useResizeObserver-BcUTquV7.js} +0 -0
  463. /package/dist/{useResolveTokenColor-DVT5kwv6.js → useResolveTokenColor-C07e-qaT.js} +0 -0
  464. /package/dist/{useRoutePointer-DL7I0gY4.js → useRoutePointer-BDNMFN73.js} +0 -0
  465. /package/dist/{useSpringMount-CNvvgGiC.js → useSpringMount-C6-DBx4e.js} +0 -0
  466. /package/dist/{useTimer-CkDV8SC2.js → useTimer-D8koDvJS.js} +0 -0
  467. /package/dist/{useUserInvalidAria-Bkruei7M.js → useUserInvalidAria-Cr4nR3tu.js} +0 -0
  468. /package/dist/{vReveal-DUmiEkX_.js → vReveal-DZfWl9XI.js} +0 -0
  469. /package/dist/{vSpecular-DlYN0UZy.js → vSpecular-CQFmLNzA.js} +0 -0
  470. /package/dist/{writeVelocityWeight-D1rvdxJu.js → writeVelocityWeight-D_AcvTsE.js} +0 -0
package/dist/easing.js CHANGED
@@ -1,97 +1,112 @@
1
- import { a as e, i as t, o as n, r, s as i } from "./SelectScrollDownButton-CDtwaWkZ.js";
2
- import { n as a } from "./slider-Cxuj_W_H.js";
3
- import { n as o, t as s } from "./ConfiguratorRow-BV6zPjTM.js";
4
- import { Fragment as c, computed as l, createBlock as u, createCommentVNode as d, createElementBlock as f, createElementVNode as p, createTextVNode as m, createVNode as h, defineComponent as g, mergeModels as _, onUnmounted as v, openBlock as y, ref as b, renderList as x, renderSlot as ee, toDisplayString as S, unref as C, useModel as w, useTemplateRef as te, watch as T, withCtx as E } from "vue";
5
- import { Check as ne, Copy as re } from "@lucide/vue";
6
- import { CSSCubicBezier as D, bezierPresets as O, jumpTerms as k, parseSteps as A, steppedEase as j } from "@mkbabb/value.js";
1
+ import { n as e } from "./button-32mg6xA8.js";
2
+ import { a as t, c as n, o as r, r as i, s as a } from "./select-BIv4R3Ir.js";
3
+ import { n as o } from "./slider-Cc_qw6GA.js";
4
+ import { n as s, r as c } from "./configurator-CSENXXSy.js";
5
+ import { Fragment as l, computed as u, createBlock as d, createCommentVNode as f, createElementBlock as p, createElementVNode as m, createTextVNode as h, createVNode as g, defineComponent as _, mergeModels as v, normalizeClass as y, onScopeDispose as ee, onUnmounted as b, openBlock as x, ref as S, renderList as C, renderSlot as w, toDisplayString as T, unref as E, useId as D, useModel as O, useTemplateRef as te, watch as ne, withCtx as k } from "vue";
6
+ import { Check as re, Copy as ie, LoaderCircle as ae, Play as oe, RotateCcw as se, Square as ce } from "@lucide/vue";
7
+ import { CSSCubicBezier as A, bezierPresets as j, jumpTerms as le, parseSteps as M, steppedEase as N } from "@mkbabb/value.js";
7
8
  //#region src/components/easing/constants.ts
8
- var M = "custom", N = "ease-out-back", P = (e) => 1 - e, F = .1, I = .6, ie = .1, ae = .15, L = 1200, oe = 1400, R = Object.keys(O);
9
- function z(e = {}) {
10
- let t = b(e.initialMode ?? "bezier"), n = b(e.initialPreset ?? "ease-out-back"), r = b([...O[n.value in O ? n.value : N]]);
9
+ var P = "custom", ue = "ease-out-back", F = (e) => 1 - e, I = .1, L = .6, de = .1, fe = .15, R = 1200, pe = 1400, me = 2e3, z = Object.keys(j);
10
+ function B(e = {}) {
11
+ let t = S(e.initialMode ?? "bezier"), n = S(e.initialPreset ?? "ease-out-back"), r = S([...j[n.value in j ? n.value : ue]]);
11
12
  function i(e) {
12
13
  n.value = e;
13
- let t = O[e];
14
+ let t = j[e];
14
15
  t && (r.value = [...t]);
15
16
  }
16
17
  function a(e, t, i) {
17
- let a = Math.max(0, Math.min(1, t)), o = Math.max(-I, Math.min(1 + I, i)), s = [...r.value];
18
- s[e * 2] = +a.toFixed(3), s[e * 2 + 1] = +o.toFixed(3), r.value = s, n.value = M;
18
+ let a = Math.max(0, Math.min(1, t)), o = Math.max(-L, Math.min(1 + L, i)), s = [...r.value];
19
+ s[e * 2] = +a.toFixed(3), s[e * 2 + 1] = +o.toFixed(3), r.value = s, n.value = P;
19
20
  }
20
- let o = b(e.initialSteps ?? 4), s = b(e.initialTerm ?? "end"), c = l(() => {
21
- if (t.value === "steps") return j(o.value, s.value) ?? ((e) => e);
21
+ let o = S(e.initialSteps ?? 4), s = S(e.initialTerm ?? "end"), c = u(() => {
22
+ if (t.value === "steps") return N(o.value, s.value) ?? ((e) => e);
22
23
  let [e, n, i, a] = r.value;
23
- return D(e, n, i, a);
24
- }), u = l(() => {
24
+ return A(e, n, i, a);
25
+ }), l = u(() => {
25
26
  if (t.value === "steps") return `steps(${o.value}, ${s.value})`;
26
27
  let [e, n, i, a] = r.value.map((e) => +e.toFixed(3));
27
28
  return `cubic-bezier(${e}, ${n}, ${i}, ${a})`;
28
- }), d = l(() => {
29
+ }), d = u(() => {
29
30
  if (t.value !== "steps") return !0;
30
- let e = A(u.value);
31
+ let e = M(l.value);
31
32
  return e != null && e.count === o.value && e.jumpTerm === s.value;
32
- }), f = l(() => ({
33
+ }), f = u(() => ({
33
34
  mode: t.value,
34
- css: u.value,
35
+ css: l.value,
35
36
  fn: c.value,
36
37
  points: [...r.value],
37
38
  steps: o.value,
38
39
  term: s.value
39
- })), p = l(() => {
40
+ })), p = u(() => {
40
41
  let [e, t, n, i] = r.value;
41
42
  return [{
42
43
  x: e,
43
- y: P(t)
44
+ y: F(t)
44
45
  }, {
45
46
  x: n,
46
- y: P(i)
47
+ y: F(i)
47
48
  }];
48
- }), m = l(() => {
49
+ }), m = u(() => {
49
50
  let [e, t] = p.value;
50
51
  return `M 0 1 C ${e.x} ${e.y}, ${t.x} ${t.y}, 1 0`;
51
- }), h = l(() => {
52
+ }), h = u(() => {
52
53
  let e = c.value, t = "";
53
54
  for (let n = 0; n <= 240; n++) {
54
- let r = n / 240, i = P(e(r));
55
+ let r = n / 240, i = F(e(r));
55
56
  t += n === 0 ? `M ${r} ${i}` : ` L ${r} ${i}`;
56
57
  }
57
58
  return t;
58
- }), g = l(() => {
59
+ }), g = u(() => {
59
60
  let e = [
60
61
  0,
61
62
  1,
62
63
  p.value[0].y,
63
64
  p.value[1].y
64
65
  ];
65
- for (let t = 0; t <= 16; t++) e.push(P(c.value(t / 16)));
66
- let t = Math.max(Math.min(...e), -I) - F;
66
+ for (let t = 0; t <= 16; t++) e.push(F(c.value(t / 16)));
67
+ let t = Math.max(Math.min(...e), -L) - I;
67
68
  return {
68
69
  minY: t,
69
- height: Math.min(Math.max(...e), 1 + I) + F - t
70
+ height: Math.min(Math.max(...e), 1 + L) + I - t
70
71
  };
71
- }), _ = b(0), v = 0;
72
- function y() {
73
- v && cancelAnimationFrame(v), v = 0;
72
+ }), _ = S(0), v = S(!1), y = u(() => v.value ? "playing" : _.value >= 1 ? "complete" : "idle"), b = 0, x = 0, C = S(!1), w = typeof window > "u" || typeof window.matchMedia != "function" ? null : window.matchMedia("(prefers-reduced-motion: reduce)");
73
+ function T() {
74
+ x++, b && cancelAnimationFrame(b), b = 0, v.value = !1;
74
75
  }
75
- function x() {
76
- y();
77
- let e = performance.now(), t = (n) => {
78
- let r = Math.min(1, (n - e) / L);
79
- _.value = r, v = r < 1 ? requestAnimationFrame(t) : 0;
76
+ function E() {
77
+ T(), _.value = 0;
78
+ }
79
+ let D = (e) => {
80
+ C.value = e.matches, e.matches && (T(), _.value = 1);
81
+ };
82
+ w && (D(w), w.addEventListener("change", D));
83
+ function O() {
84
+ if (T(), _.value = 0, C.value) {
85
+ _.value = 1;
86
+ return;
87
+ }
88
+ v.value = !0;
89
+ let e = x, t = performance.now(), n = (r) => {
90
+ if (e !== x) return;
91
+ let i = Math.min(1, (r - t) / R);
92
+ _.value = i, i < 1 ? b = requestAnimationFrame(n) : (b = 0, v.value = !1);
80
93
  };
81
- v = requestAnimationFrame(t);
94
+ b = requestAnimationFrame(n);
82
95
  }
83
- return {
96
+ return ee(() => {
97
+ T(), w?.removeEventListener("change", D);
98
+ }), {
84
99
  mode: t,
85
100
  preset: n,
86
101
  points: r,
87
- presetNames: R,
102
+ presetNames: z,
88
103
  selectPreset: i,
89
104
  setHandle: a,
90
105
  steps: o,
91
106
  term: s,
92
- terms: k,
107
+ terms: le,
93
108
  easingFn: c,
94
- readout: u,
109
+ readout: l,
95
110
  reparseOk: d,
96
111
  value: f,
97
112
  handlesSvg: p,
@@ -99,18 +114,45 @@ function z(e = {}) {
99
114
  stepPathD: h,
100
115
  viewBox: g,
101
116
  progress: _,
102
- playTravel: x,
103
- stopTravel: y
117
+ playing: v,
118
+ playbackState: y,
119
+ reducedMotion: C,
120
+ playTravel: O,
121
+ cancelTravel: E,
122
+ stopTravel: T
104
123
  };
105
124
  }
106
125
  //#endregion
107
126
  //#region src/components/easing/EasingPicker.vue?vue&type=script&setup=true&lang.ts
108
- var se = ["data-mode"], ce = { class: "glass-card relative overflow-hidden rounded-card p-3" }, le = ["viewBox", "aria-label"], ue = ["x1", "x2"], de = ["y1", "y2"], fe = ["x2", "y2"], B = ["x2", "y2"], V = ["d"], pe = ["d"], me = ["cx", "cy"], he = ["cx", "cy"], ge = ["cx", "cy"], _e = { class: "flex flex-col gap-4" }, ve = {
127
+ var he = [
128
+ "data-mode",
129
+ "data-copy-state",
130
+ "data-playback-state",
131
+ "data-reduced-motion"
132
+ ], ge = { class: "glass-card relative overflow-hidden rounded-card p-3" }, _e = ["id"], ve = ["viewBox", "aria-label"], ye = ["x1", "x2"], be = ["y1", "y2"], xe = ["x2", "y2"], Se = ["x2", "y2"], Ce = ["d"], we = ["d"], Te = [
133
+ "cx",
134
+ "cy",
135
+ "aria-label",
136
+ "aria-valuenow",
137
+ "aria-valuetext",
138
+ "aria-describedby",
139
+ "onKeydown"
140
+ ], Ee = ["cx", "cy"], De = { class: "flex flex-col gap-4" }, Oe = {
109
141
  key: 0,
110
142
  class: "flex flex-col gap-2"
111
- }, ye = { class: "flex flex-col gap-2" }, be = { class: "text-mono-caption text-muted-foreground" }, xe = { class: "flex flex-col gap-2" }, Se = ["data-reparse-ok"], Ce = ["title"], we = ["aria-label"], H = /* @__PURE__ */ g({
143
+ }, ke = { class: "flex flex-col gap-2" }, Ae = { class: "text-mono-caption text-muted-foreground" }, je = { class: "flex flex-col gap-2" }, Me = ["data-reparse-ok"], Ne = { class: "flex items-center gap-2" }, Pe = ["disabled", "aria-label"], Fe = {
144
+ key: 0,
145
+ class: "flex flex-wrap items-center justify-between gap-2 text-mono-caption"
146
+ }, Ie = {
147
+ key: 3,
148
+ class: "flex flex-wrap items-center gap-2"
149
+ }, Le = {
150
+ class: "text-mono-caption text-muted-foreground",
151
+ role: "status",
152
+ "aria-live": "polite"
153
+ }, V = /* @__PURE__ */ _({
112
154
  __name: "EasingPicker",
113
- props: /* @__PURE__ */ _({
155
+ props: /* @__PURE__ */ v({
114
156
  mode: { default: "bezier" },
115
157
  preset: { default: void 0 },
116
158
  steps: { default: void 0 },
@@ -129,19 +171,19 @@ var se = ["data-mode"], ce = { class: "glass-card relative overflow-hidden round
129
171
  modelModifiers: {}
130
172
  }),
131
173
  emits: ["update:modelValue"],
132
- setup(o) {
133
- let s = o, g = w(o, "modelValue"), { mode: _, preset: D, points: O, presetNames: k, selectPreset: A, setHandle: j, steps: M, term: N, terms: F, easingFn: I, readout: L, reparseOk: R, value: H, handlesSvg: U, bezierPathD: Te, stepPathD: Ee, viewBox: W, progress: G, playTravel: K, stopTravel: q } = z({
134
- initialMode: s.mode,
135
- initialPreset: s.preset,
136
- initialSteps: s.steps,
137
- initialTerm: s.term
174
+ setup(s) {
175
+ let c = s, _ = O(s, "modelValue"), { mode: v, preset: ee, points: A, presetNames: j, selectPreset: le, setHandle: M, steps: N, term: P, terms: ue, easingFn: I, readout: L, reparseOk: R, value: z, handlesSvg: V, bezierPathD: H, stepPathD: Re, viewBox: U, progress: W, playing: G, playbackState: K, reducedMotion: ze, playTravel: Be, cancelTravel: Ve, stopTravel: He } = B({
176
+ initialMode: c.mode,
177
+ initialPreset: c.preset,
178
+ initialSteps: c.steps,
179
+ initialTerm: c.term
138
180
  });
139
- T(() => s.mode, (e) => {
140
- _.value = e;
141
- }), T(H, (e) => g.value = e, { immediate: !0 }), v(q);
142
- let J = te("svgEl"), Y = b(null);
143
- function X(e) {
144
- let t = J.value;
181
+ ne(() => c.mode, (e) => {
182
+ v.value = e;
183
+ }), ne(z, (e) => _.value = e, { immediate: !0 });
184
+ let Ue = te("svgEl"), q = D(), J = S(null);
185
+ function We(e) {
186
+ let t = Ue.value;
145
187
  if (!t) return {
146
188
  x: 0,
147
189
  y: 0
@@ -154,68 +196,134 @@ var se = ["data-mode"], ce = { class: "glass-card relative overflow-hidden round
154
196
  let r = n.inverse();
155
197
  return {
156
198
  x: r.a * e.clientX + r.c * e.clientY + r.e,
157
- y: P(r.b * e.clientX + r.d * e.clientY + r.f)
199
+ y: F(r.b * e.clientX + r.d * e.clientY + r.f)
158
200
  };
159
201
  }
160
- function De(e) {
161
- if (_.value !== "bezier") return;
162
- let { x: t, y: n } = X(e), r = e.pointerType === "touch" ? ae : ie, i = [{
163
- x: O.value[0],
164
- y: O.value[1]
202
+ function Ge(e) {
203
+ if (v.value !== "bezier") return;
204
+ let { x: t, y: n } = We(e), r = e.pointerType === "touch" ? fe : de, i = [{
205
+ x: A.value[0],
206
+ y: A.value[1]
165
207
  }, {
166
- x: O.value[2],
167
- y: O.value[3]
208
+ x: A.value[2],
209
+ y: A.value[3]
168
210
  }], a = null, o = Infinity;
169
211
  for (let e = 0; e < 2; e++) {
170
212
  let s = Math.hypot(i[e].x - t, i[e].y - n);
171
213
  s < r && s < o && (o = s, a = e);
172
214
  }
173
- a !== null && (e.preventDefault(), Y.value = a, e.currentTarget.setPointerCapture(e.pointerId));
215
+ a !== null && (e.preventDefault(), J.value = a, e.currentTarget.setPointerCapture(e.pointerId));
216
+ }
217
+ function Ke(e) {
218
+ if (J.value === null) return;
219
+ let { x: t, y: n } = We(e);
220
+ M(J.value, t, n);
221
+ }
222
+ function qe() {
223
+ J.value = null;
174
224
  }
175
- function Oe(e) {
176
- if (Y.value === null) return;
177
- let { x: t, y: n } = X(e);
178
- j(Y.value, t, n);
225
+ function Je(e, t) {
226
+ let n = e * 2, r = A.value[n], i = A.value[n + 1], a = t.shiftKey ? .1 : .01, o = r, s = i;
227
+ switch (t.key) {
228
+ case "ArrowLeft":
229
+ o -= a;
230
+ break;
231
+ case "ArrowRight":
232
+ o += a;
233
+ break;
234
+ case "ArrowDown":
235
+ s -= a;
236
+ break;
237
+ case "ArrowUp":
238
+ s += a;
239
+ break;
240
+ case "Home":
241
+ o = 0;
242
+ break;
243
+ case "End":
244
+ o = 1;
245
+ break;
246
+ default: return;
247
+ }
248
+ t.preventDefault(), M(e, o, s);
179
249
  }
180
- function Z() {
181
- Y.value = null;
250
+ let Y = S("idle"), Ye = te("readoutEl"), X = 0, Z, Q;
251
+ function Xe() {
252
+ Z !== void 0 && clearTimeout(Z), Q !== void 0 && clearTimeout(Q), Z = void 0, Q = void 0;
182
253
  }
183
- let Q = b(!1);
184
- async function ke() {
254
+ async function Ze() {
255
+ Xe();
256
+ let e = ++X, t;
257
+ Y.value = "pending";
185
258
  try {
186
- await navigator.clipboard.writeText(L.value), Q.value = !0, setTimeout(() => Q.value = !1, oe);
187
- } catch {}
259
+ let n = navigator.clipboard;
260
+ if (!n?.writeText) throw Error("Clipboard unavailable");
261
+ if (await Promise.race([n.writeText(L.value), new Promise((e, n) => {
262
+ t = setTimeout(() => n(/* @__PURE__ */ Error("Clipboard timed out")), me), Q = t;
263
+ })]), e !== X) return;
264
+ Y.value = "copied", Z = setTimeout(() => {
265
+ e === X && (Y.value = "idle");
266
+ }, pe);
267
+ } catch {
268
+ e === X && (Y.value = "failed");
269
+ } finally {
270
+ t !== void 0 && clearTimeout(t), Q === t && (Q = void 0);
271
+ }
272
+ }
273
+ function Qe() {
274
+ let e = Ye.value, t = window.getSelection();
275
+ if (!e || !t) return;
276
+ let n = document.createRange();
277
+ n.selectNodeContents(e), t.removeAllRanges(), t.addRange(n), e.focus();
188
278
  }
189
- let Ae = l(() => _.value === "bezier" ? `0 ${W.value.minY} 1 ${W.value.height}` : "-0.05 -0.1 1.1 1.2"), $ = l({
190
- get: () => [M.value],
279
+ let $e = u(() => ({
280
+ idle: "",
281
+ pending: "Copying curve literal…",
282
+ copied: "Copied curve literal.",
283
+ failed: "Clipboard unavailable. Select the full literal to copy manually."
284
+ })[Y.value]), et = u(() => {
285
+ let e = v.value === "steps" ? "staircase" : "curve";
286
+ return G.value ? `Restart ${e}` : K.value === "complete" ? `Replay ${e}` : v.value === "steps" ? "Climb the staircase" : "Trace the curve";
287
+ });
288
+ b(() => {
289
+ X++, Xe(), He();
290
+ });
291
+ let tt = u(() => v.value === "bezier" ? `0 ${U.value.minY} 1 ${U.value.height}` : "-0.05 -0.1 1.1 1.2"), $ = u({
292
+ get: () => [N.value],
191
293
  set: (e) => {
192
- M.value = e[0] ?? M.value;
294
+ N.value = e[0] ?? N.value;
193
295
  }
194
296
  });
195
- return (s, l) => (y(), f("div", {
297
+ return (c, u) => (x(), p("div", {
196
298
  class: "grid gap-4 lg:grid-cols-[1fr_18rem]",
197
- "data-mode": C(_),
299
+ "data-mode": E(v),
300
+ "data-copy-state": Y.value,
301
+ "data-playback-state": E(K),
302
+ "data-reduced-motion": E(ze) ? "" : void 0,
198
303
  "data-testid": "easing-picker",
199
304
  style: { "--easing-curve-accent": "var(--motion-accent, var(--viz-legendre))" }
200
- }, [p("div", ce, [(y(), f("svg", {
305
+ }, [m("div", ge, [m("span", {
306
+ id: E(q),
307
+ class: "sr-only"
308
+ }, " Left and Right change x from 0 to 1. Up and Down change y from -0.6 to 1.6. Hold Shift for larger steps. ", 8, _e), (x(), p("svg", {
201
309
  ref_key: "svgEl",
202
- ref: J,
310
+ ref: Ue,
203
311
  class: "block w-full touch-none select-none",
204
- viewBox: Ae.value,
312
+ viewBox: tt.value,
205
313
  preserveAspectRatio: "xMidYMid meet",
206
314
  style: {
207
315
  "aspect-ratio": "1",
208
316
  "block-size": "clamp(200px, 38cqi, 320px)",
209
317
  "margin-inline": "auto"
210
318
  },
211
- "aria-label": o.label,
212
- role: "img",
213
- onPointerdown: De,
214
- onPointermove: Oe,
215
- onPointerup: Z,
216
- onPointercancel: Z
319
+ "aria-label": s.label,
320
+ role: "group",
321
+ onPointerdown: Ge,
322
+ onPointermove: Ke,
323
+ onPointerup: qe,
324
+ onPointercancel: qe
217
325
  }, [
218
- l[4] ||= p("rect", {
326
+ u[3] ||= m("rect", {
219
327
  x: "0",
220
328
  y: "0",
221
329
  width: "1",
@@ -224,7 +332,7 @@ var se = ["data-mode"], ce = { class: "glass-card relative overflow-hidden round
224
332
  class: "stroke-border",
225
333
  "stroke-width": "0.012"
226
334
  }, null, -1),
227
- l[5] ||= p("line", {
335
+ u[4] ||= m("line", {
228
336
  x1: "0",
229
337
  y1: "1",
230
338
  x2: "1",
@@ -233,11 +341,11 @@ var se = ["data-mode"], ce = { class: "glass-card relative overflow-hidden round
233
341
  "stroke-width": "0.006",
234
342
  "stroke-dasharray": "0.02 0.015"
235
343
  }, null, -1),
236
- (y(), f(c, null, x([
344
+ (x(), p(l, null, C([
237
345
  .25,
238
346
  .5,
239
347
  .75
240
- ], (e) => p("line", {
348
+ ], (e) => m("line", {
241
349
  key: "gx" + e,
242
350
  x1: e,
243
351
  y1: "0",
@@ -245,12 +353,12 @@ var se = ["data-mode"], ce = { class: "glass-card relative overflow-hidden round
245
353
  y2: "1",
246
354
  class: "stroke-border/40",
247
355
  "stroke-width": "0.006"
248
- }, null, 8, ue)), 64)),
249
- (y(), f(c, null, x([
356
+ }, null, 8, ye)), 64)),
357
+ (x(), p(l, null, C([
250
358
  .25,
251
359
  .5,
252
360
  .75
253
- ], (e) => p("line", {
361
+ ], (e) => m("line", {
254
362
  key: "gy" + e,
255
363
  x1: "0",
256
364
  y1: e,
@@ -258,8 +366,8 @@ var se = ["data-mode"], ce = { class: "glass-card relative overflow-hidden round
258
366
  y2: e,
259
367
  class: "stroke-border/40",
260
368
  "stroke-width": "0.006"
261
- }, null, 8, de)), 64)),
262
- l[6] ||= p("text", {
369
+ }, null, 8, be)), 64)),
370
+ u[5] ||= m("text", {
263
371
  x: "0.05",
264
372
  y: "0.95",
265
373
  class: "fill-muted-foreground/60",
@@ -269,7 +377,7 @@ var se = ["data-mode"], ce = { class: "glass-card relative overflow-hidden round
269
377
  },
270
378
  "text-anchor": "start"
271
379
  }, "0", -1),
272
- l[7] ||= p("text", {
380
+ u[6] ||= m("text", {
273
381
  x: "0.95",
274
382
  y: "0.12",
275
383
  class: "fill-muted-foreground/60",
@@ -279,99 +387,102 @@ var se = ["data-mode"], ce = { class: "glass-card relative overflow-hidden round
279
387
  },
280
388
  "text-anchor": "end"
281
389
  }, "1", -1),
282
- C(_) === "bezier" ? (y(), f(c, { key: 0 }, [
283
- p("line", {
390
+ E(v) === "bezier" ? (x(), p(l, { key: 0 }, [
391
+ m("line", {
284
392
  x1: 0,
285
393
  y1: 1,
286
- x2: C(U)[0].x,
287
- y2: C(U)[0].y,
394
+ x2: E(V)[0].x,
395
+ y2: E(V)[0].y,
288
396
  class: "stroke-muted-foreground/50",
289
397
  "stroke-width": "0.02",
290
398
  "stroke-dasharray": "0.03 0.02"
291
- }, null, 8, fe),
292
- p("line", {
399
+ }, null, 8, xe),
400
+ m("line", {
293
401
  x1: 1,
294
402
  y1: 0,
295
- x2: C(U)[1].x,
296
- y2: C(U)[1].y,
403
+ x2: E(V)[1].x,
404
+ y2: E(V)[1].y,
297
405
  class: "stroke-muted-foreground/50",
298
406
  "stroke-width": "0.02",
299
407
  "stroke-dasharray": "0.03 0.02"
300
- }, null, 8, B),
301
- p("path", {
302
- d: C(Te),
408
+ }, null, 8, Se),
409
+ m("path", {
410
+ d: E(H),
303
411
  fill: "none",
304
412
  class: "stroke-(--easing-curve-accent)",
305
413
  "stroke-width": "0.035",
306
414
  "stroke-linecap": "round"
307
- }, null, 8, V)
308
- ], 64)) : (y(), f("path", {
415
+ }, null, 8, Ce)
416
+ ], 64)) : (x(), p("path", {
309
417
  key: 1,
310
- d: C(Ee),
418
+ d: E(Re),
311
419
  fill: "none",
312
420
  class: "stroke-(--easing-curve-accent)",
313
421
  "stroke-width": "0.025",
314
422
  "stroke-linejoin": "miter",
315
423
  "stroke-linecap": "butt"
316
- }, null, 8, pe)),
317
- l[8] ||= p("circle", {
424
+ }, null, 8, we)),
425
+ u[7] ||= m("circle", {
318
426
  cx: "0",
319
427
  cy: "1",
320
428
  r: "0.018",
321
429
  class: "fill-muted-foreground/50"
322
430
  }, null, -1),
323
- l[9] ||= p("circle", {
431
+ u[8] ||= m("circle", {
324
432
  cx: "1",
325
433
  cy: "0",
326
434
  r: "0.018",
327
435
  class: "fill-muted-foreground/50"
328
436
  }, null, -1),
329
- C(_) === "bezier" ? (y(), f(c, { key: 2 }, [p("circle", {
330
- cx: C(U)[0].x,
331
- cy: C(U)[0].y,
437
+ E(v) === "bezier" ? (x(), p(l, { key: 2 }, C([0, 1], (e) => m("circle", {
438
+ key: e,
439
+ cx: E(V)[e].x,
440
+ cy: E(V)[e].y,
332
441
  r: "0.04",
333
- class: "fill-foreground stroke-background",
442
+ class: "fill-foreground stroke-background focus:outline-none focus-visible:stroke-(--easing-curve-accent) focus-visible:[stroke-width:0.045]",
334
443
  "stroke-width": "0.02",
335
- style: { cursor: "move" }
336
- }, null, 8, me), p("circle", {
337
- cx: C(U)[1].x,
338
- cy: C(U)[1].y,
339
- r: "0.04",
340
- class: "fill-foreground stroke-background",
341
- "stroke-width": "0.02",
342
- style: { cursor: "move" }
343
- }, null, 8, he)], 64)) : d("", !0),
344
- o.playback ? (y(), f("circle", {
444
+ style: { cursor: "move" },
445
+ role: "slider",
446
+ tabindex: "0",
447
+ "aria-label": `Bezier control point ${e + 1}`,
448
+ "aria-valuemin": 0,
449
+ "aria-valuemax": 1,
450
+ "aria-valuenow": E(A)[e * 2],
451
+ "aria-valuetext": `x ${E(A)[e * 2].toFixed(3)}, y ${E(A)[e * 2 + 1].toFixed(3)}`,
452
+ "aria-describedby": E(q),
453
+ onKeydown: (t) => Je(e, t)
454
+ }, null, 40, Te)), 64)) : f("", !0),
455
+ s.playback ? (x(), p("circle", {
345
456
  key: 3,
346
- cx: C(G),
347
- cy: 1 - C(I)(C(G)),
457
+ cx: E(W),
458
+ cy: 1 - E(I)(E(W)),
348
459
  r: "0.03",
349
460
  class: "fill-(--easing-curve-accent)"
350
- }, null, 8, ge)) : d("", !0)
351
- ], 40, le))]), p("div", _e, [
352
- C(_) === "bezier" ? (y(), f("div", ve, [l[10] ||= p("span", { class: "text-mono-caption text-muted-foreground" }, "Preset", -1), h(C(i), {
353
- "model-value": C(D),
354
- "onUpdate:modelValue": l[0] ||= (e) => C(A)(String(e))
461
+ }, null, 8, Ee)) : f("", !0)
462
+ ], 40, ve))]), m("div", De, [
463
+ E(v) === "bezier" ? (x(), p("div", Oe, [u[9] ||= m("span", { class: "text-mono-caption text-muted-foreground" }, "Preset", -1), g(E(n), {
464
+ "model-value": E(ee),
465
+ "onUpdate:modelValue": u[0] ||= (e) => E(le)(String(e))
355
466
  }, {
356
- default: E(() => [h(C(e), { "aria-label": "Easing preset" }, {
357
- default: E(() => [h(C(n), { placeholder: "Pick a curve" })]),
467
+ default: k(() => [g(E(r), { "aria-label": "Easing preset" }, {
468
+ default: k(() => [g(E(a), { placeholder: "Pick a curve" })]),
358
469
  _: 1
359
- }), h(C(t), null, {
360
- default: E(() => [(y(!0), f(c, null, x(C(k), (e) => (y(), u(C(r), {
470
+ }), g(E(t), null, {
471
+ default: k(() => [(x(!0), p(l, null, C(E(j), (e) => (x(), d(E(i), {
361
472
  key: e,
362
473
  value: e
363
474
  }, {
364
- default: E(() => [m(S(e), 1)]),
475
+ default: k(() => [h(T(e), 1)]),
365
476
  _: 2
366
477
  }, 1032, ["value"]))), 128))]),
367
478
  _: 1
368
479
  })]),
369
480
  _: 1
370
- }, 8, ["model-value"])])) : (y(), f(c, { key: 1 }, [p("div", ye, [p("span", be, "Steps (n) — " + S(C(M)), 1), h(C(a), {
481
+ }, 8, ["model-value"])])) : (x(), p(l, { key: 1 }, [m("div", ke, [m("span", Ae, "Steps (n) — " + T(E(N)), 1), g(E(o), {
371
482
  modelValue: $.value,
372
- "onUpdate:modelValue": l[1] ||= (e) => $.value = e,
373
- min: C(1),
374
- max: C(12),
483
+ "onUpdate:modelValue": u[1] ||= (e) => $.value = e,
484
+ min: E(1),
485
+ max: E(12),
375
486
  step: 1,
376
487
  "aria-label": "Step count",
377
488
  "data-testid": "easing-steps-n"
@@ -379,57 +490,93 @@ var se = ["data-mode"], ce = { class: "glass-card relative overflow-hidden round
379
490
  "modelValue",
380
491
  "min",
381
492
  "max"
382
- ])]), p("div", xe, [l[11] ||= p("span", { class: "text-mono-caption text-muted-foreground" }, "Jump term", -1), h(C(i), {
383
- "model-value": C(N),
384
- "onUpdate:modelValue": l[2] ||= (e) => N.value = String(e)
493
+ ])]), m("div", je, [u[10] ||= m("span", { class: "text-mono-caption text-muted-foreground" }, "Jump term", -1), g(E(n), {
494
+ "model-value": E(P),
495
+ "onUpdate:modelValue": u[2] ||= (e) => P.value = String(e)
385
496
  }, {
386
- default: E(() => [h(C(e), { "aria-label": "Jump term" }, {
387
- default: E(() => [h(C(n), { placeholder: "Pick a jump term" })]),
497
+ default: k(() => [g(E(r), { "aria-label": "Jump term" }, {
498
+ default: k(() => [g(E(a), { placeholder: "Pick a jump term" })]),
388
499
  _: 1
389
- }), h(C(t), null, {
390
- default: E(() => [(y(!0), f(c, null, x(C(F), (e) => (y(), u(C(r), {
500
+ }), g(E(t), null, {
501
+ default: k(() => [(x(!0), p(l, null, C(E(ue), (e) => (x(), d(E(i), {
391
502
  key: e,
392
503
  value: e
393
504
  }, {
394
- default: E(() => [m(S(e), 1)]),
505
+ default: k(() => [h(T(e), 1)]),
395
506
  _: 2
396
507
  }, 1032, ["value"]))), 128))]),
397
508
  _: 1
398
509
  })]),
399
510
  _: 1
400
511
  }, 8, ["model-value"])])], 64)),
401
- o.readout ? (y(), f("div", {
512
+ s.readout ? (x(), p("div", {
402
513
  key: 2,
403
- class: "glass-card flex items-center gap-2 rounded-card px-3 py-2",
404
- "data-reparse-ok": C(R),
514
+ class: "glass-card flex flex-col gap-2 rounded-card px-3 py-2",
515
+ "data-reparse-ok": E(R),
405
516
  "data-testid": "easing-readout"
406
- }, [p("code", {
407
- class: "min-w-0 flex-1 truncate text-xs text-foreground",
408
- title: C(L)
409
- }, S(C(L)), 9, Ce), p("button", {
517
+ }, [m("div", Ne, [m("code", {
518
+ ref_key: "readoutEl",
519
+ ref: Ye,
520
+ tabindex: "0",
521
+ class: "min-w-0 flex-1 break-all text-xs text-foreground select-text"
522
+ }, T(E(L)), 513), m("button", {
410
523
  type: "button",
411
- class: "shrink-0 rounded-pill p-1.5 text-muted-foreground transition-colors hover:bg-(--surface-tint-8) hover:text-foreground",
412
- "aria-label": Q.value ? "Copied" : "Copy curve literal",
413
- onClick: ke
414
- }, [Q.value ? (y(), u(C(ne), {
524
+ class: "shrink-0 rounded-pill p-1.5 text-muted-foreground transition-colors hover:bg-(--surface-tint-8) hover:text-foreground disabled:cursor-wait disabled:opacity-disabled",
525
+ disabled: Y.value === "pending",
526
+ "aria-label": Y.value === "failed" ? "Retry copy curve literal" : Y.value === "copied" ? "Copied" : Y.value === "pending" ? "Copying curve literal" : "Copy curve literal",
527
+ "data-testid": "easing-copy",
528
+ onClick: Ze
529
+ }, [Y.value === "pending" ? (x(), d(E(ae), {
415
530
  key: 0,
416
- class: "size-4 text-(--easing-curve-accent)"
417
- })) : (y(), u(C(re), {
531
+ class: "size-4 animate-spin"
532
+ })) : Y.value === "copied" ? (x(), d(E(re), {
418
533
  key: 1,
534
+ class: "size-4 text-(--easing-curve-accent)"
535
+ })) : (x(), d(E(ie), {
536
+ key: 2,
419
537
  class: "size-4"
420
- }))], 8, we)], 8, Se)) : d("", !0),
421
- o.playback ? (y(), f("button", {
422
- key: 3,
423
- type: "button",
424
- class: "btn-pill glass-btn rounded-pill px-3 py-2 text-sm text-foreground",
425
- onClick: l[3] ||= (...e) => C(K) && C(K)(...e)
426
- }, S(C(_) === "steps" ? "Climb the staircase" : "Trace the curve"), 1)) : d("", !0),
427
- ee(s.$slots, "footer", { value: C(H) })
428
- ])], 8, se));
538
+ }))], 8, Pe)]), Y.value === "idle" ? f("", !0) : (x(), p("div", Fe, [m("span", {
539
+ role: "status",
540
+ "aria-live": "polite",
541
+ class: y(Y.value === "failed" ? "text-destructive" : "text-muted-foreground")
542
+ }, T($e.value), 3), Y.value === "failed" ? (x(), d(E(e), {
543
+ key: 0,
544
+ variant: "outline",
545
+ class: "shrink-0 px-3 py-1",
546
+ "data-testid": "easing-select-literal",
547
+ onClick: Qe
548
+ }, {
549
+ default: k(() => [...u[11] ||= [h(" Select literal ", -1)]]),
550
+ _: 1
551
+ })) : f("", !0)]))], 8, Me)) : f("", !0),
552
+ s.playback ? (x(), p("div", Ie, [
553
+ g(E(e), {
554
+ variant: "outline",
555
+ class: "w-fit",
556
+ "data-testid": "easing-playback",
557
+ onClick: E(Be)
558
+ }, {
559
+ default: k(() => [E(G) || E(K) === "complete" ? (x(), d(E(se), { key: 0 })) : (x(), d(E(oe), { key: 1 })), h(" " + T(et.value), 1)]),
560
+ _: 1
561
+ }, 8, ["onClick"]),
562
+ E(G) ? (x(), d(E(e), {
563
+ key: 0,
564
+ variant: "outline",
565
+ class: "w-fit",
566
+ "data-testid": "easing-cancel",
567
+ onClick: E(Ve)
568
+ }, {
569
+ default: k(() => [g(E(ce)), u[12] ||= h(" Cancel preview ", -1)]),
570
+ _: 1
571
+ }, 8, ["onClick"])) : f("", !0),
572
+ m("span", Le, T(E(K) === "playing" ? "Preview playing" : E(K) === "complete" ? "Preview complete" : "Preview idle"), 1)
573
+ ])) : f("", !0),
574
+ w(c.$slots, "footer", { value: E(z) })
575
+ ])], 8, he));
429
576
  }
430
- }), U = /* @__PURE__ */ g({
577
+ }), H = /* @__PURE__ */ _({
431
578
  __name: "EasingConfigurator",
432
- props: /* @__PURE__ */ _({
579
+ props: /* @__PURE__ */ v({
433
580
  label: { default: "Easing" },
434
581
  name: { default: void 0 },
435
582
  mode: { default: "bezier" },
@@ -442,16 +589,16 @@ var se = ["data-mode"], ce = { class: "glass-card relative overflow-hidden round
442
589
  }),
443
590
  emits: ["update:modelValue"],
444
591
  setup(e) {
445
- let t = w(e, "modelValue");
446
- return (n, r) => (y(), u(C(o), {
592
+ let t = O(e, "modelValue");
593
+ return (n, r) => (x(), d(E(c), {
447
594
  label: e.label,
448
595
  sub: e.name
449
596
  }, {
450
- default: E(() => [h(C(s), {
597
+ default: k(() => [g(E(s), {
451
598
  label: "Curve",
452
599
  name: t.value?.css
453
600
  }, {
454
- default: E(() => [h(H, {
601
+ default: k(() => [g(V, {
455
602
  modelValue: t.value,
456
603
  "onUpdate:modelValue": r[0] ||= (e) => t.value = e,
457
604
  mode: e.mode,
@@ -472,4 +619,4 @@ var se = ["data-mode"], ce = { class: "glass-card relative overflow-hidden round
472
619
  }
473
620
  });
474
621
  //#endregion
475
- export { U as EasingConfigurator, H as EasingPicker, z as useEasingPicker };
622
+ export { H as EasingConfigurator, V as EasingPicker, B as useEasingPicker };