@mkbabb/glass-ui 4.1.0 → 4.2.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 (430) hide show
  1. package/dist/{CardAction-8whJrLWt.js → CardAction-DlVP2evz.js} +58 -54
  2. package/dist/{CommandShortcut-D3yxgHNn.js → CommandShortcut-By-VQcLO.js} +3 -3
  3. package/dist/{ConfiguratorRow-CaP7U3ZA.js → ConfiguratorRow-YMXdINHx.js} +3 -3
  4. package/dist/{ContextMenuContent-B3ZsheLV.js → ContextMenuContent-CMWn6huB.js} +1 -1
  5. package/dist/{ContextMenuSubContent-DDRID3qC.js → ContextMenuSubContent-DvwWCUc0.js} +1 -1
  6. package/dist/{DataTable-Bc9kUtu_.js → DataTable-C4tG3eIJ.js} +4 -4
  7. package/dist/DialogContent-D8U9ZfWS.js +121 -0
  8. package/dist/{DialogScrollContent-TTuovQst.js → DialogScrollContent-BMekN7gq.js} +1 -1
  9. package/dist/{FadingScroll-DLRbH5Xr.js → FadingScroll-P8B30rAD.js} +1 -1
  10. package/dist/{HoverCardContent-Bel1gdLZ.js → HoverCardContent-DAmGYglo.js} +1 -1
  11. package/dist/{HoverPopover-BcIxvyqZ.js → HoverPopover-DYpBOzzF.js} +1 -1
  12. package/dist/{IconChip-DhbdGdFQ.js → IconChip-CQa7XZYc.js} +7 -5
  13. package/dist/{IconTooltip-B0zimd2H.js → IconTooltip-_df8M3xm.js} +1 -1
  14. package/dist/{Input-Cg9DF62r.js → Input-CyU4_hIC.js} +2 -2
  15. package/dist/{MetricBadge-RHdBP72w.js → MetricBadge-DQt_dGah.js} +1 -1
  16. package/dist/{Notification-CphK7AAm.js → Notification-BlSPJhtZ.js} +1 -1
  17. package/dist/{NumberFieldContent-D8cXeyO4.js → NumberFieldContent-Z3VxGu_6.js} +3 -3
  18. package/dist/PagerDots-CYlqVFd4.js +196 -0
  19. package/dist/PaperBackdrop-DYWgrnh8.js +42 -0
  20. package/dist/{PopoverContent-DL7E6vJP.js → PopoverContent-BuKyHZSz.js} +2 -2
  21. package/dist/{Progress-CnqB7gLm.js → Progress-C9SsdwIZ.js} +1 -1
  22. package/dist/{ScrollingText-CTZbA_cG.js → ScrollingText-DY3W1Jfh.js} +2 -2
  23. package/dist/{SelectScrollDownButton-DAKCBEdW.js → SelectScrollDownButton-3mFHX_R-.js} +15 -12
  24. package/dist/{Switch-B8RscmRu.js → Switch-uf-UKPA2.js} +1 -1
  25. package/dist/{Toaster-D9qIHjBI.js → Toaster-ozrsR4mP.js} +1 -1
  26. package/dist/{ToggleGroupItem-BLtr3TJq.js → ToggleGroupItem-BpzaVzNm.js} +4 -4
  27. package/dist/{TooltipProvider-BJ_Y5EGX.js → TooltipProvider-QQVM_80r.js} +1 -1
  28. package/dist/animated-digit.js +2 -2
  29. package/dist/api/index.d.ts +1 -0
  30. package/dist/api/types-extra.d.ts +3 -1
  31. package/dist/api.js +2 -2
  32. package/dist/aurora.js +163 -131
  33. package/dist/badge-Bt14yURi.js +72 -0
  34. package/dist/badge.js +1 -1
  35. package/dist/border-progress.js +1 -1
  36. package/dist/button-D1W9PrzI.js +130 -0
  37. package/dist/button.js +1 -1
  38. package/dist/canvas.js +1 -1
  39. package/dist/card.js +1 -1
  40. package/dist/carousel.js +227 -98
  41. package/dist/chipVariants-BJQ0I2kB.js +18 -0
  42. package/dist/collapsible.js +1 -1
  43. package/dist/color.js +1 -1
  44. package/dist/command.js +1 -1
  45. package/dist/components/custom/aurora/composables/glSetup.d.ts +1 -1
  46. package/dist/components/custom/aurora/composables/uniformBridgeWGPU.d.ts +1 -1
  47. package/dist/components/custom/aurora/constants/presets.d.ts +29 -0
  48. package/dist/components/custom/aurora/constants/shaders/aurora.wgsl.d.ts +1 -1
  49. package/dist/components/custom/aurora/index.d.ts +1 -1
  50. package/dist/components/custom/concentric/Concentric.vue.d.ts +15 -12
  51. package/dist/components/custom/concentric/composables/concentricGLSetup.d.ts +8 -3
  52. package/dist/components/custom/concentric/composables/concentricWGPUSetup.d.ts +8 -4
  53. package/dist/components/custom/concentric/composables/levelField.d.ts +50 -0
  54. package/dist/components/custom/concentric/composables/uniformBridgeWGPU.d.ts +7 -4
  55. package/dist/components/custom/concentric/composables/useConcentric.d.ts +3 -3
  56. package/dist/components/custom/concentric/constants.d.ts +62 -41
  57. package/dist/components/custom/concentric/index.d.ts +2 -2
  58. package/dist/components/custom/concentric/shaders/concentric.glsl.d.ts +2 -2
  59. package/dist/components/custom/concentric/shaders/concentric.wgsl.d.ts +1 -1
  60. package/dist/components/custom/configurator/Configurator.vue.d.ts +23 -2
  61. package/dist/components/custom/configurator/index.d.ts +1 -1
  62. package/dist/components/custom/dock/DockDropdownTrigger.vue.d.ts +4 -3
  63. package/dist/components/custom/dock/DockIconButton.vue.d.ts +10 -0
  64. package/dist/components/custom/dock/DockPopoverTrigger.vue.d.ts +19 -0
  65. package/dist/components/custom/dock/DockStack.vue.d.ts +35 -22
  66. package/dist/components/custom/dock/GlassDock.vue.d.ts +19 -3
  67. package/dist/components/custom/dock/composables/dockMorphContext.d.ts +18 -32
  68. package/dist/components/custom/dock/composables/dockMorphMeasure.d.ts +76 -145
  69. package/dist/components/custom/dock/composables/index.d.ts +1 -0
  70. package/dist/components/custom/dock/composables/railProjection.d.ts +45 -0
  71. package/dist/components/custom/dock/composables/useDockContextSilhouette.d.ts +192 -0
  72. package/dist/components/custom/dock/composables/useDockFission.d.ts +158 -0
  73. package/dist/components/custom/dock/composables/useDockItemDrag.d.ts +18 -0
  74. package/dist/components/custom/dock/composables/useDockShellProps.d.ts +38 -0
  75. package/dist/components/custom/dock/constants.d.ts +14 -3
  76. package/dist/components/custom/dock/index.d.ts +3 -0
  77. package/dist/components/custom/dot-flow-field/composables/flowField.d.ts +21 -0
  78. package/dist/components/custom/dot-flow-field/composables/flowGLProgram.d.ts +8 -0
  79. package/dist/components/custom/dot-flow-field/composables/flowSetupGL.d.ts +9 -0
  80. package/dist/components/custom/dot-flow-field/composables/flowSetupGLFlow.d.ts +12 -0
  81. package/dist/components/custom/dot-flow-field/composables/flowSetupWGPU.d.ts +7 -0
  82. package/dist/components/custom/dot-flow-field/composables/uniformBridgeWGPU.d.ts +28 -2
  83. package/dist/components/custom/dot-flow-field/composables/useFlowParticles.d.ts +18 -17
  84. package/dist/components/custom/dot-flow-field/constants.d.ts +51 -0
  85. package/dist/components/custom/dot-flow-field/index.d.ts +1 -1
  86. package/dist/components/custom/dot-flow-field/shaders/flow-field.compute.wgsl.d.ts +1 -1
  87. package/dist/components/custom/dot-flow-field/shaders/flow-field.glsl.d.ts +29 -0
  88. package/dist/components/custom/dot-flow-field/shaders/flow-field.render.wgsl.d.ts +2 -1
  89. package/dist/components/custom/dot-matrix/composables/uniformBridgeWGPU.d.ts +10 -1
  90. package/dist/components/custom/dot-matrix/composables/useDotSphere.d.ts +7 -0
  91. package/dist/components/custom/dot-matrix/constants.d.ts +14 -0
  92. package/dist/components/custom/dot-matrix/index.d.ts +1 -1
  93. package/dist/components/custom/dot-matrix/shaders/dot-matrix.glsl.d.ts +2 -2
  94. package/dist/components/custom/dot-matrix/shaders/dot-matrix.wgsl.d.ts +1 -1
  95. package/dist/components/custom/fourier-field/FourierField.vue.d.ts +4 -0
  96. package/dist/components/custom/fourier-field/composables/fourierFieldGLSetup.d.ts +9 -0
  97. package/dist/components/custom/fourier-field/composables/fourierFieldWGPUSetup.d.ts +11 -0
  98. package/dist/components/custom/fourier-field/composables/uniformBridgeWGPU.d.ts +16 -1
  99. package/dist/components/custom/fourier-field/composables/useFourierField.d.ts +22 -1
  100. package/dist/components/custom/fourier-field/constants.d.ts +53 -0
  101. package/dist/components/custom/fourier-field/shaders/fourier-field.glsl.d.ts +1 -1
  102. package/dist/components/custom/fourier-field/shaders/fourier-field.render.wgsl.d.ts +1 -1
  103. package/dist/components/custom/goo-blob/composables/easing.d.ts +1 -0
  104. package/dist/components/custom/goo-blob/composables/useBlobSatellites.d.ts +1 -0
  105. package/dist/components/custom/goo-blob/constants.d.ts +26 -1
  106. package/dist/components/custom/goo-blob/shaders/metaball-uniforms.glsl.d.ts +1 -1
  107. package/dist/components/custom/goo-blob/shaders/metaball.wgsl.d.ts +1 -1
  108. package/dist/components/custom/goo-blob/types.d.ts +50 -1
  109. package/dist/components/custom/goo-dot-matrix/composables/gooDotSetup.d.ts +32 -3
  110. package/dist/components/custom/goo-dot-matrix/composables/uniformBridgeWGPU.d.ts +14 -4
  111. package/dist/components/custom/goo-dot-matrix/constants.d.ts +55 -16
  112. package/dist/components/custom/goo-dot-matrix/index.d.ts +1 -1
  113. package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.frag.d.ts +2 -0
  114. package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.wgsl.d.ts +1 -0
  115. package/dist/components/custom/goo-filter/GooFilter.vue.d.ts +22 -0
  116. package/dist/components/custom/goo-filter/index.d.ts +1 -0
  117. package/dist/components/custom/handmark/brush.d.ts +17 -17
  118. package/dist/components/custom/handmark/constants.d.ts +28 -8
  119. package/dist/components/custom/handmark/geometry.d.ts +34 -1
  120. package/dist/components/custom/handmark/index.d.ts +1 -1
  121. package/dist/components/custom/icon-chip/types.d.ts +10 -0
  122. package/dist/components/custom/paper-backdrop/PaperBackdrop.vue.d.ts +18 -0
  123. package/dist/components/custom/paper-grid/composables/paperGrid.d.ts +44 -29
  124. package/dist/components/custom/paper-grid/composables/paperGridGLSetup.d.ts +2 -0
  125. package/dist/components/custom/paper-grid/composables/paperGridWGPUSetup.d.ts +3 -1
  126. package/dist/components/custom/paper-grid/composables/uniformBridgeWGPU.d.ts +2 -2
  127. package/dist/components/custom/paper-grid/constants.d.ts +44 -6
  128. package/dist/components/custom/paper-grid/index.d.ts +2 -2
  129. package/dist/components/custom/paper-grid/shaders/paper-grid.glsl.d.ts +1 -1
  130. package/dist/components/custom/paper-grid/shaders/paper-grid.wgsl.d.ts +1 -1
  131. package/dist/components/custom/selectable-chip/chipVariants.d.ts +39 -0
  132. package/dist/components/custom/selectable-chip/selectableChipVariants.d.ts +12 -20
  133. package/dist/components/custom/tabs/constants.d.ts +16 -8
  134. package/dist/components/custom/timeline/ScrubberTimeline.vue.d.ts +16 -0
  135. package/dist/components/custom/timeline/geometry.d.ts +0 -8
  136. package/dist/components/custom/toggle-chip/index.d.ts +15 -4
  137. package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +12 -10
  138. package/dist/components/ui/_shared/useSurfaceAxis.d.ts +17 -3
  139. package/dist/components/ui/badge/Badge.vue.d.ts +14 -0
  140. package/dist/components/ui/badge/index.d.ts +1 -0
  141. package/dist/components/ui/button/Button.vue.d.ts +1 -0
  142. package/dist/components/ui/card/Card.vue.d.ts +1 -1
  143. package/dist/components/ui/card/ScrollCard.vue.d.ts +1 -1
  144. package/dist/components/ui/carousel/CarouselContent.vue.d.ts +2 -4
  145. package/dist/components/ui/dialog/DialogContent.vue.d.ts +9 -0
  146. package/dist/components/ui/drawer/Drawer.vue.d.ts +33 -14
  147. package/dist/components/ui/drawer/constants.d.ts +8 -6
  148. package/dist/components/ui/drawer/index.d.ts +12 -2
  149. package/dist/components/ui/select/SelectContent.vue.d.ts +9 -0
  150. package/dist/components/ui/slider/Slider.vue.d.ts +9 -0
  151. package/dist/composables/dom/index.d.ts +1 -0
  152. package/dist/composables/dom/useDragVelocity.d.ts +46 -0
  153. package/dist/composables/glass/wave/index.d.ts +4 -0
  154. package/dist/composables/glass/wave/waveField.d.ts +115 -0
  155. package/dist/composables/glass/wave/waveField.glsl.d.ts +1 -0
  156. package/dist/composables/glass/wave/waveField.wgsl.d.ts +1 -0
  157. package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +95 -2
  158. package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +40 -2
  159. package/dist/composables/glass/webgpu/index.d.ts +1 -0
  160. package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +37 -0
  161. package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +49 -2
  162. package/dist/composables/glass/webgpu/webgpuDevice.d.ts +1 -1
  163. package/dist/composables/motion/core/index.d.ts +4 -0
  164. package/dist/composables/motion/core/useHaptic.d.ts +48 -0
  165. package/dist/composables/motion/core/writeVelocityWeight.d.ts +31 -0
  166. package/dist/composables/motion/index.d.ts +2 -0
  167. package/dist/composables/motion/springPresets.d.ts +16 -17
  168. package/dist/composables/motion/suite.d.ts +2 -2
  169. package/dist/composables/motion/useBloomUp.d.ts +97 -0
  170. package/dist/composables/motion/useCelebrationBurst.d.ts +50 -0
  171. package/dist/composables/motion/useDockCtaReceive.d.ts +10 -28
  172. package/dist/composables/motion/useGooMorph.d.ts +72 -0
  173. package/dist/composables/motion/useLiquidFlex.d.ts +18 -0
  174. package/dist/composables/motion/useLiquidMorph.d.ts +108 -0
  175. package/dist/composables/motion/useLiquidPress.d.ts +12 -0
  176. package/dist/composables/motion/useLiquidReveal.d.ts +7 -4
  177. package/dist/composables/motion/useMorphField.d.ts +157 -0
  178. package/dist/composables/motion/useScrollPin.d.ts +49 -0
  179. package/dist/composables/motion/useScrollScene.d.ts +67 -0
  180. package/dist/concentric.js +532 -563
  181. package/dist/configurator.js +2 -2
  182. package/dist/confirm-dialog.js +3 -3
  183. package/dist/constellation.js +4 -4
  184. package/dist/context-menu.js +2 -2
  185. package/dist/controls.js +2 -2
  186. package/dist/createCanvasLifecycle-CuCrGRfq.js +173 -0
  187. package/dist/dark.js +1 -1
  188. package/dist/data-table.js +1 -1
  189. package/dist/deck.js +1 -1
  190. package/dist/dialog.js +3 -3
  191. package/dist/dock.js +1163 -618
  192. package/dist/dockContext-gFVS2gMg.js +18 -0
  193. package/dist/dom.js +7 -6
  194. package/dist/dot-flow-field.js +1114 -523
  195. package/dist/dot-matrix.js +348 -204
  196. package/dist/drawer.js +106 -96
  197. package/dist/{dropdown-menu-aJmV5SqE.js → dropdown-menu-CCfcCQ68.js} +3 -3
  198. package/dist/dropdown-menu.js +1 -1
  199. package/dist/easing.js +3 -3
  200. package/dist/expandable-container.js +2 -2
  201. package/dist/fading-scroll.js +1 -1
  202. package/dist/forms.js +6 -6
  203. package/dist/fourier-field.js +441 -197
  204. package/dist/fourier-math.js +1 -1
  205. package/dist/glass-panel.js +2 -2
  206. package/dist/glass-ui.css +1 -1
  207. package/dist/glass-ui.js +139 -135
  208. package/dist/goo-blob.js +11 -9
  209. package/dist/goo-dot-matrix.js +418 -198
  210. package/dist/handmark.js +137 -94
  211. package/dist/header-ribbon.js +1 -1
  212. package/dist/hover-card.js +1 -1
  213. package/dist/hover-popover.js +1 -1
  214. package/dist/icon-chip.js +1 -1
  215. package/dist/icon-tooltip.js +1 -1
  216. package/dist/index.d.ts +3 -0
  217. package/dist/instrument-chassis.js +1 -1
  218. package/dist/keyboard.js +1 -1
  219. package/dist/label.js +1 -1
  220. package/dist/labeled-field.js +7 -7
  221. package/dist/metric-badge.js +1 -1
  222. package/dist/metric-cell.js +1 -1
  223. package/dist/metric-stack.js +1 -1
  224. package/dist/motion-core.js +42 -39
  225. package/dist/motion-curves.js +20 -14
  226. package/dist/motion.js +226 -26
  227. package/dist/notification.js +1 -1
  228. package/dist/number-field.js +1 -1
  229. package/dist/pager-dots.js +1 -1
  230. package/dist/paper-backdrop.js +1 -1
  231. package/dist/paper-grid.js +315 -342
  232. package/dist/paperGrid-CXCSMbZ1.js +191 -0
  233. package/dist/popover.js +1 -1
  234. package/dist/{presets-CvOUqtdY.js → presets-QvYgnFIZ.js} +13 -12
  235. package/dist/progress.js +1 -1
  236. package/dist/pulse.js +1 -1
  237. package/dist/reactive.js +2 -2
  238. package/dist/{resolveCanvasColor-yPyIpJt9.js → resolveCanvasColor-DsSJk06I.js} +5 -5
  239. package/dist/scrolling-text.js +1 -1
  240. package/dist/search.js +7 -7
  241. package/dist/select.js +3 -3
  242. package/dist/selectable-chip.js +18 -35
  243. package/dist/separator.js +1 -1
  244. package/dist/{sheet-B2flBfLH.js → sheet-DUCIoOe0.js} +3 -3
  245. package/dist/sheet.js +1 -1
  246. package/dist/sidebar.js +1 -1
  247. package/dist/slider-CcICPe3u.js +149 -0
  248. package/dist/slider.js +1 -1
  249. package/dist/sortable-list.js +3 -3
  250. package/dist/{spectrum-walk-BVzA7Biz.js → spectrum-walk-cBNSx_zm.js} +1 -1
  251. package/dist/springPresets-DfoQ6XRY.js +64 -0
  252. package/dist/stacked-icons.js +54 -39
  253. package/dist/styles/cards.css +202 -2
  254. package/dist/styles/components.css +1 -3
  255. package/dist/styles/configurator.css +172 -7
  256. package/dist/styles/critical-partition.mjs +35 -2
  257. package/dist/styles/deferred.css +2 -0
  258. package/dist/styles/dock/adaptive-legibility.css +119 -0
  259. package/dist/styles/dock/density.css +18 -10
  260. package/dist/styles/dock/fission-bridge.css +552 -0
  261. package/dist/styles/dock/layers.css +88 -124
  262. package/dist/styles/dock/morph-bridge.css +15 -2
  263. package/dist/styles/dock/morph.css +45 -114
  264. package/dist/styles/dock/shape.css +137 -11
  265. package/dist/styles/dock/shell.css +1 -3
  266. package/dist/styles/dock/stack-rail.css +95 -7
  267. package/dist/styles/dock-controls/icon-button.css +34 -2
  268. package/dist/styles/dock-controls/triggers.css +23 -1
  269. package/dist/styles/dock-controls.css +18 -0
  270. package/dist/styles/dock.css +16 -1
  271. package/dist/styles/drawer.css +166 -0
  272. package/dist/styles/glass/glass-atom.css +244 -0
  273. package/dist/styles/glass/glass-capsule.css +143 -0
  274. package/dist/styles/glass/glass-chip.css +215 -0
  275. package/dist/styles/glass/liquid-enter.css +252 -0
  276. package/dist/styles/glass/liquid-morph.css +850 -0
  277. package/dist/styles/glass/material.css +70 -1
  278. package/dist/styles/glass/reveal.css +22 -2
  279. package/dist/styles/glass/rim.css +13 -1
  280. package/dist/styles/glass/surfaces.css +18 -8
  281. package/dist/styles/glass.css +11 -0
  282. package/dist/styles/icon-chip.css +45 -0
  283. package/dist/styles/index.css +11 -0
  284. package/dist/styles/jubilance.css +65 -0
  285. package/dist/styles/motion/morph-field.css +229 -0
  286. package/dist/styles/paper.css +230 -14
  287. package/dist/styles/scroll-choreography.css +135 -78
  288. package/dist/styles/segmented-tabs.css +85 -51
  289. package/dist/styles/select.css +151 -0
  290. package/dist/styles/tokens/color-radius.css +1 -1
  291. package/dist/styles/tokens/dark-arm.css +57 -8
  292. package/dist/styles/tokens/glass-deep.css +8 -4
  293. package/dist/styles/tokens/glass-fx.css +80 -2
  294. package/dist/styles/tokens/glass.css +140 -8
  295. package/dist/styles/tokens/light-dark.css +2 -2
  296. package/dist/styles/tokens/property-regs.css +144 -0
  297. package/dist/styles/tokens/scale-paper.css +20 -8
  298. package/dist/styles/tokens/scheme-motion.css +92 -157
  299. package/dist/styles/tokens/scheme-spring.css +239 -0
  300. package/dist/styles/tokens/scroll-tokens.css +15 -15
  301. package/dist/styles/tokens/shadow.css +73 -13
  302. package/dist/styles/tokens.css +9 -2
  303. package/dist/styles/utilities/btn.css +70 -0
  304. package/dist/switch.js +1 -1
  305. package/dist/tabs.js +198 -181
  306. package/dist/timeline.js +241 -206
  307. package/dist/toast.js +1 -1
  308. package/dist/toggle-chip.js +14 -41
  309. package/dist/toggle-group.js +1 -1
  310. package/dist/tooltip.js +1 -1
  311. package/dist/typewriter.js +1 -1
  312. package/dist/{uniformBridgeWGPU-CtAKl45L.js → uniformBridgeWGPU-BCse1SHU.js} +191 -127
  313. package/dist/{useAnimatedNumber-CLrxicG9.js → useAnimatedNumber-BntskVdQ.js} +1 -1
  314. package/dist/{useConfiguratorState-4xblKfwd.js → useConfiguratorState-22BcULzF.js} +37 -35
  315. package/dist/useDockCtaReceive-DX7RDb6_.js +88 -0
  316. package/dist/{useDragMorph-BUgAC-zK.js → useDragMorph-DGLSewwB.js} +2 -2
  317. package/dist/useDragVelocity-CjcfX3dA.js +57 -0
  318. package/dist/useGooMorph-Cs13NgYL.js +104 -0
  319. package/dist/useGpuSubstrate-Ceet70xq.js +347 -0
  320. package/dist/{useViewTransition-CUI1nAgn.js → useHaptic-CPz5BT9I.js} +40 -1
  321. package/dist/{useLiquidFlex-UmA6LMZu.js → useLiquidFlex-Cc6PjVJD.js} +8 -3
  322. package/dist/useLiquidPress-CtOQ8Z0_.js +43 -0
  323. package/dist/useMorphField-ogBM7ubT.js +141 -0
  324. package/dist/{useScrollChrome-D66AVP7C.js → useScrollChrome-JuImi1DM.js} +2 -2
  325. package/dist/{useSpringMount-BWDnKIwh.js → useSpringMount-DFxtzmkR.js} +1 -1
  326. package/dist/{useSpringPress-B1-Czp-V.js → useSpringPress-VM9RgVq3.js} +1 -1
  327. package/dist/{useSurfaceAxis-g0NloYEF.js → useSurfaceAxis-Ci7Dnaw2.js} +1 -1
  328. package/dist/{useTouchGate-CBZTD4SD.js → useTouchGate-B1Lf9XqN.js} +1 -1
  329. package/dist/virtual.js +1 -1
  330. package/dist/watercolor-dot.js +16 -26
  331. package/dist/writeVelocityWeight-Bh83xZfs.js +19 -0
  332. package/package.json +14 -3
  333. package/src/styles/cards.css +202 -2
  334. package/src/styles/configurator.css +172 -7
  335. package/src/styles/critical-partition.mjs +35 -2
  336. package/src/styles/dock/adaptive-legibility.css +119 -0
  337. package/src/styles/dock/density.css +18 -10
  338. package/src/styles/dock/fission-bridge.css +552 -0
  339. package/src/styles/dock/layers.css +88 -124
  340. package/src/styles/dock/morph-bridge.css +15 -2
  341. package/src/styles/dock/morph.css +45 -114
  342. package/src/styles/dock/shape.css +137 -11
  343. package/src/styles/dock/shell.css +1 -3
  344. package/src/styles/dock/stack-rail.css +95 -7
  345. package/src/styles/dock-controls/icon-button.css +34 -2
  346. package/src/styles/dock-controls/triggers.css +23 -1
  347. package/src/styles/dock-controls.css +18 -0
  348. package/src/styles/dock.css +16 -1
  349. package/src/styles/drawer.css +164 -0
  350. package/src/styles/glass/glass-atom.css +244 -0
  351. package/src/styles/glass/glass-capsule.css +143 -0
  352. package/src/styles/glass/glass-chip.css +215 -0
  353. package/src/styles/glass/liquid-enter.css +252 -0
  354. package/src/styles/glass/liquid-morph.css +850 -0
  355. package/src/styles/glass/material.css +70 -1
  356. package/src/styles/glass/reveal.css +22 -2
  357. package/src/styles/glass/rim.css +13 -1
  358. package/src/styles/glass/surfaces.css +18 -8
  359. package/src/styles/glass.css +11 -0
  360. package/src/styles/icon-chip.css +45 -0
  361. package/src/styles/index.css +11 -0
  362. package/src/styles/jubilance.css +65 -0
  363. package/src/styles/motion/morph-field.css +229 -0
  364. package/src/styles/paper.css +230 -14
  365. package/src/styles/scroll-choreography.css +135 -78
  366. package/src/styles/segmented-tabs.css +85 -47
  367. package/src/styles/select.css +151 -0
  368. package/src/styles/tokens/color-radius.css +1 -1
  369. package/src/styles/tokens/dark-arm.css +57 -8
  370. package/src/styles/tokens/glass-deep.css +8 -4
  371. package/src/styles/tokens/glass-fx.css +80 -2
  372. package/src/styles/tokens/glass.css +140 -8
  373. package/src/styles/tokens/light-dark.css +2 -2
  374. package/src/styles/tokens/property-regs.css +144 -0
  375. package/src/styles/tokens/scale-paper.css +20 -8
  376. package/src/styles/tokens/scheme-motion.css +92 -157
  377. package/src/styles/tokens/scheme-spring.css +239 -0
  378. package/src/styles/tokens/scroll-tokens.css +15 -15
  379. package/src/styles/tokens/shadow.css +73 -13
  380. package/src/styles/tokens.css +9 -2
  381. package/src/styles/utilities/btn.css +70 -0
  382. package/dist/DialogContent-6JtTB5x2.js +0 -106
  383. package/dist/PagerDots-Cjx96la-.js +0 -98
  384. package/dist/PaperBackdrop-CqwjnfLv.js +0 -31
  385. package/dist/badge-D9XWW4GT.js +0 -53
  386. package/dist/button-5dY1Dvhd.js +0 -125
  387. package/dist/components/custom/concentric/composables/ringField.d.ts +0 -85
  388. package/dist/createCanvasLifecycle-Gh45Ce-p.js +0 -93
  389. package/dist/dockContext-BNfyPLe9.js +0 -17
  390. package/dist/slider-2A0rPn79.js +0 -142
  391. package/dist/springPresets-Ce7OYCm9.js +0 -46
  392. package/dist/useDockCtaReceive-DfFkmgL1.js +0 -82
  393. package/dist/useGpuSubstrate-4pTcp6mX.js +0 -294
  394. package/dist/useLiquidPress-BooG97RY.js +0 -39
  395. /package/dist/{CollapsibleContent-68dEXIAl.js → CollapsibleContent-D7UNsXQr.js} +0 -0
  396. /package/dist/{DialogFooter-9phqcRIS.js → DialogFooter-DoLy0ewI.js} +0 -0
  397. /package/dist/{InstrumentChassis-CxsHSyMj.js → InstrumentChassis-UUJX0-mW.js} +0 -0
  398. /package/dist/{Label-C2ejNWeC.js → Label-B_HPqi_q.js} +0 -0
  399. /package/dist/{ModalOverlay-D1VrWyoi.js → ModalOverlay-DfAf7o15.js} +0 -0
  400. /package/dist/{SelectGroup-BFiod7X2.js → SelectGroup-Dcczq44n.js} +0 -0
  401. /package/dist/{SelectSeparator-C2UGOkXF.js → SelectSeparator-CNRGG7Ew.js} +0 -0
  402. /package/dist/{Separator-DQcwC2TR.js → Separator-Cf9-JFgi.js} +0 -0
  403. /package/dist/{_plugin-vue_export-helper-C1je1s0u.js → _plugin-vue_export-helper-gLzyemvl.js} +0 -0
  404. /package/dist/{color-Cs0-oxYL.js → color-B9jZdhJX.js} +0 -0
  405. /package/dist/{compile-nZ1xVYTp.js → compile-INR_tPk_.js} +0 -0
  406. /package/dist/{constants--C2DkLW8.js → constants-BWj7DkMn.js} +0 -0
  407. /package/dist/{createContext-CpBNTRMI.js → createContext-Cd23P9j0.js} +0 -0
  408. /package/dist/{dotMatrixField-D_x9_1qq.js → dotMatrixField-CRO0ZFk4.js} +0 -0
  409. /package/dist/{flow.glsl-B2P7e0MT.js → flow.glsl-DqEGRpl4.js} +0 -0
  410. /package/dist/{math-Eb0w3LqU.js → math-5RcIgCB4.js} +0 -0
  411. /package/dist/{menuItemVariants-D8VNHq22.js → menuItemVariants-DAXquKja.js} +0 -0
  412. /package/dist/{prng-B-d9eYX8.js → prng-B5tIXTtj.js} +0 -0
  413. /package/dist/{procedural-color.wgsl-m7Zgv35j.js → procedural-color.wgsl-C1Y5PkM6.js} +0 -0
  414. /package/dist/{scrollReader-DI1NWxUw.js → scrollReader-rc3Ns_NM.js} +0 -0
  415. /package/dist/{useControlSize-SH1UmJCi.js → useControlSize-DAZ062x7.js} +0 -0
  416. /package/dist/{useFuzzySearch-DIhcYtcw.js → useFuzzySearch-0fTYOhS4.js} +0 -0
  417. /package/dist/{useGlobalDark-CmjB9E32.js → useGlobalDark-B4HO9LXG.js} +0 -0
  418. /package/dist/{useIntersectionPause-Dbozzjgm.js → useIntersectionPause-DO8Vl4gs.js} +0 -0
  419. /package/dist/{useInterval-CNdua40W.js → useInterval-BVUI-sez.js} +0 -0
  420. /package/dist/{useKeyboardShortcuts-BPRp33Im.js → useKeyboardShortcuts-BEut54Tk.js} +0 -0
  421. /package/dist/{usePointerVelocityField-QLsy3_kv.js → usePointerVelocityField-BrkqZFhj.js} +0 -0
  422. /package/dist/{useResizeObserver-Bpoi7tRE.js → useResizeObserver-DdEn3v2f.js} +0 -0
  423. /package/dist/{useResolveTokenColor-vAylyR0x.js → useResolveTokenColor-ChOnCckA.js} +0 -0
  424. /package/dist/{useScrollProgress-c3yxmH6a.js → useScrollProgress-A0M6qRl7.js} +0 -0
  425. /package/dist/{useSortable-BVqlJRBR.js → useSortable-DQV_UNDw.js} +0 -0
  426. /package/dist/{useTextHighlight-NmBM5V_4.js → useTextHighlight-Bma3UlKA.js} +0 -0
  427. /package/dist/{useTimer-BHJOKr35.js → useTimer-BBLGPXR8.js} +0 -0
  428. /package/dist/{useUserInvalidAria-y5namzeE.js → useUserInvalidAria-EmmwWPOl.js} +0 -0
  429. /package/dist/{useViewportReady-anbac3m6.js → useViewportReady-C9pYnn7K.js} +0 -0
  430. /package/dist/{vReveal-D9k0jADx.js → vReveal-CT1KtwZA.js} +0 -0
@@ -1,4 +1,4 @@
1
- import { n as e, t } from "./constants--C2DkLW8.js";
1
+ import { n as e, t } from "./constants-BWj7DkMn.js";
2
2
  import { getCurrentScope as n, onScopeDispose as r, readonly as i, ref as a, shallowRef as o, toValue as s, watch as c } from "vue";
3
3
  import { SmoothProgress as l } from "@mkbabb/keyframes.js";
4
4
  //#region src/composables/motion/useAnimatedNumber.ts
@@ -1,22 +1,23 @@
1
1
  import { t as e } from "./cn-DJXf4yaB.js";
2
- import { t } from "./FadingScroll-DLRbH5Xr.js";
3
- import { i as n } from "./ConfiguratorRow-CaP7U3ZA.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";
2
+ import { t } from "./FadingScroll-P8B30rAD.js";
3
+ import { i as n } from "./ConfiguratorRow-YMXdINHx.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, withModifiers as S } from "vue";
5
5
  //#region src/components/custom/configurator/Configurator.vue?vue&type=script&setup=true&lang.ts
6
- var S = ["data-aside-side"], C = { class: "configurator-stage relative min-h-0 min-w-0 overflow-hidden" }, w = {
6
+ var C = ["data-aside-side", "data-gallery"], w = {
7
7
  key: 0,
8
- class: "configurator-presets shrink-0 border-b px-3 py-2"
8
+ "data-gallery-dock": "",
9
+ class: "configurator-presets shrink-0 px-3 py-2"
9
10
  }, T = [
10
- "aria-selected",
11
11
  "data-active",
12
+ "aria-pressed",
12
13
  "onClick"
13
- ], E = { class: "flex flex-col" }, D = {
14
- key: 2,
14
+ ], E = { class: "configurator-stage relative min-h-0 min-w-0 overflow-hidden" }, D = { class: "flex flex-col" }, O = {
15
+ key: 1,
15
16
  class: "configurator-controls flex-1 min-h-0 overflow-visible"
16
- }, O = { class: "flex flex-col" }, k = {
17
- key: 3,
17
+ }, k = { class: "flex flex-col" }, A = {
18
+ key: 2,
18
19
  class: "configurator-footer shrink-0 border-t px-3 py-2"
19
- }, A = /* @__PURE__ */ u({
20
+ }, j = /* @__PURE__ */ u({
20
21
  __name: "Configurator",
21
22
  props: {
22
23
  presets: {},
@@ -26,6 +27,7 @@ var S = ["data-aside-side"], C = { class: "configurator-stage relative min-h-0 m
26
27
  scrollMode: { default: "auto" },
27
28
  density: { default: "comfortable" },
28
29
  asideSide: { default: "right" },
30
+ galleryPlacement: { default: "aside" },
29
31
  asideWidth: {},
30
32
  class: { type: [
31
33
  Boolean,
@@ -43,43 +45,44 @@ var S = ["data-aside-side"], C = { class: "configurator-stage relative min-h-0 m
43
45
  setup(u, { emit: m }) {
44
46
  let h = u;
45
47
  n(i(() => h.density));
46
- let y = m, A = 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)]", "min-h-0", h.class)), j = i(() => {
48
+ let y = m, j = i(() => e("configurator glass-floating rounded-panel border border-border/60 overflow-hidden", "grid grid-cols-1", "grid-rows-[auto_minmax(var(--configurator-stage-min,18rem),auto)_minmax(0,1fr)]", "min-h-0", h.class)), M = i(() => {
47
49
  if (h.asideWidth == null) return;
48
50
  let [e, t] = Array.isArray(h.asideWidth) ? h.asideWidth : [h.asideWidth, h.asideWidth];
49
51
  return {
50
52
  "--configurator-aside-min": e,
51
53
  "--configurator-aside-max": t
52
54
  };
53
- }), M = i(() => h.asideSide === "left" ? "lg:border-r lg:border-l-0" : "lg:border-l"), N = i(() => h.scrollMode !== "never");
55
+ }), N = i(() => h.asideSide === "left" ? "lg:border-r lg:border-l-0" : "lg:border-l"), P = i(() => h.scrollMode !== "never");
54
56
  return (n, i) => (p(), s("section", {
55
57
  "data-slot": "configurator",
56
58
  "data-aside-side": u.asideSide,
57
- class: d(A.value),
58
- style: f(j.value)
59
- }, [c("div", C, [_(n.$slots, "stage")]), 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)) }, [
59
+ "data-gallery": u.galleryPlacement,
60
+ class: d(j.value),
61
+ style: f(M.value)
62
+ }, [
60
63
  n.$slots.presets || u.presets && u.presets.length > 0 ? (p(), s("div", w, [_(n.$slots, "presets", {
61
64
  presets: u.presets,
62
65
  activePreset: u.activePreset
63
66
  }, () => [l(b(t), {
64
67
  axis: "x",
65
- class: "flex gap-2 scrollbar-hidden",
66
- role: "tablist",
68
+ class: "configurator-gallery-track flex gap-2 scrollbar-hidden",
69
+ role: "group",
67
70
  "aria-label": "Presets"
68
71
  }, {
69
72
  default: x(() => [(p(!0), s(r, null, g(u.presets, (t) => (p(), s("button", {
70
73
  key: t.key,
71
74
  type: "button",
72
- role: "tab",
73
- "data-slot": "configurator-preset",
74
- "aria-selected": t.key === u.activePreset,
75
+ "data-preset-tile": "",
75
76
  "data-active": t.key === u.activePreset || void 0,
76
- 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")),
77
- onClick: (e) => y("select-preset", t.key)
77
+ "aria-pressed": t.key === u.activePreset,
78
+ class: d(b(e)("configurator-preset-chip glass-capsule glass-capsule-hover shadow-cartoon focus-ring shrink-0 px-3 py-1 text-xs font-medium text-foreground", t.key === u.activePreset && "is-active")),
79
+ onClick: S((e) => y("select-preset", t.key), ["stop"])
78
80
  }, v(t.label), 11, T))), 128))]),
79
81
  _: 1
80
82
  })])])) : o("", !0),
81
- N.value ? (p(), a(b(t), {
82
- key: 1,
83
+ c("div", E, [_(n.$slots, "stage")]),
84
+ c("aside", { class: d(b(e)("configurator-aside flex min-h-0 min-w-0 flex-col border-t lg:border-t-0", N.value)) }, [P.value ? (p(), a(b(t), {
85
+ key: 0,
83
86
  axis: "y",
84
87
  class: "configurator-controls flex-1 min-h-0 scrollbar-thin"
85
88
  }, {
@@ -87,20 +90,19 @@ var S = ["data-aside-side"], C = { class: "configurator-stage relative min-h-0 m
87
90
  layers: u.layers,
88
91
  activeLayer: u.activeLayer,
89
92
  selectLayer: (e) => y("select-layer", e)
90
- }, () => [c("div", E, [_(n.$slots, "default")])])]),
93
+ }, () => [c("div", D, [_(n.$slots, "default")])])]),
91
94
  _: 3
92
- })) : (p(), s("div", D, [_(n.$slots, "controls", {
95
+ })) : (p(), s("div", O, [_(n.$slots, "controls", {
93
96
  layers: u.layers,
94
97
  activeLayer: u.activeLayer,
95
98
  selectLayer: (e) => y("select-layer", e)
96
- }, () => [c("div", O, [_(n.$slots, "default")])])])),
97
- n.$slots.footer ? (p(), s("div", k, [_(n.$slots, "footer", { reset: () => y("reset") })])) : o("", !0)
98
- ], 2)], 14, S));
99
+ }, () => [c("div", k, [_(n.$slots, "default")])])])), n.$slots.footer ? (p(), s("div", A, [_(n.$slots, "footer", { reset: () => y("reset") })])) : o("", !0)], 2)
100
+ ], 14, C));
99
101
  }
100
102
  });
101
103
  //#endregion
102
104
  //#region src/components/custom/configurator/useConfiguratorState.ts
103
- function j(e) {
105
+ function M(e) {
104
106
  let t = y(e);
105
107
  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.");
106
108
  try {
@@ -109,11 +111,11 @@ function j(e) {
109
111
  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.");
110
112
  }
111
113
  }
112
- function M(e, t) {
114
+ function N(e, t) {
113
115
  return JSON.stringify(e) === JSON.stringify(t);
114
116
  }
115
- function N(e) {
116
- let t = e.clone ?? j, n = e.equals ?? M, 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(() => {
117
+ function P(e) {
118
+ let t = e.clone ?? M, n = e.equals ?? N, 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(() => {
117
119
  let e = l.value;
118
120
  if (!e) return !1;
119
121
  let t = r.find((t) => t.key === e);
@@ -159,4 +161,4 @@ function N(e) {
159
161
  };
160
162
  }
161
163
  //#endregion
162
- export { A as n, N as t };
164
+ export { j as n, P as t };
@@ -0,0 +1,88 @@
1
+ import { n as e } from "./springPresets-DfoQ6XRY.js";
2
+ import { onScopeDispose as t, readonly as n, ref as r } from "vue";
3
+ import { ElementMorph as i, springTimingFunction as a } from "@mkbabb/keyframes.js";
4
+ //#region src/composables/motion/useDockCtaReceive.ts
5
+ function o() {
6
+ return typeof window < "u" && typeof window.matchMedia == "function" && window.matchMedia("(prefers-reduced-motion: reduce)").matches;
7
+ }
8
+ function s(e) {
9
+ if (!e) return null;
10
+ if (e instanceof HTMLElement) return e;
11
+ let t = e.$el;
12
+ return t instanceof HTMLElement ? t : null;
13
+ }
14
+ function c(c, l) {
15
+ let u = l.respectReducedMotion !== !1, d = l.blur ?? 4, { response: f, dampingFraction: p } = e(l.preset ?? "snappy"), m = a({
16
+ response: f,
17
+ dampingFraction: p
18
+ }), h = f * 4 * 1e3, g = null, _ = 0, v = 0, y = r(!1);
19
+ function b() {
20
+ let e = s(l.dockControl.value);
21
+ e && (e.setAttribute("data-cta-pending", ""), y.value = !0);
22
+ }
23
+ function x() {
24
+ y.value = !1;
25
+ let e = s(l.dockControl.value);
26
+ e && e.removeAttribute("data-cta-pending");
27
+ }
28
+ function S(e) {
29
+ e.style.transform = "", e.style.transformOrigin = "", e.style.opacity = "", e.style.filter = "";
30
+ }
31
+ function C() {
32
+ _ && typeof cancelAnimationFrame == "function" && cancelAnimationFrame(_), _ = 0;
33
+ }
34
+ function w() {
35
+ x(), l.onReceived?.();
36
+ }
37
+ function T() {
38
+ let e = s(c.value);
39
+ if (!e) return;
40
+ C();
41
+ let t = e.getBoundingClientRect(), n = s(l.dockControl.value);
42
+ if (!n) {
43
+ e.style.opacity = "0", w();
44
+ return;
45
+ }
46
+ let r = n.getBoundingClientRect();
47
+ if (u && o()) {
48
+ S(e), e.style.opacity = "0", w();
49
+ return;
50
+ }
51
+ g = new i({
52
+ x: t.x,
53
+ y: t.y,
54
+ width: t.width,
55
+ height: t.height
56
+ }, {
57
+ x: r.x,
58
+ y: r.y,
59
+ width: r.width,
60
+ height: r.height
61
+ }, { transformOrigin: "center center" }), v = 0;
62
+ let a = (t) => {
63
+ if (!g || !c.value) return;
64
+ v === 0 && (v = t);
65
+ let n = Math.min(1, (t - v) / h), r = m.fn(n);
66
+ g.apply(e, r), e.style.opacity = String(Math.min(1, Math.max(0, 1 - r)));
67
+ let i = d * Math.min(1, Math.max(0, r));
68
+ e.style.filter = `blur(${i.toFixed(2)}px)`, n < 1 && typeof requestAnimationFrame == "function" ? _ = requestAnimationFrame(a) : (e.style.opacity = "0", g = null, _ = 0, w());
69
+ };
70
+ typeof requestAnimationFrame == "function" ? _ = requestAnimationFrame(a) : (S(e), e.style.opacity = "0", w());
71
+ }
72
+ function E() {
73
+ C(), g = null;
74
+ let e = s(c.value);
75
+ e && S(e);
76
+ }
77
+ return t(() => {
78
+ C(), g = null;
79
+ }), {
80
+ receive: T,
81
+ reset: E,
82
+ setPending: b,
83
+ clearPending: x,
84
+ pending: n(y)
85
+ };
86
+ }
87
+ //#endregion
88
+ export { c as t };
@@ -1,5 +1,5 @@
1
- import { n as e } from "./springPresets-Ce7OYCm9.js";
2
- import { t } from "./useLiquidFlex-UmA6LMZu.js";
1
+ import { n as e } from "./springPresets-DfoQ6XRY.js";
2
+ import { t } from "./useLiquidFlex-Cc6PjVJD.js";
3
3
  import { computed as n, onScopeDispose as r, readonly as i, ref as a } from "vue";
4
4
  import { Draggable as o, SpringProgress as s, decayRest as c } from "@mkbabb/keyframes.js";
5
5
  //#region src/composables/motion/useDragMorph.ts
@@ -0,0 +1,57 @@
1
+ import { onMounted as e, onScopeDispose as t, readonly as n, ref as r } from "vue";
2
+ //#region src/composables/dom/useDragVelocity.ts
3
+ function i() {
4
+ return typeof window < "u" && typeof window.matchMedia == "function" && window.matchMedia("(prefers-reduced-motion: reduce)").matches;
5
+ }
6
+ function a(a) {
7
+ let o = () => typeof a.axis == "function" ? a.axis() : a.axis ?? "x", s = a.gain ?? .06, c = a.clamp ?? .7, l = a.respectReducedMotion !== !1, u = r(!1), d = 0, f = 0, p = 0, m = 0, h = !1, g = 0;
8
+ function _(e) {
9
+ let t = a.host();
10
+ t && t.style.setProperty("--atom-drag-v", `${e}`);
11
+ }
12
+ function v(e) {
13
+ let t = Math.tanh(s * Math.abs(e));
14
+ return t > c ? c : t;
15
+ }
16
+ function y(e) {
17
+ if (!h) {
18
+ d = 0;
19
+ return;
20
+ }
21
+ let t = p ? e - p : 16.7;
22
+ p = e;
23
+ let n = v(g / t * 16.7);
24
+ m = m * .65 + n * .35, g *= .6, _(Number(m.toFixed(4))), d = requestAnimationFrame(y);
25
+ }
26
+ function b(e) {
27
+ if (!h) return;
28
+ let t = o() === "y" ? e.clientY : e.clientX;
29
+ g += t - f, f = t;
30
+ }
31
+ function x(e) {
32
+ if (h = !0, u.value = !0, f = o() === "y" ? e.clientY : e.clientX, p = 0, g = 0, m = 0, l && i()) {
33
+ _(0);
34
+ return;
35
+ }
36
+ typeof window < "u" && window.addEventListener("pointermove", b, { passive: !0 }), d ||= requestAnimationFrame(y);
37
+ }
38
+ function S() {
39
+ h = !1, u.value = !1, d &&= (cancelAnimationFrame(d), 0), typeof window < "u" && window.removeEventListener("pointermove", b), m = 0, g = 0, _(0);
40
+ }
41
+ function C() {
42
+ h && S();
43
+ }
44
+ let w = null;
45
+ e(() => {
46
+ w = a.host(), w && w.addEventListener("pointerdown", x);
47
+ }), typeof window < "u" && (window.addEventListener("pointerup", C), window.addEventListener("pointercancel", C));
48
+ function T() {
49
+ S(), w?.removeEventListener("pointerdown", x), w = null, typeof window < "u" && (window.removeEventListener("pointerup", C), window.removeEventListener("pointercancel", C));
50
+ }
51
+ return t(T), {
52
+ dragging: n(u),
53
+ detach: T
54
+ };
55
+ }
56
+ //#endregion
57
+ export { a as t };
@@ -0,0 +1,104 @@
1
+ import { t as e } from "./useLiquidFlex-Cc6PjVJD.js";
2
+ import { t } from "./useMorphField-ogBM7ubT.js";
3
+ import { onScopeDispose as n } from "vue";
4
+ //#region src/composables/motion/useGooMorph.ts
5
+ var r = t.lateralNeck, i = 1.618033988749895, a = () => typeof window < "u" && typeof window.matchMedia == "function" && window.matchMedia("(prefers-reduced-motion: reduce)").matches;
6
+ function o(e, t, n) {
7
+ let r = getComputedStyle(e).getPropertyValue(t).trim();
8
+ return r ? r.endsWith("ms") ? Number.parseFloat(r) || n : r.endsWith("s") ? (Number.parseFloat(r) || n / 1e3) * 1e3 : Number.parseFloat(r) || n : n;
9
+ }
10
+ function s(e, t) {
11
+ return Math.sin(Math.PI * Math.min(1, Math.max(0, e))) ** +t;
12
+ }
13
+ function c(t) {
14
+ let { barbellRefs: c, hostRef: l, vertical: u, centerOf: d, restSize: f, tokenPrefix: p = "pager-worm", neckGap: m = r.kPeak } = t, { bodyARef: h, bodyBRef: g, neckRef: _ } = c, v = `--${p}-flow`, y = `--${p}-duration`, b = `--${p}-max-stretch`, x = e({
15
+ from: 0,
16
+ to: 0,
17
+ axis: "width",
18
+ squishLaw: "linear",
19
+ maxStretch: () => {
20
+ let e = l.value;
21
+ if (!e) return 1.4;
22
+ let t = getComputedStyle(e).getPropertyValue(b).trim();
23
+ return Number(t) || 1.4;
24
+ }
25
+ }), S = 0, C = null;
26
+ function w() {
27
+ S &&= (cancelAnimationFrame(S), 0), C &&= (clearTimeout(C), null);
28
+ }
29
+ function T(e) {
30
+ let t = getComputedStyle(e).getPropertyValue("--goo-t").trim();
31
+ return Number.parseFloat(t) || 0;
32
+ }
33
+ function E(e) {
34
+ let t = getComputedStyle(e).getPropertyValue(`--${p}-neck-gap`).trim(), n = Number.parseFloat(t);
35
+ return Number.isFinite(n) && n > 0 ? n : m;
36
+ }
37
+ function D(e, t, n, r, i) {
38
+ u.value ? e.style.transform = `translateY(${t.toFixed(2)}px) translateX(${n.toFixed(2)}px) translateY(-50%) translateX(-50%) scaleY(${r.toFixed(4)}) scaleX(${i.toFixed(4)})` : e.style.transform = `translateX(${t.toFixed(2)}px) translateY(${n.toFixed(2)}px) translateX(-50%) translateY(-50%) scaleX(${r.toFixed(4)}) scaleY(${i.toFixed(4)})`;
39
+ }
40
+ function O(e, t, n, r, a) {
41
+ let o = h.value, c = g.value, d = _.value, p = l.value;
42
+ if (!o || !c || !d || !p) return;
43
+ let m = Math.max(1, f()) / i, v = t - e, y = r - n, b = y === 0 ? 1 : Math.min(1, Math.max(0, (a - n) / y)), x = E(p), S = 1 - s(b, 1) * (1 - x), C = (e + t) / 2, w = v / 2 * S, T = C - w, O = C + w, k = s(b, 1.5), A = Math.abs(O - T), j = getComputedStyle(p).getPropertyValue("--goo-weight").trim(), M = Math.min(1, Math.max(0, Number.parseFloat(j) || 0)), N = 1 + s(b, 1) * .12 * M, P = 1 / N, F = -m * .06 * s(b, 1) * M;
44
+ D(o, T, F, N, P), D(c, O, F, N, P);
45
+ let I = m > 0 ? A / m : 1;
46
+ u.value ? d.style.transform = `translateY(${C.toFixed(2)}px) translateY(-50%) scaleY(${I.toFixed(4)}) scaleX(${k.toFixed(4)})` : d.style.transform = `translateX(${C.toFixed(2)}px) translateX(-50%) scaleX(${I.toFixed(4)}) scaleY(${k.toFixed(4)})`, d.style.opacity = k.toFixed(4), p.style.setProperty("--goo-neck-girth", k.toFixed(4));
47
+ }
48
+ function k(e) {
49
+ let t = h.value, n = g.value, r = _.value, i = l.value, a = d(e);
50
+ !t || !n || !r || a == null || (D(t, a, 0, 1, 1), D(n, a, 0, 1, 1), r.style.opacity = "0", u.value ? r.style.transform = `translateY(${a.toFixed(2)}px) translateY(-50%) scaleY(0.0001) scaleX(0)` : r.style.transform = `translateX(${a.toFixed(2)}px) translateX(-50%) scaleX(0.0001) scaleY(0)`, i && (i.style.setProperty("--goo-neck-girth", "0"), i.style.setProperty("--stretch", "1")));
51
+ }
52
+ function A(e) {
53
+ w();
54
+ let t = l.value;
55
+ if (t) {
56
+ let n = t.style.transition;
57
+ t.style.transition = "none", t.style.setProperty("--goo-t", String(e)), t.offsetWidth, t.style.transition = n;
58
+ }
59
+ k(e);
60
+ }
61
+ function j(e) {
62
+ let t = l.value;
63
+ if (!t || !h.value || a()) return;
64
+ w();
65
+ let n = t.style.transition;
66
+ t.style.transition = "none", t.style.setProperty("--goo-t", String(e)), t.offsetWidth, t.style.transition = n;
67
+ let r = Math.floor(e), i = Math.ceil(e), o = d(r), s = d(i);
68
+ o == null || s == null || O(o, s, r, i, e);
69
+ }
70
+ function M(e, t) {
71
+ let n = l.value;
72
+ if (!h.value || !n || e === t) {
73
+ n && A(t);
74
+ return;
75
+ }
76
+ if (a()) {
77
+ A(t);
78
+ return;
79
+ }
80
+ let r = d(e), i = d(t);
81
+ if (r == null || i == null) {
82
+ A(t);
83
+ return;
84
+ }
85
+ w();
86
+ let s = u.value ? n.offsetHeight || 1 : n.offsetWidth || 1, c = Math.min(Math.abs(i - r) / Math.max(1, s), 1), f = Math.max(.5, c);
87
+ x.squish(f), n.style.setProperty("--stretch", String(x.stretch.value));
88
+ let p = o(n, y, 1800), m = getComputedStyle(n).getPropertyValue(v).trim() || "ease-in-out";
89
+ n.style.transition = "none", n.style.setProperty("--goo-t", String(e)), n.offsetWidth, n.style.transition = `--goo-t ${p}ms ${m}`, n.style.setProperty("--goo-t", String(t)), C = setTimeout(() => {
90
+ x.squish(0), n.style.setProperty("--stretch", String(x.stretch.value)), C = null;
91
+ }, p * .82);
92
+ let g = performance.now(), _ = () => {
93
+ O(r, i, e, t, T(n)), performance.now() - g < p + 80 ? S = requestAnimationFrame(_) : (S = 0, k(t));
94
+ };
95
+ S = requestAnimationFrame(_);
96
+ }
97
+ return n(w), {
98
+ travel: M,
99
+ snap: A,
100
+ drive: j
101
+ };
102
+ }
103
+ //#endregion
104
+ export { c as t };