@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
@@ -1,9 +1,7 @@
1
- /** The per-sample result — the luminance AND the ambient hue (the FREE rider). */
1
+ /** The per-sample result — the luminance, the one signal the cascade reads. */
2
2
  export interface SampleResult {
3
3
  /** WCAG relative luminance of the sampled backdrop (0..1). */
4
4
  luma: number;
5
- /** A complete `oklch()` ambient-hue string, or `transparent` for a gray null. */
6
- ambientHue: string;
7
5
  }
8
6
  /**
9
7
  * The KNOWN background-layer source for the ANIMATED case — an HTMLCanvasElement, a
@@ -28,30 +26,30 @@ export declare const SHELL_FIELD_CANVAS_SELECTOR = "[data-glass-field-canvas] ca
28
26
  * (backward-safe: no field canvas → null → the static elementsFromPoint path).
29
27
  */
30
28
  export declare function resolveSourceCanvas(src: BackgroundCanvasSource | undefined): HTMLCanvasElement | null;
31
- /**
32
- * Robust CSS-color → sRGB `[r,g,b,a]`. `parseRgb` is the fast path for the legacy
33
- * `rgb()/rgba()` serialization; ANY other valid CSS color form — the MODERN
34
- * `oklch()`, `color(srgb …)`, `hsl()` tokens the warm-cream demo basis resolves to —
35
- * is normalized by painting it onto the 1×1 corner of the reused 2D canvas (passed in)
36
- * and reading the composited pixel back (`getImageData` ALWAYS returns integer sRGB
37
- * whatever the source space).: without this `sampleStatic`
38
- * returned null on a `color(srgb …)`/`oklch(…)` backdrop and wrote NOTHING — the static
39
- * floor was a DEAD channel. The static floor is now writer-true over ANY backdrop.
40
- */
41
- export declare function normalizeToRgb(css: string, ctx: CanvasRenderingContext2D | null): [number, number, number, number] | null;
42
29
  /**
43
30
  * Sample the ANIMATED backdrop: downsample the resolved source canvas under the
44
- * surface's bounding box → mean relative luminance + the ambient-hue histogram (a FREE
45
- * rider over the SAME pixel pass). Returns null if no source, an all-transparent
31
+ * surface's bounding box → mean relative luminance. Returns null if no source, an all-transparent
46
32
  * (unrendered) field, or a tainted canvas — the live caller writes `unavailable` on a
47
33
  * null; it NEVER falls to the static stack-walk (that coalescing is forbidden).
34
+ *
35
+ * The field canvas is TRANSLUCENT, so each downsampled pixel is composited over the
36
+ * REAL opaque page `underlay` (resolved by `resolveUnderlayRgb` from the same stack the
37
+ * static sampler reads) — the same translucent field over a dark page vs a light page
38
+ * yields DISTINCT luma. Passing a fixed white underlay collapses that distinction and
39
+ * is the born-RED this repairs. The underlay feeds the EXISTING luma→tint axis; it is
40
+ * NOT a second opacity/attenuation axis.
41
+ */
42
+ export declare function sampleAnimated(el: HTMLElement, source: HTMLCanvasElement | null, ctx: CanvasRenderingContext2D | null, underlay: readonly [number, number, number]): SampleResult | null;
43
+ /**
44
+ * The REAL opaque page underlay beneath the surface — the color the TRANSLUCENT
45
+ * animated field composites OVER. Reuses `resolveBackdropRgba` (the same stack the
46
+ * static sampler reads), dropping alpha to an opaque triple; falls back to the
47
+ * CSS-initial white viewport when nothing opaque paints under the surface. This is the
48
+ * luma→tint axis input for `sampleAnimated`, NOT a second opacity/attenuation axis.
48
49
  */
49
- export declare function sampleAnimated(el: HTMLElement, source: HTMLCanvasElement | null, ctx: CanvasRenderingContext2D | null): SampleResult | null;
50
+ export declare function resolveUnderlayRgb(el: HTMLElement, ctx: CanvasRenderingContext2D | null): [number, number, number];
50
51
  /**
51
- * Sample the STATIC backdrop: stack-walk `elementsFromPoint` at the surface centre,
52
- * read the first element under it with a resolved non-transparent background, un-wrap
53
- * the `var(--token)` through the resolveTokenColor leaf → relative luminance + the
54
- * ambient hue (the single resolved background color binned the SAME way). The reusable
55
- * 2D context (for the modern-color normalization paint-read) is passed in.
52
+ * Sample the STATIC backdrop: reduce the resolved backdrop (`resolveBackdropRgba`) to
53
+ * relative luminance. The reusable 2D context is passed in.
56
54
  */
57
55
  export declare function sampleStatic(el: HTMLElement, ctx: CanvasRenderingContext2D | null): SampleResult | null;
@@ -1,5 +1,15 @@
1
1
  /** WCAG relative luminance of an sRGB triple [0..255]. */
2
2
  export declare function relLuminance(r: number, g: number, b: number): number;
3
+ /**
4
+ * Composite a straight-alpha sRGB pixel [r,g,b] at coverage `a` (0..1) OVER an
5
+ * opaque sRGB `underlay` triple → the resolved opaque sRGB [r,g,b] (source-over).
6
+ * The animated field is a TRANSLUCENT canvas; the perceived backdrop is the field
7
+ * painted over the REAL opaque page beneath it, so the underlay MUST be the actual
8
+ * page color — a dark page and a light page under the SAME translucent field yield
9
+ * DISTINCT composited luma. A hardcoded white underlay collapses that distinction
10
+ * (the born-RED). This is the luma→tint axis input, NOT a second opacity axis.
11
+ */
12
+ export declare function compositeOver(r: number, g: number, b: number, a: number, underlay: readonly [number, number, number]): [number, number, number];
3
13
  /** Parse a `rgb()/rgba()` string → [r,g,b,a] (the un-wrapped concrete form). */
4
14
  export declare function parseRgb(str: string): [number, number, number, number] | null;
5
15
  export declare function isCanvas(v: unknown): v is HTMLCanvasElement;
@@ -1,3 +1,3 @@
1
- export { useCanvas2D, useCanvasLifecycle } from "./useCanvas2D";
2
- export type { Canvas2DFrame, Canvas2DHandle, Canvas2DOptions, Canvas2DSuspendReason, } from "./useCanvas2D";
3
- export { resolveCanvasColor } from "./resolveCanvasColor";
1
+ export { useCanvas2D } from "./useCanvas2D.js";
2
+ export type { Canvas2DFrame, Canvas2DHandle, Canvas2DOptions, Canvas2DSuspendReason, } from "./useCanvas2D.js";
3
+ export { resolveCanvasColor } from "./resolveCanvasColor.js";
@@ -1,5 +1,5 @@
1
1
  import { type MaybeRefOrGetter } from "vue";
2
- import { type DprPolicy } from "../webgl/createCanvasLifecycle";
2
+ import { type DprPolicy } from "../webgl/createCanvasLifecycle.js";
3
3
  /**
4
4
  * The suspend reasons that gate the loop. Twins the WebGL substrate's union
5
5
  * (`createCanvasLifecycle.CanvasSuspendReason`): the `"off-screen-io"`
@@ -62,14 +62,6 @@ export interface Canvas2DHandle {
62
62
  * `useWebGLCanvas`, a thin Canvas2D backend over the shared
63
63
  * `createCanvasLifecycle` core. Returns an imperative {@link Canvas2DHandle} (the
64
64
  * same handle idiom the WebGL twin uses — an imperative canvas seam is NOT a
65
- * ref-bundle). `useCanvasLifecycle` is the alias-of-record for the lifecycle-only
66
- * framing; both name the same factory.
65
+ * ref-bundle).
67
66
  */
68
67
  export declare function useCanvas2D(options: Canvas2DOptions): Canvas2DHandle;
69
- /**
70
- * Alias-of-record for {@link useCanvas2D} — the lifecycle-only framing (the
71
- * park/freeze/dispose machinery, paralleling the WebGL substrate's
72
- * `createCanvasLifecycle`). Same factory, same handle; reach for this name when
73
- * the lifecycle (not the 2D drawing) is the consumer's emphasis.
74
- */
75
- export declare const useCanvasLifecycle: typeof useCanvas2D;
@@ -1,7 +1,5 @@
1
- export { useSpecularTracking, createSpecularWriter, } from "./useSpecularTracking";
2
- export type { UseSpecularTracking, SpecularWriter, } from "./useSpecularTracking";
3
- export { vSpecular } from "./vSpecular";
4
- export { useSpecularPointer } from "./useSpecularPointer";
5
- export type { UseSpecularPointer } from "./useSpecularPointer";
6
- export { useCanvas2D, useCanvasLifecycle, resolveCanvasColor } from "./canvas2d";
7
- export type { Canvas2DFrame, Canvas2DHandle, Canvas2DOptions, Canvas2DSuspendReason, } from "./canvas2d";
1
+ export { useSpecularTracking, createSpecularWriter, } from "./useSpecularTracking.js";
2
+ export type { UseSpecularTracking, SpecularWriter, } from "./useSpecularTracking.js";
3
+ export { vSpecular } from "./vSpecular.js";
4
+ export { useCanvas2D, resolveCanvasColor } from "./canvas2d/index.js";
5
+ export type { Canvas2DFrame, Canvas2DHandle, Canvas2DOptions, Canvas2DSuspendReason, } from "./canvas2d/index.js";
@@ -1,5 +1,5 @@
1
1
  import { type Ref } from "vue";
2
- import { type BackgroundCanvasSource } from "./backdropLuminanceSample";
2
+ import { type BackgroundCanvasSource } from "./backdropLuminanceSample.js";
3
3
  /** The discrete backdrop bucket derived and written by the observer. */
4
4
  export type GlassBackdropBucket = "light" | "dark";
5
5
  export interface UseGlassBackdropLuminanceOptions {
@@ -39,7 +39,7 @@ export interface UseGlassBackdropLuminanceOptions {
39
39
  * mark this as the SHARED per-ROUTE observer. It stamps
40
40
  * `GLASS_BACKDROP_SHARED_ATTR` on its target (the route/stage scope) so descendant
41
41
  * glass surfaces (docks) DETECT the coverage and STAND DOWN — inheriting the route's
42
- * `--glass-backdrop-luma`, `--glass-backdrop`, `--glass-ambient-*` via the cascade
42
+ * `--glass-backdrop-luma`, `--glass-backdrop` via the cascade
43
43
  * rather than each mounting its own readback loop (12 per-dock observers over ONE
44
44
  * aurora → ONE per-route readback). Default false: a per-SURFACE observer, which
45
45
  * stands down when a shared ancestor covers it and self-samples as the honest floor
@@ -71,7 +71,6 @@ export type GlassBackdropSample = {
71
71
  mode: "live" | "static";
72
72
  source: "canvas" | "elements";
73
73
  luma: number;
74
- ambientHue: string;
75
74
  sampledAt: number;
76
75
  targetRect: GlassBackdropTargetRect;
77
76
  } | {
@@ -99,7 +98,7 @@ export declare const GLASS_BACKDROP_SHARED_ATTR = "data-glass-backdrop-shared";
99
98
  * The sampled-luminance observer. Wire it on a glass surface (the dock root, a
100
99
  * content-glass panel) to write a dynamic backdrop-luminance signal that refines the
101
100
  * declarative bucket. Default on for Dock; a dark-substrate consumer
102
- * opts out by setting `--glass-tint-strength: 0%` on the surface (the declarative floor
101
+ * opts out by setting `--glass-level: 0` on the surface (the declarative floor
103
102
  * stays the guarantee — the observer only refines).
104
103
  *
105
104
  * @param target the glass surface element ref to sample under + write the tokens on
@@ -5,7 +5,7 @@ import { ref, type CSSProperties } from "vue";
5
5
  *
6
6
  * On pointer-move it writes the cursor position (`--mouse-x`/`--mouse-y`, as
7
7
  * percentages of the host box) onto the host's inline style; the unified
8
- * `.glass-material::before` recipe (`glass.css`) MAPS that host write onto its
8
+ * material-group `::before` recipe (`glass.css`) MAPS that host write onto its
9
9
  * typed `--specular-x`/`--specular-y` channel and paints the travelling glow.
10
10
  *
11
11
  * VOCAB: `--mouse-x`/`--mouse-y` is the HOST WRITE this seam
@@ -1,6 +1,5 @@
1
1
  export type CanvasSuspendReason = "tab-hidden" | "off-screen" | "off-screen-io" | "manual";
2
- import { sizeBacking, type BackingSize, type DprPolicy } from "./backingSize";
3
- export { sizeBacking };
2
+ import { type BackingSize, type DprPolicy } from "./backingSize.js";
4
3
  export type { BackingSize, DprPolicy };
5
4
  /** The per-frame hooks a backend's `buildContext` returns to the lifecycle core. */
6
5
  export interface CanvasFrameHooks {
@@ -25,28 +24,20 @@ export interface CanvasLifecycleOptions {
25
24
  /**
26
25
  * Upload the backing geometry to the viewport/uniforms.
27
26
  *
28
- * The leaf measures and sizes the backing store via
29
- * `sizeBacking`, the ONE sizer) and passes the freshly-computed `BackingSize` here so
30
- * the consumer can never re-derive a wrong one. When the leaf owns sizing (`dprPolicy`
31
- * provided) the buffer is already correct on entry — the consumer body is UPLOAD-ONLY,
32
- * shrinking to `gl.viewport(0,0,s.w,s.h)`, `uploadResolution` (a WGPU swap-chain leg
33
- * is a no-op — it auto-resizes to the backing the leaf set).
34
- *
35
- * Procedural scenes, including Canvas2D, pass `dprPolicy` and use this upload-only
36
- * size. The optional argument remains only for direct legacy WebGL/WebGPU callers
37
- * that omit a DPR policy.
27
+ * The leaf measures and sizes the backing store via `sizeBacking` (the ONE sizer)
28
+ * and passes the freshly-computed `BackingSize` here, so the consumer can never
29
+ * re-derive a wrong one. The buffer is ALWAYS correct on entry — the consumer body
30
+ * is UPLOAD-ONLY, shrinking to `gl.viewport(0,0,s.w,s.h)`/`uploadResolution` (a WGPU
31
+ * swap-chain leg is a no-op — it auto-resizes to the backing the leaf set).
38
32
  */
39
- resize: (s?: BackingSize) => void;
33
+ resize: (s: BackingSize) => void;
40
34
  /**
41
- * The consumer's DPR policy, handed to the leaf's `sizeBacking`. When PRESENT the
42
- * leaf owns backing-store measurement and sizing, and the live
43
- * `BackingSize` rides every `resize` call. When ABSENT the leaf falls back to the
44
- * legacy behaviour (the consumer's `resize()` self-measures) — the migration seam.
45
- *
46
- * Procedural scenes use the present branch. The absent branch remains for direct
47
- * legacy WebGL/WebGPU callers.
35
+ * The consumer's DPR policy, handed to the leaf's `sizeBacking`. REQUIRED: the leaf
36
+ * owns backing-store measurement and sizing, and the live `BackingSize` rides every
37
+ * `resize` call. There is no self-measuring arm — a caller that cannot state a DPR
38
+ * policy cannot state a backing size either.
48
39
  */
49
- dprPolicy?: DprPolicy;
40
+ dprPolicy: DprPolicy;
50
41
  /**
51
42
  * Bind/unbind backend-specific context-loss/restore listeners. `rebuild` re-runs
52
43
  * `buildContext` on a fresh context + resumes the loop (the self-heal); the backend
@@ -103,7 +94,7 @@ export interface CanvasLifecycleHandle {
103
94
  * SYNCHRONOUSLY, decoupled from the (async) context acquire. The WebGPU backend
104
95
  * calls this BEFORE `armAsync`'s device request so the canvas is sharp from frame 0
105
96
  * while the device resolves behind it (the ≤6s blurry-flash close). Idempotent: a
106
- * no-op once `arm()` has run it. A no-op when no `dprPolicy` was supplied (legacy).
97
+ * no-op once `arm()` has run it.
107
98
  */
108
99
  presize: () => void;
109
100
  suspend: (reason?: CanvasSuspendReason) => void;
@@ -1,5 +1,5 @@
1
- import { type BackingSize, type DprPolicy } from "./createCanvasLifecycle";
2
- export type { BackingSize, DprPolicy } from "./createCanvasLifecycle";
1
+ import { type BackingSize, type DprPolicy } from "./createCanvasLifecycle.js";
2
+ export type { BackingSize, DprPolicy } from "./createCanvasLifecycle.js";
3
3
  /**
4
4
  * The one `getContext("webgl2")` capability probe. A throwaway WebGL2 context is
5
5
  * created here in the substrate,
@@ -23,13 +23,11 @@ export interface WebGLCanvasFrame {
23
23
  /** Demand-gate: is there live motion to render next frame? `false` → park. */
24
24
  shouldContinue: () => boolean;
25
25
  /**
26
- * Upload the backing geometry to the viewport/uniforms.:
27
- * when a `dprPolicy` is supplied the leaf MEASURES + sizes the backing and passes
28
- * the live `BackingSize` here (the consumer body shrinks to
29
- * `gl.viewport(0,0,s.w,s.h)`); the arg is optional so a legacy self-measuring
30
- * consumer keeps compiling until it adopts the leaf sizer.
26
+ * Upload the backing geometry to the viewport/uniforms. The leaf MEASURES + sizes
27
+ * the backing and passes the live `BackingSize` here, so the consumer body is
28
+ * upload-only (`gl.viewport(0,0,s.w,s.h)`).
31
29
  */
32
- resize: (s?: BackingSize) => void;
30
+ resize: (s: BackingSize) => void;
33
31
  /** Frame time from elapsed seconds — the consumer owns frozen/reduced-motion. */
34
32
  time?: (elapsedSec: number) => number;
35
33
  /** Delete GL resources (program/buffers/VAO). Runs on dispose + before a restore re-setup. */
@@ -50,12 +48,11 @@ export interface WebGLCanvasOptions {
50
48
  */
51
49
  respectReducedMotion?: boolean;
52
50
  /**
53
- * The consumer's DPR policy. When present the
54
- * leaf owns the backing-store measurement + sizing (the ONE sizer, sized
55
- * synchronously at mount before any acquire) and hands the live `BackingSize` to
56
- * `resize(s)`. When ABSENT the legacy path runs (the consumer self-measures).
51
+ * The consumer's DPR policy. REQUIRED: the leaf owns the backing-store measurement
52
+ * + sizing (the ONE sizer, sized synchronously at mount before any acquire) and
53
+ * hands the live `BackingSize` to `resize(s)`.
57
54
  */
58
- dprPolicy?: DprPolicy;
55
+ dprPolicy: DprPolicy;
59
56
  /** Compose the leaf IO park. Default `false`; see createCanvasLifecycle. */
60
57
  composeIntersectionPark?: boolean;
61
58
  /** `rootMargin` for the leaf IO park. */
@@ -1,4 +1,4 @@
1
- import type { CanvasSuspendReason } from "./createCanvasLifecycle";
1
+ import type { CanvasSuspendReason } from "./createCanvasLifecycle.js";
2
2
  /**
3
3
  * The scheduler seam the observers drive. Each observer writes a DISTINCT suspend
4
4
  * reason (`tab-hidden`, `off-screen`, `off-screen-io`) — the one-writer-per-reason
@@ -1,10 +1,9 @@
1
- import { type WebGLCanvasFrame, type WebGLCanvasOptions } from "../webgl/useWebGLCanvas";
2
- import type { DprPolicy } from "../webgl/createCanvasLifecycle";
3
- export type { BackingSize, DprPolicy } from "../webgl/createCanvasLifecycle";
4
- import { supportsWebGPU, type WebGPUCanvasFrame, type WebGPUCanvasOptions } from "./useWebGPUCanvas";
5
- import { type RendererStatus } from "./rendererStatus";
6
- export type { RendererStatus, RendererEngine } from "./rendererStatus";
7
- export { supportsWebGPU };
1
+ import { type WebGLCanvasFrame, type WebGLCanvasOptions } from "../webgl/useWebGLCanvas.js";
2
+ import type { DprPolicy } from "../webgl/createCanvasLifecycle.js";
3
+ export type { BackingSize, DprPolicy } from "../webgl/createCanvasLifecycle.js";
4
+ import { type WebGPUCanvasFrame, type WebGPUCanvasOptions } from "./useWebGPUCanvas.js";
5
+ import { type RendererStatus } from "./rendererStatus.js";
6
+ export type { RendererStatus, RendererEngine } from "./rendererStatus.js";
8
7
  /** Which backend the picker resolved. */
9
8
  export type GpuBackend = "webgpu" | "webgl2";
10
9
  export interface GpuSubstrateOptions {
@@ -21,13 +20,11 @@ export interface GpuSubstrateOptions {
21
20
  setupGL: WebGLCanvasOptions["setup"];
22
21
  /**
23
22
  * The consumer's DPR policy: a flat multiplier
24
- * or a box-aware resolver). When PRESENT the leaf owns the backing-store measurement
23
+ * or a box-aware resolver). REQUIRED: the leaf owns the backing-store measurement
25
24
  * + sizes it SYNCHRONOUSLY at mount (the ONE sizer; before the async acquire on the
26
- * WebGPU path), handing the live `BackingSize` to each `setup`'s `resize(s)`. When
27
- * ABSENT the legacy path runs (the consumer self-measures) — the per-viz adoption
28
- * seam, identical on both backends.
25
+ * WebGPU path), handing the live `BackingSize` to each `setup`'s `resize(s)`.
29
26
  */
30
- dprPolicy?: DprPolicy;
27
+ dprPolicy: DprPolicy;
31
28
  /**
32
29
  * Compose the leaf IntersectionObserver park so a consumer inherits the
33
30
  * off-screen IO-park ORed with content-visibility, no per-viz `useIntersectionPause`
@@ -93,7 +90,7 @@ export interface GpuSubstrateHandle {
93
90
  * canvas is in the DOM so the field is sharp from frame 0 while the device resolves
94
91
  * (the ≤6s blurry-flash close). `armAsync` already calls it internally on both legs;
95
92
  * exposed so a consumer can presize even earlier (e.g. immediately on mount, before
96
- * the awaited `armAsync`). A no-op when no `dprPolicy` was supplied (legacy).
93
+ * the awaited `armAsync`). Idempotent — a no-op once the backing is already sized.
97
94
  */
98
95
  presize: () => void;
99
96
  suspend: (reason?: "tab-hidden" | "off-screen" | "off-screen-io" | "manual") => void;
@@ -1,7 +1,6 @@
1
- export type { BackingSize, DprPolicy } from "../webgl/createCanvasLifecycle";
2
- export { WebGPUInitError, WEBGPU_ACQUIRE_TIMEOUT_MS } from "./webgpuDevice";
3
- export type { WebGPUSuspendReason, WebGPUCanvasFrame, WebGPUCanvasOptions, WebGPUCanvasHandle, } from "./webgpuCanvasTypes";
4
- import type { WebGPUCanvasOptions, WebGPUCanvasHandle } from "./webgpuCanvasTypes";
1
+ export type { BackingSize, DprPolicy } from "../webgl/createCanvasLifecycle.js";
2
+ export type { WebGPUSuspendReason, WebGPUCanvasFrame, WebGPUCanvasOptions, WebGPUCanvasHandle, } from "./webgpuCanvasTypes.js";
3
+ import type { WebGPUCanvasOptions, WebGPUCanvasHandle } from "./webgpuCanvasTypes.js";
5
4
  /**
6
5
  * The ONE `navigator.gpu` capability probe (the single-bootstrap rule — mirrors
7
6
  * `probeWebGL2Renderer`). SSR-safe (returns `false` with no `navigator`). The picker
@@ -1,4 +1,4 @@
1
- import type { BackingSize, DprPolicy } from "../webgl/createCanvasLifecycle";
1
+ import type { BackingSize, DprPolicy } from "../webgl/createCanvasLifecycle.js";
2
2
  export type WebGPUSuspendReason = "tab-hidden" | "off-screen" | "off-screen-io" | "manual";
3
3
  /**
4
4
  * The per-frame hooks a consumer's `setup(device, context, format)` returns. The
@@ -15,12 +15,11 @@ export interface WebGPUCanvasFrame {
15
15
  /** Demand-gate: is there live motion to render next frame? `false` → park. */
16
16
  shouldContinue: () => boolean;
17
17
  /**
18
- * Upload the backing geometry.: when a `dprPolicy` is
19
- * supplied the leaf sizes the backing + passes the live `BackingSize` here (the
20
- * WGSL swap chain auto-tracks the backing, so the consumer body shrinks to an aspect
21
- * upload). The arg is optional so a legacy self-measuring consumer keeps compiling.
18
+ * Upload the backing geometry: the leaf sizes the backing + passes the live
19
+ * `BackingSize` here (the WGSL swap chain auto-tracks the backing, so the consumer
20
+ * body is an aspect upload).
22
21
  */
23
- resize: (s?: BackingSize) => void;
22
+ resize: (s: BackingSize) => void;
24
23
  /** Frame time from elapsed seconds — the consumer owns frozen/reduced-motion. */
25
24
  time?: (elapsedSec: number) => number;
26
25
  /** Release per-instance GPU resources (pipelines/buffers/bind groups). Runs on dispose + before a restore re-setup. */
@@ -43,12 +42,11 @@ export interface WebGPUCanvasOptions {
43
42
  */
44
43
  respectReducedMotion?: boolean;
45
44
  /**
46
- * The consumer's DPR policy. When present the
47
- * leaf sizes the backing SYNCHRONOUSLY at mount (via `presize`, BEFORE the async
48
- * device acquire — the ≤6s blurry-flash close) and hands the live `BackingSize` to
49
- * `resize(s)`. When ABSENT the legacy path runs (the consumer self-measures).
45
+ * The consumer's DPR policy. REQUIRED: the leaf sizes the backing SYNCHRONOUSLY at
46
+ * mount (via `presize`, BEFORE the async device acquire — the ≤6s blurry-flash
47
+ * close) and hands the live `BackingSize` to `resize(s)`.
50
48
  */
51
- dprPolicy?: DprPolicy;
49
+ dprPolicy: DprPolicy;
52
50
  /** Compose the leaf IO park. Default `false`; see createCanvasLifecycle. */
53
51
  composeIntersectionPark?: boolean;
54
52
  /** `rootMargin` for the leaf IO park. */
@@ -39,23 +39,6 @@ export declare class WebGPUInitError extends Error {
39
39
  * across UAs); a throwing read is morally "cannot prove software" → keep WebGPU.
40
40
  */
41
41
  export declare function isSoftwareWebGPUAdapter(adapter: GPUAdapter): boolean;
42
- /**
43
- * The bound on the adapter/device acquisition (ms). The adapter/device request can
44
- * resolve NEITHER way on a hanging host (a headless, virtualized-Metal + some-Chrome
45
- * class). A REAL cold acquire on a healthy Metal-3 host was live-measured at ~3478ms
46
- * (the FIRST device request on a cold GPU process) — well over a tight 2500ms
47
- * ceiling, which would convert a slow-but-fine cold acquire into a FALSE hang so the WGSL
48
- * primary never runs (every viz silently downgrading to WebGL2 — the
49
- * Safari-primary surface masked by the
50
- * always-winning fallback). 6000ms lets the real cold acquire through while a genuine
51
- * wedge (a device that never settles) still falls to the WebGL2 net before the user
52
- * perceives a permanent blank. With the SHARED device warm the ceiling is hit at most
53
- * ONCE per page, not N-times-per-canvas — a single ≤6s race, never N.
54
- *
55
- * homed in this device-acquisition-support leaf beside the typed
56
- * failure signal it throws. The substrate re-imports + re-exports it.
57
- */
58
- export declare const WEBGPU_ACQUIRE_TIMEOUT_MS = 6000;
59
42
  /**
60
43
  * Race a WebGPU acquisition promise against a timeout. On a hang the timeout wins and
61
44
  * rejects with the recognized typed `acquire-timeout` signal (the picker falls to the
@@ -1 +1 @@
1
- export * from "./useKeyboardShortcuts";
1
+ export * from "./useKeyboardShortcuts.js";
@@ -16,3 +16,10 @@ export declare const SNAP_THRESHOLD: {
16
16
  readonly dom: 0.05;
17
17
  readonly domProgress: 0.5;
18
18
  };
19
+ /**
20
+ * One frame at 60fps, in milliseconds. The display's own beat, which is why it is
21
+ * shared rather than derived twice: an integrator's first-frame `dt` (before there is
22
+ * a previous timestamp to difference) and a "this outlives that by N frames" floor are
23
+ * the same number for the same reason. Anything that means "one frame" reads this.
24
+ */
25
+ export declare const FRAME_MS: number;
@@ -1,21 +1,21 @@
1
- export * from "./constants";
2
- export * from "../reveal/useStaggerReveal";
3
- export * from "../reveal/useStagger";
4
- export * from "../scroll/useScrollProgress";
5
- export * from "./useRAFLoop";
6
- export * from "./useReducedMotion";
7
- export * from "./useIntersectionPause";
8
- export * from "./useYieldToMain";
9
- export * from "./useViewTransition";
10
- export * from "../reveal/vReveal";
11
- export * from "../reveal/useTextHighlight";
12
- export * from "../spring/useLiquidFlex";
13
- export * from "../morph/useLeadTrail";
14
- export * from "../pointer/usePointerVelocityField";
15
- export * from "../pointer/useRoutePointer";
16
- export * from "../pointer/pointerFieldMappings";
17
- export * from "../scroll/useScrollTrigger";
18
- export * from "../scroll/useScrollChrome";
19
- export * from "./writeVelocityWeight";
20
- export * from "../morph/useSelectionIndicator";
21
- export * from "../morph/useSelectionGroup";
1
+ export * from "./constants.js";
2
+ export * from "../reveal/useStagger.js";
3
+ export * from "../scroll/useScrollProgress.js";
4
+ export * from "./useRAFLoop.js";
5
+ export * from "./useReducedMotion.js";
6
+ export * from "./useIntersectionPause.js";
7
+ export * from "./useYieldToMain.js";
8
+ export * from "./useViewTransition.js";
9
+ export * from "../route/routeGrammar.js";
10
+ export * from "../route/useRouteTransition.js";
11
+ export * from "../dissolve/dissolveGrammar.js";
12
+ export * from "../reveal/vReveal.js";
13
+ export * from "../spring/useLiquidFlex.js";
14
+ export * from "../pointer/usePointerVelocityField.js";
15
+ export * from "../pointer/useRoutePointer.js";
16
+ export * from "../pointer/pointerFieldMappings.js";
17
+ export * from "../scroll/useScrollTrigger.js";
18
+ export * from "../scroll/useScrollChrome.js";
19
+ export * from "./writeVelocityWeight.js";
20
+ export * from "../morph/useSelectionIndicator.js";
21
+ export * from "../morph/useSelectionGroup.js";
@@ -1,5 +1,3 @@
1
- /** The identity tempo — no time scaling (the `@property` initial-value). */
2
- export declare const MOTION_TEMPO_IDENTITY = 1;
3
1
  /**
4
2
  * Read the effective `--motion-tempo` off `el` (or `:root` when omitted). Returns a
5
3
  * positive multiplier (the identity `1` off-DOM, on a malformed value, or on any
@@ -0,0 +1,88 @@
1
+ /** The five dialects, by the name each is known by in the codex table. */
2
+ export type DissolveDialect = "auto-expiry" | "flicked" | "miniaturize" | "row-dissolve" | "vaporize";
3
+ /**
4
+ * A row states what the dialect IS, who ended it, and which roster row owns the surface
5
+ * that speaks it. It carries no figures: a dialect that this library has not built has no
6
+ * constants to carry, and the one it HAS built keeps its constants in
7
+ * `VAPORIZE_CONSTANTS` below, where the CSS mirror reads them.
8
+ */
9
+ export interface DissolveDialectRow {
10
+ readonly dialect: DissolveDialect;
11
+ /** Who ended it — the selector the codex row rules by ("who ended it selects the dialect"). */
12
+ readonly endedBy: "timer" | "gesture" | "system" | "user";
13
+ /** Built by THIS library today, or named-and-routed. */
14
+ readonly built: boolean;
15
+ /** The roster row that owns the surface speaking it. */
16
+ readonly owner: string;
17
+ readonly comment: string;
18
+ }
19
+ /** The table. Reading order is the codex row's, not a precedence. */
20
+ export declare const DISSOLVE_DIALECTS: readonly DissolveDialectRow[];
21
+ /** Look one dialect up by name. */
22
+ export declare function dissolveDialect(dialect: DissolveDialect): DissolveDialectRow;
23
+ /**
24
+ * The vaporize's measured constants, carried in ONE table.
25
+ *
26
+ * `channelRatio` traces to `IOS27-ARCHIVE.md` §4b: saturation, dim and blur reach 95% of
27
+ * their released values at 184 / 250 / 317 ms — 1 : 1.36 : 1.72, monotone, ease-out, zero
28
+ * overshoot on any channel, saturation always first and blur always last. The absolutes
29
+ * are the archive's device; the ratio is the mechanism, and it is the ratio we keep.
30
+ *
31
+ * The other three are TR#30's amendments, stated there verbatim: the ink collapses by 40%
32
+ * of the travel, its alpha floors at 0.30 on the way, and its blur peaks at half the
33
+ * element's own height. `transform-free` and `the backdrop outlives the panel by two
34
+ * frames` are the amendments that are structural rather than numeric — the first is an
35
+ * absence the arms check, and the second is a FLOOR the ratio already clears (see
36
+ * `backdropOutlivesPanel`).
37
+ */
38
+ export declare const VAPORIZE_CONSTANTS: {
39
+ /** §4b: sat : dim : blur = 1 : 1.36 : 1.72, saturation first, blur last. */
40
+ readonly channelRatio: {
41
+ readonly saturate: 1;
42
+ readonly dim: 1.36;
43
+ readonly blur: 1.72;
44
+ };
45
+ /** Amendment: the ink's collapse completes at 40% of the travel. */
46
+ readonly inkCollapseFraction: 0.4;
47
+ /** Amendment: the ink's alpha floors at 0.30 where the collapse completes. */
48
+ readonly inkOpacityFloor: 0.3;
49
+ /** Amendment: the ink's blur peaks at half the element's own block size. */
50
+ readonly inkBlurHeightRatio: 0.5;
51
+ };
52
+ /**
53
+ * The total travel is the BLUR channel's clock, because blur is always last. Every other
54
+ * clock in the recipe is this one times a ratio, so the recipe carries exactly one
55
+ * duration token and spends it.
56
+ */
57
+ export declare function channelFraction(channel: keyof typeof VAPORIZE_CONSTANTS.channelRatio): number;
58
+ /**
59
+ * Where the ink's blur peaks, as a fraction of the travel. The blur leads the fade by the
60
+ * SAME ratio the saturation leads the blur — the mechanism's one ratio, spent twice,
61
+ * rather than a second lead figure nobody measured.
62
+ */
63
+ export declare function inkBlurFraction(): number;
64
+ /**
65
+ * The panel — plate, rim and cast — is gone when the DIM channel lands; the backdrop's
66
+ * blur runs on to the end. This is "the backdrop outlives the panel by two frames" stated
67
+ * as what it is: a floor, in milliseconds, that a given travel either clears or does not.
68
+ * At the shipped travel it clears it several times over, and the arm checks the arithmetic
69
+ * rather than a remembered millisecond. The frame the floor is counted in is the shared
70
+ * `FRAME_MS` (`motion/core/constants.ts`) — this table mints no second one.
71
+ */
72
+ export declare function backdropOutlivesPanel(travelMs: number): number;
73
+ /**
74
+ * The corner affordance's placement, from `IOS27-ARCHIVE.md` §3 as adjudicated by CWT O-10
75
+ * (`:1293`): the disc's centre sits ON the element's corner point, nudged inward by ~6.5%
76
+ * of its own diameter, so about 70% of it floats free and it visually rests on the corner
77
+ * arc. `offset` is what both insets take, in units of the diameter — negative, because the
78
+ * disc hangs outside the box. The diameter itself is 0.42 × a SQUARE host's edge; a
79
+ * non-square host names its own, which is why `size` is a knob and not a derivation.
80
+ */
81
+ export declare const CORNER_AFFORDANCE: {
82
+ /** §3: diameter = 0.42 × the element's edge length (25.3pt on a 60pt icon). */
83
+ readonly edgeRatio: 0.42;
84
+ /** §3: the centre is nudged inward by ~6.5% of the disc's own diameter. */
85
+ readonly inwardNudge: 0.065;
86
+ };
87
+ /** The inset both axes take, in units of the diameter. Negative: the disc hangs out. */
88
+ export declare function cornerAffordanceOffset(): number;
@@ -0,0 +1,45 @@
1
+ /** An engagement-envelope role name. */
2
+ export type EngageRole = "press-drain" | "medium-exit" | "control-engage" | "signal-decay";
3
+ /** One envelope row: the (attack, release) time constants + who rides it. */
4
+ export interface EngageEnvelopeRow {
5
+ /** The role this envelope serves — the lookup key. */
6
+ readonly role: EngageRole;
7
+ /** τ_up: the first-order attack time constant in ms (the shared acknowledge class). */
8
+ readonly attackMs: number;
9
+ /** τ_down: the release time constant in ms. Always slower than the attack. */
10
+ readonly releaseMs: number;
11
+ /** The named surface this row was measured on — one rider per row. */
12
+ readonly rider: string;
13
+ /** The register this envelope serves. */
14
+ readonly comment: string;
15
+ }
16
+ /**
17
+ * The ONE press-acknowledge attack class every role shares. Attacks do not vary by
18
+ * role — an acknowledge is an acknowledge — so the class is a BAND that every row's
19
+ * τ_up must sit inside, not a per-row invention. Releases are where the roles differ:
20
+ * that is what makes a drain feel like a cancel and a decay feel like a level falling.
21
+ */
22
+ export declare const ENGAGE_ATTACK_CLASS: {
23
+ readonly minMs: 40;
24
+ readonly maxMs: 60;
25
+ };
26
+ /**
27
+ * The acknowledge window: a press must be visibly answered within this budget, measured
28
+ * as the envelope's t90 rather than its time constant. The class band above is drawn so
29
+ * that even its slowest attack lands inside this window.
30
+ */
31
+ export declare const ACKNOWLEDGE_WINDOW_MS = 150;
32
+ /**
33
+ * The engagement envelopes. No envelope constant may be minted outside this table: a
34
+ * new engagement earns a new ROW here, never a literal at a call site. That is the same
35
+ * no-second-authority rule the spring table holds, for the channel springs do not own.
36
+ */
37
+ export declare const ENGAGE_ENVELOPES: readonly EngageEnvelopeRow[];
38
+ /** Look one engagement envelope up by role. */
39
+ export declare function engageEnvelope(role: EngageRole): EngageEnvelopeRow;
40
+ /**
41
+ * The role's acknowledge time — when the attack reaches 90% of its target. A first-order
42
+ * envelope's t90 is `τ·ln(10)`; it is DERIVED here so the acknowledge budget is checked
43
+ * against the shipped time constant rather than against a remembered millisecond figure.
44
+ */
45
+ export declare function engageAttackT90Ms(role: EngageRole): number;