@mkbabb/glass-ui 4.2.0 → 5.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 (1377) hide show
  1. package/README.md +73 -159
  2. package/dist/CardAction-2uUvjMQK.js +285 -0
  3. package/dist/CollapsibleContent-DiHcB_HH.js +63 -0
  4. package/dist/CommandShortcut-fmdbsEJL.js +302 -0
  5. package/dist/ConfiguratorRow-BV6zPjTM.js +151 -0
  6. package/dist/DataTable-Bxya8nBn.js +518 -0
  7. package/dist/DialogContent-Bl4v10AC.js +192 -0
  8. package/dist/DialogFooter-C0v4Hz2F.js +168 -0
  9. package/dist/FadingScroll-BSRLqQCx.js +76 -0
  10. package/dist/FocusScope-BzKwhsBn.js +23 -0
  11. package/dist/IconChip-CwLmBJ_K.js +57 -0
  12. package/dist/IconTooltip-D9sbK-Mk.js +25 -0
  13. package/dist/Input-DKf-XwUM.js +57 -0
  14. package/dist/InstrumentChassis-Dss5Tjcm.js +65 -0
  15. package/dist/Label-C84TaQiw.js +36 -0
  16. package/dist/Notification-DQv2cOh9.js +43 -0
  17. package/dist/NumberFieldContent-BkE7xPS9.js +140 -0
  18. package/dist/PagerDots-BP6jh7z4.js +279 -0
  19. package/dist/PaperBackdrop-BYwE8_kg.js +31 -0
  20. package/dist/PopoverContent-DOtszFWK.js +251 -0
  21. package/dist/Progress-uWLyXE7J.js +308 -0
  22. package/dist/SelectGroup-BuEptUsa.js +31 -0
  23. package/dist/SelectScrollDownButton-CDtwaWkZ.js +261 -0
  24. package/dist/SelectSeparator-4QGephvr.js +49 -0
  25. package/dist/Separator-DqJ6PfOd.js +44 -0
  26. package/dist/Surface-BWRfwyn8.js +59 -0
  27. package/dist/Switch-BPBfhMU3.js +49 -0
  28. package/dist/Toaster-C_-WeU9W.js +281 -0
  29. package/dist/ToggleGroupItem-DNWx2aSW.js +175 -0
  30. package/dist/TooltipProvider-GtfYdSVf.js +110 -0
  31. package/dist/accent-tone-solve-CBw3L0cy.js +20 -0
  32. package/dist/animated-digit.d.ts +1 -1
  33. package/dist/animated-digit.js +5 -5
  34. package/dist/aurora.d.ts +1 -1
  35. package/dist/aurora.js +1395 -398
  36. package/dist/axes.d.ts +1 -0
  37. package/dist/axes.js +50 -0
  38. package/dist/badge-C0C-rTBu.js +80 -0
  39. package/dist/badge.d.ts +1 -1
  40. package/dist/badge.js +1 -1
  41. package/dist/blob-config.d.ts +5 -0
  42. package/dist/blob-config.js +2 -0
  43. package/dist/blob.d.ts +1 -0
  44. package/dist/blob.js +1582 -0
  45. package/dist/button-BXzhydVB.js +187 -0
  46. package/dist/button.d.ts +1 -1
  47. package/dist/button.js +1 -1
  48. package/dist/canvas.js +1 -1
  49. package/dist/card.d.ts +1 -1
  50. package/dist/card.js +1 -1
  51. package/dist/carousel.d.ts +2 -2
  52. package/dist/carousel.js +165 -248
  53. package/dist/chip.d.ts +10 -0
  54. package/dist/chip.js +81 -0
  55. package/dist/class-names-5jotTFzp.js +97 -0
  56. package/dist/coalesce-metric-B8o7zT9u.js +13 -0
  57. package/dist/collapsible.d.ts +1 -1
  58. package/dist/collapsible.js +1 -1
  59. package/dist/color-Bp5jmv4Z.js +86 -0
  60. package/dist/color-swatch.d.ts +1 -1
  61. package/dist/color-swatch.js +2 -2
  62. package/dist/color.js +3 -2
  63. package/dist/command.d.ts +1 -1
  64. package/dist/command.js +1 -1
  65. package/dist/completion-seal.d.ts +1 -1
  66. package/dist/completion-seal.js +76 -42
  67. package/dist/components/_shared/axes.d.ts +21 -0
  68. package/dist/components/_shared/class-names.d.ts +27 -0
  69. package/dist/components/_shared/index.d.ts +6 -0
  70. package/dist/components/_shared/menuItemVariants.d.ts +51 -0
  71. package/dist/components/_shared/useControlSize.d.ts +46 -0
  72. package/dist/components/_shared/useMotionAxis.d.ts +41 -0
  73. package/dist/components/_shared/useSurfaceAxis.d.ts +64 -0
  74. package/dist/components/alert/Alert.vue.d.ts +19 -0
  75. package/dist/components/alert/index.d.ts +8 -0
  76. package/dist/components/aurora/Aurora.vue.d.ts +104 -0
  77. package/dist/components/aurora/composables/atoms-fields.d.ts +43 -0
  78. package/dist/components/aurora/composables/atoms.d.ts +198 -0
  79. package/dist/components/aurora/composables/auroraImageSource.d.ts +44 -0
  80. package/dist/components/aurora/composables/color.d.ts +111 -0
  81. package/dist/components/aurora/composables/frameLoop.d.ts +66 -0
  82. package/dist/components/aurora/composables/glSetup.d.ts +29 -0
  83. package/dist/components/aurora/composables/runtime.d.ts +140 -0
  84. package/dist/components/aurora/composables/uniformBridge.d.ts +120 -0
  85. package/dist/components/aurora/composables/uniformBridgeWGPU.d.ts +60 -0
  86. package/dist/components/aurora/composables/uniformBridgeWGPUImage.d.ts +39 -0
  87. package/dist/components/aurora/composables/useAurora.d.ts +80 -0
  88. package/dist/components/aurora/composables/useCursorInteraction.d.ts +25 -0
  89. package/dist/components/aurora/composables/wgpuSetup.d.ts +50 -0
  90. package/dist/components/aurora/constants/presets.d.ts +326 -0
  91. package/dist/components/aurora/constants/shaders/aurora-image.frag.d.ts +3 -0
  92. package/dist/components/aurora/constants/shaders/aurora-image.wgsl.d.ts +3 -0
  93. package/dist/components/aurora/constants/shaders/aurora-mediums.wgsl.d.ts +1 -0
  94. package/dist/components/aurora/constants/shaders/aurora.wgsl.d.ts +1 -0
  95. package/dist/components/aurora/constants/shaders/brush.glsl.d.ts +1 -0
  96. package/dist/components/aurora/constants/shaders/flow.glsl.d.ts +1 -0
  97. package/dist/components/aurora/constants/shaders/mediums.glsl.d.ts +2 -0
  98. package/dist/components/aurora/constants/shaders/metal-medium.glsl.d.ts +2 -0
  99. package/dist/components/aurora/index.d.ts +13 -0
  100. package/dist/components/avatar/Avatar.vue.d.ts +23 -0
  101. package/dist/components/avatar/index.d.ts +9 -0
  102. package/dist/components/badge/Badge.vue.d.ts +41 -0
  103. package/dist/components/badge/index.d.ts +9 -0
  104. package/dist/components/blob/Blob.vue.d.ts +72 -0
  105. package/dist/components/blob/composables/satelliteKinematics.d.ts +20 -0
  106. package/dist/components/blob/composables/uploadBlobUniforms.d.ts +51 -0
  107. package/dist/components/blob/composables/useBlobPointer.d.ts +88 -0
  108. package/dist/components/blob/composables/useMetaballRenderer.d.ts +100 -0
  109. package/dist/components/blob/composables/wgpuSetup.d.ts +23 -0
  110. package/dist/components/blob/config.d.ts +3 -0
  111. package/dist/components/blob/constants.d.ts +82 -0
  112. package/dist/components/blob/index.d.ts +8 -0
  113. package/dist/components/blob/presets.d.ts +14 -0
  114. package/dist/components/blob/shaders/metaball-uniforms.glsl.d.ts +1 -0
  115. package/dist/components/blob/types.d.ts +256 -0
  116. package/dist/components/button/Button.vue.d.ts +31 -0
  117. package/dist/components/button/index.d.ts +9 -0
  118. package/dist/components/card/Card.vue.d.ts +180 -0
  119. package/dist/components/card/CardHeader.vue.d.ts +58 -0
  120. package/dist/components/card/ScrollCard.vue.d.ts +33 -0
  121. package/dist/components/carousel/Carousel.vue.d.ts +44 -0
  122. package/dist/components/carousel/CarouselContent.vue.d.ts +24 -0
  123. package/dist/components/carousel/CarouselNext.vue.d.ts +21 -0
  124. package/dist/components/carousel/CarouselPrevious.vue.d.ts +21 -0
  125. package/dist/components/carousel/GlassCarouselPager.vue.d.ts +50 -0
  126. package/dist/components/carousel/useCarousel.d.ts +21 -0
  127. package/dist/components/chip/Chip.vue.d.ts +20 -0
  128. package/dist/components/chip/chipVariants.d.ts +43 -0
  129. package/dist/components/chip/index.d.ts +3 -0
  130. package/dist/components/chip/types.d.ts +38 -0
  131. package/dist/components/combobox/Combobox.vue.d.ts +32 -0
  132. package/dist/components/combobox/ComboboxList.vue.d.ts +32 -0
  133. package/dist/components/command/index.d.ts +10 -0
  134. package/dist/components/completion-seal/CompletionSeal.vue.d.ts +28 -0
  135. package/dist/components/completion-seal/constants.d.ts +66 -0
  136. package/dist/components/configurator/Configurator.vue.d.ts +160 -0
  137. package/dist/components/configurator/ConfiguratorRow.vue.d.ts +96 -0
  138. package/dist/components/configurator/index.d.ts +6 -0
  139. package/dist/components/configurator/size.d.ts +26 -0
  140. package/dist/components/constellation/Constellation.vue.d.ts +34 -0
  141. package/dist/components/constellation/composables/constellationGLSetup.d.ts +10 -0
  142. package/dist/components/constellation/composables/constellationWGPUSetup.d.ts +19 -0
  143. package/dist/components/constellation/composables/useConstellation.d.ts +39 -0
  144. package/dist/components/constellation/constants.d.ts +97 -0
  145. package/dist/components/constellation/constellationTypes.d.ts +420 -0
  146. package/dist/components/dialog/DialogContent.vue.d.ts +115 -0
  147. package/dist/components/dock/DockBackgroundToggle.vue.d.ts +46 -0
  148. package/dist/components/dock/DockControl.vue.d.ts +73 -0
  149. package/dist/components/dock/DockCrossfade.vue.d.ts +50 -0
  150. package/dist/components/dock/DockLayer.vue.d.ts +33 -0
  151. package/dist/components/dock/DockLayerGroup.vue.d.ts +65 -0
  152. package/dist/components/dock/DockStack.vue.d.ts +73 -0
  153. package/dist/components/dock/DockTrigger.vue.d.ts +27 -0
  154. package/dist/components/dock/GlassDock.vue.d.ts +33 -0
  155. package/dist/components/dock/composables/dockContext.d.ts +48 -0
  156. package/dist/components/dock/composables/dockCrossfadeContext.d.ts +57 -0
  157. package/dist/components/dock/composables/dockMorphContext.d.ts +89 -0
  158. package/dist/components/dock/composables/index.d.ts +10 -0
  159. package/dist/components/dock/composables/useDockFisheye.d.ts +24 -0
  160. package/dist/components/dock/composables/useDockOverflowFit.d.ts +22 -0
  161. package/dist/components/dock/composables/useDockPopover.d.ts +68 -0
  162. package/dist/components/dock/composables/useDockSearch.d.ts +85 -0
  163. package/dist/components/dock/composables/useDockShellProps.d.ts +178 -0
  164. package/dist/components/dock/composables/useDockSpring.d.ts +71 -0
  165. package/dist/components/dock/composables/useDockTouchGate.d.ts +51 -0
  166. package/dist/components/dock/constants.d.ts +107 -0
  167. package/dist/components/dock/index.d.ts +19 -0
  168. package/dist/components/drawer/Drawer.vue.d.ts +85 -0
  169. package/dist/components/drawer/DrawerContent.vue.d.ts +40 -0
  170. package/dist/components/drawer/composables/useDrawerSnap.d.ts +24 -0
  171. package/dist/components/drawer/constants.d.ts +50 -0
  172. package/dist/components/drawer/index.d.ts +35 -0
  173. package/dist/components/dropdown-menu/DropdownMenu.vue.d.ts +24 -0
  174. package/dist/components/dropdown-menu/DropdownMenuContent.vue.d.ts +36 -0
  175. package/dist/components/dropdown-menu/index.d.ts +16 -0
  176. package/dist/components/dropdown-menu/useMenuTrigger.d.ts +14 -0
  177. package/dist/components/expandable-container/ExpandableContainer.vue.d.ts +71 -0
  178. package/dist/components/fourier-field/FourierField.vue.d.ts +54 -0
  179. package/dist/components/fourier-field/composables/fourierFieldGLSetup.d.ts +24 -0
  180. package/dist/components/fourier-field/composables/fourierFieldWGPUSetup.d.ts +31 -0
  181. package/dist/components/fourier-field/composables/uniformBridgeWGPU.d.ts +41 -0
  182. package/dist/components/fourier-field/composables/useFourierField.d.ts +55 -0
  183. package/dist/components/fourier-field/constants.d.ts +134 -0
  184. package/dist/components/fourier-field/index.d.ts +31 -0
  185. package/dist/components/fourier-field/math.d.ts +111 -0
  186. package/dist/components/fourier-field/shaders/fourier-field.glsl.d.ts +4 -0
  187. package/dist/components/fourier-field/shaders/fourier-field.render.wgsl.d.ts +1 -0
  188. package/dist/components/fourier-field/shaders/fourier-field.ribbon.d.ts +51 -0
  189. package/dist/components/handmark/composables/useHandMark.d.ts +99 -0
  190. package/dist/components/handmark/constants.d.ts +69 -0
  191. package/dist/components/handmark/geometry.d.ts +65 -0
  192. package/dist/components/handmark/noise.d.ts +30 -0
  193. package/dist/components/handmark/types.d.ts +70 -0
  194. package/dist/components/header-ribbon/HeaderRibbon.vue.d.ts +31 -0
  195. package/dist/components/header-ribbon/index.d.ts +2 -0
  196. package/dist/components/header-ribbon/types.d.ts +7 -0
  197. package/dist/components/index.d.ts +36 -0
  198. package/dist/components/liquid-grid/LiquidGrid.vue.d.ts +42 -0
  199. package/dist/components/liquid-grid/composables/liquidGrid.d.ts +113 -0
  200. package/dist/components/liquid-grid/composables/liquidGridGLSetup.d.ts +18 -0
  201. package/dist/components/liquid-grid/composables/liquidGridWGPUSetup.d.ts +21 -0
  202. package/dist/components/liquid-grid/composables/uniformBridgeWGPU.d.ts +16 -0
  203. package/dist/components/liquid-grid/composables/useLiquidGrid.d.ts +31 -0
  204. package/dist/components/liquid-grid/constants.d.ts +93 -0
  205. package/dist/components/liquid-grid/index.d.ts +5 -0
  206. package/dist/components/liquid-grid/shaders/liquid-grid.glsl.d.ts +4 -0
  207. package/dist/components/liquid-grid/shaders/liquid-grid.wgsl.d.ts +1 -0
  208. package/dist/components/metric-badge/MetricBadge.vue.d.ts +40 -0
  209. package/dist/components/metric-cell/MetricCell.vue.d.ts +108 -0
  210. package/dist/components/metric-stack/MetricRow.vue.d.ts +120 -0
  211. package/dist/components/notification/Notification.vue.d.ts +16 -0
  212. package/dist/components/pager-dots/composables/usePagerWorm.d.ts +26 -0
  213. package/dist/components/pager-dots/constants.d.ts +15 -0
  214. package/dist/components/paper-backdrop/PaperBackdrop.vue.d.ts +21 -0
  215. package/dist/components/popover/Popover.vue.d.ts +54 -0
  216. package/dist/components/popover/PopoverContent.vue.d.ts +53 -0
  217. package/dist/components/popover/PopoverTrigger.vue.d.ts +16 -0
  218. package/dist/components/popover/popoverContext.d.ts +17 -0
  219. package/dist/components/progress/Progress.vue.d.ts +54 -0
  220. package/dist/components/progress/ProgressLiquid.vue.d.ts +21 -0
  221. package/dist/components/progress/index.d.ts +6 -0
  222. package/dist/components/scroll-progress-rim/ScrollProgressRim.vue.d.ts +19 -0
  223. package/dist/components/scroll-progress-rim/index.d.ts +3 -0
  224. package/dist/components/scroll-progress-rim/types.d.ts +2 -0
  225. package/dist/components/search/FuzzySearch.vue.d.ts +22 -0
  226. package/dist/components/search/SearchBar.vue.d.ts +38 -0
  227. package/dist/components/search/searchVariants.d.ts +19 -0
  228. package/dist/components/select/SelectContent.vue.d.ts +42 -0
  229. package/dist/components/slider/Slider.vue.d.ts +40 -0
  230. package/dist/components/slider/index.d.ts +46 -0
  231. package/dist/components/sortable-list/SortableHandle.vue.d.ts +19 -0
  232. package/dist/components/sortable-list/SortableItem.vue.d.ts +22 -0
  233. package/dist/components/sortable-list/SortableList.vue.d.ts +39 -0
  234. package/dist/components/sortable-list/composables/dragController.d.ts +29 -0
  235. package/dist/components/sortable-list/composables/types.d.ts +50 -0
  236. package/dist/components/sortable-list/composables/useSortable.d.ts +5 -0
  237. package/dist/components/sortable-list/context.d.ts +11 -0
  238. package/dist/components/sortable-list/index.d.ts +4 -0
  239. package/dist/components/split-chars/SplitChars.vue.d.ts +53 -0
  240. package/dist/components/stacked-icons/types.d.ts +19 -0
  241. package/dist/components/surface/Surface.vue.d.ts +45 -0
  242. package/dist/components/surface/index.d.ts +2 -0
  243. package/dist/components/tabs/SegmentedTabs.vue.d.ts +101 -0
  244. package/dist/components/tabs/composables/useEyeglassLive.d.ts +17 -0
  245. package/dist/components/tabs/composables/useTabDragMorph.d.ts +42 -0
  246. package/dist/components/tabs/composables/useTabResponsive.d.ts +43 -0
  247. package/dist/components/tabs/composables/useTabRovingFocus.d.ts +51 -0
  248. package/dist/components/tabs/constants.d.ts +1 -0
  249. package/dist/components/timeline/ContinuousMarkers.vue.d.ts +49 -0
  250. package/dist/components/timeline/GlassTimeline.vue.d.ts +114 -0
  251. package/dist/components/toast/Toast.vue.d.ts +107 -0
  252. package/dist/components/toast/index.d.ts +9 -0
  253. package/dist/components/toast/use-toast.d.ts +182 -0
  254. package/dist/components/toggle/Toggle.vue.d.ts +29 -0
  255. package/dist/components/toggle/index.d.ts +26 -0
  256. package/dist/components/watercolor-dot/prng.d.ts +5 -0
  257. package/dist/components/watercolor-dot/useWatercolorBlob.d.ts +31 -0
  258. package/dist/composables/color/accent-tone-solve.d.ts +11 -0
  259. package/dist/composables/color/index.d.ts +18 -1
  260. package/dist/composables/color/useAccentTone.d.ts +6 -8
  261. package/dist/composables/dom/useUserInvalidAria.d.ts +7 -11
  262. package/dist/composables/glass/ambientHueHistogram.d.ts +27 -0
  263. package/dist/composables/glass/backdropLuminanceSample.d.ts +56 -0
  264. package/dist/composables/glass/backdropSampleMath.d.ts +5 -0
  265. package/dist/composables/glass/textureUpload.d.ts +91 -0
  266. package/dist/composables/glass/useGlassBackdropLuminance.d.ts +27 -1
  267. package/dist/composables/glass/useSpecularPointer.d.ts +23 -4
  268. package/dist/composables/glass/useSpecularTracking.d.ts +1 -1
  269. package/dist/composables/glass/wave/waveField.d.ts +22 -1
  270. package/dist/composables/glass/wave/waveField.glsl.d.ts +1 -1
  271. package/dist/composables/glass/wave/waveField.wgsl.d.ts +1 -1
  272. package/dist/composables/glass/webgl/backingSize.d.ts +44 -0
  273. package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +36 -55
  274. package/dist/composables/glass/webgl/shaders/glass-refract.glsl.d.ts +36 -0
  275. package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +1 -1
  276. package/dist/composables/glass/webgl/visibility.d.ts +42 -0
  277. package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +5 -4
  278. package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +3 -111
  279. package/dist/composables/glass/webgpu/webgpuCanvasTypes.d.ts +96 -0
  280. package/dist/composables/glass/webgpu/webgpuDevice.d.ts +30 -0
  281. package/dist/composables/index.d.ts +1 -2
  282. package/dist/composables/motion/bloomUpField.d.ts +29 -0
  283. package/dist/composables/motion/core/index.d.ts +6 -2
  284. package/dist/composables/motion/gooBarbellGeometry.d.ts +79 -0
  285. package/dist/composables/motion/index.d.ts +1 -1
  286. package/dist/composables/motion/morphSignatures.d.ts +88 -0
  287. package/dist/composables/motion/motionTempo.d.ts +9 -0
  288. package/dist/composables/motion/pointerFieldMappings.d.ts +161 -0
  289. package/dist/composables/motion/springPresets.d.ts +17 -23
  290. package/dist/composables/motion/useDockCtaReceive.d.ts +32 -39
  291. package/dist/composables/motion/useElementMorph.d.ts +99 -0
  292. package/dist/composables/motion/useLeadTrail.d.ts +69 -0
  293. package/dist/composables/motion/useLiquidPress.d.ts +9 -0
  294. package/dist/composables/motion/useLiquidReveal.d.ts +15 -29
  295. package/dist/composables/motion/usePointerVelocityField.d.ts +59 -0
  296. package/dist/composables/motion/useRoutePointer.d.ts +41 -0
  297. package/dist/composables/motion/useSelectionGroup.d.ts +83 -0
  298. package/dist/composables/motion/useSelectionIndicator.d.ts +90 -0
  299. package/dist/composables/motion/useSpringPress.d.ts +5 -5
  300. package/dist/configurator.d.ts +1 -1
  301. package/dist/configurator.js +3 -3
  302. package/dist/constellation.d.ts +1 -1
  303. package/dist/constellation.js +292 -255
  304. package/dist/controls.d.ts +1 -1
  305. package/dist/controls.js +5 -5
  306. package/dist/createCanvasLifecycle-DlrcvWbb.js +209 -0
  307. package/dist/dark.js +1 -1
  308. package/dist/data-table.d.ts +1 -1
  309. package/dist/data-table.js +1 -1
  310. package/dist/deck.d.ts +1 -1
  311. package/dist/deck.js +6 -6
  312. package/dist/dialog.d.ts +1 -1
  313. package/dist/dialog.js +3 -4
  314. package/dist/dock.d.ts +1 -1
  315. package/dist/dock.js +1038 -1591
  316. package/dist/dockContext-d-WpJN2Z.js +13 -0
  317. package/dist/dom.js +6 -6
  318. package/dist/drawer.d.ts +1 -1
  319. package/dist/drawer.js +169 -161
  320. package/dist/dropdown-menu-DaGlVdp9.js +421 -0
  321. package/dist/dropdown-menu.d.ts +1 -1
  322. package/dist/dropdown-menu.js +1 -1
  323. package/dist/easing.d.ts +10 -1
  324. package/dist/easing.js +148 -148
  325. package/dist/expandable-container.d.ts +1 -1
  326. package/dist/expandable-container.js +85 -66
  327. package/dist/fading-scroll.d.ts +1 -1
  328. package/dist/fading-scroll.js +1 -1
  329. package/dist/focus-scope.d.ts +1 -1
  330. package/dist/focus-scope.js +2 -23
  331. package/dist/forms.d.ts +4 -3
  332. package/dist/forms.js +75 -66
  333. package/dist/fourier-field.d.ts +1 -1
  334. package/dist/fourier-field.js +608 -554
  335. package/dist/fourier-math.d.ts +7 -1
  336. package/dist/fourier-math.js +2 -2
  337. package/dist/glass-ui.css +1 -1
  338. package/dist/glass-ui.js +192 -340
  339. package/dist/handmark.d.ts +3 -1
  340. package/dist/handmark.js +179 -161
  341. package/dist/header-ribbon.d.ts +1 -1
  342. package/dist/header-ribbon.js +7 -7
  343. package/dist/icon-chip.d.ts +1 -1
  344. package/dist/icon-chip.js +1 -1
  345. package/dist/icon-tooltip.d.ts +1 -1
  346. package/dist/icon-tooltip.js +1 -1
  347. package/dist/index.d.ts +42 -45
  348. package/dist/infinite-scroll.d.ts +2 -2
  349. package/dist/infinite-scroll.js +2 -2
  350. package/dist/instrument-chassis.d.ts +1 -1
  351. package/dist/instrument-chassis.js +1 -1
  352. package/dist/keyboard.js +1 -1
  353. package/dist/label.d.ts +1 -1
  354. package/dist/label.js +1 -1
  355. package/dist/labeled-field.d.ts +1 -1
  356. package/dist/labeled-field.js +13 -13
  357. package/dist/liquid-grid.d.ts +1 -0
  358. package/dist/liquid-grid.js +1064 -0
  359. package/dist/math-CIEcwsYi.js +112 -0
  360. package/dist/menuItemVariants-DbO-Fr74.js +36 -0
  361. package/dist/metric-badge.d.ts +1 -1
  362. package/dist/metric-badge.js +79 -2
  363. package/dist/metric-cell.d.ts +1 -1
  364. package/dist/metric-cell.js +9 -9
  365. package/dist/metric-stack.d.ts +1 -1
  366. package/dist/metric-stack.js +23 -23
  367. package/dist/motion-core.js +48 -42
  368. package/dist/motion-curves.d.ts +20 -0
  369. package/dist/motion-curves.js +2 -2
  370. package/dist/motion.js +94 -210
  371. package/dist/motionTempo-CMS5b0Vu.js +7 -0
  372. package/dist/notification.d.ts +1 -1
  373. package/dist/notification.js +1 -1
  374. package/dist/number-field.d.ts +1 -1
  375. package/dist/number-field.js +1 -1
  376. package/dist/pager-dots.d.ts +1 -1
  377. package/dist/pager-dots.js +1 -1
  378. package/dist/paper-backdrop.d.ts +1 -1
  379. package/dist/paper-backdrop.js +1 -1
  380. package/dist/pointerFieldMappings-4VtmkOWv.js +65 -0
  381. package/dist/popover.d.ts +1 -1
  382. package/dist/popover.js +1 -1
  383. package/dist/presets-B07HzyKd.js +95 -0
  384. package/dist/prng-B0PLRmR6.js +15 -0
  385. package/dist/progress.d.ts +1 -1
  386. package/dist/progress.js +2 -2
  387. package/dist/pulse.d.ts +1 -1
  388. package/dist/pulse.js +4 -4
  389. package/dist/reactive.js +2 -2
  390. package/dist/resolveCanvasColor-B3L-akX0.js +93 -0
  391. package/dist/scroll-progress-rim.d.ts +1 -0
  392. package/dist/scroll-progress-rim.js +61 -0
  393. package/dist/search.d.ts +1 -1
  394. package/dist/search.js +123 -123
  395. package/dist/select.d.ts +1 -1
  396. package/dist/select.js +3 -3
  397. package/dist/separator.d.ts +1 -1
  398. package/dist/separator.js +1 -1
  399. package/dist/sidebar.js +1 -1
  400. package/dist/slider-Cxuj_W_H.js +151 -0
  401. package/dist/slider.d.ts +1 -1
  402. package/dist/slider.js +1 -1
  403. package/dist/sortable-list.d.ts +1 -1
  404. package/dist/sortable-list.js +384 -59
  405. package/dist/spa-view.d.ts +1 -1
  406. package/dist/spa-view.js +1 -1
  407. package/dist/springPresets-h5VKJQqG.js +58 -0
  408. package/dist/stacked-icons.d.ts +1 -1
  409. package/dist/stacked-icons.js +6 -6
  410. package/dist/status-dot.d.ts +1 -1
  411. package/dist/status-dot.js +2 -2
  412. package/dist/styles/animations.css +1 -409
  413. package/dist/styles/card-scroll.css +1 -0
  414. package/dist/styles/cards.css +1 -448
  415. package/dist/styles/completion-seal.css +1 -131
  416. package/dist/styles/components.css +1 -45
  417. package/dist/styles/configurator.css +1 -297
  418. package/dist/styles/dialog-placement.css +1 -0
  419. package/dist/styles/dock/adaptive-legibility.css +1 -119
  420. package/dist/styles/dock/crossfade.css +1 -0
  421. package/dist/styles/dock/cta-seat.css +1 -87
  422. package/dist/styles/dock/density.css +1 -455
  423. package/dist/styles/dock/dock.css +1 -0
  424. package/dist/styles/dock/fisheye.css +1 -0
  425. package/dist/styles/dock/layer-group.css +1 -333
  426. package/dist/styles/dock/layers.css +1 -413
  427. package/dist/styles/dock/morph.css +1 -430
  428. package/dist/styles/dock/overflow.css +1 -292
  429. package/dist/styles/dock/popover.css +1 -0
  430. package/dist/styles/dock/search.css +1 -68
  431. package/dist/styles/dock/section.css +1 -59
  432. package/dist/styles/dock/shape.css +1 -250
  433. package/dist/styles/dock/shell-regions.css +1 -0
  434. package/dist/styles/dock/shell.css +1 -498
  435. package/dist/styles/dock-controls/dark-mode-toggle.css +1 -122
  436. package/dist/styles/dock-controls/icon-button.css +1 -189
  437. package/dist/styles/dock-controls/tab-button.css +1 -143
  438. package/dist/styles/dock-controls/touch-floor.css +1 -94
  439. package/dist/styles/dock-controls/triggers.css +1 -157
  440. package/dist/styles/dock-controls.css +1 -92
  441. package/dist/styles/dock.css +1 -173
  442. package/dist/styles/draw-in.css +1 -0
  443. package/dist/styles/drawer.css +1 -406
  444. package/dist/styles/feedback-tone.css +1 -104
  445. package/dist/styles/fonts.css +1 -143
  446. package/dist/styles/glass/a11y-fallback.css +1 -245
  447. package/dist/styles/glass/accent-tone.css +1 -66
  448. package/dist/styles/glass/control-surfaces.css +1 -167
  449. package/dist/styles/glass/deep.css +1 -44
  450. package/dist/styles/glass/defined.css +1 -0
  451. package/dist/styles/glass/glass-atom.css +1 -244
  452. package/dist/styles/glass/glass-capsule.css +1 -143
  453. package/dist/styles/glass/glass-chip.css +1 -215
  454. package/dist/styles/glass/grain-overlay.css +1 -0
  455. package/dist/styles/glass/ladder-undershadow.css +1 -0
  456. package/dist/styles/glass/ladder.css +1 -489
  457. package/dist/styles/glass/liquid-enter.css +1 -252
  458. package/dist/styles/glass/liquid-fill.css +1 -0
  459. package/dist/styles/glass/material.css +1 -370
  460. package/dist/styles/glass/progress-rail.css +1 -78
  461. package/dist/styles/glass/reveal.css +1 -156
  462. package/dist/styles/glass/rim.css +1 -122
  463. package/dist/styles/glass/squircle.css +1 -66
  464. package/dist/styles/glass/surface-axis.css +1 -113
  465. package/dist/styles/glass/surfaces-pager.css +1 -0
  466. package/dist/styles/glass/surfaces.css +1 -411
  467. package/dist/styles/glass-refract.css +1 -114
  468. package/dist/styles/glass-specular-track.css +1 -74
  469. package/dist/styles/glass.css +1 -77
  470. package/dist/styles/icon-chip.css +1 -256
  471. package/dist/styles/index.css +1 -260
  472. package/dist/styles/instrument-chassis.css +1 -453
  473. package/dist/styles/menu.css +1 -127
  474. package/dist/styles/paper.css +1 -284
  475. package/dist/styles/scroll-choreography.css +1 -357
  476. package/dist/styles/scroll-chrome.css +1 -123
  477. package/dist/styles/scroll-driven.css +1 -110
  478. package/dist/styles/scroll-progress-rim.css +1 -0
  479. package/dist/styles/segmented-tabs.css +1 -447
  480. package/dist/styles/select.css +1 -201
  481. package/dist/styles/tabs/segmented-tabs-drag.css +1 -0
  482. package/dist/styles/theme/bridges.css +1 -380
  483. package/dist/styles/theme/dark.css +1 -7
  484. package/dist/styles/theme/literals.css +1 -103
  485. package/dist/styles/theme/radius.css +1 -117
  486. package/dist/styles/theme.css +1 -33
  487. package/dist/styles/tokens/color-radius.css +1 -297
  488. package/dist/styles/tokens/dark-arm-glass.css +1 -0
  489. package/dist/styles/tokens/dark-arm.css +1 -462
  490. package/dist/styles/tokens/glass-deep.css +1 -104
  491. package/dist/styles/tokens/glass-fx.css +1 -454
  492. package/dist/styles/tokens/glass.css +1 -412
  493. package/dist/styles/tokens/light-dark.css +1 -200
  494. package/dist/styles/tokens/motion-registers.css +1 -0
  495. package/dist/styles/tokens/offsets.css +1 -143
  496. package/dist/styles/tokens/on-glass-fg.css +1 -39
  497. package/dist/styles/tokens/property-regs-specular.css +1 -0
  498. package/dist/styles/tokens/property-regs.css +1 -566
  499. package/dist/styles/tokens/scale-paper.css +1 -493
  500. package/dist/styles/tokens/scheme-motion.css +1 -363
  501. package/dist/styles/tokens/scheme-spring.css +1 -239
  502. package/dist/styles/tokens/scroll-tokens.css +1 -123
  503. package/dist/styles/tokens/shadow.css +1 -226
  504. package/dist/styles/tokens/sizing-config.css +1 -110
  505. package/dist/styles/tokens/sizing.css +1 -450
  506. package/dist/styles/tokens.css +1 -52
  507. package/dist/styles/transitions.css +1 -263
  508. package/dist/styles/typography/scale.css +1 -153
  509. package/dist/styles/typography/semantic.css +1 -233
  510. package/dist/styles/typography/utilities.css +1 -174
  511. package/dist/styles/typography.css +1 -46
  512. package/dist/styles/utilities/a11y-overrides.css +1 -184
  513. package/dist/styles/utilities/animate.css +0 -29
  514. package/dist/styles/utilities/base-misc.css +1 -307
  515. package/dist/styles/utilities/base.css +1 -327
  516. package/dist/styles/utilities/btn.css +1 -301
  517. package/dist/styles/utilities/components.css +1 -342
  518. package/dist/styles/utilities/metal.css +1 -215
  519. package/dist/styles/utilities.css +1 -26
  520. package/dist/styles/view-transition.css +1 -67
  521. package/dist/styles/viz-reveal.css +1 -0
  522. package/dist/surface.d.ts +1 -0
  523. package/dist/surface.js +3 -0
  524. package/dist/switch.d.ts +1 -1
  525. package/dist/switch.js +1 -1
  526. package/dist/tabs.d.ts +1 -1
  527. package/dist/tabs.js +189 -249
  528. package/dist/timeline.d.ts +1 -1
  529. package/dist/timeline.js +199 -183
  530. package/dist/toast.d.ts +1 -1
  531. package/dist/toast.js +1 -1
  532. package/dist/toggle-group.d.ts +1 -1
  533. package/dist/toggle-group.js +1 -1
  534. package/dist/tooltip.d.ts +1 -1
  535. package/dist/tooltip.js +1 -1
  536. package/dist/typewriter.d.ts +1 -1
  537. package/dist/typewriter.js +8 -8
  538. package/dist/useAccentTone-D25DxviG.js +23 -0
  539. package/dist/useAnimatedNumber-2XC4aRB6.js +40 -0
  540. package/dist/useConfiguratorState-Dq35N_7t.js +167 -0
  541. package/dist/useControlSize-DJwe-7ZQ.js +9 -0
  542. package/dist/useDockCtaReceive-BgMmeINo.js +161 -0
  543. package/dist/useDocumentVisibility-CpJGUgcJ.js +17 -0
  544. package/dist/useDragMorph-65ihHePq.js +93 -0
  545. package/dist/useFuzzySearch-KslRxiJY.js +177 -0
  546. package/dist/useGooMorph-CU1pwuC6.js +268 -0
  547. package/dist/useGpuSubstrate-DcY584kE.js +347 -0
  548. package/dist/useIntersectionPause-Cmt5Tnv9.js +39 -0
  549. package/dist/useKeyboardShortcuts-ynVmNFo3.js +104 -0
  550. package/dist/useLeadTrail-DOH4XkL1.js +74 -0
  551. package/dist/useLiquidPress-BXNHydZh.js +40 -0
  552. package/dist/useMotionAxis-DCCXMC-i.js +20 -0
  553. package/dist/usePointerVelocityField-CwXyeW0Z.js +122 -0
  554. package/dist/useRAFLoop-CvOo_kgb.js +109 -0
  555. package/dist/useRoutePointer-DL7I0gY4.js +52 -0
  556. package/dist/useScrollProgress-C-yImzhU.js +35 -0
  557. package/dist/useSelectionGroup-Btpf24aY.js +215 -0
  558. package/dist/useSpring-BBSKFx_0.js +41 -0
  559. package/dist/useSpringMount-CNvvgGiC.js +71 -0
  560. package/dist/useSpringPress-BypV_KO-.js +36 -0
  561. package/dist/useSurfaceAxis-DudiZVOR.js +10 -0
  562. package/dist/useTabRovingFocus-CG1H1k1J.js +143 -0
  563. package/dist/useTouchGate-BlegwvwL.js +84 -0
  564. package/dist/useUserInvalidAria-Bkruei7M.js +25 -0
  565. package/dist/watercolor-dot.d.ts +1 -1
  566. package/dist/watercolor-dot.js +52 -50
  567. package/package.json +386 -827
  568. package/src/styles/animations.css +82 -23
  569. package/src/styles/card-scroll.css +189 -0
  570. package/src/styles/cards.css +45 -6
  571. package/src/styles/completion-seal.css +75 -1
  572. package/src/styles/configurator.css +63 -1
  573. package/src/styles/dialog-placement.css +68 -0
  574. package/src/styles/dock/adaptive-legibility.css +1 -1
  575. package/src/styles/dock/crossfade.css +139 -0
  576. package/src/styles/dock/density.css +16 -13
  577. package/src/styles/dock/dock.css +199 -0
  578. package/src/styles/dock/fisheye.css +81 -0
  579. package/src/styles/dock/layer-group.css +37 -41
  580. package/src/styles/dock/layers.css +46 -21
  581. package/src/styles/dock/morph.css +41 -16
  582. package/src/styles/dock/overflow.css +107 -67
  583. package/src/styles/dock/popover.css +249 -0
  584. package/src/styles/dock/shape.css +77 -139
  585. package/src/styles/dock/shell-regions.css +73 -0
  586. package/src/styles/dock/shell.css +159 -157
  587. package/src/styles/dock-controls/dark-mode-toggle.css +3 -2
  588. package/src/styles/dock-controls/icon-button.css +43 -11
  589. package/src/styles/dock-controls/tab-button.css +2 -2
  590. package/src/styles/dock-controls/touch-floor.css +25 -0
  591. package/src/styles/dock.css +60 -14
  592. package/src/styles/draw-in.css +89 -0
  593. package/src/styles/drawer.css +77 -41
  594. package/src/styles/glass/a11y-fallback.css +19 -76
  595. package/src/styles/glass/control-surfaces.css +20 -16
  596. package/src/styles/glass/deep.css +74 -4
  597. package/src/styles/glass/defined.css +88 -0
  598. package/src/styles/glass/glass-atom.css +23 -20
  599. package/src/styles/glass/glass-capsule.css +32 -0
  600. package/src/styles/glass/glass-chip.css +13 -17
  601. package/src/styles/glass/grain-overlay.css +79 -0
  602. package/src/styles/glass/ladder-undershadow.css +61 -0
  603. package/src/styles/glass/ladder.css +96 -133
  604. package/src/styles/glass/liquid-enter.css +12 -24
  605. package/src/styles/glass/liquid-fill.css +65 -0
  606. package/src/styles/glass/material.css +134 -10
  607. package/src/styles/glass/reveal.css +197 -20
  608. package/src/styles/glass/squircle.css +18 -26
  609. package/src/styles/glass/surface-axis.css +24 -1
  610. package/src/styles/glass/surfaces-pager.css +79 -0
  611. package/src/styles/glass/surfaces.css +121 -98
  612. package/src/styles/glass.css +34 -1
  613. package/src/styles/index.css +54 -26
  614. package/src/styles/menu.css +66 -6
  615. package/src/styles/paper.css +105 -202
  616. package/src/styles/scroll-choreography.css +29 -92
  617. package/src/styles/scroll-driven.css +18 -5
  618. package/src/styles/scroll-progress-rim.css +87 -0
  619. package/src/styles/segmented-tabs.css +67 -88
  620. package/src/styles/tabs/segmented-tabs-drag.css +200 -0
  621. package/src/styles/theme/bridges.css +8 -2
  622. package/src/styles/theme/literals.css +2 -1
  623. package/src/styles/theme/radius.css +43 -12
  624. package/src/styles/tokens/color-radius.css +15 -4
  625. package/src/styles/tokens/dark-arm-glass.css +55 -0
  626. package/src/styles/tokens/dark-arm.css +62 -69
  627. package/src/styles/tokens/glass-deep.css +102 -80
  628. package/src/styles/tokens/glass-fx.css +35 -5
  629. package/src/styles/tokens/glass.css +144 -78
  630. package/src/styles/tokens/light-dark.css +20 -4
  631. package/src/styles/tokens/motion-registers.css +93 -0
  632. package/src/styles/tokens/property-regs-specular.css +160 -0
  633. package/src/styles/tokens/property-regs.css +67 -186
  634. package/src/styles/tokens/scale-paper.css +6 -3
  635. package/src/styles/tokens/scheme-motion.css +59 -0
  636. package/src/styles/tokens/scheme-spring.css +146 -93
  637. package/src/styles/tokens/scroll-tokens.css +25 -11
  638. package/src/styles/tokens/shadow.css +28 -22
  639. package/src/styles/tokens/sizing.css +62 -7
  640. package/src/styles/tokens.css +16 -0
  641. package/src/styles/transitions.css +108 -143
  642. package/src/styles/typography/scale.css +10 -0
  643. package/src/styles/typography/semantic.css +5 -5
  644. package/src/styles/typography/utilities.css +25 -2
  645. package/src/styles/utilities/a11y-overrides.css +2 -2
  646. package/src/styles/utilities/base.css +13 -3
  647. package/src/styles/utilities/btn.css +29 -3
  648. package/src/styles/utilities/components.css +16 -21
  649. package/src/styles/utilities/metal.css +86 -29
  650. package/src/styles/viz-reveal.css +63 -0
  651. package/dist/CardAction-DlVP2evz.js +0 -272
  652. package/dist/CollapsibleContent-D7UNsXQr.js +0 -63
  653. package/dist/CommandShortcut-By-VQcLO.js +0 -302
  654. package/dist/ConfiguratorRow-YMXdINHx.js +0 -143
  655. package/dist/ContextMenuContent-CMWn6huB.js +0 -90
  656. package/dist/ContextMenuSubContent-DvwWCUc0.js +0 -245
  657. package/dist/DataTable-C4tG3eIJ.js +0 -512
  658. package/dist/DialogContent-D8U9ZfWS.js +0 -121
  659. package/dist/DialogFooter-DoLy0ewI.js +0 -80
  660. package/dist/DialogScrollContent-BMekN7gq.js +0 -93
  661. package/dist/FadingScroll-P8B30rAD.js +0 -76
  662. package/dist/HoverCardContent-DAmGYglo.js +0 -88
  663. package/dist/HoverPopover-DYpBOzzF.js +0 -96
  664. package/dist/IconChip-CQa7XZYc.js +0 -57
  665. package/dist/IconTooltip-_df8M3xm.js +0 -25
  666. package/dist/Input-CyU4_hIC.js +0 -57
  667. package/dist/InstrumentChassis-UUJX0-mW.js +0 -65
  668. package/dist/Label-B_HPqi_q.js +0 -36
  669. package/dist/MetricBadge-DQt_dGah.js +0 -79
  670. package/dist/ModalOverlay-DfAf7o15.js +0 -53
  671. package/dist/Notification-BlSPJhtZ.js +0 -43
  672. package/dist/NumberFieldContent-Z3VxGu_6.js +0 -140
  673. package/dist/PagerDots-CYlqVFd4.js +0 -196
  674. package/dist/PaperBackdrop-DYWgrnh8.js +0 -42
  675. package/dist/PopoverContent-BuKyHZSz.js +0 -127
  676. package/dist/Progress-C9SsdwIZ.js +0 -274
  677. package/dist/ScrollingText-DY3W1Jfh.js +0 -40
  678. package/dist/SelectGroup-Dcczq44n.js +0 -31
  679. package/dist/SelectScrollDownButton-3mFHX_R-.js +0 -260
  680. package/dist/SelectSeparator-CNRGG7Ew.js +0 -49
  681. package/dist/Separator-Cf9-JFgi.js +0 -44
  682. package/dist/Switch-uf-UKPA2.js +0 -49
  683. package/dist/Toaster-ozrsR4mP.js +0 -274
  684. package/dist/ToggleGroupItem-BpzaVzNm.js +0 -170
  685. package/dist/TooltipProvider-QQVM_80r.js +0 -109
  686. package/dist/api/index.d.ts +0 -34
  687. package/dist/api/types-extra.d.ts +0 -39
  688. package/dist/api.js +0 -2
  689. package/dist/badge-Bt14yURi.js +0 -72
  690. package/dist/border-progress.d.ts +0 -1
  691. package/dist/border-progress.js +0 -98
  692. package/dist/button-D1W9PrzI.js +0 -130
  693. package/dist/chipVariants-BJQ0I2kB.js +0 -18
  694. package/dist/cn-DJXf4yaB.js +0 -97
  695. package/dist/coalesceMetric-5qIeZnTx.js +0 -13
  696. package/dist/color-B9jZdhJX.js +0 -116
  697. package/dist/components/custom/aurora/Aurora.vue.d.ts +0 -101
  698. package/dist/components/custom/aurora/composables/atoms-fields.d.ts +0 -39
  699. package/dist/components/custom/aurora/composables/atoms.d.ts +0 -142
  700. package/dist/components/custom/aurora/composables/color.d.ts +0 -93
  701. package/dist/components/custom/aurora/composables/cursorModel.d.ts +0 -78
  702. package/dist/components/custom/aurora/composables/frameLoop.d.ts +0 -39
  703. package/dist/components/custom/aurora/composables/glSetup.d.ts +0 -29
  704. package/dist/components/custom/aurora/composables/runtime.d.ts +0 -127
  705. package/dist/components/custom/aurora/composables/uniformBridge.d.ts +0 -100
  706. package/dist/components/custom/aurora/composables/uniformBridgeWGPU.d.ts +0 -60
  707. package/dist/components/custom/aurora/composables/useAurora.d.ts +0 -86
  708. package/dist/components/custom/aurora/composables/useCursorInteraction.d.ts +0 -33
  709. package/dist/components/custom/aurora/composables/wgpuSetup.d.ts +0 -37
  710. package/dist/components/custom/aurora/constants/presets.d.ts +0 -258
  711. package/dist/components/custom/aurora/constants/shaders/aurora-mediums.wgsl.d.ts +0 -1
  712. package/dist/components/custom/aurora/constants/shaders/aurora.wgsl.d.ts +0 -1
  713. package/dist/components/custom/aurora/constants/shaders/brush.glsl.d.ts +0 -1
  714. package/dist/components/custom/aurora/constants/shaders/flow.glsl.d.ts +0 -1
  715. package/dist/components/custom/aurora/constants/shaders/mediums.glsl.d.ts +0 -2
  716. package/dist/components/custom/aurora/index.d.ts +0 -13
  717. package/dist/components/custom/border-progress/BorderProgress.vue.d.ts +0 -46
  718. package/dist/components/custom/border-progress/composables/spectrum-walk.d.ts +0 -25
  719. package/dist/components/custom/border-progress/composables/useBorderSpectrum.d.ts +0 -18
  720. package/dist/components/custom/border-progress/constants.d.ts +0 -59
  721. package/dist/components/custom/border-progress/index.d.ts +0 -4
  722. package/dist/components/custom/completion-seal/CompletionSeal.vue.d.ts +0 -21
  723. package/dist/components/custom/completion-seal/constants.d.ts +0 -46
  724. package/dist/components/custom/concentric/Concentric.vue.d.ts +0 -42
  725. package/dist/components/custom/concentric/composables/concentricGLSetup.d.ts +0 -23
  726. package/dist/components/custom/concentric/composables/concentricWGPUSetup.d.ts +0 -26
  727. package/dist/components/custom/concentric/composables/levelField.d.ts +0 -50
  728. package/dist/components/custom/concentric/composables/uniformBridgeWGPU.d.ts +0 -17
  729. package/dist/components/custom/concentric/composables/useConcentric.d.ts +0 -35
  730. package/dist/components/custom/concentric/constants.d.ts +0 -88
  731. package/dist/components/custom/concentric/index.d.ts +0 -5
  732. package/dist/components/custom/concentric/shaders/concentric.glsl.d.ts +0 -4
  733. package/dist/components/custom/concentric/shaders/concentric.wgsl.d.ts +0 -1
  734. package/dist/components/custom/configurator/Configurator.vue.d.ts +0 -160
  735. package/dist/components/custom/configurator/ConfiguratorRow.vue.d.ts +0 -79
  736. package/dist/components/custom/configurator/density.d.ts +0 -25
  737. package/dist/components/custom/configurator/index.d.ts +0 -6
  738. package/dist/components/custom/confirm-dialog/ConfirmDialog.vue.d.ts +0 -32
  739. package/dist/components/custom/confirm-dialog/index.d.ts +0 -1
  740. package/dist/components/custom/constellation/Constellation.vue.d.ts +0 -33
  741. package/dist/components/custom/constellation/composables/constellationGLSetup.d.ts +0 -10
  742. package/dist/components/custom/constellation/composables/constellationWGPUSetup.d.ts +0 -19
  743. package/dist/components/custom/constellation/composables/useConstellation.d.ts +0 -19
  744. package/dist/components/custom/constellation/constants.d.ts +0 -94
  745. package/dist/components/custom/constellation/constellationTypes.d.ts +0 -407
  746. package/dist/components/custom/dock/DockBackgroundToggle.vue.d.ts +0 -46
  747. package/dist/components/custom/dock/DockDropdownTrigger.vue.d.ts +0 -30
  748. package/dist/components/custom/dock/DockIconButton.vue.d.ts +0 -72
  749. package/dist/components/custom/dock/DockLayer.vue.d.ts +0 -34
  750. package/dist/components/custom/dock/DockLayerGroup.vue.d.ts +0 -51
  751. package/dist/components/custom/dock/DockPopoverTrigger.vue.d.ts +0 -19
  752. package/dist/components/custom/dock/DockSelectTrigger.vue.d.ts +0 -29
  753. package/dist/components/custom/dock/DockStack.vue.d.ts +0 -78
  754. package/dist/components/custom/dock/DockTabButton.vue.d.ts +0 -39
  755. package/dist/components/custom/dock/GlassDock.vue.d.ts +0 -47
  756. package/dist/components/custom/dock/composables/dockContext.d.ts +0 -47
  757. package/dist/components/custom/dock/composables/dockLayerContext.d.ts +0 -36
  758. package/dist/components/custom/dock/composables/dockMorphContext.d.ts +0 -79
  759. package/dist/components/custom/dock/composables/index.d.ts +0 -14
  760. package/dist/components/custom/dock/composables/railProjection.d.ts +0 -45
  761. package/dist/components/custom/dock/composables/useDockContextSilhouette.d.ts +0 -192
  762. package/dist/components/custom/dock/composables/useDockFission.d.ts +0 -158
  763. package/dist/components/custom/dock/composables/useDockItemDrag.d.ts +0 -18
  764. package/dist/components/custom/dock/composables/useDockMorphWindow.d.ts +0 -15
  765. package/dist/components/custom/dock/composables/useDockOrientationMorph.d.ts +0 -44
  766. package/dist/components/custom/dock/composables/useDockSearch.d.ts +0 -85
  767. package/dist/components/custom/dock/composables/useDockShellProps.d.ts +0 -214
  768. package/dist/components/custom/dock/composables/useLayerTransition.d.ts +0 -90
  769. package/dist/components/custom/dock/constants.d.ts +0 -98
  770. package/dist/components/custom/dock/index.d.ts +0 -24
  771. package/dist/components/custom/dot-flow-field/DotFlowField.vue.d.ts +0 -42
  772. package/dist/components/custom/dot-flow-field/composables/flowField.d.ts +0 -104
  773. package/dist/components/custom/dot-flow-field/composables/flowGLProgram.d.ts +0 -8
  774. package/dist/components/custom/dot-flow-field/composables/flowSetupGL.d.ts +0 -9
  775. package/dist/components/custom/dot-flow-field/composables/flowSetupGLFlow.d.ts +0 -12
  776. package/dist/components/custom/dot-flow-field/composables/flowSetupWGPU.d.ts +0 -7
  777. package/dist/components/custom/dot-flow-field/composables/uniformBridgeWGPU.d.ts +0 -65
  778. package/dist/components/custom/dot-flow-field/composables/useDotFlowField.d.ts +0 -35
  779. package/dist/components/custom/dot-flow-field/composables/useFlowParticles.d.ts +0 -32
  780. package/dist/components/custom/dot-flow-field/constants.d.ts +0 -120
  781. package/dist/components/custom/dot-flow-field/index.d.ts +0 -5
  782. package/dist/components/custom/dot-flow-field/shaders/flow-field.compute.wgsl.d.ts +0 -1
  783. package/dist/components/custom/dot-flow-field/shaders/flow-field.glsl.d.ts +0 -33
  784. package/dist/components/custom/dot-flow-field/shaders/flow-field.render.wgsl.d.ts +0 -2
  785. package/dist/components/custom/dot-matrix/DotMatrix.vue.d.ts +0 -43
  786. package/dist/components/custom/dot-matrix/composables/dotMatrixField.d.ts +0 -89
  787. package/dist/components/custom/dot-matrix/composables/uniformBridgeWGPU.d.ts +0 -61
  788. package/dist/components/custom/dot-matrix/composables/useDotMatrix.d.ts +0 -34
  789. package/dist/components/custom/dot-matrix/composables/useDotSphere.d.ts +0 -34
  790. package/dist/components/custom/dot-matrix/constants.d.ts +0 -72
  791. package/dist/components/custom/dot-matrix/index.d.ts +0 -5
  792. package/dist/components/custom/dot-matrix/shaders/dot-matrix.glsl.d.ts +0 -4
  793. package/dist/components/custom/dot-matrix/shaders/dot-matrix.wgsl.d.ts +0 -1
  794. package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +0 -71
  795. package/dist/components/custom/fourier-field/FourierField.vue.d.ts +0 -58
  796. package/dist/components/custom/fourier-field/composables/fourierFieldGLSetup.d.ts +0 -24
  797. package/dist/components/custom/fourier-field/composables/fourierFieldWGPUSetup.d.ts +0 -31
  798. package/dist/components/custom/fourier-field/composables/uniformBridgeWGPU.d.ts +0 -56
  799. package/dist/components/custom/fourier-field/composables/useFourierField.d.ts +0 -63
  800. package/dist/components/custom/fourier-field/constants.d.ts +0 -117
  801. package/dist/components/custom/fourier-field/index.d.ts +0 -31
  802. package/dist/components/custom/fourier-field/math.d.ts +0 -86
  803. package/dist/components/custom/fourier-field/shaders/fourier-field.glsl.d.ts +0 -4
  804. package/dist/components/custom/fourier-field/shaders/fourier-field.render.wgsl.d.ts +0 -1
  805. package/dist/components/custom/glass-panel/GlassPanel.vue.d.ts +0 -49
  806. package/dist/components/custom/glass-panel/index.d.ts +0 -2
  807. package/dist/components/custom/goo-blob/GooBlob.vue.d.ts +0 -71
  808. package/dist/components/custom/goo-blob/composables/uploadBlobUniforms.d.ts +0 -41
  809. package/dist/components/custom/goo-blob/composables/useBlobPointer.d.ts +0 -62
  810. package/dist/components/custom/goo-blob/composables/useMetaballRenderer.d.ts +0 -69
  811. package/dist/components/custom/goo-blob/composables/wgpuSetup.d.ts +0 -23
  812. package/dist/components/custom/goo-blob/constants.d.ts +0 -82
  813. package/dist/components/custom/goo-blob/index.d.ts +0 -7
  814. package/dist/components/custom/goo-blob/shaders/metaball-uniforms.glsl.d.ts +0 -1
  815. package/dist/components/custom/goo-blob/types.d.ts +0 -244
  816. package/dist/components/custom/goo-dot-matrix/GooDotMatrix.vue.d.ts +0 -49
  817. package/dist/components/custom/goo-dot-matrix/composables/gooDotLattice.d.ts +0 -24
  818. package/dist/components/custom/goo-dot-matrix/composables/gooDotSetup.d.ts +0 -79
  819. package/dist/components/custom/goo-dot-matrix/composables/uniformBridgeWGPU.d.ts +0 -45
  820. package/dist/components/custom/goo-dot-matrix/composables/useGooDotMatrix.d.ts +0 -31
  821. package/dist/components/custom/goo-dot-matrix/constants.d.ts +0 -115
  822. package/dist/components/custom/goo-dot-matrix/index.d.ts +0 -5
  823. package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.frag.d.ts +0 -13
  824. package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.wgsl.d.ts +0 -4
  825. package/dist/components/custom/handmark/composables/useHandMark.d.ts +0 -89
  826. package/dist/components/custom/handmark/constants.d.ts +0 -59
  827. package/dist/components/custom/handmark/geometry.d.ts +0 -85
  828. package/dist/components/custom/handmark/types.d.ts +0 -62
  829. package/dist/components/custom/header-ribbon/HeaderRibbon.vue.d.ts +0 -31
  830. package/dist/components/custom/header-ribbon/index.d.ts +0 -2
  831. package/dist/components/custom/header-ribbon/types.d.ts +0 -7
  832. package/dist/components/custom/hover-popover/HoverPopover.vue.d.ts +0 -132
  833. package/dist/components/custom/hover-popover/index.d.ts +0 -1
  834. package/dist/components/custom/metric-badge/MetricBadge.vue.d.ts +0 -40
  835. package/dist/components/custom/metric-cell/MetricCell.vue.d.ts +0 -108
  836. package/dist/components/custom/metric-stack/MetricRow.vue.d.ts +0 -120
  837. package/dist/components/custom/paper-backdrop/PaperBackdrop.vue.d.ts +0 -39
  838. package/dist/components/custom/paper-grid/PaperGrid.vue.d.ts +0 -42
  839. package/dist/components/custom/paper-grid/composables/paperGrid.d.ts +0 -105
  840. package/dist/components/custom/paper-grid/composables/paperGridGLSetup.d.ts +0 -18
  841. package/dist/components/custom/paper-grid/composables/paperGridWGPUSetup.d.ts +0 -21
  842. package/dist/components/custom/paper-grid/composables/uniformBridgeWGPU.d.ts +0 -16
  843. package/dist/components/custom/paper-grid/composables/usePaperGrid.d.ts +0 -31
  844. package/dist/components/custom/paper-grid/constants.d.ts +0 -95
  845. package/dist/components/custom/paper-grid/index.d.ts +0 -5
  846. package/dist/components/custom/paper-grid/shaders/paper-grid.glsl.d.ts +0 -4
  847. package/dist/components/custom/paper-grid/shaders/paper-grid.wgsl.d.ts +0 -1
  848. package/dist/components/custom/scrolling-text/ScrollingText.vue.d.ts +0 -20
  849. package/dist/components/custom/scrolling-text/index.d.ts +0 -1
  850. package/dist/components/custom/search/FuzzySearch.vue.d.ts +0 -22
  851. package/dist/components/custom/search/SearchBar.vue.d.ts +0 -38
  852. package/dist/components/custom/search/searchVariants.d.ts +0 -19
  853. package/dist/components/custom/selectable-chip/SelectableChip.vue.d.ts +0 -50
  854. package/dist/components/custom/selectable-chip/chipVariants.d.ts +0 -39
  855. package/dist/components/custom/selectable-chip/index.d.ts +0 -2
  856. package/dist/components/custom/selectable-chip/selectableChipVariants.d.ts +0 -15
  857. package/dist/components/custom/sortable-list/SortableHandle.vue.d.ts +0 -38
  858. package/dist/components/custom/sortable-list/SortableItem.vue.d.ts +0 -38
  859. package/dist/components/custom/sortable-list/SortableList.vue.d.ts +0 -76
  860. package/dist/components/custom/sortable-list/context.d.ts +0 -25
  861. package/dist/components/custom/sortable-list/index.d.ts +0 -4
  862. package/dist/components/custom/split-chars/SplitChars.vue.d.ts +0 -39
  863. package/dist/components/custom/stacked-icons/types.d.ts +0 -18
  864. package/dist/components/custom/tabs/SegmentedTabs.vue.d.ts +0 -99
  865. package/dist/components/custom/tabs/composables/useTabDragMorph.d.ts +0 -42
  866. package/dist/components/custom/tabs/composables/useTabIndicator.d.ts +0 -58
  867. package/dist/components/custom/tabs/constants.d.ts +0 -44
  868. package/dist/components/custom/timeline/ContinuousMarkers.vue.d.ts +0 -49
  869. package/dist/components/custom/timeline/GlassTimeline.vue.d.ts +0 -114
  870. package/dist/components/custom/toggle-chip/ToggleChip.vue.d.ts +0 -41
  871. package/dist/components/custom/toggle-chip/index.d.ts +0 -28
  872. package/dist/components/custom/watercolor-dot/prng.d.ts +0 -5
  873. package/dist/components/custom/watercolor-dot/useWatercolorBlob.d.ts +0 -29
  874. package/dist/components/ui/_shared/index.d.ts +0 -6
  875. package/dist/components/ui/_shared/menuItemVariants.d.ts +0 -51
  876. package/dist/components/ui/_shared/useControlSize.d.ts +0 -46
  877. package/dist/components/ui/_shared/useSurfaceAxis.d.ts +0 -55
  878. package/dist/components/ui/alert/Alert.vue.d.ts +0 -19
  879. package/dist/components/ui/alert/index.d.ts +0 -8
  880. package/dist/components/ui/avatar/Avatar.vue.d.ts +0 -23
  881. package/dist/components/ui/avatar/index.d.ts +0 -9
  882. package/dist/components/ui/badge/Badge.vue.d.ts +0 -34
  883. package/dist/components/ui/badge/index.d.ts +0 -8
  884. package/dist/components/ui/button/Button.vue.d.ts +0 -29
  885. package/dist/components/ui/button/index.d.ts +0 -7
  886. package/dist/components/ui/card/Card.vue.d.ts +0 -168
  887. package/dist/components/ui/card/CardHeader.vue.d.ts +0 -81
  888. package/dist/components/ui/card/ScrollCard.vue.d.ts +0 -33
  889. package/dist/components/ui/carousel/Carousel.vue.d.ts +0 -37
  890. package/dist/components/ui/carousel/CarouselContent.vue.d.ts +0 -14
  891. package/dist/components/ui/carousel/CarouselNext.vue.d.ts +0 -22
  892. package/dist/components/ui/carousel/CarouselPrevious.vue.d.ts +0 -22
  893. package/dist/components/ui/carousel/GlassCarouselPager.vue.d.ts +0 -50
  894. package/dist/components/ui/carousel/useCarousel.d.ts +0 -20
  895. package/dist/components/ui/combobox/Combobox.vue.d.ts +0 -29
  896. package/dist/components/ui/combobox/ComboboxList.vue.d.ts +0 -32
  897. package/dist/components/ui/command/index.d.ts +0 -9
  898. package/dist/components/ui/context-menu/ContextMenu.vue.d.ts +0 -18
  899. package/dist/components/ui/context-menu/ContextMenuCheckboxItem.vue.d.ts +0 -24
  900. package/dist/components/ui/context-menu/ContextMenuContent.vue.d.ts +0 -34
  901. package/dist/components/ui/context-menu/ContextMenuItem.vue.d.ts +0 -23
  902. package/dist/components/ui/context-menu/ContextMenuLabel.vue.d.ts +0 -19
  903. package/dist/components/ui/context-menu/ContextMenuRadioGroup.vue.d.ts +0 -18
  904. package/dist/components/ui/context-menu/ContextMenuRadioItem.vue.d.ts +0 -22
  905. package/dist/components/ui/context-menu/ContextMenuSeparator.vue.d.ts +0 -8
  906. package/dist/components/ui/context-menu/ContextMenuShortcut.vue.d.ts +0 -17
  907. package/dist/components/ui/context-menu/ContextMenuSubContent.vue.d.ts +0 -34
  908. package/dist/components/ui/context-menu/ContextMenuSubTrigger.vue.d.ts +0 -19
  909. package/dist/components/ui/context-menu/ContextMenuTrigger.vue.d.ts +0 -14
  910. package/dist/components/ui/context-menu/index.d.ts +0 -12
  911. package/dist/components/ui/dialog/DialogContent.vue.d.ts +0 -93
  912. package/dist/components/ui/drawer/Drawer.vue.d.ts +0 -86
  913. package/dist/components/ui/drawer/DrawerContent.vue.d.ts +0 -47
  914. package/dist/components/ui/drawer/composables/useDrawerSnap.d.ts +0 -17
  915. package/dist/components/ui/drawer/constants.d.ts +0 -47
  916. package/dist/components/ui/drawer/index.d.ts +0 -35
  917. package/dist/components/ui/dropdown-menu/DropdownMenu.vue.d.ts +0 -18
  918. package/dist/components/ui/dropdown-menu/DropdownMenuContent.vue.d.ts +0 -36
  919. package/dist/components/ui/dropdown-menu/index.d.ts +0 -15
  920. package/dist/components/ui/hover-card/HoverCard.vue.d.ts +0 -18
  921. package/dist/components/ui/hover-card/HoverCardContent.vue.d.ts +0 -23
  922. package/dist/components/ui/hover-card/HoverCardTrigger.vue.d.ts +0 -14
  923. package/dist/components/ui/hover-card/index.d.ts +0 -3
  924. package/dist/components/ui/index.d.ts +0 -41
  925. package/dist/components/ui/metric-pill/MetricPill.vue.d.ts +0 -46
  926. package/dist/components/ui/metric-pill/index.d.ts +0 -1
  927. package/dist/components/ui/multi-select/MultiSelect.vue.d.ts +0 -28
  928. package/dist/components/ui/multi-select/index.d.ts +0 -7
  929. package/dist/components/ui/notification/Notification.vue.d.ts +0 -16
  930. package/dist/components/ui/popover/Popover.vue.d.ts +0 -18
  931. package/dist/components/ui/popover/PopoverContent.vue.d.ts +0 -42
  932. package/dist/components/ui/popover/PopoverTrigger.vue.d.ts +0 -14
  933. package/dist/components/ui/progress/Progress.vue.d.ts +0 -49
  934. package/dist/components/ui/progress/index.d.ts +0 -5
  935. package/dist/components/ui/select/SelectContent.vue.d.ts +0 -42
  936. package/dist/components/ui/sheet/Sheet.vue.d.ts +0 -18
  937. package/dist/components/ui/sheet/SheetClose.vue.d.ts +0 -14
  938. package/dist/components/ui/sheet/SheetContent.vue.d.ts +0 -59
  939. package/dist/components/ui/sheet/SheetDescription.vue.d.ts +0 -18
  940. package/dist/components/ui/sheet/SheetFooter.vue.d.ts +0 -17
  941. package/dist/components/ui/sheet/SheetHeader.vue.d.ts +0 -17
  942. package/dist/components/ui/sheet/SheetTitle.vue.d.ts +0 -18
  943. package/dist/components/ui/sheet/SheetTrigger.vue.d.ts +0 -14
  944. package/dist/components/ui/sheet/index.d.ts +0 -13
  945. package/dist/components/ui/slider/Slider.vue.d.ts +0 -37
  946. package/dist/components/ui/slider/index.d.ts +0 -46
  947. package/dist/components/ui/tabs/Tabs.vue.d.ts +0 -19
  948. package/dist/components/ui/tabs/TabsContent.vue.d.ts +0 -18
  949. package/dist/components/ui/tabs/TabsIndicator.vue.d.ts +0 -11
  950. package/dist/components/ui/tabs/TabsList.vue.d.ts +0 -28
  951. package/dist/components/ui/tabs/TabsTrigger.vue.d.ts +0 -18
  952. package/dist/components/ui/tabs/index.d.ts +0 -5
  953. package/dist/components/ui/toast/Toast.vue.d.ts +0 -107
  954. package/dist/components/ui/toast/index.d.ts +0 -9
  955. package/dist/components/ui/toast/use-toast.d.ts +0 -182
  956. package/dist/components/ui/toggle/Toggle.vue.d.ts +0 -29
  957. package/dist/components/ui/toggle/index.d.ts +0 -26
  958. package/dist/composables/glass/useGlassRenderer.d.ts +0 -44
  959. package/dist/composables/glass/useVizChoreography.d.ts +0 -123
  960. package/dist/composables/motion/core/useHaptic.d.ts +0 -48
  961. package/dist/composables/motion/useCelebrationBurst.d.ts +0 -50
  962. package/dist/composables/motion/useLiquidMorph.d.ts +0 -108
  963. package/dist/composables/motion/useMorphField.d.ts +0 -157
  964. package/dist/composables/sortable/dragController.d.ts +0 -44
  965. package/dist/composables/sortable/types.d.ts +0 -133
  966. package/dist/composables/sortable/useSortable.d.ts +0 -34
  967. package/dist/concentric.d.ts +0 -1
  968. package/dist/concentric.js +0 -805
  969. package/dist/confirm-dialog.d.ts +0 -1
  970. package/dist/confirm-dialog.js +0 -82
  971. package/dist/context-menu.d.ts +0 -1
  972. package/dist/context-menu.js +0 -3
  973. package/dist/createCanvasLifecycle-CuCrGRfq.js +0 -173
  974. package/dist/dockContext-gFVS2gMg.js +0 -18
  975. package/dist/dot-flow-field.d.ts +0 -1
  976. package/dist/dot-flow-field.js +0 -1485
  977. package/dist/dot-matrix.d.ts +0 -1
  978. package/dist/dot-matrix.js +0 -774
  979. package/dist/dotMatrixField-CRO0ZFk4.js +0 -48
  980. package/dist/dropdown-menu-CCfcCQ68.js +0 -369
  981. package/dist/glass-panel.d.ts +0 -1
  982. package/dist/glass-panel.js +0 -113
  983. package/dist/goo-blob.d.ts +0 -1
  984. package/dist/goo-blob.js +0 -348
  985. package/dist/goo-dot-matrix.d.ts +0 -1
  986. package/dist/goo-dot-matrix.js +0 -811
  987. package/dist/hover-card.d.ts +0 -1
  988. package/dist/hover-card.js +0 -2
  989. package/dist/hover-popover.d.ts +0 -1
  990. package/dist/hover-popover.js +0 -2
  991. package/dist/math-5RcIgCB4.js +0 -51
  992. package/dist/menuItemVariants-DAXquKja.js +0 -36
  993. package/dist/paper-grid.d.ts +0 -1
  994. package/dist/paper-grid.js +0 -761
  995. package/dist/paperGrid-CXCSMbZ1.js +0 -191
  996. package/dist/presets-QvYgnFIZ.js +0 -85
  997. package/dist/prng-B5tIXTtj.js +0 -15
  998. package/dist/resolveCanvasColor-DsSJk06I.js +0 -93
  999. package/dist/scrolling-text.d.ts +0 -1
  1000. package/dist/scrolling-text.js +0 -2
  1001. package/dist/selectable-chip.d.ts +0 -1
  1002. package/dist/selectable-chip.js +0 -48
  1003. package/dist/sheet-DUCIoOe0.js +0 -218
  1004. package/dist/sheet.d.ts +0 -1
  1005. package/dist/sheet.js +0 -2
  1006. package/dist/slider-CcICPe3u.js +0 -149
  1007. package/dist/spectrum-walk-cBNSx_zm.js +0 -33
  1008. package/dist/springPresets-DfoQ6XRY.js +0 -64
  1009. package/dist/styles/border-progress.css +0 -109
  1010. package/dist/styles/critical-partition.mjs +0 -195
  1011. package/dist/styles/critical.css +0 -12
  1012. package/dist/styles/deferred.css +0 -35
  1013. package/dist/styles/dock/fission-bridge.css +0 -552
  1014. package/dist/styles/dock/morph-bridge.css +0 -172
  1015. package/dist/styles/dock/stack-rail.css +0 -352
  1016. package/dist/styles/floating-panel.css +0 -51
  1017. package/dist/styles/glass/liquid-morph.css +0 -850
  1018. package/dist/styles/hover-popover.css +0 -47
  1019. package/dist/styles/jubilance.css +0 -65
  1020. package/dist/styles/motion/morph-field.css +0 -229
  1021. package/dist/toggle-chip.d.ts +0 -1
  1022. package/dist/toggle-chip.js +0 -46
  1023. package/dist/uniformBridgeWGPU-BCse1SHU.js +0 -1268
  1024. package/dist/useAnimatedNumber-BntskVdQ.js +0 -40
  1025. package/dist/useConfiguratorState-22BcULzF.js +0 -164
  1026. package/dist/useControlSize-DAZ062x7.js +0 -9
  1027. package/dist/useDockCtaReceive-DX7RDb6_.js +0 -88
  1028. package/dist/useDragMorph-DGLSewwB.js +0 -102
  1029. package/dist/useFuzzySearch-0fTYOhS4.js +0 -177
  1030. package/dist/useGooMorph-Cs13NgYL.js +0 -104
  1031. package/dist/useGpuSubstrate-Ceet70xq.js +0 -347
  1032. package/dist/useHaptic-CPz5BT9I.js +0 -134
  1033. package/dist/useIntersectionPause-DO8Vl4gs.js +0 -53
  1034. package/dist/useKeyboardShortcuts-BEut54Tk.js +0 -99
  1035. package/dist/useLiquidPress-CtOQ8Z0_.js +0 -43
  1036. package/dist/useMorphField-ogBM7ubT.js +0 -141
  1037. package/dist/usePointerVelocityField-BrkqZFhj.js +0 -91
  1038. package/dist/useScrollChrome-JuImi1DM.js +0 -258
  1039. package/dist/useScrollProgress-A0M6qRl7.js +0 -35
  1040. package/dist/useSortable-DQV_UNDw.js +0 -246
  1041. package/dist/useSpring-C0jyvEJB.js +0 -40
  1042. package/dist/useSpringMount-DFxtzmkR.js +0 -71
  1043. package/dist/useSpringPress-VM9RgVq3.js +0 -36
  1044. package/dist/useSurfaceAxis-Ci7Dnaw2.js +0 -7
  1045. package/dist/useTouchGate-B1Lf9XqN.js +0 -84
  1046. package/dist/useUserInvalidAria-EmmwWPOl.js +0 -29
  1047. package/dist/utils/cn.d.ts +0 -27
  1048. package/dist/utils/index.d.ts +0 -4
  1049. package/dist/utils/moveBefore.d.ts +0 -15
  1050. package/dist/utils/platformSupport.d.ts +0 -8
  1051. package/dist/vendor-B2qOlYY3.js +0 -239
  1052. package/dist/virtual.d.ts +0 -1
  1053. package/dist/virtual.js +0 -225
  1054. package/src/styles/border-progress.css +0 -109
  1055. package/src/styles/critical-partition.mjs +0 -195
  1056. package/src/styles/dock/fission-bridge.css +0 -552
  1057. package/src/styles/dock/morph-bridge.css +0 -172
  1058. package/src/styles/dock/stack-rail.css +0 -352
  1059. package/src/styles/floating-panel.css +0 -49
  1060. package/src/styles/glass/liquid-morph.css +0 -850
  1061. package/src/styles/hover-popover.css +0 -45
  1062. package/src/styles/jubilance.css +0 -65
  1063. package/src/styles/motion/morph-field.css +0 -229
  1064. /package/dist/{_plugin-vue_export-helper-gLzyemvl.js → _plugin-vue_export-helper-C1je1s0u.js} +0 -0
  1065. /package/dist/{compile-INR_tPk_.js → compile-C55K3P9g.js} +0 -0
  1066. /package/dist/components/{ui/_shared → _shared}/ModalOverlay.vue.d.ts +0 -0
  1067. /package/dist/components/{ui/_shared → _shared}/useStalePropWarning.d.ts +0 -0
  1068. /package/dist/components/{ui/accordion → accordion}/Accordion.vue.d.ts +0 -0
  1069. /package/dist/components/{ui/accordion → accordion}/AccordionContent.vue.d.ts +0 -0
  1070. /package/dist/components/{ui/accordion → accordion}/AccordionItem.vue.d.ts +0 -0
  1071. /package/dist/components/{ui/accordion → accordion}/AccordionTrigger.vue.d.ts +0 -0
  1072. /package/dist/components/{ui/accordion → accordion}/index.d.ts +0 -0
  1073. /package/dist/components/{ui/alert → alert}/AlertDescription.vue.d.ts +0 -0
  1074. /package/dist/components/{ui/alert → alert}/AlertTitle.vue.d.ts +0 -0
  1075. /package/dist/components/{custom/animated-digit → animated-digit}/AnimatedDigit.vue.d.ts +0 -0
  1076. /package/dist/components/{custom/animated-digit → animated-digit}/index.d.ts +0 -0
  1077. /package/dist/components/{custom/aurora → aurora}/composables/auroraFallbackGround.d.ts +0 -0
  1078. /package/dist/components/{custom/aurora → aurora}/composables/configSource.d.ts +0 -0
  1079. /package/dist/components/{custom/aurora → aurora}/constants/budget.d.ts +0 -0
  1080. /package/dist/components/{custom/aurora → aurora}/constants/renderMode.d.ts +0 -0
  1081. /package/dist/components/{custom/aurora → aurora}/constants/shaders/aurora.frag.d.ts +0 -0
  1082. /package/dist/components/{custom/aurora → aurora}/constants/shaders/aurora.vert.d.ts +0 -0
  1083. /package/dist/components/{custom/aurora → aurora}/constants/shaders/composition.glsl.d.ts +0 -0
  1084. /package/dist/components/{custom/aurora → aurora}/constants/shaders/oil-modes.glsl.d.ts +0 -0
  1085. /package/dist/components/{custom/aurora → aurora}/constants/shaders/procedural-color.wgsl.d.ts +0 -0
  1086. /package/dist/components/{custom/aurora → aurora}/constants/shaders/tonemap.glsl.d.ts +0 -0
  1087. /package/dist/components/{custom/aurora → aurora}/constants/shaders/vangogh-medium.glsl.d.ts +0 -0
  1088. /package/dist/components/{ui/avatar → avatar}/AvatarFallback.vue.d.ts +0 -0
  1089. /package/dist/components/{ui/avatar → avatar}/AvatarImage.vue.d.ts +0 -0
  1090. /package/dist/components/{custom/goo-blob → blob}/composables/buildMetaballProgram.d.ts +0 -0
  1091. /package/dist/components/{custom/goo-blob → blob}/composables/easing.d.ts +0 -0
  1092. /package/dist/components/{custom/goo-blob → blob}/composables/uniformBridgeWGPU.d.ts +0 -0
  1093. /package/dist/components/{custom/goo-blob → blob}/composables/useBlobMood.d.ts +0 -0
  1094. /package/dist/components/{custom/goo-blob → blob}/composables/useBlobSatellites.d.ts +0 -0
  1095. /package/dist/components/{custom/goo-blob → blob}/shaders/metaball-noise.wgsl.d.ts +0 -0
  1096. /package/dist/components/{custom/goo-blob → blob}/shaders/metaball-palette.wgsl.d.ts +0 -0
  1097. /package/dist/components/{custom/goo-blob → blob}/shaders/metaball.frag.d.ts +0 -0
  1098. /package/dist/components/{custom/goo-blob → blob}/shaders/metaball.vert.d.ts +0 -0
  1099. /package/dist/components/{custom/goo-blob → blob}/shaders/metaball.wgsl.d.ts +0 -0
  1100. /package/dist/components/{custom/goo-blob → blob}/shaders/oklch-perturb.glsl.d.ts +0 -0
  1101. /package/dist/components/{custom/goo-blob → blob}/shaders/sdf-body.glsl.d.ts +0 -0
  1102. /package/dist/components/{custom/goo-blob → blob}/shaders/watercolor-edges.glsl.d.ts +0 -0
  1103. /package/dist/components/{ui/card → card}/CardAction.vue.d.ts +0 -0
  1104. /package/dist/components/{ui/card → card}/CardContent.vue.d.ts +0 -0
  1105. /package/dist/components/{ui/card → card}/CardDescription.vue.d.ts +0 -0
  1106. /package/dist/components/{ui/card → card}/CardFooter.vue.d.ts +0 -0
  1107. /package/dist/components/{ui/card → card}/CardTitle.vue.d.ts +0 -0
  1108. /package/dist/components/{ui/card → card}/ScrollCardHeader.vue.d.ts +0 -0
  1109. /package/dist/components/{ui/card → card}/index.d.ts +0 -0
  1110. /package/dist/components/{ui/carousel → carousel}/CarouselItem.vue.d.ts +0 -0
  1111. /package/dist/components/{ui/carousel → carousel}/CarouselPager.vue.d.ts +0 -0
  1112. /package/dist/components/{ui/carousel → carousel}/index.d.ts +0 -0
  1113. /package/dist/components/{ui/carousel → carousel}/interface.d.ts +0 -0
  1114. /package/dist/components/{ui/checkbox → checkbox}/Checkbox.vue.d.ts +0 -0
  1115. /package/dist/components/{ui/checkbox → checkbox}/index.d.ts +0 -0
  1116. /package/dist/components/{ui/collapsible → collapsible}/Collapsible.vue.d.ts +0 -0
  1117. /package/dist/components/{ui/collapsible → collapsible}/CollapsibleContent.vue.d.ts +0 -0
  1118. /package/dist/components/{ui/collapsible → collapsible}/CollapsibleTrigger.vue.d.ts +0 -0
  1119. /package/dist/components/{ui/collapsible → collapsible}/index.d.ts +0 -0
  1120. /package/dist/components/{custom/color-swatch → color-swatch}/ColorSwatch.vue.d.ts +0 -0
  1121. /package/dist/components/{custom/color-swatch → color-swatch}/index.d.ts +0 -0
  1122. /package/dist/components/{ui/combobox → combobox}/ComboboxAnchor.vue.d.ts +0 -0
  1123. /package/dist/components/{ui/combobox → combobox}/ComboboxEmpty.vue.d.ts +0 -0
  1124. /package/dist/components/{ui/combobox → combobox}/ComboboxGroup.vue.d.ts +0 -0
  1125. /package/dist/components/{ui/combobox → combobox}/ComboboxInput.vue.d.ts +0 -0
  1126. /package/dist/components/{ui/combobox → combobox}/ComboboxItem.vue.d.ts +0 -0
  1127. /package/dist/components/{ui/combobox → combobox}/ComboboxItemIndicator.vue.d.ts +0 -0
  1128. /package/dist/components/{ui/combobox → combobox}/ComboboxSeparator.vue.d.ts +0 -0
  1129. /package/dist/components/{ui/combobox → combobox}/ComboboxViewport.vue.d.ts +0 -0
  1130. /package/dist/components/{ui/combobox → combobox}/index.d.ts +0 -0
  1131. /package/dist/components/{ui/command → command}/Command.vue.d.ts +0 -0
  1132. /package/dist/components/{ui/command → command}/CommandDialog.vue.d.ts +0 -0
  1133. /package/dist/components/{ui/command → command}/CommandEmpty.vue.d.ts +0 -0
  1134. /package/dist/components/{ui/command → command}/CommandGroup.vue.d.ts +0 -0
  1135. /package/dist/components/{ui/command → command}/CommandInput.vue.d.ts +0 -0
  1136. /package/dist/components/{ui/command → command}/CommandItem.vue.d.ts +0 -0
  1137. /package/dist/components/{ui/command → command}/CommandList.vue.d.ts +0 -0
  1138. /package/dist/components/{ui/command → command}/CommandSeparator.vue.d.ts +0 -0
  1139. /package/dist/components/{ui/command → command}/CommandShortcut.vue.d.ts +0 -0
  1140. /package/dist/components/{custom/completion-seal → completion-seal}/composables/useCompletionSeal.d.ts +0 -0
  1141. /package/dist/components/{custom/completion-seal → completion-seal}/index.d.ts +0 -0
  1142. /package/dist/components/{custom/configurator → configurator}/ConfiguratorLayer.vue.d.ts +0 -0
  1143. /package/dist/components/{custom/configurator → configurator}/useConfiguratorState.d.ts +0 -0
  1144. /package/dist/components/{custom/constellation → constellation}/composables/createConstellationField.d.ts +0 -0
  1145. /package/dist/components/{custom/constellation → constellation}/composables/uniformBridgeWGPU.d.ts +0 -0
  1146. /package/dist/components/{custom/constellation → constellation}/constellationField.d.ts +0 -0
  1147. /package/dist/components/{custom/constellation → constellation}/constellationInteraction.d.ts +0 -0
  1148. /package/dist/components/{custom/constellation → constellation}/constellationRender.d.ts +0 -0
  1149. /package/dist/components/{custom/constellation → constellation}/constellationWell.d.ts +0 -0
  1150. /package/dist/components/{custom/constellation → constellation}/index.d.ts +0 -0
  1151. /package/dist/components/{custom/constellation → constellation}/shaders/constellation-lines.glsl.d.ts +0 -0
  1152. /package/dist/components/{custom/constellation → constellation}/shaders/constellation-lines.wgsl.d.ts +0 -0
  1153. /package/dist/components/{custom/constellation → constellation}/shaders/constellation-points.glsl.d.ts +0 -0
  1154. /package/dist/components/{custom/constellation → constellation}/shaders/constellation-points.wgsl.d.ts +0 -0
  1155. /package/dist/components/{custom/controls → controls}/DarkModeToggle.vue.d.ts +0 -0
  1156. /package/dist/components/{custom/controls → controls}/index.d.ts +0 -0
  1157. /package/dist/components/{ui/data-table → data-table}/DataTable.vue.d.ts +0 -0
  1158. /package/dist/components/{ui/data-table → data-table}/DataTablePagination.vue.d.ts +0 -0
  1159. /package/dist/components/{ui/data-table → data-table}/composables/useDataTableResponsive.d.ts +0 -0
  1160. /package/dist/components/{ui/data-table → data-table}/composables/useDataTableRowIdentity.d.ts +0 -0
  1161. /package/dist/components/{ui/data-table → data-table}/index.d.ts +0 -0
  1162. /package/dist/components/{ui/data-table → data-table}/types.d.ts +0 -0
  1163. /package/dist/components/{custom/deck → deck}/DeckPager.vue.d.ts +0 -0
  1164. /package/dist/components/{custom/deck → deck}/composables/useDeck.d.ts +0 -0
  1165. /package/dist/components/{custom/deck → deck}/composables/useDeckKeyboard.d.ts +0 -0
  1166. /package/dist/components/{custom/deck → deck}/composables/useDeckSpring.d.ts +0 -0
  1167. /package/dist/components/{custom/deck → deck}/constants.d.ts +0 -0
  1168. /package/dist/components/{custom/deck → deck}/index.d.ts +0 -0
  1169. /package/dist/components/{ui/dialog → dialog}/Dialog.vue.d.ts +0 -0
  1170. /package/dist/components/{ui/dialog → dialog}/DialogClose.vue.d.ts +0 -0
  1171. /package/dist/components/{ui/dialog → dialog}/DialogDescription.vue.d.ts +0 -0
  1172. /package/dist/components/{ui/dialog → dialog}/DialogFooter.vue.d.ts +0 -0
  1173. /package/dist/components/{ui/dialog → dialog}/DialogHeader.vue.d.ts +0 -0
  1174. /package/dist/components/{ui/dialog → dialog}/DialogScrollContent.vue.d.ts +0 -0
  1175. /package/dist/components/{ui/dialog → dialog}/DialogTitle.vue.d.ts +0 -0
  1176. /package/dist/components/{ui/dialog → dialog}/DialogTrigger.vue.d.ts +0 -0
  1177. /package/dist/components/{ui/dialog → dialog}/index.d.ts +0 -0
  1178. /package/dist/components/{custom/dock → dock}/DockSection.vue.d.ts +0 -0
  1179. /package/dist/components/{custom/dock → dock}/DockSeparator.vue.d.ts +0 -0
  1180. /package/dist/components/{custom/dock → dock}/composables/dockMorphMeasure.d.ts +0 -0
  1181. /package/dist/components/{custom/dock → dock}/composables/isTeleportedTarget.d.ts +0 -0
  1182. /package/dist/components/{custom/dock → dock}/composables/useDockClickIntegrity.d.ts +0 -0
  1183. /package/dist/components/{custom/dock → dock}/composables/useDockHold.d.ts +0 -0
  1184. /package/dist/components/{custom/dock → dock}/composables/useDockState.d.ts +0 -0
  1185. /package/dist/components/{ui/drawer → drawer}/DrawerDescription.vue.d.ts +0 -0
  1186. /package/dist/components/{ui/drawer → drawer}/DrawerFooter.vue.d.ts +0 -0
  1187. /package/dist/components/{ui/drawer → drawer}/DrawerHeader.vue.d.ts +0 -0
  1188. /package/dist/components/{ui/drawer → drawer}/DrawerOverlay.vue.d.ts +0 -0
  1189. /package/dist/components/{ui/drawer → drawer}/DrawerTitle.vue.d.ts +0 -0
  1190. /package/dist/components/{ui/drawer → drawer}/composables/drawerSnapContext.d.ts +0 -0
  1191. /package/dist/components/{ui/dropdown-menu → dropdown-menu}/DropdownMenuCheckboxItem.vue.d.ts +0 -0
  1192. /package/dist/components/{ui/dropdown-menu → dropdown-menu}/DropdownMenuGroup.vue.d.ts +0 -0
  1193. /package/dist/components/{ui/dropdown-menu → dropdown-menu}/DropdownMenuItem.vue.d.ts +0 -0
  1194. /package/dist/components/{ui/dropdown-menu → dropdown-menu}/DropdownMenuLabel.vue.d.ts +0 -0
  1195. /package/dist/components/{ui/dropdown-menu → dropdown-menu}/DropdownMenuRadioGroup.vue.d.ts +0 -0
  1196. /package/dist/components/{ui/dropdown-menu → dropdown-menu}/DropdownMenuRadioItem.vue.d.ts +0 -0
  1197. /package/dist/components/{ui/dropdown-menu → dropdown-menu}/DropdownMenuSeparator.vue.d.ts +0 -0
  1198. /package/dist/components/{ui/dropdown-menu → dropdown-menu}/DropdownMenuShortcut.vue.d.ts +0 -0
  1199. /package/dist/components/{ui/dropdown-menu → dropdown-menu}/DropdownMenuSub.vue.d.ts +0 -0
  1200. /package/dist/components/{ui/dropdown-menu → dropdown-menu}/DropdownMenuSubContent.vue.d.ts +0 -0
  1201. /package/dist/components/{ui/dropdown-menu → dropdown-menu}/DropdownMenuSubTrigger.vue.d.ts +0 -0
  1202. /package/dist/components/{ui/dropdown-menu → dropdown-menu}/DropdownMenuTrigger.vue.d.ts +0 -0
  1203. /package/dist/components/{custom/easing → easing}/EasingConfigurator.vue.d.ts +0 -0
  1204. /package/dist/components/{custom/easing → easing}/EasingPicker.vue.d.ts +0 -0
  1205. /package/dist/components/{custom/easing → easing}/composables/useEasingPicker.d.ts +0 -0
  1206. /package/dist/components/{custom/easing → easing}/constants.d.ts +0 -0
  1207. /package/dist/components/{custom/easing → easing}/index.d.ts +0 -0
  1208. /package/dist/components/{custom/expandable-container → expandable-container}/index.d.ts +0 -0
  1209. /package/dist/components/{custom/fading-scroll → fading-scroll}/FadingScroll.vue.d.ts +0 -0
  1210. /package/dist/components/{custom/fading-scroll → fading-scroll}/composables/useFadingScroll.d.ts +0 -0
  1211. /package/dist/components/{custom/fading-scroll → fading-scroll}/constants.d.ts +0 -0
  1212. /package/dist/components/{custom/fading-scroll → fading-scroll}/index.d.ts +0 -0
  1213. /package/dist/components/{ui/focus-scope → focus-scope}/FocusScope.vue.d.ts +0 -0
  1214. /package/dist/components/{ui/focus-scope → focus-scope}/index.d.ts +0 -0
  1215. /package/dist/components/{custom/fourier-field → fourier-field}/presets.d.ts +0 -0
  1216. /package/dist/components/{custom/fourier-field → fourier-field}/shaders/fourier-field.compute.wgsl.d.ts +0 -0
  1217. /package/dist/components/{custom/goo-filter → goo-filter}/GooFilter.vue.d.ts +0 -0
  1218. /package/dist/components/{custom/goo-filter → goo-filter}/index.d.ts +0 -0
  1219. /package/dist/components/{custom/handmark → handmark}/HandMark.vue.d.ts +0 -0
  1220. /package/dist/components/{custom/handmark → handmark}/brush.d.ts +0 -0
  1221. /package/dist/components/{custom/handmark → handmark}/freehand.d.ts +0 -0
  1222. /package/dist/components/{custom/handmark → handmark}/index.d.ts +0 -0
  1223. /package/dist/components/{custom/handmark → handmark}/ink.d.ts +0 -0
  1224. /package/dist/components/{custom/handmark → handmark}/texture.d.ts +0 -0
  1225. /package/dist/components/{custom/icon-chip → icon-chip}/IconChip.vue.d.ts +0 -0
  1226. /package/dist/components/{custom/icon-chip → icon-chip}/index.d.ts +0 -0
  1227. /package/dist/components/{custom/icon-chip → icon-chip}/types.d.ts +0 -0
  1228. /package/dist/components/{custom/icon-tooltip → icon-tooltip}/IconTooltip.vue.d.ts +0 -0
  1229. /package/dist/components/{custom/icon-tooltip → icon-tooltip}/index.d.ts +0 -0
  1230. /package/dist/components/{custom/infinite-scroll → infinite-scroll}/InfiniteScroll.vue.d.ts +0 -0
  1231. /package/dist/components/{custom/infinite-scroll → infinite-scroll}/composables/index.d.ts +0 -0
  1232. /package/dist/components/{custom/infinite-scroll → infinite-scroll}/composables/types.d.ts +0 -0
  1233. /package/dist/components/{custom/infinite-scroll → infinite-scroll}/composables/useInfiniteScroll.d.ts +0 -0
  1234. /package/dist/components/{custom/infinite-scroll → infinite-scroll}/index.d.ts +0 -0
  1235. /package/dist/components/{ui/input → input}/Input.vue.d.ts +0 -0
  1236. /package/dist/components/{ui/input → input}/index.d.ts +0 -0
  1237. /package/dist/components/{custom/instrument-chassis → instrument-chassis}/ChassisDivider.vue.d.ts +0 -0
  1238. /package/dist/components/{custom/instrument-chassis → instrument-chassis}/InstrumentChassis.vue.d.ts +0 -0
  1239. /package/dist/components/{custom/instrument-chassis → instrument-chassis}/index.d.ts +0 -0
  1240. /package/dist/components/{ui/label → label}/Label.vue.d.ts +0 -0
  1241. /package/dist/components/{ui/label → label}/index.d.ts +0 -0
  1242. /package/dist/components/{custom/labeled-field → labeled-field}/LabeledField.vue.d.ts +0 -0
  1243. /package/dist/components/{custom/labeled-field → labeled-field}/LabeledInput.vue.d.ts +0 -0
  1244. /package/dist/components/{custom/labeled-field → labeled-field}/LabeledSelect.vue.d.ts +0 -0
  1245. /package/dist/components/{custom/labeled-field → labeled-field}/LabeledSlider.vue.d.ts +0 -0
  1246. /package/dist/components/{custom/labeled-field → labeled-field}/LabeledSwitch.vue.d.ts +0 -0
  1247. /package/dist/components/{custom/labeled-field → labeled-field}/index.d.ts +0 -0
  1248. /package/dist/{utils/coalesceMetric.d.ts → components/metric/coalesce-metric.d.ts} +0 -0
  1249. /package/dist/components/{custom/metric-badge → metric-badge}/index.d.ts +0 -0
  1250. /package/dist/components/{custom/metric-cell → metric-cell}/index.d.ts +0 -0
  1251. /package/dist/components/{custom/metric-stack → metric-stack}/MetricStack.vue.d.ts +0 -0
  1252. /package/dist/components/{custom/metric-stack → metric-stack}/index.d.ts +0 -0
  1253. /package/dist/components/{ui/notification → notification}/index.d.ts +0 -0
  1254. /package/dist/components/{ui/number-field → number-field}/NumberField.vue.d.ts +0 -0
  1255. /package/dist/components/{ui/number-field → number-field}/NumberFieldContent.vue.d.ts +0 -0
  1256. /package/dist/components/{ui/number-field → number-field}/NumberFieldDecrement.vue.d.ts +0 -0
  1257. /package/dist/components/{ui/number-field → number-field}/NumberFieldIncrement.vue.d.ts +0 -0
  1258. /package/dist/components/{ui/number-field → number-field}/NumberFieldInput.vue.d.ts +0 -0
  1259. /package/dist/components/{ui/number-field → number-field}/index.d.ts +0 -0
  1260. /package/dist/components/{custom/pager-dots → pager-dots}/PagerDots.vue.d.ts +0 -0
  1261. /package/dist/components/{custom/pager-dots → pager-dots}/index.d.ts +0 -0
  1262. /package/dist/components/{custom/pager-dots → pager-dots}/pagerWindow.d.ts +0 -0
  1263. /package/dist/components/{custom/paper-backdrop → paper-backdrop}/index.d.ts +0 -0
  1264. /package/dist/components/{ui/popover → popover}/index.d.ts +0 -0
  1265. /package/dist/components/{ui/progress → progress}/ProgressDefault.vue.d.ts +0 -0
  1266. /package/dist/components/{ui/progress → progress}/ProgressGradient.vue.d.ts +0 -0
  1267. /package/dist/components/{ui/progress → progress}/ProgressSectioned.vue.d.ts +0 -0
  1268. /package/dist/components/{ui/progress → progress}/useProgressGeometry.d.ts +0 -0
  1269. /package/dist/components/{custom/pulse → pulse}/Pulse.vue.d.ts +0 -0
  1270. /package/dist/components/{custom/pulse → pulse}/index.d.ts +0 -0
  1271. /package/dist/components/{ui/radio-group → radio-group}/RadioGroup.vue.d.ts +0 -0
  1272. /package/dist/components/{ui/radio-group → radio-group}/RadioGroupItem.vue.d.ts +0 -0
  1273. /package/dist/components/{ui/radio-group → radio-group}/index.d.ts +0 -0
  1274. /package/dist/components/{custom/search → search}/composables/fuzzySearchIndex.d.ts +0 -0
  1275. /package/dist/components/{custom/search → search}/composables/index.d.ts +0 -0
  1276. /package/dist/components/{custom/search → search}/composables/types.d.ts +0 -0
  1277. /package/dist/components/{custom/search → search}/composables/useFuzzySearch.d.ts +0 -0
  1278. /package/dist/components/{custom/search → search}/index.d.ts +0 -0
  1279. /package/dist/components/{ui/section → section}/Section.vue.d.ts +0 -0
  1280. /package/dist/components/{ui/section → section}/index.d.ts +0 -0
  1281. /package/dist/components/{ui/select → select}/Select.vue.d.ts +0 -0
  1282. /package/dist/components/{ui/select → select}/SelectGroup.vue.d.ts +0 -0
  1283. /package/dist/components/{ui/select → select}/SelectItem.vue.d.ts +0 -0
  1284. /package/dist/components/{ui/select → select}/SelectLabel.vue.d.ts +0 -0
  1285. /package/dist/components/{ui/select → select}/SelectScrollDownButton.vue.d.ts +0 -0
  1286. /package/dist/components/{ui/select → select}/SelectScrollUpButton.vue.d.ts +0 -0
  1287. /package/dist/components/{ui/select → select}/SelectSeparator.vue.d.ts +0 -0
  1288. /package/dist/components/{ui/select → select}/SelectTrigger.vue.d.ts +0 -0
  1289. /package/dist/components/{ui/select → select}/SelectValue.vue.d.ts +0 -0
  1290. /package/dist/components/{ui/select → select}/index.d.ts +0 -0
  1291. /package/dist/components/{ui/separator → separator}/Separator.vue.d.ts +0 -0
  1292. /package/dist/components/{ui/separator → separator}/index.d.ts +0 -0
  1293. /package/dist/components/{ui/skeleton → skeleton}/Skeleton.vue.d.ts +0 -0
  1294. /package/dist/components/{ui/skeleton → skeleton}/index.d.ts +0 -0
  1295. /package/dist/{composables/sortable → components/sortable-list/composables}/dropResolver.d.ts +0 -0
  1296. /package/dist/{composables/sortable → components/sortable-list/composables}/ghostRenderer.d.ts +0 -0
  1297. /package/dist/{composables/sortable → components/sortable-list/composables}/index.d.ts +0 -0
  1298. /package/dist/{composables/sortable → components/sortable-list/composables}/touchGate.d.ts +0 -0
  1299. /package/dist/{composables/sortable → components/sortable-list/composables}/transitionTiming.d.ts +0 -0
  1300. /package/dist/components/{custom/spa-view → spa-view}/SpaView.vue.d.ts +0 -0
  1301. /package/dist/components/{custom/spa-view → spa-view}/index.d.ts +0 -0
  1302. /package/dist/components/{custom/split-chars → split-chars}/index.d.ts +0 -0
  1303. /package/dist/components/{custom/stacked-icons → stacked-icons}/StackedIconGroup.vue.d.ts +0 -0
  1304. /package/dist/components/{custom/stacked-icons → stacked-icons}/index.d.ts +0 -0
  1305. /package/dist/components/{custom/status-dot → status-dot}/StatusDot.vue.d.ts +0 -0
  1306. /package/dist/components/{custom/status-dot → status-dot}/index.d.ts +0 -0
  1307. /package/dist/components/{ui/switch → switch}/Switch.vue.d.ts +0 -0
  1308. /package/dist/components/{ui/switch → switch}/index.d.ts +0 -0
  1309. /package/dist/components/{ui/table → table}/Table.vue.d.ts +0 -0
  1310. /package/dist/components/{ui/table → table}/TableBody.vue.d.ts +0 -0
  1311. /package/dist/components/{ui/table → table}/TableCaption.vue.d.ts +0 -0
  1312. /package/dist/components/{ui/table → table}/TableCell.vue.d.ts +0 -0
  1313. /package/dist/components/{ui/table → table}/TableEmpty.vue.d.ts +0 -0
  1314. /package/dist/components/{ui/table → table}/TableHead.vue.d.ts +0 -0
  1315. /package/dist/components/{ui/table → table}/TableHeader.vue.d.ts +0 -0
  1316. /package/dist/components/{ui/table → table}/TableRow.vue.d.ts +0 -0
  1317. /package/dist/components/{ui/table → table}/index.d.ts +0 -0
  1318. /package/dist/components/{custom/tabs → tabs}/index.d.ts +0 -0
  1319. /package/dist/components/{ui/tags-input → tags-input}/TagsInput.vue.d.ts +0 -0
  1320. /package/dist/components/{ui/tags-input → tags-input}/TagsInputInput.vue.d.ts +0 -0
  1321. /package/dist/components/{ui/tags-input → tags-input}/TagsInputItem.vue.d.ts +0 -0
  1322. /package/dist/components/{ui/tags-input → tags-input}/TagsInputItemDelete.vue.d.ts +0 -0
  1323. /package/dist/components/{ui/tags-input → tags-input}/TagsInputItemText.vue.d.ts +0 -0
  1324. /package/dist/components/{ui/tags-input → tags-input}/index.d.ts +0 -0
  1325. /package/dist/components/{ui/textarea → textarea}/Textarea.vue.d.ts +0 -0
  1326. /package/dist/components/{ui/textarea → textarea}/index.d.ts +0 -0
  1327. /package/dist/components/{custom/timeline → timeline}/ContinuousRail.vue.d.ts +0 -0
  1328. /package/dist/components/{custom/timeline → timeline}/ContinuousTimeline.vue.d.ts +0 -0
  1329. /package/dist/components/{custom/timeline → timeline}/ScrubberTimeline.vue.d.ts +0 -0
  1330. /package/dist/components/{custom/timeline → timeline}/SegmentedTimeline.vue.d.ts +0 -0
  1331. /package/dist/components/{custom/timeline → timeline}/geometry.d.ts +0 -0
  1332. /package/dist/components/{custom/timeline → timeline}/index.d.ts +0 -0
  1333. /package/dist/components/{custom/timeline → timeline}/types.d.ts +0 -0
  1334. /package/dist/components/{ui/toast → toast}/ToastAction.vue.d.ts +0 -0
  1335. /package/dist/components/{ui/toast → toast}/ToastClose.vue.d.ts +0 -0
  1336. /package/dist/components/{ui/toast → toast}/ToastDescription.vue.d.ts +0 -0
  1337. /package/dist/components/{ui/toast → toast}/ToastTitle.vue.d.ts +0 -0
  1338. /package/dist/components/{ui/toast → toast}/Toaster.vue.d.ts +0 -0
  1339. /package/dist/components/{ui/toggle-group → toggle-group}/ToggleGroup.vue.d.ts +0 -0
  1340. /package/dist/components/{ui/toggle-group → toggle-group}/ToggleGroupItem.vue.d.ts +0 -0
  1341. /package/dist/components/{ui/toggle-group → toggle-group}/index.d.ts +0 -0
  1342. /package/dist/components/{ui/toggle-group → toggle-group}/toggleGroupContext.d.ts +0 -0
  1343. /package/dist/components/{ui/tooltip → tooltip}/Tooltip.vue.d.ts +0 -0
  1344. /package/dist/components/{ui/tooltip → tooltip}/TooltipContent.vue.d.ts +0 -0
  1345. /package/dist/components/{ui/tooltip → tooltip}/TooltipProvider.vue.d.ts +0 -0
  1346. /package/dist/components/{ui/tooltip → tooltip}/TooltipTrigger.vue.d.ts +0 -0
  1347. /package/dist/components/{ui/tooltip → tooltip}/index.d.ts +0 -0
  1348. /package/dist/components/{custom/typewriter → typewriter}/TypewriterText.vue.d.ts +0 -0
  1349. /package/dist/components/{custom/typewriter → typewriter}/composables/index.d.ts +0 -0
  1350. /package/dist/components/{custom/typewriter → typewriter}/composables/useTypewriter.d.ts +0 -0
  1351. /package/dist/components/{custom/typewriter → typewriter}/index.d.ts +0 -0
  1352. /package/dist/components/{custom/typewriter → typewriter}/types.d.ts +0 -0
  1353. /package/dist/components/{custom/typewriter → typewriter}/utils/keyboard.d.ts +0 -0
  1354. /package/dist/components/{custom/typewriter → typewriter}/utils/pausePatterns.d.ts +0 -0
  1355. /package/dist/components/{custom/typewriter → typewriter}/utils/timing.d.ts +0 -0
  1356. /package/dist/components/{custom/typewriter → typewriter}/utils/typoStateMachine.d.ts +0 -0
  1357. /package/dist/components/{custom/watercolor-dot → watercolor-dot}/WatercolorDot.vue.d.ts +0 -0
  1358. /package/dist/components/{custom/watercolor-dot → watercolor-dot}/index.d.ts +0 -0
  1359. /package/dist/{utils → composables/glass/procedural}/prng.d.ts +0 -0
  1360. /package/dist/{constants-BWj7DkMn.js → constants-D8lSMkOz.js} +0 -0
  1361. /package/dist/{createContext-Cd23P9j0.js → createContext-BQ1Gy_LB.js} +0 -0
  1362. /package/dist/{flow.glsl-DqEGRpl4.js → flow.glsl-CVqPSj8_.js} +0 -0
  1363. /package/dist/{procedural-color.wgsl-C1Y5PkM6.js → procedural-color.wgsl-ByduxnzV.js} +0 -0
  1364. /package/dist/{scrollReader-rc3Ns_NM.js → scrollReader-DzYqPQ6V.js} +0 -0
  1365. /package/dist/{supportsCssTimeline-BWenxvHU.js → supportsCssTimeline-Ie4xJFbD.js} +0 -0
  1366. /package/dist/{useDragVelocity-CjcfX3dA.js → useDragVelocity-BWcNMCux.js} +0 -0
  1367. /package/dist/{useGlobalDark-B4HO9LXG.js → useGlobalDark-DjKMEQE2.js} +0 -0
  1368. /package/dist/{useInterval-BVUI-sez.js → useInterval-ZATRi-1T.js} +0 -0
  1369. /package/dist/{useLiquidFlex-Cc6PjVJD.js → useLiquidFlex-Ch4exNvN.js} +0 -0
  1370. /package/dist/{useResizeObserver-DdEn3v2f.js → useResizeObserver-DDuoBeBo.js} +0 -0
  1371. /package/dist/{useResolveTokenColor-ChOnCckA.js → useResolveTokenColor-DVT5kwv6.js} +0 -0
  1372. /package/dist/{useTextHighlight-Bma3UlKA.js → useTextHighlight-C46Le9u_.js} +0 -0
  1373. /package/dist/{useTimer-BBLGPXR8.js → useTimer-CkDV8SC2.js} +0 -0
  1374. /package/dist/{useViewportReady-C9pYnn7K.js → useViewportReady-c0isoKL8.js} +0 -0
  1375. /package/dist/{vReveal-CT1KtwZA.js → vReveal-DUmiEkX_.js} +0 -0
  1376. /package/dist/{vSpecular-EX7loENl.js → vSpecular-DlYN0UZy.js} +0 -0
  1377. /package/dist/{writeVelocityWeight-Bh83xZfs.js → writeVelocityWeight-D1rvdxJu.js} +0 -0
@@ -1,4 +1,4 @@
1
- import { ref, type CSSProperties } from "vue";
1
+ import { type ComputedRef, type CSSProperties, type MaybeRefOrGetter } from "vue";
2
2
  /**
3
3
  * `useSpecularPointer` — the EVOLUTION of `useSpecularTracking` (BB.W-LENSING). It
4
4
  * writes the catch-light POSITION (`--mouse-x`/`--mouse-y`, as today) PLUS the
@@ -23,11 +23,30 @@ import { ref, type CSSProperties } from "vue";
23
23
  * centred 50% and `--specular-angle` to its `0deg` static rest). The composable
24
24
  * disposes the core (cancel the pending rAF + drop the cached PRM listener) on scope
25
25
  * teardown.
26
+ *
27
+ * BG.W-GLASS-DYNAMICS — the OPTIONAL press-couple (absorbs 13.5, soft-gated by F5.1).
28
+ * A consumer may pass `press` (a 0..1 press scalar — a `useSpringPress` `.value`, or
29
+ * any press signal); it is folded reactively into the emitted style as the ONE
30
+ * `--glass-btn-press-t` channel the `.glass-material::before` specular magnitude reads
31
+ * (material.css). Reusing the SINGLE press channel (never a forked `--*-press-t`) keeps
32
+ * ONE drive, two legs — the gleam SWELLS + SETTLES with the press spring. The merge is
33
+ * a `computed` so the press tracks the spring INDEPENDENTLY of pointer moves (a press
34
+ * settles while the pointer is still). SOFT-GATED: when `press` is OMITTED the emitted
35
+ * style carries NO press channel (the CSS `--glass-btn-press-t` default 0 holds — no
36
+ * hard F5.1 dependency), and the position/angle write is byte-identical to before.
26
37
  */
38
+ export interface UseSpecularPointerOptions {
39
+ /** Optional 0..1 press scalar (soft-gated) folded into `--glass-btn-press-t`. */
40
+ press?: MaybeRefOrGetter<number>;
41
+ }
27
42
  export interface UseSpecularPointer {
28
- /** Bind to the host element's `:style`. Carries `--mouse-x/--mouse-y` + `--specular-angle`. */
29
- specularStyle: ReturnType<typeof ref<CSSProperties>>;
43
+ /**
44
+ * Bind to the host element's `:style`. Carries `--mouse-x/--mouse-y` +
45
+ * `--specular-angle` (+ the press-coupled `--glass-btn-press-t` when `press` is
46
+ * supplied).
47
+ */
48
+ specularStyle: ComputedRef<CSSProperties>;
30
49
  /** Bind to the host's `@pointermove`. Schedules the rAF-coalesced position+angle write (PRM-gated). */
31
50
  onPointerMove: (event: PointerEvent) => void;
32
51
  }
33
- export declare function useSpecularPointer(): UseSpecularPointer;
52
+ export declare function useSpecularPointer(options?: UseSpecularPointerOptions): UseSpecularPointer;
@@ -2,7 +2,7 @@ import { ref, type CSSProperties } from "vue";
2
2
  /**
3
3
  * `useSpecularTracking` — the pointer-anchored moving-specular write seam
4
4
  * (AX.W09). The single DRY home for the catch-light position write that was
5
- * hand-copied VERBATIM in `Card.vue` and `DockIconButton.vue`.
5
+ * hand-copied VERBATIM in `Card.vue` and `DockControl.vue`.
6
6
  *
7
7
  * On pointer-move it writes the cursor position (`--mouse-x`/`--mouse-y`, as
8
8
  * percentages of the host box) onto the host's inline style; the unified
@@ -83,6 +83,14 @@ export declare function facePlateau(g: Vec2, inset: number, uvDeriv: Vec2): numb
83
83
  * swirled coordinate.
84
84
  */
85
85
  export declare function cursorSwirl(g: Vec2, cursor: Vec2, strength: number, radius: number): Vec2;
86
+ /**
87
+ * The `waveFlow` second-flow FREQUENCY RATIO (shared across JS↔GLSL↔WGSL — the round-trip fence).
88
+ * The secondary counter-flow term samples the curl at `warpFreq · this` so it drifts on a slightly
89
+ * different spatial scale (the anti-loop variety) while staying the SAME order of magnitude as the
90
+ * primary. `0.6 · 1.833333 ≈ 1.1` reproduces concentric's unit-scale pair; the GLSL/WGSL
91
+ * transcriptions carry the identical literal.
92
+ */
93
+ export declare const WAVE_FLOW_SECOND_RATIO = 1.833333;
86
94
  /**
87
95
  * A CONTINUOUS divergence-free flow warp gated by the traveling wave — the SMOOTH twin of
88
96
  * `cellTwist` for surfaces that need an unbroken coordinate (the level-set contours shatter
@@ -91,8 +99,21 @@ export declare function cursorSwirl(g: Vec2, cursor: Vec2, strength: number, rad
91
99
  * the SAME traveling Gaussian crest sweeping along `waveDir`. So the contours flow + twist as
92
100
  * the wave passes OVER and THROUGH them, with NO cell-boundary discontinuity. Returns the
93
101
  * warped coordinate.
102
+ *
103
+ * BG.W-GRID-AFFINE — the LOCALLY-AFFINE frequency law. `warpFreq` is the HOST-supplied spatial
104
+ * frequency (in the caller's OWN coordinate units) at which the curl-flow potential is sampled.
105
+ * The caller passes a frequency an ORDER OF MAGNITUDE BELOW its own grid/contour frequency, so
106
+ * the warp-displacement gradient is ~constant across any ONE cell (the warp Jacobian is locally
107
+ * affine): the major gridlines bow as ONE smooth continuous curve across the frame, NEVER the
108
+ * per-cell crackle a cell-scale sampling frequency produces. liquid-grid feeds a CELL-scale
109
+ * coordinate (`uv · gridScale`, span ~14–40 cells) so it passes a tiny `warpFreq` (~0.03 →
110
+ * wavelength of MANY cells); concentric feeds a UNIT-scale domain (`vUv`, span ~1) so it passes
111
+ * the unit-scale `0.6`. The amplitude is UNCHANGED (the curl magnitude is the intrinsic q-space
112
+ * gradient at the fixed `CURL_EPS`, independent of `warpFreq` — only the spatial frequency drops,
113
+ * the bow amplitude `twistMax · env` is preserved). The `t·` drift coefficients are host-agnostic
114
+ * (they set the flow's temporal evolution rate in q-space, independent of `warpFreq`).
94
115
  */
95
- export declare function waveFlow(curlFn: (p: Vec2) => Vec2, g: Vec2, t: number, waveDir: Vec2, waveK: number, waveOmega: number, waveSigma: number, twistMax: number, amp: number): Vec2;
116
+ export declare function waveFlow(curlFn: (p: Vec2) => Vec2, g: Vec2, t: number, waveDir: Vec2, waveK: number, waveOmega: number, waveSigma: number, twistMax: number, amp: number, warpFreq?: number): Vec2;
96
117
  /**
97
118
  * A LOW-octave value-noise topography H(p) — the scalar field concentric extracts level-set
98
119
  * contours of. `octaves` LOW (3) keeps the nested loops CLEAN (not high-freq speckle — the
@@ -1 +1 @@
1
- export declare const WAVE_FIELD_GLSL = "\n#ifndef WAVE_FIELD_TAU\n#define WAVE_FIELD_TAU 6.283185307179586\n#endif\n\n// The traveling-wave envelope \u2014 a moving Gaussian crest band sweeping along waveDir.\nfloat travelingEnvelope(vec2 pivot, float t, vec2 waveDir, float waveK, float waveOmega, float waveSigma) {\n float coord = dot(pivot, waveDir) * waveK - t * waveOmega;\n float crest = fract(coord / WAVE_FIELD_TAU);\n float z = (crest - 0.5) * 2.0;\n return exp(-(z * z) / max(waveSigma, 1e-3));\n}\n\n// The curl-direction scalar \u2014 the smooth low-freq director the per-cell twist follows.\nfloat curlScalar(vec2 cc, float t) {\n vec2 f = curlFBM(vec2(cc.x * 0.5 + t * 0.08, cc.y * 0.5 - t * 0.06));\n return clamp(f.x, -1.0, 1.0);\n}\n\n// The directed-twist FLOOR (the visibility cure): keep the curl SIGN (adjacent cells lean\n// together) but floor the magnitude so a crest-band cell ALWAYS rotates decisively.\n#ifndef WAVE_FIELD_TWIST_FLOOR\n#define WAVE_FIELD_TWIST_FLOOR 0.62\n#endif\nfloat directedTwist(float s, float floorMag) {\n float mag = max(floorMag, abs(s));\n float sgn = tanh(s * 6.0);\n return sgn * mag;\n}\n\n// \u2500\u2500 The FACE leaf (the structurally-absent RE-INVENT \u2014 height-lit filled cell interior) \u2500\u2500\n// Defined ABOVE cellTwist: cellTwist rides cellHeight via the driver so twist + face read ONE\n// envelope.\n\n// The sheet displacement at a cell center = the EXACT traveling-wave scalar the twist rides.\nfloat cellHeight(vec2 cc, float t, vec2 waveDir, float waveK, float waveOmega, float waveSigma, float amp) {\n return travelingEnvelope(cc, t, waveDir, waveK, waveOmega, waveSigma) * amp;\n}\n\n// The pre-twist driver (FOLD A): the cell pivot cc + the crest envelope env the twist AND the\n// face both ride. The face samples height/relief at THIS pre-twist cc (floor(twisted_g) at the\n// crest lights a NEIGHBOUR cell). cc in .xy, env in .z.\nvec3 cellDriver(vec2 g, float cellSize, float t, vec2 waveDir, float waveK, float waveOmega,\n float waveSigma, float amp) {\n float cs = max(cellSize, 1e-3);\n vec2 cc = (floor(g / cs) + 0.5) * cs;\n float env = cellHeight(cc, t, waveDir, waveK, waveOmega, waveSigma, amp);\n return vec3(cc, env);\n}\n\n// The central-difference slope of cellHeight across a cell (eps = 0.5\u00B7cellSize) \u2014 derivative-\n// FREE (NO dFdx on the height) \u2192 Safari WebGL2-safe. Returns \u2207H.\nvec2 faceRelief(vec2 cc, float cellSize, float t, vec2 waveDir, float waveK, float waveOmega,\n float waveSigma, float amp) {\n float eps = max(cellSize, 1e-3) * 0.5;\n float hxp = cellHeight(cc + vec2(eps, 0.0), t, waveDir, waveK, waveOmega, waveSigma, amp);\n float hxm = cellHeight(cc - vec2(eps, 0.0), t, waveDir, waveK, waveOmega, waveSigma, amp);\n float hyp = cellHeight(cc + vec2(0.0, eps), t, waveDir, waveK, waveOmega, waveSigma, amp);\n float hym = cellHeight(cc - vec2(0.0, eps), t, waveDir, waveK, waveOmega, waveSigma, amp);\n return vec2((hxp - hxm) / (2.0 * eps), (hyp - hym) / (2.0 * eps));\n}\n\n// Soft inset-square coverage inside a (warped) cell \u2014 the filled FACE plateau. d is the distance\n// into the cell from the nearest gutter (the Golus triangle-wave); the inset retreats as it grows\n// (the squash). aa = the shader's fwidth(g) (JS passes a fixed uvDeriv).\nfloat facePlateau(vec2 g, float inset, vec2 uvDeriv) {\n vec2 tri = 1.0 - abs(fract(g) * 2.0 - 1.0);\n float d = min(tri.x, tri.y);\n float aa = max(uvDeriv.x, uvDeriv.y) * 1.5;\n return smoothstep(inset, inset + 2.0 * aa, d);\n}\n\n// The cell-local twist about each cell's own center, gated by the traveling wave + directed\n// by the curl flow. amp is the spring-eased envelope amplitude the JS host drives. FOLD C: the\n// TWIST_FLOOR is crest-gated by env so OFF-crest cells relax to flat calm paper (the traveling\n// read, not static foil).\nvec2 cellTwist(vec2 g, float cellSize, float t, vec2 waveDir, float waveK, float waveOmega,\n float waveSigma, float twistMax, float shearMax, float amp) {\n vec3 drv = cellDriver(g, cellSize, t, waveDir, waveK, waveOmega, waveSigma, amp);\n vec2 cc = drv.xy;\n float env = drv.z;\n float floorMag = WAVE_FIELD_TWIST_FLOOR * env; // FOLD C: crest-gated floor\n float theta = twistMax * env * directedTwist(curlScalar(cc, t), floorMag);\n float shear = shearMax * env * directedTwist(curlScalar(cc + vec2(17.3, 9.1), t), floorMag);\n vec2 local = g - cc;\n float ct = cos(theta);\n float st = sin(theta);\n vec2 rot = vec2(ct * local.x - st * local.y, st * local.x + ct * local.y);\n rot.x += shear * rot.y; // a small skew so the box MORPHS, not just rotates\n return cc + rot;\n}\n\n// The CONTINUOUS traveling-wave FLOW warp \u2014 the SMOOTH twin of cellTwist (no per-cell seam;\n// for the level-set contours that shatter into a mesh under the cell discontinuity).\nvec2 waveFlow(vec2 g, float t, vec2 waveDir, float waveK, float waveOmega, float waveSigma,\n float twistMax, float amp) {\n float env = travelingEnvelope(g, t, waveDir, waveK, waveOmega, waveSigma) * amp;\n vec2 f = curlFBM(vec2(g.x * 0.6 + t * 0.05, g.y * 0.6 - t * 0.04));\n vec2 f2 = curlFBM(vec2(g.x * 1.1 - t * 0.03, g.y * 1.1 + t * 0.035));\n float k = twistMax * env;\n return g + (f + f2 * 0.5) * k;\n}\n\n// The local cursor swirl \u2014 the finger twists the cells around it (re-aimed cursorBulge).\nvec2 cursorSwirl(vec2 g, vec2 cursor, float strength, float radius) {\n vec2 to = g - cursor;\n float d2 = dot(to, to);\n float r = max(radius, 1e-4);\n float theta = strength * exp(-d2 / (2.0 * r * r));\n float ct = cos(theta);\n float st = sin(theta);\n return cursor + vec2(ct * to.x - st * to.y, st * to.x + ct * to.y);\n}\n\n// The LOW-octave value-noise topography \u2014 the scalar field concentric extracts contours of.\nfloat heightField(vec2 p, float octavesF, float seed) {\n float v = 0.0;\n float amp = 0.5;\n float freq = 1.0;\n float px = p.x + seed;\n float py = p.y - seed;\n int n = int(clamp(octavesF, 1.0, 6.0));\n for (int i = 0; i < 6; i++) {\n if (i >= n) break;\n v += amp * valueNoise(px * freq, py * freq);\n float rx = 0.8 * px - 0.6 * py;\n float ry = 0.6 * px + 0.8 * py;\n px = rx;\n py = ry;\n freq *= 2.0;\n amp *= 0.5;\n }\n return v;\n}\n\n// The \u03C9=\u221A(g\u00B7k) breathing swell \u2014 basins inflate/deflate with weight.\nfloat waveSwell(float t, float phase) {\n return sin(t * 0.35 + phase) * 0.5 + sin(t * 0.21 + phase * 1.7) * 0.5;\n}\n";
1
+ export declare const WAVE_FIELD_GLSL = "\n#ifndef WAVE_FIELD_TAU\n#define WAVE_FIELD_TAU 6.283185307179586\n#endif\n\n// The traveling-wave envelope \u2014 a moving Gaussian crest band sweeping along waveDir.\nfloat travelingEnvelope(vec2 pivot, float t, vec2 waveDir, float waveK, float waveOmega, float waveSigma) {\n float coord = dot(pivot, waveDir) * waveK - t * waveOmega;\n float crest = fract(coord / WAVE_FIELD_TAU);\n float z = (crest - 0.5) * 2.0;\n return exp(-(z * z) / max(waveSigma, 1e-3));\n}\n\n// The curl-direction scalar \u2014 the smooth low-freq director the per-cell twist follows.\nfloat curlScalar(vec2 cc, float t) {\n vec2 f = curlFBM(vec2(cc.x * 0.5 + t * 0.08, cc.y * 0.5 - t * 0.06));\n return clamp(f.x, -1.0, 1.0);\n}\n\n// The directed-twist FLOOR (the visibility cure): keep the curl SIGN (adjacent cells lean\n// together) but floor the magnitude so a crest-band cell ALWAYS rotates decisively.\n#ifndef WAVE_FIELD_TWIST_FLOOR\n#define WAVE_FIELD_TWIST_FLOOR 0.62\n#endif\nfloat directedTwist(float s, float floorMag) {\n float mag = max(floorMag, abs(s));\n float sgn = tanh(s * 6.0);\n return sgn * mag;\n}\n\n// \u2500\u2500 The FACE leaf (the structurally-absent RE-INVENT \u2014 height-lit filled cell interior) \u2500\u2500\n// Defined ABOVE cellTwist: cellTwist rides cellHeight via the driver so twist + face read ONE\n// envelope.\n\n// The sheet displacement at a cell center = the EXACT traveling-wave scalar the twist rides.\nfloat cellHeight(vec2 cc, float t, vec2 waveDir, float waveK, float waveOmega, float waveSigma, float amp) {\n return travelingEnvelope(cc, t, waveDir, waveK, waveOmega, waveSigma) * amp;\n}\n\n// The pre-twist driver (FOLD A): the cell pivot cc + the crest envelope env the twist AND the\n// face both ride. The face samples height/relief at THIS pre-twist cc (floor(twisted_g) at the\n// crest lights a NEIGHBOUR cell). cc in .xy, env in .z.\nvec3 cellDriver(vec2 g, float cellSize, float t, vec2 waveDir, float waveK, float waveOmega,\n float waveSigma, float amp) {\n float cs = max(cellSize, 1e-3);\n vec2 cc = (floor(g / cs) + 0.5) * cs;\n float env = cellHeight(cc, t, waveDir, waveK, waveOmega, waveSigma, amp);\n return vec3(cc, env);\n}\n\n// The central-difference slope of cellHeight across a cell (eps = 0.5\u00B7cellSize) \u2014 derivative-\n// FREE (NO dFdx on the height) \u2192 Safari WebGL2-safe. Returns \u2207H.\nvec2 faceRelief(vec2 cc, float cellSize, float t, vec2 waveDir, float waveK, float waveOmega,\n float waveSigma, float amp) {\n float eps = max(cellSize, 1e-3) * 0.5;\n float hxp = cellHeight(cc + vec2(eps, 0.0), t, waveDir, waveK, waveOmega, waveSigma, amp);\n float hxm = cellHeight(cc - vec2(eps, 0.0), t, waveDir, waveK, waveOmega, waveSigma, amp);\n float hyp = cellHeight(cc + vec2(0.0, eps), t, waveDir, waveK, waveOmega, waveSigma, amp);\n float hym = cellHeight(cc - vec2(0.0, eps), t, waveDir, waveK, waveOmega, waveSigma, amp);\n return vec2((hxp - hxm) / (2.0 * eps), (hyp - hym) / (2.0 * eps));\n}\n\n// Soft inset-square coverage inside a (warped) cell \u2014 the filled FACE plateau. d is the distance\n// into the cell from the nearest gutter (the Golus triangle-wave); the inset retreats as it grows\n// (the squash). aa = the shader's fwidth(g) (JS passes a fixed uvDeriv).\nfloat facePlateau(vec2 g, float inset, vec2 uvDeriv) {\n vec2 tri = 1.0 - abs(fract(g) * 2.0 - 1.0);\n float d = min(tri.x, tri.y);\n float aa = max(uvDeriv.x, uvDeriv.y) * 1.5;\n return smoothstep(inset, inset + 2.0 * aa, d);\n}\n\n// The cell-local twist about each cell's own center, gated by the traveling wave + directed\n// by the curl flow. amp is the spring-eased envelope amplitude the JS host drives. FOLD C: the\n// TWIST_FLOOR is crest-gated by env so OFF-crest cells relax to flat calm paper (the traveling\n// read, not static foil).\nvec2 cellTwist(vec2 g, float cellSize, float t, vec2 waveDir, float waveK, float waveOmega,\n float waveSigma, float twistMax, float shearMax, float amp) {\n vec3 drv = cellDriver(g, cellSize, t, waveDir, waveK, waveOmega, waveSigma, amp);\n vec2 cc = drv.xy;\n float env = drv.z;\n float floorMag = WAVE_FIELD_TWIST_FLOOR * env; // FOLD C: crest-gated floor\n float theta = twistMax * env * directedTwist(curlScalar(cc, t), floorMag);\n float shear = shearMax * env * directedTwist(curlScalar(cc + vec2(17.3, 9.1), t), floorMag);\n vec2 local = g - cc;\n float ct = cos(theta);\n float st = sin(theta);\n vec2 rot = vec2(ct * local.x - st * local.y, st * local.x + ct * local.y);\n rot.x += shear * rot.y; // a small skew so the box MORPHS, not just rotates\n return cc + rot;\n}\n\n// The CONTINUOUS traveling-wave FLOW warp \u2014 the SMOOTH twin of cellTwist (no per-cell seam;\n// for the level-set contours that shatter into a mesh under the cell discontinuity).\n// BG.W-GRID-AFFINE \u2014 warpFreq is the HOST-supplied curl-sampling spatial frequency (the caller's\n// own coordinate units): an order of magnitude BELOW its grid frequency so the warp is locally\n// affine (major lines bow as ONE smooth curve, no sub-cell crackle). liquid-grid (cell-scale g0)\n// passes ~0.03; concentric (unit-scale p) passes 0.6. The 1.833333 second-flow ratio transcribes\n// WAVE_FLOW_SECOND_RATIO. Amplitude unchanged \u2014 curl magnitude is the intrinsic gradient at the\n// fixed CURL_EPS, independent of warpFreq; the t-drift is host-agnostic.\nvec2 waveFlow(vec2 g, float t, vec2 waveDir, float waveK, float waveOmega, float waveSigma,\n float twistMax, float amp, float warpFreq) {\n float env = travelingEnvelope(g, t, waveDir, waveK, waveOmega, waveSigma) * amp;\n vec2 f = curlFBM(vec2(g.x * warpFreq + t * 0.05, g.y * warpFreq - t * 0.04));\n float wf2 = warpFreq * 1.833333;\n vec2 f2 = curlFBM(vec2(g.x * wf2 - t * 0.03, g.y * wf2 + t * 0.035));\n float k = twistMax * env;\n return g + (f + f2 * 0.5) * k;\n}\n\n// The local cursor swirl \u2014 the finger twists the cells around it (re-aimed cursorBulge).\nvec2 cursorSwirl(vec2 g, vec2 cursor, float strength, float radius) {\n vec2 to = g - cursor;\n float d2 = dot(to, to);\n float r = max(radius, 1e-4);\n float theta = strength * exp(-d2 / (2.0 * r * r));\n float ct = cos(theta);\n float st = sin(theta);\n return cursor + vec2(ct * to.x - st * to.y, st * to.x + ct * to.y);\n}\n\n// The LOW-octave value-noise topography \u2014 the scalar field concentric extracts contours of.\nfloat heightField(vec2 p, float octavesF, float seed) {\n float v = 0.0;\n float amp = 0.5;\n float freq = 1.0;\n float px = p.x + seed;\n float py = p.y - seed;\n int n = int(clamp(octavesF, 1.0, 6.0));\n for (int i = 0; i < 6; i++) {\n if (i >= n) break;\n v += amp * valueNoise(px * freq, py * freq);\n float rx = 0.8 * px - 0.6 * py;\n float ry = 0.6 * px + 0.8 * py;\n px = rx;\n py = ry;\n freq *= 2.0;\n amp *= 0.5;\n }\n return v;\n}\n\n// The \u03C9=\u221A(g\u00B7k) breathing swell \u2014 basins inflate/deflate with weight.\nfloat waveSwell(float t, float phase) {\n return sin(t * 0.35 + phase) * 0.5 + sin(t * 0.21 + phase * 1.7) * 0.5;\n}\n";
@@ -1 +1 @@
1
- export declare const WAVE_FIELD_WGSL = "\nconst WAVE_FIELD_TAU: f32 = 6.283185307179586;\n\n// The traveling-wave envelope \u2014 a moving Gaussian crest band sweeping along waveDir.\nfn travelingEnvelope(pivot: vec2f, t: f32, waveDir: vec2f, waveK: f32, waveOmega: f32, waveSigma: f32) -> f32 {\n let coord = dot(pivot, waveDir) * waveK - t * waveOmega;\n let crest = fract(coord / WAVE_FIELD_TAU);\n let z = (crest - 0.5) * 2.0;\n return exp(-(z * z) / max(waveSigma, 1e-3));\n}\n\n// The curl-direction scalar \u2014 the smooth low-freq director the per-cell twist follows.\nfn curlScalar(cc: vec2f, t: f32) -> f32 {\n let f = curlFBM(vec2f(cc.x * 0.5 + t * 0.08, cc.y * 0.5 - t * 0.06));\n return clamp(f.x, -1.0, 1.0);\n}\n\n// The directed-twist FLOOR (the visibility cure): keep the curl SIGN (adjacent cells lean\n// together) but floor the magnitude so a crest-band cell ALWAYS rotates decisively.\nconst WAVE_FIELD_TWIST_FLOOR: f32 = 0.62;\nfn directedTwist(s: f32, floorMag: f32) -> f32 {\n let mag = max(floorMag, abs(s));\n let sgn = tanh(s * 6.0);\n return sgn * mag;\n}\n\n// \u2500\u2500 The FACE leaf (the structurally-absent RE-INVENT \u2014 height-lit filled cell interior) \u2500\u2500\n// DECLARED ABOVE cellTwist (no WGSL forward declaration): cellTwist rides cellHeight via the\n// driver so twist + face read ONE envelope.\n\n// The sheet displacement at a cell center = the EXACT traveling-wave scalar the twist rides.\nfn cellHeight(cc: vec2f, t: f32, waveDir: vec2f, waveK: f32, waveOmega: f32, waveSigma: f32, amp: f32) -> f32 {\n return travelingEnvelope(cc, t, waveDir, waveK, waveOmega, waveSigma) * amp;\n}\n\n// The pre-twist driver (FOLD A): the cell pivot cc + the crest envelope env the twist AND the\n// face both ride. The face samples height/relief at THIS pre-twist cc (the crest twist crosses\n// the cell boundary \u2192 floor(twisted_g) would light a NEIGHBOUR cell). cc in .xy, env in .z.\nfn cellDriver(g: vec2f, cellSize: f32, t: f32, waveDir: vec2f, waveK: f32, waveOmega: f32,\n waveSigma: f32, amp: f32) -> vec3f {\n let cs = max(cellSize, 1e-3);\n let cc = (floor(g / cs) + 0.5) * cs;\n let env = cellHeight(cc, t, waveDir, waveK, waveOmega, waveSigma, amp);\n return vec3f(cc, env);\n}\n\n// The central-difference slope of cellHeight across a cell (eps = 0.5\u00B7cellSize) \u2014 derivative-\n// FREE (NO dFdx on the height) \u2192 Safari WebGL2-safe. Returns \u2207H.\nfn faceRelief(cc: vec2f, cellSize: f32, t: f32, waveDir: vec2f, waveK: f32, waveOmega: f32,\n waveSigma: f32, amp: f32) -> vec2f {\n let eps = max(cellSize, 1e-3) * 0.5;\n let hxp = cellHeight(cc + vec2f(eps, 0.0), t, waveDir, waveK, waveOmega, waveSigma, amp);\n let hxm = cellHeight(cc - vec2f(eps, 0.0), t, waveDir, waveK, waveOmega, waveSigma, amp);\n let hyp = cellHeight(cc + vec2f(0.0, eps), t, waveDir, waveK, waveOmega, waveSigma, amp);\n let hym = cellHeight(cc - vec2f(0.0, eps), t, waveDir, waveK, waveOmega, waveSigma, amp);\n return vec2f((hxp - hxm) / (2.0 * eps), (hyp - hym) / (2.0 * eps));\n}\n\n// Soft inset-square coverage inside a (warped) cell \u2014 the filled FACE plateau. d is the\n// distance into the cell from the nearest gutter (the Golus triangle-wave); the inset retreats\n// as it grows (the squash). aa = the shader's fwidth(g) (JS passes a fixed uvDeriv).\nfn facePlateau(g: vec2f, inset: f32, uvDeriv: vec2f) -> f32 {\n let tri = 1.0 - abs(fract(g) * 2.0 - 1.0);\n let d = min(tri.x, tri.y);\n let aa = max(uvDeriv.x, uvDeriv.y) * 1.5;\n return smoothstep(inset, inset + 2.0 * aa, d);\n}\n\n// The cell-local twist about each cell's own center, gated by the traveling wave + directed\n// by the curl flow. amp is the spring-eased envelope amplitude the JS host drives. FOLD C: the\n// TWIST_FLOOR is crest-gated by env so OFF-crest cells relax to flat calm paper (the traveling\n// read, not static foil).\nfn cellTwist(g: vec2f, cellSize: f32, t: f32, waveDir: vec2f, waveK: f32, waveOmega: f32,\n waveSigma: f32, twistMax: f32, shearMax: f32, amp: f32) -> vec2f {\n let drv = cellDriver(g, cellSize, t, waveDir, waveK, waveOmega, waveSigma, amp);\n let cc = drv.xy;\n let env = drv.z;\n let floorMag = WAVE_FIELD_TWIST_FLOOR * env; // FOLD C: crest-gated floor\n let theta = twistMax * env * directedTwist(curlScalar(cc, t), floorMag);\n let shear = shearMax * env * directedTwist(curlScalar(cc + vec2f(17.3, 9.1), t), floorMag);\n let local = g - cc;\n let ct = cos(theta);\n let st = sin(theta);\n var rot = vec2f(ct * local.x - st * local.y, st * local.x + ct * local.y);\n rot.x = rot.x + shear * rot.y; // a small skew so the box MORPHS, not just rotates\n return cc + rot;\n}\n\n// The CONTINUOUS traveling-wave FLOW warp \u2014 the SMOOTH twin of cellTwist (no per-cell seam;\n// for the level-set contours that shatter into a mesh under the cell discontinuity).\nfn waveFlow(g: vec2f, t: f32, waveDir: vec2f, waveK: f32, waveOmega: f32, waveSigma: f32,\n twistMax: f32, amp: f32) -> vec2f {\n let env = travelingEnvelope(g, t, waveDir, waveK, waveOmega, waveSigma) * amp;\n let f = curlFBM(vec2f(g.x * 0.6 + t * 0.05, g.y * 0.6 - t * 0.04));\n let f2 = curlFBM(vec2f(g.x * 1.1 - t * 0.03, g.y * 1.1 + t * 0.035));\n let k = twistMax * env;\n return g + (f + f2 * 0.5) * k;\n}\n\n// The local cursor swirl \u2014 the finger twists the cells around it (re-aimed cursorBulge).\nfn cursorSwirl(g: vec2f, cursor: vec2f, strength: f32, radius: f32) -> vec2f {\n let to = g - cursor;\n let d2 = dot(to, to);\n let r = max(radius, 1e-4);\n let theta = strength * exp(-d2 / (2.0 * r * r));\n let ct = cos(theta);\n let st = sin(theta);\n return cursor + vec2f(ct * to.x - st * to.y, st * to.x + ct * to.y);\n}\n\n// The LOW-octave value-noise topography \u2014 the scalar field concentric extracts contours of.\nfn heightField(p: vec2f, octavesF: f32, seed: f32) -> f32 {\n var v = 0.0;\n var amp = 0.5;\n var freq = 1.0;\n var px = p.x + seed;\n var py = p.y - seed;\n let n = i32(clamp(octavesF, 1.0, 6.0));\n for (var i = 0; i < 6; i = i + 1) {\n if (i >= n) { break; }\n v = v + amp * valueNoise(px * freq, py * freq);\n let rx = 0.8 * px - 0.6 * py;\n let ry = 0.6 * px + 0.8 * py;\n px = rx;\n py = ry;\n freq = freq * 2.0;\n amp = amp * 0.5;\n }\n return v;\n}\n\n// The \u03C9=\u221A(g\u00B7k) breathing swell \u2014 basins inflate/deflate with weight.\nfn waveSwell(t: f32, phase: f32) -> f32 {\n return sin(t * 0.35 + phase) * 0.5 + sin(t * 0.21 + phase * 1.7) * 0.5;\n}\n";
1
+ export declare const WAVE_FIELD_WGSL = "\nconst WAVE_FIELD_TAU: f32 = 6.283185307179586;\n\n// The traveling-wave envelope \u2014 a moving Gaussian crest band sweeping along waveDir.\nfn travelingEnvelope(pivot: vec2f, t: f32, waveDir: vec2f, waveK: f32, waveOmega: f32, waveSigma: f32) -> f32 {\n let coord = dot(pivot, waveDir) * waveK - t * waveOmega;\n let crest = fract(coord / WAVE_FIELD_TAU);\n let z = (crest - 0.5) * 2.0;\n return exp(-(z * z) / max(waveSigma, 1e-3));\n}\n\n// The curl-direction scalar \u2014 the smooth low-freq director the per-cell twist follows.\nfn curlScalar(cc: vec2f, t: f32) -> f32 {\n let f = curlFBM(vec2f(cc.x * 0.5 + t * 0.08, cc.y * 0.5 - t * 0.06));\n return clamp(f.x, -1.0, 1.0);\n}\n\n// The directed-twist FLOOR (the visibility cure): keep the curl SIGN (adjacent cells lean\n// together) but floor the magnitude so a crest-band cell ALWAYS rotates decisively.\nconst WAVE_FIELD_TWIST_FLOOR: f32 = 0.62;\nfn directedTwist(s: f32, floorMag: f32) -> f32 {\n let mag = max(floorMag, abs(s));\n let sgn = tanh(s * 6.0);\n return sgn * mag;\n}\n\n// \u2500\u2500 The FACE leaf (the structurally-absent RE-INVENT \u2014 height-lit filled cell interior) \u2500\u2500\n// DECLARED ABOVE cellTwist (no WGSL forward declaration): cellTwist rides cellHeight via the\n// driver so twist + face read ONE envelope.\n\n// The sheet displacement at a cell center = the EXACT traveling-wave scalar the twist rides.\nfn cellHeight(cc: vec2f, t: f32, waveDir: vec2f, waveK: f32, waveOmega: f32, waveSigma: f32, amp: f32) -> f32 {\n return travelingEnvelope(cc, t, waveDir, waveK, waveOmega, waveSigma) * amp;\n}\n\n// The pre-twist driver (FOLD A): the cell pivot cc + the crest envelope env the twist AND the\n// face both ride. The face samples height/relief at THIS pre-twist cc (the crest twist crosses\n// the cell boundary \u2192 floor(twisted_g) would light a NEIGHBOUR cell). cc in .xy, env in .z.\nfn cellDriver(g: vec2f, cellSize: f32, t: f32, waveDir: vec2f, waveK: f32, waveOmega: f32,\n waveSigma: f32, amp: f32) -> vec3f {\n let cs = max(cellSize, 1e-3);\n let cc = (floor(g / cs) + 0.5) * cs;\n let env = cellHeight(cc, t, waveDir, waveK, waveOmega, waveSigma, amp);\n return vec3f(cc, env);\n}\n\n// The central-difference slope of cellHeight across a cell (eps = 0.5\u00B7cellSize) \u2014 derivative-\n// FREE (NO dFdx on the height) \u2192 Safari WebGL2-safe. Returns \u2207H.\nfn faceRelief(cc: vec2f, cellSize: f32, t: f32, waveDir: vec2f, waveK: f32, waveOmega: f32,\n waveSigma: f32, amp: f32) -> vec2f {\n let eps = max(cellSize, 1e-3) * 0.5;\n let hxp = cellHeight(cc + vec2f(eps, 0.0), t, waveDir, waveK, waveOmega, waveSigma, amp);\n let hxm = cellHeight(cc - vec2f(eps, 0.0), t, waveDir, waveK, waveOmega, waveSigma, amp);\n let hyp = cellHeight(cc + vec2f(0.0, eps), t, waveDir, waveK, waveOmega, waveSigma, amp);\n let hym = cellHeight(cc - vec2f(0.0, eps), t, waveDir, waveK, waveOmega, waveSigma, amp);\n return vec2f((hxp - hxm) / (2.0 * eps), (hyp - hym) / (2.0 * eps));\n}\n\n// Soft inset-square coverage inside a (warped) cell \u2014 the filled FACE plateau. d is the\n// distance into the cell from the nearest gutter (the Golus triangle-wave); the inset retreats\n// as it grows (the squash). aa = the shader's fwidth(g) (JS passes a fixed uvDeriv).\nfn facePlateau(g: vec2f, inset: f32, uvDeriv: vec2f) -> f32 {\n let tri = 1.0 - abs(fract(g) * 2.0 - 1.0);\n let d = min(tri.x, tri.y);\n let aa = max(uvDeriv.x, uvDeriv.y) * 1.5;\n return smoothstep(inset, inset + 2.0 * aa, d);\n}\n\n// The cell-local twist about each cell's own center, gated by the traveling wave + directed\n// by the curl flow. amp is the spring-eased envelope amplitude the JS host drives. FOLD C: the\n// TWIST_FLOOR is crest-gated by env so OFF-crest cells relax to flat calm paper (the traveling\n// read, not static foil).\nfn cellTwist(g: vec2f, cellSize: f32, t: f32, waveDir: vec2f, waveK: f32, waveOmega: f32,\n waveSigma: f32, twistMax: f32, shearMax: f32, amp: f32) -> vec2f {\n let drv = cellDriver(g, cellSize, t, waveDir, waveK, waveOmega, waveSigma, amp);\n let cc = drv.xy;\n let env = drv.z;\n let floorMag = WAVE_FIELD_TWIST_FLOOR * env; // FOLD C: crest-gated floor\n let theta = twistMax * env * directedTwist(curlScalar(cc, t), floorMag);\n let shear = shearMax * env * directedTwist(curlScalar(cc + vec2f(17.3, 9.1), t), floorMag);\n let local = g - cc;\n let ct = cos(theta);\n let st = sin(theta);\n var rot = vec2f(ct * local.x - st * local.y, st * local.x + ct * local.y);\n rot.x = rot.x + shear * rot.y; // a small skew so the box MORPHS, not just rotates\n return cc + rot;\n}\n\n// The CONTINUOUS traveling-wave FLOW warp \u2014 the SMOOTH twin of cellTwist (no per-cell seam;\n// for the level-set contours that shatter into a mesh under the cell discontinuity).\n// BG.W-GRID-AFFINE \u2014 warpFreq is the HOST-supplied curl-sampling spatial frequency (the caller's\n// own coordinate units): an order of magnitude BELOW its grid frequency so the warp is locally\n// affine (major lines bow as ONE smooth curve, no sub-cell crackle). liquid-grid (cell-scale g0)\n// passes ~0.03; concentric (unit-scale p) passes 0.6. The 1.833333 second-flow ratio transcribes\n// WAVE_FLOW_SECOND_RATIO. Amplitude unchanged \u2014 curl magnitude is the intrinsic gradient at the\n// fixed CURL_EPS, independent of warpFreq; the t-drift is host-agnostic.\nfn waveFlow(g: vec2f, t: f32, waveDir: vec2f, waveK: f32, waveOmega: f32, waveSigma: f32,\n twistMax: f32, amp: f32, warpFreq: f32) -> vec2f {\n let env = travelingEnvelope(g, t, waveDir, waveK, waveOmega, waveSigma) * amp;\n let f = curlFBM(vec2f(g.x * warpFreq + t * 0.05, g.y * warpFreq - t * 0.04));\n let wf2 = warpFreq * 1.833333;\n let f2 = curlFBM(vec2f(g.x * wf2 - t * 0.03, g.y * wf2 + t * 0.035));\n let k = twistMax * env;\n return g + (f + f2 * 0.5) * k;\n}\n\n// The local cursor swirl \u2014 the finger twists the cells around it (re-aimed cursorBulge).\nfn cursorSwirl(g: vec2f, cursor: vec2f, strength: f32, radius: f32) -> vec2f {\n let to = g - cursor;\n let d2 = dot(to, to);\n let r = max(radius, 1e-4);\n let theta = strength * exp(-d2 / (2.0 * r * r));\n let ct = cos(theta);\n let st = sin(theta);\n return cursor + vec2f(ct * to.x - st * to.y, st * to.x + ct * to.y);\n}\n\n// The LOW-octave value-noise topography \u2014 the scalar field concentric extracts contours of.\nfn heightField(p: vec2f, octavesF: f32, seed: f32) -> f32 {\n var v = 0.0;\n var amp = 0.5;\n var freq = 1.0;\n var px = p.x + seed;\n var py = p.y - seed;\n let n = i32(clamp(octavesF, 1.0, 6.0));\n for (var i = 0; i < 6; i = i + 1) {\n if (i >= n) { break; }\n v = v + amp * valueNoise(px * freq, py * freq);\n let rx = 0.8 * px - 0.6 * py;\n let ry = 0.6 * px + 0.8 * py;\n px = rx;\n py = ry;\n freq = freq * 2.0;\n amp = amp * 0.5;\n }\n return v;\n}\n\n// The \u03C9=\u221A(g\u00B7k) breathing swell \u2014 basins inflate/deflate with weight.\nfn waveSwell(t: f32, phase: f32) -> f32 {\n return sin(t * 0.35 + phase) * 0.5 + sin(t * 0.21 + phase * 1.7) * 0.5;\n}\n";
@@ -0,0 +1,44 @@
1
+ /**
2
+ * The freshly-measured backing geometry the leaf hands the consumer's `resize`. The
3
+ * consumer no longer MEASURES (the leaf owns the gBCR + the bounded ancestor walk +
4
+ * the DPR clamp + the NEVER-300×150 floor, ONE implementation); it only UPLOADS these
5
+ * dims to its viewport/uniforms. `changed` is `false` when the buffer already matched
6
+ * (an idempotent same-box tick — the consumer can skip a redundant uniform upload).
7
+ */
8
+ export interface BackingSize {
9
+ w: number;
10
+ h: number;
11
+ dpr: number;
12
+ changed: boolean;
13
+ }
14
+ /**
15
+ * The consumer's DPR policy — either a flat multiplier or a box-aware resolver (e.g.
16
+ * aurora's 1.5× wash ceiling vs goo-blob's 2× focal `resolveBudgetDpr`). The leaf owns
17
+ * the MEASUREMENT + the floor; the consumer owns ONLY the DPR number.
18
+ */
19
+ export type DprPolicy = number | ((box: {
20
+ w: number;
21
+ h: number;
22
+ }) => number);
23
+ /**
24
+ * BD.W-SUBSTRATE-SIZE-UNIFY (G1) — the ONE canonical backing-store sizer.
25
+ *
26
+ * Aurora's PROVEN gBCR-ancestor sizer, lifted into the agnostic leaf so it lives ONCE
27
+ * (DRY) instead of in N drifted consumer `resize()` closures (the three incompatible
28
+ * `clientWidth || 320` / `clientWidth || canvasSize` / one-parent-gBCR conventions the
29
+ * DELTA-ASSAY reproduced as the live 300×150 stuck-canvas).
30
+ *
31
+ * Measures the LAID-OUT border-box via `getBoundingClientRect` — NOT `clientWidth`,
32
+ * which reads 0 under a `content-visibility:auto` skip (the born-skipped trap). Walks
33
+ * ancestors ONLY when our own rect is still zero (truly un-laid-out), and the walk is
34
+ * BOUNDED (H-B): cap depth at 3 AND stop at the first sized / contained / container /
35
+ * positioned ancestor — never an unbounded gBCR storm to `<body>` (O(depth) reflow per
36
+ * tick), never an over-recovered wide flex/grid grandparent that sizes the backing to
37
+ * the viewport. Idempotent: the realloc (which CLEARS the drawing buffer) is skipped
38
+ * when the buffer already matches the box.
39
+ *
40
+ * Pure CSS-geometry — ZERO dependency on which GPU API is live, so it runs SYNCHRONOUSLY
41
+ * at mount before the async WebGPU device resolves (G2). Engine-identical in Chromium +
42
+ * WebKit (gBCR reflects the real box across a CV skip in both).
43
+ */
44
+ export declare function sizeBacking(canvas: HTMLCanvasElement, dprPolicy: DprPolicy): BackingSize;
@@ -1,41 +1,7 @@
1
1
  export type CanvasSuspendReason = "tab-hidden" | "off-screen" | "off-screen-io" | "manual";
2
- export interface BackingSize {
3
- w: number;
4
- h: number;
5
- dpr: number;
6
- changed: boolean;
7
- }
8
- /**
9
- * The consumer's DPR policy — either a flat multiplier or a box-aware resolver (e.g.
10
- * aurora's 1.5× wash ceiling vs goo-blob's 2× focal `resolveBudgetDpr`). The leaf owns
11
- * the MEASUREMENT + the floor; the consumer owns ONLY the DPR number.
12
- */
13
- export type DprPolicy = number | ((box: {
14
- w: number;
15
- h: number;
16
- }) => number);
17
- /**
18
- * BD.W-SUBSTRATE-SIZE-UNIFY (G1) — the ONE canonical backing-store sizer.
19
- *
20
- * Aurora's PROVEN gBCR-ancestor sizer, lifted into the agnostic leaf so it lives ONCE
21
- * (DRY) instead of in N drifted consumer `resize()` closures (the three incompatible
22
- * `clientWidth || 320` / `clientWidth || canvasSize` / one-parent-gBCR conventions the
23
- * DELTA-ASSAY reproduced as the live 300×150 stuck-canvas).
24
- *
25
- * Measures the LAID-OUT border-box via `getBoundingClientRect` — NOT `clientWidth`,
26
- * which reads 0 under a `content-visibility:auto` skip (the born-skipped trap). Walks
27
- * ancestors ONLY when our own rect is still zero (truly un-laid-out), and the walk is
28
- * BOUNDED (H-B): cap depth at 3 AND stop at the first sized / contained / container /
29
- * positioned ancestor — never an unbounded gBCR storm to `<body>` (O(depth) reflow per
30
- * tick), never an over-recovered wide flex/grid grandparent that sizes the backing to
31
- * the viewport. Idempotent: the realloc (which CLEARS the drawing buffer) is skipped
32
- * when the buffer already matches the box.
33
- *
34
- * Pure CSS-geometry — ZERO dependency on which GPU API is live, so it runs SYNCHRONOUSLY
35
- * at mount before the async WebGPU device resolves (G2). Engine-identical in Chromium +
36
- * WebKit (gBCR reflects the real box across a CV skip in both).
37
- */
38
- export declare function sizeBacking(canvas: HTMLCanvasElement, dprPolicy: DprPolicy): BackingSize;
2
+ import { sizeBacking, type BackingSize, type DprPolicy } from "./backingSize";
3
+ export { sizeBacking };
4
+ export type { BackingSize, DprPolicy };
39
5
  /** The per-frame hooks a backend's `buildContext` returns to the lifecycle core. */
40
6
  export interface CanvasFrameHooks {
41
7
  /** Draw one frame at `timeSec`. */
@@ -59,21 +25,30 @@ export interface CanvasLifecycleOptions {
59
25
  /**
60
26
  * Upload the backing geometry to the viewport/uniforms.
61
27
  *
62
- * BD.W-SUBSTRATE-SIZE-UNIFY (G1): the leaf now MEASURES + sizes the backing store
63
- * (via `sizeBacking`, the ONE sizer) and passes the freshly-computed `BackingSize`
64
- * here so the consumer can never re-derive a wrong one. The arg is OPTIONAL only so
65
- * a legacy consumer that still self-measures keeps compiling during the consumer
66
- * cut-over; a consumer SHOULD read `s` and skip its own gBCR/DPR block. When the
67
- * leaf owns sizing (`dprPolicy` provided) the buffer is already correct on entry —
68
- * the consumer body shrinks to `gl.viewport(0,0,s.w,s.h)` / `uploadResolution`.
28
+ * BD.W-SUBSTRATE-SIZE-UNIFY (G1): the leaf MEASURES + 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
+ * BG.W-VIZ-RESIZE-ADOPT: every GL/WGPU procedural viz has HARD-ADOPTED the leaf sizer
36
+ * (all 9 pass `dprPolicy` + read `s` upload-only; ZERO viz self-measures the backing —
37
+ * `proof:viz` enforces `backing == round(gBCR × dpr)` with no surviving `canvas.width =`
38
+ * self-size). The arg stays optional ONLY for the un-migrated `useCanvas2D` leg + the
39
+ * substrate contract tests; dropping the `?` (the flag-day) is booked to their adopt.
69
40
  */
70
41
  resize: (s?: BackingSize) => void;
71
42
  /**
72
43
  * The consumer's DPR policy, handed to the leaf's `sizeBacking`. When PRESENT the
73
44
  * leaf owns the backing-store MEASUREMENT + sizing (the G1 inversion) and the live
74
45
  * `BackingSize` rides every `resize` call. When ABSENT the leaf falls back to the
75
- * legacy behaviour (the consumer's `resize()` self-measures) — the migration seam
76
- * so a consumer can adopt the leaf sizer one viz at a time without a flag-day break.
46
+ * legacy behaviour (the consumer's `resize()` self-measures) — the migration seam.
47
+ *
48
+ * BG.W-VIZ-RESIZE-ADOPT: the GL/WGPU substrate (the `createGpuSubstrate` picker + both
49
+ * legs) is UNIVERSALLY on this seam now — every one of the 9 procedural viz threads its
50
+ * budget DPR here (`resolveBudgetDpr` / `resolveAuroraWashDpr`), so the STANDARD is
51
+ * `dprPolicy`-present; the ABSENT branch survives only for `useCanvas2D`.
77
52
  */
78
53
  dprPolicy?: DprPolicy;
79
54
  /**
@@ -93,7 +68,7 @@ export interface CanvasLifecycleOptions {
93
68
  * via `sizeBacking` (the reveal belt-and-braces, the load-bearing path on WebKit
94
69
  * where `contentvisibilityautostatechange` support is weaker).
95
70
  *
96
- * Default `false` — OPT-IN. Today several consumers (goo-blob, goo-dot-matrix)
71
+ * Default `false` — OPT-IN. Today several consumers (goo-blob, aurora)
97
72
  * already write `"off-screen-io"` from their OWN `useIntersectionPause`; a leaf IO
98
73
  * defaulting on would DOUBLE-WRITE that reason and breach the one-writer invariant.
99
74
  * The atomic retirement of those per-consumer calls (so the leaf IO becomes the sole
@@ -104,14 +79,20 @@ export interface CanvasLifecycleOptions {
104
79
  /** `rootMargin` for the leaf-composed IO park (G3). Default `"256px"` (pre-warm). */
105
80
  intersectionRootMargin?: string;
106
81
  /**
107
- * BD.W-SUBSTRATE-REVEAL-BLOOM (G6) — the cold-first-paint reveal seam. When set, the
108
- * leaf toggles a `--substrate-reveal-t` 0→1 scalar on the canvas at the cold-arm
109
- * paint (ONCE, never on an IO/CV re-reveal of an already-seen viz). The shader reads
110
- * it to ramp luminance/saturation/drift — a FIELD bloom (the canvas rect stays
111
- * `scale(1)`, no box-zoom gutter). Gated on the Band-0 `--ease-cartoon-punch` +
112
- * `--motion-weight` tokens (NOT shipped today); absent, this is a no-op so the
113
- * substrate paints exactly as before. PRM → the scalar is set to its settled `1`
114
- * immediately (zero ramp).
82
+ * BG.W-VIZ-REVEAL-BLOOM — the one-shot cold-first-VISIBLE entrance bloom. When set,
83
+ * the leaf sets a one-shot `data-substrate-reveal` ATTRIBUTE on the canvas at the
84
+ * moment it FIRST becomes visible (a dedicated one-shot IntersectionObserver — NOT
85
+ * at `arm()`, which a content-skipped / below-fold viz would burn on an invisible
86
+ * paint). The CANVAS-targeted CSS `@keyframes substrate-reveal-bloom` (`viz-reveal.css`)
87
+ * then ramps `filter: brightness()/saturate()` from a dim floor, OVERSHOOTS past 1.0
88
+ * on the `--ease-cartoon-punch` linear() curve (the EFFECTS-channel sanctioned
89
+ * overshoot — opacity clamps at 1.0, only `filter: brightness` can exceed the
90
+ * settle), and settles to the canvas's own no-resting-filter rest — a FIELD bloom
91
+ * (the canvas rect stays `scale(1)`, no box-zoom gutter). The `revealFired` guard
92
+ * keeps it ONE-SHOT: an IO/CV re-reveal of an already-seen viz is a silent re-attach
93
+ * → ZERO second bloom on scroll-off-and-back. PRM → the leaf skips the attr AND the
94
+ * CSS animation sits inside `@media (prefers-reduced-motion: no-preference)`, so the
95
+ * field paints settled from frame 0 (zero ramp). Default `false` (opt-in per viz).
115
96
  */
116
97
  revealBloom?: boolean;
117
98
  }
@@ -0,0 +1,36 @@
1
+ /**
2
+ * The pinned chromatic-dispersion scale — ONE source-of-truth across BOTH refraction
3
+ * stacks (this GLSL floor + the WGSL `glassShader.wgsl` twin). An ABSOLUTE rim-offset
4
+ * multiplier: `|ca| = inward · rim · uChromatic · CHROMATIC_SCALE`. Pinned here so a
5
+ * cross-stack drift (the 0.003/0.004/0.0045 three-way split the Tier-2 literal `0.004`
6
+ * carried) is impossible — the shipped WGSL twin replaces its literal with this value.
7
+ */
8
+ export declare const CHROMATIC_SCALE = 0.0045;
9
+ /** The uniform-name contract — the ONE spelling map the JS binder + the fence read. */
10
+ export declare const GLASS_REFRACT_UNIFORMS: {
11
+ readonly resolution: "uResolution";
12
+ readonly time: "uTime";
13
+ readonly panelCount: "uPanelCount";
14
+ readonly bounds: "uBounds";
15
+ readonly lightPos: "uLightPos";
16
+ readonly blurRadius: "uBlurRadius";
17
+ readonly refractionStrength: "uRefractionStrength";
18
+ /** the fence operator — refraction=depth, hue=this absolute rim offset. */
19
+ readonly chromatic: "uChromatic";
20
+ readonly metalStrength: "uMetalStrength";
21
+ readonly valveKnee: "uValveKnee";
22
+ readonly plateAlphaMax: "uPlateAlphaMax";
23
+ readonly backdrop: "uBackdrop";
24
+ };
25
+ /** The maximum panel count the fragment loop unrolls (mirrors Tier-2 `MAX_PANELS`). */
26
+ export declare const GLASS_REFRACT_MAX_PANELS = 8;
27
+ /** The full-screen-triangle vertex pass (the substrate's standard fullscreen pass). */
28
+ export declare const GLASS_REFRACT_VERT_GLSL = "#version 300 es\nprecision highp float;\nin vec2 aPosition;\nout vec2 vUv;\nvoid main() {\n vUv = aPosition * 0.5 + 0.5; // [-1,1]\u00B2 clip \u2192 [0,1]\u00B2 UV\n gl_Position = vec4(aPosition, 0.0, 1.0);\n}";
29
+ /**
30
+ * The Tier-1 WebGL2 refraction fragment source. Renders the FULL ship pass: squircle
31
+ * depth-refraction → 3×3 blur → absolute-rim chromatic split → curl drapery sheen →
32
+ * ridge-local plate-alpha valve → directional specular + Fresnel rim. Splices the
33
+ * SHARED `CURL_FBM_GLSL` chunk (the drapery term); `potentialFBM` is defined below
34
+ * the uniforms per the splice-order law (the host owns the noise basis).
35
+ */
36
+ export declare const GLASS_REFRACT_FRAG_GLSL = "#version 300 es\nprecision highp float;\n\n#define MAX_PANELS 8\n\nin vec2 vUv;\nout vec4 fragColor;\n\nuniform vec2 uResolution;\nuniform float uTime;\nuniform int uPanelCount;\nuniform vec4 uBounds[MAX_PANELS]; // per-panel rect: xy = origin (UV), zw = size (UV)\nuniform vec2 uLightPos; // key-light position (UV)\nuniform float uBlurRadius; // blur kernel px scale\nuniform float uRefractionStrength; // the DEPTH knob (squircle displacement)\nuniform float uChromatic; // the fence operator \u2014 the absolute rim hue split\nuniform float uMetalStrength; // the drapery/metal sheen composite\nuniform float uValveKnee; // the K12 plate valve knee (structLuma threshold)\nuniform float uPlateAlphaMax; // the alpha the valve firms to over a bright ridge\nuniform sampler2D uBackdrop; // the field render (bound by the keystone FBO pass)\n\n// The pinned cross-stack chromatic scale (ONE source-of-truth; see CHROMATIC_SCALE).\nconst float CHROMATIC_SCALE = 0.0045;\n\n// \u2500\u2500 the ONE backdrop-read wrapper (explicit LOD; the Tier-2 sampleBG discipline) \u2500\u2500\nvec3 sampleBG(vec2 uv) {\n return textureLod(uBackdrop, clamp(uv, 0.0, 1.0), 0.0).rgb;\n}\n\n// 4th-order squircle bevel profile: f(x)=\u2074\u221A(1-(1-x)\u2074). 0 at centre, 1 at rim, the\n// edge-concentrated slope (Snell n=1.5 thin-interior lens, NOT a uniform radial).\nfloat squircleProfile(float x) {\n float t = 1.0 - clamp(x, 0.0, 1.0);\n float t4 = t * t * t * t;\n return sqrt(sqrt(max(0.0, 1.0 - t4)));\n}\n\nfloat fresnel(float cosTheta, float ior) {\n float r0 = pow((1.0 - ior) / (1.0 + ior), 2.0);\n return r0 + (1.0 - r0) * pow(1.0 - cosTheta, 5.0);\n}\n\nfloat luma(vec3 c) { return dot(c, vec3(0.2126, 0.7152, 0.0722)); }\n\n// scalar fbm potential \u2014 the host's noise basis, wrapped so curlFBM stays basis-\n// agnostic (the flow.glsl splice-order law). A cheap value-noise fbm for the sheen.\nfloat hash21(vec2 p) {\n vec3 p3 = fract(vec3(p.xyx) * 0.1031);\n p3 += dot(p3, p3.yzx + 33.33);\n return fract((p3.x + p3.y) * p3.z);\n}\nfloat vnoise(vec2 p) {\n vec2 i = floor(p);\n vec2 f = fract(p);\n vec2 w = f * f * (3.0 - 2.0 * f);\n return mix(mix(hash21(i), hash21(i + vec2(1.0, 0.0)), w.x),\n mix(hash21(i + vec2(0.0, 1.0)), hash21(i + vec2(1.0, 1.0)), w.x), w.y);\n}\nfloat potentialFBM(vec2 p) {\n float v = 0.0, a = 0.5;\n vec2 q = p;\n for (int i = 0; i < 3; i++) { v += a * vnoise(q); q = q * 2.02 + vec2(1.7, 9.2); a *= 0.5; }\n return v;\n}\n\n\nconst float CURL_EPS = 0.012;\n\n// Scalar fbm potential psi \u2014 the host's noise basis, wrapped so the curl operator is\n// basis-agnostic. A host carrying its own fbm defines this as: return fbm(p);\nfloat potentialFBM(vec2 p);\n\n// \u2207\u00D7\u03C8 in 2D \u2014 the divergence-free flow direction. Central finite differences of the\n// scalar potential give the partials; the cross-pairing (\u2202y, \u2212\u2202x) is the 2D curl.\nvec2 curlFBM(vec2 p) {\n float dx = potentialFBM(p + vec2(CURL_EPS, 0.0)) - potentialFBM(p - vec2(CURL_EPS, 0.0));\n float dy = potentialFBM(p + vec2(0.0, CURL_EPS)) - potentialFBM(p - vec2(0.0, CURL_EPS));\n // \u03C8-gradient is (dx, dy)/(2\u00B7eps); the curl rotates it 90\u00B0: (\u2202\u03C8/\u2202y, \u2212\u2202\u03C8/\u2202x).\n vec2 g = vec2(dx, dy) / (2.0 * CURL_EPS);\n return vec2(g.y, -g.x);\n}\n\n\n// The glass material over one panel rect. Every sample flows through sampleBG.\nvec4 glassSample(vec2 uv, vec4 b) {\n vec2 gmin = b.xy;\n vec2 size = b.zw;\n vec2 local = (uv - gmin) / size; // 0..1 within panel\n vec2 centered = local - vec2(0.5); // -0.5..0.5\n\n // REFRACTION = DEPTH: rim-concentrated squircle displacement (a pure UV offset).\n float r = clamp(length(centered) * 2.0, 0.0, 1.0);\n float prof = squircleProfile(r);\n vec2 dir = normalize(centered + vec2(1e-5));\n vec2 disp = dir * prof * (uRefractionStrength * 0.04 / 1.5); // n=1.5\n vec2 refrUv = uv + disp;\n\n // the canonical edge-band rim mask (GLSL source-of-truth) \u2014 hue rides the RIM only.\n vec2 toEdge = vec2(0.5) - abs(centered); // 0 at the panel edge, 0.5 at centre\n float edge = min(toEdge.x, toEdge.y);\n float rim = 1.0 - smoothstep(0.0, 0.16, edge); // 1 at the rim band, 0 by 16% inward\n\n vec2 px = 1.0 / uResolution;\n\n // 3\u00D73 blur around the displaced UV (the demoted-blur read carrier) \u2014 explicit LOD.\n vec3 col = vec3(0.0);\n float wsum = 0.0;\n for (int x = -1; x <= 1; x++) {\n for (int y = -1; y <= 1; y++) {\n vec2 o = vec2(float(x), float(y)) * px * max(uBlurRadius, 0.5);\n float wgt = 1.0 - 0.25 * float(abs(x) + abs(y));\n col += sampleBG(refrUv + o) * wgt;\n wsum += wgt;\n }\n }\n col /= wsum;\n\n // HUE = ABSOLUTE rim offset: split R/B by ca = inward \u00B7 rim \u00B7 uChromatic \u00B7 CHROMATIC_SCALE.\n vec2 inward = dir;\n vec2 ca = inward * rim * uChromatic * CHROMATIC_SCALE;\n float cr = sampleBG(refrUv + ca).r;\n float cb = sampleBG(refrUv - ca).b;\n col.r = mix(col.r, cr, rim * 0.6);\n col.b = mix(col.b, cb, rim * 0.6);\n\n // FULL PASS \u2014 the curl-drapery metal sheen (2nd curlFBM), gated by uMetalStrength.\n vec2 flow = curlFBM(local * 3.0 + uTime * 0.05);\n float sheen = potentialFBM(local * 5.0 + flow * 1.5 + uTime * 0.08);\n col += vec3(smoothstep(0.55, 0.95, sheen) * uMetalStrength * 0.12);\n\n // directional specular + Fresnel rim.\n vec3 n = normalize(vec3(centered * 0.6, 1.0));\n float spec = fresnel(max(n.z, 0.0), 1.5);\n vec2 ldir = normalize(uLightPos - uv);\n float ldot = max(dot(centered, ldir), 0.0);\n col += vec3(spec * (0.3 + 0.7 * ldot) * 0.15);\n\n // K12 ridge-local plate VALVE: firm the alpha toward uPlateAlphaMax over a BRIGHT\n // ridge (AA legibility); the dim valley stays translucent so the metal reads.\n float structLuma = luma(col);\n float valve = smoothstep(uValveKnee, 1.0, structLuma);\n float plateA = mix(0.9, uPlateAlphaMax, valve);\n\n return vec4(col, plateA);\n}\n\nvoid main() {\n vec2 uv = vUv;\n vec3 color = sampleBG(uv); // BASE: the field passes through unchanged.\n float alpha = 1.0;\n\n for (int i = 0; i < MAX_PANELS; i++) {\n if (i >= uPanelCount) break;\n vec4 b = uBounds[i];\n vec2 gmin = b.xy;\n vec2 gmax = b.xy + b.zw;\n bool inside = uv.x >= gmin.x && uv.x <= gmax.x && uv.y >= gmin.y && uv.y <= gmax.y;\n if (inside) {\n vec4 s = glassSample(uv, b);\n color = s.rgb;\n alpha = s.a;\n }\n }\n\n fragColor = vec4(color, alpha);\n}";
@@ -76,7 +76,7 @@ export interface WebGLCanvasOptions {
76
76
  composeIntersectionPark?: boolean;
77
77
  /** `rootMargin` for the leaf IO park (G3). */
78
78
  intersectionRootMargin?: string;
79
- /** Fire the cold-first-paint reveal bloom (G6, gated on Band-0 tokens). Default `false`. */
79
+ /** Fire the one-shot cold-first-VISIBLE entrance bloom (BG.W-VIZ-REVEAL-BLOOM — the `data-substrate-reveal` attr). Default `false`. */
80
80
  revealBloom?: boolean;
81
81
  /**
82
82
  * Build the program + geometry on a fresh context. Called on `arm()` AND on
@@ -0,0 +1,42 @@
1
+ import type { CanvasSuspendReason } from "./createCanvasLifecycle";
2
+ /**
3
+ * The scheduler seam the observers drive. Each observer writes a DISTINCT suspend
4
+ * reason (`tab-hidden` / `off-screen` / `off-screen-io`) — the one-writer-per-reason
5
+ * invariant — and reads the scheduler's live `armed`/`hooks`/`disposed`/`reducedMotion`
6
+ * state through the getters (never a shared closure var, so the two files stay decoupled).
7
+ */
8
+ export interface CanvasVisibilityDeps {
9
+ canvas: HTMLCanvasElement;
10
+ suspend: (reason: CanvasSuspendReason) => void;
11
+ resume: (reason: CanvasSuspendReason) => void;
12
+ resize: () => void;
13
+ wake: () => void;
14
+ isArmed: () => boolean;
15
+ hasHooks: () => boolean;
16
+ isDisposed: () => boolean;
17
+ isReducedMotion: () => boolean;
18
+ composeIntersectionPark: boolean;
19
+ intersectionRootMargin?: string;
20
+ revealBloom: boolean;
21
+ }
22
+ export interface CanvasVisibility {
23
+ /**
24
+ * BD.W-SUBSTRATE-SIZE-UNIFY (G2) — size the backing store + start the leaf RO
25
+ * SYNCHRONOUSLY, decoupled from the (async) context acquire. Idempotent: a no-op
26
+ * once it has run. The WebGPU backend calls this BEFORE its async device request so
27
+ * the canvas is sharp from frame 0 while the device resolves.
28
+ */
29
+ presize(): void;
30
+ /** Bind the content-visibility + intersection park observers (called at arm). */
31
+ bindPark(): void;
32
+ /** Arm the one-shot first-visible entrance bloom (called at arm, after armed=true). */
33
+ armRevealBloom(): void;
34
+ /** Detach every observer/listener owned here. */
35
+ dispose(): void;
36
+ }
37
+ /**
38
+ * The canvas visibility observers. Constructing this binds the tab-visibility owner +
39
+ * seeds the initial `document.hidden` suspend (the pre-arm seed), matching the prior
40
+ * inline behaviour byte-for-byte.
41
+ */
42
+ export declare function createCanvasVisibility(deps: CanvasVisibilityDeps): CanvasVisibility;
@@ -37,10 +37,11 @@ export interface GpuSubstrateOptions {
37
37
  /** `rootMargin` for the leaf IO park (G3). Default `"256px"`. */
38
38
  intersectionRootMargin?: string;
39
39
  /**
40
- * G6 — fire the cold-first-paint reveal bloom (a one-shot `--substrate-reveal-t`
41
- * 0→1 the shader reads to ramp the field from within). Gated on the Band-0
42
- * `--ease-cartoon-punch` + `--motion-weight` tokens; a no-op until they land.
43
- * Default `false`.
40
+ * BG.W-VIZ-REVEAL-BLOOM — fire the one-shot cold-first-VISIBLE entrance bloom (a
41
+ * one-shot `data-substrate-reveal` attr on the canvas the CSS `@keyframes
42
+ * substrate-reveal-bloom` reads to ramp `filter: brightness()` from a dim floor,
43
+ * overshoot past 1.0 on `--ease-cartoon-punch`, then settle). Fires at first-visible,
44
+ * one-shot (zero second bloom), PRM-instant. Default `false` (opt-in per viz).
44
45
  */
45
46
  revealBloom?: boolean;
46
47
  /** WebGPU `context.configure` alpha mode (default `"premultiplied"`). */
@@ -1,6 +1,7 @@
1
- import { type BackingSize, type DprPolicy } from "../webgl/createCanvasLifecycle";
2
1
  export type { BackingSize, DprPolicy } from "../webgl/createCanvasLifecycle";
3
- export { WebGPUInitError } from "./webgpuDevice";
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";
4
5
  /**
5
6
  * The ONE `navigator.gpu` capability probe (the single-bootstrap rule — mirrors
6
7
  * `probeWebGL2Renderer`). SSR-safe (returns `false` with no `navigator`). The picker
@@ -9,20 +10,6 @@ export { WebGPUInitError } from "./webgpuDevice";
9
10
  * clause A reds a direct call).
10
11
  */
11
12
  export declare function supportsWebGPU(): boolean;
12
- /**
13
- * The bound on the adapter/device acquisition (ms). `requestAdapter()` /
14
- * `requestDevice()` can resolve NEITHER way on a hanging host (a headless / virtualized-
15
- * Metal + some-Chrome class). A REAL cold acquire on a healthy Metal-3 host was live-
16
- * measured at ~3478ms (the FIRST `requestDevice` on a cold GPU process) — well over the
17
- * prior tight 2500ms ceiling, which converted a slow-but-fine cold acquire into a FALSE
18
- * hang so the WGSL primary was never exercised (every viz silently downgraded to WebGL2
19
- * forever — the Safari-primary surface the "broken TOTALLY" reports live on, masked by the
20
- * always-winning fallback). 6000ms lets the real cold acquire through while a genuine wedge
21
- * (a device that never settles) still falls to the WebGL2 net before the user perceives a
22
- * permanent blank. With the SHARED device warm (`acquireSharedDevice`) the ceiling is hit
23
- * at most ONCE per page, not N-times-per-canvas — a single ≤6s race, never N.
24
- */
25
- export declare const WEBGPU_ACQUIRE_TIMEOUT_MS = 6000;
26
13
  /**
27
14
  * Reset the PROCESS-SHARED device memo. The shared-device warm (D3a) is a module-level
28
15
  * singleton — the first canvas on a page pays the cold `requestAdapter` → `requestDevice`
@@ -34,99 +21,4 @@ export declare const WEBGPU_ACQUIRE_TIMEOUT_MS = 6000;
34
21
  * own test isolation (no consumer reaches for it).
35
22
  */
36
23
  export declare function __resetSharedGpuDeviceForTest(): void;
37
- export type WebGPUSuspendReason = "tab-hidden" | "off-screen" | "off-screen-io" | "manual";
38
- /**
39
- * The per-frame hooks a consumer's `setup(device, context, format)` returns. The
40
- * consumer owns the WGSL pipeline + bind groups + the per-frame command-encoder
41
- * record/submit; the substrate owns the schedule.
42
- */
43
- export interface WebGPUCanvasFrame {
44
- /**
45
- * Draw one frame at `timeSec`: the consumer records a command encoder, begins a
46
- * render pass against the current swap-chain texture view
47
- * (`context.getCurrentTexture().createView()`), draws, and submits.
48
- */
49
- frame: (timeSec: number) => void;
50
- /** Demand-gate: is there live motion to render next frame? `false` → park. */
51
- shouldContinue: () => boolean;
52
- /**
53
- * Upload the backing geometry. BD.W-SUBSTRATE-SIZE-UNIFY: when a `dprPolicy` is
54
- * supplied the leaf sizes the backing + passes the live `BackingSize` here (the
55
- * WGSL swap chain auto-tracks the backing, so the consumer body shrinks to an aspect
56
- * upload). The arg is optional so a legacy self-measuring consumer keeps compiling.
57
- */
58
- resize: (s?: BackingSize) => void;
59
- /** Frame time from elapsed seconds — the consumer owns frozen/reduced-motion. */
60
- time?: (elapsedSec: number) => number;
61
- /** Release per-instance GPU resources (pipelines/buffers/bind groups). Runs on dispose + before a restore re-setup. */
62
- teardown?: () => void;
63
- }
64
- export interface WebGPUCanvasOptions {
65
- /** `context.configure` alpha mode (the consumer's — default `"premultiplied"`). */
66
- alphaMode?: GPUCanvasAlphaMode;
67
- /** Extra device-request options (features/limits). */
68
- deviceDescriptor?: GPUDeviceDescriptor;
69
- /** Adapter-request options (e.g. `powerPreference`). */
70
- adapterOptions?: GPURequestAdapterOptions;
71
- /** `"capture"` pre-seeds the `manual` suspension (renderAt-only). Default `"live"`. */
72
- mode?: "live" | "capture";
73
- /**
74
- * Honor `prefers-reduced-motion: reduce` by painting ONE static frame then
75
- * parking the loop. The shared lifecycle core live-monitors the query via a
76
- * `matchMedia` `change` listener and re-arms (one static frame) on un-reduce.
77
- * Default `true` for live mode, `false` for capture mode.
78
- */
79
- respectReducedMotion?: boolean;
80
- /**
81
- * BD.W-SUBSTRATE-SIZE-UNIFY (G1/G2) — the consumer's DPR policy. When PRESENT the
82
- * leaf sizes the backing SYNCHRONOUSLY at mount (via `presize`, BEFORE the async
83
- * device acquire — the ≤6s blurry-flash close) and hands the live `BackingSize` to
84
- * `resize(s)`. When ABSENT the legacy path runs (the consumer self-measures).
85
- */
86
- dprPolicy?: DprPolicy;
87
- /** Compose the leaf IO park (G3). Default `false` (opt-in; see createCanvasLifecycle). */
88
- composeIntersectionPark?: boolean;
89
- /** `rootMargin` for the leaf IO park (G3). */
90
- intersectionRootMargin?: string;
91
- /** Fire the cold-first-paint reveal bloom (G6, gated on Band-0 tokens). Default `false`. */
92
- revealBloom?: boolean;
93
- /**
94
- * Build the WGSL pipeline + bind groups on the resolved device. Called on the
95
- * async arm AND on every device-restore. Returns the per-frame hooks.
96
- */
97
- setup: (device: GPUDevice, context: GPUCanvasContext, format: GPUTextureFormat) => WebGPUCanvasFrame;
98
- /** Surface a device-init / validation failure (no WebGPU adapter, a `setup` throw). */
99
- onInitError?: (error: unknown) => void;
100
- }
101
- export interface WebGPUCanvasHandle {
102
- /**
103
- * Run the expensive ASYNC init (adapter + device + context.configure + `setup`)
104
- * THEN arm the loop. Resolves once armed (or rejects-via-`onInitError` on a
105
- * device-unavailable / `setup` failure). Idempotent; a no-op post-dispose.
106
- */
107
- armAsync: () => Promise<void>;
108
- /**
109
- * Synchronous `arm` — a no-op until `armAsync` has resolved the device (the
110
- * uniform-handle parity with the synchronous backends; the picker calls
111
- * `armAsync` for the WebGPU path). Idempotent.
112
- */
113
- arm: () => void;
114
- /** BD.W-SUBSTRATE-SIZE-UNIFY (G2) — size the backing + start the leaf RO synchronously, before the async acquire. */
115
- presize: () => void;
116
- suspend: (reason?: WebGPUSuspendReason) => void;
117
- resume: (reason?: WebGPUSuspendReason) => void;
118
- /** Re-arm a parked loop (a setter that re-introduced motion calls this). */
119
- wake: () => void;
120
- /** Draw one frame at `timeSec` out-of-loop (capture / thumbnail). */
121
- renderAt: (timeSec: number) => void;
122
- dispose: () => void;
123
- /** The live device (null before armAsync / after dispose / mid-loss). */
124
- readonly device: GPUDevice | null;
125
- /**
126
- * The live `prefers-reduced-motion: reduce` state. The shared lifecycle core
127
- * owns + re-monitors it; consumers read it (e.g. a viz freezes its frame time
128
- * at the authored offset while this is `true`).
129
- */
130
- readonly reducedMotion: boolean;
131
- }
132
24
  export declare function createWebGPUCanvas(canvas: HTMLCanvasElement, options: WebGPUCanvasOptions): WebGPUCanvasHandle;