@mkbabb/glass-ui 3.13.0 → 4.0.1

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 (507) hide show
  1. package/README.md +3 -1
  2. package/dist/CardAction-CW7a0m8M.js +253 -0
  3. package/dist/{CommandShortcut-RowNEO6i.js → CommandShortcut-DvZNQ_HF.js} +58 -53
  4. package/dist/ConfiguratorRow-BR4l-ixA.js +143 -0
  5. package/dist/{ContextMenuContent-CT3AS1WX.js → ContextMenuContent-uWnVxDab.js} +1 -1
  6. package/dist/{ContextMenuSubContent-BQmxTAdw.js → ContextMenuSubContent-xol4sD2q.js} +32 -37
  7. package/dist/{DataTable-BCddn3T3.js → DataTable-CuKwF7wr.js} +99 -97
  8. package/dist/DialogContent-DcKK8k9i.js +103 -0
  9. package/dist/{DialogFooter-Blu4t7tJ.js → DialogFooter-BZNX5aVr.js} +3 -3
  10. package/dist/FadingScroll-DI6hQhT9.js +76 -0
  11. package/dist/{HoverCardContent-Csywg3YF.js → HoverCardContent-b2uaAMRR.js} +1 -1
  12. package/dist/{HoverPopover-CISOJQuZ.js → HoverPopover-CbqbNwgU.js} +2 -2
  13. package/dist/IconChip-BTD-nay5.js +55 -0
  14. package/dist/{IconTooltip-DPzE09X9.js → IconTooltip-Bl8gFZ8d.js} +1 -1
  15. package/dist/{Input-DWQQIOC4.js → Input-h9v5LeXf.js} +1 -1
  16. package/dist/{MetricBadge-C9QMz1KT.js → MetricBadge-RHdBP72w.js} +1 -1
  17. package/dist/Notification-VUwexFUf.js +43 -0
  18. package/dist/NumberFieldContent-Cq7EzX-U.js +138 -0
  19. package/dist/PopoverContent-DL7E6vJP.js +127 -0
  20. package/dist/{Progress-DwlUKGbr.js → Progress-DctG61iZ.js} +98 -78
  21. package/dist/{ScrollingText-DfFrwSph.js → ScrollingText-yOpBzFYq.js} +2 -2
  22. package/dist/{SelectScrollDownButton-CiDUxfEj.js → SelectScrollDownButton-CrA8F0iV.js} +35 -20
  23. package/dist/{Switch-CsIuYP_e.js → Switch-CwYNf8bo.js} +1 -1
  24. package/dist/Toaster-Bw4xR8xV.js +274 -0
  25. package/dist/{ToggleGroupItem-D_AHlRw9.js → ToggleGroupItem-pEM9vIhs.js} +50 -37
  26. package/dist/{TooltipProvider-B3MkB_8P.js → TooltipProvider-rzvnXz60.js} +1 -1
  27. package/dist/animated-digit.js +2 -2
  28. package/dist/api/index.d.ts +16 -8
  29. package/dist/api/types-extra.d.ts +6 -0
  30. package/dist/api.js +2 -2
  31. package/dist/aurora.js +888 -230
  32. package/dist/badge.js +1 -1
  33. package/dist/border-progress.d.ts +1 -0
  34. package/dist/border-progress.js +106 -0
  35. package/dist/button-DYCUa-tH.js +126 -0
  36. package/dist/button.js +1 -1
  37. package/dist/canvas.js +2 -2
  38. package/dist/card.js +2 -2
  39. package/dist/carousel.d.ts +1 -1
  40. package/dist/carousel.js +90 -151
  41. package/dist/collapsible.js +1 -1
  42. package/dist/color-swatch.d.ts +1 -0
  43. package/dist/color-swatch.js +47 -0
  44. package/dist/color.js +1 -1
  45. package/dist/command.js +1 -1
  46. package/dist/compile-CQEFRTmx.js +19 -0
  47. package/dist/components/custom/aurora/composables/atoms-fields.d.ts +39 -0
  48. package/dist/components/custom/aurora/composables/auroraFallbackGround.d.ts +108 -0
  49. package/dist/components/custom/aurora/composables/runtime.d.ts +19 -0
  50. package/dist/components/custom/aurora/composables/uniformBridge.d.ts +5 -1
  51. package/dist/components/custom/aurora/composables/uniformBridgeWGPU.d.ts +51 -0
  52. package/dist/components/custom/aurora/composables/wgpuSetup.d.ts +29 -0
  53. package/dist/components/custom/aurora/constants/budget.d.ts +21 -0
  54. package/dist/components/custom/aurora/constants/presets.d.ts +30 -2
  55. package/dist/components/custom/aurora/constants/renderMode.d.ts +63 -10
  56. package/dist/components/custom/aurora/constants/shaders/aurora.wgsl.d.ts +1 -0
  57. package/dist/components/custom/aurora/constants/shaders/oil-modes.glsl.d.ts +1 -0
  58. package/dist/components/custom/aurora/constants/shaders/procedural-color.wgsl.d.ts +4 -0
  59. package/dist/components/custom/aurora/index.d.ts +3 -2
  60. package/dist/components/custom/border-progress/BorderProgress.vue.d.ts +46 -0
  61. package/dist/components/custom/border-progress/composables/useBorderSpectrum.d.ts +22 -0
  62. package/dist/components/custom/border-progress/constants.d.ts +59 -0
  63. package/dist/components/custom/border-progress/index.d.ts +4 -0
  64. package/dist/components/custom/color-swatch/ColorSwatch.vue.d.ts +22 -0
  65. package/dist/components/custom/color-swatch/index.d.ts +1 -0
  66. package/dist/components/custom/concentric/Concentric.vue.d.ts +39 -0
  67. package/dist/components/custom/concentric/composables/concentricGLSetup.d.ts +11 -0
  68. package/dist/components/custom/concentric/composables/concentricWGPUSetup.d.ts +13 -0
  69. package/dist/components/custom/concentric/composables/ringField.d.ts +44 -0
  70. package/dist/components/custom/concentric/composables/uniformBridgeWGPU.d.ts +13 -0
  71. package/dist/components/custom/concentric/composables/useConcentric.d.ts +35 -0
  72. package/dist/components/custom/concentric/constants.d.ts +43 -0
  73. package/dist/components/custom/concentric/index.d.ts +5 -0
  74. package/dist/components/custom/concentric/shaders/concentric.glsl.d.ts +4 -0
  75. package/dist/components/custom/concentric/shaders/concentric.wgsl.d.ts +1 -0
  76. package/dist/components/custom/configurator/Configurator.vue.d.ts +19 -8
  77. package/dist/components/custom/constellation/Constellation.vue.d.ts +18 -206
  78. package/dist/components/custom/constellation/composables/useConstellation.d.ts +26 -0
  79. package/dist/components/custom/constellation/constellationField.d.ts +2 -369
  80. package/dist/components/custom/constellation/constellationTypes.d.ts +369 -0
  81. package/dist/components/custom/constellation/index.d.ts +1 -1
  82. package/dist/components/custom/dock/DockIconButton.vue.d.ts +13 -4
  83. package/dist/components/custom/dock/DockLayerGroup.vue.d.ts +10 -2
  84. package/dist/components/custom/dock/DockRail.vue.d.ts +17 -16
  85. package/dist/components/custom/dock/DockSection.vue.d.ts +69 -0
  86. package/dist/components/custom/dock/DockSeparator.vue.d.ts +49 -1
  87. package/dist/components/custom/dock/DockTabButton.vue.d.ts +5 -5
  88. package/dist/components/custom/dock/composables/dockMorphMeasure.d.ts +75 -0
  89. package/dist/components/custom/dock/composables/useLayerTransition.d.ts +13 -0
  90. package/dist/components/custom/dock/constants.d.ts +35 -0
  91. package/dist/components/custom/dock/index.d.ts +2 -0
  92. package/dist/components/custom/dot-flow-field/DotFlowField.vue.d.ts +38 -0
  93. package/dist/components/custom/dot-flow-field/composables/flowField.d.ts +41 -0
  94. package/dist/components/custom/dot-flow-field/composables/uniformBridgeWGPU.d.ts +24 -0
  95. package/dist/components/custom/dot-flow-field/composables/useDotFlowField.d.ts +34 -0
  96. package/dist/components/custom/dot-flow-field/composables/useFlowParticles.d.ts +18 -0
  97. package/dist/components/custom/dot-flow-field/constants.d.ts +48 -0
  98. package/dist/components/custom/dot-flow-field/index.d.ts +5 -0
  99. package/dist/components/custom/dot-flow-field/shaders/flow-field.compute.wgsl.d.ts +1 -0
  100. package/dist/components/custom/dot-flow-field/shaders/flow-field.glsl.d.ts +20 -0
  101. package/dist/components/custom/dot-flow-field/shaders/flow-field.render.wgsl.d.ts +1 -0
  102. package/dist/components/custom/easing/EasingConfigurator.vue.d.ts +33 -0
  103. package/dist/components/custom/easing/EasingPicker.vue.d.ts +49 -0
  104. package/dist/components/custom/easing/composables/useEasingPicker.d.ts +75 -0
  105. package/dist/components/custom/easing/constants.d.ts +28 -0
  106. package/dist/components/custom/easing/index.d.ts +3 -0
  107. package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +10 -0
  108. package/dist/components/custom/fading-scroll/FadingScroll.vue.d.ts +25 -0
  109. package/dist/components/custom/fading-scroll/composables/useFadingScroll.d.ts +31 -0
  110. package/dist/components/custom/fading-scroll/constants.d.ts +19 -0
  111. package/dist/components/custom/fading-scroll/index.d.ts +2 -0
  112. package/dist/components/custom/fourier-field/FourierField.vue.d.ts +19 -2
  113. package/dist/components/custom/fourier-field/composables/useFourierField.d.ts +39 -0
  114. package/dist/components/custom/fourier-field/constants.d.ts +7 -0
  115. package/dist/components/custom/fourier-field/index.d.ts +1 -1
  116. package/dist/components/custom/fourier-field/math.d.ts +17 -0
  117. package/dist/components/custom/glass-panel/GlassPanel.vue.d.ts +9 -1
  118. package/dist/components/custom/goo-blob/GooBlob.vue.d.ts +4 -2
  119. package/dist/components/custom/goo-blob/composables/uniformBridgeWGPU.d.ts +24 -0
  120. package/dist/components/custom/goo-blob/composables/useMetaballRenderer.d.ts +29 -12
  121. package/dist/components/custom/goo-blob/composables/wgpuSetup.d.ts +23 -0
  122. package/dist/components/custom/goo-blob/constants.d.ts +6 -1
  123. package/dist/components/custom/goo-blob/shaders/metaball.wgsl.d.ts +1 -0
  124. package/dist/components/custom/handmark/HandMark.vue.d.ts +29 -0
  125. package/dist/components/custom/handmark/brush.d.ts +269 -0
  126. package/dist/components/custom/handmark/composables/useHandMark.d.ts +89 -0
  127. package/dist/components/custom/handmark/constants.d.ts +39 -0
  128. package/dist/components/custom/handmark/freehand.d.ts +69 -0
  129. package/dist/components/custom/handmark/geometry.d.ts +52 -0
  130. package/dist/components/custom/handmark/index.d.ts +27 -0
  131. package/dist/components/custom/handmark/ink.d.ts +11 -0
  132. package/dist/components/custom/handmark/texture.d.ts +39 -0
  133. package/dist/components/custom/handmark/types.d.ts +62 -0
  134. package/dist/components/custom/icon-chip/IconChip.vue.d.ts +4 -0
  135. package/dist/components/custom/icon-chip/index.d.ts +2 -0
  136. package/dist/components/custom/icon-chip/types.d.ts +82 -0
  137. package/dist/components/custom/instrument-chassis/InstrumentChassis.vue.d.ts +17 -2
  138. package/dist/components/custom/metric-stack/MetricStack.vue.d.ts +1 -1
  139. package/dist/components/custom/pager-dots/PagerDots.vue.d.ts +39 -0
  140. package/dist/components/custom/pager-dots/index.d.ts +2 -0
  141. package/dist/components/custom/spa-view/SpaView.vue.d.ts +50 -0
  142. package/dist/components/custom/spa-view/index.d.ts +2 -0
  143. package/dist/components/custom/tabs/SegmentedTabs.vue.d.ts +29 -24
  144. package/dist/components/custom/tabs/composables/useTabDragMorph.d.ts +42 -0
  145. package/dist/components/custom/tabs/composables/useTabIndicator.d.ts +30 -21
  146. package/dist/components/custom/tabs/constants.d.ts +9 -3
  147. package/dist/components/custom/tabs/index.d.ts +1 -1
  148. package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +15 -1
  149. package/dist/components/ui/_shared/index.d.ts +2 -0
  150. package/dist/components/ui/_shared/menuItemVariants.d.ts +19 -0
  151. package/dist/components/ui/_shared/useSurfaceAxis.d.ts +41 -0
  152. package/dist/components/ui/badge/index.d.ts +1 -1
  153. package/dist/components/ui/button/Button.vue.d.ts +5 -2
  154. package/dist/components/ui/button/index.d.ts +2 -2
  155. package/dist/components/ui/card/Card.vue.d.ts +34 -4
  156. package/dist/components/ui/card/CardHeader.vue.d.ts +42 -16
  157. package/dist/components/ui/card/ScrollCard.vue.d.ts +33 -0
  158. package/dist/components/ui/card/ScrollCardHeader.vue.d.ts +17 -0
  159. package/dist/components/ui/card/index.d.ts +2 -0
  160. package/dist/components/ui/carousel/CarouselNext.vue.d.ts +2 -2
  161. package/dist/components/ui/carousel/CarouselPrevious.vue.d.ts +2 -2
  162. package/dist/components/ui/carousel/GlassCarouselPager.vue.d.ts +2 -2
  163. package/dist/components/ui/carousel/index.d.ts +0 -1
  164. package/dist/components/ui/command/Command.vue.d.ts +4 -1
  165. package/dist/components/ui/dialog/DialogContent.vue.d.ts +8 -3
  166. package/dist/components/ui/drawer/Drawer.vue.d.ts +46 -33
  167. package/dist/components/ui/drawer/DrawerContent.vue.d.ts +12 -8
  168. package/dist/components/ui/drawer/DrawerDescription.vue.d.ts +2 -2
  169. package/dist/components/ui/drawer/DrawerOverlay.vue.d.ts +1 -1
  170. package/dist/components/ui/drawer/DrawerTitle.vue.d.ts +2 -2
  171. package/dist/components/ui/drawer/composables/drawerSnapContext.d.ts +26 -0
  172. package/dist/components/ui/drawer/composables/useDrawerSnap.d.ts +17 -0
  173. package/dist/components/ui/drawer/constants.d.ts +45 -0
  174. package/dist/components/ui/drawer/index.d.ts +23 -15
  175. package/dist/components/ui/focus-scope/FocusScope.vue.d.ts +20 -0
  176. package/dist/components/ui/focus-scope/index.d.ts +2 -0
  177. package/dist/components/ui/index.d.ts +1 -1
  178. package/dist/components/ui/popover/PopoverContent.vue.d.ts +3 -0
  179. package/dist/components/ui/progress/ProgressDefault.vue.d.ts +3 -2
  180. package/dist/components/ui/progress/ProgressSectioned.vue.d.ts +14 -3
  181. package/dist/components/ui/select/SelectContent.vue.d.ts +1 -1
  182. package/dist/components/ui/select/SelectTrigger.vue.d.ts +27 -4
  183. package/dist/components/ui/sheet/SheetContent.vue.d.ts +6 -0
  184. package/dist/components/ui/sheet/index.d.ts +1 -1
  185. package/dist/components/ui/skeleton/Skeleton.vue.d.ts +3 -0
  186. package/dist/components/ui/tags-input/TagsInput.vue.d.ts +2 -2
  187. package/dist/components/ui/toast/Toast.vue.d.ts +5 -2
  188. package/dist/components/ui/toast/use-toast.d.ts +14 -0
  189. package/dist/components/ui/toggle/Toggle.vue.d.ts +1 -1
  190. package/dist/composables/dark/index.d.ts +1 -1
  191. package/dist/composables/dark/useGlobalDark.d.ts +23 -1
  192. package/dist/composables/glass/canvas2d/useCanvas2D.d.ts +13 -6
  193. package/dist/composables/glass/index.d.ts +5 -2
  194. package/dist/composables/glass/useSpecularPointer.d.ts +33 -0
  195. package/dist/composables/glass/useSpecularTracking.d.ts +20 -0
  196. package/dist/composables/glass/vSpecular.d.ts +2 -0
  197. package/dist/composables/glass/webgl/shaders/flow.glsl.d.ts +1 -0
  198. package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +16 -0
  199. package/dist/composables/glass/webgpu/index.d.ts +2 -0
  200. package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +54 -0
  201. package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +84 -0
  202. package/dist/composables/motion/core/index.d.ts +1 -0
  203. package/dist/composables/motion/index.d.ts +4 -0
  204. package/dist/composables/motion/useDockCtaReceive.d.ts +59 -0
  205. package/dist/composables/motion/useDragMorph.d.ts +77 -0
  206. package/dist/composables/motion/useLiquidFlex.d.ts +11 -0
  207. package/dist/composables/motion/useLiquidPress.d.ts +71 -0
  208. package/dist/composables/motion/useLiquidReveal.d.ts +51 -0
  209. package/dist/composables/motion/useNumericTransition.d.ts +3 -3
  210. package/dist/composables/motion/usePointerVelocityField.d.ts +98 -0
  211. package/dist/composables/motion/useViewTransition.d.ts +36 -1
  212. package/dist/concentric.d.ts +1 -0
  213. package/dist/concentric.js +562 -0
  214. package/dist/configurator.js +3 -2
  215. package/dist/confirm-dialog.js +22 -24
  216. package/dist/constellation.js +93 -95
  217. package/dist/context-menu.js +3 -3
  218. package/dist/controls.js +10 -4
  219. package/dist/createCanvasLifecycle-CHD5XrDW.js +82 -0
  220. package/dist/dark.d.ts +1 -1
  221. package/dist/dark.js +1 -1
  222. package/dist/data-table.js +1 -1
  223. package/dist/dialog.js +2 -2
  224. package/dist/dock.js +738 -442
  225. package/dist/{dockContext-BegmJVmx.js → dockContext-BNfyPLe9.js} +1 -1
  226. package/dist/dom.js +5 -5
  227. package/dist/dot-flow-field.d.ts +1 -0
  228. package/dist/dot-flow-field.js +604 -0
  229. package/dist/drawer.d.ts +1 -0
  230. package/dist/drawer.js +380 -0
  231. package/dist/{dropdown-menu-DzkkyBwX.js → dropdown-menu-CofSZuk8.js} +14 -15
  232. package/dist/dropdown-menu.js +1 -1
  233. package/dist/easing.d.ts +1 -0
  234. package/dist/easing.js +463 -0
  235. package/dist/expandable-container.js +45 -38
  236. package/dist/fading-scroll.d.ts +1 -0
  237. package/dist/fading-scroll.js +2 -0
  238. package/dist/focus-scope.d.ts +1 -0
  239. package/dist/focus-scope.js +23 -0
  240. package/dist/forms.js +7 -7
  241. package/dist/fourier-field.js +135 -122
  242. package/dist/fourier-math.js +2 -2
  243. package/dist/glass-panel.js +39 -36
  244. package/dist/glass-ui.css +1 -1
  245. package/dist/glass-ui.js +154 -362
  246. package/dist/goo-blob.js +838 -227
  247. package/dist/handmark.d.ts +1 -0
  248. package/dist/handmark.js +707 -0
  249. package/dist/header-ribbon.js +1 -1
  250. package/dist/hover-card.js +1 -1
  251. package/dist/hover-popover.js +1 -1
  252. package/dist/icon-chip.d.ts +1 -0
  253. package/dist/icon-chip.js +2 -0
  254. package/dist/icon-tooltip.js +1 -1
  255. package/dist/index.d.ts +3 -3
  256. package/dist/instrument-chassis.js +1 -1
  257. package/dist/keyboard.js +1 -1
  258. package/dist/label.js +1 -1
  259. package/dist/labeled-field.js +6 -6
  260. package/dist/{math-U6-RrLmV.js → math-BINYmg5z.js} +11 -3
  261. package/dist/{menuItemVariants-DPiEarb0.js → menuItemVariants-D8VNHq22.js} +10 -4
  262. package/dist/metric-badge.js +1 -1
  263. package/dist/metric-cell.js +25 -22
  264. package/dist/metric-stack.js +4 -8
  265. package/dist/motion-core.js +36 -35
  266. package/dist/motion-curves.js +1 -1
  267. package/dist/motion.js +157 -55
  268. package/dist/notification.js +1 -1
  269. package/dist/number-field.js +1 -1
  270. package/dist/pager-dots.d.ts +1 -0
  271. package/dist/pager-dots.js +91 -0
  272. package/dist/paper-backdrop.js +1 -1
  273. package/dist/popover.js +1 -1
  274. package/dist/{presets-BKVyQfbt.js → presets-BW2b-fr1.js} +14 -1
  275. package/dist/{compile-B7NGOBcP.js → procedural-color.glsl-CIFsJhwI.js} +1 -155
  276. package/dist/procedural-color.wgsl-CToRHugY.js +224 -0
  277. package/dist/progress.js +1 -1
  278. package/dist/pulse.js +1 -1
  279. package/dist/reactive.js +2 -2
  280. package/dist/scrolling-text.js +1 -1
  281. package/dist/search.js +10 -12
  282. package/dist/select.js +3 -3
  283. package/dist/separator.js +1 -1
  284. package/dist/sheet-tZMg0E0w.js +218 -0
  285. package/dist/sheet.js +1 -1
  286. package/dist/{slider-B-JP2JlI.js → slider-DVb4HXU-.js} +7 -7
  287. package/dist/slider.js +1 -1
  288. package/dist/sortable-list.js +3 -3
  289. package/dist/spa-view.d.ts +1 -0
  290. package/dist/spa-view.js +46 -0
  291. package/dist/styles/animations.css +40 -31
  292. package/dist/styles/border-progress.css +109 -0
  293. package/dist/styles/cards.css +76 -0
  294. package/dist/styles/components.css +1 -1
  295. package/dist/styles/configurator.css +35 -0
  296. package/dist/styles/critical-partition.mjs +140 -0
  297. package/dist/styles/critical.css +12 -0
  298. package/dist/styles/deferred.css +31 -0
  299. package/dist/styles/dock/density.css +64 -0
  300. package/dist/styles/dock/layers.css +54 -30
  301. package/dist/styles/dock/morph.css +124 -7
  302. package/dist/styles/dock/overflow.css +31 -2
  303. package/dist/styles/dock/rail-extend.css +168 -71
  304. package/dist/styles/dock/section.css +59 -0
  305. package/dist/styles/dock/shell.css +83 -16
  306. package/dist/styles/dock-controls/icon-button.css +11 -1
  307. package/dist/styles/dock-controls/tab-button.css +24 -83
  308. package/dist/styles/dock-controls/triggers.css +7 -0
  309. package/dist/styles/dock.css +38 -3
  310. package/dist/styles/drawer.css +127 -35
  311. package/dist/styles/feedback-tone.css +104 -0
  312. package/dist/styles/glass/deep.css +44 -0
  313. package/dist/styles/glass/ladder.css +154 -52
  314. package/dist/styles/glass/material.css +78 -15
  315. package/dist/styles/glass/reveal.css +136 -0
  316. package/dist/styles/glass/rim.css +100 -0
  317. package/dist/styles/glass/surface-axis.css +113 -0
  318. package/dist/styles/glass/surfaces.css +189 -15
  319. package/dist/styles/glass-refract.css +96 -44
  320. package/dist/styles/glass-specular-track.css +7 -0
  321. package/dist/styles/glass.css +8 -2
  322. package/dist/styles/hover-popover.css +7 -6
  323. package/dist/styles/icon-chip.css +211 -0
  324. package/dist/styles/index.css +78 -4
  325. package/dist/styles/instrument-chassis.css +107 -2
  326. package/dist/styles/menu.css +127 -0
  327. package/dist/styles/scroll-choreography.css +300 -0
  328. package/dist/styles/segmented-tabs.css +188 -86
  329. package/dist/styles/select.css +50 -0
  330. package/dist/styles/theme/bridges.css +22 -1
  331. package/dist/styles/theme/literals.css +11 -2
  332. package/dist/styles/theme/radius.css +6 -1
  333. package/dist/styles/tokens/color-radius.css +40 -13
  334. package/dist/styles/tokens/dark-arm.css +200 -20
  335. package/dist/styles/tokens/glass-deep.css +75 -0
  336. package/dist/styles/tokens/glass-fx.css +333 -0
  337. package/dist/styles/tokens/glass.css +95 -315
  338. package/dist/styles/tokens/light-dark.css +64 -22
  339. package/dist/styles/tokens/offsets.css +116 -0
  340. package/dist/styles/tokens/on-glass-fg.css +39 -0
  341. package/dist/styles/tokens/property-regs.css +130 -10
  342. package/dist/styles/tokens/scale-paper.css +155 -84
  343. package/dist/styles/tokens/scheme-motion.css +102 -46
  344. package/dist/styles/tokens/scroll-tokens.css +123 -0
  345. package/dist/styles/tokens/{offsets-sizing.css → sizing.css} +88 -89
  346. package/dist/styles/tokens.css +9 -3
  347. package/dist/styles/transitions.css +7 -7
  348. package/dist/styles/typography/scale.css +153 -0
  349. package/dist/styles/typography/semantic.css +220 -0
  350. package/dist/styles/typography/utilities.css +174 -0
  351. package/dist/styles/typography.css +23 -507
  352. package/dist/styles/utilities/a11y-overrides.css +33 -4
  353. package/dist/styles/utilities/animate.css +27 -24
  354. package/dist/styles/utilities/base-misc.css +255 -0
  355. package/dist/styles/utilities/base.css +100 -138
  356. package/dist/styles/utilities/btn.css +21 -202
  357. package/dist/styles/utilities/metal.css +189 -0
  358. package/dist/styles/utilities.css +14 -7
  359. package/dist/styles/view-transition.css +4 -1
  360. package/dist/switch.js +1 -1
  361. package/dist/tabs.js +275 -191
  362. package/dist/timeline.js +2 -2
  363. package/dist/toast.js +1 -1
  364. package/dist/toggle-chip.js +3 -1
  365. package/dist/toggle-group.js +1 -1
  366. package/dist/tooltip.js +1 -1
  367. package/dist/typewriter.js +1 -1
  368. package/dist/{useAnimatedNumber-C5I3wWd8.js → useAnimatedNumber-BfUq2bUM.js} +1 -1
  369. package/dist/useCanvas2D-B8w_E3Rr.js +83 -0
  370. package/dist/useConfiguratorState-DNlOh6c8.js +161 -0
  371. package/dist/useDragMorph-DgxnsVJz.js +102 -0
  372. package/dist/{useGlobalDark-yhL4Wp-s.js → useGlobalDark-C28t0VWJ.js} +22 -3
  373. package/dist/useLiquidPress-kfb4KX79.js +39 -0
  374. package/dist/usePointerVelocityField-JbRd5CrM.js +137 -0
  375. package/dist/{useRAFLoop-Bxv0o6L5.js → useRAFLoop-UYa4zoiN.js} +1 -1
  376. package/dist/useSpring-C0jyvEJB.js +40 -0
  377. package/dist/useSpringMount-q1amq1SJ.js +71 -0
  378. package/dist/useSpringPress-BsqPr7FJ.js +34 -0
  379. package/dist/useSurfaceAxis-g0NloYEF.js +7 -0
  380. package/dist/{useTouchGate-Dg7MQI1G.js → useTouchGate-CBZTD4SD.js} +1 -1
  381. package/dist/vReveal-Czsb7zQC.js +10 -0
  382. package/dist/vSpecular-CQFmLNzA.js +68 -0
  383. package/dist/vendor-CKmzio-i.js +226 -0
  384. package/dist/watercolor-dot.js +12 -5
  385. package/package.json +193 -25
  386. package/src/styles/animations.css +40 -31
  387. package/src/styles/border-progress.css +109 -0
  388. package/src/styles/cards.css +76 -0
  389. package/src/styles/configurator.css +35 -0
  390. package/src/styles/critical-partition.mjs +140 -0
  391. package/src/styles/dock/density.css +64 -0
  392. package/src/styles/dock/layers.css +54 -30
  393. package/src/styles/dock/morph.css +124 -7
  394. package/src/styles/dock/overflow.css +31 -2
  395. package/src/styles/dock/rail-extend.css +168 -71
  396. package/src/styles/dock/section.css +59 -0
  397. package/src/styles/dock/shell.css +83 -16
  398. package/src/styles/dock-controls/icon-button.css +11 -1
  399. package/src/styles/dock-controls/tab-button.css +24 -83
  400. package/src/styles/dock-controls/triggers.css +7 -0
  401. package/src/styles/dock.css +38 -3
  402. package/src/styles/drawer.css +123 -35
  403. package/src/styles/feedback-tone.css +104 -0
  404. package/src/styles/glass/deep.css +44 -0
  405. package/src/styles/glass/ladder.css +154 -52
  406. package/src/styles/glass/material.css +78 -15
  407. package/src/styles/glass/reveal.css +136 -0
  408. package/src/styles/glass/rim.css +100 -0
  409. package/src/styles/glass/surface-axis.css +113 -0
  410. package/src/styles/glass/surfaces.css +189 -15
  411. package/src/styles/glass-refract.css +96 -44
  412. package/src/styles/glass-specular-track.css +7 -0
  413. package/src/styles/glass.css +8 -2
  414. package/src/styles/hover-popover.css +7 -6
  415. package/src/styles/icon-chip.css +211 -0
  416. package/src/styles/index.css +78 -4
  417. package/src/styles/instrument-chassis.css +107 -2
  418. package/src/styles/menu.css +127 -0
  419. package/src/styles/scroll-choreography.css +300 -0
  420. package/src/styles/segmented-tabs.css +184 -84
  421. package/src/styles/select.css +50 -0
  422. package/src/styles/theme/bridges.css +22 -1
  423. package/src/styles/theme/literals.css +11 -2
  424. package/src/styles/theme/radius.css +6 -1
  425. package/src/styles/tokens/color-radius.css +40 -13
  426. package/src/styles/tokens/dark-arm.css +200 -20
  427. package/src/styles/tokens/glass-deep.css +75 -0
  428. package/src/styles/tokens/glass-fx.css +333 -0
  429. package/src/styles/tokens/glass.css +95 -315
  430. package/src/styles/tokens/light-dark.css +64 -22
  431. package/src/styles/tokens/offsets.css +116 -0
  432. package/src/styles/tokens/on-glass-fg.css +39 -0
  433. package/src/styles/tokens/property-regs.css +130 -10
  434. package/src/styles/tokens/scale-paper.css +155 -84
  435. package/src/styles/tokens/scheme-motion.css +102 -46
  436. package/src/styles/tokens/scroll-tokens.css +123 -0
  437. package/src/styles/tokens/{offsets-sizing.css → sizing.css} +88 -89
  438. package/src/styles/tokens.css +9 -3
  439. package/src/styles/transitions.css +7 -7
  440. package/src/styles/typography/scale.css +153 -0
  441. package/src/styles/typography/semantic.css +220 -0
  442. package/src/styles/typography/utilities.css +174 -0
  443. package/src/styles/typography.css +23 -507
  444. package/src/styles/utilities/a11y-overrides.css +33 -4
  445. package/src/styles/utilities/animate.css +27 -24
  446. package/src/styles/utilities/base-misc.css +255 -0
  447. package/src/styles/utilities/base.css +100 -138
  448. package/src/styles/utilities/btn.css +21 -202
  449. package/src/styles/utilities/metal.css +189 -0
  450. package/src/styles/utilities.css +14 -7
  451. package/src/styles/view-transition.css +4 -1
  452. package/dist/CardAction-Cj2eycQ2.js +0 -157
  453. package/dist/DialogContent-Dl9WkAoS.js +0 -100
  454. package/dist/Notification-DdwNxIrI.js +0 -100
  455. package/dist/NumberFieldContent-CqaN-SvN.js +0 -145
  456. package/dist/PopoverContent-BYwt2-4x.js +0 -121
  457. package/dist/TabsList-Dttss653.js +0 -105
  458. package/dist/Toaster-D6q4HtXu.js +0 -263
  459. package/dist/button-ChXMfsud.js +0 -81
  460. package/dist/check-njhk-vfu.js +0 -7
  461. package/dist/chevron-down-DKkxb4VV.js +0 -7
  462. package/dist/chevron-right-CPXbqQQz.js +0 -7
  463. package/dist/chevron-up-n_24SqI-.js +0 -7
  464. package/dist/components/custom/underline/GlassUnderline.vue.d.ts +0 -84
  465. package/dist/components/custom/underline/index.d.ts +0 -2
  466. package/dist/components/custom/underline/types.d.ts +0 -56
  467. package/dist/components/ui/carousel/CarouselDots.vue.d.ts +0 -4
  468. package/dist/createLucideIcon-DydS2qgk.js +0 -43
  469. package/dist/minimize-2-BV31Ob_h.js +0 -38
  470. package/dist/search-BSGrf2Sk.js +0 -12
  471. package/dist/sheet-1fChZjtw.js +0 -214
  472. package/dist/underline.d.ts +0 -1
  473. package/dist/underline.js +0 -85
  474. package/dist/useCanvas2D-ClrQuZtp.js +0 -96
  475. package/dist/useConfiguratorState-DAoeHVue.js +0 -287
  476. package/dist/useSpecularTracking-Bo5su68i.js +0 -32
  477. package/dist/useSpringMount-CI2jOstM.js +0 -108
  478. package/dist/vReveal-CqaCz_mC.js +0 -44
  479. package/dist/x-BUwTKe50.js +0 -10
  480. /package/dist/{CollapsibleContent-CP9qF1v4.js → CollapsibleContent-68dEXIAl.js} +0 -0
  481. /package/dist/{InstrumentChassis-UUJX0-mW.js → InstrumentChassis-Bx0F_q5g.js} +0 -0
  482. /package/dist/{Label-r3WzWrsj.js → Label-C2ejNWeC.js} +0 -0
  483. /package/dist/{ModalOverlay-DVLI2VRr.js → ModalOverlay-D1VrWyoi.js} +0 -0
  484. /package/dist/{PaperBackdrop-DIXTtVq6.js → PaperBackdrop-Vf3tlpvd.js} +0 -0
  485. /package/dist/{SelectGroup-aumMgWLs.js → SelectGroup-DwwjicPY.js} +0 -0
  486. /package/dist/{SelectSeparator-BQ_1Fcbp.js → SelectSeparator-DXswVdRz.js} +0 -0
  487. /package/dist/{Separator-0JE6LtNu.js → Separator-pKF0oA4M.js} +0 -0
  488. /package/dist/{_plugin-vue_export-helper-ok8pgSl5.js → _plugin-vue_export-helper-C1je1s0u.js} +0 -0
  489. /package/dist/{badge-UILT_3pZ.js → badge-D9XWW4GT.js} +0 -0
  490. /package/dist/{color-CUYeFbgd.js → color-DweYl7pE.js} +0 -0
  491. /package/dist/{constants-CS75AWHG.js → constants-BPOqYJAm.js} +0 -0
  492. /package/dist/{createContext-BM46COQ-.js → createContext-CpBNTRMI.js} +0 -0
  493. /package/dist/{prng-D27-B3tK.js → prng-Za0Rmgag.js} +0 -0
  494. /package/dist/{resolveCanvasColor-BBiYfp8g.js → resolveCanvasColor-CUyHr5Uu.js} +0 -0
  495. /package/dist/{springPresets--YdWTHtm.js → springPresets-CFQGQfdl.js} +0 -0
  496. /package/dist/{useIntersectionPause-Cc-H9ees.js → useIntersectionPause-Bj4sPkMh.js} +0 -0
  497. /package/dist/{useInterval-iHludrxk.js → useInterval-CvK1mL92.js} +0 -0
  498. /package/dist/{useKeyboardShortcuts-Be3w_Rwk.js → useKeyboardShortcuts-BXWXOZ-9.js} +0 -0
  499. /package/dist/{useLiquidFlex-BL0lLLN2.js → useLiquidFlex-mZPMiNXh.js} +0 -0
  500. /package/dist/{useResizeObserver-BhgdhOIj.js → useResizeObserver-Bpoi7tRE.js} +0 -0
  501. /package/dist/{useResolveTokenColor-Dvn2RZJW.js → useResolveTokenColor-vAylyR0x.js} +0 -0
  502. /package/dist/{useScrollProgress-Dlvx-L3v.js → useScrollProgress-D7bYU2RK.js} +0 -0
  503. /package/dist/{useSortable-muI29agz.js → useSortable-DHjtZSEd.js} +0 -0
  504. /package/dist/{useTextHighlight-DmRYkOBx.js → useTextHighlight-CWEi25hf.js} +0 -0
  505. /package/dist/{useTimer-Dzarvzuk.js → useTimer-BHJOKr35.js} +0 -0
  506. /package/dist/{useUserInvalidAria-B2h6jAM_.js → useUserInvalidAria-y5namzeE.js} +0 -0
  507. /package/dist/{useViewportReady-B40FK4Pa.js → useViewportReady-anbac3m6.js} +0 -0
@@ -0,0 +1,83 @@
1
+ import { t as e } from "./createCanvasLifecycle-CHD5XrDW.js";
2
+ import { getCurrentScope as t, onScopeDispose as n, toValue as r } from "vue";
3
+ //#region src/composables/glass/canvas2d/useCanvas2D.ts
4
+ var i = "200px";
5
+ function a(a) {
6
+ let { setup: o, autoStart: s = !0, contextAttrs: c, rootMargin: l = i } = a, u = a.respectReducedMotion ?? !0, d = () => r(a.canvas), f = typeof window < "u", p = null, m = null, h = null, g = !1, _ = null, v = null, y = !1;
7
+ function b() {
8
+ p && m && m.render(p, f ? performance.now() : 0);
9
+ }
10
+ function x(e) {
11
+ if (!p) return;
12
+ let t = e.clientWidth || e.offsetWidth || 0, n = e.clientHeight || e.offsetHeight || 0;
13
+ if (!t || !n) return;
14
+ let r = Math.min(f && window.devicePixelRatio || 1, 2);
15
+ e.width = Math.round(t * r), e.height = Math.round(n * r), p.setTransform(r, 0, 0, r, 0, 0);
16
+ let i = !h || !h.running || h.reducedMotion;
17
+ !y && i && b();
18
+ }
19
+ function S(e) {
20
+ _ || typeof ResizeObserver > "u" || (_ = new ResizeObserver(() => {
21
+ let e = d();
22
+ e && x(e);
23
+ }), _.observe(e));
24
+ }
25
+ function C(e) {
26
+ v || typeof IntersectionObserver > "u" || (v = new IntersectionObserver((e) => {
27
+ for (let t of e) t.isIntersecting || t.intersectionRatio > 0 ? h?.resume("off-screen-io") : h?.suspend("off-screen-io");
28
+ }, { rootMargin: l }), v.observe(e));
29
+ }
30
+ function w(e) {
31
+ let t = e.getContext("2d", c);
32
+ if (!t) throw Error("[useCanvas2D] 2D context unavailable");
33
+ return p = t, m = o(p), S(e), C(e), {
34
+ frame: (e) => {
35
+ p && m && m.render(p, e);
36
+ },
37
+ time: () => f ? performance.now() : 0,
38
+ shouldContinue: () => !0,
39
+ teardown: () => {
40
+ m?.teardown?.(), v?.disconnect(), v = null, _?.disconnect(), _ = null, p = null, m = null;
41
+ }
42
+ };
43
+ }
44
+ function T() {
45
+ if (h || g) return;
46
+ let t = d();
47
+ t && (h = e({
48
+ canvas: t,
49
+ respectReducedMotion: u,
50
+ buildContext: () => w(t),
51
+ resize: () => x(t)
52
+ }), y = !0, h.arm(), y = !1);
53
+ }
54
+ function E(e = "manual") {
55
+ h?.suspend(e);
56
+ }
57
+ function D(e = "manual") {
58
+ h?.resume(e);
59
+ }
60
+ function O() {
61
+ h?.wake();
62
+ }
63
+ function k() {
64
+ g || (g = !0, h?.dispose(), h = null);
65
+ }
66
+ return s && T(), t() && n(k), {
67
+ arm: T,
68
+ suspend: E,
69
+ resume: D,
70
+ wake: O,
71
+ dispose: k,
72
+ isRunning: () => h?.running ?? !1,
73
+ get ctx() {
74
+ return p;
75
+ },
76
+ get reducedMotion() {
77
+ return h?.reducedMotion ?? !1;
78
+ }
79
+ };
80
+ }
81
+ var o = a;
82
+ //#endregion
83
+ export { o as n, a as t };
@@ -0,0 +1,161 @@
1
+ import { t as e } from "./cn-DJXf4yaB.js";
2
+ import { t } from "./FadingScroll-DI6hQhT9.js";
3
+ import { i as n } from "./ConfiguratorRow-BR4l-ixA.js";
4
+ import { Fragment as r, computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createVNode as l, defineComponent as u, normalizeClass as d, normalizeStyle as f, openBlock as p, reactive as m, ref as h, renderList as g, renderSlot as _, toDisplayString as v, toRaw as y, unref as b, withCtx as x } from "vue";
5
+ //#region src/components/custom/configurator/Configurator.vue?vue&type=script&setup=true&lang.ts
6
+ var S = {
7
+ key: 0,
8
+ class: "configurator-presets shrink-0 border-b px-3 py-2"
9
+ }, C = [
10
+ "aria-selected",
11
+ "data-active",
12
+ "onClick"
13
+ ], w = { class: "flex flex-col" }, T = {
14
+ key: 2,
15
+ class: "configurator-controls flex-1 min-h-0 overflow-visible"
16
+ }, E = { class: "flex flex-col" }, D = {
17
+ key: 3,
18
+ class: "configurator-footer shrink-0 border-t px-3 py-2"
19
+ }, O = /* @__PURE__ */ u({
20
+ __name: "Configurator",
21
+ props: {
22
+ presets: {},
23
+ activePreset: {},
24
+ layers: {},
25
+ activeLayer: {},
26
+ scrollMode: { default: "auto" },
27
+ density: { default: "comfortable" },
28
+ asideSide: { default: "right" },
29
+ asideWidth: {},
30
+ class: { type: [
31
+ Boolean,
32
+ null,
33
+ String,
34
+ Object,
35
+ Array
36
+ ] }
37
+ },
38
+ emits: [
39
+ "select-preset",
40
+ "select-layer",
41
+ "reset"
42
+ ],
43
+ setup(u, { emit: m }) {
44
+ let h = u;
45
+ n(i(() => h.density));
46
+ let y = m, O = i(() => e("configurator glass-floating rounded-panel border border-border/60 overflow-hidden", "grid grid-cols-1", "grid-rows-[minmax(var(--configurator-stage-min,18rem),auto)_minmax(0,1fr)] lg:grid-rows-none", "lg:grid-cols-[minmax(0,1fr)_minmax(var(--configurator-aside-min,280px),var(--configurator-aside-max,360px))]", "min-h-0", h.class)), k = i(() => {
47
+ if (h.asideWidth == null) return;
48
+ let [e, t] = Array.isArray(h.asideWidth) ? h.asideWidth : [h.asideWidth, h.asideWidth];
49
+ return {
50
+ "--configurator-aside-min": e,
51
+ "--configurator-aside-max": t
52
+ };
53
+ }), A = i(() => h.asideSide === "left" ? "lg:col-start-2" : ""), j = i(() => h.asideSide === "left" ? "lg:col-start-1 lg:row-start-1" : ""), M = i(() => h.asideSide === "left" ? "lg:border-r lg:border-l-0" : "lg:border-l"), N = i(() => h.scrollMode !== "never");
54
+ return (n, i) => (p(), s("section", {
55
+ "data-slot": "configurator",
56
+ class: d(O.value),
57
+ style: f(k.value)
58
+ }, [c("div", { class: d(b(e)("configurator-stage relative min-h-0 min-w-0 overflow-hidden", A.value)) }, [_(n.$slots, "stage")], 2), c("aside", { class: d(b(e)("configurator-aside flex min-h-0 min-w-0 flex-col border-t lg:border-t-0", M.value, j.value)) }, [
59
+ n.$slots.presets || u.presets && u.presets.length > 0 ? (p(), s("div", S, [_(n.$slots, "presets", {
60
+ presets: u.presets,
61
+ activePreset: u.activePreset
62
+ }, () => [l(b(t), {
63
+ axis: "x",
64
+ class: "flex gap-2 scrollbar-hidden",
65
+ role: "tablist",
66
+ "aria-label": "Presets"
67
+ }, {
68
+ default: x(() => [(p(!0), s(r, null, g(u.presets, (t) => (p(), s("button", {
69
+ key: t.key,
70
+ type: "button",
71
+ role: "tab",
72
+ "data-slot": "configurator-preset",
73
+ "aria-selected": t.key === u.activePreset,
74
+ "data-active": t.key === u.activePreset || void 0,
75
+ class: d(b(e)("tap-squish focus-ring transition-control shrink-0 rounded-pill border px-3 py-1 text-xs font-medium", t.key === u.activePreset ? "glass-quiet border-border/50 text-foreground" : "border-border/40 bg-card/40 text-foreground hover:bg-card/70")),
76
+ onClick: (e) => y("select-preset", t.key)
77
+ }, v(t.label), 11, C))), 128))]),
78
+ _: 1
79
+ })])])) : o("", !0),
80
+ N.value ? (p(), a(b(t), {
81
+ key: 1,
82
+ axis: "y",
83
+ class: "configurator-controls flex-1 min-h-0 scrollbar-thin"
84
+ }, {
85
+ default: x(() => [_(n.$slots, "controls", {
86
+ layers: u.layers,
87
+ activeLayer: u.activeLayer,
88
+ selectLayer: (e) => y("select-layer", e)
89
+ }, () => [c("div", w, [_(n.$slots, "default")])])]),
90
+ _: 3
91
+ })) : (p(), s("div", T, [_(n.$slots, "controls", {
92
+ layers: u.layers,
93
+ activeLayer: u.activeLayer,
94
+ selectLayer: (e) => y("select-layer", e)
95
+ }, () => [c("div", E, [_(n.$slots, "default")])])])),
96
+ n.$slots.footer ? (p(), s("div", D, [_(n.$slots, "footer", { reset: () => y("reset") })])) : o("", !0)
97
+ ], 2)], 6));
98
+ }
99
+ });
100
+ //#endregion
101
+ //#region src/components/custom/configurator/useConfiguratorState.ts
102
+ function k(e) {
103
+ let t = y(e);
104
+ if (typeof structuredClone != "function") throw Error("[glass-ui:configurator] structuredClone is unavailable in this runtime. Pass a custom clone via ConfiguratorStateOptions.clone for environments without structured-clone support.");
105
+ try {
106
+ return structuredClone(t);
107
+ } catch (e) {
108
+ throw Error("[glass-ui:configurator] structuredClone failed: " + (e instanceof Error ? e.message : String(e)) + ". Preset values must be structured-cloneable (no functions, symbols, DOM nodes, or class instances). Pass a custom clone via ConfiguratorStateOptions.clone if the data shape requires it.");
109
+ }
110
+ }
111
+ function A(e, t) {
112
+ return JSON.stringify(e) === JSON.stringify(t);
113
+ }
114
+ function j(e) {
115
+ let t = e.clone ?? k, n = e.equals ?? A, r = e.presets, a = e.cloneMode ?? "commit-on-write", o = e.initialPreset ?? (r.length > 0 ? r[0].key : void 0), s = o ? r.find((e) => e.key === o) : void 0, c = m(s ? t(s.config) : {}), l = h(o), u = a === "per-preset" ? Object.fromEntries(r.map((e) => [e.key, t(e.config)])) : null, d = i(() => l.value), f = i(() => {
116
+ let e = l.value;
117
+ if (!e) return !1;
118
+ let t = r.find((t) => t.key === e);
119
+ return t ? !n(c, t.config) : !1;
120
+ });
121
+ function p(e) {
122
+ return r.find((t) => t.key === e);
123
+ }
124
+ function g(e) {
125
+ let t = c, n = e;
126
+ for (let e of Object.keys(t)) e in n || delete t[e];
127
+ for (let e of Object.keys(n)) t[e] = n[e];
128
+ }
129
+ function _(e) {
130
+ u && (u[e] = t(c));
131
+ }
132
+ function v(e) {
133
+ let n = p(e);
134
+ if (n) if (a === "per-preset" && u) {
135
+ let t = l.value;
136
+ t && t !== e && t in u && _(t), l.value = e, g(u[e]);
137
+ } else l.value = e, g(t(n.config));
138
+ }
139
+ function y() {
140
+ let e = l.value;
141
+ if (!e) return;
142
+ let n = p(e);
143
+ n && (a === "per-preset" && u ? (u[e] = t(n.config), g(u[e])) : g(t(n.config)));
144
+ }
145
+ function b(e = 1) {
146
+ if (r.length === 0) return;
147
+ let t = l.value, n = t ? r.findIndex((e) => e.key === t) : -1, i = r.length, a = r[(n + e + i) % i];
148
+ v(a.key);
149
+ }
150
+ return {
151
+ config: c,
152
+ activePreset: d,
153
+ isDirty: f,
154
+ selectPreset: v,
155
+ resetCurrent: y,
156
+ cyclePreset: b,
157
+ getPreset: p
158
+ };
159
+ }
160
+ //#endregion
161
+ export { O as n, j as t };
@@ -0,0 +1,102 @@
1
+ import { t as e } from "./useLiquidFlex-mZPMiNXh.js";
2
+ import { n as t } from "./springPresets-CFQGQfdl.js";
3
+ import { computed as n, onScopeDispose as r, readonly as i, ref as a } from "vue";
4
+ import { Draggable as o, SpringProgress as s, decayRest as c } from "@mkbabb/keyframes.js";
5
+ //#region src/composables/motion/useDragMorph.ts
6
+ function l() {
7
+ return typeof window < "u" && typeof window.matchMedia == "function" && window.matchMedia("(prefers-reduced-motion: reduce)").matches;
8
+ }
9
+ function u(u) {
10
+ let d = () => typeof u.axis == "function" ? u.axis() : u.axis, f = () => typeof u.snapTargets == "function" ? u.snapTargets() : u.snapTargets, p = u.respectReducedMotion !== !1, m = a(!1), h = a(0), { response: g, dampingFraction: _ } = t("snappy"), v = null, y = null;
11
+ function b() {
12
+ if (v) return v;
13
+ let e = new s({
14
+ response: g,
15
+ dampingFraction: _,
16
+ respectReducedMotion: p
17
+ });
18
+ return v = e, y = e.subscribe((t) => {
19
+ if (h.value = t, p && l() || x.drive(T(t)), A && !m.value && e.settled && !k) {
20
+ let e = D(t);
21
+ e != null && (k = !0, A = !1, u.onSnap(e));
22
+ }
23
+ }), e.play(() => {}), e;
24
+ }
25
+ let x = e({
26
+ from: 0,
27
+ to: 1,
28
+ axis: "width",
29
+ squishLaw: "tanh",
30
+ maxStretch: u.maxStretch ?? (() => 1.08)
31
+ }), S = n(() => p && l() ? 1 : x.stretch.value), C = a(0), w = n(() => {
32
+ if (!m.value && (v?.settled ?? !0)) return {};
33
+ let e = h.value - C.value;
34
+ return { translate: d() === "y" ? `0 ${e}px` : `${e}px 0` };
35
+ });
36
+ function T(e) {
37
+ let t = f();
38
+ if (t.length < 2) return 0;
39
+ let n = t[0].center, r = t[t.length - 1].center - n;
40
+ if (r === 0) return 0;
41
+ let i = (e - n) / r;
42
+ return i < 0 ? 0 : i > 1 ? 1 : i;
43
+ }
44
+ function E(e) {
45
+ let t = f();
46
+ if (t.length === 0) return null;
47
+ let n = t[0], r = Math.abs(e - n.center);
48
+ for (let i = 1; i < t.length; i++) {
49
+ let a = t[i], o = Math.abs(e - a.center);
50
+ o < r && (n = a, r = o);
51
+ }
52
+ return n;
53
+ }
54
+ let D = (e) => E(e)?.value ?? null;
55
+ function O() {
56
+ if (!v) return;
57
+ let e = E(c({
58
+ initial: v.value,
59
+ velocity: v.velocity,
60
+ friction: 5
61
+ }));
62
+ e && (v.target = e.center);
63
+ }
64
+ let k = !1, A = !1, j = null, M = null;
65
+ function N() {
66
+ M?.(), M = null, j?.detach();
67
+ let e = u.el.value;
68
+ e && (j = new o({
69
+ spring: b(),
70
+ axis: d()
71
+ }), e.addEventListener("pointerdown", P), M = j.attach(e));
72
+ }
73
+ function P() {
74
+ m.value = !0, k = !1, A = !0, C.value = b().value;
75
+ }
76
+ function F() {
77
+ m.value && (m.value = !1, O());
78
+ }
79
+ function I() {
80
+ typeof window > "u" || (window.addEventListener("pointerup", F), window.addEventListener("pointercancel", F));
81
+ }
82
+ function L() {
83
+ typeof window > "u" || (window.removeEventListener("pointerup", F), window.removeEventListener("pointercancel", F));
84
+ }
85
+ function R() {
86
+ m.value || N();
87
+ }
88
+ N(), I();
89
+ function z() {
90
+ u.el.value?.removeEventListener("pointerdown", P), M?.(), M = null, L(), y?.(), j?.dispose(), j = null;
91
+ }
92
+ return r(z), {
93
+ dragging: i(m),
94
+ position: i(h),
95
+ stretch: i(S),
96
+ dragStyle: w,
97
+ refresh: R,
98
+ detach: z
99
+ };
100
+ }
101
+ //#endregion
102
+ export { u as t };
@@ -7,20 +7,39 @@ var a, o = n(() => {
7
7
  disableTransition: !1
8
8
  }), o = i(n), s = e(!1);
9
9
  function c() {
10
- s.value && (document.documentElement.classList.add("no-transition"), document.documentElement.offsetHeight), o(), s.value && requestAnimationFrame(() => {
10
+ s.value && document.documentElement.classList.add("no-transition"), o(), s.value && requestAnimationFrame(() => {
11
11
  document.documentElement.classList.remove("no-transition");
12
12
  });
13
13
  }
14
14
  function l(e) {
15
15
  s.value = e;
16
16
  }
17
+ let u = /* @__PURE__ */ new Set(), d = !1, f = !1;
18
+ function p(e) {
19
+ if (u.size === 0 || (f = e, d)) return;
20
+ d = !0;
21
+ let t = () => {
22
+ d = !1;
23
+ let e = f;
24
+ for (let t of [...u]) t(e);
25
+ };
26
+ typeof requestAnimationFrame == "function" ? requestAnimationFrame(t) : setTimeout(t, 0);
27
+ }
28
+ function m(e) {
29
+ return u.add(e), () => {
30
+ u.delete(e);
31
+ };
32
+ }
17
33
  return t(n, (e) => {
18
34
  document.documentElement.style.colorScheme = e ? "dark" : "light";
19
- }, { immediate: !0 }), {
35
+ }, { immediate: !0 }), t(n, (e) => {
36
+ p(e);
37
+ }), {
20
38
  isDark: n,
21
39
  toggleDark: c,
22
40
  disableTransitions: s,
23
- setDisableTransitions: l
41
+ setDisableTransitions: l,
42
+ onFlipSettled: m
24
43
  };
25
44
  });
26
45
  function s(e) {
@@ -0,0 +1,39 @@
1
+ import { t as e } from "./useSpringPress-BsqPr7FJ.js";
2
+ import { t } from "./useLiquidFlex-mZPMiNXh.js";
3
+ import { computed as n, watch as r } from "vue";
4
+ //#region src/composables/motion/useLiquidPress.ts
5
+ function i(i = {}) {
6
+ let a = i.shrinkDepth ?? .03, o = i.maxStretch ?? 1.04, s = i.pressVar ?? "--press-t", c = i.engageThreshold ?? .001, l = e({
7
+ response: i.response,
8
+ dampingFraction: i.dampingFraction,
9
+ initial: i.initial,
10
+ initialVelocity: i.initialVelocity,
11
+ settleThreshold: i.settleThreshold,
12
+ velocitySettleThreshold: i.velocitySettleThreshold,
13
+ respectReducedMotion: i.respectReducedMotion,
14
+ onValue: i.onValue
15
+ }), u = t({
16
+ from: 0,
17
+ to: 1,
18
+ axis: "width",
19
+ maxStretch: o,
20
+ squishLaw: "linear"
21
+ });
22
+ r(() => l.value.value, (e) => u.squish(e), {
23
+ immediate: !0,
24
+ flush: "sync"
25
+ });
26
+ let d = n(() => {
27
+ let e = l.value.value, t = u.stretch.value, n = 1 - e * a, r = (n * t).toFixed(4), i = (n / t).toFixed(4), o = { [s]: e.toFixed(4) };
28
+ return e > c && (o.scale = `${r} ${i}`), o;
29
+ });
30
+ return {
31
+ value: l.value,
32
+ press: l.press,
33
+ release: l.release,
34
+ handlers: l.handlers,
35
+ pressStyle: d
36
+ };
37
+ }
38
+ //#endregion
39
+ export { i as t };
@@ -0,0 +1,137 @@
1
+ import { onScopeDispose as e, readonly as t, ref as n } from "vue";
2
+ //#region src/utils/moveBefore.ts
3
+ function r(e, t, n) {
4
+ let r = e;
5
+ typeof r.moveBefore == "function" ? r.moveBefore(t, n) : e.insertBefore(t, n);
6
+ }
7
+ function i() {
8
+ return typeof Element < "u" && "moveBefore" in Element.prototype;
9
+ }
10
+ //#endregion
11
+ //#region src/utils/platformSupport.ts
12
+ function a() {
13
+ return typeof globalThis.scheduler?.postTask == "function";
14
+ }
15
+ //#endregion
16
+ //#region src/composables/motion/useViewTransition.ts
17
+ function o() {
18
+ return typeof document < "u" && typeof document.startViewTransition == "function";
19
+ }
20
+ function s() {
21
+ return typeof window > "u" || typeof window.matchMedia != "function" ? !1 : window.matchMedia("(prefers-reduced-motion: reduce)").matches;
22
+ }
23
+ function c(e, t) {
24
+ let n = typeof document > "u" ? void 0 : document;
25
+ if (!n || typeof n.startViewTransition != "function" || t?.instantUnderReducedMotion && s()) return {
26
+ finished: (async () => e())().then(() => void 0, () => void 0),
27
+ transitioned: !1
28
+ };
29
+ let r = t?.types && t.types.length > 0 ? n.startViewTransition({
30
+ update: () => e(),
31
+ types: t.types
32
+ }) : n.startViewTransition(() => e());
33
+ return r.ready?.catch(() => {}), {
34
+ finished: r.finished.then(() => void 0, () => void 0),
35
+ transitioned: !0
36
+ };
37
+ }
38
+ function l(e, t) {
39
+ return c(e, {
40
+ ...t,
41
+ instantUnderReducedMotion: !0
42
+ });
43
+ }
44
+ function u() {
45
+ return o();
46
+ }
47
+ //#endregion
48
+ //#region src/composables/motion/usePointerVelocityField.ts
49
+ var d = "(prefers-reduced-motion: reduce)";
50
+ function f(e) {
51
+ return e < 0 ? 0 : e > 1 ? 1 : e;
52
+ }
53
+ function p(r = {}) {
54
+ let i = r.positionLerp ?? .22, a = r.velocityLerp ?? .3, o = r.accelerationLerp ?? .3, s = r.burstDecay ?? .96, c = r.respectReducedMotion !== !1, l = typeof window < "u" && typeof window.matchMedia == "function" ? window.matchMedia(d) : null, u = l?.matches ?? !1, p = (e) => {
55
+ u = e.matches, u && x();
56
+ };
57
+ l?.addEventListener("change", p);
58
+ let m = n(!1), h = n({
59
+ x: .5,
60
+ y: .5
61
+ }), g = n({
62
+ x: .5,
63
+ y: .5
64
+ }), _ = n({
65
+ x: 0,
66
+ y: 0
67
+ }), v = n(0), y = n({
68
+ x: 0,
69
+ y: 0
70
+ }), b = n(0);
71
+ function x() {
72
+ _.value = {
73
+ x: 0,
74
+ y: 0
75
+ }, v.value = 0, y.value = {
76
+ x: 0,
77
+ y: 0
78
+ }, b.value = 0, g.value = { ...h.value };
79
+ }
80
+ function S(e, t) {
81
+ c && u || (h.value = {
82
+ x: f(e),
83
+ y: f(t)
84
+ });
85
+ }
86
+ function C(e) {
87
+ if (c && u) return;
88
+ let t = e.currentTarget;
89
+ if (!t) return;
90
+ let n = t.getBoundingClientRect();
91
+ n.width === 0 || n.height === 0 || S((e.clientX - n.left) / n.width, (e.clientY - n.top) / n.height);
92
+ }
93
+ function w() {
94
+ m.value = !0;
95
+ }
96
+ function T() {
97
+ m.value = !1;
98
+ }
99
+ function E(e) {
100
+ if (c && u || !(e > 0)) {
101
+ x();
102
+ return;
103
+ }
104
+ let t = e / 1e3, n = g.value, r = _.value, l = 1 - (1 - i) ** (t * 60), d = n.x + (h.value.x - n.x) * l, f = n.y + (h.value.y - n.y) * l, p = (d - n.x) / t, m = (f - n.y) / t, S = 1 - (1 - a) ** (t * 60), C = r.x + (p - r.x) * S, w = r.y + (m - r.y) * S, T = (C - r.x) / t, E = (w - r.y) / t, D = 1 - (1 - o) ** (t * 60), O = y.value.x + (T - y.value.x) * D, k = y.value.y + (E - y.value.y) * D, A = Math.hypot(C, w), j = s ** (t * 60), M = Math.min(1, b.value * j + A * t * 4);
105
+ g.value = {
106
+ x: d,
107
+ y: f
108
+ }, _.value = {
109
+ x: C,
110
+ y: w
111
+ }, v.value = A, y.value = {
112
+ x: O,
113
+ y: k
114
+ }, b.value = M;
115
+ }
116
+ function D() {
117
+ l?.removeEventListener("change", p);
118
+ }
119
+ return e(D), {
120
+ active: t(m),
121
+ position: t(h),
122
+ smoothedPosition: t(g),
123
+ velocity: t(_),
124
+ speed: t(v),
125
+ acceleration: t(y),
126
+ burst: t(b),
127
+ onPointerMove: C,
128
+ onPointerEnter: w,
129
+ onPointerLeave: T,
130
+ setPointer: S,
131
+ tick: E,
132
+ reset: x,
133
+ dispose: D
134
+ };
135
+ }
136
+ //#endregion
137
+ export { o as a, i as c, u as i, l as n, a as o, c as r, r as s, p as t };
@@ -1,4 +1,4 @@
1
- import { n as e } from "./useIntersectionPause-Cc-H9ees.js";
1
+ import { n as e } from "./useIntersectionPause-Bj4sPkMh.js";
2
2
  import { computed as t, getCurrentScope as n, onScopeDispose as r, readonly as i, ref as a, watch as o } from "vue";
3
3
  //#region src/composables/motion/useYieldToMain.ts
4
4
  function s() {
@@ -0,0 +1,40 @@
1
+ import { getCurrentScope as e, onScopeDispose as t, readonly as n, ref as r, shallowRef as i, toValue as a, watch as o } from "vue";
2
+ import { SpringProgress as s } from "@mkbabb/keyframes.js";
3
+ //#region src/composables/motion/useSpring.ts
4
+ function c(c, l = {}) {
5
+ let u = l.initial ?? 0, d = l.initialVelocity ?? 0, f = r(u), p = r(d), m = r(d === 0), h = i(new s({
6
+ response: l.response ?? .5,
7
+ dampingFraction: l.dampingFraction ?? .86,
8
+ initial: u,
9
+ initialVelocity: d,
10
+ settleThreshold: l.settleThreshold ?? .001,
11
+ velocitySettleThreshold: l.velocitySettleThreshold ?? .001,
12
+ respectReducedMotion: l.respectReducedMotion !== !1
13
+ })), g = h.value.subscribe((e, t) => {
14
+ f.value = e, p.value = t, m.value = h.value.settled, l.onValue?.(e, t);
15
+ });
16
+ h.value.play(() => {});
17
+ let _ = o(() => a(c), (e) => {
18
+ e != null && (h.value.target = e);
19
+ }, { immediate: !0 });
20
+ function v() {
21
+ f.value = h.value.value, p.value = h.value.velocity, m.value = h.value.settled;
22
+ }
23
+ function y() {
24
+ _(), g(), h.value.dispose();
25
+ }
26
+ return e() && t(y), {
27
+ value: n(f),
28
+ velocity: n(p),
29
+ isSettled: n(m),
30
+ snap: () => {
31
+ h.value.snap(), v();
32
+ },
33
+ reset: (e, t) => {
34
+ h.value.reset(e ?? 0, t ?? 0), v();
35
+ },
36
+ dispose: y
37
+ };
38
+ }
39
+ //#endregion
40
+ export { c as t };
@@ -0,0 +1,71 @@
1
+ import { t as e } from "./useSpring-C0jyvEJB.js";
2
+ import { n as t } from "./springPresets-CFQGQfdl.js";
3
+ import { computed as n, nextTick as r, onMounted as i, onScopeDispose as a, ref as o, watch as s } from "vue";
4
+ //#region src/composables/motion/useSpringMount.ts
5
+ var c = Object.fromEntries([
6
+ "smooth",
7
+ "snappy",
8
+ "bouncy",
9
+ "gentle"
10
+ ].map((e) => {
11
+ let { response: n, dampingFraction: r } = t(e);
12
+ return [e, {
13
+ response: n,
14
+ dampingFraction: r
15
+ }];
16
+ }));
17
+ function l(t) {
18
+ let l = c[t.preset ?? "smooth"], u = o(1), d = o(!1), f = 0, p = 0, m = null, h = !1, g = e(u, {
19
+ response: l.response,
20
+ dampingFraction: l.dampingFraction,
21
+ initial: 1,
22
+ settleThreshold: .001,
23
+ velocitySettleThreshold: .001,
24
+ respectReducedMotion: t.respectReducedMotion !== !1
25
+ });
26
+ i(() => {
27
+ t.open.value && r(() => {
28
+ u.value = 0;
29
+ });
30
+ });
31
+ let _ = s(() => t.open.value, (e, t) => {
32
+ e !== t && (d.value || (u.value = +!e));
33
+ }, { immediate: !1 }), v = s(() => g.isSettled.value, (e) => {
34
+ e && h && u.value >= 1 && (h = !1, t.onDismiss?.());
35
+ });
36
+ function y(e) {
37
+ if (e.button !== 0) return;
38
+ let t = e.currentTarget;
39
+ p = t.getBoundingClientRect().height || 1, f = e.clientY, m = e.pointerId, d.value = !0, t.setPointerCapture(e.pointerId);
40
+ }
41
+ function b(e) {
42
+ if (!d.value || e.pointerId !== m) return;
43
+ let t = e.clientY - f;
44
+ if (t <= 0) {
45
+ u.value = 0;
46
+ return;
47
+ }
48
+ u.value = Math.min(1, t / p);
49
+ }
50
+ function x(e) {
51
+ if (!d.value || e.pointerId !== m) return;
52
+ let n = e.currentTarget;
53
+ n.hasPointerCapture(e.pointerId) && n.releasePointerCapture(e.pointerId), d.value = !1, m = null;
54
+ let r = t.dismissThreshold ?? .3;
55
+ u.value >= r ? (h = !0, u.value = 1) : u.value = 0;
56
+ }
57
+ return a(() => {
58
+ _(), v();
59
+ }), {
60
+ position: g.value,
61
+ isDragging: n(() => d.value),
62
+ dragHandlers: {
63
+ onPointerdown: y,
64
+ onPointermove: b,
65
+ onPointerup: x,
66
+ onPointercancel: x
67
+ }
68
+ };
69
+ }
70
+ //#endregion
71
+ export { l as t };