@mkbabb/glass-ui 7.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 (885) hide show
  1. package/README.md +4 -3
  2. package/dist/DialogContent-4hzLiaCQ.js +152 -0
  3. package/dist/DotRing-Blh4Mc3Q.js +27 -0
  4. package/dist/{DropdownMenuTrigger-ClIq8RJE.js → DropdownMenuTrigger-8UZsBtZ8.js} +5 -5
  5. package/dist/Surface-i1tWC-Ga.js +48 -0
  6. package/dist/aurora.d.ts +1 -1
  7. package/dist/aurora.js +219 -209
  8. package/dist/axes.d.ts +1 -1
  9. package/dist/axes.js +1 -22
  10. package/dist/badge-owUOaaba.js +63 -0
  11. package/dist/badge.d.ts +1 -1
  12. package/dist/badge.js +2 -2
  13. package/dist/blob-config.d.ts +1 -1
  14. package/dist/blob.d.ts +1 -1
  15. package/dist/blob.js +5 -5
  16. package/dist/button-yvGPb0Bx.js +110 -0
  17. package/dist/button.d.ts +1 -1
  18. package/dist/button.js +1 -1
  19. package/dist/canvas.d.ts +1 -1
  20. package/dist/canvas.js +2 -2
  21. package/dist/{card-Bk96VI2R.js → card-3HFFpC7_.js} +51 -95
  22. package/dist/card.d.ts +1 -1
  23. package/dist/card.js +2 -2
  24. package/dist/carousel.d.ts +1 -1
  25. package/dist/carousel.js +187 -175
  26. package/dist/checkbox-BnXuGgJ3.js +64 -0
  27. package/dist/checkbox.d.ts +1 -0
  28. package/dist/checkbox.js +2 -0
  29. package/dist/chip.d.ts +1 -1
  30. package/dist/chip.js +129 -2
  31. package/dist/{class-names-Cpy5eaBk.js → class-names-q-UGOkHH.js} +15 -1
  32. package/dist/{collapsible-BAP95XTt.js → collapsible-B7O6m-Ch.js} +2 -2
  33. package/dist/collapsible.d.ts +1 -1
  34. package/dist/collapsible.js +1 -1
  35. package/dist/color.d.ts +1 -1
  36. package/dist/color.js +18 -18
  37. package/dist/{color.wgsl-Ct5o9dpf.js → color.wgsl-B0N3mKMb.js} +168 -167
  38. package/dist/command-BuBnYpxF.js +340 -0
  39. package/dist/command.d.ts +1 -1
  40. package/dist/command.js +1 -1
  41. package/dist/component-styles.css +4 -0
  42. package/dist/components/_shared/axes.d.ts +4 -1
  43. package/dist/components/_shared/class-names.d.ts +1 -1
  44. package/dist/components/_shared/control.d.ts +11 -0
  45. package/dist/components/_shared/feedback/DotRing.vue.d.ts +3 -0
  46. package/dist/components/_shared/feedback/dot-ring.css +1 -0
  47. package/dist/components/_shared/feedback/feedback-tone.css +1 -0
  48. package/dist/components/_shared/{fieldControl.d.ts → field/control.d.ts} +1 -1
  49. package/dist/components/_shared/focus.d.ts +11 -0
  50. package/dist/components/_shared/index.d.ts +2 -2
  51. package/dist/components/_shared/interaction.d.ts +1 -1
  52. package/dist/components/_shared/menu/menu.css +1 -0
  53. package/dist/components/_shared/menu/rowClass.d.ts +2 -0
  54. package/dist/components/_shared/overlay/content.d.ts +40 -0
  55. package/dist/components/_shared/overlay/index.d.ts +12 -0
  56. package/dist/components/{dock/composables → _shared/overlay}/isTeleportedTarget.d.ts +5 -0
  57. package/dist/components/_shared/overlay/participation.d.ts +66 -0
  58. package/dist/components/_shared/overlay/placement.d.ts +22 -0
  59. package/dist/components/_shared/selection.d.ts +39 -0
  60. package/dist/components/_shared/surface/resolve.d.ts +17 -0
  61. package/dist/components/_shared/useMotionAxis.d.ts +1 -7
  62. package/dist/components/accordion/Accordion.vue.d.ts +1 -1
  63. package/dist/components/accordion/index.d.ts +4 -4
  64. package/dist/components/alert/Alert.vue.d.ts +1 -1
  65. package/dist/components/alert/AlertDescription.vue.d.ts +2 -2
  66. package/dist/components/alert/AlertTitle.vue.d.ts +2 -2
  67. package/dist/components/alert/index.d.ts +9 -9
  68. package/dist/components/aurora/Aurora.vue.d.ts +4 -4
  69. package/dist/components/aurora/composables/atoms-fields.d.ts +1 -1
  70. package/dist/components/aurora/composables/atoms.d.ts +3 -3
  71. package/dist/components/aurora/composables/auroraFallbackGround.d.ts +1 -1
  72. package/dist/components/aurora/composables/auroraImageSource.d.ts +2 -2
  73. package/dist/components/aurora/composables/color.d.ts +3 -4
  74. package/dist/components/aurora/composables/frameLoop.d.ts +4 -4
  75. package/dist/components/aurora/composables/glSetup.d.ts +5 -10
  76. package/dist/components/aurora/composables/runtime.d.ts +2 -2
  77. package/dist/{composables/glass → components/aurora/composables}/textureUpload.d.ts +0 -13
  78. package/dist/components/aurora/composables/uniformBridge.d.ts +3 -20
  79. package/dist/components/aurora/composables/uniformBridgeWGPU.d.ts +2 -2
  80. package/dist/components/aurora/composables/uniformBridgeWGPUImage.d.ts +2 -2
  81. package/dist/components/aurora/composables/useAurora.d.ts +4 -4
  82. package/dist/components/aurora/composables/useCursorInteraction.d.ts +2 -2
  83. package/dist/components/aurora/composables/wgpuSetup.d.ts +5 -5
  84. package/dist/components/aurora/constants/budget.d.ts +0 -36
  85. package/dist/components/aurora/constants/presets.d.ts +2 -2
  86. package/dist/components/aurora/constants/shaders/aurora-image.frag.d.ts +0 -2
  87. package/dist/components/aurora/constants/shaders/aurora-image.wgsl.d.ts +0 -2
  88. package/dist/components/aurora/index.d.ts +15 -14
  89. package/dist/components/avatar/AvatarImage.vue.d.ts +1 -6
  90. package/dist/components/avatar/index.d.ts +3 -3
  91. package/dist/components/badge/Badge.vue.d.ts +2 -9
  92. package/dist/components/badge/index.d.ts +12 -11
  93. package/dist/components/blob/Blob.vue.d.ts +4 -4
  94. package/dist/components/blob/composables/blobSimulation.d.ts +5 -5
  95. package/dist/components/blob/composables/buildMetaballProgram.d.ts +1 -1
  96. package/dist/components/blob/composables/resolveBlobSurface.d.ts +1 -1
  97. package/dist/components/blob/composables/satelliteKinematics.d.ts +1 -1
  98. package/dist/components/blob/composables/uniformBridgeWGPU.d.ts +4 -4
  99. package/dist/components/blob/composables/uploadBlobUniforms.d.ts +5 -5
  100. package/dist/components/blob/composables/useBlobMood.d.ts +1 -1
  101. package/dist/components/blob/composables/useBlobPointer.d.ts +0 -3
  102. package/dist/components/blob/composables/useBlobSatellites.d.ts +1 -1
  103. package/dist/components/blob/composables/useMetaballRenderer.d.ts +6 -6
  104. package/dist/components/blob/composables/wgpuSetup.d.ts +5 -5
  105. package/dist/components/blob/config.d.ts +3 -3
  106. package/dist/components/blob/constants.d.ts +1 -3
  107. package/dist/components/blob/index.d.ts +8 -8
  108. package/dist/components/blob/presets.d.ts +1 -1
  109. package/dist/components/button/Button.vue.d.ts +15 -9
  110. package/dist/components/button/index.d.ts +1 -1
  111. package/dist/components/button/styles.css +1 -1
  112. package/dist/components/card/Card.vue.d.ts +20 -23
  113. package/dist/components/card/CardHeader.vue.d.ts +8 -1
  114. package/dist/components/card/index.d.ts +6 -7
  115. package/dist/components/card/scroll.css +1 -0
  116. package/dist/components/card/styles.css +1 -1
  117. package/dist/components/carousel/Carousel.vue.d.ts +14 -19
  118. package/dist/components/carousel/CarouselContent.vue.d.ts +2 -12
  119. package/dist/components/carousel/CarouselItem.vue.d.ts +14 -3
  120. package/dist/components/carousel/CarouselPager.vue.d.ts +2 -2
  121. package/dist/components/carousel/index.d.ts +7 -6
  122. package/dist/components/carousel/projection.d.ts +23 -0
  123. package/dist/components/carousel/styles.css +1 -0
  124. package/dist/components/carousel/types.d.ts +47 -0
  125. package/dist/components/carousel/useCarousel.d.ts +4 -21
  126. package/dist/components/checkbox/Checkbox.vue.d.ts +6 -6
  127. package/dist/components/checkbox/index.d.ts +1 -1
  128. package/dist/components/chip/Chip.vue.d.ts +2 -2
  129. package/dist/components/chip/accent-tone.css +1 -0
  130. package/dist/components/chip/chipVariants.d.ts +1 -1
  131. package/dist/components/chip/index.d.ts +3 -3
  132. package/dist/components/chip/types.d.ts +2 -2
  133. package/dist/components/collapsible/CollapsibleTrigger.vue.d.ts +1 -1
  134. package/dist/components/collapsible/index.d.ts +3 -3
  135. package/dist/components/command/Command.vue.d.ts +5 -3
  136. package/dist/components/command/CommandDialog.vue.d.ts +9 -5
  137. package/dist/components/command/CommandEmpty.vue.d.ts +1 -1
  138. package/dist/components/command/CommandGroup.vue.d.ts +1 -1
  139. package/dist/components/command/CommandInput.vue.d.ts +1 -1
  140. package/dist/components/command/CommandItem.vue.d.ts +3 -3
  141. package/dist/components/command/CommandList.vue.d.ts +8 -8
  142. package/dist/components/command/CommandSeparator.vue.d.ts +1 -1
  143. package/dist/components/command/index.d.ts +11 -10
  144. package/dist/components/command/types.d.ts +8 -3
  145. package/dist/components/configurator/Configurator.vue.d.ts +1 -1
  146. package/dist/components/configurator/ConfiguratorRow.vue.d.ts +1 -1
  147. package/dist/components/configurator/index.d.ts +6 -6
  148. package/dist/components/configurator/styles.css +1 -1
  149. package/dist/components/configurator/useConfiguratorState.d.ts +1 -1
  150. package/dist/components/constellation/Constellation.vue.d.ts +3 -5
  151. package/dist/components/constellation/composables/createConstellationField.d.ts +1 -1
  152. package/dist/components/constellation/composables/useConstellation.d.ts +2 -2
  153. package/dist/components/constellation/constants.d.ts +1 -1
  154. package/dist/components/constellation/constellationField.d.ts +3 -4
  155. package/dist/components/constellation/constellationInteraction.d.ts +1 -5
  156. package/dist/components/constellation/constellationRender.d.ts +1 -3
  157. package/dist/components/constellation/constellationTypes.d.ts +0 -11
  158. package/dist/components/constellation/constellationWell.d.ts +1 -1
  159. package/dist/components/constellation/index.d.ts +8 -6
  160. package/dist/components/dark-mode-toggle/dark-mode-toggle.css +1 -1
  161. package/dist/components/dark-mode-toggle/index.d.ts +2 -2
  162. package/dist/components/data-table/DataTable.vue.d.ts +1 -1
  163. package/dist/components/data-table/composables/useDataTableResponsive.d.ts +1 -1
  164. package/dist/components/data-table/index.d.ts +2 -2
  165. package/dist/components/{number-field/NumberFieldContent.vue.d.ts → deck/DeckSlide.vue.d.ts} +12 -1
  166. package/dist/components/deck/DeckStage.vue.d.ts +36 -0
  167. package/dist/components/deck/composables/useDeck.d.ts +35 -10
  168. package/dist/components/deck/composables/useDeckCapture.d.ts +26 -0
  169. package/dist/components/deck/composables/useDeckHashSync.d.ts +8 -0
  170. package/dist/components/deck/composables/useDeckKeyboard.d.ts +16 -8
  171. package/dist/components/deck/composables/useDeckSnap.d.ts +20 -0
  172. package/dist/components/deck/composables/useDeckSwipe.d.ts +13 -0
  173. package/dist/components/deck/composables/useEdgeZones.d.ts +14 -0
  174. package/dist/components/deck/constants.d.ts +0 -3
  175. package/dist/components/deck/index.d.ts +22 -6
  176. package/dist/components/deck/slideContext.d.ts +21 -0
  177. package/dist/components/deck/styles/capture.css +1 -0
  178. package/dist/components/deck/styles/index.css +1 -0
  179. package/dist/components/deck/styles/reveal.css +1 -0
  180. package/dist/components/deck/styles/stage.css +1 -0
  181. package/dist/components/deck/styles/turn.css +1 -0
  182. package/dist/components/deck/types.d.ts +26 -0
  183. package/dist/components/deck/window.d.ts +27 -0
  184. package/dist/components/dialog/Dialog.vue.d.ts +13 -0
  185. package/dist/components/dialog/DialogContent.vue.d.ts +23 -27
  186. package/dist/components/dialog/DialogFooter.vue.d.ts +2 -2
  187. package/dist/components/dialog/DialogHeader.vue.d.ts +2 -2
  188. package/dist/components/dialog/ModalOverlay.vue.d.ts +44 -23
  189. package/dist/components/dialog/index.d.ts +7 -8
  190. package/dist/components/dialog/styles.css +1 -0
  191. package/dist/components/dock/DockControl.vue.d.ts +8 -4
  192. package/dist/components/dock/DockCrossfade.vue.d.ts +3 -3
  193. package/dist/components/dock/DockLayer.vue.d.ts +1 -1
  194. package/dist/components/dock/DockLayerGroup.vue.d.ts +13 -13
  195. package/dist/components/dock/DockSeparator.vue.d.ts +23 -18
  196. package/dist/components/dock/GlassDock.vue.d.ts +4 -4
  197. package/dist/components/dock/composables/dockContext.d.ts +29 -5
  198. package/dist/components/dock/composables/dockCrossfadeContext.d.ts +5 -5
  199. package/dist/components/dock/composables/dockMorphMeasure.d.ts +0 -1
  200. package/dist/components/dock/composables/dockSwitcherContext.d.ts +29 -0
  201. package/dist/components/dock/composables/index.d.ts +10 -10
  202. package/dist/components/dock/composables/useDockHold.d.ts +21 -6
  203. package/dist/components/dock/composables/useDockSearch.d.ts +5 -5
  204. package/dist/components/dock/composables/useDockShellProps.d.ts +10 -34
  205. package/dist/components/dock/composables/useDockState.d.ts +17 -4
  206. package/dist/components/dock/constants.d.ts +17 -3
  207. package/dist/components/dock/index.d.ts +15 -15
  208. package/dist/components/dock/styles/adaptive-legibility.css +1 -1
  209. package/dist/components/dock/styles/controls/icon-button.css +1 -1
  210. package/dist/components/dock/styles/controls/tab-button.css +1 -1
  211. package/dist/components/dock/styles/controls/touch-floor.css +1 -1
  212. package/dist/components/dock/styles/controls/triggers.css +1 -1
  213. package/dist/components/dock/styles/controls.css +1 -1
  214. package/dist/components/dock/styles/crossfade.css +1 -1
  215. package/dist/components/dock/styles/cta-seat.css +1 -1
  216. package/dist/components/dock/styles/density.css +1 -1
  217. package/dist/components/dock/styles/dock.css +1 -1
  218. package/dist/components/dock/styles/index.css +1 -1
  219. package/dist/components/dock/styles/layer-group.css +1 -1
  220. package/dist/components/dock/styles/layers.css +1 -1
  221. package/dist/components/dock/styles/morph.css +1 -1
  222. package/dist/components/dock/styles/overflow.css +1 -1
  223. package/dist/components/dock/styles/search.css +1 -1
  224. package/dist/components/dock/styles/shape.css +1 -1
  225. package/dist/components/dock/styles/shell-regions.css +1 -1
  226. package/dist/components/dock/styles/shell.css +1 -1
  227. package/dist/components/easing/EasingCurve.vue.d.ts +51 -0
  228. package/dist/components/easing/EasingPicker.vue.d.ts +16 -32
  229. package/dist/components/easing/constants.d.ts +15 -13
  230. package/dist/components/easing/index.d.ts +5 -3
  231. package/dist/components/easing/{composables/useEasingPicker.d.ts → usePicker.d.ts} +27 -23
  232. package/dist/components/expandable-container/ExpandableContainer.vue.d.ts +1 -1
  233. package/dist/components/expandable-container/index.d.ts +1 -1
  234. package/dist/components/fading-scroll/constants.d.ts +2 -9
  235. package/dist/components/fading-scroll/index.d.ts +2 -2
  236. package/dist/components/fourier-field/FourierField.vue.d.ts +6 -8
  237. package/dist/components/fourier-field/composables/fourierFieldGLSetup.d.ts +4 -4
  238. package/dist/components/fourier-field/composables/fourierFieldWGPUSetup.d.ts +4 -4
  239. package/dist/components/fourier-field/composables/uniformBridgeWGPU.d.ts +2 -4
  240. package/dist/components/fourier-field/composables/useFourierField.d.ts +4 -4
  241. package/dist/components/fourier-field/constants.d.ts +1 -1
  242. package/dist/components/fourier-field/index.d.ts +7 -9
  243. package/dist/components/handmark/HandMark.vue.d.ts +5 -5
  244. package/dist/components/handmark/composables/useHandMark.d.ts +4 -4
  245. package/dist/components/handmark/geometry.d.ts +1 -4
  246. package/dist/components/handmark/index.d.ts +10 -8
  247. package/dist/components/handmark/ink.d.ts +1 -1
  248. package/dist/components/handmark/texture.d.ts +2 -2
  249. package/dist/components/handmark/types.d.ts +1 -1
  250. package/dist/components/index.d.ts +30 -32
  251. package/dist/components/infinite-scroll/InfiniteScroll.vue.d.ts +3 -3
  252. package/dist/components/infinite-scroll/composables/index.d.ts +2 -2
  253. package/dist/components/infinite-scroll/composables/useInfiniteScroll.d.ts +1 -1
  254. package/dist/components/infinite-scroll/index.d.ts +2 -2
  255. package/dist/components/input/Input.vue.d.ts +10 -5
  256. package/dist/components/input/index.d.ts +3 -2
  257. package/dist/components/input/types.d.ts +49 -9
  258. package/dist/components/label/index.d.ts +1 -1
  259. package/dist/components/labeled-field/LabeledField.vue.d.ts +4 -4
  260. package/dist/components/labeled-field/LabeledInput.vue.d.ts +1 -1
  261. package/dist/components/labeled-field/LabeledSlider.vue.d.ts +1 -1
  262. package/dist/components/labeled-field/LabeledSwitch.vue.d.ts +1 -1
  263. package/dist/components/labeled-field/index.d.ts +5 -6
  264. package/dist/components/labeled-field/types.d.ts +5 -14
  265. package/dist/components/{dropdown-menu → menu}/DropdownMenu.vue.d.ts +2 -2
  266. package/dist/components/{dropdown-menu → menu}/DropdownMenuCheckboxItem.vue.d.ts +2 -2
  267. package/dist/components/{dropdown-menu → menu}/DropdownMenuContent.vue.d.ts +4 -7
  268. package/dist/components/{dropdown-menu → menu}/DropdownMenuRadioGroup.vue.d.ts +1 -1
  269. package/dist/components/{dropdown-menu → menu}/DropdownMenuRadioItem.vue.d.ts +1 -1
  270. package/dist/components/{dropdown-menu → menu}/DropdownMenuSubContent.vue.d.ts +7 -7
  271. package/dist/components/{dropdown-menu → menu}/DropdownMenuTrigger.vue.d.ts +1 -1
  272. package/dist/components/{dropdown-menu → menu}/index.d.ts +15 -15
  273. package/dist/components/metric/Metric.vue.d.ts +7 -5
  274. package/dist/components/metric/MetricRow.vue.d.ts +4 -12
  275. package/dist/components/metric/MetricStack.vue.d.ts +2 -2
  276. package/dist/components/metric/coalesce-metric.d.ts +30 -2
  277. package/dist/components/metric/index.d.ts +6 -5
  278. package/dist/components/metric/styles.css +1 -1
  279. package/dist/components/metric/types.d.ts +25 -13
  280. package/dist/components/music-staff/MusicStaff.vue.d.ts +22 -0
  281. package/dist/components/music-staff/glyphs.d.ts +74 -0
  282. package/dist/components/music-staff/index.d.ts +4 -0
  283. package/dist/components/music-staff/midiAdapter.d.ts +22 -0
  284. package/dist/components/music-staff/staffGeometry.d.ts +216 -0
  285. package/dist/components/music-staff/styles.css +1 -0
  286. package/dist/components/number-field/NumberField.vue.d.ts +7 -2
  287. package/dist/components/number-field/NumberFieldStep.vue.d.ts +31 -0
  288. package/dist/components/number-field/context.d.ts +4 -0
  289. package/dist/components/number-field/index.d.ts +3 -5
  290. package/dist/components/pager-dots/PagerDots.vue.d.ts +22 -10
  291. package/dist/components/pager-dots/index.d.ts +3 -2
  292. package/dist/components/pager-dots/worm.d.ts +42 -0
  293. package/dist/components/popover/Popover.vue.d.ts +23 -1
  294. package/dist/components/popover/PopoverContent.vue.d.ts +17 -14
  295. package/dist/components/popover/PopoverTrigger.vue.d.ts +1 -1
  296. package/dist/components/popover/index.d.ts +3 -3
  297. package/dist/components/popover/popoverContext.d.ts +10 -0
  298. package/dist/components/progress/Progress.vue.d.ts +5 -5
  299. package/dist/components/progress/index.d.ts +2 -2
  300. package/dist/components/progress/types.d.ts +16 -6
  301. package/dist/components/radio-group/RadioGroup.vue.d.ts +5 -7
  302. package/dist/components/radio-group/RadioGroupItem.vue.d.ts +3 -2
  303. package/dist/components/radio-group/index.d.ts +4 -4
  304. package/dist/components/scroll-progress-rim/ScrollProgressRim.vue.d.ts +2 -14
  305. package/dist/components/scroll-progress-rim/index.d.ts +2 -3
  306. package/dist/components/scroll-progress-rim/styles.css +1 -1
  307. package/dist/components/scroll-progress-rim/types.d.ts +20 -2
  308. package/dist/components/search/SearchBar.vue.d.ts +3 -3
  309. package/dist/components/search/composables/fuzzySearchIndex.d.ts +1 -1
  310. package/dist/components/search/composables/index.d.ts +5 -5
  311. package/dist/components/search/composables/useFuzzySearch.d.ts +1 -1
  312. package/dist/components/search/index.d.ts +8 -9
  313. package/dist/components/search/searchVariants.d.ts +3 -4
  314. package/dist/components/select/Select.vue.d.ts +2 -2
  315. package/dist/components/select/SelectContent.vue.d.ts +4 -9
  316. package/dist/components/select/SelectItem.vue.d.ts +1 -1
  317. package/dist/components/select/SelectScrollButton.vue.d.ts +18 -0
  318. package/dist/components/select/SelectTrigger.vue.d.ts +1 -8
  319. package/dist/components/select/SelectValue.vue.d.ts +4 -6
  320. package/dist/components/select/index.d.ts +18 -16
  321. package/dist/components/separator/Separator.vue.d.ts +1 -1
  322. package/dist/components/separator/index.d.ts +1 -1
  323. package/dist/components/sheet/SheetContent.vue.d.ts +60 -0
  324. package/dist/components/sheet/detents/projection.d.ts +42 -0
  325. package/dist/components/sheet/detents/use.d.ts +27 -0
  326. package/dist/components/sheet/index.d.ts +4 -0
  327. package/dist/components/sheet/motion.d.ts +29 -0
  328. package/dist/components/sheet/styles.css +1 -0
  329. package/dist/components/skeleton/index.d.ts +1 -1
  330. package/dist/components/slider/Slider.vue.d.ts +2 -3
  331. package/dist/components/slider/index.d.ts +2 -2
  332. package/dist/components/slider/styles.css +1 -0
  333. package/dist/components/slider/types.d.ts +13 -4
  334. package/dist/components/sortable-list/SortableItem.vue.d.ts +1 -1
  335. package/dist/components/sortable-list/SortableList.vue.d.ts +1 -2
  336. package/dist/components/sortable-list/context.d.ts +1 -1
  337. package/dist/components/sortable-list/drag.d.ts +52 -0
  338. package/dist/components/sortable-list/ghost.d.ts +40 -0
  339. package/dist/components/sortable-list/index.d.ts +4 -4
  340. package/dist/components/sortable-list/motion.d.ts +75 -0
  341. package/dist/components/sortable-list/resolve.d.ts +56 -0
  342. package/dist/components/sortable-list/{composables/types.d.ts → types.d.ts} +14 -7
  343. package/dist/components/sortable-list/{composables/useSortable.d.ts → useSortable.d.ts} +2 -4
  344. package/dist/components/status-dot/StatusDot.vue.d.ts +10 -3
  345. package/dist/components/status-dot/index.d.ts +3 -2
  346. package/dist/components/status-dot/states.d.ts +4 -0
  347. package/dist/components/surface/Surface.vue.d.ts +31 -14
  348. package/dist/components/surface/index.d.ts +2 -2
  349. package/dist/components/switch/Switch.vue.d.ts +7 -12
  350. package/dist/components/switch/index.d.ts +2 -2
  351. package/dist/components/table/index.d.ts +8 -8
  352. package/dist/components/tabs/SegmentedTabs.vue.d.ts +9 -13
  353. package/dist/components/tabs/composables/useTabDragMorph.d.ts +2 -2
  354. package/dist/components/tabs/composables/useTabResponsive.d.ts +1 -1
  355. package/dist/components/tabs/composables/useTabRovingFocus.d.ts +15 -7
  356. package/dist/components/tabs/index.d.ts +2 -2
  357. package/dist/components/tabs/styles/drag.css +1 -1
  358. package/dist/components/tabs/styles/segmented.css +1 -1
  359. package/dist/components/textarea/Textarea.vue.d.ts +10 -5
  360. package/dist/components/textarea/index.d.ts +2 -2
  361. package/dist/components/textarea/types.d.ts +34 -11
  362. package/dist/components/timeline/Timeline.vue.d.ts +41 -0
  363. package/dist/components/timeline/geometry.d.ts +53 -78
  364. package/dist/components/timeline/index.d.ts +2 -2
  365. package/dist/components/timeline/types.d.ts +42 -42
  366. package/dist/components/toast/Toast.vue.d.ts +3 -3
  367. package/dist/components/toast/index.d.ts +8 -8
  368. package/dist/components/toast/use-toast.d.ts +9 -2
  369. package/dist/components/toggle-group/ToggleGroup.vue.d.ts +29 -40
  370. package/dist/components/toggle-group/ToggleGroupItem.vue.d.ts +7 -7
  371. package/dist/components/toggle-group/context.d.ts +28 -0
  372. package/dist/components/toggle-group/index.d.ts +2 -3
  373. package/dist/components/tooltip/TooltipContent.vue.d.ts +3 -8
  374. package/dist/components/tooltip/TooltipTrigger.vue.d.ts +1 -1
  375. package/dist/components/tooltip/index.d.ts +4 -4
  376. package/dist/components/typewriter/TypewriterText.vue.d.ts +12 -32
  377. package/dist/components/typewriter/composables/useTypewriter.d.ts +1 -1
  378. package/dist/components/typewriter/index.d.ts +7 -7
  379. package/dist/components/typewriter/types.d.ts +1 -1
  380. package/dist/components/typewriter/utils/timing.d.ts +1 -1
  381. package/dist/components/typewriter/utils/typoStateMachine.d.ts +1 -1
  382. package/dist/composables/color/accent-tone-solve.d.ts +1 -1
  383. package/dist/composables/color/index.d.ts +7 -7
  384. package/dist/composables/context/index.d.ts +1 -1
  385. package/dist/composables/dark/index.d.ts +5 -5
  386. package/dist/composables/dom/index.d.ts +10 -10
  387. package/dist/composables/dom/useDragVelocity.d.ts +7 -0
  388. package/dist/composables/glass/backdropLuminanceSample.d.ts +20 -22
  389. package/dist/composables/glass/backdropSampleMath.d.ts +10 -0
  390. package/dist/composables/glass/canvas2d/index.d.ts +3 -3
  391. package/dist/composables/glass/canvas2d/useCanvas2D.d.ts +2 -10
  392. package/dist/composables/glass/index.d.ts +5 -7
  393. package/dist/composables/glass/useGlassBackdropLuminance.d.ts +3 -4
  394. package/dist/composables/glass/useSpecularTracking.d.ts +1 -1
  395. package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +13 -22
  396. package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +10 -13
  397. package/dist/composables/glass/webgl/visibility.d.ts +1 -1
  398. package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +10 -13
  399. package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +3 -4
  400. package/dist/composables/glass/webgpu/webgpuCanvasTypes.d.ts +9 -11
  401. package/dist/composables/glass/webgpu/webgpuDevice.d.ts +0 -17
  402. package/dist/composables/keyboard/index.d.ts +1 -1
  403. package/dist/composables/motion/core/constants.d.ts +7 -0
  404. package/dist/composables/motion/core/index.d.ts +21 -21
  405. package/dist/composables/motion/core/motionTempo.d.ts +0 -2
  406. package/dist/composables/motion/dissolve/dissolveGrammar.d.ts +88 -0
  407. package/dist/composables/motion/engage/engageEnvelopes.d.ts +45 -0
  408. package/dist/composables/motion/engage/engageLadder.d.ts +86 -0
  409. package/dist/composables/motion/index.d.ts +14 -14
  410. package/dist/composables/motion/morph/eyeglass.d.ts +141 -0
  411. package/dist/composables/motion/morph/useDockCtaReceive.d.ts +6 -6
  412. package/dist/composables/motion/morph/useElementMorph.d.ts +4 -4
  413. package/dist/composables/motion/morph/useLeadTrail.d.ts +30 -28
  414. package/dist/composables/motion/morph/useSelectionGroup.d.ts +61 -23
  415. package/dist/composables/motion/morph/useSelectionIndicator.d.ts +52 -22
  416. package/dist/composables/motion/number/useAnimatedNumberMap.d.ts +1 -1
  417. package/dist/composables/motion/pointer/pointerFieldMappings.d.ts +1 -1
  418. package/dist/composables/motion/pointer/useRoutePointer.d.ts +1 -1
  419. package/dist/composables/motion/reveal/useLiquidReveal.d.ts +7 -6
  420. package/dist/composables/motion/route/routeGrammar.d.ts +60 -0
  421. package/dist/composables/motion/route/useRouteTransition.d.ts +45 -0
  422. package/dist/composables/motion/scroll/useScrollProgress.d.ts +7 -14
  423. package/dist/composables/motion/scroll/useScrollScene.d.ts +5 -4
  424. package/dist/composables/motion/spring/springPresets.d.ts +13 -27
  425. package/dist/composables/motion/spring/springProjection.d.ts +3 -4
  426. package/dist/composables/motion/spring/useLiquidPress.d.ts +2 -2
  427. package/dist/composables/motion/spring/useSpring.d.ts +3 -3
  428. package/dist/composables/motion/spring/useSpringMount.d.ts +6 -3
  429. package/dist/composables/motion/spring/useSpringPress.d.ts +6 -6
  430. package/dist/composables/reactive/index.d.ts +2 -2
  431. package/dist/composables/sidebar/index.d.ts +10 -10
  432. package/dist/composables/sidebar/useClickDelegate.d.ts +1 -1
  433. package/dist/composables/sidebar/useLazyLoader.d.ts +1 -1
  434. package/dist/composables/sidebar/useScrollTo.d.ts +1 -1
  435. package/dist/composables/sidebar/useScrollTracker.d.ts +1 -1
  436. package/dist/composables/sidebar/useSidebarState.d.ts +1 -1
  437. package/dist/composables/sidebar/useTreeIndex.d.ts +1 -1
  438. package/dist/{configurator-M5OaIlJd.js → configurator-BoeScnDL.js} +5 -5
  439. package/dist/configurator.d.ts +1 -1
  440. package/dist/configurator.js +1 -1
  441. package/dist/{constants-nBz23tJE.js → constants-Dk96HZHu.js} +2 -2
  442. package/dist/constellation.d.ts +1 -1
  443. package/dist/constellation.js +136 -135
  444. package/dist/content-CWO-XL7o.js +18 -0
  445. package/dist/control-Da4XeT43.js +11 -0
  446. package/dist/{field-control.css_vue_type_style_index_0_src_true_lang-CeLay9Tk.js → control.css_vue_type_style_index_0_src_true_lang-BIdufaDG.js} +1 -1
  447. package/dist/{createCanvasLifecycle-DbXRwjU_.js → createCanvasLifecycle-hJHobVTn.js} +2 -5
  448. package/dist/dark-mode-toggle.d.ts +1 -1
  449. package/dist/dark-mode-toggle.js +2 -2
  450. package/dist/dark.d.ts +1 -1
  451. package/dist/data-table-_RrOEdiw.js +493 -0
  452. package/dist/data-table.d.ts +1 -1
  453. package/dist/data-table.js +1 -1
  454. package/dist/deck-Ci6YjB5e.js +453 -0
  455. package/dist/deck.d.ts +1 -1
  456. package/dist/deck.js +2 -94
  457. package/dist/dialog-CbRnTRtg.js +78 -0
  458. package/dist/dialog.d.ts +1 -1
  459. package/dist/dialog.js +3 -2
  460. package/dist/dock.d.ts +1 -1
  461. package/dist/dock.js +546 -519
  462. package/dist/dom.d.ts +1 -1
  463. package/dist/dom.js +57 -35
  464. package/dist/easing.d.ts +1 -1
  465. package/dist/easing.js +686 -515
  466. package/dist/expandable-container.d.ts +1 -1
  467. package/dist/expandable-container.js +80 -78
  468. package/dist/{fading-scroll-DhxXIhm2.js → fading-scroll-CTeW3KNS.js} +30 -30
  469. package/dist/fading-scroll.d.ts +1 -1
  470. package/dist/fading-scroll.js +1 -1
  471. package/dist/focus-Duf7EpUu.js +13 -0
  472. package/dist/fourier-field.d.ts +1 -1
  473. package/dist/fourier-field.js +84 -86
  474. package/dist/fourier-math.d.ts +1 -1
  475. package/dist/glass-ui.css +1 -1
  476. package/dist/glass-ui.js +123 -472
  477. package/dist/handmark.d.ts +1 -1
  478. package/dist/handmark.js +1 -1
  479. package/dist/index.d.ts +41 -42
  480. package/dist/infinite-scroll.d.ts +1 -1
  481. package/dist/infinite-scroll.js +56 -43
  482. package/dist/input-Bls2A4Tt.js +54 -0
  483. package/dist/input.d.ts +1 -0
  484. package/dist/input.js +2 -0
  485. package/dist/keyboard.d.ts +1 -1
  486. package/dist/label-BQEZhnK_.js +53 -0
  487. package/dist/label.d.ts +1 -1
  488. package/dist/label.js +1 -1
  489. package/dist/labeled-field.d.ts +1 -1
  490. package/dist/labeled-field.js +64 -148
  491. package/dist/menu-wLu1XGKn.js +501 -0
  492. package/dist/menu.d.ts +1 -0
  493. package/dist/{dropdown-menu.js → menu.js} +2 -2
  494. package/dist/metric.d.ts +1 -1
  495. package/dist/metric.js +79 -132
  496. package/dist/motion-D4uYE0UM.js +61 -0
  497. package/dist/motion-core.d.ts +1 -1
  498. package/dist/motion-core.js +185 -52
  499. package/dist/motion.d.ts +1 -1
  500. package/dist/motion.js +160 -178
  501. package/dist/music-staff.d.ts +1 -0
  502. package/dist/music-staff.js +915 -0
  503. package/dist/number-field-NFAwQ0HK.js +111 -0
  504. package/dist/number-field.d.ts +1 -1
  505. package/dist/number-field.js +2 -2
  506. package/dist/pager-dots.d.ts +1 -1
  507. package/dist/pager-dots.js +362 -2
  508. package/dist/participation-B0hdsIRo.js +42 -0
  509. package/dist/popover-DBMKTPkL.js +181 -0
  510. package/dist/popover.d.ts +1 -1
  511. package/dist/popover.js +1 -1
  512. package/dist/progress-DF8dWZIX.js +74 -0
  513. package/dist/progress.d.ts +1 -1
  514. package/dist/progress.js +1 -1
  515. package/dist/radio-group-Ci8o-pDx.js +85 -0
  516. package/dist/radio-group.d.ts +1 -0
  517. package/dist/radio-group.js +2 -0
  518. package/dist/reactive.d.ts +1 -1
  519. package/dist/resolve-DdrNvBby.js +6 -0
  520. package/dist/{resolveCanvasColor-DS_6DBxA.js → resolveCanvasColor-6MCrswTB.js} +3 -4
  521. package/dist/rowClass-DYOXwxhO.js +10 -0
  522. package/dist/scroll-progress-rim.d.ts +1 -1
  523. package/dist/scroll-progress-rim.js +48 -42
  524. package/dist/search.d.ts +1 -1
  525. package/dist/search.js +28 -319
  526. package/dist/select-CDgwGH_P.js +290 -0
  527. package/dist/select.d.ts +1 -1
  528. package/dist/select.js +2 -2
  529. package/dist/separator-CN11t406.js +73 -0
  530. package/dist/separator.d.ts +1 -1
  531. package/dist/separator.js +1 -1
  532. package/dist/sheet-BEFvnO_u.js +340 -0
  533. package/dist/sheet.d.ts +1 -0
  534. package/dist/sheet.js +3 -0
  535. package/dist/sidebar.d.ts +1 -1
  536. package/dist/slider-gsc8jDIo.js +227 -0
  537. package/dist/slider.d.ts +1 -1
  538. package/dist/slider.js +1 -1
  539. package/dist/sortable-list.d.ts +1 -1
  540. package/dist/sortable-list.js +411 -286
  541. package/dist/springPresets-Cbe0Voqg.js +52 -0
  542. package/dist/status-dot-BpnqOP5N.js +56 -0
  543. package/dist/status-dot.d.ts +1 -1
  544. package/dist/status-dot.js +2 -42
  545. package/dist/styles/accessibility.css +1 -1
  546. package/dist/styles/animations.css +1 -1
  547. package/dist/styles/components.css +1 -1
  548. package/dist/styles/fonts.css +1 -1
  549. package/dist/styles/glass/a11y-fallback.css +1 -1
  550. package/dist/styles/glass/control-bit.css +1 -0
  551. package/dist/styles/glass/control-edge.css +1 -0
  552. package/dist/styles/glass/control-surfaces.css +1 -1
  553. package/dist/styles/glass/deep.css +1 -1
  554. package/dist/styles/glass/defined.css +1 -1
  555. package/dist/styles/glass/dissolve.css +1 -0
  556. package/dist/styles/glass/focus-veil.css +1 -0
  557. package/dist/styles/glass/glass-atom.css +1 -1
  558. package/dist/styles/glass/glass-capsule.css +1 -1
  559. package/dist/styles/glass/glass-chip.css +1 -1
  560. package/dist/styles/glass/grasp.css +1 -0
  561. package/dist/styles/glass/ladder-undershadow.css +1 -1
  562. package/dist/styles/glass/ladder.css +1 -1
  563. package/dist/styles/glass/liquid-enter.css +1 -1
  564. package/dist/styles/glass/liquid-fill.css +1 -1
  565. package/dist/styles/glass/mark.css +1 -0
  566. package/dist/styles/glass/material.css +1 -1
  567. package/dist/styles/glass/overlay-plate.css +1 -0
  568. package/dist/styles/glass/reveal.css +1 -1
  569. package/dist/styles/glass/rim.css +1 -1
  570. package/dist/styles/glass/squircle.css +1 -1
  571. package/dist/styles/glass/surface-axis.css +1 -1
  572. package/dist/styles/glass/surfaces-pager.css +1 -1
  573. package/dist/styles/glass/surfaces.css +1 -1
  574. package/dist/styles/glass/track-flow.css +1 -0
  575. package/dist/styles/glass/value-marks.css +1 -0
  576. package/dist/styles/glass/veil.css +1 -0
  577. package/dist/styles/glass-specular-track.css +1 -1
  578. package/dist/styles/glass.css +1 -1
  579. package/dist/styles/index.css +1 -1
  580. package/dist/styles/paper.css +1 -1
  581. package/dist/styles/scroll-choreography.css +1 -1
  582. package/dist/styles/scroll-chrome.css +1 -1
  583. package/dist/styles/scroll-driven.css +1 -1
  584. package/dist/styles/theme/bridges.css +1 -1
  585. package/dist/styles/theme/dark.css +1 -1
  586. package/dist/styles/theme/literals.css +1 -1
  587. package/dist/styles/theme/radius.css +1 -1
  588. package/dist/styles/theme.css +1 -1
  589. package/dist/styles/tokens/color-radius.css +1 -1
  590. package/dist/styles/tokens/dark-arm-glass.css +1 -1
  591. package/dist/styles/tokens/dark-arm.css +1 -1
  592. package/dist/styles/tokens/glass-deep.css +1 -1
  593. package/dist/styles/tokens/glass-fx.css +1 -1
  594. package/dist/styles/tokens/glass.css +1 -1
  595. package/dist/styles/tokens/light-dark.css +1 -1
  596. package/dist/styles/tokens/manifest.d.ts +4 -4
  597. package/dist/styles/tokens/motion-registers.css +1 -1
  598. package/dist/styles/tokens/offsets.css +1 -1
  599. package/dist/styles/tokens/on-glass-fg.css +1 -1
  600. package/dist/styles/tokens/property-regs-specular.css +1 -1
  601. package/dist/styles/tokens/property-regs.css +1 -1
  602. package/dist/styles/tokens/scale-paper.css +1 -1
  603. package/dist/styles/tokens/scheme-motion.css +1 -1
  604. package/dist/styles/tokens/scheme-spring.css +1 -1
  605. package/dist/styles/tokens/scroll-tokens.css +1 -1
  606. package/dist/styles/tokens/shadow.css +1 -1
  607. package/dist/styles/tokens/sizing-config.css +1 -1
  608. package/dist/styles/tokens/sizing.css +1 -1
  609. package/dist/styles/tokens.css +1 -1
  610. package/dist/styles/tokens.d.ts +2 -2
  611. package/dist/styles/track-well.css +1 -0
  612. package/dist/styles/transitions.css +1 -1
  613. package/dist/styles/typography/scale.css +1 -1
  614. package/dist/styles/typography/semantic.css +1 -1
  615. package/dist/styles/typography/utilities.css +1 -1
  616. package/dist/styles/typography.css +1 -1
  617. package/dist/styles/utilities/a11y-overrides.css +1 -1
  618. package/dist/styles/utilities/base-misc.css +1 -1
  619. package/dist/styles/utilities/base.css +1 -1
  620. package/dist/styles/utilities/btn.css +1 -1
  621. package/dist/styles/utilities/components.css +1 -1
  622. package/dist/styles/utilities/metal.css +1 -1
  623. package/dist/styles/utilities/responsive.css +1 -1
  624. package/dist/styles/utilities.css +1 -1
  625. package/dist/styles/view-transition.css +1 -1
  626. package/dist/styles/viz-reveal.css +1 -1
  627. package/dist/{supportsCssTimeline-C2zyWpl8.js → supportsCssTimeline-Di9gzleG.js} +5 -4
  628. package/dist/surface.d.ts +1 -1
  629. package/dist/surface.js +1 -1
  630. package/dist/switch-DxZzDrmV.js +49 -0
  631. package/dist/switch.d.ts +1 -1
  632. package/dist/switch.js +1 -1
  633. package/dist/tabs-CYscnq5H.js +268 -0
  634. package/dist/tabs.d.ts +1 -1
  635. package/dist/tabs.js +2 -311
  636. package/dist/textarea.d.ts +1 -0
  637. package/dist/textarea.js +58 -0
  638. package/dist/timeline.d.ts +1 -1
  639. package/dist/timeline.js +238 -528
  640. package/dist/{toast-CH5mnsYT.js → toast-9c6Kp58L.js} +52 -50
  641. package/dist/toast.d.ts +1 -1
  642. package/dist/toast.js +1 -1
  643. package/dist/toggle-group-11aPGMfE.js +125 -0
  644. package/dist/toggle-group.d.ts +1 -1
  645. package/dist/toggle-group.js +1 -1
  646. package/dist/tokens.d.ts +1 -1
  647. package/dist/tokens.js +12 -10
  648. package/dist/tooltip-DqKMZ4dn.js +142 -0
  649. package/dist/tooltip.d.ts +1 -1
  650. package/dist/tooltip.js +1 -1
  651. package/dist/typewriter.d.ts +1 -1
  652. package/dist/typewriter.js +10 -32
  653. package/dist/useAccentTone-DFAh1osB.js +47 -0
  654. package/dist/{useDockCtaReceive-DkrOTM0q.js → useDockCtaReceive-BSSgD6mu.js} +2 -2
  655. package/dist/{useDragMorph-BogSV_nv.js → useDragMorph-B363RUbF.js} +59 -59
  656. package/dist/{useDragVelocity-6ONX0sr0.js → useDragVelocity-C5BkKiNf.js} +28 -24
  657. package/dist/useIntersectionPause-CzKR3EyP.js +57 -0
  658. package/dist/useLeadTrail-DQWdpFN1.js +83 -0
  659. package/dist/{useLiquidPress-BOxuDkKa.js → useLiquidPress-h1scrPtP.js} +1 -1
  660. package/dist/{useTouchGate-B4mzQcHJ.js → useResolveTokenColor-CspQv_ik.js} +24 -1
  661. package/dist/useScrollChrome-BJbWV32F.js +162 -0
  662. package/dist/useScrollProgress-Bq-KPaKM.js +41 -0
  663. package/dist/{useScrollTrigger-BDdqptlc.js → useScrollTrigger-Abe5dEeO.js} +25 -26
  664. package/dist/useSelectionGroup-zsEwitF6.js +291 -0
  665. package/dist/{useSpringMount-uQ8QL9Ff.js → useSpringMount-OA-0mTNv.js} +5 -6
  666. package/dist/vReveal-B5WYGofz.js +44 -0
  667. package/dist/{valueDomain-SbVzoHMH.js → valueDomain-DXRzfc8l.js} +1 -1
  668. package/package.json +53 -92
  669. package/dist/FeedbackMark-DZq5001h.js +0 -23
  670. package/dist/Input-9BlLluik.js +0 -77
  671. package/dist/PagerDots-BEq0MgtH.js +0 -311
  672. package/dist/Surface-kFQeYrYv.js +0 -82
  673. package/dist/animated-digit.d.ts +0 -1
  674. package/dist/animated-digit.js +0 -44
  675. package/dist/badge-u65NClWn.js +0 -62
  676. package/dist/button-Bu9F4uU6.js +0 -98
  677. package/dist/chip-DFZQr6rV.js +0 -129
  678. package/dist/command-SFqDQ65h.js +0 -320
  679. package/dist/completion-seal.d.ts +0 -1
  680. package/dist/completion-seal.js +0 -132
  681. package/dist/components/_shared/FeedbackMark.vue.d.ts +0 -11
  682. package/dist/components/_shared/control-size.d.ts +0 -2
  683. package/dist/components/_shared/disclosure.css +0 -1
  684. package/dist/components/_shared/feedback-tone.css +0 -1
  685. package/dist/components/_shared/feedback.d.ts +0 -7
  686. package/dist/components/_shared/field-control.css +0 -1
  687. package/dist/components/_shared/field-surfaces.css +0 -1
  688. package/dist/components/_shared/floating.d.ts +0 -14
  689. package/dist/components/_shared/menu.css +0 -1
  690. package/dist/components/_shared/menuRowClass.d.ts +0 -2
  691. package/dist/components/_shared/resolveSurfaceClass.d.ts +0 -3
  692. package/dist/components/animated-digit/AnimatedDigit.vue.d.ts +0 -55
  693. package/dist/components/animated-digit/index.d.ts +0 -2
  694. package/dist/components/avatar/styles.css +0 -1
  695. package/dist/components/card/CardAction.vue.d.ts +0 -17
  696. package/dist/components/card/card-scroll.css +0 -1
  697. package/dist/components/carousel/interface.d.ts +0 -22
  698. package/dist/components/checkbox/styles.css +0 -1
  699. package/dist/components/combobox/Combobox.vue.d.ts +0 -22
  700. package/dist/components/combobox/ComboboxAnchor.vue.d.ts +0 -14
  701. package/dist/components/combobox/ComboboxEmpty.vue.d.ts +0 -14
  702. package/dist/components/combobox/ComboboxGroup.vue.d.ts +0 -14
  703. package/dist/components/combobox/ComboboxInput.vue.d.ts +0 -18
  704. package/dist/components/combobox/ComboboxItem.vue.d.ts +0 -18
  705. package/dist/components/combobox/ComboboxItemIndicator.vue.d.ts +0 -14
  706. package/dist/components/combobox/ComboboxList.vue.d.ts +0 -29
  707. package/dist/components/combobox/ComboboxTrigger.vue.d.ts +0 -16
  708. package/dist/components/combobox/index.d.ts +0 -10
  709. package/dist/components/combobox/types.d.ts +0 -87
  710. package/dist/components/command/dialogContext.d.ts +0 -6
  711. package/dist/components/command/styles.css +0 -1
  712. package/dist/components/completion-seal/CompletionSeal.vue.d.ts +0 -28
  713. package/dist/components/completion-seal/composables/useCompletionSeal.d.ts +0 -37
  714. package/dist/components/completion-seal/constants.d.ts +0 -66
  715. package/dist/components/completion-seal/index.d.ts +0 -4
  716. package/dist/components/completion-seal/styles.css +0 -1
  717. package/dist/components/data-table/styles.css +0 -1
  718. package/dist/components/deck/DeckPager.vue.d.ts +0 -29
  719. package/dist/components/dialog/DialogClose.vue.d.ts +0 -16
  720. package/dist/components/dialog/DialogTrigger.vue.d.ts +0 -16
  721. package/dist/components/dialog/dialogStageContext.d.ts +0 -7
  722. package/dist/components/dialog/placement.css +0 -1
  723. package/dist/components/dialog/sheet-motion.d.ts +0 -17
  724. package/dist/components/drawer/Drawer.vue.d.ts +0 -82
  725. package/dist/components/drawer/DrawerContent.vue.d.ts +0 -39
  726. package/dist/components/drawer/DrawerDescription.vue.d.ts +0 -17
  727. package/dist/components/drawer/DrawerFooter.vue.d.ts +0 -17
  728. package/dist/components/drawer/DrawerHeader.vue.d.ts +0 -17
  729. package/dist/components/drawer/DrawerOverlay.vue.d.ts +0 -8
  730. package/dist/components/drawer/DrawerTitle.vue.d.ts +0 -17
  731. package/dist/components/drawer/composables/drawerSnapContext.d.ts +0 -34
  732. package/dist/components/drawer/composables/useDrawerSnap.d.ts +0 -26
  733. package/dist/components/drawer/constants.d.ts +0 -32
  734. package/dist/components/drawer/index.d.ts +0 -33
  735. package/dist/components/drawer/styles.css +0 -1
  736. package/dist/components/dropdown-menu/styles.css +0 -1
  737. package/dist/components/easing/EasingConfigurator.vue.d.ts +0 -33
  738. package/dist/components/expandable-container/styles.css +0 -1
  739. package/dist/components/fourier-field/presets.d.ts +0 -54
  740. package/dist/components/header-ribbon/HeaderRibbon.vue.d.ts +0 -13
  741. package/dist/components/header-ribbon/index.d.ts +0 -2
  742. package/dist/components/header-ribbon/styles.css +0 -1
  743. package/dist/components/header-ribbon/types.d.ts +0 -10
  744. package/dist/components/instrument-chassis/InstrumentChassis.vue.d.ts +0 -23
  745. package/dist/components/instrument-chassis/index.d.ts +0 -2
  746. package/dist/components/instrument-chassis/styles.css +0 -1
  747. package/dist/components/instrument-chassis/types.d.ts +0 -13
  748. package/dist/components/labeled-field/LabeledSelect.vue.d.ts +0 -20
  749. package/dist/components/liquid-grid/LiquidGrid.vue.d.ts +0 -46
  750. package/dist/components/liquid-grid/composables/liquidGrid.d.ts +0 -113
  751. package/dist/components/liquid-grid/composables/liquidGridGLSetup.d.ts +0 -18
  752. package/dist/components/liquid-grid/composables/liquidGridWGPUSetup.d.ts +0 -21
  753. package/dist/components/liquid-grid/composables/uniformBridgeWGPU.d.ts +0 -16
  754. package/dist/components/liquid-grid/composables/useLiquidGrid.d.ts +0 -32
  755. package/dist/components/liquid-grid/constants.d.ts +0 -92
  756. package/dist/components/liquid-grid/index.d.ts +0 -5
  757. package/dist/components/liquid-grid/shaders/liquid-grid.glsl.d.ts +0 -4
  758. package/dist/components/liquid-grid/shaders/liquid-grid.wgsl.d.ts +0 -1
  759. package/dist/components/metric/MetricCell.vue.d.ts +0 -26
  760. package/dist/components/number-field/NumberFieldDecrement.vue.d.ts +0 -18
  761. package/dist/components/number-field/NumberFieldIncrement.vue.d.ts +0 -18
  762. package/dist/components/number-field/styles.css +0 -1
  763. package/dist/components/pager-dots/composables/usePagerWorm.d.ts +0 -26
  764. package/dist/components/pager-dots/constants.d.ts +0 -14
  765. package/dist/components/pager-dots/pagerWindow.d.ts +0 -9
  766. package/dist/components/paper-backdrop/PaperBackdrop.vue.d.ts +0 -8
  767. package/dist/components/paper-backdrop/index.d.ts +0 -2
  768. package/dist/components/pulse/Pulse.vue.d.ts +0 -14
  769. package/dist/components/pulse/index.d.ts +0 -2
  770. package/dist/components/radio-group/styles.css +0 -1
  771. package/dist/components/search/FuzzySearch.vue.d.ts +0 -24
  772. package/dist/components/select/SelectScrollDownButton.vue.d.ts +0 -17
  773. package/dist/components/select/SelectScrollUpButton.vue.d.ts +0 -17
  774. package/dist/components/sortable-list/composables/dragController.d.ts +0 -29
  775. package/dist/components/sortable-list/composables/dropResolver.d.ts +0 -34
  776. package/dist/components/sortable-list/composables/ghostRenderer.d.ts +0 -44
  777. package/dist/components/sortable-list/composables/index.d.ts +0 -1
  778. package/dist/components/sortable-list/composables/touchGate.d.ts +0 -26
  779. package/dist/components/sortable-list/composables/transitionTiming.d.ts +0 -50
  780. package/dist/components/switch/styles.css +0 -1
  781. package/dist/components/tabs/constants.d.ts +0 -1
  782. package/dist/components/tags-input/TagsInput.vue.d.ts +0 -41
  783. package/dist/components/tags-input/TagsInputInput.vue.d.ts +0 -10
  784. package/dist/components/tags-input/TagsInputItem.vue.d.ts +0 -19
  785. package/dist/components/tags-input/TagsInputItemDelete.vue.d.ts +0 -17
  786. package/dist/components/tags-input/TagsInputItemText.vue.d.ts +0 -7
  787. package/dist/components/tags-input/context.d.ts +0 -5
  788. package/dist/components/tags-input/index.d.ts +0 -5
  789. package/dist/components/tags-input/styles.css +0 -1
  790. package/dist/components/timeline/ContinuousMarkers.vue.d.ts +0 -47
  791. package/dist/components/timeline/ContinuousRail.vue.d.ts +0 -23
  792. package/dist/components/timeline/ContinuousTimeline.vue.d.ts +0 -117
  793. package/dist/components/timeline/GlassTimeline.vue.d.ts +0 -113
  794. package/dist/components/timeline/ScrubberTimeline.vue.d.ts +0 -45
  795. package/dist/components/timeline/SegmentedTimeline.vue.d.ts +0 -45
  796. package/dist/components/toggle-group/styles.css +0 -1
  797. package/dist/components/toggle-group/toggleGroupContext.d.ts +0 -9
  798. package/dist/components/typewriter/composables/index.d.ts +0 -1
  799. package/dist/components/watercolor-dot/WatercolorDot.vue.d.ts +0 -61
  800. package/dist/components/watercolor-dot/index.d.ts +0 -3
  801. package/dist/components/watercolor-dot/prng.d.ts +0 -5
  802. package/dist/components/watercolor-dot/useWatercolorBlob.d.ts +0 -28
  803. package/dist/composables/glass/ambientHueHistogram.d.ts +0 -27
  804. package/dist/composables/glass/useSpecularPointer.d.ts +0 -52
  805. package/dist/composables/glass/wave/index.d.ts +0 -4
  806. package/dist/composables/glass/wave/waveField.d.ts +0 -136
  807. package/dist/composables/glass/wave/waveField.glsl.d.ts +0 -1
  808. package/dist/composables/glass/wave/waveField.wgsl.d.ts +0 -1
  809. package/dist/composables/glass/webgpu/index.d.ts +0 -3
  810. package/dist/composables/index.d.ts +0 -9
  811. package/dist/composables/motion/number/useCountup.d.ts +0 -30
  812. package/dist/composables/motion/number/useNumericTransition.d.ts +0 -56
  813. package/dist/composables/motion/reveal/bloomUpField.d.ts +0 -29
  814. package/dist/composables/motion/reveal/useBloomUp.d.ts +0 -33
  815. package/dist/composables/motion/reveal/useStaggerReveal.d.ts +0 -28
  816. package/dist/composables/motion/reveal/useTextHighlight.d.ts +0 -41
  817. package/dist/composables/motion/scroll/useScrollPin.d.ts +0 -49
  818. package/dist/data-table-BygKg6ZA.js +0 -491
  819. package/dist/dialog-TNRDkcE4.js +0 -385
  820. package/dist/dockContext-BUTlGRNJ.js +0 -13
  821. package/dist/drawer.d.ts +0 -1
  822. package/dist/drawer.js +0 -496
  823. package/dist/dropdown-menu-BlbnvMaZ.js +0 -507
  824. package/dist/dropdown-menu.d.ts +0 -1
  825. package/dist/floating-dB5TD88k.js +0 -7
  826. package/dist/flow.wgsl-Cd2GUkPx.js +0 -4
  827. package/dist/fonts/README.md +0 -120
  828. package/dist/fonts/fira-code/OFL.txt +0 -93
  829. package/dist/fonts/plus-jakarta-sans/OFL.txt +0 -93
  830. package/dist/forms.d.ts +0 -5
  831. package/dist/forms.js +0 -403
  832. package/dist/header-ribbon.d.ts +0 -1
  833. package/dist/header-ribbon.js +0 -43
  834. package/dist/instrument-chassis.d.ts +0 -1
  835. package/dist/instrument-chassis.js +0 -54
  836. package/dist/label-DnMqH7jr.js +0 -55
  837. package/dist/liquid-grid.d.ts +0 -1
  838. package/dist/liquid-grid.js +0 -1065
  839. package/dist/menuRowClass-Nh7CtMON.js +0 -12
  840. package/dist/number-field-Boe09SvX.js +0 -154
  841. package/dist/paper-backdrop.d.ts +0 -1
  842. package/dist/paper-backdrop.js +0 -23
  843. package/dist/popover-BQGYXZyO.js +0 -244
  844. package/dist/progress-DClbhRAT.js +0 -88
  845. package/dist/pulse.d.ts +0 -1
  846. package/dist/pulse.js +0 -42
  847. package/dist/resolveSurfaceClass-DCZ4PZcy.js +0 -6
  848. package/dist/select-BcBAyLXA.js +0 -336
  849. package/dist/separator-CgZInrX-.js +0 -75
  850. package/dist/slider-DzqeQmMu.js +0 -162
  851. package/dist/springPresets-rCii5KqX.js +0 -52
  852. package/dist/styles/draw-in.css +0 -1
  853. package/dist/styles/glass/accent-tone.css +0 -1
  854. package/dist/styles/glass/grain-overlay.css +0 -1
  855. package/dist/styles/glass/material-roles.css +0 -1
  856. package/dist/styles/glass-refract.css +0 -1
  857. package/dist/styles/tokens/manifest.ts +0 -56
  858. package/dist/styles/tokens.ts +0 -54
  859. package/dist/switch-DZjQuFLa.js +0 -54
  860. package/dist/toggle-group-O6jBo7AE.js +0 -150
  861. package/dist/tooltip-Drx5qnw_.js +0 -148
  862. package/dist/useAccentTone-DyInfHXE.js +0 -23
  863. package/dist/useAnimatedNumber-WPtMz0AN.js +0 -40
  864. package/dist/useDocumentVisibility-Dh_TGXsU.js +0 -21
  865. package/dist/useIntersectionPause-B5mAU6XY.js +0 -39
  866. package/dist/useLeadTrail-AW1-zZcd.js +0 -74
  867. package/dist/useRAFLoop-B3YlWK4M.js +0 -98
  868. package/dist/useResolveTokenColor-B2FfJnd9.js +0 -24
  869. package/dist/useScrollProgress-CSFYXIZT.js +0 -43
  870. package/dist/useSelectionGroup-B5XplBbo.js +0 -132
  871. package/dist/useTabRovingFocus-YnWh-Ytr.js +0 -169
  872. package/dist/useTextHighlight-mfwNIC1f.js +0 -112
  873. package/dist/useUserInvalidAria-0GNrddMX.js +0 -25
  874. package/dist/watercolor-dot.d.ts +0 -1
  875. package/dist/watercolor-dot.js +0 -149
  876. /package/dist/components/_shared/{disclosure-context.d.ts → disclosure/disclosure-context.d.ts} +0 -0
  877. /package/dist/components/_shared/{valueDomain.d.ts → field/valueDomain.d.ts} +0 -0
  878. /package/dist/components/{dropdown-menu → menu}/DropdownMenuGroup.vue.d.ts +0 -0
  879. /package/dist/components/{dropdown-menu → menu}/DropdownMenuItem.vue.d.ts +0 -0
  880. /package/dist/components/{dropdown-menu → menu}/DropdownMenuLabel.vue.d.ts +0 -0
  881. /package/dist/components/{dropdown-menu → menu}/DropdownMenuSeparator.vue.d.ts +0 -0
  882. /package/dist/components/{dropdown-menu → menu}/DropdownMenuShortcut.vue.d.ts +0 -0
  883. /package/dist/components/{dropdown-menu → menu}/DropdownMenuSub.vue.d.ts +0 -0
  884. /package/dist/components/{dropdown-menu → menu}/DropdownMenuSubTrigger.vue.d.ts +0 -0
  885. /package/dist/components/{dropdown-menu/useMenuTrigger.d.ts → menu/context.d.ts} +0 -0
@@ -1,18 +1,23 @@
1
1
  import { type Ref } from "vue";
2
+ /**
3
+ * The bounded velocity lag — `clamp(v·τ, ±ceil)`. The worm's trail edge and the
4
+ * carousel's interior content-lag are the same law over different quantities.
5
+ */
6
+ export declare function trailOffset(velocity: number, tau: number, ceil: number): number;
2
7
  export interface UseLeadTrailOptions {
3
- /** The lead spring response (2π/response = the natural frequency). Default 0.68. */
4
- response?: number;
5
- /** The lead spring damping ratio ζ. Default 0.64. */
6
- damping?: number;
7
- /** The trailing follower time constant, seconds. Default 0.27 (≈270ms). */
8
- trailTau?: number;
8
+ /**
9
+ * The lag ceiling in px, re-read per frame so it can be a live geometry band
10
+ * (`clamp(pitch, |Δ|·0.55, 3·pitch)`). A plain number is a fixed ceiling.
11
+ */
12
+ ceil?: number | (() => number);
13
+ /** The elongation time constant, seconds. Default 0.08. */
14
+ tau?: number;
9
15
  /** Honor `prefers-reduced-motion: reduce` → `drive` seats instantly. Default true. */
10
16
  respectReducedMotion?: boolean;
11
17
  /**
12
- * The per-frame writer the consumer supplies (the DOM-write path, NO reactive
13
- * thrash). Called each rAF tick with the live numeric edges — the consumer
14
- * projects its silhouette (for example, a barbell) off `lo`/`hi`. Also called
15
- * once on `seat` so a static mount paints correctly.
18
+ * The per-frame writer. Called each rAF tick with the live numeric edges — the
19
+ * consumer projects its silhouette off `lo`/`hi`. Also called once on `seat`
20
+ * so a static mount paints correctly.
16
21
  */
17
22
  onFrame?: (edges: LeadTrailEdges) => void;
18
23
  }
@@ -20,27 +25,28 @@ export interface UseLeadTrailOptions {
20
25
  export interface LeadTrailEdges {
21
26
  /** The lead edge (px) — springs toward the drive target. */
22
27
  lead: number;
23
- /** The trail edge (px) — lags then catches the lead. */
28
+ /** The trail edge (px) — the lead, offset by the bounded velocity lag. */
24
29
  trail: number;
25
- /** `min(lead, trail)` — the trailing silhouette edge (direction-agnostic). */
30
+ /** The lead's velocity (px/s) — the elongation's own cause. */
31
+ velocity: number;
32
+ /** `min(lead, trail)` — direction-agnostic. */
26
33
  lo: number;
27
- /** `max(lead, trail)` — the leading silhouette edge (direction-agnostic). */
34
+ /** `max(lead, trail)`. */
28
35
  hi: number;
29
- /** True once the edges have re-formed on the target (the emergent release). */
36
+ /** True once the edges have re-formed on the target. */
30
37
  settled: boolean;
31
38
  }
32
39
  export interface UseLeadTrail {
33
- /** The live lead edge (updated per frame; the consumer usually reads `onFrame`). */
40
+ /** The live lead edge (updated per frame). */
34
41
  readonly lead: Readonly<Ref<number>>;
35
42
  /** The live trail edge (updated per frame). */
36
43
  readonly trail: Readonly<Ref<number>>;
37
- /** True while the worm has re-formed on the target (the rAF is parked). */
44
+ /** True while the morph has re-formed on the target (the rAF is parked). */
38
45
  readonly settled: Readonly<Ref<boolean>>;
39
46
  /**
40
47
  * Retarget the lead edge (px). The velocity carries — a retarget mid-flight
41
- * re-seats the target, the spring continues from its LIVE `(position, velocity)`
42
- * so interruption is free. Under PRM this SEATS instantly (zero in-between frames).
43
- * The `drive(fractionalIndex→px)` seam consumed by carousel drag scrubbing.
48
+ * continues from the LIVE `(position, velocity)`, so interruption is free.
49
+ * Under PRM this SEATS instantly (zero in-between frames).
44
50
  */
45
51
  drive(target: number): void;
46
52
  /** Snap BOTH edges to `value` instantly (mount / resize / PRM). Paints once. */
@@ -49,21 +55,17 @@ export interface UseLeadTrail {
49
55
  dispose(): void;
50
56
  }
51
57
  /**
52
- * The two-edge lead/trail integrator — a spring LEAD + a damped TRAIL follower in
53
- * ONE rAF. The gap between the edges is the morph's live elongation; the trail
54
- * catching the lead is the emergent release. keyframes-FREE + vueuse-FREE. See the
55
- * module header for the pager-worm rationale.
58
+ * The two-edge morph driver — a governed spring LEAD and a velocity-derived TRAIL
59
+ * in ONE rAF, with ZERO per-frame style reads. See the module header for the law.
56
60
  *
57
61
  * @example
58
62
  * ```ts
59
63
  * const worm = useLeadTrail({
60
- * onFrame({ lo, hi }) {
61
- * // project the barbell off the two edges (no getComputedStyle)
62
- * paintBarbell(lo, hi)
63
- * },
64
+ * ceil: () => elongationCeil(), // clamp(pitch, |Δ|·0.55, 3·pitch)
65
+ * onFrame: ({ lo, hi }) => paintBarbell(lo, hi),
64
66
  * })
65
67
  * worm.seat(centerOf(active)) // mount
66
- * worm.drive(centerOf(next)) // hop — the lead springs, the trail lags then reels in
68
+ * worm.drive(centerOf(next)) // hop — the gap peaks with the velocity, then is 0
67
69
  * ```
68
70
  */
69
71
  export declare function useLeadTrail(options?: UseLeadTrailOptions): UseLeadTrail;
@@ -1,22 +1,30 @@
1
1
  import { type ComputedRef, type Ref } from "vue";
2
- import { type SelectionOption } from "./useSelectionIndicator";
3
- import { type TabActivation } from "../../../components/tabs/composables/useTabRovingFocus";
2
+ import { type SelectionDeform, type SelectionOption } from "./useSelectionIndicator.js";
3
+ import type { SelectionValue } from "../../../components/_shared/selection.js";
4
+ import { type TabActivation } from "../../../components/tabs/composables/useTabRovingFocus.js";
4
5
  /**
5
6
  * useSelectionGroup is the library's single headless selection engine. The dock
6
- * control run, `<SegmentedTabs>`, and
7
- * `<ToggleGroup type="single">` are the SAME thing — a roving-focus selection
8
- * strip with a traveling indicator. This composable assembles that ONE engine
9
- * from the shared parts, reka-free and engine-free so it
10
- * ships on `/motion-core`:
7
+ * control run and `<SegmentedTabs>` are the SAME thing — a roving-focus selection
8
+ * strip with a traveling indicator — and both compose it (BK #19 W-SELECTION-ONE
9
+ * made SegmentedTabs the second; the arm at `tests/gates/overfit-structure.test.ts`
10
+ * forbids a third assembly). `<ToggleGroup>` is the THIRD consumer, adopted at
11
+ * **BK #84 W-TOGGLE-ROW**: reka retired from that component entirely and it now
12
+ * feeds this engine from an item registry, taking the role-per-mode ARIA, the
13
+ * roving machine and the recenter while DECLINING the indicator — `indicatorRef`
14
+ * omitted, which is the "plain toggle row" the param below already named as a
15
+ * first-class caller. The C-1 `SelectionOption["value"]` widening landed with it
16
+ * (`string` → `SelectionValue`), so the engine's consumer set is THREE, and this
17
+ * doc says three. The assembly, reka-free and engine-free so it ships on
18
+ * `/motion-core`:
11
19
  *
12
- * • the SELECTION MODEL — `single` (a `string`) | `multiple` (a `string[]`),
13
- * driven off a caller-owned `model` ref (no shadow registry — the ONE
14
- * registry discipline);
20
+ * • the SELECTION MODEL — `single` (one scalar) | `multiple` (an array of them),
21
+ * at the OPTION TYPE's own value (`O["value"]`), driven off a caller-owned
22
+ * `model` ref (no shadow registry — the ONE registry discipline);
15
23
  * • the ROVING MACHINE — `useTabRovingFocus` composed VERBATIM (exactly-one-
16
24
  * tabstop, axis-derived arrows, Home/End, wrap, disabled-skip);
17
25
  * • the ONE TRAVELING-INDICATOR WRITER — `useSelectionIndicator` (the
18
26
  * center-anchored ResizeObserver measure + the `--stretch` squish), so the
19
- * dock/tabs/toggle-group indicator is Safari-identical by construction;
27
+ * dock and tabs indicator is Safari-identical by construction;
20
28
  * • the RECENTER CALL — `el.scrollIntoView({inline:'nearest', block:'nearest'})`
21
29
  * on every select, so a selection past the fold pulls itself into view.
22
30
  *
@@ -32,10 +40,13 @@ export interface UseSelectionGroupParams<O extends SelectionOption> {
32
40
  options: ComputedRef<O[]>;
33
41
  /**
34
42
  * The caller-owned selection model — the ONE registry (no shadow state). A
35
- * `single`-mode group reads/writes a `string`; a `multiple`-mode group a
36
- * `string[]`.
43
+ * `single`-mode group reads/writes one option value; a `multiple`-mode group an
44
+ * array of them. Keyed to `O["value"]` rather than fixed at `string` (BK #84
45
+ * C-1), so a caller whose options carry `SelectionValue` keeps its own scalar
46
+ * end to end and a caller whose options carry `string` sees exactly what it saw
47
+ * before — the widening is by DERIVATION, so it breaks nothing.
37
48
  */
38
- model: Ref<string | string[] | undefined>;
49
+ model: Ref<O["value"] | O["value"][] | undefined>;
39
50
  /** `single` (default) | `multiple`. */
40
51
  mode?: ComputedRef<SelectionMode> | SelectionMode;
41
52
  /**
@@ -51,24 +62,51 @@ export interface UseSelectionGroupParams<O extends SelectionOption> {
51
62
  /** The container scroller root (observed by the indicator's ResizeObserver). */
52
63
  containerRef: Ref<HTMLElement | null>;
53
64
  /**
54
- * The traveling-indicator element (the `--stretch` squish target). Omit (or
55
- * leave null) for a group with no glide indicator (e.g. a paper-hairline
56
- * strip or a plain toggle row) — the squish/measure then no-ops.
65
+ * The traveling-indicator element (the deform write target). Omit (or leave
66
+ * null) for a group with no glide indicator at all (a paper-hairline strip, a
67
+ * plain toggle row) — the SQUISH then no-ops, which is HEAD's accurate half and
68
+ * is restored here. ~~The MEASURE does not no-op, and BK #84's rewording asserted
69
+ * that it did: `useSelectionIndicator` attaches its `ResizeObserver`
70
+ * unconditionally — that is the Safari-identical guarantee — and
71
+ * `updateSingleSlider` keeps writing a `singleSliderStyle` such a caller never
72
+ * reads. Economizing it is the indicator writer's own change to make.~~
73
+ * [2026-08-08 · BK #71 W-EYEGLASS, RT-84O: the change was made, in the file this
74
+ * text routed it to. `updateSingleSlider` now returns before its first rect read
75
+ * when `indicatorRef` is null, so such a caller runs ZERO layout. What #84 wrote
76
+ * was true of #84's HEAD and is false of this one — the `ResizeObserver` still
77
+ * attaches unconditionally (that guarantee is untouched), and a strip that
78
+ * appears late is measured on arrival because the indicator is a CHILD of the
79
+ * container, so the container watcher already covers it.]
57
80
  */
58
81
  indicatorRef?: Ref<HTMLElement | null>;
82
+ /**
83
+ * What the travelling body is made of — `"plate"` (default, the full body and
84
+ * the eyeglass host), `"mark"` (a hairline: length only), `"none"`. STATED, not
85
+ * inferred: a multi-toggle group has no single travelling body, and that is a
86
+ * different fact from a hairline having no area, even though the old null-ref
87
+ * sentinel spelled both the same way.
88
+ */
89
+ deform?: ComputedRef<SelectionDeform>;
59
90
  /** Per-option item refs, index-aligned to `options`. */
60
91
  buttonRefs: Ref<HTMLElement[]>;
92
+ /**
93
+ * A per-commit side effect the CALLER owns, fired on every committed selection
94
+ * (pointer AND keyboard) before the model write — e.g. SegmentedTabs' press
95
+ * squish on the pressed button. The engine stays the one selection path; a
96
+ * caller that needs a local flourish hangs it here rather than forking `select`.
97
+ */
98
+ onSelect?: (value: O["value"], idx: number) => void;
61
99
  }
62
- export interface UseSelectionGroupReturn {
100
+ export interface UseSelectionGroupReturn<V extends SelectionValue = string> {
63
101
  /** The active option values (one for `single`, N for `multiple`). */
64
- activeValues: ComputedRef<string[]>;
102
+ activeValues: ComputedRef<V[]>;
65
103
  /** True when `value` is currently selected. */
66
- isSelected: (value: string) => boolean;
104
+ isSelected: (value: V) => boolean;
67
105
  /**
68
106
  * Commit a selection at `idx` — writes the model (toggle in `multiple`),
69
107
  * fires the travel-squish, and recenters the item via `scrollIntoView`.
70
108
  */
71
- select: (value: string, idx: number) => void;
109
+ select: (value: V, idx: number) => void;
72
110
  /** The roving tabindex for option `idx` (`0` for the tabstop, `-1` else). */
73
111
  rovingTabindex: (idx: number) => number;
74
112
  /** The strip-root keydown handler (axis-derived arrows + Home/End). */
@@ -80,6 +118,6 @@ export interface UseSelectionGroupReturn {
80
118
  /** The resolved group `role` (`radiogroup` | `tablist` | `group`). */
81
119
  groupRole: ComputedRef<SelectionRole>;
82
120
  /** The per-item ARIA attributes for `value`, role-per-mode. */
83
- itemAttrs: (value: string) => Record<string, string>;
121
+ itemAttrs: (value: V) => Record<string, string>;
84
122
  }
85
- export declare function useSelectionGroup<O extends SelectionOption>(params: UseSelectionGroupParams<O>): UseSelectionGroupReturn;
123
+ export declare function useSelectionGroup<O extends SelectionOption>(params: UseSelectionGroupParams<O>): UseSelectionGroupReturn<O["value"]>;
@@ -1,4 +1,5 @@
1
1
  import { type Ref, type ComputedRef } from "vue";
2
+ import type { SelectionValue } from "../../../components/_shared/selection.js";
2
3
  /**
3
4
  * useSelectionIndicator is the library's single traveling-indicator writer. The dock
4
5
  * is SegmentedTabs/ToggleGroup wearing chrome, so the indicator that glides under the active
@@ -12,12 +13,29 @@ import { type Ref, type ComputedRef } from "vue";
12
13
  *
13
14
  * It owns the JS-measured single-select slider style (the slider geometry, the
14
15
  * offset measure, the model/options re-measure watchers, the RO lifecycle) AND
15
- * the travel-squish: a velocity-driven, volume-preserving `--stretch`
16
- * scalar the active indicator reads so it STRETCHES along its travel axis as it
17
- * glides and settles to fit (the Material-3 ELASTIC, Apple Liquid-Glass
18
- * register, capped LOW). Honors `prefers-reduced-motion` (no squish under
19
- * reduce). The underline material SLIDES (no squish — a hairline does not
20
- * deform), gated by the caller passing no `indicatorRef` element.
16
+ * the travel deform: a velocity-driven `--stretch` scalar the active indicator
17
+ * reads so it lengthens along its travel axis as it glides and settles to fit
18
+ * (the Material-3 ELASTIC, Apple Liquid-Glass register). Honors
19
+ * `prefers-reduced-motion` (no deform under reduce).
20
+ *
21
+ * WHAT DEFORMS IS A POLICY, AND IT IS A PARAMETER. It used to be inferred from
22
+ * `indicatorRef` being null, which was an OVERLOADED sentinel: the same null meant
23
+ * "this group has no single slider" to `useSelectionGroup` and "this material does
24
+ * not squish" here, so neither meaning could be stated without lying about the
25
+ * other. `deform` says it outright:
26
+ * • `"plate"` (default) — the full body: `--stretch` plus, where the surface arms
27
+ * the organ, the EYEGLASS span/swell/lean. A body of glass with area to move.
28
+ * • `"mark"` — `--stretch` only. A hairline lengthens along its travel; it has no
29
+ * area to inflate and no cross axis to swell.
30
+ * • `"none"` — no deform at all (a multi-toggle group has no single travelling
31
+ * body to deform).
32
+ * The `if (!el)` guard below stays what it always should have been: null-safety.
33
+ *
34
+ * THE EYEGLASS is armed by the SURFACE, in its own cascade, by declaring
35
+ * `--eyeglass-span-max`. Where it is armed the deform stops being a centre-pump and
36
+ * becomes the measured organ — it spans origin and destination, leans 2:1 into its
37
+ * travel, swells across, and clamps at the track's inner edge. Where it is not
38
+ * declared the fraction law is byte-identical to what shipped. See `eyeglass.ts`.
21
39
  *
22
40
  * The writer emits the selected item's full physical border box from the
23
41
  * container's padding-box origin. Measuring both axes keeps the resting fill
@@ -25,12 +43,26 @@ import { type Ref, type ComputedRef } from "vue";
25
43
  * `vertical` param only selects the transient squish axis.
26
44
  *
27
45
  * Generic over the minimal `SelectionOption` shape (`value` + optional
28
- * `disabled`), so it is decoupled from any consumer's option type — the
29
- * `/motion-core` home carries no component-tree import.
46
+ * `disabled`), so it is decoupled from any consumer's option type. ~~the
47
+ * `/motion-core` home carries no component-tree import.~~
48
+ * [2026-08-08 · BK #84 C-1: it carries exactly one, `import type { SelectionValue }`,
49
+ * and the claim is restated at the level that is actually load-bearing — no
50
+ * component-tree RUNTIME import. A `type` import is erased at emit, so the
51
+ * `/motion-core` chunk's bytes are unchanged; what changed is that the scalar
52
+ * identity is now named once in the library instead of respelled here.]
53
+ */
54
+ /**
55
+ * The minimal option shape the indicator measures against.
56
+ *
57
+ * `value` is the library's `SelectionValue` (BK #84 C-1). It used to be `string`,
58
+ * which is why `<ToggleGroup>` — whose public value has been `string | number`
59
+ * since it shipped — could not compose this engine without narrowing its own
60
+ * surface. Widening here rather than narrowing there is the direction C-1 ruled:
61
+ * the engine only ever compares the value with `===` and interpolates it into a
62
+ * reset key, so it never needed the narrower type in the first place.
30
63
  */
31
- /** The minimal option shape the indicator measures against. */
32
64
  export interface SelectionOption {
33
- value: string;
65
+ value: SelectionValue;
34
66
  disabled?: boolean;
35
67
  }
36
68
  /**
@@ -42,15 +74,6 @@ export interface SelectionOption {
42
74
  * lockstep, never a fork).
43
75
  */
44
76
  export declare const DEFAULT_INDICATOR_MAX_STRETCH = 1.11;
45
- /**
46
- * Fallback for `--tab-indicator-blob-max` when the cascade leaves it unset: the
47
- * 5-beat blob's area-inflation overshoot peak. The 2nd `useLiquidFlex` channel
48
- * drives `--tab-blob` toward this on the grow-overshoot beat, then de-inflates
49
- * to 1 at arrival (shrink-to-fit). Kept LOW so the COMPOSED bbox area
50
- * (`blob × stretch` ≈ blob², the squish being volume-preserving) clears the
51
- * ≤ ~1.14 anti-taffy fence.
52
- */
53
- export declare const DEFAULT_INDICATOR_BLOB_MAX = 1.045;
54
77
  /**
55
78
  * The travel-progress fraction at which the squish RELEASES — the Material
56
79
  * "grow then shrink" close, keyed to ARRIVAL. The squish opens with the glide
@@ -58,6 +81,11 @@ export declare const DEFAULT_INDICATOR_BLOB_MAX = 1.045;
58
81
  * stretch peaks DURING travel and shrinks to fit AT arrival, never before.
59
82
  */
60
83
  export declare const INDICATOR_RELEASE_AT_ARRIVAL = 0.82;
84
+ /**
85
+ * The deform POLICY — what the travelling body is made of, stated rather than
86
+ * inferred from a null ref. See the module docstring for why the sentinel had to go.
87
+ */
88
+ export type SelectionDeform = "plate" | "mark" | "none";
61
89
  export interface UseSelectionIndicatorParams<O extends SelectionOption> {
62
90
  /** The container scroller root (observed by the ResizeObserver). */
63
91
  containerRef: Ref<HTMLElement | null>;
@@ -67,12 +95,14 @@ export interface UseSelectionIndicatorParams<O extends SelectionOption> {
67
95
  buttonRefs: Ref<HTMLElement[]>;
68
96
  /** The selectable options (re-measure on change). */
69
97
  options: ComputedRef<O[]>;
70
- /** The active value (re-measure on change). */
71
- model: Ref<string | undefined>;
98
+ /** The active value (re-measure on change), at the option type's own scalar. */
99
+ model: Ref<O["value"] | undefined>;
72
100
  /** The active option values (used by the initial squish seed). */
73
- activeValues: ComputedRef<string[]>;
101
+ activeValues: ComputedRef<O["value"][]>;
74
102
  /** True for the vertical (block-axis) orientation. */
75
103
  vertical: ComputedRef<boolean>;
104
+ /** What the travelling body is made of. Defaults to `"plate"`. */
105
+ deform?: ComputedRef<SelectionDeform>;
76
106
  }
77
107
  export interface UseSelectionIndicatorReturn {
78
108
  /** Inline style for the single-select JS slider — the ONE writer. */
@@ -1,5 +1,5 @@
1
1
  import { type ComputedRef } from "vue";
2
- import { type UseAnimatedNumberOptions } from "./useAnimatedNumber";
2
+ import { type UseAnimatedNumberOptions } from "./useAnimatedNumber.js";
3
3
  export interface UseAnimatedNumberMapOptions extends UseAnimatedNumberOptions {
4
4
  }
5
5
  /**
@@ -1,4 +1,4 @@
1
- import type { PointerVec2 } from "./usePointerVelocityField";
1
+ import type { PointerVec2 } from "./usePointerVelocityField.js";
2
2
  export type { PointerVec2 };
3
3
  /**
4
4
  * A plain-value read of the pointer field for ONE frame. The renderer snapshots the field
@@ -1,5 +1,5 @@
1
1
  import { type MaybeRefOrGetter, type Ref } from "vue";
2
- import type { PointerVec2 } from "./usePointerVelocityField";
2
+ import type { PointerVec2 } from "./usePointerVelocityField.js";
3
3
  export type { PointerVec2 };
4
4
  export interface RoutePointerContext {
5
5
  /** The viewport-normalized pointer (0..1 across the viewport). */
@@ -1,8 +1,9 @@
1
1
  import { type ComponentPublicInstance, type Ref } from "vue";
2
- import { type ElementMorphPreset } from "../morph/useElementMorph";
3
- /** The reveal spring register — `snappy` (the quick app-open default) or `bouncy` (the
4
- * emphatic large-dialog bloom). */
5
- export type LiquidRevealPreset = ElementMorphPreset;
2
+ import { type ElementMorphPreset } from "../morph/useElementMorph.js";
3
+ /** The reveal spring register — `bloom` (the room-sized growth, the default: a surface
4
+ * expanding to fill a sheet or a screen IS this row's one job) or `panel` (the emphatic
5
+ * fired deploy, the one row that rebounds). */
6
+ export type LiquidRevealPreset = Extract<ElementMorphPreset, "bloom" | "panel">;
6
7
  export interface UseLiquidRevealOptions {
7
8
  /**
8
9
  * The trigger element the surface blooms FROM — the source rect (the button, the
@@ -12,7 +13,7 @@ export interface UseLiquidRevealOptions {
12
13
  * immediately; no invented geometry substitutes for a missing trigger.
13
14
  */
14
15
  trigger?: Ref<HTMLElement | ComponentPublicInstance | null>;
15
- /** The spring register (default `snappy`). */
16
+ /** The spring register (default `bloom`). */
16
17
  preset?: LiquidRevealPreset;
17
18
  /** The starting filter-blur radius in px (the decongest start). Default 4. */
18
19
  blur?: number;
@@ -33,7 +34,7 @@ export interface UseLiquidRevealReturn {
33
34
  *
34
35
  * @example
35
36
  * ```ts
36
- * const { reveal, conceal } = useLiquidReveal(surfaceRef, { trigger: triggerRef, preset: "bouncy" })
37
+ * const { reveal, conceal } = useLiquidReveal(surfaceRef, { trigger: triggerRef, preset: "panel" })
37
38
  * watch(open, (o) => (o ? reveal() : conceal()))
38
39
  * ```
39
40
  */
@@ -0,0 +1,60 @@
1
+ import type { SpringPresetName } from "../spring/springPresets.js";
2
+ /** The four nav classes. One mechanism each; a navigation is exactly one of them. */
3
+ export type RouteNavClass = "route" | "zoom" | "lateral" | "collapse";
4
+ /**
5
+ * A row is what the mechanism and the CSS mirror both READ. Nothing that neither reads
6
+ * belongs here: whether a window travels is `nav !== "route"` at the one site that needs
7
+ * it (`useRouteTransition`), and which channels a class moves is the recipe body's own
8
+ * keyframe list in `styles/view-transition.css` — a second copy of either would be prose
9
+ * in a type position, drifting the moment one of them is retuned.
10
+ */
11
+ export interface RouteNavRow {
12
+ readonly nav: RouteNavClass;
13
+ /** The spring row the FOREGROUND binds, or `null` where the class takes a bezier. */
14
+ readonly foreground: SpringPresetName | null;
15
+ /** The bezier a `null`-foreground class takes instead (§7 — an exit is never a spring). */
16
+ readonly ease: "--ease-in" | null;
17
+ /** The row the WORLD recedes/recovers on; `null` where no world moves. */
18
+ readonly world: SpringPresetName | null;
19
+ /** The class's foreground clock: `duration` on an entrance, `exit-duration` on an exit. */
20
+ readonly clock: "duration" | "exit-duration";
21
+ /** The world starts only after the foreground is gone — an exit's recovery order. */
22
+ readonly worldWaitsForForeground: boolean;
23
+ readonly comment: string;
24
+ }
25
+ /** The grammar. Order is the reading order of the record, not a precedence. */
26
+ export declare const ROUTE_GRAMMAR: readonly RouteNavRow[];
27
+ /**
28
+ * The measured constants of the codex row, carried in ONE table.
29
+ *
30
+ * Every one traces to `EXEMPLARS-CODEX.md` rows I4 (`:131`, the icon↔app morph) and I4b
31
+ * (`:132`, the windowing transition). They are measurements of a corpus, not derivations,
32
+ * so they cannot be re-derived from the spring table — which is exactly why they are
33
+ * fenced here rather than sprinkled. Three of the four are mirrored into
34
+ * `tokens/motion-registers.css` for the recipe to read, and those two sites are the whole
35
+ * census: `route-motion.test.ts` reads every stylesheet under `src/` and every module on
36
+ * the `composables/motion` surface, comments and string literals stripped, and reds on a
37
+ * third site or on a `--route-*` token declared in a second file.
38
+ */
39
+ export declare const ROUTE_CONSTANTS: {
40
+ /** I4: "the tapped icon alone scales to 1.57× in 42ms, razor sharp, z-lifted". */
41
+ readonly inhaleScale: 1.57;
42
+ /** I4, the same beat's window. The label is already gone by the time it ends. */
43
+ readonly inhaleMs: 42;
44
+ /** I4b: "the lateral push runs parallax ~1:8". One ratio, both parallax cases. */
45
+ readonly parallax: number;
46
+ /** I4: "opacity held then CUT at the last tenth" — the hold ends at 90% of the exit. */
47
+ readonly opacityCutAt: 0.9;
48
+ };
49
+ /** Look one class up by name. */
50
+ export declare function routeNav(nav: RouteNavClass): RouteNavRow;
51
+ /** The curve the foreground rides: a spring row's curve, or the exit bezier. */
52
+ export declare function foregroundCurveToken(row: RouteNavRow): string;
53
+ /**
54
+ * The foreground's clock. An exit reverses `zoom`, so it reads THAT row's exit reader —
55
+ * BK #26's law that a register binds the exit reader of its own entering row, which is
56
+ * what stops a recede outlasting the arrival it undoes.
57
+ */
58
+ export declare function foregroundClockToken(row: RouteNavRow): string;
59
+ /** The world's clock, or `null` where no world moves. */
60
+ export declare function worldClockToken(row: RouteNavRow): string | null;
@@ -0,0 +1,45 @@
1
+ import type { RouteNavClass } from "./routeGrammar.js";
2
+ /** The name the travelling window carries. One per document state, always. */
3
+ export declare const ROUTE_WINDOW_NAME = "gl-route-window";
4
+ /** The name the window's own label carries, so it can leave before the window does. */
5
+ export declare const ROUTE_LABEL_NAME = "gl-route-label";
6
+ /** The attribute a destination marks its window with, read after the mutation. */
7
+ export declare const ROUTE_WINDOW_ATTR = "data-route-window";
8
+ /** The attribute a source marks its label with, read before the mutation. */
9
+ export declare const ROUTE_LABEL_ATTR = "data-route-label";
10
+ /** The root property the `lateral` class reads its push direction from. */
11
+ export declare const ROUTE_DIRECTION_PROP = "--route-direction";
12
+ export interface RouteTransitionOptions {
13
+ /** Which grammar class this navigation is. */
14
+ nav: RouteNavClass;
15
+ /** The DOM mutation — typically an awaited router push plus a render tick. */
16
+ mutate: () => void | Promise<void>;
17
+ /**
18
+ * The tapped element. Named `gl-route-window` for the OLD state; its
19
+ * `[data-route-label]` descendant, if any, is named `gl-route-label`.
20
+ */
21
+ source?: HTMLElement | null;
22
+ /**
23
+ * Resolves the destination's window AFTER `mutate` settles, still inside the update
24
+ * callback — the last moment before the new state is snapshotted.
25
+ */
26
+ target?: () => HTMLElement | null;
27
+ /** `lateral` only: +1 forward, −1 back, 0 unknown (the push degrades to a fade). */
28
+ direction?: number;
29
+ }
30
+ /**
31
+ * Run a route mutation under the typed grammar.
32
+ *
33
+ * @returns `{ finished }` — await it to route focus, per the substrate's a11y MANDATORY.
34
+ *
35
+ * @example
36
+ * await routeTransition({
37
+ * nav: "zoom",
38
+ * source: cardEl,
39
+ * target: () => document.querySelector("[data-route-window]"),
40
+ * mutate: async () => { await router.push(to); await nextTick(); },
41
+ * }).finished;
42
+ */
43
+ export declare function routeTransition(options: RouteTransitionOptions): {
44
+ finished: Promise<void>;
45
+ };
@@ -10,13 +10,6 @@ interface ScrollProgressConfig {
10
10
  * bottom, 1 when target top reaches viewport top.
11
11
  */
12
12
  trackExit?: boolean;
13
- /**
14
- * Keep the returned ref live even when CSS scroll timelines are available.
15
- * Use this only when JavaScript consumes the value directly (for example a
16
- * shader uniform); CSS-authored progress should keep the default compositor
17
- * path and attach no reader.
18
- */
19
- reactive?: boolean;
20
13
  /** Attach the reader only while this source is truthy. */
21
14
  enabled?: MaybeRef<boolean>;
22
15
  }
@@ -25,13 +18,13 @@ interface ScrollProgressConfig {
25
18
  * `Ref<number>` in [0, 1]. Drives things like scroll-linked typography
26
19
  * axes, parallax depth, or progress indicators.
27
20
  *
28
- * On an engine with native scroll-driven animations, the listener +
29
- * `ResizeObserver` machinery does NOT attach — prefer the `.scroll-progress`
30
- * CSS recipe (scroll-driven.css), which runs the same 0..1 axis on the
31
- * compositor. This composable is the feature-detected fallback (the sole writer
32
- * when the native feature is absent); `computeProgress()` still runs once on
33
- * mount for a correct initial value. `reactive: true` is the explicit exception
34
- * for a non-CSS consumer such as a shader uniform.
21
+ * THE READER ALWAYS ATTACHES. The prior form gated the whole machine behind a
22
+ * module-load `supportsScrollTimeline()` probe, so on a supporting engine the
23
+ * returned ref froze at its mount value while reading alive at every call site —
24
+ * a silent inert arm, not a fallback (its ONE consumer opted out of it with
25
+ * `reactive: true`, which is how the arm survived untested in both directions).
26
+ * A CSS-authored axis belongs in the `.scroll-progress` recipe and never calls
27
+ * this composable at all; a caller who wants the NUMBER gets the number.
35
28
  */
36
29
  export declare function useScrollProgress(options: ScrollProgressConfig): Ref<number>;
37
30
  export {};
@@ -1,5 +1,5 @@
1
1
  import { type MaybeRefOrGetter, type Ref } from "vue";
2
- import { type ScrollReader, type ScrollSource } from "./scrollReader";
2
+ import { type ScrollReader, type ScrollSource } from "./scrollReader.js";
3
3
  /** The smoother register — a pure-lag low-pass (`SmoothProgress`) or an overshooting
4
4
  * spring (`SpringProgress`). The FELT reveal wants the spring (it overshoots, then
5
5
  * settles — the cartoon slam); the pure-lag legs (a progress number) want the smooth. */
@@ -28,13 +28,14 @@ export interface UseScrollSceneOptions {
28
28
  /** The smoother register (default `smooth` — the pure-lag low-pass). */
29
29
  register?: ScrollSceneRegister;
30
30
  /**
31
- * For the `spring` register: the damping ratio ζ. < 1 overshoots (the felt slam),
32
- * 0.85 ≈ the `--spring-gentle` identity. Default 0.85. Ignored for `smooth`.
31
+ * For the `spring` register: the damping ratio ζ. < 1 overshoots (the felt slam).
32
+ * Defaults to the `world` row's own damping — the substrate-travel register —
33
+ * read from the table rather than restated. Ignored for `smooth`.
33
34
  */
34
35
  dampingFraction?: number;
35
36
  /** The element the damped value is written onto as a custom property (when bound). */
36
37
  bindEl?: MaybeRefOrGetter<HTMLElement | null>;
37
- /** The custom property name to write the damped 0..1 onto (e.g. `--pin-t`). */
38
+ /** The custom property name to write the damped 0..1 onto (e.g. `--scene-t`). */
38
39
  property?: string;
39
40
  /** Honor `prefers-reduced-motion: reduce` (scrub → 0, snap 1:1). Default true. */
40
41
  respectReducedMotion?: boolean;