@mkbabb/glass-ui 3.12.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (436) hide show
  1. package/dist/CardAction-XH4YBVEK.js +158 -0
  2. package/dist/{CommandShortcut-CefCj5mt.js → CommandShortcut-DdtWXxOK.js} +58 -53
  3. package/dist/{ContextMenuSubContent-Bhg4f5jX.js → ContextMenuSubContent-B0Vs6atR.js} +4 -4
  4. package/dist/{DataTable-CUHMukiQ.js → DataTable-C464Zbqd.js} +99 -97
  5. package/dist/DialogContent-DDE6pQBU.js +103 -0
  6. package/dist/{DialogFooter-Gprw8H_A.js → DialogFooter-8eZbdmPc.js} +2 -2
  7. package/dist/FadingScroll-DwNnvKMs.js +76 -0
  8. package/dist/{HoverPopover-2LOIW34a.js → HoverPopover-Dpzwvc4t.js} +1 -1
  9. package/dist/IconChip-BDw1j5mu.js +54 -0
  10. package/dist/{IconTooltip-Cus0fvK0.js → IconTooltip-DSjasZIt.js} +1 -1
  11. package/dist/MetricBadge-BpC0R_Ec.js +79 -0
  12. package/dist/{Notification-DLMhblXR.js → Notification-DKjKsQq8.js} +10 -10
  13. package/dist/{NumberFieldContent-BbLOh8RU.js → NumberFieldContent-1VtwDSgf.js} +3 -3
  14. package/dist/PopoverContent-BTorlp--.js +127 -0
  15. package/dist/{Progress-iEuD9pxG.js → Progress-hAT4gqGH.js} +97 -77
  16. package/dist/{ScrollingText-BPP84wKo.js → ScrollingText-CUVFTWk2.js} +2 -2
  17. package/dist/{SelectScrollDownButton-T32cVFeM.js → SelectScrollDownButton-C1jb3b3K.js} +24 -8
  18. package/dist/{Switch-Ch-k3Rv-.js → Switch-Dr--uLGH.js} +2 -2
  19. package/dist/{Toaster-1rYWrmAm.js → Toaster-Bm_HQSpc.js} +55 -52
  20. package/dist/{ToggleGroupItem-COu_4IW4.js → ToggleGroupItem-Dzk9hWsF.js} +18 -22
  21. package/dist/animated-digit.js +3 -3
  22. package/dist/api/index.d.ts +10 -4
  23. package/dist/api.js +1 -1
  24. package/dist/aurora.js +113 -98
  25. package/dist/{badge-CaoFJzRb.js → badge-UILT_3pZ.js} +1 -1
  26. package/dist/badge.js +1 -1
  27. package/dist/{button-DN39cGqL.js → button-BNDWhAZb.js} +12 -12
  28. package/dist/button.js +1 -1
  29. package/dist/card.js +1 -1
  30. package/dist/carousel.d.ts +1 -1
  31. package/dist/carousel.js +101 -145
  32. package/dist/{check-BBKKKSTf.js → check-njhk-vfu.js} +1 -1
  33. package/dist/{chevron-down-BSkTP2aL.js → chevron-down-DKkxb4VV.js} +1 -1
  34. package/dist/{chevron-right-sDM0Yvrf.js → chevron-right-CPXbqQQz.js} +1 -1
  35. package/dist/{chevron-up-CCOD_FTz.js → chevron-up-n_24SqI-.js} +1 -1
  36. package/dist/coalesceMetric-5qIeZnTx.js +13 -0
  37. package/dist/collapsible.js +1 -1
  38. package/dist/{color-C5ls_QF7.js → color-DweYl7pE.js} +9 -7
  39. package/dist/color-swatch.d.ts +1 -0
  40. package/dist/color-swatch.js +47 -0
  41. package/dist/color.js +1 -1
  42. package/dist/command.js +1 -1
  43. package/dist/components/custom/animated-digit/AnimatedDigit.vue.d.ts +8 -0
  44. package/dist/components/custom/aurora/constants/presets.d.ts +16 -45
  45. package/dist/components/custom/aurora/constants/renderMode.d.ts +2 -0
  46. package/dist/components/custom/aurora/constants/shaders/mediums.glsl.d.ts +1 -1
  47. package/dist/components/custom/aurora/constants/shaders/vangogh-medium.glsl.d.ts +1 -0
  48. package/dist/components/custom/color-swatch/ColorSwatch.vue.d.ts +22 -0
  49. package/dist/components/custom/color-swatch/index.d.ts +1 -0
  50. package/dist/components/custom/configurator/Configurator.vue.d.ts +19 -8
  51. package/dist/components/custom/configurator/ConfiguratorRow.vue.d.ts +16 -0
  52. package/dist/components/custom/constellation/Constellation.vue.d.ts +23 -143
  53. package/dist/components/custom/constellation/composables/createConstellationField.d.ts +41 -0
  54. package/dist/components/custom/constellation/composables/useConstellation.d.ts +26 -0
  55. package/dist/components/custom/constellation/composables/useConstellationPointer.d.ts +35 -0
  56. package/dist/components/custom/constellation/constants.d.ts +61 -0
  57. package/dist/components/custom/constellation/constellationDraw.d.ts +30 -0
  58. package/dist/components/custom/constellation/constellationField.d.ts +3 -403
  59. package/dist/components/custom/constellation/constellationInteraction.d.ts +132 -0
  60. package/dist/components/custom/constellation/constellationTypes.d.ts +369 -0
  61. package/dist/components/custom/constellation/index.d.ts +5 -2
  62. package/dist/components/custom/controls/DarkModeToggle.vue.d.ts +11 -0
  63. package/dist/components/custom/dock/DockRail.vue.d.ts +89 -0
  64. package/dist/components/custom/dock/DockSection.vue.d.ts +69 -0
  65. package/dist/components/custom/dock/DockSeparator.vue.d.ts +49 -1
  66. package/dist/components/custom/dock/DockTabButton.vue.d.ts +5 -6
  67. package/dist/components/custom/dock/GlassDock.vue.d.ts +5 -118
  68. package/dist/components/custom/dock/composables/dockMorphContext.d.ts +36 -0
  69. package/dist/components/custom/dock/composables/index.d.ts +1 -0
  70. package/dist/components/custom/dock/composables/useDockClickIntegrity.d.ts +23 -0
  71. package/dist/components/custom/dock/composables/useDockMorphWindow.d.ts +15 -0
  72. package/dist/components/custom/dock/composables/useDockOrientationMorph.d.ts +44 -0
  73. package/dist/components/custom/dock/composables/useDockShellProps.d.ts +165 -0
  74. package/dist/components/custom/dock/composables/useLayerTransition.d.ts +44 -0
  75. package/dist/components/custom/dock/constants.d.ts +83 -0
  76. package/dist/components/custom/dock/index.d.ts +5 -0
  77. package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +15 -37
  78. package/dist/components/custom/fading-scroll/FadingScroll.vue.d.ts +25 -0
  79. package/dist/components/custom/fading-scroll/composables/useFadingScroll.d.ts +31 -0
  80. package/dist/components/custom/fading-scroll/constants.d.ts +19 -0
  81. package/dist/components/custom/fading-scroll/index.d.ts +2 -0
  82. package/dist/components/custom/fourier-field/FourierField.vue.d.ts +7 -0
  83. package/dist/components/custom/fourier-field/index.d.ts +1 -1
  84. package/dist/components/custom/fourier-field/math.d.ts +34 -0
  85. package/dist/components/custom/fourier-field/presets.d.ts +54 -0
  86. package/dist/components/custom/glass-panel/GlassPanel.vue.d.ts +8 -0
  87. package/dist/components/custom/goo-blob/composables/buildMetaballProgram.d.ts +18 -0
  88. package/dist/components/custom/goo-blob/composables/uploadBlobUniforms.d.ts +41 -0
  89. package/dist/components/custom/goo-blob/composables/useBlobPointer.d.ts +4 -3
  90. package/dist/components/custom/goo-blob/composables/useMetaballRenderer.d.ts +21 -8
  91. package/dist/components/custom/goo-blob/constants.d.ts +57 -0
  92. package/dist/components/custom/goo-blob/shaders/metaball-uniforms.glsl.d.ts +1 -0
  93. package/dist/components/custom/handmark/brush.d.ts +33 -6
  94. package/dist/components/custom/handmark/{useHandMark.d.ts → composables/useHandMark.d.ts} +6 -4
  95. package/dist/components/custom/handmark/constants.d.ts +39 -0
  96. package/dist/components/custom/handmark/geometry.d.ts +14 -12
  97. package/dist/components/custom/handmark/index.d.ts +8 -2
  98. package/dist/components/custom/handmark/types.d.ts +9 -0
  99. package/dist/components/custom/icon-chip/IconChip.vue.d.ts +4 -0
  100. package/dist/components/custom/icon-chip/index.d.ts +2 -0
  101. package/dist/components/custom/icon-chip/types.d.ts +72 -0
  102. package/dist/components/custom/instrument-chassis/InstrumentChassis.vue.d.ts +17 -4
  103. package/dist/components/custom/labeled-field/LabeledField.vue.d.ts +37 -0
  104. package/dist/components/custom/labeled-field/LabeledSelect.vue.d.ts +6 -0
  105. package/dist/components/custom/labeled-field/LabeledSlider.vue.d.ts +6 -0
  106. package/dist/components/custom/labeled-field/LabeledSwitch.vue.d.ts +6 -0
  107. package/dist/components/custom/metric-badge/MetricBadge.vue.d.ts +11 -18
  108. package/dist/components/custom/metric-badge/index.d.ts +1 -0
  109. package/dist/components/custom/metric-cell/MetricCell.vue.d.ts +15 -4
  110. package/dist/components/custom/metric-stack/MetricRow.vue.d.ts +6 -4
  111. package/dist/components/custom/pager-dots/PagerDots.vue.d.ts +39 -0
  112. package/dist/components/custom/pager-dots/index.d.ts +2 -0
  113. package/dist/components/custom/tabs/SegmentedTabs.vue.d.ts +20 -25
  114. package/dist/components/custom/tabs/composables/useTabIndicator.d.ts +30 -21
  115. package/dist/components/custom/tabs/constants.d.ts +18 -0
  116. package/dist/components/custom/tabs/index.d.ts +1 -1
  117. package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +14 -0
  118. package/dist/components/ui/_shared/index.d.ts +2 -0
  119. package/dist/components/ui/_shared/menuItemVariants.d.ts +19 -0
  120. package/dist/components/ui/_shared/useSurfaceAxis.d.ts +41 -0
  121. package/dist/components/ui/card/Card.vue.d.ts +16 -4
  122. package/dist/components/ui/carousel/index.d.ts +0 -1
  123. package/dist/components/ui/command/Command.vue.d.ts +3 -0
  124. package/dist/components/ui/dialog/DialogContent.vue.d.ts +8 -3
  125. package/dist/components/ui/drawer/Drawer.vue.d.ts +1 -0
  126. package/dist/components/ui/drawer/DrawerContent.vue.d.ts +5 -0
  127. package/dist/components/ui/dropdown-menu/DropdownMenuSubContent.vue.d.ts +2 -2
  128. package/dist/components/ui/index.d.ts +0 -1
  129. package/dist/components/ui/metric-pill/MetricPill.vue.d.ts +6 -3
  130. package/dist/components/ui/popover/PopoverContent.vue.d.ts +3 -0
  131. package/dist/components/ui/progress/ProgressSectioned.vue.d.ts +14 -3
  132. package/dist/components/ui/select/SelectTrigger.vue.d.ts +27 -4
  133. package/dist/components/ui/sheet/SheetContent.vue.d.ts +6 -0
  134. package/dist/components/ui/skeleton/Skeleton.vue.d.ts +3 -0
  135. package/dist/components/ui/slider/index.d.ts +22 -19
  136. package/dist/components/ui/tabs/TabsIndicator.vue.d.ts +4 -1
  137. package/dist/components/ui/toast/use-toast.d.ts +2 -2
  138. package/dist/components/ui/toggle/Toggle.vue.d.ts +1 -1
  139. package/dist/components/ui/toggle/index.d.ts +1 -1
  140. package/dist/components/ui/toggle-group/ToggleGroup.vue.d.ts +1 -7
  141. package/dist/components/ui/toggle-group/ToggleGroupItem.vue.d.ts +1 -3
  142. package/dist/components/ui/toggle-group/toggleGroupContext.d.ts +0 -13
  143. package/dist/composables/color/index.d.ts +12 -0
  144. package/dist/composables/dark/useGlobalDark.d.ts +14 -12
  145. package/dist/composables/glass/index.d.ts +0 -1
  146. package/dist/composables/glass/useGlassBackdropLuminance.d.ts +59 -0
  147. package/dist/composables/glass/useSpecularTracking.d.ts +12 -3
  148. package/dist/composables/motion/core/index.d.ts +1 -1
  149. package/dist/composables/motion/curves.d.ts +48 -0
  150. package/dist/composables/motion/index.d.ts +2 -0
  151. package/dist/composables/motion/springPresets.d.ts +33 -0
  152. package/dist/composables/motion/suite.d.ts +2 -0
  153. package/dist/composables/motion/useLiquidFlex.d.ts +85 -0
  154. package/dist/composables/motion/useSpringMount.d.ts +1 -1
  155. package/dist/composables/motion/useViewTransition.d.ts +36 -1
  156. package/dist/configurator.js +1 -1
  157. package/dist/confirm-dialog.js +3 -3
  158. package/dist/constellation.js +373 -261
  159. package/dist/context-menu.js +2 -2
  160. package/dist/controls.js +48 -14
  161. package/dist/dark.js +1 -1
  162. package/dist/data-table.js +1 -1
  163. package/dist/dialog.js +2 -2
  164. package/dist/dock.js +901 -372
  165. package/dist/dockContext-Bu1Avy-a.js +17 -0
  166. package/dist/dom.js +5 -5
  167. package/dist/{dropdown-menu-D77jX6Df.js → dropdown-menu-BJ7E9js_.js} +11 -8
  168. package/dist/dropdown-menu.js +1 -1
  169. package/dist/expandable-container.js +44 -81
  170. package/dist/fading-scroll.d.ts +1 -0
  171. package/dist/fading-scroll.js +2 -0
  172. package/dist/forms.js +5 -5
  173. package/dist/fourier-field.js +140 -104
  174. package/dist/fourier-math.js +2 -2
  175. package/dist/glass-panel.js +90 -21
  176. package/dist/glass-ui.css +1 -1
  177. package/dist/glass-ui.js +230 -236
  178. package/dist/goo-blob.js +264 -228
  179. package/dist/handmark.js +203 -159
  180. package/dist/header-ribbon.js +1 -1
  181. package/dist/hover-card.js +1 -1
  182. package/dist/hover-popover.js +1 -1
  183. package/dist/icon-chip.d.ts +1 -0
  184. package/dist/icon-chip.js +2 -0
  185. package/dist/icon-tooltip.js +1 -1
  186. package/dist/index.d.ts +3 -5
  187. package/dist/instrument-chassis.js +1 -1
  188. package/dist/keyboard.js +1 -1
  189. package/dist/label.js +1 -1
  190. package/dist/labeled-field.js +28 -18
  191. package/dist/{math-DTpRVC0e.js → math-DeuJwLFx.js} +26 -2
  192. package/dist/{menuItemVariants-CCoBNkU5.js → menuItemVariants-DWRQXBxJ.js} +10 -4
  193. package/dist/metric-badge.js +1 -1
  194. package/dist/metric-cell.js +29 -22
  195. package/dist/metric-stack.js +35 -34
  196. package/dist/{minimize-2-lcXOuc6V.js → minimize-2-BV31Ob_h.js} +1 -1
  197. package/dist/motion-core.js +32 -136
  198. package/dist/motion-curves.d.ts +1 -0
  199. package/dist/motion-curves.js +130 -0
  200. package/dist/motion.js +38 -37
  201. package/dist/notification.js +1 -1
  202. package/dist/number-field.js +1 -1
  203. package/dist/pager-dots.d.ts +1 -0
  204. package/dist/pager-dots.js +91 -0
  205. package/dist/paper-backdrop.js +1 -1
  206. package/dist/popover.js +1 -1
  207. package/dist/progress.js +1 -1
  208. package/dist/pulse.js +1 -1
  209. package/dist/reactive.js +2 -2
  210. package/dist/scrolling-text.js +1 -1
  211. package/dist/{search-nbkvr2dC.js → search-BSGrf2Sk.js} +1 -1
  212. package/dist/search.js +10 -10
  213. package/dist/select.js +3 -3
  214. package/dist/separator.js +1 -1
  215. package/dist/sheet-CquRYOAw.js +218 -0
  216. package/dist/sheet.js +1 -1
  217. package/dist/{slider-ClgpP7EB.js → slider-DQ95MET2.js} +8 -8
  218. package/dist/slider.js +1 -1
  219. package/dist/sortable-list.js +3 -3
  220. package/dist/springPresets-WXaLbu8u.js +40 -0
  221. package/dist/stacked-icons.js +6 -6
  222. package/dist/styles/animations.css +25 -125
  223. package/dist/styles/cards.css +55 -0
  224. package/dist/styles/components.css +4 -1
  225. package/dist/styles/configurator.css +77 -0
  226. package/dist/styles/dock/density.css +19 -0
  227. package/dist/styles/dock/layer-group.css +83 -25
  228. package/dist/styles/dock/layers.css +23 -1
  229. package/dist/styles/dock/morph-bridge.css +123 -0
  230. package/dist/styles/dock/morph.css +175 -45
  231. package/dist/styles/dock/overflow.css +66 -1
  232. package/dist/styles/dock/rail-extend.css +397 -0
  233. package/dist/styles/dock/section.css +59 -0
  234. package/dist/styles/dock/shell.css +97 -110
  235. package/dist/styles/dock-controls/dark-mode-toggle.css +109 -0
  236. package/dist/styles/dock-controls/icon-button.css +143 -0
  237. package/dist/styles/dock-controls/tab-button.css +143 -0
  238. package/dist/styles/dock-controls/touch-floor.css +94 -0
  239. package/dist/styles/dock-controls/triggers.css +135 -0
  240. package/dist/styles/dock-controls.css +30 -595
  241. package/dist/styles/dock.css +8 -3
  242. package/dist/styles/drawer.css +48 -0
  243. package/dist/styles/feedback-tone.css +104 -0
  244. package/dist/styles/floating-panel.css +17 -0
  245. package/dist/styles/glass/a11y-fallback.css +245 -0
  246. package/dist/styles/glass/ladder.css +383 -0
  247. package/dist/styles/glass/material.css +238 -0
  248. package/dist/styles/glass/progress-rail.css +78 -0
  249. package/dist/styles/glass/squircle.css +66 -0
  250. package/dist/styles/glass/surface-axis.css +113 -0
  251. package/dist/styles/glass/surfaces.css +382 -0
  252. package/dist/styles/glass-refract.css +2 -0
  253. package/dist/styles/glass.css +34 -1188
  254. package/dist/styles/hover-popover.css +2 -0
  255. package/dist/styles/icon-chip.css +149 -0
  256. package/dist/styles/index.css +94 -18
  257. package/dist/styles/instrument-chassis.css +46 -0
  258. package/dist/styles/menu.css +127 -0
  259. package/dist/styles/paper.css +2 -68
  260. package/dist/styles/segmented-tabs.css +346 -0
  261. package/dist/styles/select.css +50 -0
  262. package/dist/styles/theme/bridges.css +347 -0
  263. package/dist/styles/theme/dark.css +7 -0
  264. package/dist/styles/theme/literals.css +94 -0
  265. package/dist/styles/theme/radius.css +95 -0
  266. package/dist/styles/theme.css +26 -529
  267. package/dist/styles/tokens/color-radius.css +287 -0
  268. package/dist/styles/tokens/dark-arm.css +308 -0
  269. package/dist/styles/tokens/glass.css +500 -0
  270. package/dist/styles/tokens/light-dark.css +187 -0
  271. package/dist/styles/tokens/offsets-sizing.css +562 -0
  272. package/dist/styles/tokens/property-regs.css +162 -0
  273. package/dist/styles/tokens/scale-paper.css +409 -0
  274. package/dist/styles/tokens/scheme-motion.css +352 -0
  275. package/dist/styles/tokens/shadow.css +166 -0
  276. package/dist/styles/tokens.css +22 -2360
  277. package/dist/styles/transitions.css +7 -7
  278. package/dist/styles/typography/scale.css +153 -0
  279. package/dist/styles/typography/semantic.css +220 -0
  280. package/dist/styles/typography/utilities.css +159 -0
  281. package/dist/styles/typography.css +23 -453
  282. package/dist/styles/utilities/a11y-overrides.css +169 -0
  283. package/dist/styles/utilities/animate.css +26 -0
  284. package/dist/styles/utilities/base.css +541 -0
  285. package/dist/styles/utilities/btn.css +218 -0
  286. package/dist/styles/utilities/components.css +317 -0
  287. package/dist/styles/utilities.css +19 -1318
  288. package/dist/styles/view-transition.css +4 -52
  289. package/dist/switch.js +1 -1
  290. package/dist/tabs.js +161 -181
  291. package/dist/timeline.js +2 -2
  292. package/dist/toast.js +1 -1
  293. package/dist/toggle-chip.js +3 -1
  294. package/dist/toggle-group.js +1 -1
  295. package/dist/tooltip.js +1 -1
  296. package/dist/typewriter.js +1 -1
  297. package/dist/{useAnimatedNumber-Bcpy5Etf.js → useAnimatedNumber-C_3wZLx4.js} +1 -1
  298. package/dist/useConfiguratorState-kiIlun8I.js +303 -0
  299. package/dist/useLiquidFlex-C12hXwOZ.js +30 -0
  300. package/dist/useRAFLoop-CdwJ7284.js +109 -0
  301. package/dist/{useScrollProgress-CffFGLa5.js → useScrollProgress-D7bYU2RK.js} +1 -1
  302. package/dist/useSpecularTracking-Bo5su68i.js +32 -0
  303. package/dist/useSpringMount-CvopqiFr.js +108 -0
  304. package/dist/useSurfaceAxis-CMnF2zHb.js +7 -0
  305. package/dist/{useTouchGate-WFyJYsth.js → useTouchGate-28Tk2-t2.js} +1 -1
  306. package/dist/useViewTransition-COsPjQVZ.js +47 -0
  307. package/dist/utils/coalesceMetric.d.ts +29 -0
  308. package/dist/utils/index.d.ts +1 -0
  309. package/dist/vReveal-D9k0jADx.js +10 -0
  310. package/dist/watercolor-dot.js +22 -13
  311. package/dist/{x-Dfsegz9Y.js → x-BUwTKe50.js} +1 -1
  312. package/package.json +134 -50
  313. package/src/styles/animations.css +25 -125
  314. package/src/styles/cards.css +53 -0
  315. package/src/styles/configurator.css +77 -0
  316. package/src/styles/dock/density.css +19 -0
  317. package/src/styles/dock/layer-group.css +83 -25
  318. package/src/styles/dock/layers.css +23 -1
  319. package/src/styles/dock/morph-bridge.css +123 -0
  320. package/src/styles/dock/morph.css +175 -45
  321. package/src/styles/dock/overflow.css +66 -1
  322. package/src/styles/dock/rail-extend.css +397 -0
  323. package/src/styles/dock/section.css +59 -0
  324. package/src/styles/dock/shell.css +97 -110
  325. package/src/styles/dock-controls/dark-mode-toggle.css +109 -0
  326. package/src/styles/dock-controls/icon-button.css +143 -0
  327. package/src/styles/dock-controls/tab-button.css +143 -0
  328. package/src/styles/dock-controls/touch-floor.css +94 -0
  329. package/src/styles/dock-controls/triggers.css +135 -0
  330. package/src/styles/dock-controls.css +30 -595
  331. package/src/styles/dock.css +8 -3
  332. package/src/styles/drawer.css +42 -0
  333. package/src/styles/feedback-tone.css +104 -0
  334. package/src/styles/floating-panel.css +15 -0
  335. package/src/styles/glass/a11y-fallback.css +245 -0
  336. package/src/styles/glass/ladder.css +383 -0
  337. package/src/styles/glass/material.css +238 -0
  338. package/src/styles/glass/progress-rail.css +78 -0
  339. package/src/styles/glass/squircle.css +66 -0
  340. package/src/styles/glass/surface-axis.css +113 -0
  341. package/src/styles/glass/surfaces.css +382 -0
  342. package/src/styles/glass.css +34 -1188
  343. package/src/styles/icon-chip.css +149 -0
  344. package/src/styles/index.css +93 -17
  345. package/src/styles/instrument-chassis.css +42 -0
  346. package/src/styles/menu.css +127 -0
  347. package/src/styles/paper.css +2 -68
  348. package/src/styles/segmented-tabs.css +340 -0
  349. package/src/styles/select.css +50 -0
  350. package/src/styles/theme/bridges.css +347 -0
  351. package/src/styles/theme/dark.css +7 -0
  352. package/src/styles/theme/literals.css +94 -0
  353. package/src/styles/theme/radius.css +95 -0
  354. package/src/styles/theme.css +26 -529
  355. package/src/styles/tokens/color-radius.css +287 -0
  356. package/src/styles/tokens/dark-arm.css +308 -0
  357. package/src/styles/tokens/glass.css +500 -0
  358. package/src/styles/tokens/light-dark.css +187 -0
  359. package/src/styles/tokens/offsets-sizing.css +562 -0
  360. package/src/styles/tokens/property-regs.css +162 -0
  361. package/src/styles/tokens/scale-paper.css +409 -0
  362. package/src/styles/tokens/scheme-motion.css +352 -0
  363. package/src/styles/tokens/shadow.css +166 -0
  364. package/src/styles/tokens.css +22 -2360
  365. package/src/styles/transitions.css +7 -7
  366. package/src/styles/typography/scale.css +153 -0
  367. package/src/styles/typography/semantic.css +220 -0
  368. package/src/styles/typography/utilities.css +159 -0
  369. package/src/styles/typography.css +23 -453
  370. package/src/styles/utilities/a11y-overrides.css +169 -0
  371. package/src/styles/utilities/animate.css +26 -0
  372. package/src/styles/utilities/base.css +541 -0
  373. package/src/styles/utilities/btn.css +218 -0
  374. package/src/styles/utilities/components.css +317 -0
  375. package/src/styles/utilities.css +19 -1318
  376. package/src/styles/view-transition.css +4 -52
  377. package/dist/CardAction-DuArVky-.js +0 -157
  378. package/dist/DeckProgress-Dmk4_AKN.js +0 -23
  379. package/dist/DialogContent-BRkT1cjP.js +0 -100
  380. package/dist/InstrumentRail-CUJ05YVG.js +0 -44
  381. package/dist/MetricBadge-BZVWIxNy.js +0 -80
  382. package/dist/PopoverContent-BId6ggf_.js +0 -121
  383. package/dist/TabsList-B8CVOQPC.js +0 -101
  384. package/dist/components/custom/deck-progress/DeckProgress.vue.d.ts +0 -27
  385. package/dist/components/custom/deck-progress/index.d.ts +0 -2
  386. package/dist/components/custom/dialog-native/GlassDialogNative.vue.d.ts +0 -57
  387. package/dist/components/custom/dialog-native/index.d.ts +0 -1
  388. package/dist/components/custom/instrument-rail/InstrumentRail.vue.d.ts +0 -91
  389. package/dist/components/custom/instrument-rail/index.d.ts +0 -2
  390. package/dist/components/ui/carousel/CarouselDots.vue.d.ts +0 -4
  391. package/dist/composables/motion/useRouteTransition.d.ts +0 -42
  392. package/dist/deck-progress.d.ts +0 -1
  393. package/dist/deck-progress.js +0 -2
  394. package/dist/dockContext-BKeIMmNk.js +0 -9
  395. package/dist/instrument-rail.d.ts +0 -1
  396. package/dist/instrument-rail.js +0 -2
  397. package/dist/sheet-VZEtNFvO.js +0 -214
  398. package/dist/styles/instrument-rail.css +0 -127
  399. package/dist/useConfiguratorState-DxAqksK6.js +0 -287
  400. package/dist/useGlassRenderer-D7YGOYiM.js +0 -69
  401. package/dist/useSpecularTracking-BVRZsRHA.js +0 -26
  402. package/dist/useSpringMount-BJSHcLl3.js +0 -113
  403. package/dist/useViewTransition-DaN5Zrox.js +0 -21
  404. package/dist/vReveal-zUIQk-rJ.js +0 -53
  405. package/src/styles/instrument-rail.css +0 -127
  406. /package/dist/{CollapsibleContent-CP9qF1v4.js → CollapsibleContent-C_s6fG7r.js} +0 -0
  407. /package/dist/{ContextMenuContent-DDa0v27s.js → ContextMenuContent-ON3x7cuk.js} +0 -0
  408. /package/dist/{HoverCardContent-B6CcQ8He.js → HoverCardContent-DkMaQzH5.js} +0 -0
  409. /package/dist/{Input-xuDwALQR.js → Input-DVG_J0ne.js} +0 -0
  410. /package/dist/{InstrumentChassis-C2f6cBaQ.js → InstrumentChassis-UUJX0-mW.js} +0 -0
  411. /package/dist/{Label-zRfbQdCn.js → Label-Ck9SWEKM.js} +0 -0
  412. /package/dist/{ModalOverlay-B1GkAjNb.js → ModalOverlay-CkPRRgl_.js} +0 -0
  413. /package/dist/{PaperBackdrop-CqwjnfLv.js → PaperBackdrop-nBKe0vkB.js} +0 -0
  414. /package/dist/{SelectGroup-BFiod7X2.js → SelectGroup-Dcczq44n.js} +0 -0
  415. /package/dist/{SelectSeparator-C4Ql0gzV.js → SelectSeparator-DK2y1Bun.js} +0 -0
  416. /package/dist/{Separator-D7sD7RKj.js → Separator-BArl4OaB.js} +0 -0
  417. /package/dist/{TooltipProvider-CmZzCuaG.js → TooltipProvider-B3MkB_8P.js} +0 -0
  418. /package/dist/{_plugin-vue_export-helper-ok8pgSl5.js → _plugin-vue_export-helper-CBt_VvXa.js} +0 -0
  419. /package/dist/{compile-BOXjLUxu.js → compile-EXXzEr1q.js} +0 -0
  420. /package/dist/{constants-yKeKnE84.js → constants-BPOqYJAm.js} +0 -0
  421. /package/dist/{createContext-B44Sah_H.js → createContext-B2RaZ-b8.js} +0 -0
  422. /package/dist/{createLucideIcon-B6uNAU9G.js → createLucideIcon-DydS2qgk.js} +0 -0
  423. /package/dist/{presets-BP_ALM0m.js → presets-BW2b-fr1.js} +0 -0
  424. /package/dist/{prng-D27-B3tK.js → prng-Cg22zv8g.js} +0 -0
  425. /package/dist/{supportsCssTimeline-C5oe0lnD.js → supportsCssTimeline-BWenxvHU.js} +0 -0
  426. /package/dist/{useGlobalDark-CAhOXNLO.js → useGlobalDark-C28t0VWJ.js} +0 -0
  427. /package/dist/{useIntersectionPause-Cck5Uxk8.js → useIntersectionPause-Bj4sPkMh.js} +0 -0
  428. /package/dist/{useInterval-Dsmqwi03.js → useInterval-CNdua40W.js} +0 -0
  429. /package/dist/{useKeyboardShortcuts-CyIYrndH.js → useKeyboardShortcuts-BXWXOZ-9.js} +0 -0
  430. /package/dist/{useResizeObserver-CWCbk5Px.js → useResizeObserver-V6nq5gJb.js} +0 -0
  431. /package/dist/{useResolveTokenColor-r9pnNjqK.js → useResolveTokenColor-NUG2zYAW.js} +0 -0
  432. /package/dist/{useSortable-C8ReQ50P.js → useSortable-BVqlJRBR.js} +0 -0
  433. /package/dist/{useTextHighlight-CWEi25hf.js → useTextHighlight-NmBM5V_4.js} +0 -0
  434. /package/dist/{useTimer-3xqf_54b.js → useTimer-B_PAasDL.js} +0 -0
  435. /package/dist/{useUserInvalidAria-DoJKMZ3s.js → useUserInvalidAria-CDfJuakL.js} +0 -0
  436. /package/dist/{useViewportReady-RIr5Wgkh.js → useViewportReady-CvBcCYDf.js} +0 -0
package/dist/search.js CHANGED
@@ -1,12 +1,12 @@
1
1
  import { t as e } from "./cn-DJXf4yaB.js";
2
- import { n as t, t as n } from "./minimize-2-lcXOuc6V.js";
3
- import { t as r } from "./search-nbkvr2dC.js";
4
- import { t as i } from "./x-Dfsegz9Y.js";
5
- import { n as a } from "./badge-CaoFJzRb.js";
6
- import { n as o } from "./button-DN39cGqL.js";
7
- import { n as s, t as c } from "./DialogContent-BRkT1cjP.js";
8
- import { n as l, r as u, t as d } from "./PopoverContent-BId6ggf_.js";
9
- import { t as f } from "./useTextHighlight-CWEi25hf.js";
2
+ import { n as t, t as n } from "./minimize-2-BV31Ob_h.js";
3
+ import { t as r } from "./search-BSGrf2Sk.js";
4
+ import { t as i } from "./x-BUwTKe50.js";
5
+ import { n as a } from "./badge-UILT_3pZ.js";
6
+ import { n as o } from "./button-BNDWhAZb.js";
7
+ import { n as s, t as c } from "./DialogContent-DDE6pQBU.js";
8
+ import { n as l, r as u, t as d } from "./PopoverContent-BTorlp--.js";
9
+ import { t as f } from "./useTextHighlight-NmBM5V_4.js";
10
10
  import { Fragment as p, computed as m, createBlock as h, createCommentVNode as g, createElementBlock as _, createElementVNode as v, createTextVNode as y, createVNode as b, defineComponent as x, nextTick as S, normalizeClass as C, onScopeDispose as w, openBlock as T, ref as E, renderList as D, renderSlot as O, resolveDynamicComponent as k, toDisplayString as A, unref as j, watch as M, withCtx as N } from "vue";
11
11
  //#region src/components/custom/search/composables/fuzzySearchIndex.ts
12
12
  function P(e, t) {
@@ -240,7 +240,7 @@ var H = ["placeholder", "value"], U = ["onClick", "onMouseenter"], W = { class:
240
240
  align: "start",
241
241
  "side-offset": 4,
242
242
  portal: !1,
243
- class: "w-[var(--reka-popover-trigger-width)] max-h-[50vh] overflow-y-auto overscroll-contain p-1",
243
+ class: "w-(--reka-popover-trigger-width) max-h-[50vh] overflow-y-auto overscroll-contain p-1",
244
244
  onOpenAutoFocus: m[5] ||= (e) => e.preventDefault()
245
245
  }, {
246
246
  default: N(() => [v("div", {
@@ -268,7 +268,7 @@ var H = ["placeholder", "value"], U = ["onClick", "onMouseenter"], W = { class:
268
268
  "onUpdate:open": m[11] ||= (t) => e.state.isExpanded.value = t
269
269
  }, {
270
270
  default: N(() => [b(j(c), {
271
- variant: "opaque",
271
+ surface: "opaque",
272
272
  class: "!max-w-[36rem] !top-[12vh] !translate-y-0 max-h-[70vh] !p-0 overflow-hidden flex flex-col gap-0",
273
273
  onOpenAutoFocus: m[10] ||= (e) => e.preventDefault()
274
274
  }, {
package/dist/select.js CHANGED
@@ -1,4 +1,4 @@
1
- import { a as e, i as t, n, o as r, r as i, s as a, t as o } from "./SelectScrollDownButton-T32cVFeM.js";
2
- import { t as s } from "./SelectGroup-BFiod7X2.js";
3
- import { n as c, t as l } from "./SelectSeparator-C4Ql0gzV.js";
1
+ import { a as e, i as t, n, o as r, r as i, s as a, t as o } from "./SelectScrollDownButton-C1jb3b3K.js";
2
+ import { t as s } from "./SelectGroup-Dcczq44n.js";
3
+ import { n as c, t as l } from "./SelectSeparator-DK2y1Bun.js";
4
4
  export { a as Select, t as SelectContent, s as SelectGroup, i as SelectItem, c as SelectLabel, o as SelectScrollDownButton, n as SelectScrollUpButton, l as SelectSeparator, e as SelectTrigger, r as SelectValue };
package/dist/separator.js CHANGED
@@ -1,2 +1,2 @@
1
- import { t as e } from "./Separator-D7sD7RKj.js";
1
+ import { t as e } from "./Separator-BArl4OaB.js";
2
2
  export { e as Separator };
@@ -0,0 +1,218 @@
1
+ import { t as e } from "./cn-DJXf4yaB.js";
2
+ import { t } from "./x-BUwTKe50.js";
3
+ import { t as n } from "./useSurfaceAxis-CMnF2zHb.js";
4
+ import { t as r } from "./useSpringMount-CvopqiFr.js";
5
+ import { t as i } from "./ModalOverlay-CkPRRgl_.js";
6
+ import { computed as a, createBlock as o, createElementBlock as s, createElementVNode as c, createVNode as l, defineComponent as u, guardReactiveProps as d, mergeProps as f, normalizeClass as p, normalizeProps as m, openBlock as h, renderSlot as g, toHandlers as _, unref as v, withCtx as y } from "vue";
7
+ import { DialogClose as b, DialogContent as x, DialogDescription as S, DialogPortal as C, DialogRoot as w, DialogTitle as T, DialogTrigger as E, injectDialogRootContext as D, useForwardPropsEmits as O } from "reka-ui";
8
+ import { cva as k } from "class-variance-authority";
9
+ //#endregion
10
+ //#region src/components/ui/sheet/Sheet.vue
11
+ var A = /* @__PURE__ */ u({
12
+ __name: "Sheet",
13
+ props: {
14
+ open: { type: Boolean },
15
+ defaultOpen: { type: Boolean },
16
+ modal: { type: Boolean }
17
+ },
18
+ emits: ["update:open"],
19
+ setup(e, { emit: t }) {
20
+ let n = O(e, t);
21
+ return (e, t) => (h(), o(v(w), f({ "data-slot": "sheet" }, v(n)), {
22
+ default: y(() => [g(e.$slots, "default")]),
23
+ _: 3
24
+ }, 16));
25
+ }
26
+ }), j = /* @__PURE__ */ u({
27
+ __name: "SheetTrigger",
28
+ props: {
29
+ asChild: { type: Boolean },
30
+ as: {}
31
+ },
32
+ setup(e) {
33
+ let t = e;
34
+ return (e, n) => (h(), o(v(E), m(d(t)), {
35
+ default: y(() => [g(e.$slots, "default")]),
36
+ _: 3
37
+ }, 16));
38
+ }
39
+ }), M = /* @__PURE__ */ u({
40
+ __name: "SheetClose",
41
+ props: {
42
+ asChild: { type: Boolean },
43
+ as: {}
44
+ },
45
+ setup(e) {
46
+ let t = e;
47
+ return (e, n) => (h(), o(v(b), m(d(t)), {
48
+ default: y(() => [g(e.$slots, "default")]),
49
+ _: 3
50
+ }, 16));
51
+ }
52
+ }), N = /* @__PURE__ */ u({
53
+ inheritAttrs: !1,
54
+ __name: "SheetContent",
55
+ props: {
56
+ class: { type: [
57
+ Boolean,
58
+ null,
59
+ String,
60
+ Object,
61
+ Array
62
+ ] },
63
+ side: {},
64
+ surface: {},
65
+ spring: { type: [Boolean, String] },
66
+ dragDismiss: { type: Boolean },
67
+ dragThreshold: {},
68
+ forceMount: { type: Boolean },
69
+ disableOutsidePointerEvents: { type: Boolean },
70
+ asChild: { type: Boolean },
71
+ as: {}
72
+ },
73
+ emits: [
74
+ "escapeKeyDown",
75
+ "pointerDownOutside",
76
+ "focusOutside",
77
+ "interactOutside",
78
+ "openAutoFocus",
79
+ "closeAutoFocus"
80
+ ],
81
+ setup(s, { emit: u }) {
82
+ let d = s, p = u, m = a(() => {
83
+ let { class: e, side: t, surface: n, spring: r, dragDismiss: i, dragThreshold: a, ...o } = d;
84
+ return o;
85
+ }), S = a(() => n(d.surface ?? "glass").replace(/^glass-\w+\s*/, "")), w = O(m, p), T = d.spring ? D() : null, E = d.spring && T ? r({
86
+ open: T.open,
87
+ preset: typeof d.spring == "string" ? d.spring : "smooth",
88
+ dismissThreshold: d.dragThreshold ?? .3,
89
+ onDismiss: () => T.onOpenChange(!1)
90
+ }) : null, k = a(() => d.side ?? "right");
91
+ function A(e, t) {
92
+ let n = `${e * 100}%`;
93
+ switch (t) {
94
+ case "top": return `translateY(-${n})`;
95
+ case "bottom": return `translateY(${n})`;
96
+ case "left": return `translateX(-${n})`;
97
+ default: return `translateX(${n})`;
98
+ }
99
+ }
100
+ let j = a(() => {
101
+ if (E) return {
102
+ transform: A(E.position.value, k.value),
103
+ animation: "none",
104
+ transition: "none"
105
+ };
106
+ }), M = a(() => d.spring && d.dragDismiss && E ? E.dragHandlers : {});
107
+ return (n, r) => (h(), o(v(C), null, {
108
+ default: y(() => [l(i, {
109
+ scrim: "glass",
110
+ animate: "fade",
111
+ layout: "centered"
112
+ }), l(v(x), f({ class: v(e)(v(R)({ side: k.value }), S.value, d.spring ? "transition-none" : "", d.class) }, {
113
+ ...v(w),
114
+ ...n.$attrs
115
+ }, {
116
+ style: j.value,
117
+ "data-surface": d.surface ?? "glass",
118
+ "data-spring": d.spring ? typeof d.spring == "string" ? d.spring : "smooth" : void 0,
119
+ "data-drag-dismiss": d.spring && d.dragDismiss ? "" : void 0
120
+ }, _(M.value)), {
121
+ default: y(() => [g(n.$slots, "default"), l(v(b), { class: "focus-ring absolute right-4 top-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 disabled:pointer-events-none data-[state=open]:bg-secondary" }, {
122
+ default: y(() => [l(v(t), { class: "w-4 h-4 text-muted-foreground" }), r[0] ||= c("span", { class: "sr-only" }, "Close", -1)]),
123
+ _: 1
124
+ })]),
125
+ _: 3
126
+ }, 16, [
127
+ "class",
128
+ "style",
129
+ "data-surface",
130
+ "data-spring",
131
+ "data-drag-dismiss"
132
+ ])]),
133
+ _: 3
134
+ }));
135
+ }
136
+ }), P = /* @__PURE__ */ u({
137
+ __name: "SheetHeader",
138
+ props: { class: { type: [
139
+ Boolean,
140
+ null,
141
+ String,
142
+ Object,
143
+ Array
144
+ ] } },
145
+ setup(t) {
146
+ let n = t;
147
+ return (t, r) => (h(), s("div", { class: p(v(e)("flex flex-col gap-y-2 text-center sm:text-left", n.class)) }, [g(t.$slots, "default")], 2));
148
+ }
149
+ }), F = /* @__PURE__ */ u({
150
+ __name: "SheetTitle",
151
+ props: {
152
+ asChild: { type: Boolean },
153
+ as: {},
154
+ class: { type: [
155
+ Boolean,
156
+ null,
157
+ String,
158
+ Object,
159
+ Array
160
+ ] }
161
+ },
162
+ setup(t) {
163
+ let n = t, r = a(() => {
164
+ let { class: e, ...t } = n;
165
+ return t;
166
+ });
167
+ return (t, i) => (h(), o(v(T), f({ class: v(e)("text-subheading text-foreground", n.class) }, r.value), {
168
+ default: y(() => [g(t.$slots, "default")]),
169
+ _: 3
170
+ }, 16, ["class"]));
171
+ }
172
+ }), I = /* @__PURE__ */ u({
173
+ __name: "SheetDescription",
174
+ props: {
175
+ asChild: { type: Boolean },
176
+ as: {},
177
+ class: { type: [
178
+ Boolean,
179
+ null,
180
+ String,
181
+ Object,
182
+ Array
183
+ ] }
184
+ },
185
+ setup(t) {
186
+ let n = t, r = a(() => {
187
+ let { class: e, ...t } = n;
188
+ return t;
189
+ });
190
+ return (t, i) => (h(), o(v(S), f({ class: v(e)("text-sm text-muted-foreground", n.class) }, r.value), {
191
+ default: y(() => [g(t.$slots, "default")]),
192
+ _: 3
193
+ }, 16, ["class"]));
194
+ }
195
+ }), L = /* @__PURE__ */ u({
196
+ __name: "SheetFooter",
197
+ props: { class: { type: [
198
+ Boolean,
199
+ null,
200
+ String,
201
+ Object,
202
+ Array
203
+ ] } },
204
+ setup(t) {
205
+ let n = t;
206
+ return (t, r) => (h(), s("div", { class: p(v(e)("flex flex-col-reverse sm:flex-row sm:justify-end sm:gap-x-2", n.class)) }, [g(t.$slots, "default")], 2));
207
+ }
208
+ }), R = k("fixed z-modal gap-4 glass-floating p-6 transition ease-in-out sheet-animate", {
209
+ variants: { side: {
210
+ top: "inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",
211
+ bottom: "inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",
212
+ left: "inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",
213
+ right: "inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"
214
+ } },
215
+ defaultVariants: { side: "right" }
216
+ });
217
+ //#endregion
218
+ export { P as a, j as c, F as i, A as l, L as n, N as o, I as r, M as s, R as t };
package/dist/sheet.js CHANGED
@@ -1,2 +1,2 @@
1
- import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c } from "./sheet-VZEtNFvO.js";
1
+ import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c } from "./sheet-CquRYOAw.js";
2
2
  export { r as Sheet, s as SheetClose, a as SheetContent, o as SheetDescription, i as SheetFooter, e as SheetHeader, n as SheetTitle, t as SheetTrigger, c as sheetVariants };
@@ -1,7 +1,7 @@
1
1
  import { t as e } from "./cn-DJXf4yaB.js";
2
- import { t } from "./_plugin-vue_export-helper-ok8pgSl5.js";
3
- import { t as n } from "./useTouchGate-WFyJYsth.js";
4
- import { i as r } from "./dockContext-BKeIMmNk.js";
2
+ import { t } from "./_plugin-vue_export-helper-CBt_VvXa.js";
3
+ import { t as n } from "./useTouchGate-28Tk2-t2.js";
4
+ import { i as r } from "./dockContext-Bu1Avy-a.js";
5
5
  import { Fragment as i, computed as a, createBlock as o, createElementBlock as s, createVNode as c, defineComponent as l, mergeProps as u, onBeforeUnmount as d, onMounted as f, openBlock as p, renderList as m, unref as h, useTemplateRef as g, withCtx as _ } from "vue";
6
6
  import { SliderRange as v, SliderRoot as y, SliderThumb as b, SliderTrack as x, useForwardPropsEmits as S } from "reka-ui";
7
7
  import { cva as C } from "class-variance-authority";
@@ -110,7 +110,7 @@ var T = /* @__PURE__ */ t(/* @__PURE__ */ l({
110
110
  }), (p(!0), s(i, null, m(t.modelValue, (e, t) => (p(), o(h(b), {
111
111
  key: t,
112
112
  "aria-label": n.$attrs["aria-label"] ?? void 0,
113
- class: "slider-thumb glass-specular-track"
113
+ class: "slider-thumb glass-specular-track touch-hit-area"
114
114
  }, null, 8, ["aria-label"]))), 128))]),
115
115
  _: 1
116
116
  }, 16, [
@@ -121,16 +121,16 @@ var T = /* @__PURE__ */ t(/* @__PURE__ */ l({
121
121
  "data-touch-active"
122
122
  ]));
123
123
  }
124
- }), [["__scopeId", "data-v-394270d4"]]), E = C("glass-slider focus-ring relative flex w-full touch-none select-none items-center transition-colors", {
124
+ }), [["__scopeId", "data-v-534634a7"]]), E = C("glass-slider focus-ring relative flex w-full touch-none select-none items-center transition-colors", {
125
125
  variants: {
126
126
  variant: {
127
127
  standard: "",
128
128
  spectrum: ""
129
129
  },
130
130
  size: {
131
- sm: "[--slider-track-height:0.75rem] [--slider-thumb-size:0.5rem]",
132
- md: "[--slider-track-height:1.25rem] [--slider-thumb-size:1rem]",
133
- lg: "[--slider-track-height:1.75rem] [--slider-thumb-size:1.5rem]"
131
+ sm: "",
132
+ md: "",
133
+ lg: ""
134
134
  }
135
135
  },
136
136
  defaultVariants: {
package/dist/slider.js CHANGED
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "./slider-ClgpP7EB.js";
1
+ import { n as e, t } from "./slider-DQ95MET2.js";
2
2
  export { e as Slider, t as sliderVariants };
@@ -1,6 +1,6 @@
1
- import { t as e } from "./_plugin-vue_export-helper-ok8pgSl5.js";
2
- import { n as t } from "./createContext-B44Sah_H.js";
3
- import { t as n } from "./useSortable-C8ReQ50P.js";
1
+ import { t as e } from "./_plugin-vue_export-helper-CBt_VvXa.js";
2
+ import { n as t } from "./createContext-B2RaZ-b8.js";
3
+ import { t as n } from "./useSortable-BVqlJRBR.js";
4
4
  import { computed as r, createBlock as i, defineComponent as a, mergeProps as o, openBlock as s, renderSlot as c, resolveDynamicComponent as l, toRef as u, unref as d, withCtx as f } from "vue";
5
5
  //#region src/components/custom/sortable-list/context.ts
6
6
  var p = t("glass-ui:sortable", "[glass-ui:sortable] <SortableItem> must be used inside <SortableList>"), m = p.KEY;
@@ -0,0 +1,40 @@
1
+ //#region src/composables/motion/springPresets.ts
2
+ var e = [
3
+ {
4
+ name: "smooth",
5
+ response: .5,
6
+ dampingFraction: .86,
7
+ comment: "SETTLE register — entrances/fades/scale-ins, no overshoot read"
8
+ },
9
+ {
10
+ name: "snappy",
11
+ response: .35,
12
+ dampingFraction: .65,
13
+ comment: "CONTROL register — crisp position morphs (tab underline, progress fill, marker pop), overshoot ~+6.8%"
14
+ },
15
+ {
16
+ name: "bouncy",
17
+ response: .5,
18
+ dampingFraction: .45,
19
+ comment: "PLAYFUL register — emphatic one-shots only (bouncy toggle, dialog/success entrance, VT default), overshoot ~+20.5%"
20
+ },
21
+ {
22
+ name: "gentle",
23
+ response: .7,
24
+ dampingFraction: 1,
25
+ comment: "GENTLE register — patient critically-damped settle, reached via the --ease-spring-gentle @theme alias"
26
+ },
27
+ {
28
+ name: "dock",
29
+ response: .32,
30
+ dampingFraction: .7,
31
+ comment: "DOCK register — dock expand/collapse morph + the in-dock Slider thumb, iOS-control settled, overshoot ~+4.6%"
32
+ }
33
+ ];
34
+ function t(t) {
35
+ let n = e.find((e) => e.name === t);
36
+ if (!n) throw Error(`Unknown spring preset: ${t}`);
37
+ return n;
38
+ }
39
+ //#endregion
40
+ export { t as n, e as t };
@@ -30,14 +30,14 @@ var h = {
30
30
  }
31
31
  }), v = t(() => {
32
32
  if (g.direction === "vertical") switch (g.size) {
33
- case "sm": return "-mt-[var(--stack-overlap-sm)]";
34
- case "md": return "-mt-[var(--stack-overlap-md)]";
35
- case "lg": return "-mt-[var(--stack-overlap-lg)]";
33
+ case "sm": return "-mt-(--stack-overlap-sm)";
34
+ case "md": return "-mt-(--stack-overlap-md)";
35
+ case "lg": return "-mt-(--stack-overlap-lg)";
36
36
  }
37
37
  switch (g.size) {
38
- case "sm": return "-ml-[var(--stack-overlap-sm)]";
39
- case "md": return "-ml-[var(--stack-overlap-md)]";
40
- case "lg": return "-ml-[var(--stack-overlap-lg)]";
38
+ case "sm": return "-ml-(--stack-overlap-sm)";
39
+ case "md": return "-ml-(--stack-overlap-md)";
40
+ case "lg": return "-ml-(--stack-overlap-lg)";
41
41
  }
42
42
  }), y = t(() => g.items.slice(0, g.maxVisible)), b = t(() => Math.max(0, g.items.length - g.maxVisible));
43
43
  return (t, g) => (l(), n(f(o.as), { class: s([
@@ -141,128 +141,13 @@
141
141
  100% { background-position: -200% 0; }
142
142
  }
143
143
 
144
- /* ── Gold ONE-SHOT round-trip: the pressed seal (E7c — the to-AND-fro) ──────────
145
- *
146
- * A seal is PRESSED, catches the light ONCE, and RECEDES — a full ease-IN-AND-OUT
147
- * envelope, not a fire-and-yank. The defect this replaces: `.text-gilt` used the
148
- * infinite `gold-shimmer-slide` (`1 forwards`), which HELD its gilt terminal frame
149
- * forever, and the consumer ripped the class off on a `setTimeout` — but the gold
150
- * gradient lives in `background-image`, which no transition covers, so it SNAPPED
151
- * off in one frame.
152
- *
153
- * This keyframe owns the WHOLE envelope and RESOLVES TO THE RESTING INK — there is
154
- * nothing left to yank when it ends:
155
- * - `-webkit-text-fill-color` (and `color`) ride from the figure's OWN ink
156
- * (`currentColor` — the consumer's data-pole green/red) → `transparent` (the
157
- * gilt gradient shows through `background-clip:text`) → back to `currentColor`.
158
- * So the gilt FADES UP and FADES DOWN; at 0% and 100% the figure paints its own
159
- * ink and the gradient is occluded — the resting state, by construction.
160
- * - `background-position` slides the gradient across through the same window.
161
- * No `forwards` is needed (the final keyframe IS rest), so on completion the class
162
- * may simply stop mattering — the snap is structurally impossible. */
163
- @keyframes gold-shimmer-pulse {
164
- 0% {
165
- background-position: 150% 0;
166
- color: currentColor;
167
- -webkit-text-fill-color: currentColor;
168
- }
169
- 25% {
170
- color: transparent;
171
- -webkit-text-fill-color: transparent;
172
- }
173
- 75% {
174
- color: transparent;
175
- -webkit-text-fill-color: transparent;
176
- }
177
- 100% {
178
- background-position: -150% 0;
179
- color: currentColor;
180
- -webkit-text-fill-color: currentColor;
181
- }
182
- }
183
-
184
- /* ── Crayon-wipe: the scroll-scrubbed draw-on (D6.c M1) ──────────────────────
185
- *
186
- * The bidirectional, scroll-scrubbed DRAW-ON of a hand-mark (the crayon/pen
187
- * underline, a drawn rule). The wipe is a `clip-path: inset()` of the LEFT edge
188
- * only — the mark draws from inset(0 100% 0 0) (fully clipped from the right, so
189
- * NOTHING shows) to inset(0) (fully revealed) — so the underline DRAWS as the
190
- * figure scrolls into view and UN-DRAWS as it scrolls back up. `clip-path` is the
191
- * compositor-eligible, FILTER-STABLE wipe (the medium's grain `feTurbulence`
192
- * rasters ONCE and is untouched by the clip — the cardinal "no per-frame raster"
193
- * discipline ds2-motion-field M1 names): clip-path animates on the compositor and
194
- * never re-runs the static filter, unlike a `stroke-dashoffset` draw under the
195
- * grain filter (which re-rasters per frame). The grammar mirrors scroll-driven.css
196
- * (the `view()`/`scroll()` timeline home): the keyframe lives here (the shared
197
- * @keyframes register); a consumer binds it to a NAMED `view-timeline` so the
198
- * draw-on SCRUBS bidirectionally with scroll (forward → draws, back → un-draws),
199
- * never a one-shot. The `.crayon-wipe` utility below is the binding.
200
- *
201
- * The keyframe itself is timeline-agnostic — it is equally a load-clock draw-on
202
- * (bound to a keyframes.js Sequence) or a scroll scrub (bound to a view-timeline).
203
- * The DEFAULT consumer is the scroll scrub (the figure-item underline drawing into
204
- * the lower third), hence the utility's `view()` binding.
205
- *
206
- * Reduced-motion: the utility (NOT the keyframe) gates — under PRM the mark is SET
207
- * to inset(0) (fully drawn, never animated), the correct degrade for a permanent
208
- * structural draw (information parity: the underline is present, just not drawn).
144
+ /* ── Sparkle sweep RETIRED (BA.W-GLASS-CAL, H2a) ──
145
+ * The `@keyframes sparkle-sweep` + its reduced-motion stub are DELETED with the
146
+ * disco recipe family — the `btn-audacious` ::after star (its sole consumer) is
147
+ * gone, and the dock-tab primary tier collapsed onto the calm glass register.
148
+ * The `Complete!` celebratory shimmer rides its OWN keyframes (gold-shimmer-slide
149
+ * / shimmer above), never sparkle-sweep.
209
150
  */
210
- @keyframes crayon-wipe {
211
- from {
212
- /* clipped from the RIGHT by 100% → the mark is fully hidden (nothing
213
- drawn yet); the left edge is the pen-tip about to move right. */
214
- clip-path: inset(0 100% 0 0);
215
- }
216
- to {
217
- /* fully revealed — the mark is wholly drawn. */
218
- clip-path: inset(0 0 0 0);
219
- }
220
- }
221
-
222
- /* ── .crayon-wipe — bind the wipe to a scroll view-timeline (D6.c M1) ──────────
223
- * The scroll-scrubbed draw-on utility. A consumer puts `.crayon-wipe` on a
224
- * hand-mark surface (the underline span, a drawn rule) and the mark draws/un-draws
225
- * as it scrolls through its OWN `view()` timeline — a bidirectional scrub, free,
226
- * off the main thread. The animation is `paused` with `animation-timeline: view()`
227
- * so the scroll position IS the playhead (the native scroll-driven model — the
228
- * timeline drives the frame, time does not). The named timeline is overridable
229
- * (`--crayon-wipe-timeline`, default the element's own `view()`) so a consumer can
230
- * scrub off a SHARED beat timeline (the §--beat-tl the atlas scroll-driven.css
231
- * names) instead of the per-element view — that is the "named view-timeline so a
232
- * consumer scrubs a draw-on bidirectionally" contract.
233
- *
234
- * @supports-gated + PRM-OUTER-gated, mirroring scroll-driven.css exactly: the
235
- * whole binding sits under `prefers-reduced-motion: no-preference`, so under PRM
236
- * the animation never attaches and the mark renders in its terminal `inset(0)`
237
- * (fully-drawn) state — the static-draw degrade. The draw range is `entry`-keyed
238
- * (the mark draws as it ENTERS the lower viewport), tunable via
239
- * `--crayon-wipe-range-{start,end}`. */
240
- @media (prefers-reduced-motion: no-preference) {
241
- @supports ((animation-timeline: view()) and (animation-range: entry)) {
242
- .crayon-wipe {
243
- animation: crayon-wipe auto linear both;
244
- animation-timeline: var(--crayon-wipe-timeline, view(block));
245
- animation-range: var(--crayon-wipe-range-start, entry 0%)
246
- var(--crayon-wipe-range-end, cover 35%);
247
- }
248
- }
249
- }
250
-
251
- /* ── Sparkle sweep: TOMBSTONE (D6.b — the disco-star excision) ──
252
- *
253
- * @deprecated 3.10 — DELETE in 3.11. The four-point `✦` star sweep was the one
254
- * garish gesture in the library; the user named it for removal ("remove the disco
255
- * star from all glass-ui elements"). Every in-tree consumer is re-homed: the
256
- * `btn-audacious` hover affirmation now rides the specular catch-light alone; the
257
- * gold-CTA rides the `btn-gold-bg-sweep` metal-catch; the chassis `complete`
258
- * celebration re-homes to the `.text-gilt` one-shot (utilities.css). The keyframe
259
- * body is EMPTIED rather than deleted for ONE minor so any out-of-tree consumer
260
- * (the slides decks) fails SOFT — a no-op animation, not an unknown-animation
261
- * error. The `--duration-sparkle` token is `@deprecated` alongside (tokens.css).
262
- * Full delete (this block + the token + the theme bridge) lands in 3.11. */
263
- @keyframes sparkle-sweep {
264
- /* intentionally empty — tombstoned, see deprecation note above */
265
- }
266
151
 
267
152
  /* ── Pulse dot bounce: dots variant of <Pulse> ──
268
153
  *
@@ -430,7 +315,11 @@
430
315
  opacity: 0;
431
316
  scale: var(--top-layer-enter-scale, 0.96);
432
317
  transition-property: opacity, scale, display, overlay;
433
- transition-duration: var(--duration-normal);
318
+ /* BA.W-GLASS-CAL Unit 3 — the enter rides the bouncy spring's OWN settle
319
+ clock (`--spring-bouncy-duration`, the 2%-band envelope settle) rather
320
+ than the generic `--duration-normal`, so the emphatic dialog/popover
321
+ entrance bounce reads fully instead of being clipped at 0.3s. */
322
+ transition-duration: var(--spring-bouncy-duration);
434
323
  transition-timing-function: var(--spring-bouncy);
435
324
  transition-behavior: allow-discrete;
436
325
  }
@@ -451,16 +340,27 @@
451
340
  * exists for `showModal()` dialogs, NOT `[popover]` (popovers are
452
341
  * non-modal — correct, no scrim). */
453
342
  dialog.glass-top-layer::backdrop {
454
- background-color: hsl(var(--background) / 0);
343
+ /* AZ.W-ADAPTIVE-AUTO A5-1 — the modal-scrim dim is the house alpha-derivative
344
+ `color-mix(in srgb, var(--background) Npct, transparent)`, NOT the invalid
345
+ `hsl(var(--background) / α)` double-wrap (`--background` is a complete
346
+ `hsl()` color = `hsl(48 12% 98%)`, so `hsl(hsl(…)/α)` evaluates to nothing
347
+ and the dim silently did not paint). The `in srgb` axis only — the
348
+ `--surface-tint-*` house family + the `in oklab` glass tint axis are
349
+ untouched. */
350
+ background-color: color-mix(in srgb, var(--background) 0%, transparent);
455
351
  backdrop-filter: blur(var(--top-layer-backdrop-blur, 8px));
456
352
  transition: display var(--duration-normal) allow-discrete,
457
353
  overlay var(--duration-normal) allow-discrete,
458
354
  background-color var(--duration-normal) var(--ease-standard);
459
355
  }
460
356
  dialog.glass-top-layer[open]::backdrop {
461
- background-color: hsl(var(--background) / var(--top-layer-backdrop-dim, 0.5));
357
+ background-color: color-mix(
358
+ in srgb,
359
+ var(--background) calc(var(--top-layer-backdrop-dim, 0.5) * 100%),
360
+ transparent
361
+ );
462
362
  @starting-style {
463
- background-color: hsl(var(--background) / 0);
363
+ background-color: color-mix(in srgb, var(--background) 0%, transparent);
464
364
  }
465
365
  }
466
366
  }
@@ -46,3 +46,58 @@
46
46
  box-shadow: var(--shadow-cartoon-lg);
47
47
  }
48
48
  }
49
+
50
+ /* ── Veil surface decoration (R5-7) ──────────────────────────────
51
+ The text-legibility PLATE register, ratified by three slides sites (the
52
+ deck cover subtitle / standfirst / closer lede). Conceptually the W55
53
+ adaptive-legibility tint applied as a LOCAL plate: a translucent glass
54
+ fill + blur that darkens content-on-glass over a busy/bright backdrop so
55
+ text clears AA, but with the BOXED look STRIPPED — no border, no rim, no
56
+ highlight (the user's read: the border+rim "reads as a dividing line on a
57
+ text plate"). It is the `surface` sibling of `cartoon` — a decoration-only
58
+ utility, NOT a tier of its own.
59
+
60
+ It routes the glass MATERIAL through the `--glass-*` ladder (`--veil-bg`
61
+ defaults to the `quiet` rung's adaptive-tint mix, `--veil-blur` to the
62
+ quiet blur), so the glass-cohesion model sees a sanctioned glass register
63
+ (the level knob scales the blur; the W55 bright-bucket darkens the fill via
64
+ the same inheriting tint axis the rung already reads). What it carries on TOP
65
+ of a bare rung is the THREE veil deltas, each a `--veil-*` knob a consumer
66
+ retunes:
67
+
68
+ border : none (--veil-border, the dividing-line strip)
69
+ shadow : none (--veil-shadow, the rim/highlight strip)
70
+ feather : none (default) (--veil-feather — an OPTIONAL radial mask that
71
+ fades the plate edges into the backdrop; off by default so the
72
+ plate is a clean rectangle, on when a consumer wants the
73
+ soft-edged "bleed into the page" text-plate look)
74
+
75
+ <Card surface="veil"> selects it; `--veil-bg`/`--veil-blur` ride the same
76
+ `--glass-*` rungs as the ladder, so one `--glass-level` / `--glass-backdrop`
77
+ override retunes it in lockstep with every other glass surface. */
78
+ @utility veil-surface {
79
+ /* The glass material — routed through the `--glass-*` ladder so the
80
+ cohesion model reads a sanctioned glass register, and the W55 adaptive
81
+ darken (the inheriting `--glass-tint-*` axis) + the `--glass-level` clarity
82
+ knob reach the plate with NO veil-local recipe. Defaults to the `quiet`
83
+ rung; a consumer re-points `--veil-bg`/`--veil-blur` to any other rung. */
84
+ --veil-bg: color-mix(in oklab, var(--glass-bg-quiet), var(--glass-tint-source) var(--glass-tint-strength));
85
+ --veil-blur: var(--glass-blur-quiet);
86
+ /* The three veil deltas over a bare rung — each overridable. */
87
+ --veil-border: none;
88
+ --veil-shadow: none;
89
+ --veil-feather: none;
90
+
91
+ background: var(--veil-bg);
92
+ -webkit-backdrop-filter: var(--veil-blur);
93
+
94
+ backdrop-filter: var(--veil-blur);
95
+ border: var(--veil-border);
96
+ box-shadow: var(--veil-shadow);
97
+ /* The optional radial feather — a `mask-image` only painted when
98
+ `--veil-feather` is set to a gradient (default `none` = no mask = a clean
99
+ rectangle). `mask-image: none` is the identity, so the default plate is
100
+ unmasked. `mask-image` Baseline 2023-12 — a non-supporting engine ignores
101
+ it and keeps the clean rectangle. */
102
+ mask-image: var(--veil-feather);
103
+ }