@mkbabb/glass-ui 7.0.0 → 9.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 (918) 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 +321 -289
  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 +43 -43
  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/{card-Bk96VI2R.js → card-3HFFpC7_.js} +51 -95
  20. package/dist/card.d.ts +1 -1
  21. package/dist/card.js +2 -2
  22. package/dist/carousel.d.ts +1 -1
  23. package/dist/carousel.js +187 -175
  24. package/dist/checkbox-B1qn65se.js +64 -0
  25. package/dist/checkbox.d.ts +1 -0
  26. package/dist/checkbox.js +2 -0
  27. package/dist/chip.d.ts +1 -1
  28. package/dist/chip.js +129 -2
  29. package/dist/{class-names-Cpy5eaBk.js → class-names-q-UGOkHH.js} +15 -1
  30. package/dist/{collapsible-BAP95XTt.js → collapsible-B7O6m-Ch.js} +2 -2
  31. package/dist/collapsible.d.ts +1 -1
  32. package/dist/collapsible.js +1 -1
  33. package/dist/color.d.ts +1 -1
  34. package/dist/color.glsl-DTJhdekG.js +34 -0
  35. package/dist/color.js +18 -18
  36. package/dist/color.wgsl-BTszLY39.js +398 -0
  37. package/dist/command-tEzAaVY_.js +340 -0
  38. package/dist/command.d.ts +1 -1
  39. package/dist/command.js +1 -1
  40. package/dist/component-styles.css +4 -0
  41. package/dist/components/_shared/axes.d.ts +4 -1
  42. package/dist/components/_shared/class-names.d.ts +1 -1
  43. package/dist/components/_shared/control.d.ts +10 -0
  44. package/dist/components/_shared/feedback/DotRing.vue.d.ts +3 -0
  45. package/dist/components/_shared/feedback/dot-ring.css +1 -0
  46. package/dist/components/_shared/feedback/feedback-tone.css +1 -0
  47. package/dist/components/_shared/{fieldControl.d.ts → field/control.d.ts} +1 -1
  48. package/dist/components/_shared/focus.d.ts +11 -0
  49. package/dist/components/_shared/index.d.ts +1 -2
  50. package/dist/components/_shared/interaction.d.ts +1 -1
  51. package/dist/components/_shared/menu/menu.css +1 -0
  52. package/dist/components/_shared/menu/rowClass.d.ts +2 -0
  53. package/dist/components/_shared/overlay/content.d.ts +40 -0
  54. package/dist/components/_shared/overlay/index.d.ts +12 -0
  55. package/dist/components/{dock/composables → _shared/overlay}/isTeleportedTarget.d.ts +5 -0
  56. package/dist/components/_shared/overlay/participation.d.ts +66 -0
  57. package/dist/components/_shared/overlay/placement.d.ts +22 -0
  58. package/dist/components/_shared/selection.d.ts +39 -0
  59. package/dist/components/_shared/surface/resolve.d.ts +17 -0
  60. package/dist/components/_shared/useMotionAxis.d.ts +1 -7
  61. package/dist/components/accordion/Accordion.vue.d.ts +1 -1
  62. package/dist/components/accordion/index.d.ts +4 -4
  63. package/dist/components/alert/Alert.vue.d.ts +1 -1
  64. package/dist/components/alert/AlertDescription.vue.d.ts +2 -2
  65. package/dist/components/alert/AlertTitle.vue.d.ts +2 -2
  66. package/dist/components/alert/index.d.ts +9 -9
  67. package/dist/components/aurora/Aurora.vue.d.ts +5 -4
  68. package/dist/components/aurora/composables/atoms-fields.d.ts +1 -1
  69. package/dist/components/aurora/composables/atoms.d.ts +3 -3
  70. package/dist/components/aurora/composables/auroraFallbackGround.d.ts +1 -1
  71. package/dist/components/aurora/composables/auroraImageSource.d.ts +2 -2
  72. package/dist/components/aurora/composables/color.d.ts +3 -4
  73. package/dist/components/aurora/composables/frameLoop.d.ts +9 -8
  74. package/dist/components/aurora/composables/glSetup.d.ts +5 -10
  75. package/dist/components/aurora/composables/runtime.d.ts +28 -3
  76. package/dist/{composables/glass → components/aurora/composables}/textureUpload.d.ts +0 -13
  77. package/dist/components/aurora/composables/uniformBridge.d.ts +3 -20
  78. package/dist/components/aurora/composables/uniformBridgeWGPU.d.ts +2 -2
  79. package/dist/components/aurora/composables/uniformBridgeWGPUImage.d.ts +2 -2
  80. package/dist/components/aurora/composables/useAurora.d.ts +32 -4
  81. package/dist/components/aurora/composables/useCursorInteraction.d.ts +2 -2
  82. package/dist/components/aurora/composables/wgpuSetup.d.ts +5 -5
  83. package/dist/components/aurora/constants/budget.d.ts +0 -36
  84. package/dist/components/aurora/constants/presets.d.ts +46 -7
  85. package/dist/components/aurora/constants/shaders/aurora-image.frag.d.ts +0 -2
  86. package/dist/components/aurora/constants/shaders/aurora-image.wgsl.d.ts +0 -2
  87. package/dist/components/aurora/index.d.ts +15 -14
  88. package/dist/components/avatar/AvatarImage.vue.d.ts +1 -6
  89. package/dist/components/avatar/index.d.ts +3 -3
  90. package/dist/components/badge/Badge.vue.d.ts +2 -9
  91. package/dist/components/badge/index.d.ts +12 -11
  92. package/dist/components/blob/Blob.vue.d.ts +4 -4
  93. package/dist/components/blob/composables/blobSimulation.d.ts +5 -5
  94. package/dist/components/blob/composables/buildMetaballProgram.d.ts +1 -1
  95. package/dist/components/blob/composables/resolveBlobSurface.d.ts +1 -1
  96. package/dist/components/blob/composables/satelliteKinematics.d.ts +1 -1
  97. package/dist/components/blob/composables/uniformBridgeWGPU.d.ts +4 -4
  98. package/dist/components/blob/composables/uploadBlobUniforms.d.ts +5 -5
  99. package/dist/components/blob/composables/useBlobMood.d.ts +1 -1
  100. package/dist/components/blob/composables/useBlobPointer.d.ts +0 -3
  101. package/dist/components/blob/composables/useBlobSatellites.d.ts +1 -1
  102. package/dist/components/blob/composables/useMetaballRenderer.d.ts +6 -6
  103. package/dist/components/blob/composables/wgpuSetup.d.ts +5 -5
  104. package/dist/components/blob/config.d.ts +3 -3
  105. package/dist/components/blob/constants.d.ts +1 -3
  106. package/dist/components/blob/index.d.ts +8 -8
  107. package/dist/components/blob/presets.d.ts +1 -1
  108. package/dist/components/button/Button.vue.d.ts +15 -9
  109. package/dist/components/button/index.d.ts +1 -1
  110. package/dist/components/button/styles.css +1 -1
  111. package/dist/components/card/Card.vue.d.ts +20 -23
  112. package/dist/components/card/CardHeader.vue.d.ts +8 -1
  113. package/dist/components/card/index.d.ts +6 -7
  114. package/dist/components/card/scroll.css +1 -0
  115. package/dist/components/card/styles.css +1 -1
  116. package/dist/components/carousel/Carousel.vue.d.ts +14 -19
  117. package/dist/components/carousel/CarouselContent.vue.d.ts +2 -12
  118. package/dist/components/carousel/CarouselItem.vue.d.ts +14 -3
  119. package/dist/components/carousel/CarouselPager.vue.d.ts +2 -2
  120. package/dist/components/carousel/index.d.ts +7 -6
  121. package/dist/components/carousel/projection.d.ts +23 -0
  122. package/dist/components/carousel/styles.css +1 -0
  123. package/dist/components/carousel/types.d.ts +47 -0
  124. package/dist/components/carousel/useCarousel.d.ts +4 -21
  125. package/dist/components/checkbox/Checkbox.vue.d.ts +6 -6
  126. package/dist/components/checkbox/index.d.ts +1 -1
  127. package/dist/components/chip/Chip.vue.d.ts +2 -2
  128. package/dist/components/chip/accent-tone.css +1 -0
  129. package/dist/components/chip/chipVariants.d.ts +1 -1
  130. package/dist/components/chip/index.d.ts +3 -3
  131. package/dist/components/chip/types.d.ts +2 -2
  132. package/dist/components/collapsible/CollapsibleTrigger.vue.d.ts +1 -1
  133. package/dist/components/collapsible/index.d.ts +3 -3
  134. package/dist/components/command/Command.vue.d.ts +5 -3
  135. package/dist/components/command/CommandDialog.vue.d.ts +9 -5
  136. package/dist/components/command/CommandEmpty.vue.d.ts +1 -1
  137. package/dist/components/command/CommandGroup.vue.d.ts +1 -1
  138. package/dist/components/command/CommandInput.vue.d.ts +1 -1
  139. package/dist/components/command/CommandItem.vue.d.ts +3 -3
  140. package/dist/components/command/CommandList.vue.d.ts +8 -8
  141. package/dist/components/command/CommandSeparator.vue.d.ts +1 -1
  142. package/dist/components/command/index.d.ts +11 -10
  143. package/dist/components/command/types.d.ts +8 -3
  144. package/dist/components/configurator/Configurator.vue.d.ts +26 -3
  145. package/dist/components/configurator/ConfiguratorRow.vue.d.ts +5 -3
  146. package/dist/components/configurator/index.d.ts +6 -6
  147. package/dist/components/configurator/styles.css +1 -1
  148. package/dist/components/configurator/useConfiguratorState.d.ts +1 -1
  149. package/dist/components/constellation/Constellation.vue.d.ts +3 -5
  150. package/dist/components/constellation/composables/createConstellationField.d.ts +1 -1
  151. package/dist/components/constellation/composables/useConstellation.d.ts +2 -2
  152. package/dist/components/constellation/constants.d.ts +1 -1
  153. package/dist/components/constellation/constellationField.d.ts +3 -4
  154. package/dist/components/constellation/constellationInteraction.d.ts +1 -5
  155. package/dist/components/constellation/constellationRender.d.ts +1 -3
  156. package/dist/components/constellation/constellationTypes.d.ts +0 -11
  157. package/dist/components/constellation/constellationWell.d.ts +1 -1
  158. package/dist/components/constellation/index.d.ts +8 -6
  159. package/dist/components/dark-mode-toggle/dark-mode-toggle.css +1 -1
  160. package/dist/components/dark-mode-toggle/index.d.ts +2 -2
  161. package/dist/components/data-table/DataTable.vue.d.ts +1 -1
  162. package/dist/components/data-table/composables/useDataTableResponsive.d.ts +1 -1
  163. package/dist/components/data-table/index.d.ts +2 -2
  164. package/dist/components/{number-field/NumberFieldContent.vue.d.ts → deck/DeckSlide.vue.d.ts} +12 -1
  165. package/dist/components/deck/DeckStage.vue.d.ts +36 -0
  166. package/dist/components/deck/composables/useDeck.d.ts +35 -10
  167. package/dist/components/deck/composables/useDeckCapture.d.ts +26 -0
  168. package/dist/components/deck/composables/useDeckHashSync.d.ts +8 -0
  169. package/dist/components/deck/composables/useDeckKeyboard.d.ts +16 -8
  170. package/dist/components/deck/composables/useDeckSnap.d.ts +20 -0
  171. package/dist/components/deck/composables/useDeckSwipe.d.ts +13 -0
  172. package/dist/components/deck/composables/useEdgeZones.d.ts +14 -0
  173. package/dist/components/deck/constants.d.ts +0 -3
  174. package/dist/components/deck/index.d.ts +22 -6
  175. package/dist/components/deck/slideContext.d.ts +21 -0
  176. package/dist/components/deck/styles/capture.css +1 -0
  177. package/dist/components/deck/styles/index.css +1 -0
  178. package/dist/components/deck/styles/reveal.css +1 -0
  179. package/dist/components/deck/styles/stage.css +1 -0
  180. package/dist/components/deck/styles/turn.css +1 -0
  181. package/dist/components/deck/types.d.ts +26 -0
  182. package/dist/components/deck/window.d.ts +27 -0
  183. package/dist/components/dialog/Dialog.vue.d.ts +13 -0
  184. package/dist/components/dialog/DialogContent.vue.d.ts +23 -27
  185. package/dist/components/dialog/DialogFooter.vue.d.ts +2 -2
  186. package/dist/components/dialog/DialogHeader.vue.d.ts +2 -2
  187. package/dist/components/dialog/ModalOverlay.vue.d.ts +44 -23
  188. package/dist/components/dialog/index.d.ts +7 -8
  189. package/dist/components/dialog/styles.css +1 -0
  190. package/dist/components/dock/DockControl.vue.d.ts +8 -4
  191. package/dist/components/dock/DockCrossfade.vue.d.ts +3 -3
  192. package/dist/components/dock/DockLayer.vue.d.ts +1 -1
  193. package/dist/components/dock/DockLayerGroup.vue.d.ts +13 -13
  194. package/dist/components/dock/DockSeparator.vue.d.ts +24 -20
  195. package/dist/components/dock/GlassDock.vue.d.ts +5 -4
  196. package/dist/components/dock/composables/dockContext.d.ts +28 -11
  197. package/dist/components/dock/composables/dockCrossfadeContext.d.ts +5 -5
  198. package/dist/components/dock/composables/dockMorphMeasure.d.ts +0 -1
  199. package/dist/components/dock/composables/dockSwitcherContext.d.ts +29 -0
  200. package/dist/components/dock/composables/index.d.ts +10 -10
  201. package/dist/components/dock/composables/useDockHold.d.ts +21 -6
  202. package/dist/components/dock/composables/useDockRun.d.ts +20 -0
  203. package/dist/components/dock/composables/useDockSearch.d.ts +5 -5
  204. package/dist/components/dock/composables/useDockShellProps.d.ts +21 -128
  205. package/dist/components/dock/composables/useDockState.d.ts +18 -12
  206. package/dist/components/dock/constants.d.ts +32 -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/run.css +1 -0
  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 +31 -30
  237. package/dist/components/fourier-field/clock.d.ts +35 -0
  238. package/dist/components/fourier-field/constants.d.ts +79 -104
  239. package/dist/components/fourier-field/index.d.ts +4 -31
  240. package/dist/components/fourier-field/math.d.ts +69 -77
  241. package/dist/components/fourier-field/renderer/mint.d.ts +50 -0
  242. package/dist/components/fourier-field/renderer/uniforms.d.ts +84 -0
  243. package/dist/components/fourier-field/renderer/wgpu.d.ts +28 -0
  244. package/dist/components/fourier-field/shaders/compute.wgsl.d.ts +1 -0
  245. package/dist/components/fourier-field/shaders/render.wgsl.d.ts +1 -0
  246. package/dist/components/fourier-field/useFourierField.d.ts +49 -0
  247. package/dist/components/handmark/HandMark.vue.d.ts +18 -14
  248. package/dist/components/handmark/index.d.ts +5 -22
  249. package/dist/components/handmark/stroke.d.ts +92 -0
  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/select/Select.vue.d.ts +2 -2
  309. package/dist/components/select/SelectContent.vue.d.ts +4 -9
  310. package/dist/components/select/SelectItem.vue.d.ts +1 -1
  311. package/dist/components/select/SelectScrollButton.vue.d.ts +18 -0
  312. package/dist/components/select/SelectTrigger.vue.d.ts +1 -8
  313. package/dist/components/select/SelectValue.vue.d.ts +4 -6
  314. package/dist/components/select/index.d.ts +18 -16
  315. package/dist/components/separator/Separator.vue.d.ts +1 -1
  316. package/dist/components/separator/index.d.ts +1 -1
  317. package/dist/components/sheet/SheetContent.vue.d.ts +60 -0
  318. package/dist/components/sheet/detents/projection.d.ts +42 -0
  319. package/dist/components/sheet/detents/use.d.ts +27 -0
  320. package/dist/components/sheet/index.d.ts +4 -0
  321. package/dist/components/sheet/motion.d.ts +29 -0
  322. package/dist/components/sheet/styles.css +1 -0
  323. package/dist/components/skeleton/index.d.ts +1 -1
  324. package/dist/components/slider/Slider.vue.d.ts +2 -3
  325. package/dist/components/slider/index.d.ts +2 -2
  326. package/dist/components/slider/styles.css +1 -0
  327. package/dist/components/slider/types.d.ts +13 -4
  328. package/dist/components/sortable-list/SortableItem.vue.d.ts +1 -1
  329. package/dist/components/sortable-list/SortableList.vue.d.ts +1 -2
  330. package/dist/components/sortable-list/context.d.ts +1 -1
  331. package/dist/components/sortable-list/drag.d.ts +52 -0
  332. package/dist/components/sortable-list/ghost.d.ts +40 -0
  333. package/dist/components/sortable-list/index.d.ts +4 -4
  334. package/dist/components/sortable-list/motion.d.ts +75 -0
  335. package/dist/components/sortable-list/resolve.d.ts +56 -0
  336. package/dist/components/sortable-list/{composables/types.d.ts → types.d.ts} +14 -7
  337. package/dist/components/sortable-list/{composables/useSortable.d.ts → useSortable.d.ts} +2 -4
  338. package/dist/components/status-dot/StatusDot.vue.d.ts +10 -3
  339. package/dist/components/status-dot/index.d.ts +3 -2
  340. package/dist/components/status-dot/states.d.ts +4 -0
  341. package/dist/components/surface/Surface.vue.d.ts +31 -14
  342. package/dist/components/surface/index.d.ts +2 -2
  343. package/dist/components/switch/Switch.vue.d.ts +7 -12
  344. package/dist/components/switch/index.d.ts +2 -2
  345. package/dist/components/table/index.d.ts +8 -8
  346. package/dist/components/tabs/SegmentedTabs.vue.d.ts +9 -13
  347. package/dist/components/tabs/composables/useTabDragMorph.d.ts +2 -2
  348. package/dist/components/tabs/composables/useTabResponsive.d.ts +1 -1
  349. package/dist/components/tabs/composables/useTabRovingFocus.d.ts +15 -7
  350. package/dist/components/tabs/index.d.ts +2 -2
  351. package/dist/components/tabs/styles/drag.css +1 -1
  352. package/dist/components/tabs/styles/segmented.css +1 -1
  353. package/dist/components/textarea/Textarea.vue.d.ts +10 -5
  354. package/dist/components/textarea/index.d.ts +2 -2
  355. package/dist/components/textarea/types.d.ts +34 -11
  356. package/dist/components/timeline/Timeline.vue.d.ts +41 -0
  357. package/dist/components/timeline/geometry.d.ts +53 -78
  358. package/dist/components/timeline/index.d.ts +2 -2
  359. package/dist/components/timeline/types.d.ts +42 -42
  360. package/dist/components/toast/Toast.vue.d.ts +3 -3
  361. package/dist/components/toast/index.d.ts +8 -8
  362. package/dist/components/toast/use-toast.d.ts +9 -2
  363. package/dist/components/toggle-group/ToggleGroup.vue.d.ts +29 -40
  364. package/dist/components/toggle-group/ToggleGroupItem.vue.d.ts +7 -7
  365. package/dist/components/toggle-group/context.d.ts +28 -0
  366. package/dist/components/toggle-group/index.d.ts +2 -3
  367. package/dist/components/tooltip/TooltipContent.vue.d.ts +3 -8
  368. package/dist/components/tooltip/TooltipTrigger.vue.d.ts +1 -1
  369. package/dist/components/tooltip/index.d.ts +4 -4
  370. package/dist/components/typewriter/TypewriterText.vue.d.ts +12 -32
  371. package/dist/components/typewriter/composables/useTypewriter.d.ts +1 -1
  372. package/dist/components/typewriter/index.d.ts +7 -7
  373. package/dist/components/typewriter/types.d.ts +1 -1
  374. package/dist/components/typewriter/utils/timing.d.ts +1 -1
  375. package/dist/components/typewriter/utils/typoStateMachine.d.ts +1 -1
  376. package/dist/composables/color/accent-tone-solve.d.ts +1 -1
  377. package/dist/composables/color/index.d.ts +7 -7
  378. package/dist/composables/context/index.d.ts +1 -1
  379. package/dist/composables/dark/darkModeSyncScript.d.ts +19 -0
  380. package/dist/composables/dark/index.d.ts +5 -5
  381. package/dist/composables/dom/index.d.ts +10 -10
  382. package/dist/composables/dom/useDragVelocity.d.ts +7 -0
  383. package/dist/composables/glass/backdropLuminanceSample.d.ts +20 -22
  384. package/dist/composables/glass/backdropSampleMath.d.ts +10 -0
  385. package/dist/composables/glass/canvas2d/index.d.ts +3 -3
  386. package/dist/composables/glass/canvas2d/useCanvas2D.d.ts +2 -10
  387. package/dist/composables/glass/index.d.ts +5 -7
  388. package/dist/composables/glass/useGlassBackdropLuminance.d.ts +3 -4
  389. package/dist/composables/glass/useSpecularTracking.d.ts +1 -1
  390. package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +13 -22
  391. package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +10 -13
  392. package/dist/composables/glass/webgl/visibility.d.ts +1 -1
  393. package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +10 -13
  394. package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +3 -4
  395. package/dist/composables/glass/webgpu/webgpuCanvasTypes.d.ts +9 -11
  396. package/dist/composables/glass/webgpu/webgpuDevice.d.ts +0 -17
  397. package/dist/composables/keyboard/index.d.ts +1 -1
  398. package/dist/composables/motion/core/constants.d.ts +7 -0
  399. package/dist/composables/motion/core/index.d.ts +21 -21
  400. package/dist/composables/motion/core/motionTempo.d.ts +0 -2
  401. package/dist/composables/motion/dissolve/dissolveGrammar.d.ts +88 -0
  402. package/dist/composables/motion/engage/engageEnvelopes.d.ts +45 -0
  403. package/dist/composables/motion/engage/engageLadder.d.ts +86 -0
  404. package/dist/composables/motion/index.d.ts +14 -14
  405. package/dist/composables/motion/morph/eyeglass.d.ts +141 -0
  406. package/dist/composables/motion/morph/useDockCtaReceive.d.ts +6 -6
  407. package/dist/composables/motion/morph/useElementMorph.d.ts +4 -4
  408. package/dist/composables/motion/morph/useLeadTrail.d.ts +30 -28
  409. package/dist/composables/motion/morph/useSelectionGroup.d.ts +61 -23
  410. package/dist/composables/motion/morph/useSelectionIndicator.d.ts +52 -22
  411. package/dist/composables/motion/number/useAnimatedNumberMap.d.ts +1 -1
  412. package/dist/composables/motion/pointer/pointerFieldMappings.d.ts +1 -42
  413. package/dist/composables/motion/pointer/useRoutePointer.d.ts +1 -1
  414. package/dist/composables/motion/reveal/useLiquidReveal.d.ts +7 -6
  415. package/dist/composables/motion/route/routeGrammar.d.ts +60 -0
  416. package/dist/composables/motion/route/useRouteTransition.d.ts +45 -0
  417. package/dist/composables/motion/scroll/useScrollProgress.d.ts +7 -14
  418. package/dist/composables/motion/scroll/useScrollScene.d.ts +5 -4
  419. package/dist/composables/motion/spring/springPresets.d.ts +13 -27
  420. package/dist/composables/motion/spring/springProjection.d.ts +3 -4
  421. package/dist/composables/motion/spring/useLiquidPress.d.ts +2 -2
  422. package/dist/composables/motion/spring/useSpring.d.ts +3 -3
  423. package/dist/composables/motion/spring/useSpringMount.d.ts +6 -3
  424. package/dist/composables/motion/spring/useSpringPress.d.ts +6 -6
  425. package/dist/composables/reactive/index.d.ts +2 -2
  426. package/dist/composables/search/index.d.ts +5 -0
  427. package/dist/{components/search/composables/fuzzySearchIndex.d.ts → composables/search/match.d.ts} +9 -4
  428. package/dist/{components/search/composables → composables/search}/useFuzzySearch.d.ts +1 -1
  429. package/dist/composables/sidebar/index.d.ts +10 -10
  430. package/dist/composables/sidebar/useClickDelegate.d.ts +1 -1
  431. package/dist/composables/sidebar/useLazyLoader.d.ts +1 -1
  432. package/dist/composables/sidebar/useScrollTo.d.ts +1 -1
  433. package/dist/composables/sidebar/useScrollTracker.d.ts +1 -1
  434. package/dist/composables/sidebar/useSidebarState.d.ts +1 -1
  435. package/dist/composables/sidebar/useTreeIndex.d.ts +1 -1
  436. package/dist/configurator-BHJymdrF.js +339 -0
  437. package/dist/configurator.d.ts +1 -1
  438. package/dist/configurator.js +1 -1
  439. package/dist/{constants-nBz23tJE.js → constants-Dk96HZHu.js} +2 -2
  440. package/dist/constellation.d.ts +1 -1
  441. package/dist/constellation.js +137 -136
  442. package/dist/content-CWO-XL7o.js +18 -0
  443. package/dist/control-DJp15L4U.js +7 -0
  444. 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
  445. package/dist/{createCanvasLifecycle-DbXRwjU_.js → createCanvasLifecycle-hJHobVTn.js} +2 -5
  446. package/dist/{dark-z_P5QwqI.js → dark-CLlmo7dD.js} +2 -2
  447. package/dist/dark-mode-toggle.d.ts +1 -1
  448. package/dist/dark-mode-toggle.js +3 -3
  449. package/dist/dark.d.ts +1 -1
  450. package/dist/dark.js +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 +873 -620
  462. package/dist/dom.d.ts +1 -1
  463. package/dist/dom.js +141 -37
  464. package/dist/easing.d.ts +1 -1
  465. package/dist/easing.js +686 -515
  466. package/dist/expandable-container-BY1hQXi4.js +142 -0
  467. package/dist/expandable-container.d.ts +1 -1
  468. package/dist/expandable-container.js +2 -140
  469. package/dist/{fading-scroll-DhxXIhm2.js → fading-scroll-CTeW3KNS.js} +30 -30
  470. package/dist/fading-scroll.d.ts +1 -1
  471. package/dist/fading-scroll.js +1 -1
  472. package/dist/focus-Duf7EpUu.js +13 -0
  473. package/dist/fourier-field.d.ts +1 -1
  474. package/dist/fourier-field.js +641 -855
  475. package/dist/fourier-math.d.ts +1 -1
  476. package/dist/fourier-math.js +6 -6
  477. package/dist/glass-ui.css +1 -1
  478. package/dist/glass-ui.js +133 -469
  479. package/dist/handmark.d.ts +1 -1
  480. package/dist/handmark.js +330 -718
  481. package/dist/index.d.ts +41 -42
  482. package/dist/infinite-scroll.d.ts +1 -1
  483. package/dist/infinite-scroll.js +56 -43
  484. package/dist/input-Bls2A4Tt.js +54 -0
  485. package/dist/input.d.ts +1 -0
  486. package/dist/input.js +2 -0
  487. package/dist/keyboard.d.ts +1 -1
  488. package/dist/label-BQEZhnK_.js +53 -0
  489. package/dist/label.d.ts +1 -1
  490. package/dist/label.js +1 -1
  491. package/dist/labeled-field.d.ts +1 -1
  492. package/dist/labeled-field.js +64 -148
  493. package/dist/menu-TDMNtZjG.js +501 -0
  494. package/dist/menu.d.ts +1 -0
  495. package/dist/{dropdown-menu.js → menu.js} +2 -2
  496. package/dist/metric.d.ts +1 -1
  497. package/dist/metric.js +79 -132
  498. package/dist/motion-D4uYE0UM.js +61 -0
  499. package/dist/motion-core.d.ts +1 -1
  500. package/dist/motion-core.js +185 -52
  501. package/dist/motion.d.ts +1 -1
  502. package/dist/motion.js +160 -178
  503. package/dist/music-staff.d.ts +1 -0
  504. package/dist/music-staff.js +915 -0
  505. package/dist/number-field-NFAwQ0HK.js +111 -0
  506. package/dist/number-field.d.ts +1 -1
  507. package/dist/number-field.js +2 -2
  508. package/dist/pager-dots.d.ts +1 -1
  509. package/dist/pager-dots.js +362 -2
  510. package/dist/participation-Di4UHbzk.js +42 -0
  511. package/dist/{pointerFieldMappings-DP5tla5z.js → pointerFieldMappings-DXwlU5uj.js} +7 -23
  512. package/dist/popover-C04Rrdcz.js +181 -0
  513. package/dist/popover.d.ts +1 -1
  514. package/dist/popover.js +1 -1
  515. package/dist/progress-DF8dWZIX.js +74 -0
  516. package/dist/progress.d.ts +1 -1
  517. package/dist/progress.js +1 -1
  518. package/dist/radio-group-BNV7PN1O.js +85 -0
  519. package/dist/radio-group.d.ts +1 -0
  520. package/dist/radio-group.js +2 -0
  521. package/dist/reactive.d.ts +1 -1
  522. package/dist/resolve-DdrNvBby.js +6 -0
  523. package/dist/rowClass-DYOXwxhO.js +10 -0
  524. package/dist/scroll-progress-rim.d.ts +1 -1
  525. package/dist/scroll-progress-rim.js +48 -42
  526. package/dist/select-COox45Kv.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-5ChjjWSR.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-lLkbREB-.js +49 -0
  631. package/dist/switch.d.ts +1 -1
  632. package/dist/switch.js +1 -1
  633. package/dist/tabs-DSJMd1Et.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-DUcmKnDw.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-BKk2qVDn.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/{resolveCanvasColor-DS_6DBxA.js → useCanvas2D-CQRElMyE.js} +2 -13
  655. package/dist/{useDockCtaReceive-DkrOTM0q.js → useDockCtaReceive-BSSgD6mu.js} +2 -2
  656. package/dist/{useDragMorph-BogSV_nv.js → useDragMorph-B363RUbF.js} +59 -59
  657. package/dist/{useDragVelocity-6ONX0sr0.js → useDragVelocity-C5BkKiNf.js} +28 -24
  658. package/dist/useIntersectionPause-CzKR3EyP.js +57 -0
  659. package/dist/useLeadTrail-DQWdpFN1.js +83 -0
  660. package/dist/{useLiquidPress-BOxuDkKa.js → useLiquidPress-h1scrPtP.js} +1 -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 +52 -109
  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/canvas.d.ts +0 -1
  678. package/dist/canvas.js +0 -2
  679. package/dist/chip-DFZQr6rV.js +0 -129
  680. package/dist/color.wgsl-Ct5o9dpf.js +0 -411
  681. package/dist/command-SFqDQ65h.js +0 -320
  682. package/dist/compile-D7VYG3gi.js +0 -19
  683. package/dist/completion-seal.d.ts +0 -1
  684. package/dist/completion-seal.js +0 -132
  685. package/dist/components/_shared/FeedbackMark.vue.d.ts +0 -11
  686. package/dist/components/_shared/control-size.d.ts +0 -2
  687. package/dist/components/_shared/disclosure.css +0 -1
  688. package/dist/components/_shared/feedback-tone.css +0 -1
  689. package/dist/components/_shared/feedback.d.ts +0 -7
  690. package/dist/components/_shared/field-control.css +0 -1
  691. package/dist/components/_shared/field-surfaces.css +0 -1
  692. package/dist/components/_shared/floating.d.ts +0 -14
  693. package/dist/components/_shared/menu.css +0 -1
  694. package/dist/components/_shared/menuRowClass.d.ts +0 -2
  695. package/dist/components/_shared/resolveSurfaceClass.d.ts +0 -3
  696. package/dist/components/animated-digit/AnimatedDigit.vue.d.ts +0 -55
  697. package/dist/components/animated-digit/index.d.ts +0 -2
  698. package/dist/components/avatar/styles.css +0 -1
  699. package/dist/components/card/CardAction.vue.d.ts +0 -17
  700. package/dist/components/card/card-scroll.css +0 -1
  701. package/dist/components/carousel/interface.d.ts +0 -22
  702. package/dist/components/checkbox/styles.css +0 -1
  703. package/dist/components/combobox/Combobox.vue.d.ts +0 -22
  704. package/dist/components/combobox/ComboboxAnchor.vue.d.ts +0 -14
  705. package/dist/components/combobox/ComboboxEmpty.vue.d.ts +0 -14
  706. package/dist/components/combobox/ComboboxGroup.vue.d.ts +0 -14
  707. package/dist/components/combobox/ComboboxInput.vue.d.ts +0 -18
  708. package/dist/components/combobox/ComboboxItem.vue.d.ts +0 -18
  709. package/dist/components/combobox/ComboboxItemIndicator.vue.d.ts +0 -14
  710. package/dist/components/combobox/ComboboxList.vue.d.ts +0 -29
  711. package/dist/components/combobox/ComboboxTrigger.vue.d.ts +0 -16
  712. package/dist/components/combobox/index.d.ts +0 -10
  713. package/dist/components/combobox/types.d.ts +0 -87
  714. package/dist/components/command/dialogContext.d.ts +0 -6
  715. package/dist/components/command/styles.css +0 -1
  716. package/dist/components/completion-seal/CompletionSeal.vue.d.ts +0 -28
  717. package/dist/components/completion-seal/composables/useCompletionSeal.d.ts +0 -37
  718. package/dist/components/completion-seal/constants.d.ts +0 -66
  719. package/dist/components/completion-seal/index.d.ts +0 -4
  720. package/dist/components/completion-seal/styles.css +0 -1
  721. package/dist/components/data-table/styles.css +0 -1
  722. package/dist/components/deck/DeckPager.vue.d.ts +0 -29
  723. package/dist/components/dialog/DialogClose.vue.d.ts +0 -16
  724. package/dist/components/dialog/DialogTrigger.vue.d.ts +0 -16
  725. package/dist/components/dialog/dialogStageContext.d.ts +0 -7
  726. package/dist/components/dialog/placement.css +0 -1
  727. package/dist/components/dialog/sheet-motion.d.ts +0 -17
  728. package/dist/components/dock/composables/useDockOverflowFit.d.ts +0 -20
  729. package/dist/components/dock/composables/useDockTouchGate.d.ts +0 -42
  730. package/dist/components/dock/styles/overflow.css +0 -1
  731. package/dist/components/drawer/Drawer.vue.d.ts +0 -82
  732. package/dist/components/drawer/DrawerContent.vue.d.ts +0 -39
  733. package/dist/components/drawer/DrawerDescription.vue.d.ts +0 -17
  734. package/dist/components/drawer/DrawerFooter.vue.d.ts +0 -17
  735. package/dist/components/drawer/DrawerHeader.vue.d.ts +0 -17
  736. package/dist/components/drawer/DrawerOverlay.vue.d.ts +0 -8
  737. package/dist/components/drawer/DrawerTitle.vue.d.ts +0 -17
  738. package/dist/components/drawer/composables/drawerSnapContext.d.ts +0 -34
  739. package/dist/components/drawer/composables/useDrawerSnap.d.ts +0 -26
  740. package/dist/components/drawer/constants.d.ts +0 -32
  741. package/dist/components/drawer/index.d.ts +0 -33
  742. package/dist/components/drawer/styles.css +0 -1
  743. package/dist/components/dropdown-menu/styles.css +0 -1
  744. package/dist/components/easing/EasingConfigurator.vue.d.ts +0 -33
  745. package/dist/components/expandable-container/styles.css +0 -1
  746. package/dist/components/fourier-field/composables/fourierFieldGLSetup.d.ts +0 -24
  747. package/dist/components/fourier-field/composables/fourierFieldWGPUSetup.d.ts +0 -31
  748. package/dist/components/fourier-field/composables/uniformBridgeWGPU.d.ts +0 -41
  749. package/dist/components/fourier-field/composables/useFourierField.d.ts +0 -56
  750. package/dist/components/fourier-field/presets.d.ts +0 -54
  751. package/dist/components/fourier-field/shaders/fourier-field.compute.wgsl.d.ts +0 -1
  752. package/dist/components/fourier-field/shaders/fourier-field.glsl.d.ts +0 -4
  753. package/dist/components/fourier-field/shaders/fourier-field.render.wgsl.d.ts +0 -1
  754. package/dist/components/fourier-field/shaders/fourier-field.ribbon.d.ts +0 -51
  755. package/dist/components/handmark/brush.d.ts +0 -269
  756. package/dist/components/handmark/composables/useHandMark.d.ts +0 -99
  757. package/dist/components/handmark/constants.d.ts +0 -69
  758. package/dist/components/handmark/freehand.d.ts +0 -69
  759. package/dist/components/handmark/geometry.d.ts +0 -65
  760. package/dist/components/handmark/ink.d.ts +0 -11
  761. package/dist/components/handmark/noise.d.ts +0 -30
  762. package/dist/components/handmark/texture.d.ts +0 -39
  763. package/dist/components/handmark/types.d.ts +0 -70
  764. package/dist/components/header-ribbon/HeaderRibbon.vue.d.ts +0 -13
  765. package/dist/components/header-ribbon/index.d.ts +0 -2
  766. package/dist/components/header-ribbon/styles.css +0 -1
  767. package/dist/components/header-ribbon/types.d.ts +0 -10
  768. package/dist/components/instrument-chassis/InstrumentChassis.vue.d.ts +0 -23
  769. package/dist/components/instrument-chassis/index.d.ts +0 -2
  770. package/dist/components/instrument-chassis/styles.css +0 -1
  771. package/dist/components/instrument-chassis/types.d.ts +0 -13
  772. package/dist/components/labeled-field/LabeledSelect.vue.d.ts +0 -20
  773. package/dist/components/liquid-grid/LiquidGrid.vue.d.ts +0 -46
  774. package/dist/components/liquid-grid/composables/liquidGrid.d.ts +0 -113
  775. package/dist/components/liquid-grid/composables/liquidGridGLSetup.d.ts +0 -18
  776. package/dist/components/liquid-grid/composables/liquidGridWGPUSetup.d.ts +0 -21
  777. package/dist/components/liquid-grid/composables/uniformBridgeWGPU.d.ts +0 -16
  778. package/dist/components/liquid-grid/composables/useLiquidGrid.d.ts +0 -32
  779. package/dist/components/liquid-grid/constants.d.ts +0 -92
  780. package/dist/components/liquid-grid/index.d.ts +0 -5
  781. package/dist/components/liquid-grid/shaders/liquid-grid.glsl.d.ts +0 -4
  782. package/dist/components/liquid-grid/shaders/liquid-grid.wgsl.d.ts +0 -1
  783. package/dist/components/metric/MetricCell.vue.d.ts +0 -26
  784. package/dist/components/number-field/NumberFieldDecrement.vue.d.ts +0 -18
  785. package/dist/components/number-field/NumberFieldIncrement.vue.d.ts +0 -18
  786. package/dist/components/number-field/styles.css +0 -1
  787. package/dist/components/pager-dots/composables/usePagerWorm.d.ts +0 -26
  788. package/dist/components/pager-dots/constants.d.ts +0 -14
  789. package/dist/components/pager-dots/pagerWindow.d.ts +0 -9
  790. package/dist/components/paper-backdrop/PaperBackdrop.vue.d.ts +0 -8
  791. package/dist/components/paper-backdrop/index.d.ts +0 -2
  792. package/dist/components/pulse/Pulse.vue.d.ts +0 -14
  793. package/dist/components/pulse/index.d.ts +0 -2
  794. package/dist/components/radio-group/styles.css +0 -1
  795. package/dist/components/search/FuzzySearch.vue.d.ts +0 -24
  796. package/dist/components/search/SearchBar.vue.d.ts +0 -38
  797. package/dist/components/search/composables/index.d.ts +0 -5
  798. package/dist/components/search/index.d.ts +0 -9
  799. package/dist/components/search/searchVariants.d.ts +0 -17
  800. package/dist/components/select/SelectScrollDownButton.vue.d.ts +0 -17
  801. package/dist/components/select/SelectScrollUpButton.vue.d.ts +0 -17
  802. package/dist/components/sortable-list/composables/dragController.d.ts +0 -29
  803. package/dist/components/sortable-list/composables/dropResolver.d.ts +0 -34
  804. package/dist/components/sortable-list/composables/ghostRenderer.d.ts +0 -44
  805. package/dist/components/sortable-list/composables/index.d.ts +0 -1
  806. package/dist/components/sortable-list/composables/touchGate.d.ts +0 -26
  807. package/dist/components/sortable-list/composables/transitionTiming.d.ts +0 -50
  808. package/dist/components/switch/styles.css +0 -1
  809. package/dist/components/tabs/constants.d.ts +0 -1
  810. package/dist/components/tags-input/TagsInput.vue.d.ts +0 -41
  811. package/dist/components/tags-input/TagsInputInput.vue.d.ts +0 -10
  812. package/dist/components/tags-input/TagsInputItem.vue.d.ts +0 -19
  813. package/dist/components/tags-input/TagsInputItemDelete.vue.d.ts +0 -17
  814. package/dist/components/tags-input/TagsInputItemText.vue.d.ts +0 -7
  815. package/dist/components/tags-input/context.d.ts +0 -5
  816. package/dist/components/tags-input/index.d.ts +0 -5
  817. package/dist/components/tags-input/styles.css +0 -1
  818. package/dist/components/timeline/ContinuousMarkers.vue.d.ts +0 -47
  819. package/dist/components/timeline/ContinuousRail.vue.d.ts +0 -23
  820. package/dist/components/timeline/ContinuousTimeline.vue.d.ts +0 -117
  821. package/dist/components/timeline/GlassTimeline.vue.d.ts +0 -113
  822. package/dist/components/timeline/ScrubberTimeline.vue.d.ts +0 -45
  823. package/dist/components/timeline/SegmentedTimeline.vue.d.ts +0 -45
  824. package/dist/components/toggle-group/styles.css +0 -1
  825. package/dist/components/toggle-group/toggleGroupContext.d.ts +0 -9
  826. package/dist/components/typewriter/composables/index.d.ts +0 -1
  827. package/dist/components/watercolor-dot/WatercolorDot.vue.d.ts +0 -61
  828. package/dist/components/watercolor-dot/index.d.ts +0 -3
  829. package/dist/components/watercolor-dot/prng.d.ts +0 -5
  830. package/dist/components/watercolor-dot/useWatercolorBlob.d.ts +0 -28
  831. package/dist/composables/glass/ambientHueHistogram.d.ts +0 -27
  832. package/dist/composables/glass/useSpecularPointer.d.ts +0 -52
  833. package/dist/composables/glass/wave/index.d.ts +0 -4
  834. package/dist/composables/glass/wave/waveField.d.ts +0 -136
  835. package/dist/composables/glass/wave/waveField.glsl.d.ts +0 -1
  836. package/dist/composables/glass/wave/waveField.wgsl.d.ts +0 -1
  837. package/dist/composables/glass/webgpu/index.d.ts +0 -3
  838. package/dist/composables/index.d.ts +0 -9
  839. package/dist/composables/motion/number/useCountup.d.ts +0 -30
  840. package/dist/composables/motion/number/useNumericTransition.d.ts +0 -56
  841. package/dist/composables/motion/reveal/bloomUpField.d.ts +0 -29
  842. package/dist/composables/motion/reveal/useBloomUp.d.ts +0 -33
  843. package/dist/composables/motion/reveal/useStaggerReveal.d.ts +0 -28
  844. package/dist/composables/motion/reveal/useTextHighlight.d.ts +0 -41
  845. package/dist/composables/motion/scroll/useScrollPin.d.ts +0 -49
  846. package/dist/configurator-M5OaIlJd.js +0 -311
  847. package/dist/data-table-BygKg6ZA.js +0 -491
  848. package/dist/dialog-TNRDkcE4.js +0 -385
  849. package/dist/dockContext-BUTlGRNJ.js +0 -13
  850. package/dist/drawer.d.ts +0 -1
  851. package/dist/drawer.js +0 -496
  852. package/dist/dropdown-menu-BlbnvMaZ.js +0 -507
  853. package/dist/dropdown-menu.d.ts +0 -1
  854. package/dist/floating-dB5TD88k.js +0 -7
  855. package/dist/flow.wgsl-Cd2GUkPx.js +0 -4
  856. package/dist/fonts/README.md +0 -120
  857. package/dist/fonts/fira-code/OFL.txt +0 -93
  858. package/dist/fonts/plus-jakarta-sans/OFL.txt +0 -93
  859. package/dist/forms.d.ts +0 -5
  860. package/dist/forms.js +0 -403
  861. package/dist/header-ribbon.d.ts +0 -1
  862. package/dist/header-ribbon.js +0 -43
  863. package/dist/instrument-chassis.d.ts +0 -1
  864. package/dist/instrument-chassis.js +0 -54
  865. package/dist/label-DnMqH7jr.js +0 -55
  866. package/dist/liquid-grid.d.ts +0 -1
  867. package/dist/liquid-grid.js +0 -1065
  868. package/dist/menuRowClass-Nh7CtMON.js +0 -12
  869. package/dist/number-field-Boe09SvX.js +0 -154
  870. package/dist/paper-backdrop.d.ts +0 -1
  871. package/dist/paper-backdrop.js +0 -23
  872. package/dist/popover-BQGYXZyO.js +0 -244
  873. package/dist/progress-DClbhRAT.js +0 -88
  874. package/dist/pulse.d.ts +0 -1
  875. package/dist/pulse.js +0 -42
  876. package/dist/resolveSurfaceClass-DCZ4PZcy.js +0 -6
  877. package/dist/search.d.ts +0 -1
  878. package/dist/search.js +0 -352
  879. package/dist/select-BcBAyLXA.js +0 -336
  880. package/dist/separator-CgZInrX-.js +0 -75
  881. package/dist/slider-DzqeQmMu.js +0 -162
  882. package/dist/springPresets-rCii5KqX.js +0 -52
  883. package/dist/styles/draw-in.css +0 -1
  884. package/dist/styles/glass/accent-tone.css +0 -1
  885. package/dist/styles/glass/grain-overlay.css +0 -1
  886. package/dist/styles/glass/material-roles.css +0 -1
  887. package/dist/styles/glass-refract.css +0 -1
  888. package/dist/styles/tokens/manifest.ts +0 -56
  889. package/dist/styles/tokens.ts +0 -54
  890. package/dist/switch-DZjQuFLa.js +0 -54
  891. package/dist/toggle-group-O6jBo7AE.js +0 -150
  892. package/dist/tooltip-Drx5qnw_.js +0 -148
  893. package/dist/useAccentTone-DyInfHXE.js +0 -23
  894. package/dist/useAnimatedNumber-WPtMz0AN.js +0 -40
  895. package/dist/useDocumentVisibility-Dh_TGXsU.js +0 -21
  896. package/dist/useFuzzySearch-CUnZknpm.js +0 -177
  897. package/dist/useIntersectionPause-B5mAU6XY.js +0 -39
  898. package/dist/useLeadTrail-AW1-zZcd.js +0 -74
  899. package/dist/useRAFLoop-B3YlWK4M.js +0 -98
  900. package/dist/useScrollProgress-CSFYXIZT.js +0 -43
  901. package/dist/useSelectionGroup-B5XplBbo.js +0 -132
  902. package/dist/useTabRovingFocus-YnWh-Ytr.js +0 -169
  903. package/dist/useTextHighlight-mfwNIC1f.js +0 -112
  904. package/dist/useTouchGate-B4mzQcHJ.js +0 -84
  905. package/dist/useUserInvalidAria-0GNrddMX.js +0 -25
  906. package/dist/watercolor-dot.d.ts +0 -1
  907. package/dist/watercolor-dot.js +0 -149
  908. /package/dist/components/_shared/{disclosure-context.d.ts → disclosure/disclosure-context.d.ts} +0 -0
  909. /package/dist/components/_shared/{valueDomain.d.ts → field/valueDomain.d.ts} +0 -0
  910. /package/dist/components/{dropdown-menu → menu}/DropdownMenuGroup.vue.d.ts +0 -0
  911. /package/dist/components/{dropdown-menu → menu}/DropdownMenuItem.vue.d.ts +0 -0
  912. /package/dist/components/{dropdown-menu → menu}/DropdownMenuLabel.vue.d.ts +0 -0
  913. /package/dist/components/{dropdown-menu → menu}/DropdownMenuSeparator.vue.d.ts +0 -0
  914. /package/dist/components/{dropdown-menu → menu}/DropdownMenuShortcut.vue.d.ts +0 -0
  915. /package/dist/components/{dropdown-menu → menu}/DropdownMenuSub.vue.d.ts +0 -0
  916. /package/dist/components/{dropdown-menu → menu}/DropdownMenuSubTrigger.vue.d.ts +0 -0
  917. /package/dist/components/{dropdown-menu/useMenuTrigger.d.ts → menu/context.d.ts} +0 -0
  918. /package/dist/{components/search/composables → composables/search}/types.d.ts +0 -0
@@ -0,0 +1,27 @@
1
+ /** Which window a recompute is allowed to choose. */
2
+ export type SequenceWindowPolicy = "recentre" | "nudge";
3
+ export interface SequenceWindowOptions {
4
+ /** The window start the caller is coming FROM (the `"nudge"` policy's anchor). */
5
+ from?: number;
6
+ /** Default `"recentre"`. */
7
+ policy?: SequenceWindowPolicy;
8
+ }
9
+ export interface SequenceWindow {
10
+ /** The 0-based member indices inside the window, in order. */
11
+ shown: number[];
12
+ /** The window's first index — the FLIP delta is a difference of these. */
13
+ start: number;
14
+ /** Members exist before the window (a dimmed leading edge cue). */
15
+ clippedStart: boolean;
16
+ /** Members exist after the window (a dimmed trailing edge cue). */
17
+ clippedEnd: boolean;
18
+ }
19
+ /**
20
+ * The window of members around `active`.
21
+ *
22
+ * @param total the member count
23
+ * @param active the active 0-based index
24
+ * @param fit how many members the window holds
25
+ * @param options the policy + the window the caller is coming from
26
+ */
27
+ export declare function sequenceWindow(total: number, active: number, fit: number, options?: SequenceWindowOptions): SequenceWindow;
@@ -3,6 +3,19 @@ export interface DialogProps {
3
3
  defaultOpen?: boolean;
4
4
  modal?: boolean;
5
5
  unmountOnHide?: boolean;
6
+ /**
7
+ * THE ORIGIN RECT — the surface this dialog grew out of, in viewport coordinates.
8
+ *
9
+ * A SEAM, and it is declared as one: the entrance reads it NOWHERE today, and the
10
+ * plate blooms from its own centre exactly as it does without it. It is here so the
11
+ * expandable-container fold lands `origin="element"` by wiring an entrance to a rect
12
+ * the root already accepts, instead of re-cutting the entrance and this signature in
13
+ * the same breath. It is the ONE prop-shaped hole this wave was told to leave.
14
+ *
15
+ * It carries no machinery on purpose. If the fold refuses, this prop leaves with the
16
+ * refusal — a hole that nothing ever fills is a hole, not an API.
17
+ */
18
+ origin?: DOMRectReadOnly | null;
6
19
  }
7
20
  declare var __VLS_8: {};
8
21
  type __VLS_Slots = {} & {
@@ -1,52 +1,48 @@
1
1
  import { type HTMLAttributes } from "vue";
2
- import { type SpringPreset } from "../../composables/motion/spring/useSpringMount";
3
- import type { Backdrop, Motion, Placement, Surface } from "../_shared/axes";
2
+ import type { Motion, Surface } from "../_shared/axes.js";
3
+ /**
4
+ * The DISMISSAL GRAMMAR — one axis, three rungs, and every "confirm dialog" and "gate"
5
+ * the library used to duplicate falls out of it:
6
+ *
7
+ * free (default) ✕ · Esc · outside — a dialog
8
+ * deliberate Esc · outside — a confirm
9
+ * locked rebuffs Esc AND outside — a gate
10
+ *
11
+ * The old boolean close knob folds into it, and no `Confirm*`/`Gate*` symbol is minted:
12
+ * destructive tone stays `<Button tone="destructive">` — named presets live in consumers.
13
+ */
14
+ export type DialogDismiss = "free" | "deliberate" | "locked";
4
15
  export interface DialogContentProps {
5
16
  forceMount?: boolean;
6
17
  disableOutsidePointerEvents?: boolean;
7
18
  class?: HTMLAttributes["class"];
8
19
  surface?: Surface;
9
- placement?: Placement;
10
20
  motion?: Motion;
11
- springPreset?: SpringPreset;
12
- showClose?: boolean;
13
21
  scroll?: boolean;
14
- stage?: "none" | "dim" | "scale" | "immersive";
15
- /**
16
- * The scrim backdrop axis. `scrim` (default) is byte-identical to today; `graded`
17
- * swaps the flat scrim for the box-following halo. Applies to a centred dialog
18
- * (the immersive stage opts in first); side sheets keep their own per-edge graded
19
- * edge and ignore it.
20
- */
21
- backdrop?: Backdrop;
22
+ dismiss?: DialogDismiss;
22
23
  }
23
- declare var __VLS_19: {}, __VLS_21: {};
24
+ declare var __VLS_28: {};
24
25
  type __VLS_Slots = {} & {
25
- default?: (props: typeof __VLS_19) => any;
26
- } & {
27
- default?: (props: typeof __VLS_21) => any;
26
+ default?: (props: typeof __VLS_28) => any;
28
27
  };
29
28
  declare const __VLS_base: import("vue").DefineComponent<DialogContentProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
30
29
  escapeKeyDown: (event: KeyboardEvent) => any;
31
- pointerDownOutside: (event: import("../_shared/interaction").PointerDownOutsideEvent) => any;
32
- focusOutside: (event: import("../_shared/interaction").FocusOutsideEvent) => any;
33
- interactOutside: (event: import("../_shared/interaction").PointerDownOutsideEvent | import("../_shared/interaction").FocusOutsideEvent) => any;
30
+ pointerDownOutside: (event: import("../_shared/interaction.js").PointerDownOutsideEvent) => any;
31
+ focusOutside: (event: import("../_shared/interaction.js").FocusOutsideEvent) => any;
32
+ interactOutside: (event: import("../_shared/interaction.js").PointerDownOutsideEvent | import("../_shared/interaction.js").FocusOutsideEvent) => any;
34
33
  openAutoFocus: (event: Event) => any;
35
34
  closeAutoFocus: (event: Event) => any;
36
35
  }, string, import("vue").PublicProps, Readonly<DialogContentProps> & Readonly<{
37
36
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
38
- onPointerDownOutside?: ((event: import("../_shared/interaction").PointerDownOutsideEvent) => any) | undefined;
39
- onFocusOutside?: ((event: import("../_shared/interaction").FocusOutsideEvent) => any) | undefined;
40
- onInteractOutside?: ((event: import("../_shared/interaction").PointerDownOutsideEvent | import("../_shared/interaction").FocusOutsideEvent) => any) | undefined;
37
+ onPointerDownOutside?: ((event: import("../_shared/interaction.js").PointerDownOutsideEvent) => any) | undefined;
38
+ onFocusOutside?: ((event: import("../_shared/interaction.js").FocusOutsideEvent) => any) | undefined;
39
+ onInteractOutside?: ((event: import("../_shared/interaction.js").PointerDownOutsideEvent | import("../_shared/interaction.js").FocusOutsideEvent) => any) | undefined;
41
40
  onOpenAutoFocus?: ((event: Event) => any) | undefined;
42
41
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
43
42
  }>, {
44
43
  scroll: boolean;
45
44
  surface: Surface;
46
- backdrop: Backdrop;
47
- placement: Placement;
48
- showClose: boolean;
49
- stage: "none" | "dim" | "scale" | "immersive";
45
+ dismiss: DialogDismiss;
50
46
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
51
47
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
52
48
  declare const _default: typeof __VLS_export;
@@ -1,6 +1,6 @@
1
- import type { HTMLAttributes } from 'vue';
1
+ import type { HTMLAttributes } from "vue";
2
2
  type __VLS_Props = {
3
- class?: HTMLAttributes['class'];
3
+ class?: HTMLAttributes["class"];
4
4
  };
5
5
  declare var __VLS_1: {};
6
6
  type __VLS_Slots = {} & {
@@ -1,6 +1,6 @@
1
- import type { HTMLAttributes } from 'vue';
1
+ import type { HTMLAttributes } from "vue";
2
2
  type __VLS_Props = {
3
- class?: HTMLAttributes['class'];
3
+ class?: HTMLAttributes["class"];
4
4
  };
5
5
  declare var __VLS_1: {};
6
6
  type __VLS_Slots = {} & {
@@ -1,39 +1,60 @@
1
1
  import { type HTMLAttributes } from "vue";
2
- import type { Backdrop } from "../_shared/axes";
3
- /** Canonical Dialog scrim with one enter/exit recipe and a real intensity axis. */
2
+ /**
3
+ * The modal scrim — DIM ONLY.
4
+ *
5
+ * The `backdrop-filter` leg is gone. It measurably BRIGHTENED the page it was meant to
6
+ * recede: +5.1% at the core and +31.3% below the plate in light, +76.0% in dark, because
7
+ * a wash blur pulls bright neighbours into every sampled pixel. A scrim that raises the
8
+ * luminance of what it occludes is not a scrim, and no amount of re-inking fixes a
9
+ * mechanism whose sign is wrong. Dimming is the whole job.
10
+ *
11
+ * The α token is NOT this component's to mint — it belongs to the scrim register, and
12
+ * this seat supplies measurement only.
13
+ *
14
+ * THE FOCUS VEIL IS GEOMETRY, so it is a decision the CALLER makes, not a constant.
15
+ * `.glass-focus-veil` (styles/glass/focus-veil.css, MOTION-CANON §5) is a centre-weighted
16
+ * frost mask: a fixed `--glass-focus-veil-core-x/-y` 13rem core plus a 7rem bloom, sited
17
+ * at `--veil-x`/`--veil-y`'s 50% rest. A CENTRED plate sits inside that core and IS the
18
+ * definitional focus event. A SIDE SHEET does not: the engaged surface is anchored at an
19
+ * edge, so an unconditional veil paints a ~640×640 frost pool in the middle of the
20
+ * viewport with nothing engaged inside it — the pool measured against a 384-wide sheet at
21
+ * the far right of a 1440 viewport. Slide-gating cannot save it either, because the sheet
22
+ * drives `slideT` and the centre-path plate leaves it null.
23
+ *
24
+ * So the veil takes an explicit boolean and `DialogContent` is its ONE passer. This is not
25
+ * the retired graded-overlay opt-in coming back — that one gated a private brightening
26
+ * recipe and is gone with its tokens. This selects between two geometries that both
27
+ * already exist and cannot both be right for one component.
28
+ */
4
29
  interface ModalOverlayProps {
5
30
  class?: HTMLAttributes["class"];
6
31
  /**
7
- * Scrim intensity. `glass` reads `--overlay-scrim`; `clear` reads
8
- * `--overlay-scrim-subtle`; `dim` reads `--overlay-scrim-strong`.
32
+ * The scrim's live opacity, driven off the SAME scalar its surface reads so the two
33
+ * can never desync through an interrupt. When set, the scrim drops its
34
+ * `sheet-animate` fade keyframe and takes this value instead.
35
+ *
36
+ * The scrim holds NO law of its own: a slide-dismissed surface hands it
37
+ * `scrimOpacity(position)` and a detented one hands it `scrimDetentOpacity(rung)`
38
+ * (both `sheet/motion.ts`). One knob, and the law lives with the geometry it
39
+ * describes rather than in the component that merely paints it.
9
40
  */
10
- scrim?: "glass" | "clear" | "dim";
11
- /**
12
- * The backdrop axis. `scrim` (default) is today's flat full-viewport scrim,
13
- * byte-identical. `graded` swaps it for ONE masked box-following halo child
14
- * (`data-slot="glass-graded-halo"`) — the flat blur + dim drop and the halo is
15
- * the sole plate (the `--stage-t` scrim/immersive arms are gated off in
16
- * drawer/styles.css). The centred immersive Dialog opts in.
17
- */
18
- backdrop?: Backdrop;
19
- /**
20
- * A side sheet's live slide position (0 open → 1 dismissed). When set, the scrim
21
- * drops its `sheet-animate` fade keyframe and drives `opacity` off this SAME scalar
22
- * so it can never desync from the surface through an interrupt. `null` (center
23
- * dialog + the `off` side path) keeps the keyframe fade.
24
- */
25
- slideT?: number | null;
41
+ opacity?: number | null;
26
42
  /** Hold the scrim mounted through the spring exit (mirrors the content forceMount). */
27
43
  forceMount?: boolean;
44
+ /**
45
+ * Paint the centre-weighted focus veil. TRUE only where the engaged surface sits at
46
+ * the veil's own centre — i.e. the centred modal. An edge-anchored surface passes
47
+ * nothing and gets the dim alone.
48
+ */
49
+ veil?: boolean;
28
50
  }
29
51
  declare var __VLS_8: {};
30
52
  type __VLS_Slots = {} & {
31
53
  default?: (props: typeof __VLS_8) => any;
32
54
  };
33
55
  declare const __VLS_base: import("vue").DefineComponent<ModalOverlayProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ModalOverlayProps> & Readonly<{}>, {
34
- scrim: "glass" | "clear" | "dim";
35
- backdrop: Backdrop;
36
- slideT: number | null;
56
+ opacity: number | null;
57
+ veil: boolean;
37
58
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
38
59
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
39
60
  declare const _default: typeof __VLS_export;
@@ -1,8 +1,7 @@
1
- export { default as Dialog, type DialogProps } from "./Dialog.vue";
2
- export { default as DialogClose, type DialogCloseProps } from "./DialogClose.vue";
3
- export { default as DialogTrigger, type DialogTriggerProps } from "./DialogTrigger.vue";
4
- export { default as DialogHeader } from "./DialogHeader.vue";
5
- export { default as DialogTitle, type DialogTitleProps } from "./DialogTitle.vue";
6
- export { default as DialogDescription, type DialogDescriptionProps, } from "./DialogDescription.vue";
7
- export { default as DialogContent, type DialogContentProps } from "./DialogContent.vue";
8
- export { default as DialogFooter } from "./DialogFooter.vue";
1
+ export { default as Dialog, type DialogProps } from "./Dialog.vue.js";
2
+ export { default as DialogContent, type DialogContentProps, type DialogDismiss, } from "./DialogContent.vue.js";
3
+ export { default as DialogHeader } from "./DialogHeader.vue.js";
4
+ export { default as DialogTitle, type DialogTitleProps } from "./DialogTitle.vue.js";
5
+ export { default as DialogDescription, type DialogDescriptionProps, } from "./DialogDescription.vue.js";
6
+ export { default as DialogFooter } from "./DialogFooter.vue.js";
7
+ export { DialogTrigger, DialogClose } from "reka-ui";
@@ -0,0 +1 @@
1
+ :where([data-slot="dialog-content"]){border-radius: var(--radius-3xl);display: grid;gap: var(--space-body);inline-size: min(100% - 2 * var(--space-section),32rem);padding-inline: var(--space-family);padding-block: var(--space-family);translate: -50% -50%;}:where([data-slot="dialog-header"]){display: flex;flex-direction: column;gap: var(--space-atom);text-align: start;}:where([data-slot="dialog-content"]:has([data-slot="dialog-close"])) :where([data-slot="dialog-header"]){padding-inline-end: calc(var(--touch-target) + var(--space-atom));}:where([data-slot="dialog-title"]){font-size: calc(var(--type-body) * 1.272);line-height: var(--type-leading-body);letter-spacing: var(--type-tracking-tight);}:where([data-slot="dialog-description"]){font-size: var(--type-body);line-height: var(--type-leading-body);color: var(--foreground);}:where([data-slot="dialog-footer"]){display: flex;flex-direction: row;justify-content: flex-end;gap: var(--space-body);}:where([data-slot="dialog-close"]){position: absolute;inset-block-start: var(--space-family);inset-inline-end: var(--space-family);display: inline-flex;align-items: center;justify-content: center;inline-size: var(--touch-target);block-size: var(--touch-target);border-radius: var(--radius-pill);color: var(--foreground);cursor: pointer;isolation: isolate;}:where([data-slot="dialog-close"])::before{content: "";position: absolute;inset: 0;z-index: -1;border-radius: inherit;background: transparent;transition: background-color var(--spring-press-duration) var(--spring-press),scale var(--spring-press-duration) var(--spring-press);}@media (hover: hover){:where([data-slot="dialog-close"]):hover::before{background: color-mix(in oklab,var(--foreground) 5%,transparent);scale: var(--scale-hover);}}:where([data-slot="dialog-close"]):active::before{background: color-mix(in oklab,var(--foreground) 12%,transparent);scale: var(--scale-press);}:where([data-slot="dialog-close"]):focus-visible{outline: 2px solid color-mix(in oklab,var(--foreground) 48%,transparent);outline-offset: 2px;}@property --rebuff-x{syntax: "<length>";inherits: false;initial-value: 0px;}@keyframes glass-dialog-rebuff-a{0%{--rebuff-x: 0px;}22%{--rebuff-x: -4px;}48%{--rebuff-x: 3px;}72%{--rebuff-x: -1.6px;}88%{--rebuff-x: 0.6px;}100%{--rebuff-x: 0px;}}@keyframes glass-dialog-rebuff-b{0%{--rebuff-x: 0px;}22%{--rebuff-x: -4px;}48%{--rebuff-x: 3px;}72%{--rebuff-x: -1.6px;}88%{--rebuff-x: 0.6px;}100%{--rebuff-x: 0px;}}:where([data-slot="dialog-content"][data-rebuff]){translate: calc(-50% + var(--rebuff-x)) -50%;}:where([data-slot="dialog-content"][data-rebuff="a"]){animation: glass-dialog-rebuff-a var(--spring-press-duration) var(--spring-press);}:where([data-slot="dialog-content"][data-rebuff="b"]){animation: glass-dialog-rebuff-b var(--spring-press-duration) var(--spring-press);}@keyframes glass-dialog-rebuff-flash{0%,100%{outline-color: transparent;}50%{outline-color: color-mix(in oklab,var(--foreground) 48%,transparent);}}@media (prefers-reduced-motion: reduce){:where([data-slot="dialog-content"][data-rebuff]){outline: 2px solid transparent;outline-offset: 0;animation: glass-dialog-rebuff-flash var(--spring-press-duration) linear;}}
@@ -30,15 +30,19 @@ type __VLS_Props = {
30
30
  /** Compact icon variant: auto-sized instead of fixed square (icon shape). */
31
31
  compact?: boolean;
32
32
  /**
33
- * Selected/toggled state. Stamps `aria-pressed` + `data-active`; the icon
34
- * shape composes the `.glass-capsule` selected seat.
33
+ * Toggle state — a THREE-state discriminant. Unset ⇒ nav mode (no
34
+ * `aria-pressed`); `false` ⇒ off-state toggle (`aria-pressed="false"`);
35
+ * `true` ⇒ on (`aria-pressed="true"` + `data-active` + the `.glass-capsule`
36
+ * selected seat, both truthy-gated).
35
37
  */
36
38
  active?: boolean;
37
39
  /** Button type (default "button" to prevent form submission). */
38
40
  type?: ButtonHTMLAttributes["type"];
39
41
  /**
40
42
  * Disabled state (the four-state contract). A boundary nav control stays
41
- * PRESENT but disabled so the row geometry holds, never DOM-absent.
43
+ * PRESENT-but-disabled — FOCUSABLE via `aria-disabled` (never the native
44
+ * `disabled` stamp that drops it from the tab order), with activation
45
+ * suppressed — so the row geometry holds and AT can still discover it.
42
46
  */
43
47
  disabled?: boolean;
44
48
  /** Host tag/component (reka-ui Primitive `as`; default "button"). */
@@ -52,8 +56,8 @@ type __VLS_Slots = {} & {
52
56
  default?: (props: typeof __VLS_18) => any;
53
57
  };
54
58
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
55
- disabled: boolean;
56
59
  type: "button" | "reset" | "submit";
60
+ disabled: boolean;
57
61
  as: string | Component;
58
62
  asChild: boolean;
59
63
  shape: "icon" | "tab";
@@ -1,4 +1,4 @@
1
- import { type DockFaceDescriptor } from "./composables/dockCrossfadeContext";
1
+ import { type DockFaceDescriptor } from "./composables/dockCrossfadeContext.js";
2
2
  /**
3
3
  * <DockCrossfade:active> is the thin controlled face-swap core.
4
4
  *
@@ -10,9 +10,9 @@ import { type DockFaceDescriptor } from "./composables/dockCrossfadeContext";
10
10
  * focus-holding face transfers focus to its successor, else the body
11
11
  * (un-inert-before-focus is load-bearing).
12
12
  *
13
- * Faces register through the crossfade context (`<DockLayer>` children). Where a rail
13
+ * Faces register through the crossfade context (`<DockLayer>` children). Where a switcher
14
14
  * exists, `useSelectionGroup` (the switcher run) drives `:active` — the composing
15
- * `<DockLayerGroup>` case. The controlled-no-rail 5-pane case (a consumer) consumes this
15
+ * `<DockLayerGroup>` case. The controlled-no-switcher 5-pane case (a consumer) consumes this
16
16
  * DIRECTLY: a no-selection face-swap does NOT route through a selection engine (the
17
17
  * roving machine + indicator + selection model are all inert in that mode; don't
18
18
  * abstract them over a case that never selects).
@@ -12,7 +12,7 @@ import type { Component } from "vue";
12
12
  type __VLS_Props = {
13
13
  /** Stable identifier — referenced by the crossfade's `active` id. */
14
14
  id: string;
15
- /** Human-readable label; used for tooltip + the switcher rail glyph. */
15
+ /** Human-readable label; used for tooltip + the switcher glyph. */
16
16
  label?: string;
17
17
  /** Optional icon: a Vue component, or a raw string (rendered as text). */
18
18
  icon?: Component | string;
@@ -1,17 +1,17 @@
1
- import type { Motion } from "../_shared/axes";
1
+ import type { Motion } from "../_shared/axes.js";
2
2
  /**
3
3
  * <DockLayerGroup> — a stack of <DockLayer> faces with an optional Figma-style
4
- * switcher rail built from each face's metadata.
4
+ * switcher built from each face's metadata.
5
5
  *
6
6
  * the FLIP/registration engine is RETIRED. The face-swap is now
7
7
  * ONE crossfade slot: this component COMPOSES `<DockCrossfade:active>` (the thin
8
8
  * controlled core — two-child opacity overlap, peak reserve, focus-transfer) and reads
9
- * the registered face descriptors off it for the rail.
9
+ * the registered face descriptors off it for the switcher.
10
10
  *
11
- * the switcher rail is driven by the library's ONE headless selection
11
+ * the switcher is driven by the library's ONE headless selection
12
12
  * engine `useSelectionGroup` (the dock IS SegmentedTabs/ToggleGroup wearing chrome). The
13
13
  * reka `ui/tabs` substrate + its `--reka-tabs-indicator-*` position path are DEFINITION-
14
- * ABSENT (retired); the rail is a plain `role="tablist"` of `role="tab"` buttons whose
14
+ * ABSENT (retired); the switcher is a plain `role="tablist"` of `role="tab"` buttons whose
15
15
  * roving focus (Arrow/Home/End), role-per-mode ARIA, and the ONE traveling-indicator
16
16
  * writer (`useSelectionIndicator`, Safari-identical by construction) come from the engine.
17
17
  * Selecting a tab writes the SAME `activeLayer` the crossfade slot reads — one registry,
@@ -24,15 +24,15 @@ import type { Motion } from "../_shared/axes";
24
24
  * </DockLayerGroup>
25
25
  */
26
26
  type __VLS_Props = {
27
- /** Layout axis; matches `GlassDock.orientation`. Drives the rail + face axis. */
27
+ /** Layout axis; matches `GlassDock.orientation`. Drives the switcher + face axis. */
28
28
  orientation?: "horizontal" | "vertical";
29
- /** Render the embedded switcher rail. Hidden when there is 0 or 1 face. */
30
- showRail?: boolean;
31
- /** Rail placement relative to the face stack. */
32
- railPosition?: "start" | "end";
29
+ /** Render the embedded switcher. Hidden when there is 0 or 1 face. */
30
+ showSwitcher?: boolean;
31
+ /** Switcher placement relative to the face stack. */
32
+ switcherPosition?: "start" | "end";
33
33
  /**
34
34
  * the ONE motion-weight axis. `full` (default) arms
35
- * pull-to-switch: the switcher-rail indicator is draggable — pull along the rail
35
+ * pull-to-switch: the switcher indicator is draggable — pull along the switcher
36
36
  * axis to the next face chip, the fling-to-nearest on release writes `active`
37
37
  * (`useDragMorph`, consumer #2). `reduced`/`off` opt DOWN to click/keyboard-only
38
38
  * (the roving tabindex + Arrow keys stay). PRM forces `full → reduced`.
@@ -52,8 +52,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
52
52
  }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
53
53
  "onUpdate:active"?: ((value: string) => any) | undefined;
54
54
  }>, {
55
- showRail: boolean;
56
- railPosition: "start" | "end";
55
+ showSwitcher: boolean;
56
+ switcherPosition: "start" | "end";
57
57
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
58
58
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
59
59
  declare const _default: typeof __VLS_export;
@@ -6,12 +6,11 @@
6
6
  * class was axis-blind — a fixed VERTICAL 1px hairline that paints a useless
7
7
  * 1px-wide sliver in a column (vertical) dock and a single cell-sliver in a grid
8
8
  * dock. This primitive bundles the orientation contract the bare class could not:
9
- * it reads the dock `orientation`/`layout` via `useOptionalDockContext()` and the
10
- * dock-root ancestor class (`.glass-dock.vertical`, `.layout-grid`) drives the
9
+ * it reads the dock `orientation` via `useOptionalDockContext()` and the
10
+ * dock-root ancestor class (`.glass-dock.vertical`) drives the
11
11
  * PERPENDICULAR paint (dock.css) —
12
- * - row dock (horizontal, default) → a vertical 1px hairline
13
- * - column dock (vertical, rail) → a horizontal 1px rule (cross-extent)
14
- * - grid dock (`layout="grid"`) → a full-row section break (grid-column: 1, -1)
12
+ * - row dock (horizontal, default) → a vertical 1px rule
13
+ * - column dock (vertical) → a horizontal 1px rule
15
14
  *
16
15
  * It is a thin oriented `<div>` (KISS); `data-orientation` is the explicit axis
17
16
  * marker (so the perpendicular paint resolves even when used inside a
@@ -23,24 +22,29 @@
23
22
  * landmark without it being interactive (it has no four-state contract — a flex
24
23
  * gap rule, not a control).
25
24
  *
26
- * the `anchor` prop is the seam-locator (direction (b)): an
27
- * anchored separator stamps `data-rail-anchor`, which the enclosing `<GlassDock>`
28
- * reads to seat the `#rail` line AT this divider's measured offset (the divider IS
29
- * the rail's anchor seam — one primitive folds 's section-divider model and
30
- * 's anchor-at-the-divider). The exposed measurable seam offset is the painted
31
- * position of this element within the dock-frame; GlassDock's seam read consumes it.
25
+ * `anchor` promotes this separator to THE HAIRLINE — the line ARCHAEOLOGY E29
26
+ * records the owner asking for ≥2×: a hairline that sits INSIDE the horizontal or
27
+ * vertical dock. It is the same primitive and
28
+ * the same one `--dock-hairline` colour; what changes is the SPAN — the anchored
29
+ * form stretches across the cross extent of its LAYOUT ROOT instead of floating at
30
+ * `--dock-separator-height` with a gap either side. The layout root is a `.glass-dock`
31
+ * or a `<DockLayerGroup>` on its own (both arms are in layer-group.css, and the group
32
+ * is a root here exactly as it is for every other rule in that partial). With neither
33
+ * ancestor there is no cross extent to span and the anchored form paints as the plain
34
+ * divider — the same befitting-silent standalone render, stated rather than promised.
35
+ *
36
+ * [BK #72] Until this cut `anchor` stamped a marker attribute and a modifier class
37
+ * for a slot that existed in no file, and both
38
+ * markers were read by exactly zero selectors and zero code — a prop that did
39
+ * nothing. It does something now. A dock takes at most one hairline (one line across
40
+ * a dock is the point of it); nothing enforces that but nothing needs to.
32
41
  */
33
42
  type __VLS_Props = {
34
43
  /**
35
- * the seam-locator affordance (direction (b): the
36
- * separator IS the rail's anchor). When `anchor` is set the separator stamps a
37
- * `data-rail-anchor` marker so the enclosing `<GlassDock>` can read THIS
38
- * divider's measured offset within the dock-frame and seat the `#rail` line at
39
- * it (the divider and the rail unify into one primitive — the user's "where the
40
- * dividing line is"). NO geometry side-effect on the separator itself; it is the
41
- * SAME thin oriented hairline either way, just flagged as the rail's seam. A
42
- * dock with at most one anchored separator is the contract (the first marked
43
- * wins; the rail reads one seam offset).
44
+ * Promote this separator to the dock hairline: one 1px rule spanning the
45
+ * cross extent of its layout root — a `.glass-dock` or a standalone
46
+ * `<DockLayerGroup>` — in a row OR a column. Off by default: the plain
47
+ * separator is the short group divider.
44
48
  */
45
49
  anchor?: boolean;
46
50
  };
@@ -1,4 +1,4 @@
1
- import { type DockProps } from "./composables/useDockShellProps";
1
+ import { type DockProps } from "./composables/useDockShellProps.js";
2
2
  declare var __VLS_1: {}, __VLS_3: {}, __VLS_5: {}, __VLS_7: {}, __VLS_9: {};
3
3
  type __VLS_Slots = {} & {
4
4
  persistent?: (props: typeof __VLS_1) => any;
@@ -15,14 +15,15 @@ declare const __VLS_base: import("vue").DefineComponent<DockProps, {
15
15
  expanded: import("vue").Ref<boolean, boolean>;
16
16
  isPinned: import("vue").Ref<boolean, boolean>;
17
17
  isHeld: import("vue").ComputedRef<boolean>;
18
+ graspHeld: import("vue").ComputedRef<boolean>;
18
19
  isTransitioning: import("vue").Ref<boolean, boolean>;
19
20
  expand: () => void;
20
21
  collapse: () => void;
21
- keepOpen: () => void;
22
- release: () => void;
22
+ keepOpen: (kind?: import("./composables/dockContext.js").DockHoldKind) => void;
23
+ release: (kind?: import("./composables/dockContext.js").DockHoldKind) => void;
23
24
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<DockProps> & Readonly<{}>, {
25
+ collapse: import(".").DockCollapse;
24
26
  backdropMode: import(".").DockBackdropMode;
25
- autoLuminance: boolean;
26
27
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
27
28
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
28
29
  declare const _default: typeof __VLS_export;
@@ -1,11 +1,25 @@
1
1
  import type { ComputedRef } from "vue";
2
2
  export type DockOrientation = "horizontal" | "vertical";
3
- export type DockLayout = "linear" | "grid";
3
+ /**
4
+ * What KIND of hold a token is. The two are different facts about the dock and
5
+ * only one of them is a hand:
6
+ *
7
+ * - `"morph"` (the default) — POSTURE only. "Something is open and the dock must
8
+ * not idle-collapse under it": an armed search field, an open popover, a
9
+ * focused switcher tab. It suppresses the collapse timer and nothing else. It is
10
+ * NOT a hand, and it never engages the grasp optic (glass/grasp.css) — a
11
+ * search field left open for a minute is not a minute-long touch.
12
+ * - `"grasp"` — a live POINTER HOLD on a descendant control (`useDockHold`'s
13
+ * acquire, driven by native `pointerdown`/`touchstart` on the resolved host).
14
+ * A grasp IMPLIES a morph hold (a finger down must also hold the dock open),
15
+ * so it takes both counts; it is the edge the material answers.
16
+ */
17
+ export type DockHoldKind = "morph" | "grasp";
4
18
  /**
5
19
  * Dock context surfaces the dock id + orientation + held-state coordination
6
20
  * to descendants.
7
21
  *
8
- * One typed key carries id, orientation, layout, and held-state coordination.
22
+ * One typed key carries id, orientation, and held-state coordination.
9
23
  * Paired helpers:
10
24
  * - `useDockContext()` — strict; throws when used outside `<GlassDock>`.
11
25
  * - `useOptionalDockContext()` — befitting silent default for primitives
@@ -18,16 +32,19 @@ export interface DockContext {
18
32
  id: string;
19
33
  orientation: ComputedRef<DockOrientation>;
20
34
  /**
21
- * In-cap arrangement (`linear` row/column vs `grid` tile panel).
22
- * `<DockSeparator>` reads this to paint a full-row section break in a grid dock
23
- * (a 1px perpendicular hairline is useless in a 2D tile grid).
35
+ * Acquire a hold token; suppresses timer-based collapse. `kind` defaults to
36
+ * `"morph"` (posture only). Pass `"grasp"` for a live pointer hold — it takes
37
+ * BOTH counts, so a grasp also holds the dock open.
38
+ */
39
+ keepOpen: (kind?: DockHoldKind) => void;
40
+ /** Release a previously-acquired token of the SAME `kind` that took it. */
41
+ release: (kind?: DockHoldKind) => void;
42
+ /**
43
+ * Reactive GRASP edge — `true` while ≥1 pointer hold is live on a descendant.
44
+ * This is what the dock root reflects as `data-held` and what the grasp
45
+ * register answers; it is deliberately NOT the morph-hold count (an open
46
+ * popover is not a finger).
24
47
  */
25
- layout: ComputedRef<DockLayout>;
26
- /** Acquire a keep-open token; suppresses timer-based collapse. */
27
- keepOpen: () => void;
28
- /** Release a previously-acquired keep-open token. */
29
- release: () => void;
30
- /** Reactive `keepOpenCount > 0` flag; descendants reflect via `data-held`. */
31
48
  held: ComputedRef<boolean>;
32
49
  }
33
50
  export declare const DOCK_CONTEXT_KEY: import("vue").InjectionKey<DockContext>;
@@ -5,9 +5,9 @@ import type { Component, Ref } from "vue";
5
5
  * `<DockCrossfade:active>` provides this; each face host (`<DockLayer>`) registers
6
6
  * its id + label + icon + host element on mount. The crossfade slot owns ONE face
7
7
  * registry.
8
- * A switcher rail (where one exists — `<DockLayerGroup>`) reads `faces` for its chip
9
- * run; the controlled-no-rail 5-pane case (a consumer) consumes `<DockCrossfade>`
10
- * DIRECTLY and reads only `activeId`/`leavingId` (no rail, no selection engine).
8
+ * A switcher (where one exists — `<DockLayerGroup>`) reads `faces` for its chip
9
+ * run; the controlled-no-switcher 5-pane case (a consumer) consumes `<DockCrossfade>`
10
+ * DIRECTLY and reads only `activeId`/`leavingId` (no switcher, no selection engine).
11
11
  *
12
12
  * The context is DISTINCT from `DockContext` (a `<DockCrossfade>` need not live inside
13
13
  * a `<GlassDock>`) and from the plate collapse orchestrator — the
@@ -42,8 +42,8 @@ export interface DockCrossfadeContext {
42
42
  /** The face currently dissolving out, or `null`. READ-ONLY to faces. */
43
43
  leavingId: Readonly<Ref<string | null>>;
44
44
  /**
45
- * The registered face descriptors in registration order — the switcher rail's
46
- * chip source (a `<DockLayerGroup>` reads this; the controlled-no-rail case
45
+ * The registered face descriptors in registration order — the switcher's
46
+ * chip source (a `<DockLayerGroup>` reads this; the controlled-no-switcher case
47
47
  * ignores it).
48
48
  */
49
49
  faces: Readonly<Ref<DockFaceDescriptor[]>>;
@@ -1,5 +1,4 @@
1
1
  import { type Ref } from "vue";
2
- export declare function getSize(el: HTMLElement, axis: "horizontal" | "vertical"): number;
3
2
  export interface UseDockExpandedSizeOptions {
4
3
  rootEl: Ref<HTMLElement | null>;
5
4
  contentEl: Ref<HTMLElement | null>;
@@ -0,0 +1,29 @@
1
+ import type { Ref } from "vue";
2
+ /**
3
+ * The dock switcher tablist context.
4
+ *
5
+ * `<DockLayerGroup>` provides it so a `<DockLayer>` face can complete the APG
6
+ * tablist↔tabpanel linkage: the switcher's `role="tab"` buttons `aria-controls` a face,
7
+ * and each face is the matching `role="tabpanel"` with a stable `id` +
8
+ * `aria-labelledby` back to its tab. The id derivation lives HERE (once), keyed off a
9
+ * group-level uid, so the tab side (`DockLayerGroup`) and the panel side (`DockLayer`)
10
+ * mint the SAME strings with no shared literal.
11
+ *
12
+ * `isTablist` is reactive because the switcher only renders as a tablist when it actually
13
+ * paints (`showSwitcher && >1 face`) — that is not known until faces register. A face
14
+ * reads it to decide whether to BECOME a tabpanel: absent (the controlled-no-switcher
15
+ * `<DockCrossfade>` case, or a 0/1-face group), the face carries no panel role, so a
16
+ * dangling `aria-labelledby` to a tab that does not exist is never minted.
17
+ */
18
+ export interface DockSwitcherContext {
19
+ /** True while the switcher renders as an APG tablist (`showSwitcher && >1 face`). */
20
+ isTablist: Readonly<Ref<boolean>>;
21
+ /** The switcher tab button's id for a face id — the panel's `aria-labelledby` target. */
22
+ tabId: (faceId: string) => string;
23
+ /** The face panel's id for a face id — the tab's `aria-controls` target. */
24
+ panelId: (faceId: string) => string;
25
+ }
26
+ export declare const DOCK_SWITCHER_KEY: import("vue").InjectionKey<DockSwitcherContext>;
27
+ export declare function provideDockSwitcherContext(context: DockSwitcherContext): void;
28
+ /** Befitting-silent — `null` when a face is not inside a tablist switcher. */
29
+ export declare const useDockSwitcherContext: () => DockSwitcherContext | null;
@@ -1,10 +1,10 @@
1
- export { useDockState } from "./useDockState";
2
- export type { UseDockStateOptions, UseDockStateReturn, DockState } from "./useDockState";
3
- export { useDockSearch } from "./useDockSearch";
4
- export type { UseDockSearchOptions, UseDockSearchReturn } from "./useDockSearch";
5
- export { useDockHold } from "./useDockHold";
6
- export type { UseDockHoldOptions, UseDockHoldReturn } from "./useDockHold";
7
- export { isTeleportedTarget } from "./isTeleportedTarget";
8
- export { provideDockContext, useDockContext, useOptionalDockContext, DOCK_CONTEXT_KEY, type DockContext, type DockOrientation, } from "./dockContext";
9
- export { provideDockCrossfadeContext, useDockCrossfadeContext, useOptionalDockCrossfadeContext, DOCK_CROSSFADE_KEY, type DockFaceDescriptor, type DockFaceRegistration, type DockCrossfadeContext, } from "./dockCrossfadeContext";
10
- export { useDockMorphOrchestrator, type UseDockMorphOrchestratorOptions, type UseDockMorphOrchestratorReturn, } from "./useDockMorph";
1
+ export { useDockState } from "./useDockState.js";
2
+ export type { UseDockStateOptions, UseDockStateReturn, DockState } from "./useDockState.js";
3
+ export { useDockSearch } from "./useDockSearch.js";
4
+ export type { UseDockSearchOptions, UseDockSearchReturn } from "./useDockSearch.js";
5
+ export { useDockHold } from "./useDockHold.js";
6
+ export type { UseDockHoldOptions, UseDockHoldReturn } from "./useDockHold.js";
7
+ export { isTeleportedTarget } from "../../_shared/overlay/isTeleportedTarget.js";
8
+ export { provideDockContext, useDockContext, useOptionalDockContext, DOCK_CONTEXT_KEY, type DockContext, type DockOrientation, } from "./dockContext.js";
9
+ export { provideDockCrossfadeContext, useDockCrossfadeContext, useOptionalDockCrossfadeContext, DOCK_CROSSFADE_KEY, type DockFaceDescriptor, type DockFaceRegistration, type DockCrossfadeContext, } from "./dockCrossfadeContext.js";
10
+ export { useDockMorphOrchestrator, type UseDockMorphOrchestratorOptions, type UseDockMorphOrchestratorReturn, } from "./useDockMorph.js";