@mkbabb/glass-ui 3.13.0 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (507) hide show
  1. package/README.md +3 -1
  2. package/dist/CardAction-CW7a0m8M.js +253 -0
  3. package/dist/{CommandShortcut-RowNEO6i.js → CommandShortcut-DvZNQ_HF.js} +58 -53
  4. package/dist/ConfiguratorRow-BR4l-ixA.js +143 -0
  5. package/dist/{ContextMenuContent-CT3AS1WX.js → ContextMenuContent-uWnVxDab.js} +1 -1
  6. package/dist/{ContextMenuSubContent-BQmxTAdw.js → ContextMenuSubContent-xol4sD2q.js} +32 -37
  7. package/dist/{DataTable-BCddn3T3.js → DataTable-CuKwF7wr.js} +99 -97
  8. package/dist/DialogContent-DcKK8k9i.js +103 -0
  9. package/dist/{DialogFooter-Blu4t7tJ.js → DialogFooter-BZNX5aVr.js} +3 -3
  10. package/dist/FadingScroll-DI6hQhT9.js +76 -0
  11. package/dist/{HoverCardContent-Csywg3YF.js → HoverCardContent-b2uaAMRR.js} +1 -1
  12. package/dist/{HoverPopover-CISOJQuZ.js → HoverPopover-CbqbNwgU.js} +2 -2
  13. package/dist/IconChip-BTD-nay5.js +55 -0
  14. package/dist/{IconTooltip-DPzE09X9.js → IconTooltip-Bl8gFZ8d.js} +1 -1
  15. package/dist/{Input-DWQQIOC4.js → Input-h9v5LeXf.js} +1 -1
  16. package/dist/{MetricBadge-C9QMz1KT.js → MetricBadge-RHdBP72w.js} +1 -1
  17. package/dist/Notification-VUwexFUf.js +43 -0
  18. package/dist/NumberFieldContent-Cq7EzX-U.js +138 -0
  19. package/dist/PopoverContent-DL7E6vJP.js +127 -0
  20. package/dist/{Progress-DwlUKGbr.js → Progress-DctG61iZ.js} +98 -78
  21. package/dist/{ScrollingText-DfFrwSph.js → ScrollingText-yOpBzFYq.js} +2 -2
  22. package/dist/{SelectScrollDownButton-CiDUxfEj.js → SelectScrollDownButton-CrA8F0iV.js} +35 -20
  23. package/dist/{Switch-CsIuYP_e.js → Switch-CwYNf8bo.js} +1 -1
  24. package/dist/Toaster-Bw4xR8xV.js +274 -0
  25. package/dist/{ToggleGroupItem-D_AHlRw9.js → ToggleGroupItem-pEM9vIhs.js} +50 -37
  26. package/dist/{TooltipProvider-B3MkB_8P.js → TooltipProvider-rzvnXz60.js} +1 -1
  27. package/dist/animated-digit.js +2 -2
  28. package/dist/api/index.d.ts +16 -8
  29. package/dist/api/types-extra.d.ts +6 -0
  30. package/dist/api.js +2 -2
  31. package/dist/aurora.js +888 -230
  32. package/dist/badge.js +1 -1
  33. package/dist/border-progress.d.ts +1 -0
  34. package/dist/border-progress.js +106 -0
  35. package/dist/button-DYCUa-tH.js +126 -0
  36. package/dist/button.js +1 -1
  37. package/dist/canvas.js +2 -2
  38. package/dist/card.js +2 -2
  39. package/dist/carousel.d.ts +1 -1
  40. package/dist/carousel.js +90 -151
  41. package/dist/collapsible.js +1 -1
  42. package/dist/color-swatch.d.ts +1 -0
  43. package/dist/color-swatch.js +47 -0
  44. package/dist/color.js +1 -1
  45. package/dist/command.js +1 -1
  46. package/dist/compile-CQEFRTmx.js +19 -0
  47. package/dist/components/custom/aurora/composables/atoms-fields.d.ts +39 -0
  48. package/dist/components/custom/aurora/composables/auroraFallbackGround.d.ts +108 -0
  49. package/dist/components/custom/aurora/composables/runtime.d.ts +19 -0
  50. package/dist/components/custom/aurora/composables/uniformBridge.d.ts +5 -1
  51. package/dist/components/custom/aurora/composables/uniformBridgeWGPU.d.ts +51 -0
  52. package/dist/components/custom/aurora/composables/wgpuSetup.d.ts +29 -0
  53. package/dist/components/custom/aurora/constants/budget.d.ts +21 -0
  54. package/dist/components/custom/aurora/constants/presets.d.ts +30 -2
  55. package/dist/components/custom/aurora/constants/renderMode.d.ts +63 -10
  56. package/dist/components/custom/aurora/constants/shaders/aurora.wgsl.d.ts +1 -0
  57. package/dist/components/custom/aurora/constants/shaders/oil-modes.glsl.d.ts +1 -0
  58. package/dist/components/custom/aurora/constants/shaders/procedural-color.wgsl.d.ts +4 -0
  59. package/dist/components/custom/aurora/index.d.ts +3 -2
  60. package/dist/components/custom/border-progress/BorderProgress.vue.d.ts +46 -0
  61. package/dist/components/custom/border-progress/composables/useBorderSpectrum.d.ts +22 -0
  62. package/dist/components/custom/border-progress/constants.d.ts +59 -0
  63. package/dist/components/custom/border-progress/index.d.ts +4 -0
  64. package/dist/components/custom/color-swatch/ColorSwatch.vue.d.ts +22 -0
  65. package/dist/components/custom/color-swatch/index.d.ts +1 -0
  66. package/dist/components/custom/concentric/Concentric.vue.d.ts +39 -0
  67. package/dist/components/custom/concentric/composables/concentricGLSetup.d.ts +11 -0
  68. package/dist/components/custom/concentric/composables/concentricWGPUSetup.d.ts +13 -0
  69. package/dist/components/custom/concentric/composables/ringField.d.ts +44 -0
  70. package/dist/components/custom/concentric/composables/uniformBridgeWGPU.d.ts +13 -0
  71. package/dist/components/custom/concentric/composables/useConcentric.d.ts +35 -0
  72. package/dist/components/custom/concentric/constants.d.ts +43 -0
  73. package/dist/components/custom/concentric/index.d.ts +5 -0
  74. package/dist/components/custom/concentric/shaders/concentric.glsl.d.ts +4 -0
  75. package/dist/components/custom/concentric/shaders/concentric.wgsl.d.ts +1 -0
  76. package/dist/components/custom/configurator/Configurator.vue.d.ts +19 -8
  77. package/dist/components/custom/constellation/Constellation.vue.d.ts +18 -206
  78. package/dist/components/custom/constellation/composables/useConstellation.d.ts +26 -0
  79. package/dist/components/custom/constellation/constellationField.d.ts +2 -369
  80. package/dist/components/custom/constellation/constellationTypes.d.ts +369 -0
  81. package/dist/components/custom/constellation/index.d.ts +1 -1
  82. package/dist/components/custom/dock/DockIconButton.vue.d.ts +13 -4
  83. package/dist/components/custom/dock/DockLayerGroup.vue.d.ts +10 -2
  84. package/dist/components/custom/dock/DockRail.vue.d.ts +17 -16
  85. package/dist/components/custom/dock/DockSection.vue.d.ts +69 -0
  86. package/dist/components/custom/dock/DockSeparator.vue.d.ts +49 -1
  87. package/dist/components/custom/dock/DockTabButton.vue.d.ts +5 -5
  88. package/dist/components/custom/dock/composables/dockMorphMeasure.d.ts +75 -0
  89. package/dist/components/custom/dock/composables/useLayerTransition.d.ts +13 -0
  90. package/dist/components/custom/dock/constants.d.ts +35 -0
  91. package/dist/components/custom/dock/index.d.ts +2 -0
  92. package/dist/components/custom/dot-flow-field/DotFlowField.vue.d.ts +38 -0
  93. package/dist/components/custom/dot-flow-field/composables/flowField.d.ts +41 -0
  94. package/dist/components/custom/dot-flow-field/composables/uniformBridgeWGPU.d.ts +24 -0
  95. package/dist/components/custom/dot-flow-field/composables/useDotFlowField.d.ts +34 -0
  96. package/dist/components/custom/dot-flow-field/composables/useFlowParticles.d.ts +18 -0
  97. package/dist/components/custom/dot-flow-field/constants.d.ts +48 -0
  98. package/dist/components/custom/dot-flow-field/index.d.ts +5 -0
  99. package/dist/components/custom/dot-flow-field/shaders/flow-field.compute.wgsl.d.ts +1 -0
  100. package/dist/components/custom/dot-flow-field/shaders/flow-field.glsl.d.ts +20 -0
  101. package/dist/components/custom/dot-flow-field/shaders/flow-field.render.wgsl.d.ts +1 -0
  102. package/dist/components/custom/easing/EasingConfigurator.vue.d.ts +33 -0
  103. package/dist/components/custom/easing/EasingPicker.vue.d.ts +49 -0
  104. package/dist/components/custom/easing/composables/useEasingPicker.d.ts +75 -0
  105. package/dist/components/custom/easing/constants.d.ts +28 -0
  106. package/dist/components/custom/easing/index.d.ts +3 -0
  107. package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +10 -0
  108. package/dist/components/custom/fading-scroll/FadingScroll.vue.d.ts +25 -0
  109. package/dist/components/custom/fading-scroll/composables/useFadingScroll.d.ts +31 -0
  110. package/dist/components/custom/fading-scroll/constants.d.ts +19 -0
  111. package/dist/components/custom/fading-scroll/index.d.ts +2 -0
  112. package/dist/components/custom/fourier-field/FourierField.vue.d.ts +19 -2
  113. package/dist/components/custom/fourier-field/composables/useFourierField.d.ts +39 -0
  114. package/dist/components/custom/fourier-field/constants.d.ts +7 -0
  115. package/dist/components/custom/fourier-field/index.d.ts +1 -1
  116. package/dist/components/custom/fourier-field/math.d.ts +17 -0
  117. package/dist/components/custom/glass-panel/GlassPanel.vue.d.ts +9 -1
  118. package/dist/components/custom/goo-blob/GooBlob.vue.d.ts +4 -2
  119. package/dist/components/custom/goo-blob/composables/uniformBridgeWGPU.d.ts +24 -0
  120. package/dist/components/custom/goo-blob/composables/useMetaballRenderer.d.ts +29 -12
  121. package/dist/components/custom/goo-blob/composables/wgpuSetup.d.ts +23 -0
  122. package/dist/components/custom/goo-blob/constants.d.ts +6 -1
  123. package/dist/components/custom/goo-blob/shaders/metaball.wgsl.d.ts +1 -0
  124. package/dist/components/custom/handmark/HandMark.vue.d.ts +29 -0
  125. package/dist/components/custom/handmark/brush.d.ts +269 -0
  126. package/dist/components/custom/handmark/composables/useHandMark.d.ts +89 -0
  127. package/dist/components/custom/handmark/constants.d.ts +39 -0
  128. package/dist/components/custom/handmark/freehand.d.ts +69 -0
  129. package/dist/components/custom/handmark/geometry.d.ts +52 -0
  130. package/dist/components/custom/handmark/index.d.ts +27 -0
  131. package/dist/components/custom/handmark/ink.d.ts +11 -0
  132. package/dist/components/custom/handmark/texture.d.ts +39 -0
  133. package/dist/components/custom/handmark/types.d.ts +62 -0
  134. package/dist/components/custom/icon-chip/IconChip.vue.d.ts +4 -0
  135. package/dist/components/custom/icon-chip/index.d.ts +2 -0
  136. package/dist/components/custom/icon-chip/types.d.ts +82 -0
  137. package/dist/components/custom/instrument-chassis/InstrumentChassis.vue.d.ts +17 -2
  138. package/dist/components/custom/metric-stack/MetricStack.vue.d.ts +1 -1
  139. package/dist/components/custom/pager-dots/PagerDots.vue.d.ts +39 -0
  140. package/dist/components/custom/pager-dots/index.d.ts +2 -0
  141. package/dist/components/custom/spa-view/SpaView.vue.d.ts +50 -0
  142. package/dist/components/custom/spa-view/index.d.ts +2 -0
  143. package/dist/components/custom/tabs/SegmentedTabs.vue.d.ts +29 -24
  144. package/dist/components/custom/tabs/composables/useTabDragMorph.d.ts +42 -0
  145. package/dist/components/custom/tabs/composables/useTabIndicator.d.ts +30 -21
  146. package/dist/components/custom/tabs/constants.d.ts +9 -3
  147. package/dist/components/custom/tabs/index.d.ts +1 -1
  148. package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +15 -1
  149. package/dist/components/ui/_shared/index.d.ts +2 -0
  150. package/dist/components/ui/_shared/menuItemVariants.d.ts +19 -0
  151. package/dist/components/ui/_shared/useSurfaceAxis.d.ts +41 -0
  152. package/dist/components/ui/badge/index.d.ts +1 -1
  153. package/dist/components/ui/button/Button.vue.d.ts +5 -2
  154. package/dist/components/ui/button/index.d.ts +2 -2
  155. package/dist/components/ui/card/Card.vue.d.ts +34 -4
  156. package/dist/components/ui/card/CardHeader.vue.d.ts +42 -16
  157. package/dist/components/ui/card/ScrollCard.vue.d.ts +33 -0
  158. package/dist/components/ui/card/ScrollCardHeader.vue.d.ts +17 -0
  159. package/dist/components/ui/card/index.d.ts +2 -0
  160. package/dist/components/ui/carousel/CarouselNext.vue.d.ts +2 -2
  161. package/dist/components/ui/carousel/CarouselPrevious.vue.d.ts +2 -2
  162. package/dist/components/ui/carousel/GlassCarouselPager.vue.d.ts +2 -2
  163. package/dist/components/ui/carousel/index.d.ts +0 -1
  164. package/dist/components/ui/command/Command.vue.d.ts +4 -1
  165. package/dist/components/ui/dialog/DialogContent.vue.d.ts +8 -3
  166. package/dist/components/ui/drawer/Drawer.vue.d.ts +46 -33
  167. package/dist/components/ui/drawer/DrawerContent.vue.d.ts +12 -8
  168. package/dist/components/ui/drawer/DrawerDescription.vue.d.ts +2 -2
  169. package/dist/components/ui/drawer/DrawerOverlay.vue.d.ts +1 -1
  170. package/dist/components/ui/drawer/DrawerTitle.vue.d.ts +2 -2
  171. package/dist/components/ui/drawer/composables/drawerSnapContext.d.ts +26 -0
  172. package/dist/components/ui/drawer/composables/useDrawerSnap.d.ts +17 -0
  173. package/dist/components/ui/drawer/constants.d.ts +45 -0
  174. package/dist/components/ui/drawer/index.d.ts +23 -15
  175. package/dist/components/ui/focus-scope/FocusScope.vue.d.ts +20 -0
  176. package/dist/components/ui/focus-scope/index.d.ts +2 -0
  177. package/dist/components/ui/index.d.ts +1 -1
  178. package/dist/components/ui/popover/PopoverContent.vue.d.ts +3 -0
  179. package/dist/components/ui/progress/ProgressDefault.vue.d.ts +3 -2
  180. package/dist/components/ui/progress/ProgressSectioned.vue.d.ts +14 -3
  181. package/dist/components/ui/select/SelectContent.vue.d.ts +1 -1
  182. package/dist/components/ui/select/SelectTrigger.vue.d.ts +27 -4
  183. package/dist/components/ui/sheet/SheetContent.vue.d.ts +6 -0
  184. package/dist/components/ui/sheet/index.d.ts +1 -1
  185. package/dist/components/ui/skeleton/Skeleton.vue.d.ts +3 -0
  186. package/dist/components/ui/tags-input/TagsInput.vue.d.ts +2 -2
  187. package/dist/components/ui/toast/Toast.vue.d.ts +5 -2
  188. package/dist/components/ui/toast/use-toast.d.ts +14 -0
  189. package/dist/components/ui/toggle/Toggle.vue.d.ts +1 -1
  190. package/dist/composables/dark/index.d.ts +1 -1
  191. package/dist/composables/dark/useGlobalDark.d.ts +23 -1
  192. package/dist/composables/glass/canvas2d/useCanvas2D.d.ts +13 -6
  193. package/dist/composables/glass/index.d.ts +5 -2
  194. package/dist/composables/glass/useSpecularPointer.d.ts +33 -0
  195. package/dist/composables/glass/useSpecularTracking.d.ts +20 -0
  196. package/dist/composables/glass/vSpecular.d.ts +2 -0
  197. package/dist/composables/glass/webgl/shaders/flow.glsl.d.ts +1 -0
  198. package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +16 -0
  199. package/dist/composables/glass/webgpu/index.d.ts +2 -0
  200. package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +54 -0
  201. package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +84 -0
  202. package/dist/composables/motion/core/index.d.ts +1 -0
  203. package/dist/composables/motion/index.d.ts +4 -0
  204. package/dist/composables/motion/useDockCtaReceive.d.ts +59 -0
  205. package/dist/composables/motion/useDragMorph.d.ts +77 -0
  206. package/dist/composables/motion/useLiquidFlex.d.ts +11 -0
  207. package/dist/composables/motion/useLiquidPress.d.ts +71 -0
  208. package/dist/composables/motion/useLiquidReveal.d.ts +51 -0
  209. package/dist/composables/motion/useNumericTransition.d.ts +3 -3
  210. package/dist/composables/motion/usePointerVelocityField.d.ts +98 -0
  211. package/dist/composables/motion/useViewTransition.d.ts +36 -1
  212. package/dist/concentric.d.ts +1 -0
  213. package/dist/concentric.js +562 -0
  214. package/dist/configurator.js +3 -2
  215. package/dist/confirm-dialog.js +22 -24
  216. package/dist/constellation.js +93 -95
  217. package/dist/context-menu.js +3 -3
  218. package/dist/controls.js +10 -4
  219. package/dist/createCanvasLifecycle-CHD5XrDW.js +82 -0
  220. package/dist/dark.d.ts +1 -1
  221. package/dist/dark.js +1 -1
  222. package/dist/data-table.js +1 -1
  223. package/dist/dialog.js +2 -2
  224. package/dist/dock.js +738 -442
  225. package/dist/{dockContext-BegmJVmx.js → dockContext-BNfyPLe9.js} +1 -1
  226. package/dist/dom.js +5 -5
  227. package/dist/dot-flow-field.d.ts +1 -0
  228. package/dist/dot-flow-field.js +604 -0
  229. package/dist/drawer.d.ts +1 -0
  230. package/dist/drawer.js +380 -0
  231. package/dist/{dropdown-menu-DzkkyBwX.js → dropdown-menu-CofSZuk8.js} +14 -15
  232. package/dist/dropdown-menu.js +1 -1
  233. package/dist/easing.d.ts +1 -0
  234. package/dist/easing.js +463 -0
  235. package/dist/expandable-container.js +45 -38
  236. package/dist/fading-scroll.d.ts +1 -0
  237. package/dist/fading-scroll.js +2 -0
  238. package/dist/focus-scope.d.ts +1 -0
  239. package/dist/focus-scope.js +23 -0
  240. package/dist/forms.js +7 -7
  241. package/dist/fourier-field.js +135 -122
  242. package/dist/fourier-math.js +2 -2
  243. package/dist/glass-panel.js +39 -36
  244. package/dist/glass-ui.css +1 -1
  245. package/dist/glass-ui.js +154 -362
  246. package/dist/goo-blob.js +838 -227
  247. package/dist/handmark.d.ts +1 -0
  248. package/dist/handmark.js +707 -0
  249. package/dist/header-ribbon.js +1 -1
  250. package/dist/hover-card.js +1 -1
  251. package/dist/hover-popover.js +1 -1
  252. package/dist/icon-chip.d.ts +1 -0
  253. package/dist/icon-chip.js +2 -0
  254. package/dist/icon-tooltip.js +1 -1
  255. package/dist/index.d.ts +3 -3
  256. package/dist/instrument-chassis.js +1 -1
  257. package/dist/keyboard.js +1 -1
  258. package/dist/label.js +1 -1
  259. package/dist/labeled-field.js +6 -6
  260. package/dist/{math-U6-RrLmV.js → math-BINYmg5z.js} +11 -3
  261. package/dist/{menuItemVariants-DPiEarb0.js → menuItemVariants-D8VNHq22.js} +10 -4
  262. package/dist/metric-badge.js +1 -1
  263. package/dist/metric-cell.js +25 -22
  264. package/dist/metric-stack.js +4 -8
  265. package/dist/motion-core.js +36 -35
  266. package/dist/motion-curves.js +1 -1
  267. package/dist/motion.js +157 -55
  268. package/dist/notification.js +1 -1
  269. package/dist/number-field.js +1 -1
  270. package/dist/pager-dots.d.ts +1 -0
  271. package/dist/pager-dots.js +91 -0
  272. package/dist/paper-backdrop.js +1 -1
  273. package/dist/popover.js +1 -1
  274. package/dist/{presets-BKVyQfbt.js → presets-BW2b-fr1.js} +14 -1
  275. package/dist/{compile-B7NGOBcP.js → procedural-color.glsl-CIFsJhwI.js} +1 -155
  276. package/dist/procedural-color.wgsl-CToRHugY.js +224 -0
  277. package/dist/progress.js +1 -1
  278. package/dist/pulse.js +1 -1
  279. package/dist/reactive.js +2 -2
  280. package/dist/scrolling-text.js +1 -1
  281. package/dist/search.js +10 -12
  282. package/dist/select.js +3 -3
  283. package/dist/separator.js +1 -1
  284. package/dist/sheet-tZMg0E0w.js +218 -0
  285. package/dist/sheet.js +1 -1
  286. package/dist/{slider-B-JP2JlI.js → slider-DVb4HXU-.js} +7 -7
  287. package/dist/slider.js +1 -1
  288. package/dist/sortable-list.js +3 -3
  289. package/dist/spa-view.d.ts +1 -0
  290. package/dist/spa-view.js +46 -0
  291. package/dist/styles/animations.css +40 -31
  292. package/dist/styles/border-progress.css +109 -0
  293. package/dist/styles/cards.css +76 -0
  294. package/dist/styles/components.css +1 -1
  295. package/dist/styles/configurator.css +35 -0
  296. package/dist/styles/critical-partition.mjs +140 -0
  297. package/dist/styles/critical.css +12 -0
  298. package/dist/styles/deferred.css +31 -0
  299. package/dist/styles/dock/density.css +64 -0
  300. package/dist/styles/dock/layers.css +54 -30
  301. package/dist/styles/dock/morph.css +124 -7
  302. package/dist/styles/dock/overflow.css +31 -2
  303. package/dist/styles/dock/rail-extend.css +168 -71
  304. package/dist/styles/dock/section.css +59 -0
  305. package/dist/styles/dock/shell.css +83 -16
  306. package/dist/styles/dock-controls/icon-button.css +11 -1
  307. package/dist/styles/dock-controls/tab-button.css +24 -83
  308. package/dist/styles/dock-controls/triggers.css +7 -0
  309. package/dist/styles/dock.css +38 -3
  310. package/dist/styles/drawer.css +127 -35
  311. package/dist/styles/feedback-tone.css +104 -0
  312. package/dist/styles/glass/deep.css +44 -0
  313. package/dist/styles/glass/ladder.css +154 -52
  314. package/dist/styles/glass/material.css +78 -15
  315. package/dist/styles/glass/reveal.css +136 -0
  316. package/dist/styles/glass/rim.css +100 -0
  317. package/dist/styles/glass/surface-axis.css +113 -0
  318. package/dist/styles/glass/surfaces.css +189 -15
  319. package/dist/styles/glass-refract.css +96 -44
  320. package/dist/styles/glass-specular-track.css +7 -0
  321. package/dist/styles/glass.css +8 -2
  322. package/dist/styles/hover-popover.css +7 -6
  323. package/dist/styles/icon-chip.css +211 -0
  324. package/dist/styles/index.css +78 -4
  325. package/dist/styles/instrument-chassis.css +107 -2
  326. package/dist/styles/menu.css +127 -0
  327. package/dist/styles/scroll-choreography.css +300 -0
  328. package/dist/styles/segmented-tabs.css +188 -86
  329. package/dist/styles/select.css +50 -0
  330. package/dist/styles/theme/bridges.css +22 -1
  331. package/dist/styles/theme/literals.css +11 -2
  332. package/dist/styles/theme/radius.css +6 -1
  333. package/dist/styles/tokens/color-radius.css +40 -13
  334. package/dist/styles/tokens/dark-arm.css +200 -20
  335. package/dist/styles/tokens/glass-deep.css +75 -0
  336. package/dist/styles/tokens/glass-fx.css +333 -0
  337. package/dist/styles/tokens/glass.css +95 -315
  338. package/dist/styles/tokens/light-dark.css +64 -22
  339. package/dist/styles/tokens/offsets.css +116 -0
  340. package/dist/styles/tokens/on-glass-fg.css +39 -0
  341. package/dist/styles/tokens/property-regs.css +130 -10
  342. package/dist/styles/tokens/scale-paper.css +155 -84
  343. package/dist/styles/tokens/scheme-motion.css +102 -46
  344. package/dist/styles/tokens/scroll-tokens.css +123 -0
  345. package/dist/styles/tokens/{offsets-sizing.css → sizing.css} +88 -89
  346. package/dist/styles/tokens.css +9 -3
  347. package/dist/styles/transitions.css +7 -7
  348. package/dist/styles/typography/scale.css +153 -0
  349. package/dist/styles/typography/semantic.css +220 -0
  350. package/dist/styles/typography/utilities.css +174 -0
  351. package/dist/styles/typography.css +23 -507
  352. package/dist/styles/utilities/a11y-overrides.css +33 -4
  353. package/dist/styles/utilities/animate.css +27 -24
  354. package/dist/styles/utilities/base-misc.css +255 -0
  355. package/dist/styles/utilities/base.css +100 -138
  356. package/dist/styles/utilities/btn.css +21 -202
  357. package/dist/styles/utilities/metal.css +189 -0
  358. package/dist/styles/utilities.css +14 -7
  359. package/dist/styles/view-transition.css +4 -1
  360. package/dist/switch.js +1 -1
  361. package/dist/tabs.js +275 -191
  362. package/dist/timeline.js +2 -2
  363. package/dist/toast.js +1 -1
  364. package/dist/toggle-chip.js +3 -1
  365. package/dist/toggle-group.js +1 -1
  366. package/dist/tooltip.js +1 -1
  367. package/dist/typewriter.js +1 -1
  368. package/dist/{useAnimatedNumber-C5I3wWd8.js → useAnimatedNumber-BfUq2bUM.js} +1 -1
  369. package/dist/useCanvas2D-B8w_E3Rr.js +83 -0
  370. package/dist/useConfiguratorState-DNlOh6c8.js +161 -0
  371. package/dist/useDragMorph-DgxnsVJz.js +102 -0
  372. package/dist/{useGlobalDark-yhL4Wp-s.js → useGlobalDark-C28t0VWJ.js} +22 -3
  373. package/dist/useLiquidPress-kfb4KX79.js +39 -0
  374. package/dist/usePointerVelocityField-JbRd5CrM.js +137 -0
  375. package/dist/{useRAFLoop-Bxv0o6L5.js → useRAFLoop-UYa4zoiN.js} +1 -1
  376. package/dist/useSpring-C0jyvEJB.js +40 -0
  377. package/dist/useSpringMount-q1amq1SJ.js +71 -0
  378. package/dist/useSpringPress-BsqPr7FJ.js +34 -0
  379. package/dist/useSurfaceAxis-g0NloYEF.js +7 -0
  380. package/dist/{useTouchGate-Dg7MQI1G.js → useTouchGate-CBZTD4SD.js} +1 -1
  381. package/dist/vReveal-Czsb7zQC.js +10 -0
  382. package/dist/vSpecular-CQFmLNzA.js +68 -0
  383. package/dist/vendor-CKmzio-i.js +226 -0
  384. package/dist/watercolor-dot.js +12 -5
  385. package/package.json +193 -25
  386. package/src/styles/animations.css +40 -31
  387. package/src/styles/border-progress.css +109 -0
  388. package/src/styles/cards.css +76 -0
  389. package/src/styles/configurator.css +35 -0
  390. package/src/styles/critical-partition.mjs +140 -0
  391. package/src/styles/dock/density.css +64 -0
  392. package/src/styles/dock/layers.css +54 -30
  393. package/src/styles/dock/morph.css +124 -7
  394. package/src/styles/dock/overflow.css +31 -2
  395. package/src/styles/dock/rail-extend.css +168 -71
  396. package/src/styles/dock/section.css +59 -0
  397. package/src/styles/dock/shell.css +83 -16
  398. package/src/styles/dock-controls/icon-button.css +11 -1
  399. package/src/styles/dock-controls/tab-button.css +24 -83
  400. package/src/styles/dock-controls/triggers.css +7 -0
  401. package/src/styles/dock.css +38 -3
  402. package/src/styles/drawer.css +123 -35
  403. package/src/styles/feedback-tone.css +104 -0
  404. package/src/styles/glass/deep.css +44 -0
  405. package/src/styles/glass/ladder.css +154 -52
  406. package/src/styles/glass/material.css +78 -15
  407. package/src/styles/glass/reveal.css +136 -0
  408. package/src/styles/glass/rim.css +100 -0
  409. package/src/styles/glass/surface-axis.css +113 -0
  410. package/src/styles/glass/surfaces.css +189 -15
  411. package/src/styles/glass-refract.css +96 -44
  412. package/src/styles/glass-specular-track.css +7 -0
  413. package/src/styles/glass.css +8 -2
  414. package/src/styles/hover-popover.css +7 -6
  415. package/src/styles/icon-chip.css +211 -0
  416. package/src/styles/index.css +78 -4
  417. package/src/styles/instrument-chassis.css +107 -2
  418. package/src/styles/menu.css +127 -0
  419. package/src/styles/scroll-choreography.css +300 -0
  420. package/src/styles/segmented-tabs.css +184 -84
  421. package/src/styles/select.css +50 -0
  422. package/src/styles/theme/bridges.css +22 -1
  423. package/src/styles/theme/literals.css +11 -2
  424. package/src/styles/theme/radius.css +6 -1
  425. package/src/styles/tokens/color-radius.css +40 -13
  426. package/src/styles/tokens/dark-arm.css +200 -20
  427. package/src/styles/tokens/glass-deep.css +75 -0
  428. package/src/styles/tokens/glass-fx.css +333 -0
  429. package/src/styles/tokens/glass.css +95 -315
  430. package/src/styles/tokens/light-dark.css +64 -22
  431. package/src/styles/tokens/offsets.css +116 -0
  432. package/src/styles/tokens/on-glass-fg.css +39 -0
  433. package/src/styles/tokens/property-regs.css +130 -10
  434. package/src/styles/tokens/scale-paper.css +155 -84
  435. package/src/styles/tokens/scheme-motion.css +102 -46
  436. package/src/styles/tokens/scroll-tokens.css +123 -0
  437. package/src/styles/tokens/{offsets-sizing.css → sizing.css} +88 -89
  438. package/src/styles/tokens.css +9 -3
  439. package/src/styles/transitions.css +7 -7
  440. package/src/styles/typography/scale.css +153 -0
  441. package/src/styles/typography/semantic.css +220 -0
  442. package/src/styles/typography/utilities.css +174 -0
  443. package/src/styles/typography.css +23 -507
  444. package/src/styles/utilities/a11y-overrides.css +33 -4
  445. package/src/styles/utilities/animate.css +27 -24
  446. package/src/styles/utilities/base-misc.css +255 -0
  447. package/src/styles/utilities/base.css +100 -138
  448. package/src/styles/utilities/btn.css +21 -202
  449. package/src/styles/utilities/metal.css +189 -0
  450. package/src/styles/utilities.css +14 -7
  451. package/src/styles/view-transition.css +4 -1
  452. package/dist/CardAction-Cj2eycQ2.js +0 -157
  453. package/dist/DialogContent-Dl9WkAoS.js +0 -100
  454. package/dist/Notification-DdwNxIrI.js +0 -100
  455. package/dist/NumberFieldContent-CqaN-SvN.js +0 -145
  456. package/dist/PopoverContent-BYwt2-4x.js +0 -121
  457. package/dist/TabsList-Dttss653.js +0 -105
  458. package/dist/Toaster-D6q4HtXu.js +0 -263
  459. package/dist/button-ChXMfsud.js +0 -81
  460. package/dist/check-njhk-vfu.js +0 -7
  461. package/dist/chevron-down-DKkxb4VV.js +0 -7
  462. package/dist/chevron-right-CPXbqQQz.js +0 -7
  463. package/dist/chevron-up-n_24SqI-.js +0 -7
  464. package/dist/components/custom/underline/GlassUnderline.vue.d.ts +0 -84
  465. package/dist/components/custom/underline/index.d.ts +0 -2
  466. package/dist/components/custom/underline/types.d.ts +0 -56
  467. package/dist/components/ui/carousel/CarouselDots.vue.d.ts +0 -4
  468. package/dist/createLucideIcon-DydS2qgk.js +0 -43
  469. package/dist/minimize-2-BV31Ob_h.js +0 -38
  470. package/dist/search-BSGrf2Sk.js +0 -12
  471. package/dist/sheet-1fChZjtw.js +0 -214
  472. package/dist/underline.d.ts +0 -1
  473. package/dist/underline.js +0 -85
  474. package/dist/useCanvas2D-ClrQuZtp.js +0 -96
  475. package/dist/useConfiguratorState-DAoeHVue.js +0 -287
  476. package/dist/useSpecularTracking-Bo5su68i.js +0 -32
  477. package/dist/useSpringMount-CI2jOstM.js +0 -108
  478. package/dist/vReveal-CqaCz_mC.js +0 -44
  479. package/dist/x-BUwTKe50.js +0 -10
  480. /package/dist/{CollapsibleContent-CP9qF1v4.js → CollapsibleContent-68dEXIAl.js} +0 -0
  481. /package/dist/{InstrumentChassis-UUJX0-mW.js → InstrumentChassis-Bx0F_q5g.js} +0 -0
  482. /package/dist/{Label-r3WzWrsj.js → Label-C2ejNWeC.js} +0 -0
  483. /package/dist/{ModalOverlay-DVLI2VRr.js → ModalOverlay-D1VrWyoi.js} +0 -0
  484. /package/dist/{PaperBackdrop-DIXTtVq6.js → PaperBackdrop-Vf3tlpvd.js} +0 -0
  485. /package/dist/{SelectGroup-aumMgWLs.js → SelectGroup-DwwjicPY.js} +0 -0
  486. /package/dist/{SelectSeparator-BQ_1Fcbp.js → SelectSeparator-DXswVdRz.js} +0 -0
  487. /package/dist/{Separator-0JE6LtNu.js → Separator-pKF0oA4M.js} +0 -0
  488. /package/dist/{_plugin-vue_export-helper-ok8pgSl5.js → _plugin-vue_export-helper-C1je1s0u.js} +0 -0
  489. /package/dist/{badge-UILT_3pZ.js → badge-D9XWW4GT.js} +0 -0
  490. /package/dist/{color-CUYeFbgd.js → color-DweYl7pE.js} +0 -0
  491. /package/dist/{constants-CS75AWHG.js → constants-BPOqYJAm.js} +0 -0
  492. /package/dist/{createContext-BM46COQ-.js → createContext-CpBNTRMI.js} +0 -0
  493. /package/dist/{prng-D27-B3tK.js → prng-Za0Rmgag.js} +0 -0
  494. /package/dist/{resolveCanvasColor-BBiYfp8g.js → resolveCanvasColor-CUyHr5Uu.js} +0 -0
  495. /package/dist/{springPresets--YdWTHtm.js → springPresets-CFQGQfdl.js} +0 -0
  496. /package/dist/{useIntersectionPause-Cc-H9ees.js → useIntersectionPause-Bj4sPkMh.js} +0 -0
  497. /package/dist/{useInterval-iHludrxk.js → useInterval-CvK1mL92.js} +0 -0
  498. /package/dist/{useKeyboardShortcuts-Be3w_Rwk.js → useKeyboardShortcuts-BXWXOZ-9.js} +0 -0
  499. /package/dist/{useLiquidFlex-BL0lLLN2.js → useLiquidFlex-mZPMiNXh.js} +0 -0
  500. /package/dist/{useResizeObserver-BhgdhOIj.js → useResizeObserver-Bpoi7tRE.js} +0 -0
  501. /package/dist/{useResolveTokenColor-Dvn2RZJW.js → useResolveTokenColor-vAylyR0x.js} +0 -0
  502. /package/dist/{useScrollProgress-Dlvx-L3v.js → useScrollProgress-D7bYU2RK.js} +0 -0
  503. /package/dist/{useSortable-muI29agz.js → useSortable-DHjtZSEd.js} +0 -0
  504. /package/dist/{useTextHighlight-DmRYkOBx.js → useTextHighlight-CWEi25hf.js} +0 -0
  505. /package/dist/{useTimer-Dzarvzuk.js → useTimer-BHJOKr35.js} +0 -0
  506. /package/dist/{useUserInvalidAria-B2h6jAM_.js → useUserInvalidAria-y5namzeE.js} +0 -0
  507. /package/dist/{useViewportReady-B40FK4Pa.js → useViewportReady-anbac3m6.js} +0 -0
@@ -0,0 +1,2 @@
1
+ export { default as IconChip } from "./IconChip.vue";
2
+ export type { IconChipProps, IconChipIcon, IconChipSection, IconChipTone, } from "./types";
@@ -0,0 +1,82 @@
1
+ import type { Component, FunctionalComponent, HTMLAttributes } from "vue";
2
+ /**
3
+ * Permissive icon type — Vue's `Component` ships across multiple structurally
4
+ * incompatible shapes (the @lucide/vue v1 functional-component form is one), so
5
+ * we accept the union a `<component :is>` render expression handles. Mirrors the
6
+ * `MetricCell` `IconLike` precedent (the AZ `isComponent` allowance).
7
+ */
8
+ export type IconChipIcon = Component | FunctionalComponent | object;
9
+ /** A 0..12 index into the `--section-color-N` 13-stop ramp. */
10
+ export type IconChipSection = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
11
+ /**
12
+ * A complete token colour for the chip event (e.g. `var(--chart-download)`,
13
+ * `var(--tier-featured)`) — the MetricCell-`iconColor` reconcile path. NEVER a
14
+ * demo-local literal hue (ppmycota purple stays out of the library — the chip
15
+ * `tone` arm takes a token).
16
+ */
17
+ export type IconChipTone = string;
18
+ export interface IconChipProps {
19
+ /**
20
+ * The lucide glyph (functional-component form per the AZ `isComponent`
21
+ * precedent). Rendered via `<component :is>`.
22
+ */
23
+ icon: IconChipIcon;
24
+ /**
25
+ * The `--section-color-N` ramp index (0..12) — the section arm. XOR `tone`.
26
+ * When both are set, `tone` wins (the explicit complete-token override).
27
+ * Typed `number` for data-driven consumers (a `v-for` over a descriptor list
28
+ * with a `section: number` field); the 0..12 canonical range is the
29
+ * `IconChipSection` union the discovery layer publishes.
30
+ */
31
+ section?: number;
32
+ /**
33
+ * A complete token colour (the tone arm — the MetricCell-`iconColor`
34
+ * reconcile). XOR `section`.
35
+ */
36
+ tone?: IconChipTone;
37
+ /**
38
+ * The chip diameter in px — the FLOOR is `glyphSize × --icon-chip-glyph-ratio`
39
+ * so the plate can never paint under the glyph (the d2 proportion, structural).
40
+ * Default `48` (the reference register, 48/22 ≈ 2.18).
41
+ */
42
+ size?: number;
43
+ /** The lucide glyph pixel size. Default `22` (the reference register). */
44
+ glyphSize?: number;
45
+ /** The lucide glyph stroke width. Default `1.75` (the reference register). */
46
+ strokeWidth?: number;
47
+ /**
48
+ * The NO-PLATE register — render the full-chroma glyph with NO backplate
49
+ * (the MetricCell leading-glyph tint). The chip≤glyph floor is moot (no plate).
50
+ */
51
+ bare?: boolean;
52
+ /**
53
+ * Duotone fill — a low-alpha fill of the same hue UNDER the full-chroma
54
+ * stroke (the iOS/Material "filled-tonal" move). Mono-hue (proportion-safe,
55
+ * never a second hue). Default `false`.
56
+ */
57
+ duotone?: boolean;
58
+ /**
59
+ * The chip's own smooth-glass hover register (the backplate mix lifts, a soft
60
+ * glow ring appears, the stroke firms) — on the §6 easing doctrine (the GROW
61
+ * rides --spring-smooth, the color cross-fade the bezier), PRM-gated,
62
+ * disco-FREE. Default `false`.
63
+ */
64
+ bloom?: boolean;
65
+ /**
66
+ * The louder focal-pop vibrancy axis (BB.W-SUFFUSE3) — re-points the
67
+ * backplate `color-mix` strength off the 25% reference stop to ~40% (more
68
+ * chroma) via `--icon-chip-plate-strength`. STILL the ONE color event per
69
+ * surface (the same event, louder — proof:suffuse d3 counts the event family,
70
+ * not the saturation); the `in srgb` space + the chip≤glyph ratio are
71
+ * untouched. Default `false` (byte-identical to the reference register).
72
+ */
73
+ saturated?: boolean;
74
+ /**
75
+ * Entrance choreography — composes the shipped `vReveal` directive. A numeric
76
+ * value is the `--d` stagger index; `true` is index 0. PRM-gated by `vReveal`'s
77
+ * construction. Default `false`.
78
+ */
79
+ reveal?: boolean | number;
80
+ /** Pass-through class on the chip root. */
81
+ class?: HTMLAttributes["class"];
82
+ }
@@ -17,8 +17,21 @@ export type InstrumentChassisPhase = "ready" | "ping" | "download" | "upload" |
17
17
  * architectural underclaim. Consumed at quiet-content App-level
18
18
  * mounts (the inner card paints its own glass tier — the spine is
19
19
  * the housing that frames it).
20
+ *
21
+ * - `"structure"` (BA.W-ATLAS-RECONCILE C-3) — the SILVER structure-metal
22
+ * register. A cool polished-steel milled-panel read: the engraved bezel +
23
+ * the structural grooves re-point to the `--silver` quad (the gold quad's
24
+ * cool mirror) instead of the warm-cream `--surface-tint-*` default, so the
25
+ * chassis reads as an INDUSTRIAL precision-instrument housing — the cool-metal
26
+ * twin of the warm-gold "complete"-phase affirmation the chassis ships by
27
+ * DEFAULT (the `--phase-complete-color` consumer token defaults to gold;
28
+ * BB.W-PHASE-PALETTE — a consumer may re-ink completion). The phase cascade stays
29
+ * orthogonal (a `structure` chassis still retints on `data-phase`); only the
30
+ * structure-metal recipe forks. The silver is the W-NO-GRAY named cool-neutral
31
+ * exception. Consumer #2 of the silver quad (the atlas's structure surface is
32
+ * consumer #1).
20
33
  */
21
- export type InstrumentChassisVariant = "glass" | "spine";
34
+ export type InstrumentChassisVariant = "glass" | "spine" | "structure";
22
35
  /**
23
36
  * <InstrumentChassis> — single glass surface composing strip / dial / control
24
37
  * regions, glued together by twin-line hairline grooves.
@@ -56,7 +69,9 @@ type __VLS_Props = {
56
69
  * Surface register. Defaults to `"glass"` (the canonical chassis
57
70
  * plate). Pass `"spine"` at App-level mount paths to get the
58
71
  * housing register (polished sleeve, no backdrop-filter, interior
59
- * vignette + hairline outer stroke).
72
+ * vignette + hairline outer stroke). Pass `"structure"` for the
73
+ * silver milled-panel register (cool polished-steel bezel + grooves;
74
+ * BA.W-ATLAS-RECONCILE C-3).
60
75
  */
61
76
  variant?: InstrumentChassisVariant;
62
77
  class?: HTMLAttributes["class"];
@@ -77,8 +77,8 @@ type __VLS_Slots = {} & {
77
77
  default?: (props: typeof __VLS_8) => any;
78
78
  };
79
79
  declare const __VLS_base: import("vue").DefineComponent<MetricStackProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MetricStackProps> & Readonly<{}>, {
80
- as: string | Component;
81
80
  containerName: string;
81
+ as: string | Component;
82
82
  rows: number;
83
83
  register: "audacious" | "result";
84
84
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -0,0 +1,39 @@
1
+ import type { HTMLAttributes } from "vue";
2
+ export interface PagerDotsProps {
3
+ /** Total dot count (the slide/snap count). */
4
+ count: number;
5
+ /** Rail layout axis. Default horizontal. */
6
+ orientation?: "horizontal" | "vertical";
7
+ /**
8
+ * When set, window the rail to `fit` dots centered on the active dot
9
+ * (the DeckPager dock-gutter overflow generalized). Off (undefined) →
10
+ * show every dot.
11
+ */
12
+ windowFit?: number;
13
+ /** Encapsulate the rail in the glass pager pill chassis. Default true. */
14
+ ring?: boolean;
15
+ /** Accessible name for the rail group. */
16
+ ariaLabel?: string;
17
+ /** Additional classes for the rail root. */
18
+ class?: HTMLAttributes["class"];
19
+ }
20
+ type __VLS_Props = PagerDotsProps;
21
+ type __VLS_ModelProps = {
22
+ /** v-model:active — the active 0-based index. */
23
+ "active"?: number;
24
+ };
25
+ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
26
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
27
+ "update:active": (value: number) => any;
28
+ } & {
29
+ select: (index: number) => any;
30
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
31
+ onSelect?: ((index: number) => any) | undefined;
32
+ "onUpdate:active"?: ((value: number) => any) | undefined;
33
+ }>, {
34
+ orientation: "horizontal" | "vertical";
35
+ ariaLabel: string;
36
+ ring: boolean;
37
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
38
+ declare const _default: typeof __VLS_export;
39
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export { default as PagerDots } from "./PagerDots.vue";
2
+ export type { PagerDotsProps } from "./PagerDots.vue";
@@ -0,0 +1,50 @@
1
+ import type { Component } from "vue";
2
+ export interface SpaViewProps {
3
+ /**
4
+ * The active view. Either a component (`<component :is>`) or a string key the
5
+ * default-slot resolves against. When `view`/`is` is set, SpaView renders the
6
+ * dynamic component directly; when unset, the default slot is the active view
7
+ * (the consumer drives `:is` inside the slot themselves).
8
+ */
9
+ view?: Component | string;
10
+ /** Alias of `view` (the `:is` ergonomics — same dynamic-component target). */
11
+ is?: Component | string;
12
+ /**
13
+ * The LRU cap — the max number of cached inactive view instances. Threaded
14
+ * straight onto `<KeepAlive :max>`; when unset, KeepAlive's default (unbounded)
15
+ * applies. The visual-load-bearing register: a bounded admin shell sets `:max`
16
+ * to its tab count so the cache never grows without bound.
17
+ */
18
+ max?: number;
19
+ /** KeepAlive include allowlist (component name / RegExp / array — pass-through). */
20
+ include?: string | RegExp | (string | RegExp)[];
21
+ /** KeepAlive exclude denylist (component name / RegExp / array — pass-through). */
22
+ exclude?: string | RegExp | (string | RegExp)[];
23
+ /**
24
+ * The Vue <Transition> recipe name driving the out-in cross-fade. Defaults to
25
+ * `"fade"` — the shared opacity-only compositor recipe (transitions.css). A
26
+ * consumer overrides it with another `mode="out-in"`-safe recipe name.
27
+ */
28
+ transition?: string;
29
+ /**
30
+ * The stable key the transition keys off (a re-render WITHOUT a key change is
31
+ * not a view swap). Defaults to the resolved `view`/`is` target. A consumer
32
+ * driving the active view from the default slot supplies its own `:view-key`.
33
+ */
34
+ viewKey?: string | number;
35
+ }
36
+ declare var __VLS_19: {};
37
+ type __VLS_Slots = {} & {
38
+ default?: (props: typeof __VLS_19) => any;
39
+ };
40
+ declare const __VLS_base: import("vue").DefineComponent<SpaViewProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<SpaViewProps> & Readonly<{}>, {
41
+ transition: string;
42
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
43
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
44
+ declare const _default: typeof __VLS_export;
45
+ export default _default;
46
+ type __VLS_WithSlots<T, S> = T & {
47
+ new (): {
48
+ $slots: S;
49
+ };
50
+ };
@@ -0,0 +1,2 @@
1
+ export { default as SpaView } from "./SpaView.vue";
2
+ export type { SpaViewProps } from "./SpaView.vue";
@@ -1,5 +1,5 @@
1
1
  import { type HTMLAttributes } from "vue";
2
- /** The canonical tab/option shape — one descriptor across all three variants. */
2
+ /** The canonical tab/option shape — one descriptor across both materials. */
3
3
  export interface SegmentedTabOption {
4
4
  label: string;
5
5
  value: string;
@@ -7,9 +7,13 @@ export interface SegmentedTabOption {
7
7
  disabled?: boolean;
8
8
  tooltip?: string;
9
9
  }
10
- /** The three indicator chromes. `segmented` (default) = the muted pill-slider;
11
- * `pill` = the solid `--foreground` pill; `underline` = the hairline rule. */
12
- export type SegmentedTabsVariant = "segmented" | "pill" | "underline";
10
+ /** The two materials. `pill` (DEFAULT) = the glass-track slider (absorbs the
11
+ * retired `segmented`); `underline` = the paper ink-hairline rule. */
12
+ export type SegmentedTabsVariant = "pill" | "underline";
13
+ /** The orientation axis — `horizontal` (default) lays children in a row + tracks
14
+ * the indicator on the inline axis; `vertical` stacks a column + tracks the
15
+ * block axis (the vertical underline is the leading-edge ink rail). */
16
+ export type SegmentedTabsOrientation = "horizontal" | "vertical";
13
17
  export interface SegmentedTabsResponsive {
14
18
  /**
15
19
  * CSS length consumed inside `(min-width: <breakpoint>)`. BELOW it the
@@ -30,34 +34,35 @@ export interface SegmentedTabsResponsive {
30
34
  export interface SegmentedTabsProps {
31
35
  options: SegmentedTabOption[];
32
36
  /**
33
- * Indicator chrome — `segmented` (DEFAULT, the pill-slider over a muted
34
- * track), `pill` (solid foreground pill), `underline` (the hairline rule).
37
+ * The material — `pill` (DEFAULT, the glass-track slider) or `underline`
38
+ * (the paper ink-hairline rule).
35
39
  */
36
40
  variant?: SegmentedTabsVariant;
37
41
  /**
38
- * Multi-select — when true the surface mutates as a ToggleGroup (N
39
- * simultaneous pressed buttons, `role="group"`). Only valid on the
40
- * `segmented`/`pill` variants; `underline` is panel-nav (single-select).
42
+ * Orientation — `horizontal` (default) or `vertical`. Axis-derived on the
43
+ * one indicator engine.
41
44
  */
42
- multiSelect?: boolean;
45
+ orientation?: SegmentedTabsOrientation;
43
46
  /**
44
- * Tab-row overflow handling.
45
- * - `"none"` (default) — inline-grid; tabs share width and clip.
46
- * - `"scroll"` — flex row with intrinsic widths + edge fades; never clips.
47
- * - `"auto"` — flex row with intrinsic widths + plain horizontal scroll.
47
+ * Responsive collapse — below the breakpoint the strip becomes a `<Select>`.
48
+ * `true` uses defaults; an object tunes the breakpoint / desktop subset /
49
+ * accessible name.
48
50
  */
49
- overflow?: "none" | "scroll" | "auto";
51
+ responsive?: boolean | SegmentedTabsResponsive;
50
52
  /**
51
- * Responsive collapse — below the breakpoint the strip becomes a `<Select>`
52
- * (subsumes the former standalone ResponsiveTabs). `true` uses defaults;
53
- * an object tunes the breakpoint / desktop subset / accessible name.
53
+ * BB.W-DRAG-MORPH — the LIQUID TAB. When `true` (ADDITIVE, default `false`),
54
+ * the `pill` indicator becomes a physical lozenge you can GRAB and PULL: it
55
+ * follows the finger ~1:1, squishes on drag velocity, and flings to the nearest
56
+ * tab on release (`useDragMorph`). The click-selection path is byte-identical;
57
+ * the drag is opt-in. No-op on `underline` (the ink hairline has no indicator
58
+ * element to deform).
54
59
  */
55
- responsive?: boolean | SegmentedTabsResponsive;
60
+ draggable?: boolean;
56
61
  class?: HTMLAttributes["class"];
57
62
  }
58
63
  type __VLS_Props = SegmentedTabsProps;
59
64
  type __VLS_ModelProps = {
60
- modelValue: string | string[];
65
+ modelValue: string;
61
66
  };
62
67
  type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
63
68
  declare var __VLS_50: {
@@ -73,14 +78,14 @@ type __VLS_Slots = {} & {
73
78
  option?: (props: typeof __VLS_58) => any;
74
79
  };
75
80
  declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
76
- "update:modelValue": (value: string | string[]) => any;
81
+ "update:modelValue": (value: string) => any;
77
82
  }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
78
- "onUpdate:modelValue"?: ((value: string | string[]) => any) | undefined;
83
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
79
84
  }>, {
80
- overflow: "none" | "scroll" | "auto";
85
+ orientation: SegmentedTabsOrientation;
81
86
  variant: SegmentedTabsVariant;
87
+ draggable: boolean;
82
88
  responsive: boolean | SegmentedTabsResponsive;
83
- multiSelect: boolean;
84
89
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
85
90
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
86
91
  declare const _default: typeof __VLS_export;
@@ -0,0 +1,42 @@
1
+ import type { ComputedRef, Ref } from "vue";
2
+ import { type UseDragMorphReturn } from "../../../../composables/motion/useDragMorph";
3
+ import type { SegmentedTabOption } from "../SegmentedTabs.vue";
4
+ /**
5
+ * Package-private composable for `SegmentedTabs.vue` — BB.W-DRAG-MORPH, the LIQUID
6
+ * TAB (the `:draggable` axis). Carved out of the SFC at BB.W-CARVE4 to hold the
7
+ * no-god-module bound, mirroring the `useTabIndicator` colocation sibling; the SFC
8
+ * IMPORTS it and binds `drag.dragStyle`/`drag.dragging` in its template.
9
+ *
10
+ * When `:draggable`, the `pill` indicator is wired to `useDragMorph` with the snap
11
+ * targets resolved off the CENTER-ANCHORED button geometry (the SAME measure
12
+ * `useTabIndicator` runs — reused, never re-measured). Dragging the indicator follows
13
+ * the finger, squishes on velocity, and flings to the nearest tab center on release →
14
+ * `onSnap` writes the `model`. The drag is the `pill` material ONLY (the `underline`
15
+ * ink hairline has no `indicatorRef` element to deform). The squish reads the SAME
16
+ * `--tab-indicator-max-stretch` live cap the click squish does (the SOLE cap source);
17
+ * the drag's `--stretch` write composes the existing reciprocal CSS pairing — no
18
+ * second squish recipe.
19
+ */
20
+ export interface UseTabDragMorphParams {
21
+ /** The active indicator element (the drag follow + squish target). */
22
+ indicatorRef: Ref<HTMLElement | null>;
23
+ /** True for the vertical (block-axis) orientation. */
24
+ isVertical: ComputedRef<boolean>;
25
+ /** True for the underline material (drag is a no-op there). */
26
+ isUnderline: ComputedRef<boolean>;
27
+ /** The `:draggable` prop (ADDITIVE, default false). */
28
+ draggable: () => boolean;
29
+ /** The strip's rendered options (the snap targets + the refresh trigger). */
30
+ stripOptions: ComputedRef<SegmentedTabOption[]>;
31
+ /** Per-option button refs, index-aligned to `stripOptions`. */
32
+ buttonRefs: Ref<HTMLElement[]>;
33
+ /** The single-select model — the fling-to-nearest commits the selection. */
34
+ model: Ref<string | undefined>;
35
+ }
36
+ export interface UseTabDragMorphReturn {
37
+ /** True when the drag is live (the `pill` material + the `:draggable` prop). */
38
+ dragEnabled: ComputedRef<boolean>;
39
+ /** The `useDragMorph` handle (the SFC binds `dragStyle`/`dragging`). */
40
+ drag: UseDragMorphReturn;
41
+ }
42
+ export declare function useTabDragMorph(params: UseTabDragMorphParams): UseTabDragMorphReturn;
@@ -2,21 +2,32 @@ import { type Ref, type ComputedRef } from "vue";
2
2
  import type { SegmentedTabOption } from "../SegmentedTabs.vue";
3
3
  /**
4
4
  * Package-private composable for `SegmentedTabs.vue` — owns the JS-measured
5
- * indicator path: the single- and multi-select slider styles, the offset
6
- * measure, the model/options re-measure watchers, and the ResizeObserver
7
- * lifecycle. It ALSO owns the AX.W53 travel-squish: a velocity-driven,
8
- * volume-preserving `--stretch` scalar the active indicator reads so it
9
- * STRETCHES along its travel axis as it glides between tabs and settles to fit
10
- * (the Material 3 ELASTIC / Apple Liquid-Glass register, capped LOW).
5
+ * single-select indicator path: the slider style, the offset measure, the
6
+ * model/options re-measure watchers, and the ResizeObserver lifecycle. It ALSO
7
+ * owns the AX.W53 travel-squish: a velocity-driven, volume-preserving `--stretch`
8
+ * scalar the active indicator reads so it STRETCHES along its travel axis as it
9
+ * glides between tabs and settles to fit (the Material 3 ELASTIC / Apple
10
+ * Liquid-Glass register, capped LOW).
11
11
  *
12
- * The composable is the SOLE writer of the JS slider styles. The measure path
13
- * runs only on the multi-select OR `@supports not (anchor)` branch — on an
14
- * anchor-supporting single-select engine the CSS `anchor-name` owns the slider
15
- * position and that path stays dormant (no RO is constructed, no measure runs).
16
- * The squish is independent of the position path: it is a transient `--stretch`
17
- * write driven on EVERY selection (anchor or JS engine) and reads from
18
- * `--tab-indicator-max-stretch`, so the elastic warp lands on all three
19
- * variants. Honors `prefers-reduced-motion` (no squish under reduce).
12
+ * BA.W-TABS — the engine is AXIS-DERIVED (the `vertical` param): the JS slider
13
+ * writes width/translateX on the inline axis (horizontal) OR height/translateY on
14
+ * the block axis (vertical). It is CENTER-ANCHORED (the BA-VJS-3 / valuejs-fold A-5
15
+ * fix): the indicator is positioned by its CENTER == the active button's center
16
+ * (translate = buttonCenter − indicatorSize/2), so the squish (which scales from
17
+ * `transform-origin: center`) keeps the indicator center pinned to the label
18
+ * center — the prior `translateX(offsetLeft)` left-edge write is GONE.
19
+ *
20
+ * The composable is the SOLE writer of the JS slider style. The measure path runs
21
+ * only on the `@supports not (anchor)` branch — on an anchor-supporting engine the
22
+ * CSS `anchor-name` owns the slider position and that path stays dormant (no RO is
23
+ * constructed, no measure runs). The squish is independent of the position path: it
24
+ * is a transient `--stretch` write driven on EVERY selection (anchor or JS engine)
25
+ * and reads from `--tab-indicator-max-stretch`, and RELEASES AT ARRIVAL (keyed to
26
+ * the calibrated clock, not a fixed mid-glide timer). Honors
27
+ * `prefers-reduced-motion` (no squish under reduce). The underline material SLIDES
28
+ * (no squish — a hairline does not deform), gated by the `vertical`/underline
29
+ * early-return at the SFC's `squishOnTravel` call shape (the underline has no
30
+ * `indicatorRef` element).
20
31
  */
21
32
  export interface UseTabIndicatorParams {
22
33
  /** The container scroller root (observed by the ResizeObserver). */
@@ -28,21 +39,19 @@ export interface UseTabIndicatorParams {
28
39
  /** The tab options (re-measure on change). */
29
40
  options: ComputedRef<SegmentedTabOption[]>;
30
41
  /** The defineModel value (re-measure on change). */
31
- model: Ref<string | string[] | undefined>;
32
- /** True for the multi-select path. */
33
- multiSelect: ComputedRef<boolean>;
42
+ model: Ref<string | undefined>;
34
43
  /** Whether the browser supports CSS anchor positioning. */
35
44
  anchorSupported: boolean;
36
- /** True when ANY JS slider writer is live (gates RO/watcher attach). */
45
+ /** True when the JS slider writer is live (gates RO/watcher attach). */
37
46
  jsSliderActive: ComputedRef<boolean>;
38
- /** The active option values (used by the multi-slider measure). */
47
+ /** The active option values (used by the measure). */
39
48
  activeValues: ComputedRef<string[]>;
49
+ /** True for the vertical (block-axis) orientation. */
50
+ vertical: ComputedRef<boolean>;
40
51
  }
41
52
  export interface UseTabIndicatorReturn {
42
53
  /** Inline style for the single-select JS slider. */
43
54
  singleSliderStyle: Ref<Record<string, string>>;
44
- /** Inline styles for each active multi-select slider, keyed by value. */
45
- multiSliderStyles: Ref<Record<string, Record<string, string>>>;
46
55
  /** Imperatively kick the travel-squish on a selection at `idx`. */
47
56
  squishOnTravel: (toIdx: number) => void;
48
57
  }
@@ -6,7 +6,13 @@
6
6
  */
7
7
  export declare const DEFAULT_INDICATOR_MAX_STRETCH = 1.08;
8
8
  /**
9
- * ms after the stretch opens before it releases back to fit (`--stretch → 1`) — the
10
- * Material "grow then shrink" close. Rides the same snappy glide clock as the travel.
9
+ * The travel-progress fraction at which the squish RELEASES — the Material
10
+ * "grow then shrink" close, keyed to ARRIVAL (BA.W-TABS). The squish opens with
11
+ * the glide and releases when the indicator is within this fraction of its target
12
+ * (release-at-arrival), retiring the fixed mid-glide `INDICATOR_RELEASE_MS` timer
13
+ * (which fired at 60ms — BEFORE the ~100ms 90%-travel point, mid-glide). The
14
+ * release schedules off the calibrated clock (`--spring-snappy-duration`) scaled
15
+ * by this fraction, so the stretch peaks during travel and shrinks to fit AT
16
+ * arrival, never before.
11
17
  */
12
- export declare const INDICATOR_RELEASE_MS = 60;
18
+ export declare const INDICATOR_RELEASE_AT_ARRIVAL = 0.82;
@@ -1,2 +1,2 @@
1
1
  export { default as SegmentedTabs } from "./SegmentedTabs.vue";
2
- export type { SegmentedTabOption, SegmentedTabsVariant, SegmentedTabsProps, SegmentedTabsResponsive, } from "./SegmentedTabs.vue";
2
+ export type { SegmentedTabOption, SegmentedTabsVariant, SegmentedTabsOrientation, SegmentedTabsProps, SegmentedTabsResponsive, } from "./SegmentedTabs.vue";
@@ -13,6 +13,19 @@
13
13
  type __VLS_Props = {
14
14
  /** CSS color painted as the swatch background (any CSS color form). */
15
15
  color: string;
16
+ /**
17
+ * Render mode (BA.W-EMISSION / BA-VJS-C2):
18
+ * `solid` (default) — the filled organic blob (the swatch background IS the
19
+ * color; the existing register, unchanged).
20
+ * `ghost` — the SAME seeded blob SILHOUETTE rendered as a STROKE: a
21
+ * `color` border over a low-alpha `color` fill, the irregular-blob
22
+ * outline (NOT a CSS dashed rectangle). A `ghost` of a given
23
+ * `color + seed` matches the SAME silhouette the `solid` dot of
24
+ * that seed renders — both read the same `useWatercolorBlob`
25
+ * border-radius morph; the stroke is the only delta. The
26
+ * empty-palette-slot / placeholder affordance.
27
+ */
28
+ variant?: "solid" | "ghost";
16
29
  /** Run the rAF-driven shape morph (default false → static, hover-morph only). */
17
30
  animate?: boolean;
18
31
  /** Host tag — `div` (decorative) or `button` (interactive). */
@@ -30,8 +43,9 @@ type __VLS_Slots = {} & {
30
43
  };
31
44
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
32
45
  animate: boolean;
33
- seed: string;
34
46
  range: [number, number];
47
+ variant: "solid" | "ghost";
48
+ seed: string;
35
49
  tag: "div" | "button";
36
50
  cycleDuration: number;
37
51
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -1,2 +1,4 @@
1
1
  export { menuItemVariants } from "./menuItemVariants";
2
2
  export type { MenuItemVariants } from "./menuItemVariants";
3
+ export { surfaceClass } from "./useSurfaceAxis";
4
+ export type { Surface, SurfaceTier } from "./useSurfaceAxis";
@@ -24,8 +24,27 @@ import { type VariantProps } from "class-variance-authority";
24
24
  *
25
25
  * Indicator slot variants reserve the gutter for radio-dot / check / chevron
26
26
  * indicator spans the consumer SFCs render absolutely-positioned.
27
+ *
28
+ * Surface axis (BA.W-MENU-GLASS) — the menu-row's MATERIAL register, an
29
+ * EXPRESSION of the shared {glass·veil·opaque} surface-decoration axis
30
+ * (`_shared/useSurfaceAxis.ts` / `glass/surface-axis.css`), NOT a second axis:
31
+ * - `glass` (DEFAULT, glass-first canon AX.W54) — the `.glass-menu-row` recipe
32
+ * (`src/styles/menu.css`): the hover / focus / `data-highlighted` / open states
33
+ * paint the ELEMENT-LEVEL glass-quiet oklab tint (so the row darkens-over-light
34
+ * AND lifts-over-dark per W-DARK-MATERIAL's tint arm) + a PRM-gated `translateY`
35
+ * hover-lift, the 44px touch floor, the iOS-grade glassy hover-lift plate. The
36
+ * flat `bg-accent` utilities are DROPPED on this arm — the cascade-trap-safe
37
+ * shape: with no unlayered `hover:bg-accent` utility the ONLY background-painters
38
+ * are the `@layer components` `.interactive-item:hover` accent rule and the
39
+ * `.glass-menu-row` recipe (imported AFTER utilities.css so it source-order-wins
40
+ * at equal specificity+layer — the AZ dock-rail `@layer`-loses-to-utility trap
41
+ * pre-empted: never re-add an unlayered flat-accent utility here).
42
+ * - `accent` — the EXPLICIT flat-accent escape (the prior default's look). A clean
43
+ * break, NOT a back-compat alias (BA inv-7): a consumer that wants the flat fill
44
+ * opts in via `surface="accent"`.
27
45
  */
28
46
  export declare const menuItemVariants: (props?: ({
47
+ surface?: "glass" | "accent" | null | undefined;
29
48
  indicator?: "start" | "none" | "start-wide" | null | undefined;
30
49
  density?: "comfortable" | "audacious" | null | undefined;
31
50
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
@@ -0,0 +1,41 @@
1
+ /**
2
+ * The shared surface-decoration axis — three rungs, ONE grammar.
3
+ *
4
+ * glass — the resolved tier's plain glass rung (default). The translucent
5
+ * blur surface, the maximal glass-first register.
6
+ * veil — the borderless/rimless text-legibility plate: the `--glass-bg-quiet`
7
+ * fill + blur with the box border AND rim STRIPPED (the boxed look
8
+ * reads as a dividing line on a text plate). Reads the same `--glass-*`
9
+ * ladder + W55 `--glass-tint-*` seam, so `--glass-level` / the bright
10
+ * bucket retune it in lockstep with every glass surface.
11
+ * opaque — the `--glass-level:0` solid-card escape: solid `--card` + `blur(0)`
12
+ * through the ONE level knob. The explicit opt-out from the maximal
13
+ * glass default.
14
+ */
15
+ export type Surface = "glass" | "veil" | "opaque";
16
+ /**
17
+ * The 5-rung glass-ladder tier the surface paints its base over. Mirrors the
18
+ * `.glass-{wash,quiet,resting,floating,overlay}` ladder. A surface passes the rung
19
+ * it already paints (Card's `resting`, Dialog/Sheet/Popover's `floating`); the
20
+ * resolver maps it to the `glass-${tier}` base class. `opaque` is NOT a ladder
21
+ * rung here — it is a decoration on TOP of a base tier (the `.glass-opaque`
22
+ * escape keeps the tier's edge/rim), exactly as Card composes it.
23
+ */
24
+ export type SurfaceTier = "wash" | "quiet" | "resting" | "floating" | "overlay";
25
+ /**
26
+ * Resolve a (surface, tier) pair to the class string a surface composes. Pairs
27
+ * with a `:data-surface="surface"` attribute binding on the same element — the
28
+ * CSS seam (`surface-axis.css`) reads the attr to apply the veil/opaque
29
+ * decoration UNIFORMLY, while this resolver emits the back-compat decoration
30
+ * classes (`veil-surface` / `glass-opaque`) so Card's three shared rungs stay
31
+ * byte-identical and a surface composing the class set alone (no attr) still
32
+ * paints correctly.
33
+ *
34
+ * surfaceClass("glass", "floating") → "glass-floating"
35
+ * surfaceClass("veil", "floating") → "glass-floating veil-surface"
36
+ * surfaceClass("opaque", "floating") → "glass-floating glass-opaque"
37
+ *
38
+ * @param surface the decoration rung (`glass` default · `veil` · `opaque`)
39
+ * @param tier the base ladder rung (default `resting`)
40
+ */
41
+ export declare function surfaceClass(surface?: Surface, tier?: SurfaceTier): string;
@@ -1,7 +1,7 @@
1
1
  import { type VariantProps } from 'class-variance-authority';
2
2
  export { default as Badge } from './Badge.vue';
3
3
  export declare const badgeVariants: (props?: ({
4
- variant?: "default" | "destructive" | "outline" | "secondary" | "success" | "warning" | "info" | null | undefined;
4
+ variant?: "default" | "outline" | "destructive" | "secondary" | "success" | "warning" | "info" | null | undefined;
5
5
  size?: "sm" | "lg" | "md" | null | undefined;
6
6
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
7
  export type BadgeVariants = VariantProps<typeof badgeVariants>;
@@ -1,16 +1,19 @@
1
1
  import type { ButtonHTMLAttributes, HTMLAttributes } from 'vue';
2
2
  import { type PrimitiveProps } from 'reka-ui';
3
3
  import { type ButtonVariants } from '.';
4
+ import type { Surface } from '../_shared/useSurfaceAxis';
4
5
  interface Props extends PrimitiveProps {
5
6
  variant?: ButtonVariants['variant'];
6
7
  size?: ButtonVariants['size'];
7
8
  class?: HTMLAttributes['class'];
9
+ surface?: Surface;
10
+ liquid?: boolean;
8
11
  type?: ButtonHTMLAttributes['type'];
9
12
  disabled?: ButtonHTMLAttributes['disabled'];
10
13
  }
11
- declare var __VLS_8: {};
14
+ declare var __VLS_13: {};
12
15
  type __VLS_Slots = {} & {
13
- default?: (props: typeof __VLS_8) => any;
16
+ default?: (props: typeof __VLS_13) => any;
14
17
  };
15
18
  declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
16
19
  as: import("reka-ui").AsTag | import("vue").Component;
@@ -1,7 +1,7 @@
1
1
  import { type VariantProps } from 'class-variance-authority';
2
2
  export { default as Button } from './Button.vue';
3
3
  export declare const buttonVariants: (props?: ({
4
- variant?: "link" | "default" | "solid" | "primary-audacious" | "gold-audacious" | "destructive" | "outline" | "secondary" | "accent" | "ghost" | "glass" | "glass-wash" | "ai" | null | undefined;
5
- size?: "default" | "xs" | "sm" | "lg" | "icon" | "icon-sm" | null | undefined;
4
+ variant?: "link" | "default" | "glass" | "outline" | "solid" | "primary-audacious" | "gold-audacious" | "destructive" | "secondary" | "accent" | "ghost" | "glass-wash" | "ai" | null | undefined;
5
+ size?: "default" | "icon" | "xs" | "sm" | "lg" | "icon-sm" | null | undefined;
6
6
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
7
  export type ButtonVariants = VariantProps<typeof buttonVariants>;