@mkbabb/glass-ui 4.0.1 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (606) hide show
  1. package/dist/{CardAction-CW7a0m8M.js → CardAction-DlVP2evz.js} +72 -53
  2. package/dist/{CommandShortcut-DvZNQ_HF.js → CommandShortcut-By-VQcLO.js} +25 -14
  3. package/dist/{ConfiguratorRow-BR4l-ixA.js → ConfiguratorRow-YMXdINHx.js} +14 -14
  4. package/dist/ContextMenuContent-CMWn6huB.js +90 -0
  5. package/dist/{ContextMenuSubContent-xol4sD2q.js → ContextMenuSubContent-DvwWCUc0.js} +16 -16
  6. package/dist/{DataTable-CuKwF7wr.js → DataTable-C4tG3eIJ.js} +4 -4
  7. package/dist/DialogContent-D8U9ZfWS.js +121 -0
  8. package/dist/DialogFooter-DoLy0ewI.js +80 -0
  9. package/dist/DialogScrollContent-BMekN7gq.js +93 -0
  10. package/dist/{FadingScroll-DI6hQhT9.js → FadingScroll-P8B30rAD.js} +1 -1
  11. package/dist/HoverCardContent-DAmGYglo.js +88 -0
  12. package/dist/{HoverPopover-CbqbNwgU.js → HoverPopover-DYpBOzzF.js} +1 -1
  13. package/dist/{IconChip-BTD-nay5.js → IconChip-CQa7XZYc.js} +7 -5
  14. package/dist/{IconTooltip-Bl8gFZ8d.js → IconTooltip-_df8M3xm.js} +1 -1
  15. package/dist/Input-CyU4_hIC.js +57 -0
  16. package/dist/{MetricBadge-RHdBP72w.js → MetricBadge-DQt_dGah.js} +1 -1
  17. package/dist/{Notification-VUwexFUf.js → Notification-BlSPJhtZ.js} +4 -4
  18. package/dist/NumberFieldContent-Z3VxGu_6.js +140 -0
  19. package/dist/PagerDots-CYlqVFd4.js +196 -0
  20. package/dist/PaperBackdrop-DYWgrnh8.js +42 -0
  21. package/dist/{PopoverContent-DL7E6vJP.js → PopoverContent-BuKyHZSz.js} +2 -2
  22. package/dist/{Progress-DctG61iZ.js → Progress-C9SsdwIZ.js} +1 -1
  23. package/dist/{ScrollingText-yOpBzFYq.js → ScrollingText-DY3W1Jfh.js} +2 -2
  24. package/dist/SelectScrollDownButton-3mFHX_R-.js +260 -0
  25. package/dist/{SelectSeparator-DXswVdRz.js → SelectSeparator-CNRGG7Ew.js} +1 -1
  26. package/dist/Separator-Cf9-JFgi.js +44 -0
  27. package/dist/Switch-uf-UKPA2.js +49 -0
  28. package/dist/{Toaster-Bw4xR8xV.js → Toaster-ozrsR4mP.js} +2 -2
  29. package/dist/{ToggleGroupItem-pEM9vIhs.js → ToggleGroupItem-BpzaVzNm.js} +6 -6
  30. package/dist/TooltipProvider-QQVM_80r.js +109 -0
  31. package/dist/animated-digit.js +2 -2
  32. package/dist/api/index.d.ts +16 -32
  33. package/dist/api/types-extra.d.ts +33 -0
  34. package/dist/api.js +2 -2
  35. package/dist/aurora.js +629 -269
  36. package/dist/badge-Bt14yURi.js +72 -0
  37. package/dist/badge.js +1 -1
  38. package/dist/border-progress.js +49 -57
  39. package/dist/button-D1W9PrzI.js +130 -0
  40. package/dist/button.js +1 -1
  41. package/dist/canvas.js +2 -3
  42. package/dist/card.js +1 -1
  43. package/dist/carousel.js +235 -106
  44. package/dist/chipVariants-BJQ0I2kB.js +18 -0
  45. package/dist/collapsible.js +1 -1
  46. package/dist/color-B9jZdhJX.js +116 -0
  47. package/dist/color.js +2 -2
  48. package/dist/command.js +1 -1
  49. package/dist/completion-seal.d.ts +1 -0
  50. package/dist/completion-seal.js +89 -0
  51. package/dist/components/custom/aurora/Aurora.vue.d.ts +10 -5
  52. package/dist/components/custom/aurora/composables/color.d.ts +13 -0
  53. package/dist/components/custom/aurora/composables/frameLoop.d.ts +9 -0
  54. package/dist/components/custom/aurora/composables/glSetup.d.ts +1 -1
  55. package/dist/components/custom/aurora/composables/runtime.d.ts +12 -0
  56. package/dist/components/custom/aurora/composables/uniformBridgeWGPU.d.ts +12 -3
  57. package/dist/components/custom/aurora/composables/wgpuSetup.d.ts +8 -0
  58. package/dist/components/custom/aurora/constants/presets.d.ts +47 -0
  59. package/dist/components/custom/aurora/constants/renderMode.d.ts +16 -8
  60. package/dist/components/custom/aurora/constants/shaders/aurora-mediums.wgsl.d.ts +1 -0
  61. package/dist/components/custom/aurora/constants/shaders/aurora.wgsl.d.ts +1 -1
  62. package/dist/components/custom/aurora/index.d.ts +1 -1
  63. package/dist/components/custom/border-progress/composables/spectrum-walk.d.ts +25 -0
  64. package/dist/components/custom/border-progress/composables/useBorderSpectrum.d.ts +14 -18
  65. package/dist/components/custom/border-progress/index.d.ts +1 -1
  66. package/dist/components/custom/completion-seal/CompletionSeal.vue.d.ts +21 -0
  67. package/dist/components/custom/completion-seal/composables/useCompletionSeal.d.ts +37 -0
  68. package/dist/components/custom/completion-seal/constants.d.ts +46 -0
  69. package/dist/components/custom/completion-seal/index.d.ts +4 -0
  70. package/dist/components/custom/concentric/Concentric.vue.d.ts +15 -12
  71. package/dist/components/custom/concentric/composables/concentricGLSetup.d.ts +12 -0
  72. package/dist/components/custom/concentric/composables/concentricWGPUSetup.d.ts +13 -0
  73. package/dist/components/custom/concentric/composables/levelField.d.ts +50 -0
  74. package/dist/components/custom/concentric/composables/uniformBridgeWGPU.d.ts +7 -3
  75. package/dist/components/custom/concentric/composables/useConcentric.d.ts +3 -3
  76. package/dist/components/custom/concentric/constants.d.ts +69 -24
  77. package/dist/components/custom/concentric/index.d.ts +2 -2
  78. package/dist/components/custom/concentric/shaders/concentric.glsl.d.ts +2 -2
  79. package/dist/components/custom/concentric/shaders/concentric.wgsl.d.ts +1 -1
  80. package/dist/components/custom/configurator/Configurator.vue.d.ts +23 -2
  81. package/dist/components/custom/configurator/index.d.ts +1 -1
  82. package/dist/components/custom/confirm-dialog/ConfirmDialog.vue.d.ts +3 -3
  83. package/dist/components/custom/constellation/Constellation.vue.d.ts +5 -4
  84. package/dist/components/custom/constellation/composables/constellationGLSetup.d.ts +10 -0
  85. package/dist/components/custom/constellation/composables/constellationWGPUSetup.d.ts +19 -0
  86. package/dist/components/custom/constellation/composables/uniformBridgeWGPU.d.ts +66 -0
  87. package/dist/components/custom/constellation/composables/useConstellation.d.ts +3 -10
  88. package/dist/components/custom/constellation/constants.d.ts +33 -0
  89. package/dist/components/custom/constellation/constellationField.d.ts +31 -1
  90. package/dist/components/custom/constellation/constellationInteraction.d.ts +23 -14
  91. package/dist/components/custom/constellation/constellationRender.d.ts +25 -0
  92. package/dist/components/custom/constellation/constellationTypes.d.ts +38 -0
  93. package/dist/components/custom/constellation/constellationWell.d.ts +15 -0
  94. package/dist/components/custom/constellation/index.d.ts +5 -5
  95. package/dist/components/custom/constellation/shaders/constellation-lines.glsl.d.ts +2 -0
  96. package/dist/components/custom/constellation/shaders/constellation-lines.wgsl.d.ts +1 -0
  97. package/dist/components/custom/constellation/shaders/constellation-points.glsl.d.ts +2 -0
  98. package/dist/components/custom/constellation/shaders/constellation-points.wgsl.d.ts +1 -0
  99. package/dist/components/custom/deck/DeckPager.vue.d.ts +29 -0
  100. package/dist/components/custom/deck/composables/useDeck.d.ts +27 -0
  101. package/dist/components/custom/deck/composables/useDeckKeyboard.d.ts +25 -0
  102. package/dist/components/custom/deck/composables/useDeckSpring.d.ts +22 -0
  103. package/dist/components/custom/deck/constants.d.ts +14 -0
  104. package/dist/components/custom/deck/index.d.ts +8 -0
  105. package/dist/components/custom/dock/DockDropdownTrigger.vue.d.ts +4 -3
  106. package/dist/components/custom/dock/DockIconButton.vue.d.ts +22 -0
  107. package/dist/components/custom/dock/DockPopoverTrigger.vue.d.ts +19 -0
  108. package/dist/components/custom/dock/DockStack.vue.d.ts +78 -0
  109. package/dist/components/custom/dock/GlassDock.vue.d.ts +21 -3
  110. package/dist/components/custom/dock/composables/dockMorphContext.d.ts +18 -32
  111. package/dist/components/custom/dock/composables/dockMorphMeasure.d.ts +78 -67
  112. package/dist/components/custom/dock/composables/index.d.ts +3 -0
  113. package/dist/components/custom/dock/composables/railProjection.d.ts +45 -0
  114. package/dist/components/custom/dock/composables/useDockContextSilhouette.d.ts +192 -0
  115. package/dist/components/custom/dock/composables/useDockFission.d.ts +158 -0
  116. package/dist/components/custom/dock/composables/useDockItemDrag.d.ts +18 -0
  117. package/dist/components/custom/dock/composables/useDockSearch.d.ts +85 -0
  118. package/dist/components/custom/dock/composables/useDockShellProps.d.ts +49 -0
  119. package/dist/components/custom/dock/constants.d.ts +32 -17
  120. package/dist/components/custom/dock/index.d.ts +8 -2
  121. package/dist/components/custom/dot-flow-field/DotFlowField.vue.d.ts +15 -11
  122. package/dist/components/custom/dot-flow-field/composables/flowField.d.ts +69 -6
  123. package/dist/components/custom/dot-flow-field/composables/flowGLProgram.d.ts +8 -0
  124. package/dist/components/custom/dot-flow-field/composables/flowSetupGL.d.ts +9 -0
  125. package/dist/components/custom/dot-flow-field/composables/flowSetupGLFlow.d.ts +12 -0
  126. package/dist/components/custom/dot-flow-field/composables/flowSetupWGPU.d.ts +7 -0
  127. package/dist/components/custom/dot-flow-field/composables/uniformBridgeWGPU.d.ts +50 -9
  128. package/dist/components/custom/dot-flow-field/composables/useDotFlowField.d.ts +6 -5
  129. package/dist/components/custom/dot-flow-field/composables/useFlowParticles.d.ts +23 -9
  130. package/dist/components/custom/dot-flow-field/constants.d.ts +92 -20
  131. package/dist/components/custom/dot-flow-field/index.d.ts +2 -2
  132. package/dist/components/custom/dot-flow-field/shaders/flow-field.compute.wgsl.d.ts +1 -1
  133. package/dist/components/custom/dot-flow-field/shaders/flow-field.glsl.d.ts +31 -18
  134. package/dist/components/custom/dot-flow-field/shaders/flow-field.render.wgsl.d.ts +2 -1
  135. package/dist/components/custom/dot-matrix/DotMatrix.vue.d.ts +43 -0
  136. package/dist/components/custom/dot-matrix/composables/dotMatrixField.d.ts +89 -0
  137. package/dist/components/custom/dot-matrix/composables/uniformBridgeWGPU.d.ts +61 -0
  138. package/dist/components/custom/dot-matrix/composables/useDotMatrix.d.ts +34 -0
  139. package/dist/components/custom/dot-matrix/composables/useDotSphere.d.ts +34 -0
  140. package/dist/components/custom/dot-matrix/constants.d.ts +72 -0
  141. package/dist/components/custom/dot-matrix/index.d.ts +5 -0
  142. package/dist/components/custom/dot-matrix/shaders/dot-matrix.glsl.d.ts +4 -0
  143. package/dist/components/custom/dot-matrix/shaders/dot-matrix.wgsl.d.ts +1 -0
  144. package/dist/components/custom/easing/EasingPicker.vue.d.ts +2 -2
  145. package/dist/components/custom/easing/composables/useEasingPicker.d.ts +5 -0
  146. package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +11 -0
  147. package/dist/components/custom/fourier-field/FourierField.vue.d.ts +44 -47
  148. package/dist/components/custom/fourier-field/composables/fourierFieldGLSetup.d.ts +24 -0
  149. package/dist/components/custom/fourier-field/composables/fourierFieldWGPUSetup.d.ts +31 -0
  150. package/dist/components/custom/fourier-field/composables/uniformBridgeWGPU.d.ts +56 -0
  151. package/dist/components/custom/fourier-field/composables/useFourierField.d.ts +61 -37
  152. package/dist/components/custom/fourier-field/constants.d.ts +114 -4
  153. package/dist/components/custom/fourier-field/index.d.ts +23 -18
  154. package/dist/components/custom/fourier-field/shaders/fourier-field.compute.wgsl.d.ts +1 -0
  155. package/dist/components/custom/fourier-field/shaders/fourier-field.glsl.d.ts +4 -0
  156. package/dist/components/custom/fourier-field/shaders/fourier-field.render.wgsl.d.ts +1 -0
  157. package/dist/components/custom/goo-blob/GooBlob.vue.d.ts +9 -1
  158. package/dist/components/custom/goo-blob/composables/easing.d.ts +1 -0
  159. package/dist/components/custom/goo-blob/composables/useBlobSatellites.d.ts +1 -0
  160. package/dist/components/custom/goo-blob/constants.d.ts +26 -1
  161. package/dist/components/custom/goo-blob/index.d.ts +1 -1
  162. package/dist/components/custom/goo-blob/shaders/metaball-noise.wgsl.d.ts +1 -0
  163. package/dist/components/custom/goo-blob/shaders/metaball-palette.wgsl.d.ts +1 -0
  164. package/dist/components/custom/goo-blob/shaders/metaball-uniforms.glsl.d.ts +1 -1
  165. package/dist/components/custom/goo-blob/shaders/metaball.wgsl.d.ts +1 -1
  166. package/dist/components/custom/goo-blob/types.d.ts +86 -1
  167. package/dist/components/custom/goo-dot-matrix/GooDotMatrix.vue.d.ts +49 -0
  168. package/dist/components/custom/goo-dot-matrix/composables/gooDotLattice.d.ts +24 -0
  169. package/dist/components/custom/goo-dot-matrix/composables/gooDotSetup.d.ts +79 -0
  170. package/dist/components/custom/goo-dot-matrix/composables/uniformBridgeWGPU.d.ts +45 -0
  171. package/dist/components/custom/goo-dot-matrix/composables/useGooDotMatrix.d.ts +31 -0
  172. package/dist/components/custom/goo-dot-matrix/constants.d.ts +115 -0
  173. package/dist/components/custom/goo-dot-matrix/index.d.ts +5 -0
  174. package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.frag.d.ts +13 -0
  175. package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.wgsl.d.ts +4 -0
  176. package/dist/components/custom/goo-filter/GooFilter.vue.d.ts +22 -0
  177. package/dist/components/custom/goo-filter/index.d.ts +1 -0
  178. package/dist/components/custom/handmark/brush.d.ts +17 -17
  179. package/dist/components/custom/handmark/constants.d.ts +28 -8
  180. package/dist/components/custom/handmark/geometry.d.ts +34 -1
  181. package/dist/components/custom/handmark/index.d.ts +1 -1
  182. package/dist/components/custom/icon-chip/types.d.ts +10 -0
  183. package/dist/components/custom/labeled-field/LabeledField.vue.d.ts +21 -2
  184. package/dist/components/custom/metric-stack/MetricRow.vue.d.ts +15 -0
  185. package/dist/components/custom/pager-dots/PagerDots.vue.d.ts +9 -0
  186. package/dist/components/custom/pager-dots/index.d.ts +2 -0
  187. package/dist/components/custom/pager-dots/pagerWindow.d.ts +9 -0
  188. package/dist/components/custom/paper-backdrop/PaperBackdrop.vue.d.ts +18 -0
  189. package/dist/components/custom/paper-grid/PaperGrid.vue.d.ts +42 -0
  190. package/dist/components/custom/paper-grid/composables/paperGrid.d.ts +105 -0
  191. package/dist/components/custom/paper-grid/composables/paperGridGLSetup.d.ts +18 -0
  192. package/dist/components/custom/paper-grid/composables/paperGridWGPUSetup.d.ts +21 -0
  193. package/dist/components/custom/paper-grid/composables/uniformBridgeWGPU.d.ts +16 -0
  194. package/dist/components/custom/paper-grid/composables/usePaperGrid.d.ts +31 -0
  195. package/dist/components/custom/paper-grid/constants.d.ts +95 -0
  196. package/dist/components/custom/paper-grid/index.d.ts +5 -0
  197. package/dist/components/custom/paper-grid/shaders/paper-grid.glsl.d.ts +4 -0
  198. package/dist/components/custom/paper-grid/shaders/paper-grid.wgsl.d.ts +1 -0
  199. package/dist/components/custom/search/FuzzySearch.vue.d.ts +8 -2
  200. package/dist/components/custom/search/SearchBar.vue.d.ts +8 -0
  201. package/dist/components/custom/search/index.d.ts +2 -0
  202. package/dist/components/custom/search/searchVariants.d.ts +19 -0
  203. package/dist/components/custom/selectable-chip/SelectableChip.vue.d.ts +50 -0
  204. package/dist/components/custom/selectable-chip/chipVariants.d.ts +39 -0
  205. package/dist/components/custom/selectable-chip/index.d.ts +2 -0
  206. package/dist/components/custom/selectable-chip/selectableChipVariants.d.ts +15 -0
  207. package/dist/components/custom/split-chars/SplitChars.vue.d.ts +39 -0
  208. package/dist/components/custom/split-chars/index.d.ts +1 -0
  209. package/dist/components/custom/tabs/SegmentedTabs.vue.d.ts +8 -6
  210. package/dist/components/custom/tabs/constants.d.ts +28 -2
  211. package/dist/components/custom/timeline/ScrubberTimeline.vue.d.ts +16 -0
  212. package/dist/components/custom/timeline/geometry.d.ts +0 -8
  213. package/dist/components/custom/toggle-chip/index.d.ts +15 -4
  214. package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +32 -17
  215. package/dist/components/custom/watercolor-dot/useWatercolorBlob.d.ts +10 -5
  216. package/dist/components/ui/_shared/index.d.ts +2 -0
  217. package/dist/components/ui/_shared/useControlSize.d.ts +46 -0
  218. package/dist/components/ui/_shared/useSurfaceAxis.d.ts +17 -3
  219. package/dist/components/ui/badge/Badge.vue.d.ts +14 -0
  220. package/dist/components/ui/badge/index.d.ts +1 -0
  221. package/dist/components/ui/button/Button.vue.d.ts +1 -0
  222. package/dist/components/ui/button/index.d.ts +1 -1
  223. package/dist/components/ui/card/Card.vue.d.ts +46 -1
  224. package/dist/components/ui/card/ScrollCard.vue.d.ts +1 -1
  225. package/dist/components/ui/card/index.d.ts +1 -1
  226. package/dist/components/ui/carousel/CarouselContent.vue.d.ts +2 -4
  227. package/dist/components/ui/carousel/CarouselNext.vue.d.ts +1 -1
  228. package/dist/components/ui/carousel/CarouselPrevious.vue.d.ts +1 -1
  229. package/dist/components/ui/command/CommandDialog.vue.d.ts +9 -3
  230. package/dist/components/ui/command/CommandList.vue.d.ts +3 -0
  231. package/dist/components/ui/context-menu/ContextMenuContent.vue.d.ts +5 -1
  232. package/dist/components/ui/dialog/DialogContent.vue.d.ts +9 -0
  233. package/dist/components/ui/drawer/Drawer.vue.d.ts +33 -14
  234. package/dist/components/ui/drawer/constants.d.ts +8 -6
  235. package/dist/components/ui/drawer/index.d.ts +12 -2
  236. package/dist/components/ui/dropdown-menu/DropdownMenuContent.vue.d.ts +4 -0
  237. package/dist/components/ui/hover-card/HoverCardContent.vue.d.ts +3 -0
  238. package/dist/components/ui/input/Input.vue.d.ts +3 -0
  239. package/dist/components/ui/number-field/NumberFieldInput.vue.d.ts +6 -1
  240. package/dist/components/ui/select/SelectContent.vue.d.ts +12 -0
  241. package/dist/components/ui/slider/Slider.vue.d.ts +9 -0
  242. package/dist/components/ui/switch/Switch.vue.d.ts +2 -0
  243. package/dist/components/ui/textarea/Textarea.vue.d.ts +3 -0
  244. package/dist/components/ui/tooltip/TooltipContent.vue.d.ts +3 -0
  245. package/dist/composables/color/index.d.ts +2 -0
  246. package/dist/composables/color/useAccentTone.d.ts +34 -0
  247. package/dist/composables/dom/index.d.ts +1 -0
  248. package/dist/composables/dom/useDragVelocity.d.ts +46 -0
  249. package/dist/composables/glass/useVizChoreography.d.ts +123 -0
  250. package/dist/composables/glass/wave/index.d.ts +4 -0
  251. package/dist/composables/glass/wave/waveField.d.ts +115 -0
  252. package/dist/composables/glass/wave/waveField.glsl.d.ts +1 -0
  253. package/dist/composables/glass/wave/waveField.wgsl.d.ts +1 -0
  254. package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +105 -2
  255. package/dist/composables/glass/webgl/shaders/flow.wgsl.d.ts +1 -0
  256. package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +40 -2
  257. package/dist/composables/glass/webgpu/index.d.ts +2 -1
  258. package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +65 -7
  259. package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +50 -2
  260. package/dist/composables/glass/webgpu/webgpuDevice.d.ts +42 -0
  261. package/dist/composables/motion/core/index.d.ts +7 -0
  262. package/dist/composables/motion/core/useHaptic.d.ts +48 -0
  263. package/dist/composables/motion/core/writeVelocityWeight.d.ts +31 -0
  264. package/dist/composables/motion/index.d.ts +2 -0
  265. package/dist/composables/motion/scrollReader.d.ts +25 -0
  266. package/dist/composables/motion/springPresets.d.ts +19 -1
  267. package/dist/composables/motion/suite.d.ts +2 -2
  268. package/dist/composables/motion/useBloomUp.d.ts +97 -0
  269. package/dist/composables/motion/useCelebrationBurst.d.ts +50 -0
  270. package/dist/composables/motion/useCharStagger.d.ts +44 -0
  271. package/dist/composables/motion/useDockCtaReceive.d.ts +29 -22
  272. package/dist/composables/motion/useGooMorph.d.ts +72 -0
  273. package/dist/composables/motion/useLiquidFlex.d.ts +18 -0
  274. package/dist/composables/motion/useLiquidMorph.d.ts +108 -0
  275. package/dist/composables/motion/useLiquidPress.d.ts +12 -0
  276. package/dist/composables/motion/useLiquidReveal.d.ts +7 -4
  277. package/dist/composables/motion/useMorphField.d.ts +157 -0
  278. package/dist/composables/motion/useScrollChrome.d.ts +58 -0
  279. package/dist/composables/motion/useScrollPin.d.ts +49 -0
  280. package/dist/composables/motion/useScrollScene.d.ts +67 -0
  281. package/dist/composables/motion/useScrollTrigger.d.ts +67 -0
  282. package/dist/composables/motion/useSpringPress.d.ts +5 -5
  283. package/dist/composables/motion/useStaggerReveal.d.ts +24 -0
  284. package/dist/composables/sidebar/index.d.ts +4 -1
  285. package/dist/composables/sidebar/types.d.ts +68 -3
  286. package/dist/composables/sidebar/useClickDelegate.d.ts +4 -0
  287. package/dist/composables/sidebar/useLazyLoader.d.ts +5 -0
  288. package/dist/composables/sidebar/useScrollTo.d.ts +5 -0
  289. package/dist/composables/virtual/index.d.ts +4 -0
  290. package/dist/composables/virtual/useVirtualSectionWindow.d.ts +72 -0
  291. package/dist/composables/virtual/useWindowedStore.d.ts +43 -0
  292. package/dist/composables/virtual/virtualSectionLayout.d.ts +103 -0
  293. package/dist/concentric.js +552 -309
  294. package/dist/configurator.js +2 -2
  295. package/dist/confirm-dialog.js +62 -47
  296. package/dist/constellation.js +635 -235
  297. package/dist/context-menu.js +2 -2
  298. package/dist/controls.js +2 -2
  299. package/dist/createCanvasLifecycle-CuCrGRfq.js +173 -0
  300. package/dist/dark.js +1 -1
  301. package/dist/data-table.js +1 -1
  302. package/dist/deck.d.ts +1 -0
  303. package/dist/deck.js +105 -0
  304. package/dist/dialog.js +4 -3
  305. package/dist/dock.js +1320 -631
  306. package/dist/dockContext-gFVS2gMg.js +18 -0
  307. package/dist/dom.js +7 -6
  308. package/dist/dot-flow-field.js +1268 -387
  309. package/dist/dot-matrix.d.ts +1 -0
  310. package/dist/dot-matrix.js +774 -0
  311. package/dist/dotMatrixField-CRO0ZFk4.js +48 -0
  312. package/dist/drawer.js +106 -96
  313. package/dist/{dropdown-menu-CofSZuk8.js → dropdown-menu-CCfcCQ68.js} +83 -79
  314. package/dist/dropdown-menu.js +1 -1
  315. package/dist/easing.js +188 -176
  316. package/dist/expandable-container.js +43 -21
  317. package/dist/fading-scroll.js +1 -1
  318. package/dist/flow.glsl-DqEGRpl4.js +4 -0
  319. package/dist/forms.js +64 -62
  320. package/dist/fourier-field.js +1069 -178
  321. package/dist/fourier-math.js +1 -1
  322. package/dist/glass-panel.js +2 -2
  323. package/dist/glass-ui.css +1 -1
  324. package/dist/glass-ui.js +164 -119
  325. package/dist/goo-blob.js +175 -1230
  326. package/dist/goo-dot-matrix.d.ts +1 -0
  327. package/dist/goo-dot-matrix.js +811 -0
  328. package/dist/handmark.js +137 -94
  329. package/dist/header-ribbon.js +1 -1
  330. package/dist/hover-card.js +1 -1
  331. package/dist/hover-popover.js +1 -1
  332. package/dist/icon-chip.js +1 -1
  333. package/dist/icon-tooltip.js +1 -1
  334. package/dist/index.d.ts +5 -0
  335. package/dist/instrument-chassis.js +1 -1
  336. package/dist/keyboard.js +1 -1
  337. package/dist/label.js +1 -1
  338. package/dist/labeled-field.js +70 -60
  339. package/dist/metric-badge.js +1 -1
  340. package/dist/metric-cell.js +1 -1
  341. package/dist/metric-stack.js +12 -3
  342. package/dist/motion-core.js +59 -34
  343. package/dist/motion-curves.js +30 -14
  344. package/dist/motion.js +231 -96
  345. package/dist/notification.js +1 -1
  346. package/dist/number-field.js +1 -1
  347. package/dist/pager-dots.js +2 -91
  348. package/dist/paper-backdrop.js +1 -1
  349. package/dist/paper-grid.d.ts +1 -0
  350. package/dist/paper-grid.js +761 -0
  351. package/dist/paperGrid-CXCSMbZ1.js +191 -0
  352. package/dist/popover.js +1 -1
  353. package/dist/{presets-BW2b-fr1.js → presets-QvYgnFIZ.js} +14 -13
  354. package/dist/{procedural-color.glsl-CIFsJhwI.js → procedural-color.wgsl-C1Y5PkM6.js} +2 -2
  355. package/dist/progress.js +1 -1
  356. package/dist/pulse.js +2 -2
  357. package/dist/reactive.js +2 -2
  358. package/dist/{useCanvas2D-B8w_E3Rr.js → resolveCanvasColor-DsSJk06I.js} +16 -6
  359. package/dist/scrollReader-rc3Ns_NM.js +42 -0
  360. package/dist/scrolling-text.js +1 -1
  361. package/dist/search.js +162 -306
  362. package/dist/select.js +3 -3
  363. package/dist/selectable-chip.d.ts +1 -0
  364. package/dist/selectable-chip.js +48 -0
  365. package/dist/separator.js +1 -1
  366. package/dist/{sheet-tZMg0E0w.js → sheet-DUCIoOe0.js} +4 -4
  367. package/dist/sheet.js +1 -1
  368. package/dist/sidebar.js +216 -114
  369. package/dist/slider-CcICPe3u.js +149 -0
  370. package/dist/slider.js +1 -1
  371. package/dist/sortable-list.js +3 -3
  372. package/dist/spectrum-walk-cBNSx_zm.js +33 -0
  373. package/dist/springPresets-DfoQ6XRY.js +64 -0
  374. package/dist/stacked-icons.js +54 -39
  375. package/dist/styles/animations.css +13 -3
  376. package/dist/styles/cards.css +271 -2
  377. package/dist/styles/completion-seal.css +131 -0
  378. package/dist/styles/components.css +1 -4
  379. package/dist/styles/configurator.css +221 -1
  380. package/dist/styles/critical-partition.mjs +66 -11
  381. package/dist/styles/deferred.css +4 -0
  382. package/dist/styles/dock/adaptive-legibility.css +119 -0
  383. package/dist/styles/dock/cta-seat.css +87 -0
  384. package/dist/styles/dock/density.css +167 -6
  385. package/dist/styles/dock/fission-bridge.css +552 -0
  386. package/dist/styles/dock/layers.css +90 -78
  387. package/dist/styles/dock/morph-bridge.css +67 -18
  388. package/dist/styles/dock/morph.css +57 -118
  389. package/dist/styles/dock/overflow.css +12 -0
  390. package/dist/styles/dock/search.css +68 -0
  391. package/dist/styles/dock/shape.css +250 -0
  392. package/dist/styles/dock/shell.css +24 -8
  393. package/dist/styles/dock/stack-rail.css +352 -0
  394. package/dist/styles/dock-controls/dark-mode-toggle.css +17 -4
  395. package/dist/styles/dock-controls/icon-button.css +46 -0
  396. package/dist/styles/dock-controls/triggers.css +23 -1
  397. package/dist/styles/dock-controls.css +18 -0
  398. package/dist/styles/dock.css +27 -2
  399. package/dist/styles/drawer.css +166 -0
  400. package/dist/styles/glass/accent-tone.css +66 -0
  401. package/dist/styles/glass/control-surfaces.css +167 -0
  402. package/dist/styles/glass/glass-atom.css +244 -0
  403. package/dist/styles/glass/glass-capsule.css +143 -0
  404. package/dist/styles/glass/glass-chip.css +215 -0
  405. package/dist/styles/glass/ladder.css +67 -17
  406. package/dist/styles/glass/liquid-enter.css +252 -0
  407. package/dist/styles/glass/liquid-morph.css +850 -0
  408. package/dist/styles/glass/material.css +70 -1
  409. package/dist/styles/glass/reveal.css +22 -2
  410. package/dist/styles/glass/rim.css +31 -9
  411. package/dist/styles/glass/surfaces.css +81 -150
  412. package/dist/styles/glass.css +21 -0
  413. package/dist/styles/icon-chip.css +45 -0
  414. package/dist/styles/index.css +26 -0
  415. package/dist/styles/jubilance.css +65 -0
  416. package/dist/styles/motion/morph-field.css +229 -0
  417. package/dist/styles/paper.css +230 -14
  418. package/dist/styles/scroll-choreography.css +135 -78
  419. package/dist/styles/scroll-chrome.css +123 -0
  420. package/dist/styles/scroll-driven.css +38 -0
  421. package/dist/styles/segmented-tabs.css +110 -40
  422. package/dist/styles/select.css +151 -0
  423. package/dist/styles/theme/bridges.css +22 -0
  424. package/dist/styles/theme/radius.css +18 -1
  425. package/dist/styles/tokens/color-radius.css +14 -4
  426. package/dist/styles/tokens/dark-arm.css +94 -12
  427. package/dist/styles/tokens/glass-deep.css +33 -4
  428. package/dist/styles/tokens/glass-fx.css +122 -1
  429. package/dist/styles/tokens/glass.css +226 -34
  430. package/dist/styles/tokens/light-dark.css +3 -3
  431. package/dist/styles/tokens/offsets.css +27 -0
  432. package/dist/styles/tokens/property-regs.css +277 -0
  433. package/dist/styles/tokens/scale-paper.css +86 -30
  434. package/dist/styles/tokens/scheme-motion.css +106 -133
  435. package/dist/styles/tokens/scheme-spring.css +239 -0
  436. package/dist/styles/tokens/scroll-tokens.css +15 -15
  437. package/dist/styles/tokens/shadow.css +73 -13
  438. package/dist/styles/tokens/sizing-config.css +110 -0
  439. package/dist/styles/tokens/sizing.css +55 -104
  440. package/dist/styles/tokens.css +14 -2
  441. package/dist/styles/typography/semantic.css +18 -5
  442. package/dist/styles/utilities/a11y-overrides.css +20 -5
  443. package/dist/styles/utilities/base-misc.css +52 -0
  444. package/dist/styles/utilities/btn.css +84 -3
  445. package/dist/styles/utilities/components.css +31 -6
  446. package/dist/styles/utilities/metal.css +26 -0
  447. package/dist/switch.js +1 -1
  448. package/dist/tabs.js +199 -182
  449. package/dist/timeline.js +241 -206
  450. package/dist/toast.js +1 -1
  451. package/dist/toggle-chip.js +14 -41
  452. package/dist/toggle-group.js +1 -1
  453. package/dist/tooltip.js +1 -1
  454. package/dist/typewriter.js +2 -2
  455. package/dist/uniformBridgeWGPU-BCse1SHU.js +1268 -0
  456. package/dist/{useAnimatedNumber-BfUq2bUM.js → useAnimatedNumber-BntskVdQ.js} +1 -1
  457. package/dist/{useConfiguratorState-DNlOh6c8.js → useConfiguratorState-22BcULzF.js} +41 -38
  458. package/dist/useControlSize-DAZ062x7.js +9 -0
  459. package/dist/useDockCtaReceive-DX7RDb6_.js +88 -0
  460. package/dist/{useDragMorph-DgxnsVJz.js → useDragMorph-DGLSewwB.js} +4 -4
  461. package/dist/useDragVelocity-CjcfX3dA.js +57 -0
  462. package/dist/useFuzzySearch-0fTYOhS4.js +177 -0
  463. package/dist/useGooMorph-Cs13NgYL.js +104 -0
  464. package/dist/useGpuSubstrate-Ceet70xq.js +347 -0
  465. package/dist/useHaptic-CPz5BT9I.js +134 -0
  466. package/dist/{useLiquidFlex-mZPMiNXh.js → useLiquidFlex-Cc6PjVJD.js} +8 -3
  467. package/dist/useLiquidPress-CtOQ8Z0_.js +43 -0
  468. package/dist/useMorphField-ogBM7ubT.js +141 -0
  469. package/dist/usePointerVelocityField-BrkqZFhj.js +91 -0
  470. package/dist/useScrollChrome-JuImi1DM.js +258 -0
  471. package/dist/{useSpringMount-q1amq1SJ.js → useSpringMount-DFxtzmkR.js} +1 -1
  472. package/dist/useSpringPress-VM9RgVq3.js +36 -0
  473. package/dist/{useSurfaceAxis-g0NloYEF.js → useSurfaceAxis-Ci7Dnaw2.js} +1 -1
  474. package/dist/{useTouchGate-CBZTD4SD.js → useTouchGate-B1Lf9XqN.js} +1 -1
  475. package/dist/{vendor-CKmzio-i.js → vendor-B2qOlYY3.js} +24 -11
  476. package/dist/virtual.d.ts +1 -0
  477. package/dist/virtual.js +225 -0
  478. package/dist/watercolor-dot.js +107 -74
  479. package/dist/writeVelocityWeight-Bh83xZfs.js +19 -0
  480. package/package.json +140 -9
  481. package/src/styles/animations.css +13 -3
  482. package/src/styles/cards.css +271 -2
  483. package/src/styles/completion-seal.css +131 -0
  484. package/src/styles/configurator.css +221 -1
  485. package/src/styles/critical-partition.mjs +66 -11
  486. package/src/styles/dock/adaptive-legibility.css +119 -0
  487. package/src/styles/dock/cta-seat.css +87 -0
  488. package/src/styles/dock/density.css +167 -6
  489. package/src/styles/dock/fission-bridge.css +552 -0
  490. package/src/styles/dock/layers.css +90 -78
  491. package/src/styles/dock/morph-bridge.css +67 -18
  492. package/src/styles/dock/morph.css +57 -118
  493. package/src/styles/dock/overflow.css +12 -0
  494. package/src/styles/dock/search.css +68 -0
  495. package/src/styles/dock/shape.css +250 -0
  496. package/src/styles/dock/shell.css +24 -8
  497. package/src/styles/dock/stack-rail.css +352 -0
  498. package/src/styles/dock-controls/dark-mode-toggle.css +17 -4
  499. package/src/styles/dock-controls/icon-button.css +46 -0
  500. package/src/styles/dock-controls/triggers.css +23 -1
  501. package/src/styles/dock-controls.css +18 -0
  502. package/src/styles/dock.css +27 -2
  503. package/src/styles/drawer.css +164 -0
  504. package/src/styles/glass/accent-tone.css +66 -0
  505. package/src/styles/glass/control-surfaces.css +167 -0
  506. package/src/styles/glass/glass-atom.css +244 -0
  507. package/src/styles/glass/glass-capsule.css +143 -0
  508. package/src/styles/glass/glass-chip.css +215 -0
  509. package/src/styles/glass/ladder.css +67 -17
  510. package/src/styles/glass/liquid-enter.css +252 -0
  511. package/src/styles/glass/liquid-morph.css +850 -0
  512. package/src/styles/glass/material.css +70 -1
  513. package/src/styles/glass/reveal.css +22 -2
  514. package/src/styles/glass/rim.css +31 -9
  515. package/src/styles/glass/surfaces.css +81 -150
  516. package/src/styles/glass.css +21 -0
  517. package/src/styles/icon-chip.css +45 -0
  518. package/src/styles/index.css +26 -0
  519. package/src/styles/jubilance.css +65 -0
  520. package/src/styles/motion/morph-field.css +229 -0
  521. package/src/styles/paper.css +230 -14
  522. package/src/styles/scroll-choreography.css +135 -78
  523. package/src/styles/scroll-chrome.css +123 -0
  524. package/src/styles/scroll-driven.css +38 -0
  525. package/src/styles/segmented-tabs.css +110 -36
  526. package/src/styles/select.css +151 -0
  527. package/src/styles/theme/bridges.css +22 -0
  528. package/src/styles/theme/radius.css +18 -1
  529. package/src/styles/tokens/color-radius.css +14 -4
  530. package/src/styles/tokens/dark-arm.css +94 -12
  531. package/src/styles/tokens/glass-deep.css +33 -4
  532. package/src/styles/tokens/glass-fx.css +122 -1
  533. package/src/styles/tokens/glass.css +226 -34
  534. package/src/styles/tokens/light-dark.css +3 -3
  535. package/src/styles/tokens/offsets.css +27 -0
  536. package/src/styles/tokens/property-regs.css +277 -0
  537. package/src/styles/tokens/scale-paper.css +86 -30
  538. package/src/styles/tokens/scheme-motion.css +106 -133
  539. package/src/styles/tokens/scheme-spring.css +239 -0
  540. package/src/styles/tokens/scroll-tokens.css +15 -15
  541. package/src/styles/tokens/shadow.css +73 -13
  542. package/src/styles/tokens/sizing-config.css +110 -0
  543. package/src/styles/tokens/sizing.css +55 -104
  544. package/src/styles/tokens.css +14 -2
  545. package/src/styles/typography/semantic.css +18 -5
  546. package/src/styles/utilities/a11y-overrides.css +20 -5
  547. package/src/styles/utilities/base-misc.css +52 -0
  548. package/src/styles/utilities/btn.css +84 -3
  549. package/src/styles/utilities/components.css +31 -6
  550. package/src/styles/utilities/metal.css +26 -0
  551. package/dist/ContextMenuContent-uWnVxDab.js +0 -85
  552. package/dist/DialogContent-DcKK8k9i.js +0 -103
  553. package/dist/DialogFooter-BZNX5aVr.js +0 -165
  554. package/dist/HoverCardContent-b2uaAMRR.js +0 -83
  555. package/dist/Input-h9v5LeXf.js +0 -55
  556. package/dist/NumberFieldContent-Cq7EzX-U.js +0 -138
  557. package/dist/PaperBackdrop-Vf3tlpvd.js +0 -31
  558. package/dist/SelectScrollDownButton-CrA8F0iV.js +0 -252
  559. package/dist/Separator-pKF0oA4M.js +0 -37
  560. package/dist/Switch-CwYNf8bo.js +0 -47
  561. package/dist/TooltipProvider-rzvnXz60.js +0 -104
  562. package/dist/badge-D9XWW4GT.js +0 -53
  563. package/dist/button-DYCUa-tH.js +0 -126
  564. package/dist/color-DweYl7pE.js +0 -86
  565. package/dist/components/custom/concentric/composables/ringField.d.ts +0 -44
  566. package/dist/components/custom/constellation/composables/useConstellationPointer.d.ts +0 -35
  567. package/dist/components/custom/constellation/constellationDraw.d.ts +0 -30
  568. package/dist/components/custom/dock/DockRail.vue.d.ts +0 -89
  569. package/dist/createCanvasLifecycle-CHD5XrDW.js +0 -82
  570. package/dist/dockContext-BNfyPLe9.js +0 -17
  571. package/dist/procedural-color.wgsl-CToRHugY.js +0 -224
  572. package/dist/resolveCanvasColor-CUyHr5Uu.js +0 -11
  573. package/dist/slider-DVb4HXU-.js +0 -142
  574. package/dist/springPresets-CFQGQfdl.js +0 -40
  575. package/dist/styles/dock/rail-extend.css +0 -397
  576. package/dist/useLiquidPress-kfb4KX79.js +0 -39
  577. package/dist/usePointerVelocityField-JbRd5CrM.js +0 -137
  578. package/dist/useRAFLoop-UYa4zoiN.js +0 -109
  579. package/dist/useSpringPress-BsqPr7FJ.js +0 -34
  580. package/src/styles/dock/rail-extend.css +0 -397
  581. /package/dist/{CollapsibleContent-68dEXIAl.js → CollapsibleContent-D7UNsXQr.js} +0 -0
  582. /package/dist/{InstrumentChassis-Bx0F_q5g.js → InstrumentChassis-UUJX0-mW.js} +0 -0
  583. /package/dist/{Label-C2ejNWeC.js → Label-B_HPqi_q.js} +0 -0
  584. /package/dist/{ModalOverlay-D1VrWyoi.js → ModalOverlay-DfAf7o15.js} +0 -0
  585. /package/dist/{SelectGroup-DwwjicPY.js → SelectGroup-Dcczq44n.js} +0 -0
  586. /package/dist/{_plugin-vue_export-helper-C1je1s0u.js → _plugin-vue_export-helper-gLzyemvl.js} +0 -0
  587. /package/dist/{compile-CQEFRTmx.js → compile-INR_tPk_.js} +0 -0
  588. /package/dist/{constants-BPOqYJAm.js → constants-BWj7DkMn.js} +0 -0
  589. /package/dist/{createContext-CpBNTRMI.js → createContext-Cd23P9j0.js} +0 -0
  590. /package/dist/{math-BINYmg5z.js → math-5RcIgCB4.js} +0 -0
  591. /package/dist/{menuItemVariants-D8VNHq22.js → menuItemVariants-DAXquKja.js} +0 -0
  592. /package/dist/{prng-Za0Rmgag.js → prng-B5tIXTtj.js} +0 -0
  593. /package/dist/{useGlobalDark-C28t0VWJ.js → useGlobalDark-B4HO9LXG.js} +0 -0
  594. /package/dist/{useIntersectionPause-Bj4sPkMh.js → useIntersectionPause-DO8Vl4gs.js} +0 -0
  595. /package/dist/{useInterval-CvK1mL92.js → useInterval-BVUI-sez.js} +0 -0
  596. /package/dist/{useKeyboardShortcuts-BXWXOZ-9.js → useKeyboardShortcuts-BEut54Tk.js} +0 -0
  597. /package/dist/{useResizeObserver-Bpoi7tRE.js → useResizeObserver-DdEn3v2f.js} +0 -0
  598. /package/dist/{useResolveTokenColor-vAylyR0x.js → useResolveTokenColor-ChOnCckA.js} +0 -0
  599. /package/dist/{useScrollProgress-D7bYU2RK.js → useScrollProgress-A0M6qRl7.js} +0 -0
  600. /package/dist/{useSortable-DHjtZSEd.js → useSortable-DQV_UNDw.js} +0 -0
  601. /package/dist/{useTextHighlight-CWEi25hf.js → useTextHighlight-Bma3UlKA.js} +0 -0
  602. /package/dist/{useTimer-BHJOKr35.js → useTimer-BBLGPXR8.js} +0 -0
  603. /package/dist/{useUserInvalidAria-y5namzeE.js → useUserInvalidAria-EmmwWPOl.js} +0 -0
  604. /package/dist/{useViewportReady-anbac3m6.js → useViewportReady-C9pYnn7K.js} +0 -0
  605. /package/dist/{vReveal-Czsb7zQC.js → vReveal-CT1KtwZA.js} +0 -0
  606. /package/dist/{vSpecular-CQFmLNzA.js → vSpecular-EX7loENl.js} +0 -0
@@ -1,32 +1,47 @@
1
1
  /**
2
- * WatercolorDot — an organic pastel blob swatch (AU.W7 lift). A CSS/SVG primitive
3
- * (no WebGL): the blob shape is a deterministic per-vertex `border-radius` morph
4
- * (seeded by `color + seed`), and the wet, bleeding edge is an SVG turbulence +
5
- * displacement filter that is INTERNALISED — the component mounts its own
6
- * namespaced `<filter>` so there is zero consumer plumbing. Mount the dot and the
7
- * filter just works.
2
+ * WatercolorDot — an organic pastel blob swatch. A CSS/SVG primitive (NO drawing
3
+ * context — no WebGL/WebGPU/Canvas2D; the deliberate suite counterexample, the mark
4
+ * that documents WHY it is not a GPU context): the blob shape is a deterministic
5
+ * per-vertex `border-radius` morph (seeded by `color + seed`), and the wet, bleeding
6
+ * edge is an SVG turbulence + displacement filter that is INTERNALISED — the component
7
+ * mounts its own namespaced `<filter>` so there is zero consumer plumbing. Mount the
8
+ * dot and the filter just works.
9
+ *
10
+ * Safari-safe by construction (USER-DEFECTS §H): the SVG `<filter>` rasterizes ONCE
11
+ * + caches (the HandMark `texture.ts` idiom) and NEVER re-rasterizes per frame; the
12
+ * `animate` liveness rides a seeded COMPOSITOR `transform` wobble the compositor
13
+ * accelerates without touching the filter graph (a per-frame `border-radius` paint
14
+ * under the filter is the §H Safari flash, retired here). The filter `seed` is
15
+ * per-instance off `hashString(color + seed)` so each dot's wet edge is uniquely
16
+ * displaced (no twelve-clones).
8
17
  *
9
18
  * Color arrives as a CSS string painted straight onto the swatch background — the
10
19
  * dot needs no resolver because it does not feed a shader; the injected-color seam
11
- * shape is "pass the CSS color in".
20
+ * shape is "pass the CSS color in". Warm-cream identity by default (the dot bakes no
21
+ * hue; the demo palette is presets-in-consumers).
12
22
  */
13
23
  type __VLS_Props = {
14
24
  /** CSS color painted as the swatch background (any CSS color form). */
15
25
  color: string;
16
26
  /**
17
- * Render mode (BA.W-EMISSION / BA-VJS-C2):
27
+ * Render mode:
18
28
  * `solid` (default) — the filled organic blob (the swatch background IS the
19
29
  * 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.
30
+ * `ghost` — the SAME seeded blob SILHOUETTE traced as a DASHED outline: a
31
+ * dashed CSS BORDER reading the SAME seeded `border-radius`
32
+ * silhouette the solid dot fills (`activeBorderRadius`), carrying
33
+ * the SAME wet `feDisplacementMap` filter so the displacement
34
+ * wobbles the dashed border INTO the seeded organic outline. A
35
+ * CSS dashed border hugs its own `border-radius`, so the outline
36
+ * follows the seeded blob EXACTLY — NOT an ellipse, NOT a circle,
37
+ * NOT a dashed rectangle. A low-alpha `color` fill is kept behind
38
+ * the border. A `ghost` of a given `color + seed` traces the SAME
39
+ * outline the `solid` dot of that seed fills (both read the same
40
+ * `useWatercolorBlob` morph — the ONE shape source). The empty-
41
+ * palette-slot / placeholder affordance.
27
42
  */
28
43
  variant?: "solid" | "ghost";
29
- /** Run the rAF-driven shape morph (default false → static, hover-morph only). */
44
+ /** Run the rAF-driven compositor transform wobble (default false → static). */
30
45
  animate?: boolean;
31
46
  /** Host tag — `div` (decorative) or `button` (interactive). */
32
47
  tag?: "div" | "button";
@@ -34,7 +49,7 @@ type __VLS_Props = {
34
49
  cycleDuration?: number;
35
50
  /** Border-radius range [lo, hi] as percentages (default [20, 80]). */
36
51
  range?: [number, number];
37
- /** Extra seed string mixed into the shape PRNG for reproducible uniqueness. */
52
+ /** Extra seed string mixed into the shape + wet-edge PRNG for uniqueness. */
38
53
  seed?: string;
39
54
  };
40
55
  declare var __VLS_11: {};
@@ -1,6 +1,6 @@
1
1
  import { type Ref } from "vue";
2
2
  export interface UseWatercolorBlobOptions {
3
- /** Enable the rAF animation loop. */
3
+ /** Enable the rAF animation loop (drives a COMPOSITOR transform wobble). */
4
4
  animate?: boolean;
5
5
  /** Base cycle duration in ms (default 4000). */
6
6
  cycleDuration?: number;
@@ -11,14 +11,19 @@ export interface UseWatercolorBlobOptions {
11
11
  }
12
12
  /**
13
13
  * Drives a watercolor dot's organic blob shape. Deterministic given `color + seed`
14
- * (seeds the PRNG), so the same color reproduces the same shape across mounts. In
15
- * static mode it emits a base + hover `border-radius`; in `animate` mode it runs an
16
- * rAF loop morphing each of the 8 radii independently. `nudge()` retargets all
17
- * vertices for a quick jiggle.
14
+ * (seeds the PRNG), so the same color reproduces the same shape across mounts. The
15
+ * seeded `border-radius` silhouette is set ONCE (the dot's identity) and is STATIC —
16
+ * the box never re-paints its radius per frame (the §H Safari fix: a per-frame
17
+ * `border-radius` write under the SVG filter forces the filter graph to RE-RASTERIZE
18
+ * every frame, which flashes Safari). In `animate` mode the liveness rides a seeded
19
+ * COMPOSITOR `transform` wobble (scale/skew/rotate) the compositor handles WITHOUT
20
+ * touching the cached filter — the HandMark static-filter idiom. `nudge()` retargets
21
+ * the wobble for a quick jiggle on hover.
18
22
  */
19
23
  export declare function useWatercolorBlob(color: Ref<string> | (() => string), options?: UseWatercolorBlobOptions): {
20
24
  borderRadius: Ref<string, string>;
21
25
  hoverBorderRadius: Ref<string, string>;
26
+ transform: Ref<string, string>;
22
27
  nudge: () => void;
23
28
  };
24
29
  export type WatercolorBlob = ReturnType<typeof useWatercolorBlob>;
@@ -2,3 +2,5 @@ export { menuItemVariants } from "./menuItemVariants";
2
2
  export type { MenuItemVariants } from "./menuItemVariants";
3
3
  export { surfaceClass } from "./useSurfaceAxis";
4
4
  export type { Surface, SurfaceTier } from "./useSurfaceAxis";
5
+ export { controlSizeClass, switchSizeClass } from "./useControlSize";
6
+ export type { ControlSize } from "./useControlSize";
@@ -0,0 +1,46 @@
1
+ /**
2
+ * The shared control-size axis — three rungs, ONE grammar. The meaningful
3
+ * control-size hierarchy rungs the input register needs (Button's `xs`/icon rungs
4
+ * are Button-specific — an input has no icon-only register, so they are NOT here).
5
+ *
6
+ * sm — the quieter/secondary control: the `--control-h-sm` height +
7
+ * `--control-text-sm` font (shorter + quieter).
8
+ * default — the canonical golden pill: the `--control-h-md` height +
9
+ * `--control-text` font (byte-identical to HEAD).
10
+ * lg — the primary/emphatic control: the `--control-h-lg` height with the
11
+ * base `--control-text` font (taller, same workhorse weight — matching
12
+ * Button's `lg`, where only the height grows).
13
+ */
14
+ export type ControlSize = "sm" | "default" | "lg";
15
+ /**
16
+ * Resolve a `ControlSize` to the element-level token-override class string the
17
+ * `.input-pill` recipe reads. The `default` rung emits NO override (so the recipe
18
+ * falls back to the cohort `--control-h-md` / `--control-text` — byte-identical to
19
+ * HEAD); `sm`/`lg` re-point `--control-pill-h` / `--control-pill-text` to the
20
+ * chosen cohort rung.
21
+ *
22
+ * controlSizeClass() → "" (golden default)
23
+ * controlSizeClass("sm") → "[--control-pill-h:var(--control-h-sm)] [--control-pill-text:var(--control-text-sm)]"
24
+ * controlSizeClass("lg") → "[--control-pill-h:var(--control-h-lg)]"
25
+ *
26
+ * @param size the control-size rung (`default` · `sm` · `lg`)
27
+ */
28
+ export declare function controlSizeClass(size?: ControlSize): string;
29
+ /**
30
+ * The Switch geometry rung. A Switch is a control-height-DERIVED geometry (the
31
+ * track/thumb/throw are NOT the bare cohort height — a switch track is shorter
32
+ * than an input), so it derives its `--switch-track-h` from the chosen
33
+ * `--control-h-*` rung (×0.6, the iOS proportion) and the rest of the
34
+ * `--switch-*` quad follows in Switch.vue:
35
+ *
36
+ * --switch-thumb = --switch-track-h − 0.25rem (the 2px×2 track border)
37
+ * --switch-track-w = --switch-track-h × 11/6 (the iOS track aspect)
38
+ * --switch-throw = --switch-track-w − --switch-thumb − 0.25rem
39
+ *
40
+ * The `default` rung (`--control-h-md`) resolves the HEAD `h-6 w-11` track +
41
+ * `h-5 w-5` thumb + `translate-x-5` throw EXACTLY (byte-identical). `sm`/`lg`
42
+ * re-point the anchor `--switch-track-h` so the whole quad scales in lockstep.
43
+ *
44
+ * @param size the control-size rung (`default` · `sm` · `lg`)
45
+ */
46
+ export declare function switchSizeClass(size?: ControlSize): string;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * The shared surface-decoration axis — three rungs, ONE grammar.
2
+ * The shared surface-decoration axis — four rungs, ONE grammar.
3
3
  *
4
4
  * glass — the resolved tier's plain glass rung (default). The translucent
5
5
  * blur surface, the maximal glass-first register.
@@ -11,8 +11,16 @@
11
11
  * opaque — the `--glass-level:0` solid-card escape: solid `--card` + `blur(0)`
12
12
  * through the ONE level knob. The explicit opt-out from the maximal
13
13
  * glass default.
14
+ * clear — BE.W-CLEAR-VARIANT: the Apple-Clear MAXIMALLY translucent register —
15
+ * the `--glass-bg-clear` (0.58) plate, the clearest the library ships
16
+ * (the album grid bleeds genuinely through). STRUCTURALLY coupled to a
17
+ * MANDATORY `::before` legibility scrim (a near-transparent plate → the
18
+ * text needs a scrim floor) whose strength derives from the sampled
19
+ * `--glass-backdrop-luma` (it dims MORE over a bright backdrop). A
20
+ * scrim-less clear surface is FORBIDDEN — the `.glass-clear` decoration
21
+ * class carries the scrim in the SAME rule (the Apple Clear contract).
14
22
  */
15
- export type Surface = "glass" | "veil" | "opaque";
23
+ export type Surface = "glass" | "veil" | "opaque" | "clear";
16
24
  /**
17
25
  * The 5-rung glass-ladder tier the surface paints its base over. Mirrors the
18
26
  * `.glass-{wash,quiet,resting,floating,overlay}` ladder. A surface passes the rung
@@ -34,8 +42,14 @@ export type SurfaceTier = "wash" | "quiet" | "resting" | "floating" | "overlay";
34
42
  * surfaceClass("glass", "floating") → "glass-floating"
35
43
  * surfaceClass("veil", "floating") → "glass-floating veil-surface"
36
44
  * surfaceClass("opaque", "floating") → "glass-floating glass-opaque"
45
+ * surfaceClass("clear", "floating") → "glass-floating glass-clear"
37
46
  *
38
- * @param surface the decoration rung (`glass` default · `veil` · `opaque`)
47
+ * The `glass-clear` decoration class (BE.W-CLEAR-VARIANT) is scrim-COUPLED: its CSS
48
+ * rule carries the MANDATORY `::before` legibility scrim in the SAME seam, so a
49
+ * `surface="clear"` surface can NEVER paint the maximally-translucent plate without
50
+ * the dim — the Apple Clear contract is structural, not opt-out.
51
+ *
52
+ * @param surface the decoration rung (`glass` default · `veil` · `opaque` · `clear`)
39
53
  * @param tier the base ladder rung (default `resting`)
40
54
  */
41
55
  export declare function surfaceClass(surface?: Surface, tier?: SurfaceTier): string;
@@ -3,6 +3,20 @@ import { type BadgeVariants } from '.';
3
3
  type __VLS_Props = {
4
4
  variant?: BadgeVariants['variant'];
5
5
  size?: BadgeVariants['size'];
6
+ /**
7
+ * BD.W-GLASS-ATOM-REGISTER — the register split. `loud` (default) is the opaque
8
+ * saturated identity pill; `glass` is the quiet transmissive `.glass-atom`
9
+ * capsule tinted via `--glass-fill-tint`. A status badge stays loud (information,
10
+ * not a sticker); `secondary`/`outline` placements may route quiet.
11
+ */
12
+ surface?: BadgeVariants['surface'];
13
+ /**
14
+ * The LOUD cel cast opt-in (BD.W-CARTOON-CASTER). Every badge carries the
15
+ * family floor (the press-squish + a hairline rim-cast); `cast` INTENSIFIES the
16
+ * loud layered-offset stamp + mounts the inert `.cartoon-cast` child. A status
17
+ * pill is information, so the loud stamp is opt-in (not the default).
18
+ */
19
+ cast?: boolean;
6
20
  class?: HTMLAttributes['class'];
7
21
  };
8
22
  declare var __VLS_1: {};
@@ -3,5 +3,6 @@ export { default as Badge } from './Badge.vue';
3
3
  export declare const badgeVariants: (props?: ({
4
4
  variant?: "default" | "outline" | "destructive" | "secondary" | "success" | "warning" | "info" | null | undefined;
5
5
  size?: "sm" | "lg" | "md" | null | undefined;
6
+ surface?: "glass" | "loud" | null | undefined;
6
7
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
8
  export type BadgeVariants = VariantProps<typeof badgeVariants>;
@@ -8,6 +8,7 @@ interface Props extends PrimitiveProps {
8
8
  class?: HTMLAttributes['class'];
9
9
  surface?: Surface;
10
10
  liquid?: boolean;
11
+ punch?: boolean;
11
12
  type?: ButtonHTMLAttributes['type'];
12
13
  disabled?: ButtonHTMLAttributes['disabled'];
13
14
  }
@@ -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" | "glass" | "outline" | "solid" | "primary-audacious" | "gold-audacious" | "destructive" | "secondary" | "accent" | "ghost" | "glass-wash" | "ai" | null | undefined;
4
+ variant?: "link" | "default" | "glass" | "outline" | "primary-audacious" | "gold-audacious" | "destructive" | "secondary" | "accent" | "ghost" | "glass-wash" | "ai" | null | undefined;
5
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>;
@@ -51,6 +51,23 @@ export type CardSurface = "glass" | "cartoon" | "veil";
51
51
  * was originally authored over (a local intensity-token override).
52
52
  */
53
53
  export type CardSpecular = "off" | "subtle" | "full";
54
+ /**
55
+ * Decoration variant — the ONE new Atlas component (BC.W-SELECTION-CARD, the I5
56
+ * selection card). Default UNSET: a bare `<Card>` is byte-identical to HEAD; the
57
+ * variant is additive default-OFF (the no-op floor). `selection` binds
58
+ * `:data-variant="selection"` on the root and ROUTES the chromatic-rim (A-2,
59
+ * `--glass-accent`) + selected metal-shimmer (A-3, `.metal-*-border`) decoration
60
+ * through the SHARED BUILT seams — it mints NO new sub-system. The shape mirrors
61
+ * the `surface` axis exactly: a data-attr the CSS seam reads, ORTHOGONAL to
62
+ * `tier`/`surface`/`pressable` (a `variant="selection" surface="glass"
63
+ * tier="resting" pressable` card is valid). The hue is a CONSUMER value
64
+ * (`data-hue`/`data-hue-strength` per-instance); NO consumer hue enters a token.
65
+ */
66
+ export type CardVariant = "selection";
67
+ /** The earned metal for a SELECTED selection-card (gold default — BA.W-PHASE-PALETTE
68
+ * "gold is earned" for the chosen item). Composes the BUILT `.metal-{name}-border`
69
+ * utility; NO forked keyframe, NO baked metal color. */
70
+ export type CardMetal = "gold" | "silver" | "bronze";
54
71
  interface Props extends PrimitiveProps {
55
72
  /** Surface tier; selects one rung of the glass ladder. Default `resting`. */
56
73
  tier?: CardTier;
@@ -97,6 +114,33 @@ interface Props extends PrimitiveProps {
97
114
  * compositor-only (`scale` + a custom property); the `.glass-press` CSS `:active`
98
115
  * scale is the no-JS / SSR floor. */
99
116
  pressable?: boolean;
117
+ /** BC.W-SELECTION-CARD — the selection decoration axis (the ONE new Atlas
118
+ * component). `selection` ROUTES the per-instance data-hue rim (A-2) +
119
+ * the selected metal-shimmer border (A-3) through the BUILT seams; default
120
+ * UNSET (a bare Card is byte-identical to HEAD). ORTHOGONAL to
121
+ * `tier`/`surface`/`pressable`. */
122
+ variant?: CardVariant;
123
+ /** BC.W-SELECTION-CARD — the chosen state of a `variant="selection"` card.
124
+ * When `true` the card composes the earned `.metal-${metal}-border` swept
125
+ * rim + lifts the accent-strength toward `--selection-accent-strength-selected`
126
+ * (rim-not-fill — the plate stays warm-cream translucent). The consumer wires
127
+ * the matching `aria-selected`/`aria-checked` role contract on the card. */
128
+ selected?: boolean;
129
+ /** BC.W-SELECTION-CARD — the metal of the SELECTED-state swept rim. `gold`
130
+ * (default) is earned for the chosen item; `silver`/`bronze` are the other
131
+ * two BUILT `.metal-*-border` quads. Only read when `variant="selection"` +
132
+ * `selected`. */
133
+ metal?: CardMetal;
134
+ /** BC.W-SELECTION-CARD — the per-instance data hue (a complete `<color>`) a
135
+ * `variant="selection"` card tints its RIM + catch-light glint toward (the
136
+ * A-2 `--glass-accent` consumer). The hue NEVER tints the plate background
137
+ * (the distinct-axis fence); unset → the neutral `transparent` no-op floor. */
138
+ dataHue?: string;
139
+ /** BC.W-SELECTION-CARD — the bounded accent strength override (a `<percentage>`,
140
+ * e.g. `"20%"`). Unset → the calm `--selection-accent-strength` default
141
+ * (≤ the W-GLASS-ACCENT rim ceiling). Bounded — a whisper at the rim, never a
142
+ * flooded plate. */
143
+ dataHueStrength?: string;
100
144
  class?: HTMLAttributes["class"];
101
145
  }
102
146
  declare var __VLS_13: {};
@@ -105,13 +149,14 @@ type __VLS_Slots = {} & {
105
149
  };
106
150
  declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
107
151
  shadow: boolean;
152
+ tier: CardTier;
108
153
  grid: boolean;
109
154
  surface: CardSurface;
110
155
  as: import("reka-ui").AsTag | import("vue").Component;
111
- tier: CardTier;
112
156
  grain: boolean;
113
157
  specular: CardSpecular;
114
158
  pressable: boolean;
159
+ metal: CardMetal;
115
160
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
116
161
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
117
162
  declare const _default: typeof __VLS_export;
@@ -19,9 +19,9 @@ declare const _default: typeof __VLS_export;
19
19
  export default _default;
20
20
  declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<ScrollCardProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ScrollCardProps> & Readonly<{}>, {
21
21
  shadow: boolean;
22
+ tier: CardTier;
22
23
  maxHeight: string;
23
24
  surface: CardSurface;
24
- tier: CardTier;
25
25
  specular: CardSpecular;
26
26
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
27
27
  default?: (props: {}) => any;
@@ -1,4 +1,4 @@
1
- export { default as Card, type CardTier, type CardSurface, type CardSpecular, } from "./Card.vue";
1
+ export { default as Card, type CardTier, type CardSurface, type CardSpecular, type CardVariant, type CardMetal, } from "./Card.vue";
2
2
  export { default as CardHeader } from "./CardHeader.vue";
3
3
  export { default as ScrollCard, type ScrollCardProps } from "./ScrollCard.vue";
4
4
  export { default as ScrollCardHeader, type ScrollCardHeaderProps, } from "./ScrollCardHeader.vue";
@@ -1,11 +1,9 @@
1
- import type { WithClassAsProps } from './interface';
1
+ import type { WithClassAsProps } from "./interface";
2
2
  declare var __VLS_1: {};
3
3
  type __VLS_Slots = {} & {
4
4
  default?: (props: typeof __VLS_1) => any;
5
5
  };
6
- declare const __VLS_base: import("vue").DefineComponent<WithClassAsProps, {
7
- carouselRef: import("vue").Ref<HTMLElement | undefined, HTMLElement | undefined>;
8
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<WithClassAsProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
+ declare const __VLS_base: import("vue").DefineComponent<WithClassAsProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<WithClassAsProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
7
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
10
8
  declare const _default: typeof __VLS_export;
11
9
  export default _default;
@@ -10,7 +10,7 @@ type __VLS_Slots = {} & {
10
10
  };
11
11
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
12
12
  size: "default" | "icon" | "xs" | "sm" | "lg" | "icon-sm" | null;
13
- variant: "link" | "default" | "glass" | "outline" | "solid" | "primary-audacious" | "gold-audacious" | "destructive" | "secondary" | "accent" | "ghost" | "glass-wash" | "ai" | null;
13
+ variant: "link" | "default" | "glass" | "outline" | "primary-audacious" | "gold-audacious" | "destructive" | "secondary" | "accent" | "ghost" | "glass-wash" | "ai" | null;
14
14
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
15
15
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
16
16
  declare const _default: typeof __VLS_export;
@@ -10,7 +10,7 @@ type __VLS_Slots = {} & {
10
10
  };
11
11
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
12
12
  size: "default" | "icon" | "xs" | "sm" | "lg" | "icon-sm" | null;
13
- variant: "link" | "default" | "glass" | "outline" | "solid" | "primary-audacious" | "gold-audacious" | "destructive" | "secondary" | "accent" | "ghost" | "glass-wash" | "ai" | null;
13
+ variant: "link" | "default" | "glass" | "outline" | "primary-audacious" | "gold-audacious" | "destructive" | "secondary" | "accent" | "ghost" | "glass-wash" | "ai" | null;
14
14
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
15
15
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
16
16
  declare const _default: typeof __VLS_export;
@@ -1,13 +1,19 @@
1
1
  import type { DialogRootProps } from 'reka-ui';
2
+ import type { Surface } from '../_shared/useSurfaceAxis';
3
+ type __VLS_Props = DialogRootProps & {
4
+ surface?: Surface;
5
+ };
2
6
  declare var __VLS_20: {};
3
7
  type __VLS_Slots = {} & {
4
8
  default?: (props: typeof __VLS_20) => any;
5
9
  };
6
- declare const __VLS_base: import("vue").DefineComponent<DialogRootProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
10
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
7
11
  "update:open": (value: boolean) => any;
8
- }, string, import("vue").PublicProps, Readonly<DialogRootProps> & Readonly<{
12
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
9
13
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
10
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
14
+ }>, {
15
+ surface: Surface;
16
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
17
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
12
18
  declare const _default: typeof __VLS_export;
13
19
  export default _default;
@@ -1,7 +1,9 @@
1
1
  import { type HTMLAttributes } from 'vue';
2
2
  import type { ComboboxContentProps } from 'reka-ui';
3
+ import { type Surface } from '../_shared/useSurfaceAxis';
3
4
  type __VLS_Props = ComboboxContentProps & {
4
5
  class?: HTMLAttributes['class'];
6
+ surface?: Surface;
5
7
  };
6
8
  declare var __VLS_8: {};
7
9
  type __VLS_Slots = {} & {
@@ -18,6 +20,7 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
18
20
  onFocusOutside?: ((event: import("reka-ui").FocusOutsideEvent) => any) | undefined;
19
21
  onInteractOutside?: ((event: import("reka-ui").PointerDownOutsideEvent | import("reka-ui").FocusOutsideEvent) => any) | undefined;
20
22
  }>, {
23
+ surface: Surface;
21
24
  disableOutsidePointerEvents: boolean;
22
25
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
23
26
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -1,7 +1,9 @@
1
1
  import { type HTMLAttributes } from 'vue';
2
2
  import { type ContextMenuContentProps } from 'reka-ui';
3
+ import { type Surface } from '../_shared/useSurfaceAxis';
3
4
  type __VLS_Props = ContextMenuContentProps & {
4
5
  class?: HTMLAttributes['class'];
6
+ surface?: Surface;
5
7
  };
6
8
  declare var __VLS_14: {};
7
9
  type __VLS_Slots = {} & {
@@ -19,7 +21,9 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
19
21
  onFocusOutside?: ((event: import("reka-ui").FocusOutsideEvent) => any) | undefined;
20
22
  onInteractOutside?: ((event: import("reka-ui").PointerDownOutsideEvent | import("reka-ui").FocusOutsideEvent) => any) | undefined;
21
23
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
22
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
24
+ }>, {
25
+ surface: Surface;
26
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
23
27
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
24
28
  declare const _default: typeof __VLS_export;
25
29
  export default _default;
@@ -51,6 +51,14 @@ type __VLS_Props = DialogContentProps & {
51
51
  * double-up. The default keeps every existing mount byte-identical.
52
52
  */
53
53
  showClose?: boolean;
54
+ /**
55
+ * BD.W-OVERLAY-STAGE-COUPLE — the scene-staging enum for the centered modal band.
56
+ * `none` (default — byte-identical to HEAD) leaves the page untouched; `dim`/
57
+ * `scale`/`immersive` flip the ONE `--stage-t` scalar 0→1 on open so the page
58
+ * RECEDES + SCALES behind the dialog (the iOS card-recede) and the scrim deepens.
59
+ * PRM degrades `scale`/`immersive` → `dim` (no page transform, fold C1·R6).
60
+ */
61
+ stage?: 'none' | 'dim' | 'scale' | 'immersive';
54
62
  };
55
63
  declare var __VLS_19: {};
56
64
  type __VLS_Slots = {} & {
@@ -73,6 +81,7 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
73
81
  }>, {
74
82
  surface: Surface;
75
83
  showClose: boolean;
84
+ stage: "none" | "dim" | "scale" | "immersive";
76
85
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
77
86
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
78
87
  declare const _default: typeof __VLS_export;
@@ -1,4 +1,4 @@
1
- import type { DrawerDirection, DrawerMode } from './index';
1
+ import type { DrawerDirection, DrawerMode, DrawerStage } from './index';
2
2
  /**
3
3
  * BB.W-DRAWER-ABROGATE — the Drawer root on the HOUSE reka `DialogRoot` substrate
4
4
  * (the SAME shape `Dialog.vue` binds). vaul-vue is gone: reka owns the open-control,
@@ -7,17 +7,31 @@ import type { DrawerDirection, DrawerMode } from './index';
7
7
  * owns the snap math vaul used to own.
8
8
  *
9
9
  * `mode` — additive shorthand (AN.W3). `"modal"` (default) keeps the iOS scale-down
10
- * look: `modal: true` (reka focus-traps + page-occludes). `"live-behind"` is the
11
- * non-modal peek/half/full bottom sheet — `modal: false` (no focus trap, no page
12
- * `aria-hidden`, page-behind stays interactive — reka delivers this natively),
13
- * `shouldScaleBackground: false`, and the direction-derived snap ladder. Every prop
14
- * the mode sets is still overridable by an explicit prop — `mode` only supplies
15
- * defaults.
10
+ * look: `modal: true` (reka focus-traps + page-occludes) + `stage: "scale"` (the page
11
+ * recedes). `"live-behind"` is the non-modal peek/half/full bottom sheet — `modal:
12
+ * false` (no focus trap, no page `aria-hidden`, page-behind stays interactive — reka
13
+ * delivers this natively), `stage: "none"`, and the direction-derived snap ladder.
14
+ * Every prop the mode sets is still overridable by an explicit prop — `mode` only
15
+ * supplies defaults.
16
16
  *
17
- * The snap props (`snapPoints`/`activeSnapPoint`/`direction`/`shouldScaleBackground`)
18
- * are HOUSE props now (they were vaul's `DrawerRootProps` surface — preserved by
19
- * shape so the consumer binding is byte-identical, but resolved by the house engine,
20
- * not forwarded to reka, which knows only `open`/`defaultOpen`/`modal`).
17
+ * The snap props (`snapPoints`/`activeSnapPoint`/`direction`) are HOUSE props now
18
+ * (they were vaul's `DrawerRootProps` surface — preserved by shape so the consumer
19
+ * binding is byte-identical, but resolved by the house engine, not forwarded to reka,
20
+ * which knows only `open`/`defaultOpen`/`modal`).
21
+ *
22
+ * BD.W-OVERLAY-STAGE-COUPLE — `stage` is the honest scene-staging enum that RETIRES
23
+ * the dead `shouldScaleBackground` boolean (clean break, no alias — the old boolean
24
+ * was read by NOTHING, `#app transform: none` at every detent):
25
+ * • `none` — no staging (the live-behind peek sheet leaves the page untouched).
26
+ * • `dim` — the scrim deepens with the detent; the page does NOT transform
27
+ * (the PRM-safe luminance-only depth cue; also the `scale` degrade).
28
+ * • `scale` — `dim` + the page RECEDES + SCALES (the iOS card-recede depth cue).
29
+ * • `immersive` — `scale` + the scrim's backdrop-blur ENGAGES (the spotlight).
30
+ * Under `prefers-reduced-motion: reduce`, `scale`/`immersive` degrade to `dim` (no
31
+ * page transform — a full-page snap-scale IS perceived motion, fold C1·R6). The enum
32
+ * toggles `data-stage-scale` / `data-stage-immersive` on the page-wrapper marker
33
+ * (`[data-stage-wrapper]`, mounted by the consumer/demo shell) while the sheet is
34
+ * open; the `--stage-t` scalar the snap engine writes at `:root` drives the couplings.
21
35
  */
22
36
  type __VLS_Props = {
23
37
  /** The controlled open state (`v-model:open`). */
@@ -34,8 +48,13 @@ type __VLS_Props = {
34
48
  activeSnapPoint?: number | string | null;
35
49
  /** Drag/slide axis (BB-2 default-ladder source). */
36
50
  direction?: DrawerDirection;
37
- /** iOS page scale-down on open (the modal look). Defaulted by `mode`. */
38
- shouldScaleBackground?: boolean;
51
+ /**
52
+ * BD.W-OVERLAY-STAGE-COUPLE — the scene-staging enum (retires the dead
53
+ * `shouldScaleBackground`). `none` leaves the page untouched (the live-behind
54
+ * default); `dim` deepens the scrim only; `scale` recedes + scales the page;
55
+ * `immersive` adds the backdrop-blur engage. Defaulted by `mode`.
56
+ */
57
+ stage?: DrawerStage;
39
58
  };
40
59
  declare var __VLS_10: {};
41
60
  type __VLS_Slots = {} & {
@@ -53,9 +72,9 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
53
72
  mode: DrawerMode;
54
73
  defaultOpen: boolean;
55
74
  modal: boolean;
75
+ stage: DrawerStage;
56
76
  snapPoints: (number | string)[];
57
77
  activeSnapPoint: number | string | null;
58
- shouldScaleBackground: boolean;
59
78
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
60
79
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
61
80
  declare const _default: typeof __VLS_export;
@@ -8,14 +8,16 @@ import type { DrawerDirection } from "./index";
8
8
  * give than the dock's crisp 0.32/0.7 box-morph). Co-located here so the pair is
9
9
  * defined ONCE rather than at the top of the composable.
10
10
  *
11
- * `response 0.4` — the angular period (≈ the swing time); a hair looser than the
12
- * dock so the sheet reads as a heavier surface settling. `dampingFraction 0.82` —
13
- * the iOS "smooth" register: sub-perceptual overshoot (a settled sheet, not a
14
- * bouncing one) while staying alive on a flung release.
11
+ * BD.W-ANIM-IOS27-TUNE — re-tuned `{0.4, 0.82}` → `{0.50, 0.74}` so the sheet-grow
12
+ * reads as inertial liquid MASS (the Maps-card reference): `response 0.50` lengthens
13
+ * the settle ~+25% (the flowing-heavy arrival) and `dampingFraction 0.74` adds a small
14
+ * ~3.2% liquid overshoot (vs the prior near-critical 0%) — the sheet settles cleanly to
15
+ * its detent WITHOUT over-shooting past the viewport (ζ ≥ 0.72 keeps overshoot ≤ ~4%).
16
+ * The fling-decision (`DRAWER_FLING_VELOCITY`) is SEPARATE + unchanged.
15
17
  */
16
18
  export declare const DRAWER_SNAP: {
17
- readonly response: 0.4;
18
- readonly dampingFraction: 0.82;
19
+ readonly response: 0.5;
20
+ readonly dampingFraction: 0.74;
19
21
  };
20
22
  /**
21
23
  * BB-2 (the direction-aware default snap ladder fold) — the peek/half/full detent
@@ -12,10 +12,20 @@ export type DrawerDirection = "top" | "bottom" | "left" | "right";
12
12
  * focus-trapped (reka `:modal="true"`), page-behind scaled. `"live-behind"` is the
13
13
  * non-modal peek/half/full bottom sheet — reka `:modal="false"` (no focus trap, no
14
14
  * page `aria-hidden`, page-behind at native size + interactive) — bundling the
15
- * `modal:false` + `shouldScaleBackground:false` + the direction-derived snap ladder.
16
- * Explicit props still override the mode's defaults.
15
+ * `modal:false` + `stage:"none"` + the direction-derived snap ladder. Explicit props
16
+ * still override the mode's defaults.
17
17
  */
18
18
  export type DrawerMode = "modal" | "live-behind";
19
+ /**
20
+ * BD.W-OVERLAY-STAGE-COUPLE — the scene-staging enum (retires the dead
21
+ * `shouldScaleBackground` boolean, clean break). `none` leaves the page untouched;
22
+ * `dim` deepens the scrim only (the PRM-safe luminance depth cue); `scale` recedes +
23
+ * scales the page (the iOS card-recede); `immersive` adds the backdrop-blur engage.
24
+ * `modal` defaults to `scale`; `live-behind` to `none`. PRM degrades `scale`/
25
+ * `immersive` to `dim`. All four couplings ride the ONE `--stage-t` scalar the snap
26
+ * engine writes at `:root`.
27
+ */
28
+ export type DrawerStage = "none" | "dim" | "scale" | "immersive";
19
29
  export { default as Drawer } from "./Drawer.vue";
20
30
  export { default as DrawerOverlay } from "./DrawerOverlay.vue";
21
31
  export { default as DrawerContent } from "./DrawerContent.vue";
@@ -1,7 +1,9 @@
1
1
  import { type HTMLAttributes } from 'vue';
2
2
  import { type DropdownMenuContentProps } from 'reka-ui';
3
+ import { type Surface } from '../_shared/useSurfaceAxis';
3
4
  type __VLS_Props = DropdownMenuContentProps & {
4
5
  class?: HTMLAttributes['class'];
6
+ surface?: Surface;
5
7
  };
6
8
  declare var __VLS_14: {};
7
9
  type __VLS_Slots = {} & {
@@ -20,6 +22,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
20
22
  onInteractOutside?: ((event: import("reka-ui").PointerDownOutsideEvent | import("reka-ui").FocusOutsideEvent) => any) | undefined;
21
23
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
22
24
  }>, {
25
+ align: "start" | "center" | "end";
26
+ surface: Surface;
23
27
  sideOffset: number;
24
28
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
25
29
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;