@mkbabb/glass-ui 6.0.0 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1192) hide show
  1. package/README.md +40 -37
  2. package/dist/DialogContent-4hzLiaCQ.js +152 -0
  3. package/dist/DotRing-Blh4Mc3Q.js +27 -0
  4. package/dist/DropdownMenuTrigger-8UZsBtZ8.js +93 -0
  5. package/dist/Surface-i1tWC-Ga.js +48 -0
  6. package/dist/accent-tone-solve-Cw7WkRD9.js +14 -0
  7. package/dist/asElement-CRnm6A2v.js +9 -0
  8. package/dist/aurora.d.ts +1 -1
  9. package/dist/aurora.js +832 -767
  10. package/dist/axes.d.ts +1 -1
  11. package/dist/axes.js +16 -26
  12. package/dist/badge-owUOaaba.js +63 -0
  13. package/dist/badge.d.ts +1 -1
  14. package/dist/badge.js +2 -2
  15. package/dist/blob-config.d.ts +1 -1
  16. package/dist/blob-config.js +1 -1
  17. package/dist/blob.d.ts +1 -1
  18. package/dist/blob.js +442 -395
  19. package/dist/button-yvGPb0Bx.js +110 -0
  20. package/dist/button.d.ts +1 -1
  21. package/dist/button.js +2 -2
  22. package/dist/canvas.d.ts +1 -1
  23. package/dist/canvas.js +2 -2
  24. package/dist/card-3HFFpC7_.js +190 -0
  25. package/dist/card.d.ts +1 -1
  26. package/dist/card.js +2 -2
  27. package/dist/carousel.d.ts +1 -1
  28. package/dist/carousel.js +191 -239
  29. package/dist/checkbox-BnXuGgJ3.js +64 -0
  30. package/dist/checkbox.d.ts +1 -0
  31. package/dist/checkbox.js +2 -0
  32. package/dist/chip.d.ts +1 -1
  33. package/dist/chip.js +101 -53
  34. package/dist/{class-names-5jotTFzp.js → class-names-q-UGOkHH.js} +26 -5
  35. package/dist/collapsible-B7O6m-Ch.js +154 -0
  36. package/dist/collapsible.d.ts +1 -1
  37. package/dist/collapsible.js +1 -1
  38. package/dist/color.d.ts +1 -1
  39. package/dist/color.js +46 -50
  40. package/dist/{procedural-color.wgsl-B9mLK7v0.js → color.wgsl-B0N3mKMb.js} +200 -165
  41. package/dist/command-BuBnYpxF.js +340 -0
  42. package/dist/command.d.ts +1 -1
  43. package/dist/command.js +1 -1
  44. package/dist/component-styles.css +4 -0
  45. package/dist/components/_shared/axes.d.ts +13 -4
  46. package/dist/components/_shared/class-names.d.ts +10 -9
  47. package/dist/components/_shared/control.d.ts +11 -0
  48. package/dist/components/_shared/disclosure/disclosure-context.d.ts +7 -0
  49. package/dist/components/_shared/feedback/DotRing.vue.d.ts +3 -0
  50. package/dist/components/_shared/feedback/dot-ring.css +1 -0
  51. package/dist/components/_shared/feedback/feedback-tone.css +1 -0
  52. package/dist/components/_shared/field/control.d.ts +13 -0
  53. package/dist/components/_shared/focus.d.ts +11 -0
  54. package/dist/components/_shared/index.d.ts +2 -6
  55. package/dist/components/_shared/interaction.d.ts +23 -0
  56. package/dist/components/_shared/menu/menu.css +1 -0
  57. package/dist/components/_shared/menu/rowClass.d.ts +2 -0
  58. package/dist/components/_shared/overlay/content.d.ts +40 -0
  59. package/dist/components/_shared/overlay/index.d.ts +12 -0
  60. package/dist/components/{dock/composables → _shared/overlay}/isTeleportedTarget.d.ts +5 -0
  61. package/dist/components/_shared/overlay/participation.d.ts +66 -0
  62. package/dist/components/_shared/overlay/placement.d.ts +22 -0
  63. package/dist/components/_shared/primitive.d.ts +19 -0
  64. package/dist/components/_shared/selection.d.ts +46 -0
  65. package/dist/components/_shared/surface/resolve.d.ts +17 -0
  66. package/dist/components/_shared/useMotionAxis.d.ts +3 -8
  67. package/dist/components/accordion/Accordion.vue.d.ts +41 -16
  68. package/dist/components/accordion/AccordionContent.vue.d.ts +11 -9
  69. package/dist/components/accordion/AccordionItem.vue.d.ts +12 -9
  70. package/dist/components/accordion/AccordionTrigger.vue.d.ts +8 -11
  71. package/dist/components/accordion/index.d.ts +4 -4
  72. package/dist/components/alert/Alert.vue.d.ts +9 -5
  73. package/dist/components/alert/AlertDescription.vue.d.ts +2 -2
  74. package/dist/components/alert/AlertTitle.vue.d.ts +2 -2
  75. package/dist/components/alert/index.d.ts +17 -8
  76. package/dist/components/aurora/Aurora.vue.d.ts +41 -46
  77. package/dist/components/aurora/composables/atoms-fields.d.ts +13 -2
  78. package/dist/components/aurora/composables/atoms.d.ts +54 -52
  79. package/dist/components/aurora/composables/auroraFallbackGround.d.ts +14 -14
  80. package/dist/components/aurora/composables/auroraImageSource.d.ts +6 -7
  81. package/dist/components/aurora/composables/color.d.ts +18 -24
  82. package/dist/components/aurora/composables/frameLoop.d.ts +17 -14
  83. package/dist/components/aurora/composables/glSetup.d.ts +19 -7
  84. package/dist/components/aurora/composables/runtime.d.ts +58 -62
  85. package/dist/{composables/glass → components/aurora/composables}/textureUpload.d.ts +8 -23
  86. package/dist/components/aurora/composables/uniformBridge.d.ts +11 -33
  87. package/dist/components/aurora/composables/uniformBridgeWGPU.d.ts +23 -24
  88. package/dist/components/aurora/composables/uniformBridgeWGPUImage.d.ts +15 -15
  89. package/dist/components/aurora/composables/useAurora.d.ts +23 -34
  90. package/dist/components/aurora/composables/useCursorInteraction.d.ts +2 -2
  91. package/dist/components/aurora/composables/wgpuSetup.d.ts +14 -12
  92. package/dist/components/aurora/constants/budget.d.ts +5 -54
  93. package/dist/components/aurora/constants/presets.d.ts +49 -60
  94. package/dist/components/aurora/constants/renderMode.d.ts +21 -36
  95. package/dist/components/aurora/constants/shaders/aurora-image.frag.d.ts +0 -2
  96. package/dist/components/aurora/constants/shaders/aurora-image.wgsl.d.ts +1 -3
  97. package/dist/components/aurora/constants/shaders/aurora-mediums.wgsl.d.ts +1 -1
  98. package/dist/components/aurora/constants/shaders/aurora.wgsl.d.ts +1 -1
  99. package/dist/components/aurora/constants/shaders/brush.glsl.d.ts +1 -1
  100. package/dist/components/aurora/constants/shaders/composition.glsl.d.ts +1 -1
  101. package/dist/components/aurora/constants/shaders/flow.glsl.d.ts +1 -1
  102. package/dist/components/aurora/constants/shaders/metal-medium.glsl.d.ts +2 -2
  103. package/dist/components/aurora/constants/shaders/oil-modes.glsl.d.ts +1 -1
  104. package/dist/components/aurora/constants/shaders/vangogh-medium.glsl.d.ts +1 -1
  105. package/dist/components/aurora/index.d.ts +15 -13
  106. package/dist/components/avatar/Avatar.vue.d.ts +72 -11
  107. package/dist/components/avatar/AvatarFallback.vue.d.ts +1 -2
  108. package/dist/components/avatar/AvatarImage.vue.d.ts +7 -8
  109. package/dist/components/avatar/index.d.ts +3 -9
  110. package/dist/components/badge/Badge.vue.d.ts +3 -17
  111. package/dist/components/badge/index.d.ts +33 -9
  112. package/dist/components/blob/Blob.vue.d.ts +8 -15
  113. package/dist/components/blob/composables/blobSimulation.d.ts +80 -0
  114. package/dist/components/blob/composables/buildMetaballProgram.d.ts +1 -1
  115. package/dist/components/blob/composables/resolveBlobSurface.d.ts +6 -0
  116. package/dist/components/blob/composables/satelliteKinematics.d.ts +4 -4
  117. package/dist/components/blob/composables/uniformBridgeWGPU.d.ts +4 -4
  118. package/dist/components/blob/composables/uploadBlobUniforms.d.ts +7 -34
  119. package/dist/components/blob/composables/useBlobMood.d.ts +6 -6
  120. package/dist/components/blob/composables/useBlobPointer.d.ts +11 -15
  121. package/dist/components/blob/composables/useBlobSatellites.d.ts +1 -1
  122. package/dist/components/blob/composables/useMetaballRenderer.d.ts +32 -29
  123. package/dist/components/blob/composables/wgpuSetup.d.ts +10 -8
  124. package/dist/components/blob/config.d.ts +3 -3
  125. package/dist/components/blob/constants.d.ts +1 -3
  126. package/dist/components/blob/index.d.ts +8 -8
  127. package/dist/components/blob/presets.d.ts +3 -3
  128. package/dist/components/blob/shaders/metaball-palette.wgsl.d.ts +1 -1
  129. package/dist/components/blob/shaders/metaball-uniforms.glsl.d.ts +1 -1
  130. package/dist/components/blob/shaders/metaball.wgsl.d.ts +1 -1
  131. package/dist/components/blob/shaders/sdf-body.glsl.d.ts +1 -1
  132. package/dist/components/blob/shaders/watercolor-edges.glsl.d.ts +1 -1
  133. package/dist/components/blob/types.d.ts +28 -60
  134. package/dist/components/button/Button.vue.d.ts +32 -20
  135. package/dist/components/button/index.d.ts +1 -9
  136. package/dist/components/button/styles.css +1 -0
  137. package/dist/components/card/Card.vue.d.ts +24 -162
  138. package/dist/components/card/CardContent.vue.d.ts +2 -2
  139. package/dist/components/card/CardDescription.vue.d.ts +2 -2
  140. package/dist/components/card/CardFooter.vue.d.ts +2 -2
  141. package/dist/components/card/CardHeader.vue.d.ts +8 -40
  142. package/dist/components/card/CardTitle.vue.d.ts +6 -3
  143. package/dist/components/card/index.d.ts +6 -9
  144. package/dist/components/card/scroll.css +1 -0
  145. package/dist/components/card/styles.css +1 -1
  146. package/dist/components/carousel/Carousel.vue.d.ts +14 -19
  147. package/dist/components/carousel/CarouselContent.vue.d.ts +2 -12
  148. package/dist/components/carousel/CarouselItem.vue.d.ts +14 -3
  149. package/dist/components/carousel/CarouselPager.vue.d.ts +2 -2
  150. package/dist/components/carousel/index.d.ts +7 -8
  151. package/dist/components/carousel/projection.d.ts +23 -0
  152. package/dist/components/carousel/styles.css +1 -0
  153. package/dist/components/carousel/types.d.ts +47 -0
  154. package/dist/components/carousel/useCarousel.d.ts +4 -21
  155. package/dist/components/checkbox/Checkbox.vue.d.ts +17 -9
  156. package/dist/components/checkbox/index.d.ts +1 -1
  157. package/dist/components/chip/Chip.vue.d.ts +12 -7
  158. package/dist/components/chip/accent-tone.css +1 -0
  159. package/dist/components/chip/chipVariants.d.ts +20 -43
  160. package/dist/components/chip/index.d.ts +3 -3
  161. package/dist/components/chip/types.d.ts +46 -31
  162. package/dist/components/collapsible/Collapsible.vue.d.ts +22 -9
  163. package/dist/components/collapsible/CollapsibleContent.vue.d.ts +11 -5
  164. package/dist/components/collapsible/CollapsibleTrigger.vue.d.ts +12 -9
  165. package/dist/components/collapsible/index.d.ts +3 -3
  166. package/dist/components/command/Command.vue.d.ts +11 -23
  167. package/dist/components/command/CommandDialog.vue.d.ts +10 -11
  168. package/dist/components/command/CommandEmpty.vue.d.ts +2 -6
  169. package/dist/components/command/CommandGroup.vue.d.ts +2 -7
  170. package/dist/components/command/CommandInput.vue.d.ts +6 -7
  171. package/dist/components/command/CommandItem.vue.d.ts +7 -11
  172. package/dist/components/command/CommandList.vue.d.ts +12 -19
  173. package/dist/components/command/CommandSeparator.vue.d.ts +2 -6
  174. package/dist/components/command/CommandShortcut.vue.d.ts +2 -2
  175. package/dist/components/command/index.d.ts +11 -10
  176. package/dist/components/command/types.d.ts +32 -0
  177. package/dist/components/configurator/Configurator.vue.d.ts +7 -7
  178. package/dist/components/configurator/ConfiguratorLayer.vue.d.ts +14 -18
  179. package/dist/components/configurator/ConfiguratorRow.vue.d.ts +15 -18
  180. package/dist/components/configurator/index.d.ts +6 -6
  181. package/dist/components/configurator/size.d.ts +5 -7
  182. package/dist/components/configurator/styles.css +1 -1
  183. package/dist/components/configurator/useConfiguratorState.d.ts +1 -1
  184. package/dist/components/constellation/Constellation.vue.d.ts +4 -6
  185. package/dist/components/constellation/composables/createConstellationField.d.ts +3 -3
  186. package/dist/components/constellation/composables/useConstellation.d.ts +2 -2
  187. package/dist/components/constellation/constants.d.ts +9 -9
  188. package/dist/components/constellation/constellationField.d.ts +8 -10
  189. package/dist/components/constellation/constellationInteraction.d.ts +9 -13
  190. package/dist/components/constellation/constellationRender.d.ts +1 -3
  191. package/dist/components/constellation/constellationTypes.d.ts +51 -63
  192. package/dist/components/constellation/constellationWell.d.ts +3 -3
  193. package/dist/components/constellation/index.d.ts +8 -6
  194. package/dist/components/dark-mode-toggle/DarkModeToggle.vue.d.ts +12 -0
  195. package/dist/components/dark-mode-toggle/dark-mode-toggle.css +1 -0
  196. package/dist/components/dark-mode-toggle/index.d.ts +2 -0
  197. package/dist/components/data-table/DataTable.vue.d.ts +11 -59
  198. package/dist/components/data-table/composables/useDataTableResponsive.d.ts +1 -1
  199. package/dist/components/data-table/composables/useDataTableRowIdentity.d.ts +5 -23
  200. package/dist/components/data-table/index.d.ts +2 -2
  201. package/dist/components/data-table/types.d.ts +10 -12
  202. package/dist/components/{card/CardAction.vue.d.ts → deck/DeckSlide.vue.d.ts} +12 -8
  203. package/dist/components/deck/DeckStage.vue.d.ts +36 -0
  204. package/dist/components/deck/composables/useDeck.d.ts +35 -10
  205. package/dist/components/deck/composables/useDeckCapture.d.ts +26 -0
  206. package/dist/components/deck/composables/useDeckHashSync.d.ts +8 -0
  207. package/dist/components/deck/composables/useDeckKeyboard.d.ts +16 -8
  208. package/dist/components/deck/composables/useDeckSnap.d.ts +20 -0
  209. package/dist/components/deck/composables/useDeckSwipe.d.ts +13 -0
  210. package/dist/components/deck/composables/useEdgeZones.d.ts +14 -0
  211. package/dist/components/deck/constants.d.ts +0 -3
  212. package/dist/components/deck/index.d.ts +22 -7
  213. package/dist/components/deck/slideContext.d.ts +21 -0
  214. package/dist/components/deck/styles/capture.css +1 -0
  215. package/dist/components/deck/styles/index.css +1 -0
  216. package/dist/components/deck/styles/reveal.css +1 -0
  217. package/dist/components/deck/styles/stage.css +1 -0
  218. package/dist/components/deck/styles/turn.css +1 -0
  219. package/dist/components/deck/types.d.ts +26 -0
  220. package/dist/components/deck/window.d.ts +27 -0
  221. package/dist/components/dialog/Dialog.vue.d.ts +21 -3
  222. package/dist/components/dialog/DialogContent.vue.d.ts +32 -99
  223. package/dist/components/dialog/DialogDescription.vue.d.ts +5 -6
  224. package/dist/components/dialog/DialogFooter.vue.d.ts +2 -2
  225. package/dist/components/dialog/DialogHeader.vue.d.ts +2 -2
  226. package/dist/components/dialog/DialogTitle.vue.d.ts +5 -6
  227. package/dist/components/dialog/ModalOverlay.vue.d.ts +66 -0
  228. package/dist/components/dialog/index.d.ts +7 -8
  229. package/dist/components/dialog/styles.css +1 -0
  230. package/dist/components/dock/DockControl.vue.d.ts +15 -14
  231. package/dist/components/dock/DockCrossfade.vue.d.ts +6 -10
  232. package/dist/components/dock/DockLayer.vue.d.ts +3 -4
  233. package/dist/components/dock/DockLayerGroup.vue.d.ts +18 -18
  234. package/dist/components/dock/DockSeparator.vue.d.ts +25 -20
  235. package/dist/components/dock/GlassDock.vue.d.ts +4 -4
  236. package/dist/components/dock/composables/dockContext.d.ts +33 -19
  237. package/dist/components/dock/composables/dockCrossfadeContext.d.ts +10 -11
  238. package/dist/components/dock/composables/dockMorphMeasure.d.ts +7 -87
  239. package/dist/components/dock/composables/dockSwitcherContext.d.ts +29 -0
  240. package/dist/components/dock/composables/index.d.ts +10 -10
  241. package/dist/components/dock/composables/useDockClickIntegrity.d.ts +1 -1
  242. package/dist/components/dock/composables/useDockHold.d.ts +24 -10
  243. package/dist/components/dock/composables/useDockMorph.d.ts +26 -0
  244. package/dist/components/dock/composables/useDockOverflowFit.d.ts +4 -6
  245. package/dist/components/dock/composables/useDockSearch.d.ts +12 -12
  246. package/dist/components/dock/composables/useDockShellProps.d.ts +44 -65
  247. package/dist/components/dock/composables/useDockSpring.d.ts +7 -11
  248. package/dist/components/dock/composables/useDockState.d.ts +28 -6
  249. package/dist/components/dock/composables/useDockTouchGate.d.ts +14 -23
  250. package/dist/components/dock/constants.d.ts +21 -80
  251. package/dist/components/dock/index.d.ts +15 -20
  252. package/dist/components/dock/styles/adaptive-legibility.css +1 -1
  253. package/dist/components/dock/styles/controls/icon-button.css +1 -1
  254. package/dist/components/dock/styles/controls/tab-button.css +1 -1
  255. package/dist/components/dock/styles/controls/touch-floor.css +1 -1
  256. package/dist/components/dock/styles/controls/triggers.css +1 -1
  257. package/dist/components/dock/styles/controls.css +1 -1
  258. package/dist/components/dock/styles/crossfade.css +1 -1
  259. package/dist/components/dock/styles/cta-seat.css +1 -1
  260. package/dist/components/dock/styles/density.css +1 -1
  261. package/dist/components/dock/styles/dock.css +1 -1
  262. package/dist/components/dock/styles/index.css +1 -1
  263. package/dist/components/dock/styles/layer-group.css +1 -1
  264. package/dist/components/dock/styles/layers.css +1 -1
  265. package/dist/components/dock/styles/morph.css +1 -1
  266. package/dist/components/dock/styles/overflow.css +1 -1
  267. package/dist/components/dock/styles/search.css +1 -1
  268. package/dist/components/dock/styles/shape.css +1 -1
  269. package/dist/components/dock/styles/shell-regions.css +1 -1
  270. package/dist/components/dock/styles/shell.css +1 -1
  271. package/dist/components/easing/EasingCurve.vue.d.ts +51 -0
  272. package/dist/components/easing/EasingPicker.vue.d.ts +16 -32
  273. package/dist/components/easing/constants.d.ts +16 -14
  274. package/dist/components/easing/index.d.ts +5 -3
  275. package/dist/components/easing/{composables/useEasingPicker.d.ts → usePicker.d.ts} +31 -30
  276. package/dist/components/expandable-container/ExpandableContainer.vue.d.ts +1 -25
  277. package/dist/components/expandable-container/index.d.ts +1 -1
  278. package/dist/components/fading-scroll/FadingScroll.vue.d.ts +4 -0
  279. package/dist/components/fading-scroll/composables/useFadingScroll.d.ts +4 -0
  280. package/dist/components/fading-scroll/constants.d.ts +2 -10
  281. package/dist/components/fading-scroll/index.d.ts +2 -2
  282. package/dist/components/fourier-field/FourierField.vue.d.ts +9 -13
  283. package/dist/components/fourier-field/composables/fourierFieldGLSetup.d.ts +5 -5
  284. package/dist/components/fourier-field/composables/fourierFieldWGPUSetup.d.ts +5 -5
  285. package/dist/components/fourier-field/composables/uniformBridgeWGPU.d.ts +2 -4
  286. package/dist/components/fourier-field/composables/useFourierField.d.ts +8 -8
  287. package/dist/components/fourier-field/constants.d.ts +11 -11
  288. package/dist/components/fourier-field/index.d.ts +10 -12
  289. package/dist/components/fourier-field/shaders/fourier-field.glsl.d.ts +2 -2
  290. package/dist/components/fourier-field/shaders/fourier-field.render.wgsl.d.ts +1 -1
  291. package/dist/components/handmark/HandMark.vue.d.ts +6 -6
  292. package/dist/components/handmark/brush.d.ts +1 -1
  293. package/dist/components/handmark/composables/useHandMark.d.ts +8 -8
  294. package/dist/components/handmark/constants.d.ts +10 -10
  295. package/dist/components/handmark/geometry.d.ts +9 -12
  296. package/dist/components/handmark/index.d.ts +17 -16
  297. package/dist/components/handmark/ink.d.ts +1 -1
  298. package/dist/components/handmark/noise.d.ts +3 -3
  299. package/dist/components/handmark/texture.d.ts +2 -2
  300. package/dist/components/handmark/types.d.ts +3 -3
  301. package/dist/components/index.d.ts +30 -35
  302. package/dist/components/infinite-scroll/InfiniteScroll.vue.d.ts +3 -3
  303. package/dist/components/infinite-scroll/composables/index.d.ts +2 -2
  304. package/dist/components/infinite-scroll/composables/types.d.ts +1 -1
  305. package/dist/components/infinite-scroll/composables/useInfiniteScroll.d.ts +1 -1
  306. package/dist/components/infinite-scroll/index.d.ts +2 -2
  307. package/dist/components/input/Input.vue.d.ts +15 -35
  308. package/dist/components/input/index.d.ts +3 -1
  309. package/dist/components/input/types.d.ts +62 -0
  310. package/dist/components/label/Label.vue.d.ts +9 -14
  311. package/dist/components/label/index.d.ts +1 -1
  312. package/dist/components/labeled-field/LabeledField.vue.d.ts +10 -108
  313. package/dist/components/labeled-field/LabeledInput.vue.d.ts +3 -23
  314. package/dist/components/labeled-field/LabeledSlider.vue.d.ts +12 -18
  315. package/dist/components/labeled-field/LabeledSwitch.vue.d.ts +14 -17
  316. package/dist/components/labeled-field/index.d.ts +5 -5
  317. package/dist/components/labeled-field/types.d.ts +41 -0
  318. package/dist/components/menu/DropdownMenu.vue.d.ts +51 -0
  319. package/dist/components/menu/DropdownMenuCheckboxItem.vue.d.ts +33 -0
  320. package/dist/components/menu/DropdownMenuContent.vue.d.ts +42 -0
  321. package/dist/components/{dropdown-menu → menu}/DropdownMenuGroup.vue.d.ts +6 -4
  322. package/dist/components/menu/DropdownMenuItem.vue.d.ts +31 -0
  323. package/dist/components/menu/DropdownMenuLabel.vue.d.ts +19 -0
  324. package/dist/components/{dropdown-menu → menu}/DropdownMenuRadioGroup.vue.d.ts +13 -6
  325. package/dist/components/menu/DropdownMenuRadioItem.vue.d.ts +29 -0
  326. package/dist/components/menu/DropdownMenuSeparator.vue.d.ts +7 -0
  327. package/dist/components/menu/DropdownMenuShortcut.vue.d.ts +16 -0
  328. package/dist/components/{dropdown-menu → menu}/DropdownMenuSub.vue.d.ts +15 -7
  329. package/dist/components/menu/DropdownMenuSubContent.vue.d.ts +41 -0
  330. package/dist/components/menu/DropdownMenuSubTrigger.vue.d.ts +20 -0
  331. package/dist/components/menu/DropdownMenuTrigger.vue.d.ts +27 -0
  332. package/dist/components/menu/context.d.ts +7 -0
  333. package/dist/components/menu/index.d.ts +15 -0
  334. package/dist/components/metric/Metric.vue.d.ts +26 -0
  335. package/dist/components/metric/MetricRow.vue.d.ts +14 -0
  336. package/dist/components/metric/MetricStack.vue.d.ts +16 -0
  337. package/dist/components/metric/coalesce-metric.d.ts +31 -24
  338. package/dist/components/metric/index.d.ts +6 -0
  339. package/dist/components/metric/styles.css +1 -0
  340. package/dist/components/metric/types.d.ts +44 -0
  341. package/dist/components/music-staff/MusicStaff.vue.d.ts +22 -0
  342. package/dist/components/music-staff/glyphs.d.ts +74 -0
  343. package/dist/components/music-staff/index.d.ts +4 -0
  344. package/dist/components/music-staff/midiAdapter.d.ts +22 -0
  345. package/dist/components/music-staff/staffGeometry.d.ts +216 -0
  346. package/dist/components/music-staff/styles.css +1 -0
  347. package/dist/components/number-field/NumberField.vue.d.ts +27 -10
  348. package/dist/components/number-field/NumberFieldInput.vue.d.ts +1 -6
  349. package/dist/components/number-field/NumberFieldStep.vue.d.ts +31 -0
  350. package/dist/components/number-field/context.d.ts +10 -0
  351. package/dist/components/number-field/index.d.ts +3 -5
  352. package/dist/components/pager-dots/PagerDots.vue.d.ts +22 -10
  353. package/dist/components/pager-dots/index.d.ts +3 -4
  354. package/dist/components/pager-dots/worm.d.ts +42 -0
  355. package/dist/components/popover/Popover.vue.d.ts +45 -35
  356. package/dist/components/popover/PopoverContent.vue.d.ts +27 -30
  357. package/dist/components/popover/PopoverTrigger.vue.d.ts +12 -7
  358. package/dist/components/popover/index.d.ts +3 -3
  359. package/dist/components/popover/popoverContext.d.ts +13 -4
  360. package/dist/components/progress/Progress.vue.d.ts +6 -14
  361. package/dist/components/progress/index.d.ts +2 -1
  362. package/dist/components/progress/types.d.ts +29 -0
  363. package/dist/components/radio-group/RadioGroup.vue.d.ts +25 -15
  364. package/dist/components/radio-group/RadioGroupItem.vue.d.ts +10 -6
  365. package/dist/components/radio-group/index.d.ts +4 -2
  366. package/dist/components/scroll-progress-rim/ScrollProgressRim.vue.d.ts +2 -14
  367. package/dist/components/scroll-progress-rim/index.d.ts +2 -3
  368. package/dist/components/scroll-progress-rim/styles.css +1 -1
  369. package/dist/components/scroll-progress-rim/types.d.ts +20 -2
  370. package/dist/components/search/SearchBar.vue.d.ts +4 -4
  371. package/dist/components/search/composables/fuzzySearchIndex.d.ts +1 -1
  372. package/dist/components/search/composables/index.d.ts +5 -5
  373. package/dist/components/search/composables/useFuzzySearch.d.ts +1 -1
  374. package/dist/components/search/index.d.ts +8 -9
  375. package/dist/components/search/searchVariants.d.ts +15 -18
  376. package/dist/components/select/Select.vue.d.ts +25 -14
  377. package/dist/components/select/SelectContent.vue.d.ts +24 -32
  378. package/dist/components/select/SelectGroup.vue.d.ts +7 -11
  379. package/dist/components/select/SelectItem.vue.d.ts +24 -13
  380. package/dist/components/select/SelectLabel.vue.d.ts +7 -11
  381. package/dist/components/select/SelectScrollButton.vue.d.ts +18 -0
  382. package/dist/components/select/SelectSeparator.vue.d.ts +5 -6
  383. package/dist/components/select/SelectTrigger.vue.d.ts +8 -41
  384. package/dist/components/select/SelectValue.vue.d.ts +11 -7
  385. package/dist/components/select/index.d.ts +18 -8
  386. package/dist/components/separator/Separator.vue.d.ts +11 -6
  387. package/dist/components/separator/index.d.ts +1 -1
  388. package/dist/components/sheet/SheetContent.vue.d.ts +60 -0
  389. package/dist/components/sheet/detents/projection.d.ts +42 -0
  390. package/dist/components/sheet/detents/use.d.ts +27 -0
  391. package/dist/components/sheet/index.d.ts +4 -0
  392. package/dist/components/sheet/motion.d.ts +29 -0
  393. package/dist/components/sheet/styles.css +1 -0
  394. package/dist/components/skeleton/Skeleton.vue.d.ts +3 -31
  395. package/dist/components/skeleton/index.d.ts +1 -1
  396. package/dist/components/slider/Slider.vue.d.ts +10 -38
  397. package/dist/components/slider/index.d.ts +2 -46
  398. package/dist/components/slider/styles.css +1 -0
  399. package/dist/components/slider/types.d.ts +34 -0
  400. package/dist/components/sortable-list/SortableItem.vue.d.ts +1 -1
  401. package/dist/components/sortable-list/SortableList.vue.d.ts +2 -3
  402. package/dist/components/sortable-list/context.d.ts +1 -1
  403. package/dist/components/sortable-list/drag.d.ts +52 -0
  404. package/dist/components/sortable-list/ghost.d.ts +40 -0
  405. package/dist/components/sortable-list/index.d.ts +4 -4
  406. package/dist/components/sortable-list/motion.d.ts +75 -0
  407. package/dist/components/sortable-list/resolve.d.ts +56 -0
  408. package/dist/components/sortable-list/{composables/types.d.ts → types.d.ts} +14 -7
  409. package/dist/components/sortable-list/{composables/useSortable.d.ts → useSortable.d.ts} +2 -4
  410. package/dist/components/status-dot/StatusDot.vue.d.ts +14 -10
  411. package/dist/components/status-dot/index.d.ts +3 -1
  412. package/dist/components/status-dot/states.d.ts +4 -0
  413. package/dist/components/surface/Surface.vue.d.ts +33 -24
  414. package/dist/components/surface/index.d.ts +2 -2
  415. package/dist/components/switch/Switch.vue.d.ts +15 -11
  416. package/dist/components/switch/index.d.ts +2 -1
  417. package/dist/components/table/Table.vue.d.ts +1 -1
  418. package/dist/components/table/index.d.ts +8 -8
  419. package/dist/components/tabs/SegmentedTabs.vue.d.ts +28 -24
  420. package/dist/components/tabs/composables/useTabDragMorph.d.ts +7 -7
  421. package/dist/components/tabs/composables/useTabResponsive.d.ts +6 -7
  422. package/dist/components/tabs/composables/useTabRovingFocus.d.ts +31 -23
  423. package/dist/components/tabs/index.d.ts +2 -2
  424. package/dist/components/tabs/styles/drag.css +1 -1
  425. package/dist/components/tabs/styles/segmented.css +1 -1
  426. package/dist/components/textarea/Textarea.vue.d.ts +14 -54
  427. package/dist/components/textarea/index.d.ts +2 -1
  428. package/dist/components/textarea/types.d.ts +45 -0
  429. package/dist/components/timeline/Timeline.vue.d.ts +41 -0
  430. package/dist/components/timeline/geometry.d.ts +53 -79
  431. package/dist/components/timeline/index.d.ts +2 -2
  432. package/dist/components/timeline/types.d.ts +42 -42
  433. package/dist/components/toast/Toast.vue.d.ts +39 -81
  434. package/dist/components/toast/ToastAction.vue.d.ts +5 -5
  435. package/dist/components/toast/ToastClose.vue.d.ts +4 -5
  436. package/dist/components/toast/ToastDescription.vue.d.ts +4 -5
  437. package/dist/components/toast/ToastTitle.vue.d.ts +4 -5
  438. package/dist/components/toast/Toaster.vue.d.ts +1 -1
  439. package/dist/components/toast/index.d.ts +8 -9
  440. package/dist/components/toast/use-toast.d.ts +27 -163
  441. package/dist/components/toggle-group/ToggleGroup.vue.d.ts +25 -14
  442. package/dist/components/toggle-group/ToggleGroupItem.vue.d.ts +14 -12
  443. package/dist/components/toggle-group/context.d.ts +28 -0
  444. package/dist/components/toggle-group/index.d.ts +2 -2
  445. package/dist/components/tooltip/Tooltip.vue.d.ts +20 -7
  446. package/dist/components/tooltip/TooltipContent.vue.d.ts +16 -13
  447. package/dist/components/tooltip/TooltipProvider.vue.d.ts +12 -5
  448. package/dist/components/tooltip/TooltipTrigger.vue.d.ts +12 -5
  449. package/dist/components/tooltip/index.d.ts +4 -4
  450. package/dist/components/typewriter/TypewriterText.vue.d.ts +12 -32
  451. package/dist/components/typewriter/composables/useTypewriter.d.ts +2 -1
  452. package/dist/components/typewriter/index.d.ts +7 -7
  453. package/dist/components/typewriter/types.d.ts +1 -1
  454. package/dist/components/typewriter/utils/timing.d.ts +1 -3
  455. package/dist/components/typewriter/utils/typoStateMachine.d.ts +1 -1
  456. package/dist/composables/color/accent-tone-solve.d.ts +3 -6
  457. package/dist/composables/color/index.d.ts +36 -43
  458. package/dist/composables/color/useAccentTone.d.ts +0 -3
  459. package/dist/composables/color/value.d.ts +21 -0
  460. package/dist/composables/context/createContext.d.ts +2 -2
  461. package/dist/composables/context/index.d.ts +1 -1
  462. package/dist/composables/dark/index.d.ts +5 -5
  463. package/dist/composables/dark/useGlobalDark.d.ts +7 -6
  464. package/dist/composables/dom/index.d.ts +10 -10
  465. package/dist/composables/dom/useBreakpoint.d.ts +2 -2
  466. package/dist/composables/dom/useClipboard.d.ts +28 -52
  467. package/dist/composables/dom/useDocumentVisibility.d.ts +3 -1
  468. package/dist/composables/dom/useDragVelocity.d.ts +7 -0
  469. package/dist/composables/dom/useIdleReady.d.ts +5 -6
  470. package/dist/composables/dom/useTokenColor.d.ts +2 -2
  471. package/dist/composables/dom/useUserInvalidAria.d.ts +2 -3
  472. package/dist/composables/dom/useViewportReady.d.ts +4 -4
  473. package/dist/composables/glass/backdropLuminanceSample.d.ts +23 -24
  474. package/dist/composables/glass/backdropSampleMath.d.ts +10 -0
  475. package/dist/composables/glass/canvas2d/index.d.ts +3 -3
  476. package/dist/composables/glass/canvas2d/useCanvas2D.d.ts +8 -10
  477. package/dist/composables/glass/index.d.ts +5 -7
  478. package/dist/composables/glass/useGlassBackdropLuminance.d.ts +13 -22
  479. package/dist/composables/glass/useSpecularTracking.d.ts +13 -16
  480. package/dist/composables/glass/webgl/backingSize.d.ts +5 -8
  481. package/dist/composables/glass/webgl/compile.d.ts +1 -1
  482. package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +25 -34
  483. package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +24 -39
  484. package/dist/composables/glass/webgl/visibility.d.ts +4 -5
  485. package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +20 -23
  486. package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +4 -5
  487. package/dist/composables/glass/webgpu/webgpuCanvasTypes.d.ts +19 -19
  488. package/dist/composables/glass/webgpu/webgpuDevice.d.ts +8 -26
  489. package/dist/composables/keyboard/index.d.ts +1 -1
  490. package/dist/composables/motion/core/asElement.d.ts +2 -0
  491. package/dist/composables/motion/core/constants.d.ts +25 -0
  492. package/dist/composables/motion/core/index.d.ts +21 -24
  493. package/dist/composables/motion/{motionTempo.d.ts → core/motionTempo.d.ts} +0 -2
  494. package/dist/composables/motion/core/useReducedMotion.d.ts +5 -0
  495. package/dist/composables/motion/core/useViewTransition.d.ts +44 -0
  496. package/dist/composables/motion/dissolve/dissolveGrammar.d.ts +88 -0
  497. package/dist/composables/motion/engage/engageEnvelopes.d.ts +45 -0
  498. package/dist/composables/motion/engage/engageLadder.d.ts +86 -0
  499. package/dist/composables/motion/index.d.ts +14 -16
  500. package/dist/composables/motion/morph/eyeglass.d.ts +141 -0
  501. package/dist/composables/motion/{useDockCtaReceive.d.ts → morph/useDockCtaReceive.d.ts} +8 -9
  502. package/dist/composables/motion/{useDragMorph.d.ts → morph/useDragMorph.d.ts} +7 -7
  503. package/dist/composables/motion/morph/useElementMorph.d.ts +50 -0
  504. package/dist/composables/motion/morph/useLeadTrail.d.ts +71 -0
  505. package/dist/composables/motion/morph/useSelectionGroup.d.ts +123 -0
  506. package/dist/composables/motion/morph/useSelectionIndicator.d.ts +113 -0
  507. package/dist/composables/motion/{useAnimatedNumberMap.d.ts → number/useAnimatedNumberMap.d.ts} +1 -1
  508. package/dist/composables/motion/{pointerFieldMappings.d.ts → pointer/pointerFieldMappings.d.ts} +8 -11
  509. package/dist/composables/motion/{usePointerVelocityField.d.ts → pointer/usePointerVelocityField.d.ts} +1 -1
  510. package/dist/composables/motion/{useRoutePointer.d.ts → pointer/useRoutePointer.d.ts} +1 -1
  511. package/dist/composables/motion/{useLiquidReveal.d.ts → reveal/useLiquidReveal.d.ts} +11 -10
  512. package/dist/composables/motion/{useStagger.d.ts → reveal/useStagger.d.ts} +3 -3
  513. package/dist/composables/motion/route/routeGrammar.d.ts +60 -0
  514. package/dist/composables/motion/route/useRouteTransition.d.ts +45 -0
  515. package/dist/composables/motion/{useScrollChrome.d.ts → scroll/useScrollChrome.d.ts} +2 -2
  516. package/dist/composables/motion/{useScrollProgress.d.ts → scroll/useScrollProgress.d.ts} +9 -6
  517. package/dist/composables/motion/{useScrollScene.d.ts → scroll/useScrollScene.d.ts} +5 -4
  518. package/dist/composables/motion/spring/springPresets.d.ts +32 -0
  519. package/dist/composables/motion/{springProjection.d.ts → spring/springProjection.d.ts} +6 -4
  520. package/dist/composables/motion/{useLiquidFlex.d.ts → spring/useLiquidFlex.d.ts} +11 -12
  521. package/dist/composables/motion/{useLiquidPress.d.ts → spring/useLiquidPress.d.ts} +5 -5
  522. package/dist/composables/motion/{useSpring.d.ts → spring/useSpring.d.ts} +5 -2
  523. package/dist/composables/motion/{useSpringMount.d.ts → spring/useSpringMount.d.ts} +14 -4
  524. package/dist/composables/motion/{useSpringPress.d.ts → spring/useSpringPress.d.ts} +6 -6
  525. package/dist/composables/reactive/index.d.ts +2 -2
  526. package/dist/composables/sidebar/index.d.ts +10 -10
  527. package/dist/composables/sidebar/types.d.ts +3 -3
  528. package/dist/composables/sidebar/useClickDelegate.d.ts +1 -1
  529. package/dist/composables/sidebar/useLazyLoader.d.ts +1 -1
  530. package/dist/composables/sidebar/useScrollTo.d.ts +1 -1
  531. package/dist/composables/sidebar/useScrollTracker.d.ts +1 -1
  532. package/dist/composables/sidebar/useSidebarState.d.ts +1 -1
  533. package/dist/composables/sidebar/useTreeIndex.d.ts +1 -1
  534. package/dist/{configurator-CSENXXSy.js → configurator-BoeScnDL.js} +12 -12
  535. package/dist/configurator.d.ts +1 -1
  536. package/dist/configurator.js +1 -1
  537. package/dist/{constants-DRZmNIY-.js → constants-Dk96HZHu.js} +3 -3
  538. package/dist/constellation.d.ts +1 -1
  539. package/dist/constellation.js +198 -196
  540. package/dist/content-CWO-XL7o.js +18 -0
  541. package/dist/control-Da4XeT43.js +11 -0
  542. package/dist/control.css_vue_type_style_index_0_src_true_lang-BIdufaDG.js +21 -0
  543. package/dist/{createCanvasLifecycle-hsFkQVdl.js → createCanvasLifecycle-hJHobVTn.js} +84 -82
  544. package/dist/dark-mode-toggle.d.ts +1 -0
  545. package/dist/dark-mode-toggle.js +43 -0
  546. package/dist/dark.d.ts +1 -1
  547. package/dist/dark.js +1 -1
  548. package/dist/data-table-_RrOEdiw.js +493 -0
  549. package/dist/data-table.d.ts +1 -1
  550. package/dist/data-table.js +1 -1
  551. package/dist/deck-Ci6YjB5e.js +453 -0
  552. package/dist/deck.d.ts +1 -1
  553. package/dist/deck.js +2 -94
  554. package/dist/dialog-CbRnTRtg.js +78 -0
  555. package/dist/dialog.d.ts +1 -1
  556. package/dist/dialog.js +3 -2
  557. package/dist/dock.d.ts +1 -1
  558. package/dist/dock.js +654 -1044
  559. package/dist/dom.d.ts +1 -1
  560. package/dist/dom.js +65 -105
  561. package/dist/easing.d.ts +1 -1
  562. package/dist/easing.js +709 -522
  563. package/dist/expandable-container.d.ts +1 -1
  564. package/dist/expandable-container.js +109 -93
  565. package/dist/fading-scroll-CTeW3KNS.js +96 -0
  566. package/dist/fading-scroll.d.ts +1 -1
  567. package/dist/fading-scroll.js +1 -1
  568. package/dist/focus-Duf7EpUu.js +13 -0
  569. package/dist/fourier-field.d.ts +1 -1
  570. package/dist/fourier-field.js +172 -174
  571. package/dist/fourier-math.d.ts +1 -1
  572. package/dist/glass-ui.css +1 -1
  573. package/dist/glass-ui.js +295 -505
  574. package/dist/handmark.d.ts +1 -1
  575. package/dist/handmark.js +4 -4
  576. package/dist/index.d.ts +41 -51
  577. package/dist/infinite-scroll.d.ts +1 -1
  578. package/dist/infinite-scroll.js +59 -43
  579. package/dist/input-Bls2A4Tt.js +54 -0
  580. package/dist/input.d.ts +1 -0
  581. package/dist/input.js +2 -0
  582. package/dist/keyboard.d.ts +1 -1
  583. package/dist/label-BQEZhnK_.js +53 -0
  584. package/dist/label.d.ts +1 -1
  585. package/dist/label.js +1 -1
  586. package/dist/labeled-field.d.ts +1 -1
  587. package/dist/labeled-field.js +232 -239
  588. package/dist/menu-wLu1XGKn.js +501 -0
  589. package/dist/menu.d.ts +1 -0
  590. package/dist/{dropdown-menu.js → menu.js} +2 -2
  591. package/dist/metric.d.ts +1 -0
  592. package/dist/metric.js +139 -0
  593. package/dist/motion-D4uYE0UM.js +61 -0
  594. package/dist/motion-core.d.ts +1 -1
  595. package/dist/motion-core.js +206 -165
  596. package/dist/motion.d.ts +1 -1
  597. package/dist/motion.js +164 -239
  598. package/dist/music-staff.d.ts +1 -0
  599. package/dist/music-staff.js +915 -0
  600. package/dist/number-field-NFAwQ0HK.js +111 -0
  601. package/dist/number-field.d.ts +1 -1
  602. package/dist/number-field.js +2 -2
  603. package/dist/pager-dots.d.ts +1 -1
  604. package/dist/pager-dots.js +362 -2
  605. package/dist/participation-B0hdsIRo.js +42 -0
  606. package/dist/{pointerFieldMappings-CZojkgKj.js → pointerFieldMappings-DP5tla5z.js} +4 -7
  607. package/dist/popover-DBMKTPkL.js +181 -0
  608. package/dist/popover.d.ts +1 -1
  609. package/dist/popover.js +1 -1
  610. package/dist/{presets-CxeNvxuO.js → presets-5myqNv59.js} +1 -1
  611. package/dist/primitive-B2t2jdqM.js +11 -0
  612. package/dist/progress-DF8dWZIX.js +74 -0
  613. package/dist/progress.d.ts +1 -1
  614. package/dist/progress.js +1 -1
  615. package/dist/radio-group-Ci8o-pDx.js +85 -0
  616. package/dist/radio-group.d.ts +1 -0
  617. package/dist/radio-group.js +2 -0
  618. package/dist/reactive.d.ts +1 -1
  619. package/dist/reactive.js +1 -1
  620. package/dist/resolve-DdrNvBby.js +6 -0
  621. package/dist/resolveCanvasColor-6MCrswTB.js +81 -0
  622. package/dist/rowClass-DYOXwxhO.js +10 -0
  623. package/dist/scroll-progress-rim.d.ts +1 -1
  624. package/dist/scroll-progress-rim.js +48 -42
  625. package/dist/{scrollReader-C2oK9Hb8.js → scrollReader-Brf5cQNo.js} +1 -1
  626. package/dist/search.d.ts +1 -1
  627. package/dist/search.js +33 -296
  628. package/dist/select-CDgwGH_P.js +290 -0
  629. package/dist/select.d.ts +1 -1
  630. package/dist/select.js +2 -2
  631. package/dist/selection-DqIULxRG.js +6 -0
  632. package/dist/separator-CN11t406.js +73 -0
  633. package/dist/separator.d.ts +1 -1
  634. package/dist/separator.js +1 -1
  635. package/dist/sheet-BEFvnO_u.js +340 -0
  636. package/dist/sheet.d.ts +1 -0
  637. package/dist/sheet.js +3 -0
  638. package/dist/sidebar.d.ts +1 -1
  639. package/dist/sidebar.js +53 -42
  640. package/dist/slider-gsc8jDIo.js +227 -0
  641. package/dist/slider.d.ts +1 -1
  642. package/dist/slider.js +2 -2
  643. package/dist/sortable-list.d.ts +1 -1
  644. package/dist/sortable-list.js +412 -286
  645. package/dist/springPresets-Cbe0Voqg.js +52 -0
  646. package/dist/status-dot-BpnqOP5N.js +56 -0
  647. package/dist/status-dot.d.ts +1 -1
  648. package/dist/status-dot.js +2 -59
  649. package/dist/styles/accessibility.css +1 -1
  650. package/dist/styles/animations.css +1 -1
  651. package/dist/styles/components.css +1 -1
  652. package/dist/styles/fonts.css +1 -1
  653. package/dist/styles/glass/a11y-fallback.css +1 -1
  654. package/dist/styles/glass/control-bit.css +1 -0
  655. package/dist/styles/glass/control-edge.css +1 -0
  656. package/dist/styles/glass/control-surfaces.css +1 -1
  657. package/dist/styles/glass/deep.css +1 -1
  658. package/dist/styles/glass/defined.css +1 -1
  659. package/dist/styles/glass/dissolve.css +1 -0
  660. package/dist/styles/glass/focus-veil.css +1 -0
  661. package/dist/styles/glass/glass-atom.css +1 -1
  662. package/dist/styles/glass/glass-capsule.css +1 -1
  663. package/dist/styles/glass/glass-chip.css +1 -1
  664. package/dist/styles/glass/grasp.css +1 -0
  665. package/dist/styles/glass/ladder-undershadow.css +1 -1
  666. package/dist/styles/glass/ladder.css +1 -1
  667. package/dist/styles/glass/liquid-enter.css +1 -1
  668. package/dist/styles/glass/liquid-fill.css +1 -1
  669. package/dist/styles/glass/mark.css +1 -0
  670. package/dist/styles/glass/material.css +1 -1
  671. package/dist/styles/glass/overlay-plate.css +1 -0
  672. package/dist/styles/glass/reveal.css +1 -1
  673. package/dist/styles/glass/rim.css +1 -1
  674. package/dist/styles/glass/squircle.css +1 -1
  675. package/dist/styles/glass/surface-axis.css +1 -1
  676. package/dist/styles/glass/surfaces-pager.css +1 -1
  677. package/dist/styles/glass/surfaces.css +1 -1
  678. package/dist/styles/glass/track-flow.css +1 -0
  679. package/dist/styles/glass/value-marks.css +1 -0
  680. package/dist/styles/glass/veil.css +1 -0
  681. package/dist/styles/glass-specular-track.css +1 -1
  682. package/dist/styles/glass.css +1 -1
  683. package/dist/styles/index.css +1 -1
  684. package/dist/styles/paper.css +1 -1
  685. package/dist/styles/scroll-choreography.css +1 -1
  686. package/dist/styles/scroll-chrome.css +1 -1
  687. package/dist/styles/scroll-driven.css +1 -1
  688. package/dist/styles/theme/bridges.css +1 -1
  689. package/dist/styles/theme/dark.css +1 -1
  690. package/dist/styles/theme/literals.css +1 -1
  691. package/dist/styles/theme/radius.css +1 -1
  692. package/dist/styles/theme.css +1 -1
  693. package/dist/styles/tokens/color-radius.css +1 -1
  694. package/dist/styles/tokens/dark-arm-glass.css +1 -1
  695. package/dist/styles/tokens/dark-arm.css +1 -1
  696. package/dist/styles/tokens/glass-deep.css +1 -1
  697. package/dist/styles/tokens/glass-fx.css +1 -1
  698. package/dist/styles/tokens/glass.css +1 -1
  699. package/dist/styles/tokens/light-dark.css +1 -1
  700. package/dist/styles/tokens/manifest.d.ts +14 -0
  701. package/dist/styles/tokens/motion-registers.css +1 -1
  702. package/dist/styles/tokens/offsets.css +1 -1
  703. package/dist/styles/tokens/on-glass-fg.css +1 -1
  704. package/dist/styles/tokens/property-regs-specular.css +1 -1
  705. package/dist/styles/tokens/property-regs.css +1 -1
  706. package/dist/styles/tokens/scale-paper.css +1 -1
  707. package/dist/styles/tokens/scheme-motion.css +1 -1
  708. package/dist/styles/tokens/scheme-spring.css +1 -1
  709. package/dist/styles/tokens/scroll-tokens.css +1 -1
  710. package/dist/styles/tokens/shadow.css +1 -1
  711. package/dist/styles/tokens/sizing-config.css +1 -1
  712. package/dist/styles/tokens/sizing.css +1 -1
  713. package/dist/styles/tokens.css +1 -1
  714. package/dist/styles/tokens.d.ts +5 -10
  715. package/dist/styles/track-well.css +1 -0
  716. package/dist/styles/transitions.css +1 -1
  717. package/dist/styles/typography/scale.css +1 -1
  718. package/dist/styles/typography/semantic.css +1 -1
  719. package/dist/styles/typography/utilities.css +1 -1
  720. package/dist/styles/typography.css +1 -1
  721. package/dist/styles/utilities/a11y-overrides.css +1 -1
  722. package/dist/styles/utilities/base-misc.css +1 -1
  723. package/dist/styles/utilities/base.css +1 -1
  724. package/dist/styles/utilities/btn.css +1 -1
  725. package/dist/styles/utilities/components.css +1 -1
  726. package/dist/styles/utilities/metal.css +1 -1
  727. package/dist/styles/utilities/responsive.css +1 -0
  728. package/dist/styles/utilities.css +1 -1
  729. package/dist/styles/view-transition.css +1 -1
  730. package/dist/styles/viz-reveal.css +1 -1
  731. package/dist/{supportsCssTimeline-Dz-GVxXM.js → supportsCssTimeline-Di9gzleG.js} +6 -5
  732. package/dist/surface.d.ts +1 -1
  733. package/dist/surface.js +2 -3
  734. package/dist/switch-DxZzDrmV.js +49 -0
  735. package/dist/switch.d.ts +1 -1
  736. package/dist/switch.js +1 -1
  737. package/dist/tabs-CYscnq5H.js +268 -0
  738. package/dist/tabs.d.ts +1 -1
  739. package/dist/tabs.js +2 -339
  740. package/dist/textarea.d.ts +1 -0
  741. package/dist/textarea.js +58 -0
  742. package/dist/timeline.d.ts +1 -1
  743. package/dist/timeline.js +241 -532
  744. package/dist/toast-9c6Kp58L.js +269 -0
  745. package/dist/toast.d.ts +1 -1
  746. package/dist/toast.js +1 -1
  747. package/dist/toggle-group-11aPGMfE.js +125 -0
  748. package/dist/toggle-group.d.ts +1 -1
  749. package/dist/toggle-group.js +1 -1
  750. package/dist/tokens.d.ts +1 -1
  751. package/dist/tokens.js +98 -5
  752. package/dist/tooltip-DqKMZ4dn.js +142 -0
  753. package/dist/tooltip.d.ts +1 -1
  754. package/dist/tooltip.js +1 -1
  755. package/dist/typewriter.d.ts +1 -1
  756. package/dist/typewriter.js +215 -208
  757. package/dist/useAccentTone-DFAh1osB.js +47 -0
  758. package/dist/useClipboard-D36OTaeT.js +53 -0
  759. package/dist/useDockCtaReceive-BSSgD6mu.js +146 -0
  760. package/dist/useDragMorph-B363RUbF.js +293 -0
  761. package/dist/{useDragVelocity-CbMZEBaC.js → useDragVelocity-C5BkKiNf.js} +28 -24
  762. package/dist/useIntersectionPause-CzKR3EyP.js +57 -0
  763. package/dist/useLeadTrail-DQWdpFN1.js +83 -0
  764. package/dist/{useLiquidFlex-Ch4exNvN.js → useLiquidFlex-TJZmRqyY.js} +1 -1
  765. package/dist/useLiquidPress-h1scrPtP.js +101 -0
  766. package/dist/useMotionAxis-D-rtIhca.js +19 -0
  767. package/dist/usePointerVelocityField-DsIf7yyq.js +121 -0
  768. package/dist/useReducedMotion-vCXA_vyM.js +27 -0
  769. package/dist/{useTouchGate-Cj5fOkTv.js → useResolveTokenColor-CspQv_ik.js} +25 -2
  770. package/dist/useRoutePointer-B8itM7Ka.js +53 -0
  771. package/dist/useScrollChrome-BJbWV32F.js +162 -0
  772. package/dist/useScrollProgress-Bq-KPaKM.js +41 -0
  773. package/dist/useScrollTrigger-Abe5dEeO.js +86 -0
  774. package/dist/useSelectionGroup-zsEwitF6.js +291 -0
  775. package/dist/{useSpring-BBSKFx_0.js → useSpring-9u2_shxV.js} +2 -2
  776. package/dist/useSpringMount-OA-0mTNv.js +73 -0
  777. package/dist/vReveal-B5WYGofz.js +44 -0
  778. package/dist/vSpecular-DMJo8pfD.js +68 -0
  779. package/dist/value-DMhh2R94.js +33 -0
  780. package/dist/{valueDomain-B8L04u3U.js → valueDomain-DXRzfc8l.js} +1 -1
  781. package/package.json +183 -291
  782. package/dist/DropdownMenuTrigger-BzQtd9lt.js +0 -65
  783. package/dist/FadingScroll-C1ZWEjmG.js +0 -83
  784. package/dist/Input-B4WQ_CMc.js +0 -57
  785. package/dist/PagerDots-BoTQ7g5l.js +0 -307
  786. package/dist/Surface-BWRfwyn8.js +0 -59
  787. package/dist/accent-tone-solve-Dii9ePhK.js +0 -20
  788. package/dist/animated-digit.d.ts +0 -1
  789. package/dist/animated-digit.js +0 -44
  790. package/dist/badge-C0C-rTBu.js +0 -80
  791. package/dist/button-32mg6xA8.js +0 -194
  792. package/dist/card-16xmzIr3.js +0 -303
  793. package/dist/coalesce-metric-znAcLzkB.js +0 -13
  794. package/dist/collapsible-bPzS1aQk.js +0 -63
  795. package/dist/color-swatch.d.ts +0 -1
  796. package/dist/color-swatch.js +0 -48
  797. package/dist/command-BjPjUU9z.js +0 -307
  798. package/dist/completion-seal.d.ts +0 -1
  799. package/dist/completion-seal.js +0 -132
  800. package/dist/components/_shared/ModalOverlay.vue.d.ts +0 -43
  801. package/dist/components/_shared/feedback-tone.css +0 -1
  802. package/dist/components/_shared/field-surfaces.css +0 -1
  803. package/dist/components/_shared/menu.css +0 -1
  804. package/dist/components/_shared/menuItemVariants.d.ts +0 -51
  805. package/dist/components/_shared/useControlSize.d.ts +0 -46
  806. package/dist/components/_shared/useStalePropWarning.d.ts +0 -27
  807. package/dist/components/_shared/useSurfaceAxis.d.ts +0 -64
  808. package/dist/components/animated-digit/AnimatedDigit.vue.d.ts +0 -56
  809. package/dist/components/animated-digit/index.d.ts +0 -2
  810. package/dist/components/card/ScrollCard.vue.d.ts +0 -33
  811. package/dist/components/card/ScrollCardHeader.vue.d.ts +0 -17
  812. package/dist/components/card/card-scroll.css +0 -1
  813. package/dist/components/carousel/CarouselNext.vue.d.ts +0 -21
  814. package/dist/components/carousel/CarouselPrevious.vue.d.ts +0 -21
  815. package/dist/components/carousel/interface.d.ts +0 -20
  816. package/dist/components/color-swatch/ColorSwatch.vue.d.ts +0 -22
  817. package/dist/components/color-swatch/index.d.ts +0 -1
  818. package/dist/components/combobox/Combobox.vue.d.ts +0 -32
  819. package/dist/components/combobox/ComboboxAnchor.vue.d.ts +0 -18
  820. package/dist/components/combobox/ComboboxEmpty.vue.d.ts +0 -18
  821. package/dist/components/combobox/ComboboxGroup.vue.d.ts +0 -19
  822. package/dist/components/combobox/ComboboxInput.vue.d.ts +0 -23
  823. package/dist/components/combobox/ComboboxItem.vue.d.ts +0 -22
  824. package/dist/components/combobox/ComboboxItemIndicator.vue.d.ts +0 -18
  825. package/dist/components/combobox/ComboboxList.vue.d.ts +0 -32
  826. package/dist/components/combobox/index.d.ts +0 -9
  827. package/dist/components/completion-seal/CompletionSeal.vue.d.ts +0 -28
  828. package/dist/components/completion-seal/composables/useCompletionSeal.d.ts +0 -37
  829. package/dist/components/completion-seal/constants.d.ts +0 -66
  830. package/dist/components/completion-seal/index.d.ts +0 -4
  831. package/dist/components/completion-seal/styles.css +0 -1
  832. package/dist/components/controls/DarkModeToggle.vue.d.ts +0 -32
  833. package/dist/components/controls/dark-mode-toggle.css +0 -1
  834. package/dist/components/controls/index.d.ts +0 -1
  835. package/dist/components/data-table/DataTablePagination.vue.d.ts +0 -13
  836. package/dist/components/deck/DeckPager.vue.d.ts +0 -29
  837. package/dist/components/dialog/DialogClose.vue.d.ts +0 -14
  838. package/dist/components/dialog/DialogTrigger.vue.d.ts +0 -14
  839. package/dist/components/dialog/placement.css +0 -1
  840. package/dist/components/dock/DockSection.vue.d.ts +0 -69
  841. package/dist/components/dock/DockStack.vue.d.ts +0 -73
  842. package/dist/components/dock/composables/dockMorphContext.d.ts +0 -91
  843. package/dist/components/dock/composables/useDockFisheye.d.ts +0 -24
  844. package/dist/components/dock/composables/useDockPopover.d.ts +0 -70
  845. package/dist/components/dock/styles/fisheye.css +0 -1
  846. package/dist/components/dock/styles/popover.css +0 -1
  847. package/dist/components/dock/styles/section.css +0 -1
  848. package/dist/components/drawer/Drawer.vue.d.ts +0 -85
  849. package/dist/components/drawer/DrawerContent.vue.d.ts +0 -40
  850. package/dist/components/drawer/DrawerDescription.vue.d.ts +0 -18
  851. package/dist/components/drawer/DrawerFooter.vue.d.ts +0 -17
  852. package/dist/components/drawer/DrawerHeader.vue.d.ts +0 -17
  853. package/dist/components/drawer/DrawerOverlay.vue.d.ts +0 -8
  854. package/dist/components/drawer/DrawerTitle.vue.d.ts +0 -18
  855. package/dist/components/drawer/composables/drawerSnapContext.d.ts +0 -28
  856. package/dist/components/drawer/composables/useDrawerSnap.d.ts +0 -24
  857. package/dist/components/drawer/constants.d.ts +0 -50
  858. package/dist/components/drawer/index.d.ts +0 -33
  859. package/dist/components/drawer/styles.css +0 -1
  860. package/dist/components/dropdown-menu/DropdownMenu.vue.d.ts +0 -24
  861. package/dist/components/dropdown-menu/DropdownMenuCheckboxItem.vue.d.ts +0 -24
  862. package/dist/components/dropdown-menu/DropdownMenuContent.vue.d.ts +0 -36
  863. package/dist/components/dropdown-menu/DropdownMenuItem.vue.d.ts +0 -19
  864. package/dist/components/dropdown-menu/DropdownMenuLabel.vue.d.ts +0 -19
  865. package/dist/components/dropdown-menu/DropdownMenuRadioItem.vue.d.ts +0 -22
  866. package/dist/components/dropdown-menu/DropdownMenuSeparator.vue.d.ts +0 -8
  867. package/dist/components/dropdown-menu/DropdownMenuShortcut.vue.d.ts +0 -17
  868. package/dist/components/dropdown-menu/DropdownMenuSubContent.vue.d.ts +0 -34
  869. package/dist/components/dropdown-menu/DropdownMenuSubTrigger.vue.d.ts +0 -18
  870. package/dist/components/dropdown-menu/DropdownMenuTrigger.vue.d.ts +0 -20
  871. package/dist/components/dropdown-menu/index.d.ts +0 -15
  872. package/dist/components/dropdown-menu/useMenuTrigger.d.ts +0 -14
  873. package/dist/components/easing/EasingConfigurator.vue.d.ts +0 -33
  874. package/dist/components/focus-scope/FocusScope.vue.d.ts +0 -20
  875. package/dist/components/focus-scope/index.d.ts +0 -2
  876. package/dist/components/fourier-field/presets.d.ts +0 -54
  877. package/dist/components/goo-filter/GooFilter.vue.d.ts +0 -22
  878. package/dist/components/goo-filter/index.d.ts +0 -1
  879. package/dist/components/header-ribbon/HeaderRibbon.vue.d.ts +0 -31
  880. package/dist/components/header-ribbon/index.d.ts +0 -2
  881. package/dist/components/header-ribbon/types.d.ts +0 -7
  882. package/dist/components/icon-chip/IconChip.vue.d.ts +0 -4
  883. package/dist/components/icon-chip/index.d.ts +0 -2
  884. package/dist/components/icon-chip/styles.css +0 -1
  885. package/dist/components/icon-chip/types.d.ts +0 -92
  886. package/dist/components/icon-tooltip/IconTooltip.vue.d.ts +0 -16
  887. package/dist/components/icon-tooltip/index.d.ts +0 -1
  888. package/dist/components/instrument-chassis/ChassisDivider.vue.d.ts +0 -30
  889. package/dist/components/instrument-chassis/InstrumentChassis.vue.d.ts +0 -97
  890. package/dist/components/instrument-chassis/index.d.ts +0 -3
  891. package/dist/components/instrument-chassis/styles.css +0 -1
  892. package/dist/components/labeled-field/LabeledSelect.vue.d.ts +0 -26
  893. package/dist/components/liquid-grid/LiquidGrid.vue.d.ts +0 -46
  894. package/dist/components/liquid-grid/composables/liquidGrid.d.ts +0 -113
  895. package/dist/components/liquid-grid/composables/liquidGridGLSetup.d.ts +0 -18
  896. package/dist/components/liquid-grid/composables/liquidGridWGPUSetup.d.ts +0 -21
  897. package/dist/components/liquid-grid/composables/uniformBridgeWGPU.d.ts +0 -16
  898. package/dist/components/liquid-grid/composables/useLiquidGrid.d.ts +0 -32
  899. package/dist/components/liquid-grid/constants.d.ts +0 -93
  900. package/dist/components/liquid-grid/index.d.ts +0 -5
  901. package/dist/components/liquid-grid/shaders/liquid-grid.glsl.d.ts +0 -4
  902. package/dist/components/liquid-grid/shaders/liquid-grid.wgsl.d.ts +0 -1
  903. package/dist/components/metric-badge/MetricBadge.vue.d.ts +0 -40
  904. package/dist/components/metric-badge/index.d.ts +0 -2
  905. package/dist/components/metric-cell/MetricCell.vue.d.ts +0 -108
  906. package/dist/components/metric-cell/index.d.ts +0 -2
  907. package/dist/components/metric-stack/MetricRow.vue.d.ts +0 -120
  908. package/dist/components/metric-stack/MetricStack.vue.d.ts +0 -92
  909. package/dist/components/metric-stack/index.d.ts +0 -4
  910. package/dist/components/notification/Notification.vue.d.ts +0 -16
  911. package/dist/components/notification/index.d.ts +0 -1
  912. package/dist/components/number-field/NumberFieldContent.vue.d.ts +0 -17
  913. package/dist/components/number-field/NumberFieldDecrement.vue.d.ts +0 -18
  914. package/dist/components/number-field/NumberFieldIncrement.vue.d.ts +0 -18
  915. package/dist/components/pager-dots/composables/usePagerWorm.d.ts +0 -26
  916. package/dist/components/pager-dots/constants.d.ts +0 -15
  917. package/dist/components/pager-dots/pagerWindow.d.ts +0 -9
  918. package/dist/components/paper-backdrop/PaperBackdrop.vue.d.ts +0 -21
  919. package/dist/components/paper-backdrop/index.d.ts +0 -2
  920. package/dist/components/progress/ProgressDefault.vue.d.ts +0 -9
  921. package/dist/components/progress/ProgressGradient.vue.d.ts +0 -26
  922. package/dist/components/progress/ProgressLiquid.vue.d.ts +0 -22
  923. package/dist/components/progress/valueMarks.css +0 -1
  924. package/dist/components/pulse/Pulse.vue.d.ts +0 -53
  925. package/dist/components/pulse/index.d.ts +0 -1
  926. package/dist/components/search/FuzzySearch.vue.d.ts +0 -24
  927. package/dist/components/select/SelectScrollDownButton.vue.d.ts +0 -18
  928. package/dist/components/select/SelectScrollUpButton.vue.d.ts +0 -18
  929. package/dist/components/sortable-list/composables/dragController.d.ts +0 -29
  930. package/dist/components/sortable-list/composables/dropResolver.d.ts +0 -34
  931. package/dist/components/sortable-list/composables/ghostRenderer.d.ts +0 -44
  932. package/dist/components/sortable-list/composables/index.d.ts +0 -1
  933. package/dist/components/sortable-list/composables/touchGate.d.ts +0 -26
  934. package/dist/components/sortable-list/composables/transitionTiming.d.ts +0 -50
  935. package/dist/components/spa-view/SpaView.vue.d.ts +0 -50
  936. package/dist/components/spa-view/index.d.ts +0 -2
  937. package/dist/components/split-chars/SplitChars.vue.d.ts +0 -53
  938. package/dist/components/split-chars/index.d.ts +0 -1
  939. package/dist/components/tabs/composables/useEyeglassLive.d.ts +0 -17
  940. package/dist/components/tabs/constants.d.ts +0 -1
  941. package/dist/components/tags-input/TagsInput.vue.d.ts +0 -28
  942. package/dist/components/tags-input/TagsInputInput.vue.d.ts +0 -8
  943. package/dist/components/tags-input/TagsInputItem.vue.d.ts +0 -18
  944. package/dist/components/tags-input/TagsInputItemDelete.vue.d.ts +0 -18
  945. package/dist/components/tags-input/TagsInputItemText.vue.d.ts +0 -8
  946. package/dist/components/tags-input/index.d.ts +0 -5
  947. package/dist/components/timeline/ContinuousMarkers.vue.d.ts +0 -49
  948. package/dist/components/timeline/ContinuousRail.vue.d.ts +0 -26
  949. package/dist/components/timeline/ContinuousTimeline.vue.d.ts +0 -118
  950. package/dist/components/timeline/GlassTimeline.vue.d.ts +0 -114
  951. package/dist/components/timeline/ScrubberTimeline.vue.d.ts +0 -45
  952. package/dist/components/timeline/SegmentedTimeline.vue.d.ts +0 -46
  953. package/dist/components/toggle/Toggle.vue.d.ts +0 -29
  954. package/dist/components/toggle/index.d.ts +0 -26
  955. package/dist/components/toggle-group/toggleGroupContext.d.ts +0 -20
  956. package/dist/components/typewriter/composables/index.d.ts +0 -1
  957. package/dist/components/watercolor-dot/WatercolorDot.vue.d.ts +0 -74
  958. package/dist/components/watercolor-dot/index.d.ts +0 -3
  959. package/dist/components/watercolor-dot/prng.d.ts +0 -5
  960. package/dist/components/watercolor-dot/useWatercolorBlob.d.ts +0 -31
  961. package/dist/composables/glass/ambientHueHistogram.d.ts +0 -27
  962. package/dist/composables/glass/useSpecularPointer.d.ts +0 -52
  963. package/dist/composables/glass/wave/index.d.ts +0 -4
  964. package/dist/composables/glass/wave/waveField.d.ts +0 -136
  965. package/dist/composables/glass/wave/waveField.glsl.d.ts +0 -1
  966. package/dist/composables/glass/wave/waveField.wgsl.d.ts +0 -1
  967. package/dist/composables/glass/webgl/shaders/glass-refract.glsl.d.ts +0 -36
  968. package/dist/composables/glass/webgpu/index.d.ts +0 -3
  969. package/dist/composables/index.d.ts +0 -9
  970. package/dist/composables/motion/bloomUpField.d.ts +0 -29
  971. package/dist/composables/motion/constants.d.ts +0 -19
  972. package/dist/composables/motion/curves.d.ts +0 -48
  973. package/dist/composables/motion/gooBarbellGeometry.d.ts +0 -79
  974. package/dist/composables/motion/morphSignatures.d.ts +0 -88
  975. package/dist/composables/motion/springPresets.d.ts +0 -45
  976. package/dist/composables/motion/suite.d.ts +0 -2
  977. package/dist/composables/motion/useBloomUp.d.ts +0 -97
  978. package/dist/composables/motion/useCharStagger.d.ts +0 -44
  979. package/dist/composables/motion/useCountup.d.ts +0 -30
  980. package/dist/composables/motion/useElementMorph.d.ts +0 -107
  981. package/dist/composables/motion/useGooMorph.d.ts +0 -72
  982. package/dist/composables/motion/useLeadTrail.d.ts +0 -69
  983. package/dist/composables/motion/useNumericTransition.d.ts +0 -56
  984. package/dist/composables/motion/usePrioritizedTask.d.ts +0 -41
  985. package/dist/composables/motion/useScrollPin.d.ts +0 -49
  986. package/dist/composables/motion/useSelectionGroup.d.ts +0 -83
  987. package/dist/composables/motion/useSelectionIndicator.d.ts +0 -90
  988. package/dist/composables/motion/useStaggerReveal.d.ts +0 -52
  989. package/dist/composables/motion/useTextHighlight.d.ts +0 -41
  990. package/dist/composables/motion/useViewTransition.d.ts +0 -81
  991. package/dist/composables/virtual/index.d.ts +0 -4
  992. package/dist/composables/virtual/useVirtualSectionWindow.d.ts +0 -72
  993. package/dist/composables/virtual/useWindowedStore.d.ts +0 -43
  994. package/dist/composables/virtual/virtualSectionLayout.d.ts +0 -103
  995. package/dist/controls.d.ts +0 -1
  996. package/dist/controls.js +0 -83
  997. package/dist/data-table-DveMdgBM.js +0 -629
  998. package/dist/dialog-BzQxKrUr.js +0 -281
  999. package/dist/dockContext-4S9qP0Z4.js +0 -13
  1000. package/dist/drawer.d.ts +0 -1
  1001. package/dist/drawer.js +0 -443
  1002. package/dist/dropdown-menu-DORIA52F.js +0 -378
  1003. package/dist/dropdown-menu.d.ts +0 -1
  1004. package/dist/flow.glsl-DEGFGE11.js +0 -4
  1005. package/dist/focus-scope-DUTKveod.js +0 -23
  1006. package/dist/focus-scope.d.ts +0 -1
  1007. package/dist/focus-scope.js +0 -2
  1008. package/dist/fonts/README.md +0 -124
  1009. package/dist/fonts/fira-code/OFL.txt +0 -93
  1010. package/dist/fonts/plus-jakarta-sans/OFL.txt +0 -93
  1011. package/dist/forms.d.ts +0 -5
  1012. package/dist/forms.js +0 -298
  1013. package/dist/header-ribbon.d.ts +0 -1
  1014. package/dist/header-ribbon.js +0 -74
  1015. package/dist/icon-chip-BWuxz1-u.js +0 -57
  1016. package/dist/icon-chip.d.ts +0 -1
  1017. package/dist/icon-chip.js +0 -2
  1018. package/dist/icon-tooltip-CO6rw0dZ.js +0 -25
  1019. package/dist/icon-tooltip.d.ts +0 -1
  1020. package/dist/icon-tooltip.js +0 -2
  1021. package/dist/instrument-chassis-Cvstg4_U.js +0 -65
  1022. package/dist/instrument-chassis.d.ts +0 -1
  1023. package/dist/instrument-chassis.js +0 -2
  1024. package/dist/label-Cj38tJKG.js +0 -36
  1025. package/dist/liquid-grid.d.ts +0 -1
  1026. package/dist/liquid-grid.js +0 -1075
  1027. package/dist/menuItemVariants-D6AOzzND.js +0 -36
  1028. package/dist/metric-badge.d.ts +0 -1
  1029. package/dist/metric-badge.js +0 -79
  1030. package/dist/metric-cell.d.ts +0 -1
  1031. package/dist/metric-cell.js +0 -61
  1032. package/dist/metric-stack.d.ts +0 -1
  1033. package/dist/metric-stack.js +0 -113
  1034. package/dist/motion-curves.d.ts +0 -1
  1035. package/dist/motion-curves.js +0 -146
  1036. package/dist/notification-DVs7ODMg.js +0 -52
  1037. package/dist/notification.d.ts +0 -1
  1038. package/dist/notification.js +0 -2
  1039. package/dist/number-field-PvkGedHk.js +0 -140
  1040. package/dist/paper-backdrop.d.ts +0 -1
  1041. package/dist/paper-backdrop.js +0 -31
  1042. package/dist/popover-WMgyRSyN.js +0 -256
  1043. package/dist/progress-C-HHuFZy.js +0 -192
  1044. package/dist/pulse.d.ts +0 -1
  1045. package/dist/pulse.js +0 -56
  1046. package/dist/resolveCanvasColor-yarP5bdk.js +0 -93
  1047. package/dist/select-BIv4R3Ir.js +0 -326
  1048. package/dist/separator-CBU94kTM.js +0 -62
  1049. package/dist/slider-Cc_qw6GA.js +0 -166
  1050. package/dist/spa-view.d.ts +0 -1
  1051. package/dist/spa-view.js +0 -46
  1052. package/dist/springPresets-h5VKJQqG.js +0 -58
  1053. package/dist/styles/draw-in.css +0 -1
  1054. package/dist/styles/glass/accent-tone.css +0 -1
  1055. package/dist/styles/glass/grain-overlay.css +0 -1
  1056. package/dist/styles/glass/material-roles.css +0 -1
  1057. package/dist/styles/glass/progress-rail.css +0 -1
  1058. package/dist/styles/glass-refract.css +0 -1
  1059. package/dist/styles/tokens.ts +0 -58
  1060. package/dist/switch-Boj4Ucn5.js +0 -49
  1061. package/dist/toast-kAbchIN2.js +0 -281
  1062. package/dist/toggle-group-BPchFsns.js +0 -178
  1063. package/dist/tooltip-BmOQJzh0.js +0 -111
  1064. package/dist/useAccentTone-C-p6WdPe.js +0 -23
  1065. package/dist/useAnimatedNumber-BRVVaFFc.js +0 -40
  1066. package/dist/useControlSize-CFfOk8I-.js +0 -9
  1067. package/dist/useDockCtaReceive-CK-RLASa.js +0 -257
  1068. package/dist/useDocumentVisibility-YeBDGqtI.js +0 -17
  1069. package/dist/useDragMorph-7ygF9O0m.js +0 -93
  1070. package/dist/useGooMorph-D1F6QJlH.js +0 -349
  1071. package/dist/useIntersectionPause-B-dbxl9w.js +0 -39
  1072. package/dist/useLeadTrail-BYu8dq4G.js +0 -74
  1073. package/dist/useLiquidPress-BYcwwGQV.js +0 -68
  1074. package/dist/useMotionAxis-DCCXMC-i.js +0 -20
  1075. package/dist/usePointerVelocityField-BdvnO0py.js +0 -122
  1076. package/dist/useRAFLoop-BtwQ9DyY.js +0 -109
  1077. package/dist/useResolveTokenColor-C07e-qaT.js +0 -24
  1078. package/dist/useRoutePointer-BDNMFN73.js +0 -52
  1079. package/dist/useScrollProgress-DZI4nf4v.js +0 -35
  1080. package/dist/useSelectionGroup-LDzBdR1Y.js +0 -215
  1081. package/dist/useSpringMount-C6-DBx4e.js +0 -71
  1082. package/dist/useSpringPress-BypV_KO-.js +0 -36
  1083. package/dist/useSurfaceAxis-DudiZVOR.js +0 -10
  1084. package/dist/useTabRovingFocus-DkLYwo4L.js +0 -143
  1085. package/dist/useUserInvalidAria-Cr4nR3tu.js +0 -25
  1086. package/dist/vReveal-DZfWl9XI.js +0 -10
  1087. package/dist/vSpecular-CQFmLNzA.js +0 -68
  1088. package/dist/watercolor-dot.d.ts +0 -1
  1089. package/dist/watercolor-dot.js +0 -175
  1090. package/src/fonts/README.md +0 -124
  1091. package/src/fonts/fira-code/OFL.txt +0 -93
  1092. package/src/fonts/fira-code/fira-code-latin-ext.woff2 +0 -0
  1093. package/src/fonts/fira-code/fira-code-latin.woff2 +0 -0
  1094. package/src/fonts/plus-jakarta-sans/OFL.txt +0 -93
  1095. package/src/fonts/plus-jakarta-sans/plus-jakarta-sans-latin-ext.woff2 +0 -0
  1096. package/src/fonts/plus-jakarta-sans/plus-jakarta-sans-latin.woff2 +0 -0
  1097. package/src/styles/accessibility.css +0 -48
  1098. package/src/styles/animations.css +0 -468
  1099. package/src/styles/draw-in.css +0 -89
  1100. package/src/styles/fonts.css +0 -143
  1101. package/src/styles/glass/a11y-fallback.css +0 -188
  1102. package/src/styles/glass/accent-tone.css +0 -66
  1103. package/src/styles/glass/control-surfaces.css +0 -171
  1104. package/src/styles/glass/deep.css +0 -114
  1105. package/src/styles/glass/defined.css +0 -88
  1106. package/src/styles/glass/glass-atom.css +0 -247
  1107. package/src/styles/glass/glass-capsule.css +0 -175
  1108. package/src/styles/glass/glass-chip.css +0 -211
  1109. package/src/styles/glass/grain-overlay.css +0 -79
  1110. package/src/styles/glass/ladder-undershadow.css +0 -61
  1111. package/src/styles/glass/ladder.css +0 -452
  1112. package/src/styles/glass/liquid-enter.css +0 -240
  1113. package/src/styles/glass/liquid-fill.css +0 -65
  1114. package/src/styles/glass/material-roles.css +0 -18
  1115. package/src/styles/glass/material.css +0 -500
  1116. package/src/styles/glass/progress-rail.css +0 -78
  1117. package/src/styles/glass/reveal.css +0 -333
  1118. package/src/styles/glass/rim.css +0 -122
  1119. package/src/styles/glass/squircle.css +0 -58
  1120. package/src/styles/glass/surface-axis.css +0 -136
  1121. package/src/styles/glass/surfaces-pager.css +0 -79
  1122. package/src/styles/glass/surfaces.css +0 -434
  1123. package/src/styles/glass-refract.css +0 -112
  1124. package/src/styles/glass-specular-track.css +0 -74
  1125. package/src/styles/glass.css +0 -110
  1126. package/src/styles/index.css +0 -288
  1127. package/src/styles/paper.css +0 -187
  1128. package/src/styles/scroll-choreography.css +0 -294
  1129. package/src/styles/scroll-chrome.css +0 -123
  1130. package/src/styles/scroll-driven.css +0 -123
  1131. package/src/styles/theme/bridges.css +0 -380
  1132. package/src/styles/theme/dark.css +0 -7
  1133. package/src/styles/theme/literals.css +0 -104
  1134. package/src/styles/theme/radius.css +0 -148
  1135. package/src/styles/theme.css +0 -33
  1136. package/src/styles/tokens/color-radius.css +0 -308
  1137. package/src/styles/tokens/dark-arm-glass.css +0 -55
  1138. package/src/styles/tokens/dark-arm.css +0 -455
  1139. package/src/styles/tokens/glass-deep.css +0 -126
  1140. package/src/styles/tokens/glass-fx.css +0 -480
  1141. package/src/styles/tokens/glass.css +0 -477
  1142. package/src/styles/tokens/light-dark.css +0 -216
  1143. package/src/styles/tokens/motion-registers.css +0 -93
  1144. package/src/styles/tokens/offsets.css +0 -142
  1145. package/src/styles/tokens/on-glass-fg.css +0 -39
  1146. package/src/styles/tokens/property-regs-specular.css +0 -160
  1147. package/src/styles/tokens/property-regs.css +0 -448
  1148. package/src/styles/tokens/scale-paper.css +0 -495
  1149. package/src/styles/tokens/scheme-motion.css +0 -425
  1150. package/src/styles/tokens/scheme-spring.css +0 -282
  1151. package/src/styles/tokens/scroll-tokens.css +0 -137
  1152. package/src/styles/tokens/shadow.css +0 -206
  1153. package/src/styles/tokens/sizing-config.css +0 -110
  1154. package/src/styles/tokens/sizing.css +0 -505
  1155. package/src/styles/tokens.css +0 -68
  1156. package/src/styles/tokens.ts +0 -58
  1157. package/src/styles/transitions.css +0 -228
  1158. package/src/styles/typography/scale.css +0 -166
  1159. package/src/styles/typography/semantic.css +0 -233
  1160. package/src/styles/typography/utilities.css +0 -197
  1161. package/src/styles/typography.css +0 -46
  1162. package/src/styles/utilities/a11y-overrides.css +0 -184
  1163. package/src/styles/utilities/base-misc.css +0 -307
  1164. package/src/styles/utilities/base.css +0 -337
  1165. package/src/styles/utilities/btn.css +0 -306
  1166. package/src/styles/utilities/components.css +0 -337
  1167. package/src/styles/utilities/metal.css +0 -272
  1168. package/src/styles/utilities.css +0 -24
  1169. package/src/styles/view-transition.css +0 -67
  1170. package/src/styles/viz-reveal.css +0 -63
  1171. /package/dist/{_plugin-vue_export-helper-C1je1s0u.js → _plugin-vue_export-helper-B3ysoDQm.js} +0 -0
  1172. /package/dist/{compile-DK3Fri1B.js → compile-D7VYG3gi.js} +0 -0
  1173. /package/dist/components/_shared/{valueDomain.d.ts → field/valueDomain.d.ts} +0 -0
  1174. /package/dist/composables/glass/{webgl/shaders/procedural-color.glsl.d.ts → procedural/color.glsl.d.ts} +0 -0
  1175. /package/dist/{components/aurora/constants/shaders/procedural-color.wgsl.d.ts → composables/glass/procedural/color.wgsl.d.ts} +0 -0
  1176. /package/dist/composables/motion/{useIntersectionPause.d.ts → core/useIntersectionPause.d.ts} +0 -0
  1177. /package/dist/composables/motion/{useRAFLoop.d.ts → core/useRAFLoop.d.ts} +0 -0
  1178. /package/dist/composables/motion/{useYieldToMain.d.ts → core/useYieldToMain.d.ts} +0 -0
  1179. /package/dist/composables/motion/{useAnimatedNumber.d.ts → number/useAnimatedNumber.d.ts} +0 -0
  1180. /package/dist/composables/motion/{vReveal.d.ts → reveal/vReveal.d.ts} +0 -0
  1181. /package/dist/composables/motion/{scrollReader.d.ts → scroll/scrollReader.d.ts} +0 -0
  1182. /package/dist/composables/motion/{supportsCssTimeline.d.ts → scroll/supportsCssTimeline.d.ts} +0 -0
  1183. /package/dist/composables/motion/{useScrollTrigger.d.ts → scroll/useScrollTrigger.d.ts} +0 -0
  1184. /package/dist/{createContext-FU0n5MGK.js → createContext-BhkE9mLH.js} +0 -0
  1185. /package/dist/{dark-DIH-blY1.js → dark-z_P5QwqI.js} +0 -0
  1186. /package/dist/{motionTempo-CMS5b0Vu.js → motionTempo-tscp92Nm.js} +0 -0
  1187. /package/dist/{prng-Dz2_9RJu.js → prng-2uS6J_A1.js} +0 -0
  1188. /package/dist/{rendererStatus-C2-zC2Q-.js → rendererStatus-BxUlBLVy.js} +0 -0
  1189. /package/dist/{useFuzzySearch-BOgep7RE.js → useFuzzySearch-CUnZknpm.js} +0 -0
  1190. /package/dist/{useResizeObserver-BcUTquV7.js → useResizeObserver-CdUlm2QZ.js} +0 -0
  1191. /package/dist/{useTimer-D8koDvJS.js → useTimer-C3yfti4C.js} +0 -0
  1192. /package/dist/{writeVelocityWeight-D_AcvTsE.js → writeVelocityWeight-DoGOCW3e.js} +0 -0
@@ -1,19 +1,27 @@
1
1
  import { type HTMLAttributes } from "vue";
2
- import type { Motion } from "../_shared/axes";
2
+ import type { TabActivation } from "./composables/useTabRovingFocus.js";
3
+ import type { Motion } from "../_shared/axes.js";
3
4
  /** The canonical tab/option shape — one descriptor across both materials. */
4
5
  export interface SegmentedTabOption {
5
6
  label: string;
6
7
  value: string;
7
8
  icon?: string;
8
9
  disabled?: boolean;
9
- tooltip?: string;
10
+ /**
11
+ * The `id` of the tabpanel this option reveals. When set and semantics resolve to
12
+ * `tabs`, it is emitted as the tab's `aria-controls`, completing the APG
13
+ * tablist↔tabpanel linkage for consumers that own a panel. Ignored in `toggle`
14
+ * semantics (a toggle group mutates a shared surface, not a distinct panel).
15
+ */
16
+ controls?: string;
10
17
  }
11
- /** The two materials. `pill` (DEFAULT) = the glass-track slider (absorbs the
12
- * retired `segmented`); `underline` = the paper ink-hairline rule. */
18
+ /** The two materials: `pill` is the default glass eyeglass; `underline` is the paper ink hairline. */
13
19
  export type SegmentedTabsVariant = "pill" | "underline";
14
20
  /** The interaction semantic, independent of material. `toggle` exposes a
15
21
  * group of pressed buttons; `tabs` exposes a tablist with selected tabs. */
16
22
  export type SegmentedTabsSemantics = "toggle" | "tabs";
23
+ /** Whether focus movement also selects. Manual activation waits for Enter/Space. */
24
+ export type SegmentedTabsActivation = TabActivation;
17
25
  /** The orientation axis — `horizontal` (default) lays children in a row + tracks
18
26
  * the indicator on the inline axis; `vertical` stacks a column + tracks the
19
27
  * block axis (the vertical underline is the leading-edge ink rail). */
@@ -40,8 +48,10 @@ export interface SegmentedTabsProps {
40
48
  /** Accessible name shared by the desktop strip and responsive Select. */
41
49
  ariaLabel?: string;
42
50
  /**
43
- * The material — `pill` (DEFAULT, the glass-track slider) or `underline`
44
- * (the paper ink-hairline rule).
51
+ * The material — `pill` (DEFAULT, the glass eyeglass) or `underline` (the paper
52
+ * ink-hairline rule). TWO, and the eyeglass is not a third: it is what `pill`
53
+ * IS. A "million variants that are essentially the same thing" is the failure
54
+ * mode this axis exists to refuse.
45
55
  */
46
56
  variant?: SegmentedTabsVariant;
47
57
  /**
@@ -49,6 +59,8 @@ export interface SegmentedTabsProps {
49
59
  * historical mapping: `pill` → `toggle`, `underline` → `tabs`.
50
60
  */
51
61
  semantics?: SegmentedTabsSemantics;
62
+ /** Selection follows focus by default; manual mode activates with Enter/Space. */
63
+ activation?: SegmentedTabsActivation;
52
64
  /**
53
65
  * Orientation — `horizontal` (default) or `vertical`. Axis-derived on the
54
66
  * one indicator engine.
@@ -56,21 +68,17 @@ export interface SegmentedTabsProps {
56
68
  orientation?: SegmentedTabsOrientation;
57
69
  /**
58
70
  * Responsive collapse — below the breakpoint the strip becomes a `<Select>`.
59
- * `true` uses defaults; an object tunes the breakpoint / desktop subset /
71
+ * `true` uses defaults; an object tunes the breakpoint, desktop subset, and
60
72
  * accessible name.
61
73
  */
62
74
  responsive?: boolean | SegmentedTabsResponsive;
63
75
  /**
64
- * BH.W-MOTION-AXIS — the ONE motion-weight axis (the `draggable` boolean's
65
- * clean-break successor). `full` (default) arms the LIQUID TAB: the `pill` indicator
66
- * is a physical lozenge you can GRAB and PULL — it follows the finger ~1:1, squishes
67
- * on drag velocity, and flings to the nearest tab on release (`useDragMorph`),
68
- * ADDITIVE OVER the click/keyboard path (which stays byte-identical + fully operable
69
- * — the drag is a pointer ENHANCEMENT, never the sole selection mechanism, WCAG
70
- * 2.1.1). `reduced`/`off` opt DOWN to the click-only strip (the drag unbinds; the
71
- * roving-tabindex keyboard contract stays — motion off, meaning never off). No-op on
72
- * `underline` (the ink hairline has no indicator element to deform). PRM forces
73
- * `full → reduced` regardless (a11y absolute).
76
+ * Motion weight. `full` (default) lets the pill indicator follow a pointer,
77
+ * squash with drag velocity, and settle to the nearest tab. Drag supplements the
78
+ * fully operable click and keyboard path; it is never the sole selection method.
79
+ * `reduced` and `off` use the click-only strip while preserving roving focus.
80
+ * Underline has no deformable indicator. Reduced-motion preference forces
81
+ * `full → reduced`.
74
82
  */
75
83
  motion?: Motion;
76
84
  class?: HTMLAttributes["class"];
@@ -80,17 +88,12 @@ type __VLS_ModelProps = {
80
88
  modelValue: string;
81
89
  };
82
90
  type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
83
- declare var __VLS_50: {
84
- option: SegmentedTabOption;
85
- active: boolean;
86
- }, __VLS_58: {
91
+ declare var __VLS_32: {
87
92
  option: SegmentedTabOption;
88
93
  active: boolean;
89
94
  };
90
95
  type __VLS_Slots = {} & {
91
- option?: (props: typeof __VLS_50) => any;
92
- } & {
93
- option?: (props: typeof __VLS_58) => any;
96
+ option?: (props: typeof __VLS_32) => any;
94
97
  };
95
98
  declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
96
99
  "update:modelValue": (value: string) => any;
@@ -100,6 +103,7 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
100
103
  orientation: SegmentedTabsOrientation;
101
104
  variant: SegmentedTabsVariant;
102
105
  responsive: boolean | SegmentedTabsResponsive;
106
+ activation: SegmentedTabsActivation;
103
107
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
104
108
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
105
109
  declare const _default: typeof __VLS_export;
@@ -1,11 +1,11 @@
1
1
  import type { ComputedRef, Ref } from "vue";
2
- import { type UseDragMorphReturn } from "../../../composables/motion/useDragMorph";
3
- import type { SegmentedTabOption } from "../SegmentedTabs.vue";
2
+ import { type UseDragMorphReturn } from "../../../composables/motion/morph/useDragMorph.js";
3
+ import type { SegmentedTabOption } from "../SegmentedTabs.vue.js";
4
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.
5
+ * Package-private composable for `SegmentedTabs.vue` — the LIQUID
6
+ * TAB (the `:draggable` axis). A composable held under the
7
+ * no-god-module bound, beside the `useTabIndicator` colocation sibling; the SFC
8
+ * IMPORTS it and binds only its state; the shared morph owner writes geometry.
9
9
  *
10
10
  * When `:draggable`, the `pill` indicator is wired to `useDragMorph` with the snap
11
11
  * targets resolved off the CENTER-ANCHORED button geometry (the SAME measure
@@ -36,7 +36,7 @@ export interface UseTabDragMorphParams {
36
36
  export interface UseTabDragMorphReturn {
37
37
  /** True when the drag is live (the `pill` material + the `:draggable` prop). */
38
38
  dragEnabled: ComputedRef<boolean>;
39
- /** The `useDragMorph` handle (the SFC binds `dragStyle`/`dragging`). */
39
+ /** The `useDragMorph` handle (the SFC binds its gesture state). */
40
40
  drag: UseDragMorphReturn;
41
41
  }
42
42
  export declare function useTabDragMorph(params: UseTabDragMorphParams): UseTabDragMorphReturn;
@@ -1,18 +1,17 @@
1
1
  import type { ComputedRef, Ref } from "vue";
2
- import type { SegmentedTabOption, SegmentedTabsResponsive } from "../SegmentedTabs.vue";
2
+ import type { SegmentedTabOption, SegmentedTabsResponsive } from "../SegmentedTabs.vue.js";
3
3
  /**
4
- * Package-private composable for `SegmentedTabs.vue` — BG.W-COLOCATE (the WS4
5
- * roving-focus/responsive carve; ratchet-drain #13). The responsive-collapse concern
6
- * (the `<Select>`-below-the-breakpoint fold) lives here, carved out of the SFC to hold
4
+ * Package-private composable for `SegmentedTabs.vue` (the
5
+ * roving-focus/responsive carve). The responsive-collapse concern
6
+ * (the `<Select>`-below-the-breakpoint fold) lives here, held under
7
7
  * the no-god-module bound — the `useTabIndicator`/`useTabDragMorph` colocation-sibling
8
8
  * pattern. The SFC IMPORTS it and binds `stripValue`/`stripOptions`/`showMobileSelect`
9
9
  * in its template + feeds `stripValue`/`stripOptions` to the indicator/roving concerns.
10
10
  *
11
11
  * Owns the `matchMedia((min-width: <breakpoint>))` lifecycle END-TO-END (the
12
12
  * `onMounted`/`onBeforeUnmount` wiring lives HERE — a composable is a legitimate
13
- * lifecycle-hook owner), so the SFC never re-declares the `mql` listener. Byte-behaviour
14
- * identical to the prior inline block (the SSR/desktop-first default, the mobile-only
15
- * model fall-back, the accessible name resolution).
13
+ * lifecycle-hook owner), so the SFC never re-declares the `mql` listener. It owns the SSR/desktop-first
14
+ * default, the mobile-only model fall-back, and the accessible name resolution.
16
15
  */
17
16
  export interface UseTabResponsiveParams {
18
17
  /** The `:responsive` prop — `false` | `true` | a tuning object. */
@@ -1,51 +1,59 @@
1
1
  import type { ComputedRef, Ref } from "vue";
2
+ import type { SelectionValue } from "../../_shared/selection.js";
2
3
  /**
3
- * The minimal roving option shape — the machine reads ONLY `value` + `disabled`
4
- * (BI.W-DOCK-CONTROLS decoupled it from `SegmentedTabOption` so the shared
4
+ * The minimal roving option shape reads only `value` + `disabled`, decoupling it
5
+ * from `SegmentedTabOption` so the shared
5
6
  * headless `useSelectionGroup` can compose it VERBATIM over its generic option
6
7
  * type). Any richer option (the tabs' `SegmentedTabOption`) is structurally
7
8
  * assignable.
9
+ *
10
+ * Generic in the value scalar, defaulting to `string` (BK #84 C-1). The machine
11
+ * only compares values with `===` and interpolates them into a reset key, so it is
12
+ * indifferent to which scalar it carries — but a callback parameter is
13
+ * contravariant, so `select` could not simply be widened in place without breaking
14
+ * every narrower caller. The type variable is what lets `<ToggleGroup>` pass
15
+ * `SelectionValue` and `<SegmentedTabs>` keep `string`, from one machine.
8
16
  */
9
- export interface RovingSelectionOption {
10
- value: string;
17
+ export interface RovingSelectionOption<V extends SelectionValue = string> {
18
+ value: V;
11
19
  disabled?: boolean;
12
20
  }
21
+ export type TabActivation = "automatic" | "manual";
13
22
  /**
14
- * Package-private composable for `SegmentedTabs.vue` — BG.W-COLOCATE (the WS4
15
- * roving-focus/responsive carve; ratchet-drain #13). The WAI-ARIA tablist/toolbar
16
- * roving-tabindex keyboard machine lives here, carved out of the SFC to hold the
17
- * no-god-module bound. BI.W-DOCK-CONTROLS composes it VERBATIM inside the shared
23
+ * Package-private composable for `SegmentedTabs.vue` (the
24
+ * roving-focus/responsive carve). The WAI-ARIA tablist/toolbar
25
+ * roving-tabindex keyboard machine lives here, held under the
26
+ * no-god-module bound. It is composed VERBATIM inside the shared
18
27
  * headless `useSelectionGroup` (the dock IS SegmentedTabs/ToggleGroup wearing
19
28
  * chrome — ONE roving machine, never re-forked). The SFC IMPORTS it and binds
20
29
  * `:tabindex="rovingTabindex(idx)"` + `@keydown="onStripKeydown"` in its template.
21
30
  *
22
- * EXACTLY ONE tab in the focus order (the active tab `tabindex="0"`, the rest `-1`);
23
- * the arrow keys move focus + activate (selection-follows-focus). The arrow AXIS is
24
- * derived off `isVertical` (ArrowRight/Left horizontal, ArrowDown/Up vertical),
25
- * Home/End jump, wrapping at the ends, skipping disabled. This is the keyboard contract
26
- * EVERY strip owes — NOT gated on `:draggable` (a draggable tab that is keyboard-broken
27
- * is the worse failure). The keyboard activation IS a selection → the SFC's `select(...)`
28
- * path (with its `squishOnTravel`), passed in as a callback (byte-behaviour identical to
29
- * the prior inline block).
31
+ * EXACTLY ONE tab remains in the focus order. Automatic activation keeps that tabstop
32
+ * on the selection; manual activation moves it independently and commits only on
33
+ * Enter/Space. The arrow axis derives from `isVertical`, Home/End jump, navigation
34
+ * wraps, and disabled options are skipped. This keyboard contract is never gated by
35
+ * pointer motion.
30
36
  */
31
- export interface UseTabRovingFocusParams {
37
+ export interface UseTabRovingFocusParams<V extends SelectionValue = string> {
32
38
  /** The options the strip renders (index-aligned to `buttonRefs`). */
33
- stripOptions: ComputedRef<readonly RovingSelectionOption[]>;
39
+ stripOptions: ComputedRef<readonly RovingSelectionOption<V>[]>;
34
40
  /** The value the strip renders (the ONE tabstop anchor). */
35
- stripValue: ComputedRef<string | undefined>;
41
+ stripValue: ComputedRef<V | undefined>;
36
42
  /** True for the vertical (block-axis) orientation — flips the arrow axis. */
37
43
  isVertical: ComputedRef<boolean>;
44
+ /** Automatic selection-follows-focus or manual Enter/Space activation. */
45
+ activation: ComputedRef<TabActivation>;
38
46
  /** Per-option button refs, index-aligned to `stripOptions`. */
39
47
  buttonRefs: Ref<HTMLElement[]>;
40
48
  /** The SFC's selection handler (focus-follows activation → model write + squish). */
41
- select: (value: string, idx: number) => void;
49
+ select: (value: V, idx: number) => void;
42
50
  }
43
51
  export interface UseTabRovingFocusReturn {
44
- /** The active index in the rendered strip — the ONE tabstop. */
52
+ /** The selected index in the rendered strip. */
45
53
  activeIndex: ComputedRef<number>;
46
- /** The roving tabindex for option `idx`: `0` for the active tab, `-1` otherwise. */
54
+ /** The roving tabindex for option `idx`: exactly one `0`, all others `-1`. */
47
55
  rovingTabindex: (idx: number) => number;
48
56
  /** The strip-root keydown handler (axis-derived arrows + Home/End). */
49
57
  onStripKeydown: (e: KeyboardEvent) => void;
50
58
  }
51
- export declare function useTabRovingFocus(params: UseTabRovingFocusParams): UseTabRovingFocusReturn;
59
+ export declare function useTabRovingFocus<V extends SelectionValue = string>(params: UseTabRovingFocusParams<V>): UseTabRovingFocusReturn;
@@ -1,2 +1,2 @@
1
- export { default as SegmentedTabs } from "./SegmentedTabs.vue";
2
- export type { SegmentedTabOption, SegmentedTabsVariant, SegmentedTabsSemantics, SegmentedTabsOrientation, SegmentedTabsProps, SegmentedTabsResponsive, } from "./SegmentedTabs.vue";
1
+ export { default as SegmentedTabs } from "./SegmentedTabs.vue.js";
2
+ export type { SegmentedTabOption, SegmentedTabsVariant, SegmentedTabsSemantics, SegmentedTabsActivation, SegmentedTabsOrientation, SegmentedTabsProps, SegmentedTabsResponsive, } from "./SegmentedTabs.vue.js";
@@ -1 +1 @@
1
- .glass-drag-grabbable { cursor: grab; touch-action: none; } .glass-drag-lift { cursor: grabbing; will-change: transform; } .segmented-tabs:not(.segmented-tabs--underline):has( .segmented-indicator.glass-drag-grabbable ) .segmented-tab[aria-pressed="true"] { pointer-events: none; } .segmented-indicator.glass-drag-lift { z-index: 30; } .segmented-tabs[data-eyeglass] { --eyeglass-settled: 0.84; --eyeglass-proud: 1.12; --eyeglass-track-blur: var(--glass-blur-floating); -webkit-backdrop-filter: var(--eyeglass-track-blur); backdrop-filter: var(--eyeglass-track-blur); -webkit-backdrop-filter: var(--eyeglass-track-blur); } .segmented-tabs[data-eyeglass] .segmented-indicator__plate { --eyeglass-y: calc( var(--eyeglass-settled) + var(--eyeglass-live-t) * (var(--eyeglass-proud) - var(--eyeglass-settled)) ); } @media (prefers-reduced-motion: reduce) { .segmented-tabs[data-eyeglass] .segmented-indicator__plate { --eyeglass-y: 1; } } @supports (backdrop-filter: url("#glass-refract")) { .segmented-tabs[data-eyeglass] .segmented-indicator__plate.glass-lens { -webkit-backdrop-filter: var(--glass-blur-floating) var(--glass-refract-filter); backdrop-filter: var(--glass-blur-floating) var(--glass-refract-filter); } } .segmented-tabs[data-eyeglass] .segmented-tab[aria-pressed="true"] svg { color: var(--tab-selected-ink, var(--foreground)); }
1
+ .glass-drag-grabbable{cursor: grab;touch-action: none;}.glass-drag-lift{cursor: grabbing;will-change: transform;}.segmented-tabs:has(.segmented-indicator.glass-drag-grabbable) .segmented-tab[data-active]{pointer-events: none;}.segmented-indicator.glass-drag-lift{z-index: 30;}
@@ -1 +1 @@
1
- .segmented-tabs { --bouncy-track-trim: 0.1875rem; --bouncy-slider-radius: var(--radius-tab); --bouncy-track-radius: calc(var(--bouncy-slider-radius) + var(--bouncy-track-trim)); --stretch: 1; position: relative; display: inline-grid; grid-auto-flow: column; grid-auto-columns: 1fr; padding: var(--bouncy-track-trim); border-radius: var(--bouncy-track-radius); } .segmented-tabs--vertical { display: inline-flex; flex-direction: column; grid-auto-flow: unset; grid-auto-columns: unset; align-items: stretch; --bouncy-slider-radius: var(--radius-strip); --radius-ctx: var(--bouncy-track-radius); --radius-inset: var(--bouncy-track-trim); } .segmented-tabs--vertical .segmented-indicator { border-radius: max( var(--radius-floor), calc(var(--radius-ctx) - var(--radius-inset)) ); } @media (min-width: 640px) { .segmented-tabs { --bouncy-track-trim: 0.25rem; } } .segmented-indicator { position: absolute; z-index: 0; inset-block: var(--bouncy-track-trim); border-radius: var(--bouncy-slider-radius); transform-origin: center; scale: calc(var(--tab-blob, 1) * var(--stretch)) calc(var(--tab-blob, 1) / var(--stretch)); } .segmented-indicator__plate { position: absolute; inset: 0; border-radius: inherit; transform-origin: center; transform: scaleY(var(--eyeglass-y, 1)); } .segmented-indicator { isolation: isolate; } @supports (mix-blend-mode: plus-lighter) { .segmented-indicator::after { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; background: radial-gradient( 120% 140% at 50% 50%, color-mix(in srgb, var(--glass-accent, transparent) 55%, transparent), transparent 70% ); mix-blend-mode: plus-lighter; opacity: var(--tab-flood-t, 0); } } .segmented-tabs--vertical .segmented-indicator { inset-block: auto; inset-inline: var(--bouncy-track-trim); scale: calc(var(--tab-blob, 1) / var(--stretch)) calc(var(--tab-blob, 1) * var(--stretch)); } @media (prefers-reduced-motion: no-preference) { .segmented-indicator { transition: scale var(--tab-indicator-duration) var(--ease-cartoon-punch); } } .segmented-indicator--js { transition: transform var(--tab-indicator-duration) var(--spring-eyeglass), width var(--tab-indicator-duration) var(--spring-eyeglass), height var(--tab-indicator-duration) var(--spring-eyeglass), scale var(--tab-indicator-duration) var(--spring-eyeglass), opacity var(--duration-fast) ease; } @media (min-width: 640px) { .segmented-indicator { inset-block: 0.25rem; } .segmented-tabs--vertical .segmented-indicator { inset-block: auto; inset-inline: 0.25rem; } } .segmented-tab { position: relative; z-index: 10; border: none; background: none; font-weight: 500; cursor: pointer; white-space: nowrap; padding: 0.25rem 0.625rem; border-radius: 0.3125rem; font: inherit; font-size: 0.8125rem; color: var(--muted-foreground); transition: color var(--duration-fast) ease, scale var(--spring-snappy-duration) var(--spring-snappy) 60ms; scale: 1; translate: 0; } @media (min-width: 640px) { .segmented-tab { padding: 0.3125rem 0.75rem; font-size: 0.875rem; } } .segmented-tab[aria-pressed="true"], .segmented-tab[aria-selected="true"] { color: var(--foreground); } .segmented-tabs:not(.segmented-tabs--underline) .segmented-tab[aria-pressed="true"] { scale: calc(1 + 0.06 * var(--motion-weight)); } .segmented-tab.is-disabled { opacity: 0.4; cursor: not-allowed; pointer-events: none; filter: blur(0.5px); } .segmented-tabs--underline { display: flex; grid-auto-flow: unset; grid-auto-columns: unset; gap: 0.25rem; padding: 0; background: none; -webkit-backdrop-filter: none; backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: none; border-radius: 0; --paper-ink-mark-weight: 2px; --paper-ink-mark-color: var(--foreground); } .segmented-tabs--underline.segmented-tabs--vertical { flex-direction: column; align-items: stretch; } .segmented-tabs--underline .segmented-tab[aria-selected="true"] { anchor-name: --gl-tab-active; } .segmented-tabs--underline::before { content: ""; position: absolute; position-anchor: --gl-tab-active; inset-block-start: calc(anchor(bottom) - var(--paper-ink-mark-weight, 2px)); inset-inline-start: anchor(left); inset-inline-end: anchor(right); block-size: var(--paper-ink-mark-weight, 2px); background: var(--paper-ink-mark-color, var(--foreground)); border-radius: var(--radius-sm); transform-origin: center; scale: var(--stretch) 1; } .segmented-tabs--underline.segmented-tabs--vertical::before { inset-block-start: anchor(top); inset-block-end: anchor(bottom); inset-inline-start: calc(anchor(left) - var(--paper-ink-mark-weight, 2px)); inset-inline-end: auto; block-size: auto; inline-size: var(--paper-ink-mark-weight, 2px); scale: 1 var(--stretch); } @media (prefers-reduced-motion: no-preference) { .segmented-tabs--underline::before { transition: inset var(--tab-indicator-duration) var(--spring-snappy), scale var(--tab-indicator-duration) var(--spring-snappy); } } @supports not (position-anchor: --x) { .segmented-tabs--underline::before { display: none; } .segmented-tabs--underline .segmented-tab[aria-selected="true"] { border-bottom: var(--paper-ink-mark-weight, 2px) solid var(--foreground); } .segmented-tabs--underline.segmented-tabs--vertical .segmented-tab[aria-selected="true"] { border-bottom: none; border-inline-start: var(--paper-ink-mark-weight, 2px) solid var(--foreground); } } .segmented-tabs--underline .segmented-tab { padding: 0.375rem 0.75rem; font-size: var(--type-subheading); letter-spacing: var(--type-tracking-display); border-radius: 0.25rem; transition: color var(--duration-fast) ease; } .segmented-tabs--underline.segmented-tabs--vertical .segmented-tab { text-align: start; } .segmented-tabs--underline .segmented-tab:hover { color: color-mix(in oklab, var(--foreground) 70%, transparent); }
1
+ .segmented-tabs{--bouncy-track-trim: 0.1875rem;--bouncy-slider-radius: var(--radius-tab);--bouncy-track-radius: calc(var(--bouncy-slider-radius) + var(--bouncy-track-trim));--stretch: 1;position: relative;display: inline-grid;grid-auto-flow: column;grid-auto-columns: 1fr;padding: var(--bouncy-track-trim);border-radius: var(--bouncy-track-radius);overflow: visible;}.segmented-tabs--vertical{display: inline-flex;flex-direction: column;grid-auto-flow: unset;grid-auto-columns: unset;align-items: stretch;--bouncy-slider-radius: var(--radius-strip);--radius-ctx: var(--bouncy-track-radius);--radius-inset: var(--bouncy-track-trim);}.segmented-tabs--vertical .segmented-indicator{border-radius: max( var(--radius-floor),calc(var(--radius-ctx) - var(--radius-inset)) );}@media (min-width: 640px){.segmented-tabs{--bouncy-track-trim: 0.25rem;}}.segmented-indicator{position: absolute;z-index: 0;border-radius: var(--bouncy-slider-radius);transform-origin: var(--eyeglass-origin,50%) center;scale: var(--eyeglass-span,var(--stretch)) var(--eyeglass-swell,1);}.segmented-tabs--vertical .segmented-indicator{transform-origin: center var(--eyeglass-origin,50%);scale: var(--eyeglass-swell,1) var(--eyeglass-span,var(--stretch));}.segmented-tabs--underline .segmented-indicator{background: none;border-radius: 0;border-block-end: var(--paper-ink-mark-weight) solid var(--paper-ink-mark-color);scale: var(--stretch) 1;}.segmented-tabs--underline.segmented-tabs--vertical .segmented-indicator{border-block-end: none;border-inline-start: var(--paper-ink-mark-weight) solid var(--paper-ink-mark-color);scale: 1 var(--stretch);}.segmented-tabs:not(.segmented-tabs--underline){--eyeglass-span-max: 1.6;--eyeglass-cascade-annotation: 100ms;--eyeglass-light-clock: var(--engage-control-engage-release);transition: background var(--eyeglass-light-clock) var(--ease-standard);}.segmented-tabs:not(.segmented-tabs--underline) .segmented-indicator{box-shadow: var(--glass-rim-top),var(--glass-rim-bottom),inset 0 1px 2px var(--tab-track-recess-ink);}.segmented-tabs[data-eyeglass-wake]:not(.segmented-tabs--underline){--eyeglass-light-clock: var(--engage-control-engage-attack);background: color-mix( in oklab,var(--glass-plate-quiet),var(--glass-capsule-warm) var(--glass-capsule-warm-floor) );}.segmented-tabs[data-eyeglass-wake]:not(.segmented-tabs--underline) .segmented-indicator{box-shadow: var(--glass-rim-top),var(--glass-rim-bottom),var(--glass-shadow-capsule);}.segmented-indicator[data-eyeglass-clamped]{--eyeglass-swell: 1.22;}@media (prefers-reduced-motion: no-preference){.segmented-indicator--js{transition: translate var(--tab-indicator-duration) var(--spring-dock),width var(--tab-indicator-duration) var(--spring-dock),height var(--tab-indicator-duration) var(--spring-dock),scale var(--tab-indicator-duration) var(--ease-cartoon-punch),box-shadow var(--eyeglass-light-clock,var(--duration-fast)) var(--ease-standard),opacity var(--duration-fast) ease;}}.segmented-tab{position: relative;z-index: 10;border: none;background: none;font-weight: 500;cursor: pointer;white-space: nowrap;padding: 0.25rem 0.625rem;border-radius: var(--bouncy-slider-radius);font: inherit;font-size: var(--type-caption);color: color-mix(in oklab,var(--muted-foreground),var(--glass-capsule-warm) 12%);transition: color var(--duration-fast) ease;scale: 1;translate: 0;}@media (min-width: 640px){.segmented-tab{padding: 0.3125rem 0.75rem;font-size: var(--type-small);}}.segmented-tab[data-active]{color: var(--foreground);transition-delay: var(--eyeglass-cascade-annotation,0s);}.segmented-tab.is-disabled{opacity: 0.4;cursor: not-allowed;pointer-events: none;filter: blur(0.5px);}.segmented-tabs--underline{display: flex;grid-auto-flow: unset;grid-auto-columns: unset;gap: 0.25rem;padding: 0;background: none;-webkit-backdrop-filter: none;backdrop-filter: none;box-shadow: none;border-radius: 0;border-block-end: 1px solid var(--border);}.segmented-tabs--underline.segmented-tabs--vertical{flex-direction: column;align-items: stretch;border-block-end: none;border-inline-start: 1px solid var(--border);}.segmented-tabs--underline .segmented-tab{padding: 0.375rem 0.75rem;font-size: var(--type-subheading);letter-spacing: var(--type-tracking-display);border-radius: var(--bouncy-slider-radius);transition: color var(--duration-fast) ease;}.segmented-tabs--underline.segmented-tabs--vertical .segmented-tab{text-align: start;}.segmented-tabs--underline .segmented-tab:hover{color: color-mix(in oklab,var(--foreground) 70%,transparent);}
@@ -1,57 +1,17 @@
1
- import type { HTMLAttributes, TextareaHTMLAttributes } from 'vue';
2
- import { type ControlSize } from '../_shared/useControlSize';
3
- declare const _default: typeof __VLS_export;
4
- export default _default;
5
- declare const __VLS_export: import("vue").DefineComponent<{
6
- class?: HTMLAttributes["class"];
7
- defaultValue?: string | number;
8
- modelValue?: string | number;
9
- size?: ControlSize;
10
- placeholder?: TextareaHTMLAttributes["placeholder"];
11
- disabled?: TextareaHTMLAttributes["disabled"];
12
- /**
13
- * AQ.W4 §W4.3 — opt into `field-sizing: content` auto-grow. When `true`,
14
- * the textarea grows vertically with its content between a 3-line floor
15
- * and a `--textarea-autosize-max` ceiling (default `12lh`), then scrolls;
16
- * the manual resize handle stays. Default `false` keeps the fixed
17
- * `min-h-20` height (the unchanged no-op fallback).
18
- *
19
- * `field-sizing` is Baseline Newly (Chromium 2024) — on a non-supporting
20
- * engine the element degrades to the fixed `min-block-size: 3lh` floor
21
- * with standard scroll (no JS, no polyfill).
22
- *
23
- * Caveat: a grid/flex parent stretches children, defeating `field-sizing`.
24
- * Inside a flex column, add `align-self: start` on the `<Textarea>` so it
25
- * sizes to content rather than the track.
26
- */
27
- autosize?: boolean;
28
- }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
29
- "update:modelValue": (payload: string | number) => any;
30
- }, string, import("vue").PublicProps, Readonly<{
31
- class?: HTMLAttributes["class"];
32
- defaultValue?: string | number;
1
+ import type { TextareaProps } from "./types.js";
2
+ type __VLS_Props = TextareaProps;
3
+ type __VLS_ModelProps = {
33
4
  modelValue?: string | number;
34
- size?: ControlSize;
35
- placeholder?: TextareaHTMLAttributes["placeholder"];
36
- disabled?: TextareaHTMLAttributes["disabled"];
37
- /**
38
- * AQ.W4 §W4.3 — opt into `field-sizing: content` auto-grow. When `true`,
39
- * the textarea grows vertically with its content between a 3-line floor
40
- * and a `--textarea-autosize-max` ceiling (default `12lh`), then scrolls;
41
- * the manual resize handle stays. Default `false` keeps the fixed
42
- * `min-h-20` height (the unchanged no-op fallback).
43
- *
44
- * `field-sizing` is Baseline Newly (Chromium 2024) — on a non-supporting
45
- * engine the element degrades to the fixed `min-block-size: 3lh` floor
46
- * with standard scroll (no JS, no polyfill).
47
- *
48
- * Caveat: a grid/flex parent stretches children, defeating `field-sizing`.
49
- * Inside a flex column, add `align-self: start` on the `<Textarea>` so it
50
- * sizes to content rather than the track.
51
- */
52
- autosize?: boolean;
53
- }> & Readonly<{
54
- "onUpdate:modelValue"?: ((payload: string | number) => any) | undefined;
5
+ };
6
+ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
7
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
8
+ "update:modelValue": (value: string | number) => any;
9
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
10
+ "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
55
11
  }>, {
56
- autosize: boolean;
12
+ size: import("..").ControlSize;
13
+ resize: import("./types.js").TextareaResize;
14
+ invalid: boolean;
57
15
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
16
+ declare const _default: typeof __VLS_export;
17
+ export default _default;
@@ -1 +1,2 @@
1
- export { default as Textarea } from './Textarea.vue';
1
+ export { default as Textarea } from "./Textarea.vue.js";
2
+ export type { TextareaProps, TextareaResize } from "./types.js";
@@ -0,0 +1,45 @@
1
+ import type { HTMLAttributes, TextareaHTMLAttributes } from "vue";
2
+ import type { ControlSize } from "../_shared/control.js";
3
+ /**
4
+ * The DRAG HANDLE, and only the drag handle.
5
+ *
6
+ * `"content"` left the union: it was a non-CSS enum member conflating the handle
7
+ * with the sizing axis, and while it was the only way to ask for content sizing,
8
+ * `rows` was dead on every other member (the register floored every textarea at
9
+ * 5lh regardless). Growth is now the register's unconditional default — floored at
10
+ * `rows` line boxes via the `--field-rows` stamp `Textarea.vue` writes (the
11
+ * attribute itself is ignored under `field-sizing: content`), capped by
12
+ * `--textarea-content-max` — so the handle is free to mean what its name says.
13
+ */
14
+ export type TextareaResize = "vertical" | "horizontal" | "both" | "none";
15
+ /** Typed for the caller, invisible to `defineProps` — see `input/types.ts` for the
16
+ * `/* @vue-ignore *\/` mechanism and why the full `TextareaHTMLAttributes` is not
17
+ * the base. `rows` is the load-bearing member: it is the growth FLOOR now that the
18
+ * register sizes to content by default. It rides `$attrs` to the element AND is
19
+ * stamped into `--field-rows` by `Textarea.vue`, because `field-sizing: content`
20
+ * ignores the attribute outright — the stamp is the half the floor is built on. */
21
+ interface TextareaNativeAttrs {
22
+ cols?: TextareaHTMLAttributes["cols"];
23
+ form?: string;
24
+ maxlength?: TextareaHTMLAttributes["maxlength"];
25
+ minlength?: TextareaHTMLAttributes["minlength"];
26
+ name?: string;
27
+ placeholder?: string;
28
+ required?: boolean;
29
+ rows?: TextareaHTMLAttributes["rows"];
30
+ wrap?: TextareaHTMLAttributes["wrap"];
31
+ }
32
+ export interface TextareaProps extends /* @vue-ignore */ TextareaNativeAttrs {
33
+ class?: HTMLAttributes["class"];
34
+ /** Feeds the one state machine (`data-state`), so it is a prop, not an attr. */
35
+ disabled?: boolean;
36
+ /** App-driven validity. Native constraint validation and a bare
37
+ * `aria-invalid` reach the same one grammar without it. */
38
+ invalid?: boolean;
39
+ modelValue?: string | number;
40
+ /** Feeds the one state machine (`data-state`), so it is a prop, not an attr. */
41
+ readonly?: boolean;
42
+ resize?: TextareaResize;
43
+ size?: ControlSize;
44
+ }
45
+ export {};
@@ -0,0 +1,41 @@
1
+ import type { TimelineProps, TimelineSegment } from "./types.js";
2
+ declare var __VLS_1: {
3
+ segment: TimelineSegment | null;
4
+ source: "idle" | "current" | "hovered";
5
+ current: string | null;
6
+ hovered: string | null;
7
+ value: number;
8
+ progress: string;
9
+ };
10
+ type __VLS_Slots = {} & {
11
+ detail?: (props: typeof __VLS_1) => any;
12
+ };
13
+ declare const __VLS_base: import("vue").DefineComponent<TimelineProps, {
14
+ value: import("vue").ComputedRef<number>;
15
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
16
+ select: (payload: {
17
+ key: string;
18
+ segment: TimelineSegment;
19
+ }) => any;
20
+ hover: (payload: {
21
+ key: string;
22
+ segment: TimelineSegment;
23
+ } | null) => any;
24
+ }, string, import("vue").PublicProps, Readonly<TimelineProps> & Readonly<{
25
+ onSelect?: ((payload: {
26
+ key: string;
27
+ segment: TimelineSegment;
28
+ }) => any) | undefined;
29
+ onHover?: ((payload: {
30
+ key: string;
31
+ segment: TimelineSegment;
32
+ } | null) => any) | undefined;
33
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
34
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
35
+ declare const _default: typeof __VLS_export;
36
+ export default _default;
37
+ type __VLS_WithSlots<T, S> = T & {
38
+ new (): {
39
+ $slots: S;
40
+ };
41
+ };
@@ -1,92 +1,66 @@
1
1
  /**
2
- * Timeline shared geometry — pure math + payload helpers used by ≥ 2 of
3
- * the variant SFCs (ScrubberTimeline / SegmentedTimeline / ContinuousTimeline).
2
+ * Timeline geometry — the partition, the ordinal hue law and the aggregate.
4
3
  *
5
- * Split out of the prior monolithic `GlassTimeline.vue` per O.W3 Lane A —
6
- * the geometry was identical across the segmented + continuous variants,
7
- * and the popover-payload helper is consumed only by the continuous variant
8
- * today but its shape (the AA-canonical `{ label, value, description, state }`
9
- * envelope) is documented as the shared per-segment hover-payload contract.
10
- *
11
- * All exports are pure functions or type aliases — no Vue runtime imports,
12
- * no side effects. The factory `createContinuousGeometry(segmentsRef)`
13
- * returns the `totalWeight` + region/boundary helpers bound to a live
14
- * `Ref<TimelineSegment[]>`, so the continuous SFC can drop them straight
15
- * into its `<script setup>`.
16
- */
17
- import { type ComputedRef, type Ref } from "vue";
18
- import type { TimelineSegment } from "./types";
19
- /**
20
- * Fill percentage per state. Explicit `progress` wins; otherwise the
21
- * canonical mapping (pending=0, active=0.5, completed=1). Clamped to
22
- * [0, 1] so consumers can't paint past the segment box.
23
- */
24
- export declare function fillFor(seg: TimelineSegment): number;
25
- /** Resolve a segment's positive weight; defaults to 1. */
26
- export declare function segmentWeight(seg: TimelineSegment): number;
27
- /**
28
- * Bind continuous-variant geometry helpers to a live `Ref<TimelineSegment[]>`.
29
- * Returns the `totalWeight` ComputedRef + per-index region geometry
30
- * (regionLeft, regionWidth, boundaryX) + the rail's aggregate aria-valuenow
31
- * computation. The continuous SFC pulls these into its `<script setup>`.
4
+ * Pure functions only: no Vue runtime, no element, no side effect beyond the
5
+ * DEV monotone warning. The file exists so the suite can assert the rules
6
+ * without a mount (happy-dom is not needed to check arithmetic).
32
7
  */
33
- export declare function createContinuousGeometry(segments: Ref<TimelineSegment[]>): {
34
- totalWeight: ComputedRef<number>;
35
- regionLeft: (i: number) => number;
36
- regionWidth: (i: number) => number;
37
- boundaryX: (i: number) => number;
38
- continuousAriaValueNow: ComputedRef<number>;
39
- };
8
+ import type { TimelineSegment } from "./types.js";
40
9
  /**
41
- * Build the ONE rail-spanning stitched gradient for the continuous
42
- * variant. Each phase's colour is anchored as a stop at the CENTRE of
43
- * its weight-share so the pure hue sits mid-phase and the hues cross-
44
- * fade smoothly through every boundary. The first and last stops are
45
- * pinned to 0% / 100% so the bar's ends saturate fully (no washed
46
- * leading/trailing edge). Returns a `linear-gradient(90deg, …)` string
47
- * sized to the FULL rail width.
10
+ * THE ORDINAL HUE LAW — span `i` without an `accent` takes
11
+ * `--section-color-((HUE_OFFSET + HUE_STRIDE·i) mod HUE_STOPS)` over the
12
+ * 13-stop jewel ramp (`tokens/color-radius.css` §sections).
13
+ *
14
+ * `gcd(HUE_STRIDE, HUE_STOPS) = gcd(4, 13) = 1`, so all thirteen stops are
15
+ * visited before the sequence repeats — adjacent spans land far apart on the
16
+ * ramp by construction. The two integers live HERE, as constants, and never as
17
+ * tokens: BK #68's L-4 refused both the low-chroma retune and the ordinal
18
+ * rename, and ruled these `geometry.ts` constants their home.
48
19
  */
49
- export declare function stitchedRailGradient(segments: TimelineSegment[]): string;
20
+ export declare const HUE_OFFSET = 2;
21
+ export declare const HUE_STRIDE = 4;
22
+ export declare const HUE_STOPS = 13;
23
+ /** One resolved span on the unit axis. `at` is the span's END boundary. */
24
+ export interface TimelineSpan {
25
+ left: number;
26
+ width: number;
27
+ at: number;
28
+ }
50
29
  /**
51
- * Per-region windowing parameters for the stitched rail gradient. The
52
- * region paints the FULL-rail gradient (`stitchedRailGradient`) but only
53
- * its own slice is visible inside the region box. To window correctly
54
- * the region's `background-size-x` is scaled to `1 / regionWidth` of the
55
- * region box (so the full gradient spans `regionWidth` of the rail) and
56
- * the `background-position-x` is offset so the region's left edge aligns
57
- * with the rail-fraction `regionLeft`.
58
- *
59
- * `sizeX` — CSS `background-size` x value, e.g. `"333.333%"`.
60
- * `positionX` — CSS `background-position` x value, e.g. `"50%"`.
30
+ * THE PARTITION.
61
31
  *
62
- * background-position interpolates the image's `(size - box)` overflow,
63
- * so the position fraction is `regionLeft / (1 - regionWidth)` (guarded
64
- * for the degenerate single-region `regionWidth == 1` case).
32
+ * 1. Authored `at` values are clamped monotone non-decreasing in [0, 1]:
33
+ * `at_i = max(at_{i−1}, clamp01(at_i))`. They are NEVER sorted — keys,
34
+ * labels and states travel with `at`, so a sort turns one typo into a
35
+ * silently reordered narrative. The clamp preserves author order and
36
+ * renders the violation VISIBLE (a zero-width span with its mark stacked on
37
+ * its neighbour's).
38
+ * 2. Omitted `at` runs take equal shares of the axis remaining between their
39
+ * pinned neighbours; a trailing run runs to 1. All-omitted is therefore the
40
+ * plain equal split.
41
+ * 3. A trailing remainder (`Σwidth < 1`, e.g. a dataset ending at 0.94) is an
42
+ * OPEN AXIS: the groove paints it, no span owns it, no mark sits on it.
43
+ * 4. Zero-width and coincident spans are legal — no fill, mark at the shared
44
+ * point, the later `key` stacking above.
65
45
  */
66
- export declare function stitchedRegionWindow(regionLeft: number, regionWidth: number): {
67
- sizeX: string;
68
- positionX: string;
69
- };
46
+ export declare function layout(segments: readonly TimelineSegment[]): TimelineSpan[];
70
47
  /**
71
- * Continuous-variant active-region fill width (0..1, applied as a clip
72
- * mask on the region's right edge for partial-fill animation). For
73
- * `completed` returns 1; for `pending` returns 0; for `active` returns
74
- * `fillFor(seg)` (which honours explicit `progress` overrides).
48
+ * The span's EFFECTIVE fill fraction, or `null` for INDETERMINATE.
49
+ *
50
+ * Explicit `progress` wins (clamped). Otherwise `completed` is 1 and `pending`
51
+ * is 0. `active` with `progress` omitted returns `null`: it is a phase underway
52
+ * with unknown progress, and fabricating either 0.5 or 0 for it paints a
53
+ * running phase as something it is not.
75
54
  */
76
- export declare function continuousFillWidth(seg: TimelineSegment): number;
55
+ export declare function fillFor(seg: TimelineSegment): number | null;
77
56
  /**
78
- * AB.W2.T2 — default popover content payload shape.
57
+ * The span-weighted aggregate over the OWNED axis: `Σ(width·eff) / Σwidth`.
79
58
  *
80
- * Reads `value` shape if the consumer supplied the AA-canonical
81
- * `{ label, value, description, state }` payload (the speedtest
82
- * PhaseDetail), otherwise falls back to the segment's own label/state.
83
- * The slot scope exposes the full segment so consumers can override
84
- * entirely.
59
+ * The denominator is `Σwidth`, not 1 — a process scoped to 94% of the axis
60
+ * reports 1.0 when all of ITS phases complete, rather than stalling at 0.94
61
+ * forever. Indeterminate spans contribute 0 (they report nothing measurable);
62
+ * they surface in `aria-valuetext` instead.
85
63
  */
86
- export interface DefaultPopoverPayload {
87
- label?: string;
88
- value?: unknown;
89
- description?: string;
90
- state?: string;
91
- }
92
- export declare function popoverPayloadFor(seg: TimelineSegment): DefaultPopoverPayload;
64
+ export declare function aggregate(segments: readonly TimelineSegment[]): number;
65
+ /** The ordinal hue for span `i` — see {@link HUE_OFFSET}. */
66
+ export declare function accentFor(i: number): string;
@@ -1,2 +1,2 @@
1
- export { default as GlassTimeline } from "./GlassTimeline.vue";
2
- export type { TimelineSegment, TimelineSegmentGradient, TimelineSegmentState, } from "./types";
1
+ export { default as Timeline } from "./Timeline.vue.js";
2
+ export type { TimelineProps, TimelineSegment, TimelineSegmentState, } from "./types.js";