@mkbabb/glass-ui 4.0.1 → 4.1.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.
- package/dist/{CardAction-CW7a0m8M.js → CardAction-8whJrLWt.js} +23 -8
- package/dist/{CommandShortcut-DvZNQ_HF.js → CommandShortcut-D3yxgHNn.js} +23 -12
- package/dist/{ConfiguratorRow-BR4l-ixA.js → ConfiguratorRow-CaP7U3ZA.js} +11 -11
- package/dist/ContextMenuContent-B3ZsheLV.js +90 -0
- package/dist/{ContextMenuSubContent-xol4sD2q.js → ContextMenuSubContent-DDRID3qC.js} +15 -15
- package/dist/{DataTable-CuKwF7wr.js → DataTable-Bc9kUtu_.js} +2 -2
- package/dist/{DialogContent-DcKK8k9i.js → DialogContent-6JtTB5x2.js} +8 -5
- package/dist/DialogFooter-9phqcRIS.js +80 -0
- package/dist/DialogScrollContent-TTuovQst.js +93 -0
- package/dist/HoverCardContent-Bel1gdLZ.js +88 -0
- package/dist/{IconChip-BTD-nay5.js → IconChip-DhbdGdFQ.js} +1 -1
- package/dist/{IconTooltip-Bl8gFZ8d.js → IconTooltip-B0zimd2H.js} +1 -1
- package/dist/Input-Cg9DF62r.js +57 -0
- package/dist/{Notification-VUwexFUf.js → Notification-CphK7AAm.js} +3 -3
- package/dist/NumberFieldContent-D8cXeyO4.js +140 -0
- package/dist/PagerDots-Cjx96la-.js +98 -0
- package/dist/{SelectScrollDownButton-CrA8F0iV.js → SelectScrollDownButton-DAKCBEdW.js} +62 -57
- package/dist/{SelectSeparator-DXswVdRz.js → SelectSeparator-C2UGOkXF.js} +1 -1
- package/dist/Separator-DQcwC2TR.js +44 -0
- package/dist/Switch-B8RscmRu.js +49 -0
- package/dist/{Toaster-Bw4xR8xV.js → Toaster-D9qIHjBI.js} +1 -1
- package/dist/{ToggleGroupItem-pEM9vIhs.js → ToggleGroupItem-BLtr3TJq.js} +2 -2
- package/dist/TooltipProvider-BJ_Y5EGX.js +109 -0
- package/dist/animated-digit.js +1 -1
- package/dist/api/index.d.ts +15 -32
- package/dist/api/types-extra.d.ts +31 -0
- package/dist/api.js +1 -1
- package/dist/aurora.js +579 -251
- package/dist/border-progress.js +49 -57
- package/dist/{button-DYCUa-tH.js → button-5dY1Dvhd.js} +13 -14
- package/dist/button.js +1 -1
- package/dist/canvas.js +2 -3
- package/dist/card.js +1 -1
- package/dist/carousel.js +20 -20
- package/dist/color-Cs0-oxYL.js +116 -0
- package/dist/color.js +2 -2
- package/dist/command.js +1 -1
- package/dist/completion-seal.d.ts +1 -0
- package/dist/completion-seal.js +89 -0
- package/dist/components/custom/aurora/Aurora.vue.d.ts +10 -5
- package/dist/components/custom/aurora/composables/color.d.ts +13 -0
- package/dist/components/custom/aurora/composables/frameLoop.d.ts +9 -0
- package/dist/components/custom/aurora/composables/runtime.d.ts +12 -0
- package/dist/components/custom/aurora/composables/uniformBridgeWGPU.d.ts +11 -2
- package/dist/components/custom/aurora/composables/wgpuSetup.d.ts +8 -0
- package/dist/components/custom/aurora/constants/presets.d.ts +18 -0
- package/dist/components/custom/aurora/constants/renderMode.d.ts +16 -8
- package/dist/components/custom/aurora/constants/shaders/aurora-mediums.wgsl.d.ts +1 -0
- package/dist/components/custom/aurora/constants/shaders/aurora.wgsl.d.ts +1 -1
- package/dist/components/custom/border-progress/composables/spectrum-walk.d.ts +25 -0
- package/dist/components/custom/border-progress/composables/useBorderSpectrum.d.ts +14 -18
- package/dist/components/custom/border-progress/index.d.ts +1 -1
- package/dist/components/custom/completion-seal/CompletionSeal.vue.d.ts +21 -0
- package/dist/components/custom/completion-seal/composables/useCompletionSeal.d.ts +37 -0
- package/dist/components/custom/completion-seal/constants.d.ts +46 -0
- package/dist/components/custom/completion-seal/index.d.ts +4 -0
- package/dist/components/custom/concentric/composables/concentricGLSetup.d.ts +7 -0
- package/dist/components/custom/concentric/composables/concentricWGPUSetup.d.ts +9 -0
- package/dist/components/custom/concentric/composables/ringField.d.ts +57 -16
- package/dist/components/custom/concentric/composables/uniformBridgeWGPU.d.ts +2 -1
- package/dist/components/custom/concentric/composables/useConcentric.d.ts +4 -4
- package/dist/components/custom/concentric/constants.d.ts +30 -6
- package/dist/components/custom/concentric/index.d.ts +2 -2
- package/dist/components/custom/concentric/shaders/concentric.glsl.d.ts +2 -2
- package/dist/components/custom/concentric/shaders/concentric.wgsl.d.ts +1 -1
- package/dist/components/custom/confirm-dialog/ConfirmDialog.vue.d.ts +3 -3
- package/dist/components/custom/constellation/Constellation.vue.d.ts +5 -4
- package/dist/components/custom/constellation/composables/constellationGLSetup.d.ts +10 -0
- package/dist/components/custom/constellation/composables/constellationWGPUSetup.d.ts +19 -0
- package/dist/components/custom/constellation/composables/uniformBridgeWGPU.d.ts +66 -0
- package/dist/components/custom/constellation/composables/useConstellation.d.ts +3 -10
- package/dist/components/custom/constellation/constants.d.ts +33 -0
- package/dist/components/custom/constellation/constellationField.d.ts +31 -1
- package/dist/components/custom/constellation/constellationInteraction.d.ts +23 -14
- package/dist/components/custom/constellation/constellationRender.d.ts +25 -0
- package/dist/components/custom/constellation/constellationTypes.d.ts +38 -0
- package/dist/components/custom/constellation/constellationWell.d.ts +15 -0
- package/dist/components/custom/constellation/index.d.ts +5 -5
- package/dist/components/custom/constellation/shaders/constellation-lines.glsl.d.ts +2 -0
- package/dist/components/custom/constellation/shaders/constellation-lines.wgsl.d.ts +1 -0
- package/dist/components/custom/constellation/shaders/constellation-points.glsl.d.ts +2 -0
- package/dist/components/custom/constellation/shaders/constellation-points.wgsl.d.ts +1 -0
- package/dist/components/custom/deck/DeckPager.vue.d.ts +29 -0
- package/dist/components/custom/deck/composables/useDeck.d.ts +27 -0
- package/dist/components/custom/deck/composables/useDeckKeyboard.d.ts +25 -0
- package/dist/components/custom/deck/composables/useDeckSpring.d.ts +22 -0
- package/dist/components/custom/deck/constants.d.ts +14 -0
- package/dist/components/custom/deck/index.d.ts +8 -0
- package/dist/components/custom/dock/DockIconButton.vue.d.ts +12 -0
- package/dist/components/custom/dock/DockStack.vue.d.ts +65 -0
- package/dist/components/custom/dock/GlassDock.vue.d.ts +4 -2
- package/dist/components/custom/dock/composables/dockMorphMeasure.d.ts +80 -0
- package/dist/components/custom/dock/composables/index.d.ts +2 -0
- package/dist/components/custom/dock/composables/useDockSearch.d.ts +85 -0
- package/dist/components/custom/dock/composables/useDockShellProps.d.ts +11 -0
- package/dist/components/custom/dock/constants.d.ts +18 -14
- package/dist/components/custom/dock/index.d.ts +5 -2
- package/dist/components/custom/dot-flow-field/DotFlowField.vue.d.ts +15 -11
- package/dist/components/custom/dot-flow-field/composables/flowField.d.ts +48 -6
- package/dist/components/custom/dot-flow-field/composables/uniformBridgeWGPU.d.ts +23 -8
- package/dist/components/custom/dot-flow-field/composables/useDotFlowField.d.ts +6 -5
- package/dist/components/custom/dot-flow-field/composables/useFlowParticles.d.ts +18 -5
- package/dist/components/custom/dot-flow-field/constants.d.ts +42 -21
- package/dist/components/custom/dot-flow-field/index.d.ts +2 -2
- package/dist/components/custom/dot-flow-field/shaders/flow-field.compute.wgsl.d.ts +1 -1
- package/dist/components/custom/dot-flow-field/shaders/flow-field.glsl.d.ts +4 -20
- package/dist/components/custom/dot-flow-field/shaders/flow-field.render.wgsl.d.ts +1 -1
- package/dist/components/custom/dot-matrix/DotMatrix.vue.d.ts +43 -0
- package/dist/components/custom/dot-matrix/composables/dotMatrixField.d.ts +89 -0
- package/dist/components/custom/dot-matrix/composables/uniformBridgeWGPU.d.ts +52 -0
- package/dist/components/custom/dot-matrix/composables/useDotMatrix.d.ts +34 -0
- package/dist/components/custom/dot-matrix/composables/useDotSphere.d.ts +27 -0
- package/dist/components/custom/dot-matrix/constants.d.ts +58 -0
- package/dist/components/custom/dot-matrix/index.d.ts +5 -0
- package/dist/components/custom/dot-matrix/shaders/dot-matrix.glsl.d.ts +4 -0
- package/dist/components/custom/dot-matrix/shaders/dot-matrix.wgsl.d.ts +1 -0
- package/dist/components/custom/easing/EasingPicker.vue.d.ts +2 -2
- package/dist/components/custom/easing/composables/useEasingPicker.d.ts +5 -0
- package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +11 -0
- package/dist/components/custom/fourier-field/FourierField.vue.d.ts +40 -47
- package/dist/components/custom/fourier-field/composables/fourierFieldGLSetup.d.ts +15 -0
- package/dist/components/custom/fourier-field/composables/fourierFieldWGPUSetup.d.ts +20 -0
- package/dist/components/custom/fourier-field/composables/uniformBridgeWGPU.d.ts +41 -0
- package/dist/components/custom/fourier-field/composables/useFourierField.d.ts +40 -37
- package/dist/components/custom/fourier-field/constants.d.ts +61 -4
- package/dist/components/custom/fourier-field/index.d.ts +23 -18
- package/dist/components/custom/fourier-field/shaders/fourier-field.compute.wgsl.d.ts +1 -0
- package/dist/components/custom/fourier-field/shaders/fourier-field.glsl.d.ts +4 -0
- package/dist/components/custom/fourier-field/shaders/fourier-field.render.wgsl.d.ts +1 -0
- package/dist/components/custom/goo-blob/GooBlob.vue.d.ts +9 -1
- package/dist/components/custom/goo-blob/constants.d.ts +1 -1
- package/dist/components/custom/goo-blob/index.d.ts +1 -1
- package/dist/components/custom/goo-blob/shaders/metaball-noise.wgsl.d.ts +1 -0
- package/dist/components/custom/goo-blob/shaders/metaball-palette.wgsl.d.ts +1 -0
- package/dist/components/custom/goo-blob/shaders/metaball-uniforms.glsl.d.ts +1 -1
- package/dist/components/custom/goo-blob/shaders/metaball.wgsl.d.ts +1 -1
- package/dist/components/custom/goo-blob/types.d.ts +36 -0
- package/dist/components/custom/goo-dot-matrix/GooDotMatrix.vue.d.ts +49 -0
- package/dist/components/custom/goo-dot-matrix/composables/gooDotLattice.d.ts +24 -0
- package/dist/components/custom/goo-dot-matrix/composables/gooDotSetup.d.ts +50 -0
- package/dist/components/custom/goo-dot-matrix/composables/uniformBridgeWGPU.d.ts +35 -0
- package/dist/components/custom/goo-dot-matrix/composables/useGooDotMatrix.d.ts +31 -0
- package/dist/components/custom/goo-dot-matrix/constants.d.ts +76 -0
- package/dist/components/custom/goo-dot-matrix/index.d.ts +5 -0
- package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.frag.d.ts +11 -0
- package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.wgsl.d.ts +3 -0
- package/dist/components/custom/labeled-field/LabeledField.vue.d.ts +21 -2
- package/dist/components/custom/metric-stack/MetricRow.vue.d.ts +15 -0
- package/dist/components/custom/pager-dots/PagerDots.vue.d.ts +9 -0
- package/dist/components/custom/pager-dots/index.d.ts +2 -0
- package/dist/components/custom/pager-dots/pagerWindow.d.ts +9 -0
- package/dist/components/custom/paper-grid/PaperGrid.vue.d.ts +42 -0
- package/dist/components/custom/paper-grid/composables/paperGrid.d.ts +90 -0
- package/dist/components/custom/paper-grid/composables/paperGridGLSetup.d.ts +16 -0
- package/dist/components/custom/paper-grid/composables/paperGridWGPUSetup.d.ts +19 -0
- package/dist/components/custom/paper-grid/composables/uniformBridgeWGPU.d.ts +16 -0
- package/dist/components/custom/paper-grid/composables/usePaperGrid.d.ts +31 -0
- package/dist/components/custom/paper-grid/constants.d.ts +57 -0
- package/dist/components/custom/paper-grid/index.d.ts +5 -0
- package/dist/components/custom/paper-grid/shaders/paper-grid.glsl.d.ts +4 -0
- package/dist/components/custom/paper-grid/shaders/paper-grid.wgsl.d.ts +1 -0
- package/dist/components/custom/search/FuzzySearch.vue.d.ts +8 -2
- package/dist/components/custom/search/SearchBar.vue.d.ts +8 -0
- package/dist/components/custom/search/index.d.ts +2 -0
- package/dist/components/custom/search/searchVariants.d.ts +19 -0
- package/dist/components/custom/selectable-chip/SelectableChip.vue.d.ts +50 -0
- package/dist/components/custom/selectable-chip/index.d.ts +2 -0
- package/dist/components/custom/selectable-chip/selectableChipVariants.d.ts +23 -0
- package/dist/components/custom/split-chars/SplitChars.vue.d.ts +39 -0
- package/dist/components/custom/split-chars/index.d.ts +1 -0
- package/dist/components/custom/tabs/SegmentedTabs.vue.d.ts +8 -6
- package/dist/components/custom/tabs/constants.d.ts +20 -2
- package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +29 -16
- package/dist/components/custom/watercolor-dot/useWatercolorBlob.d.ts +10 -5
- package/dist/components/ui/_shared/index.d.ts +2 -0
- package/dist/components/ui/_shared/useControlSize.d.ts +46 -0
- package/dist/components/ui/button/index.d.ts +1 -1
- package/dist/components/ui/card/Card.vue.d.ts +45 -0
- package/dist/components/ui/card/index.d.ts +1 -1
- package/dist/components/ui/carousel/CarouselNext.vue.d.ts +1 -1
- package/dist/components/ui/carousel/CarouselPrevious.vue.d.ts +1 -1
- package/dist/components/ui/command/CommandDialog.vue.d.ts +9 -3
- package/dist/components/ui/command/CommandList.vue.d.ts +3 -0
- package/dist/components/ui/context-menu/ContextMenuContent.vue.d.ts +5 -1
- package/dist/components/ui/dropdown-menu/DropdownMenuContent.vue.d.ts +4 -0
- package/dist/components/ui/hover-card/HoverCardContent.vue.d.ts +3 -0
- package/dist/components/ui/input/Input.vue.d.ts +3 -0
- package/dist/components/ui/number-field/NumberFieldInput.vue.d.ts +6 -1
- package/dist/components/ui/select/SelectContent.vue.d.ts +3 -0
- package/dist/components/ui/switch/Switch.vue.d.ts +2 -0
- package/dist/components/ui/textarea/Textarea.vue.d.ts +3 -0
- package/dist/components/ui/tooltip/TooltipContent.vue.d.ts +3 -0
- package/dist/composables/color/index.d.ts +2 -0
- package/dist/composables/color/useAccentTone.d.ts +34 -0
- package/dist/composables/glass/useVizChoreography.d.ts +123 -0
- package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +10 -0
- package/dist/composables/glass/webgl/shaders/flow.wgsl.d.ts +1 -0
- package/dist/composables/glass/webgpu/index.d.ts +1 -1
- package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +28 -7
- package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +1 -0
- package/dist/composables/glass/webgpu/webgpuDevice.d.ts +42 -0
- package/dist/composables/motion/core/index.d.ts +3 -0
- package/dist/composables/motion/scrollReader.d.ts +25 -0
- package/dist/composables/motion/springPresets.d.ts +20 -1
- package/dist/composables/motion/useCharStagger.d.ts +44 -0
- package/dist/composables/motion/useDockCtaReceive.d.ts +31 -6
- package/dist/composables/motion/useScrollChrome.d.ts +58 -0
- package/dist/composables/motion/useScrollTrigger.d.ts +67 -0
- package/dist/composables/motion/useSpringPress.d.ts +5 -5
- package/dist/composables/motion/useStaggerReveal.d.ts +24 -0
- package/dist/composables/sidebar/index.d.ts +4 -1
- package/dist/composables/sidebar/types.d.ts +68 -3
- package/dist/composables/sidebar/useClickDelegate.d.ts +4 -0
- package/dist/composables/sidebar/useLazyLoader.d.ts +5 -0
- package/dist/composables/sidebar/useScrollTo.d.ts +5 -0
- package/dist/composables/virtual/index.d.ts +4 -0
- package/dist/composables/virtual/useVirtualSectionWindow.d.ts +72 -0
- package/dist/composables/virtual/useWindowedStore.d.ts +43 -0
- package/dist/composables/virtual/virtualSectionLayout.d.ts +103 -0
- package/dist/concentric.js +495 -221
- package/dist/configurator.js +2 -2
- package/dist/confirm-dialog.js +62 -47
- package/dist/constellation.js +635 -235
- package/dist/context-menu.js +2 -2
- package/dist/controls.js +1 -1
- package/dist/createCanvasLifecycle-Gh45Ce-p.js +93 -0
- package/dist/dark.js +1 -1
- package/dist/data-table.js +1 -1
- package/dist/deck.d.ts +1 -0
- package/dist/deck.js +105 -0
- package/dist/dialog.js +4 -3
- package/dist/dock.js +602 -458
- package/dist/dot-flow-field.js +580 -290
- package/dist/dot-matrix.d.ts +1 -0
- package/dist/dot-matrix.js +630 -0
- package/dist/dotMatrixField-D_x9_1qq.js +48 -0
- package/dist/{dropdown-menu-CofSZuk8.js → dropdown-menu-aJmV5SqE.js} +83 -79
- package/dist/dropdown-menu.js +1 -1
- package/dist/easing.js +188 -176
- package/dist/expandable-container.js +42 -20
- package/dist/fading-scroll.js +1 -1
- package/dist/flow.glsl-B2P7e0MT.js +4 -0
- package/dist/forms.js +62 -60
- package/dist/fourier-field.js +825 -178
- package/dist/fourier-math.js +1 -1
- package/dist/glass-ui.css +1 -1
- package/dist/glass-ui.js +145 -104
- package/dist/goo-blob.js +171 -1228
- package/dist/goo-dot-matrix.d.ts +1 -0
- package/dist/goo-dot-matrix.js +591 -0
- package/dist/handmark.js +1 -1
- package/dist/hover-card.js +1 -1
- package/dist/hover-popover.js +1 -1
- package/dist/icon-chip.js +1 -1
- package/dist/icon-tooltip.js +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/instrument-chassis.js +1 -1
- package/dist/keyboard.js +1 -1
- package/dist/labeled-field.js +70 -60
- package/dist/metric-cell.js +1 -1
- package/dist/metric-stack.js +11 -2
- package/dist/motion-core.js +54 -32
- package/dist/motion-curves.js +11 -1
- package/dist/motion.js +46 -111
- package/dist/notification.js +1 -1
- package/dist/number-field.js +1 -1
- package/dist/pager-dots.js +2 -91
- package/dist/paper-backdrop.js +1 -1
- package/dist/paper-grid.d.ts +1 -0
- package/dist/paper-grid.js +788 -0
- package/dist/{presets-BW2b-fr1.js → presets-CvOUqtdY.js} +3 -3
- package/dist/{procedural-color.glsl-CIFsJhwI.js → procedural-color.wgsl-m7Zgv35j.js} +2 -2
- package/dist/progress.js +1 -1
- package/dist/pulse.js +1 -1
- package/dist/reactive.js +1 -1
- package/dist/{useCanvas2D-B8w_E3Rr.js → resolveCanvasColor-yPyIpJt9.js} +12 -2
- package/dist/scrollReader-DI1NWxUw.js +42 -0
- package/dist/scrolling-text.js +1 -1
- package/dist/search.js +160 -304
- package/dist/select.js +3 -3
- package/dist/selectable-chip.d.ts +1 -0
- package/dist/selectable-chip.js +65 -0
- package/dist/separator.js +1 -1
- package/dist/{sheet-tZMg0E0w.js → sheet-B2flBfLH.js} +2 -2
- package/dist/sheet.js +1 -1
- package/dist/sidebar.js +216 -114
- package/dist/slider.js +1 -1
- package/dist/sortable-list.js +1 -1
- package/dist/spectrum-walk-BVzA7Biz.js +33 -0
- package/dist/{springPresets-CFQGQfdl.js → springPresets-Ce7OYCm9.js} +12 -6
- package/dist/styles/animations.css +13 -3
- package/dist/styles/cards.css +69 -0
- package/dist/styles/completion-seal.css +131 -0
- package/dist/styles/components.css +2 -3
- package/dist/styles/configurator.css +55 -0
- package/dist/styles/critical-partition.mjs +33 -11
- package/dist/styles/deferred.css +2 -0
- package/dist/styles/dock/cta-seat.css +87 -0
- package/dist/styles/dock/density.css +153 -0
- package/dist/styles/dock/layers.css +55 -7
- package/dist/styles/dock/morph-bridge.css +54 -18
- package/dist/styles/dock/morph.css +41 -33
- package/dist/styles/dock/overflow.css +12 -0
- package/dist/styles/dock/search.css +68 -0
- package/dist/styles/dock/shape.css +124 -0
- package/dist/styles/dock/shell.css +23 -5
- package/dist/styles/dock/stack-rail.css +264 -0
- package/dist/styles/dock-controls/dark-mode-toggle.css +17 -4
- package/dist/styles/dock-controls/icon-button.css +14 -0
- package/dist/styles/dock.css +11 -1
- package/dist/styles/glass/accent-tone.css +66 -0
- package/dist/styles/glass/control-surfaces.css +167 -0
- package/dist/styles/glass/ladder.css +67 -17
- package/dist/styles/glass/rim.css +19 -9
- package/dist/styles/glass/surfaces.css +69 -148
- package/dist/styles/glass.css +10 -0
- package/dist/styles/index.css +15 -0
- package/dist/styles/scroll-chrome.css +123 -0
- package/dist/styles/scroll-driven.css +38 -0
- package/dist/styles/segmented-tabs.css +50 -14
- package/dist/styles/theme/bridges.css +22 -0
- package/dist/styles/theme/radius.css +18 -1
- package/dist/styles/tokens/color-radius.css +13 -3
- package/dist/styles/tokens/dark-arm.css +39 -6
- package/dist/styles/tokens/glass-deep.css +28 -3
- package/dist/styles/tokens/glass-fx.css +44 -1
- package/dist/styles/tokens/glass.css +91 -31
- package/dist/styles/tokens/light-dark.css +1 -1
- package/dist/styles/tokens/offsets.css +27 -0
- package/dist/styles/tokens/property-regs.css +133 -0
- package/dist/styles/tokens/scale-paper.css +73 -29
- package/dist/styles/tokens/scheme-motion.css +44 -6
- package/dist/styles/tokens/sizing-config.css +110 -0
- package/dist/styles/tokens/sizing.css +55 -104
- package/dist/styles/tokens.css +5 -0
- package/dist/styles/typography/semantic.css +18 -5
- package/dist/styles/utilities/a11y-overrides.css +20 -5
- package/dist/styles/utilities/base-misc.css +52 -0
- package/dist/styles/utilities/btn.css +14 -3
- package/dist/styles/utilities/components.css +31 -6
- package/dist/styles/utilities/metal.css +26 -0
- package/dist/switch.js +1 -1
- package/dist/tabs.js +8 -8
- package/dist/timeline.js +1 -1
- package/dist/toast.js +1 -1
- package/dist/toggle-chip.js +10 -10
- package/dist/toggle-group.js +1 -1
- package/dist/tooltip.js +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/uniformBridgeWGPU-CtAKl45L.js +1204 -0
- package/dist/{useAnimatedNumber-BfUq2bUM.js → useAnimatedNumber-CLrxicG9.js} +1 -1
- package/dist/{useConfiguratorState-DNlOh6c8.js → useConfiguratorState-4xblKfwd.js} +25 -24
- package/dist/useControlSize-SH1UmJCi.js +9 -0
- package/dist/useDockCtaReceive-DfFkmgL1.js +82 -0
- package/dist/{useDragMorph-DgxnsVJz.js → useDragMorph-BUgAC-zK.js} +4 -4
- package/dist/useFuzzySearch-DIhcYtcw.js +177 -0
- package/dist/useGpuSubstrate-4pTcp6mX.js +294 -0
- package/dist/{useLiquidPress-kfb4KX79.js → useLiquidPress-BooG97RY.js} +2 -2
- package/dist/usePointerVelocityField-QLsy3_kv.js +91 -0
- package/dist/useScrollChrome-D66AVP7C.js +258 -0
- package/dist/{useSpringMount-q1amq1SJ.js → useSpringMount-BWDnKIwh.js} +1 -1
- package/dist/useSpringPress-B1-Czp-V.js +36 -0
- package/dist/useViewTransition-CUI1nAgn.js +95 -0
- package/dist/{vendor-CKmzio-i.js → vendor-B2qOlYY3.js} +24 -11
- package/dist/virtual.d.ts +1 -0
- package/dist/virtual.js +225 -0
- package/dist/watercolor-dot.js +116 -73
- package/package.json +127 -7
- package/src/styles/animations.css +13 -3
- package/src/styles/cards.css +69 -0
- package/src/styles/completion-seal.css +131 -0
- package/src/styles/configurator.css +55 -0
- package/src/styles/critical-partition.mjs +33 -11
- package/src/styles/dock/cta-seat.css +87 -0
- package/src/styles/dock/density.css +153 -0
- package/src/styles/dock/layers.css +55 -7
- package/src/styles/dock/morph-bridge.css +54 -18
- package/src/styles/dock/morph.css +41 -33
- package/src/styles/dock/overflow.css +12 -0
- package/src/styles/dock/search.css +68 -0
- package/src/styles/dock/shape.css +124 -0
- package/src/styles/dock/shell.css +23 -5
- package/src/styles/dock/stack-rail.css +264 -0
- package/src/styles/dock-controls/dark-mode-toggle.css +17 -4
- package/src/styles/dock-controls/icon-button.css +14 -0
- package/src/styles/dock.css +11 -1
- package/src/styles/glass/accent-tone.css +66 -0
- package/src/styles/glass/control-surfaces.css +167 -0
- package/src/styles/glass/ladder.css +67 -17
- package/src/styles/glass/rim.css +19 -9
- package/src/styles/glass/surfaces.css +69 -148
- package/src/styles/glass.css +10 -0
- package/src/styles/index.css +15 -0
- package/src/styles/scroll-chrome.css +123 -0
- package/src/styles/scroll-driven.css +38 -0
- package/src/styles/segmented-tabs.css +50 -14
- package/src/styles/theme/bridges.css +22 -0
- package/src/styles/theme/radius.css +18 -1
- package/src/styles/tokens/color-radius.css +13 -3
- package/src/styles/tokens/dark-arm.css +39 -6
- package/src/styles/tokens/glass-deep.css +28 -3
- package/src/styles/tokens/glass-fx.css +44 -1
- package/src/styles/tokens/glass.css +91 -31
- package/src/styles/tokens/light-dark.css +1 -1
- package/src/styles/tokens/offsets.css +27 -0
- package/src/styles/tokens/property-regs.css +133 -0
- package/src/styles/tokens/scale-paper.css +73 -29
- package/src/styles/tokens/scheme-motion.css +44 -6
- package/src/styles/tokens/sizing-config.css +110 -0
- package/src/styles/tokens/sizing.css +55 -104
- package/src/styles/tokens.css +5 -0
- package/src/styles/typography/semantic.css +18 -5
- package/src/styles/utilities/a11y-overrides.css +20 -5
- package/src/styles/utilities/base-misc.css +52 -0
- package/src/styles/utilities/btn.css +14 -3
- package/src/styles/utilities/components.css +31 -6
- package/src/styles/utilities/metal.css +26 -0
- package/dist/ContextMenuContent-uWnVxDab.js +0 -85
- package/dist/DialogFooter-BZNX5aVr.js +0 -165
- package/dist/HoverCardContent-b2uaAMRR.js +0 -83
- package/dist/Input-h9v5LeXf.js +0 -55
- package/dist/NumberFieldContent-Cq7EzX-U.js +0 -138
- package/dist/Separator-pKF0oA4M.js +0 -37
- package/dist/Switch-CwYNf8bo.js +0 -47
- package/dist/TooltipProvider-rzvnXz60.js +0 -104
- package/dist/color-DweYl7pE.js +0 -86
- package/dist/components/custom/constellation/composables/useConstellationPointer.d.ts +0 -35
- package/dist/components/custom/constellation/constellationDraw.d.ts +0 -30
- package/dist/components/custom/dock/DockRail.vue.d.ts +0 -89
- package/dist/createCanvasLifecycle-CHD5XrDW.js +0 -82
- package/dist/procedural-color.wgsl-CToRHugY.js +0 -224
- package/dist/resolveCanvasColor-CUyHr5Uu.js +0 -11
- package/dist/styles/dock/rail-extend.css +0 -397
- package/dist/usePointerVelocityField-JbRd5CrM.js +0 -137
- package/dist/useRAFLoop-UYa4zoiN.js +0 -109
- package/dist/useSpringPress-BsqPr7FJ.js +0 -34
- package/src/styles/dock/rail-extend.css +0 -397
- /package/dist/{FadingScroll-DI6hQhT9.js → FadingScroll-DLRbH5Xr.js} +0 -0
- /package/dist/{HoverPopover-CbqbNwgU.js → HoverPopover-BcIxvyqZ.js} +0 -0
- /package/dist/{InstrumentChassis-Bx0F_q5g.js → InstrumentChassis-CxsHSyMj.js} +0 -0
- /package/dist/{PaperBackdrop-Vf3tlpvd.js → PaperBackdrop-CqwjnfLv.js} +0 -0
- /package/dist/{Progress-DctG61iZ.js → Progress-CnqB7gLm.js} +0 -0
- /package/dist/{ScrollingText-yOpBzFYq.js → ScrollingText-CTZbA_cG.js} +0 -0
- /package/dist/{SelectGroup-DwwjicPY.js → SelectGroup-BFiod7X2.js} +0 -0
- /package/dist/{compile-CQEFRTmx.js → compile-nZ1xVYTp.js} +0 -0
- /package/dist/{constants-BPOqYJAm.js → constants--C2DkLW8.js} +0 -0
- /package/dist/{math-BINYmg5z.js → math-Eb0w3LqU.js} +0 -0
- /package/dist/{prng-Za0Rmgag.js → prng-B-d9eYX8.js} +0 -0
- /package/dist/{slider-DVb4HXU-.js → slider-2A0rPn79.js} +0 -0
- /package/dist/{useGlobalDark-C28t0VWJ.js → useGlobalDark-CmjB9E32.js} +0 -0
- /package/dist/{useIntersectionPause-Bj4sPkMh.js → useIntersectionPause-Dbozzjgm.js} +0 -0
- /package/dist/{useInterval-CvK1mL92.js → useInterval-CNdua40W.js} +0 -0
- /package/dist/{useKeyboardShortcuts-BXWXOZ-9.js → useKeyboardShortcuts-BPRp33Im.js} +0 -0
- /package/dist/{useLiquidFlex-mZPMiNXh.js → useLiquidFlex-UmA6LMZu.js} +0 -0
- /package/dist/{useScrollProgress-D7bYU2RK.js → useScrollProgress-c3yxmH6a.js} +0 -0
- /package/dist/{useSortable-DHjtZSEd.js → useSortable-BVqlJRBR.js} +0 -0
- /package/dist/{useTextHighlight-CWEi25hf.js → useTextHighlight-NmBM5V_4.js} +0 -0
- /package/dist/{vReveal-Czsb7zQC.js → vReveal-D9k0jADx.js} +0 -0
- /package/dist/{vSpecular-CQFmLNzA.js → vSpecular-EX7loENl.js} +0 -0
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { t as e } from "./cn-DJXf4yaB.js";
|
|
2
|
-
import { computed as t, createBlock as n, createVNode as r, defineComponent as i, guardReactiveProps as a, mergeProps as o, normalizeProps as s, openBlock as c, renderSlot as l, unref as u, withCtx as d } from "vue";
|
|
3
|
-
import { TooltipContent as f, TooltipPortal as p, TooltipProvider as m, TooltipRoot as h, TooltipTrigger as g, useForwardPropsEmits as _ } from "reka-ui";
|
|
4
|
-
//#endregion
|
|
5
|
-
//#region src/components/ui/tooltip/Tooltip.vue
|
|
6
|
-
var v = /* @__PURE__ */ i({
|
|
7
|
-
__name: "Tooltip",
|
|
8
|
-
props: {
|
|
9
|
-
defaultOpen: { type: Boolean },
|
|
10
|
-
open: { type: Boolean },
|
|
11
|
-
delayDuration: {},
|
|
12
|
-
disableHoverableContent: { type: Boolean },
|
|
13
|
-
disableClosingTrigger: { type: Boolean },
|
|
14
|
-
disabled: { type: Boolean },
|
|
15
|
-
ignoreNonKeyboardFocus: { type: Boolean }
|
|
16
|
-
},
|
|
17
|
-
emits: ["update:open"],
|
|
18
|
-
setup(e, { emit: t }) {
|
|
19
|
-
let r = _(e, t);
|
|
20
|
-
return (e, t) => (c(), n(u(h), o({ "data-slot": "tooltip" }, u(r)), {
|
|
21
|
-
default: d(() => [l(e.$slots, "default")]),
|
|
22
|
-
_: 3
|
|
23
|
-
}, 16));
|
|
24
|
-
}
|
|
25
|
-
}), y = /* @__PURE__ */ i({
|
|
26
|
-
inheritAttrs: !1,
|
|
27
|
-
__name: "TooltipContent",
|
|
28
|
-
props: {
|
|
29
|
-
forceMount: { type: Boolean },
|
|
30
|
-
ariaLabel: {},
|
|
31
|
-
asChild: { type: Boolean },
|
|
32
|
-
as: {},
|
|
33
|
-
side: {},
|
|
34
|
-
sideOffset: { default: 4 },
|
|
35
|
-
align: {},
|
|
36
|
-
alignOffset: {},
|
|
37
|
-
avoidCollisions: { type: Boolean },
|
|
38
|
-
collisionBoundary: {},
|
|
39
|
-
collisionPadding: {},
|
|
40
|
-
arrowPadding: {},
|
|
41
|
-
sticky: {},
|
|
42
|
-
hideWhenDetached: { type: Boolean },
|
|
43
|
-
positionStrategy: {},
|
|
44
|
-
updatePositionStrategy: {},
|
|
45
|
-
class: { type: [
|
|
46
|
-
Boolean,
|
|
47
|
-
null,
|
|
48
|
-
String,
|
|
49
|
-
Object,
|
|
50
|
-
Array
|
|
51
|
-
] }
|
|
52
|
-
},
|
|
53
|
-
emits: ["escapeKeyDown", "pointerDownOutside"],
|
|
54
|
-
setup(i, { emit: a }) {
|
|
55
|
-
let s = i, m = a, h = _(t(() => {
|
|
56
|
-
let { class: e, ...t } = s;
|
|
57
|
-
return t;
|
|
58
|
-
}), m);
|
|
59
|
-
return (t, i) => (c(), n(u(p), null, {
|
|
60
|
-
default: d(() => [r(u(f), o({
|
|
61
|
-
...u(h),
|
|
62
|
-
...t.$attrs
|
|
63
|
-
}, { class: u(e)("z-tooltip overflow-hidden rounded-tooltip border glass-floating px-3 py-1.5 text-sm text-popover-foreground glass-reveal", s.class) }), {
|
|
64
|
-
default: d(() => [l(t.$slots, "default")]),
|
|
65
|
-
_: 3
|
|
66
|
-
}, 16, ["class"])]),
|
|
67
|
-
_: 3
|
|
68
|
-
}));
|
|
69
|
-
}
|
|
70
|
-
}), b = /* @__PURE__ */ i({
|
|
71
|
-
__name: "TooltipTrigger",
|
|
72
|
-
props: {
|
|
73
|
-
reference: {},
|
|
74
|
-
asChild: { type: Boolean },
|
|
75
|
-
as: {}
|
|
76
|
-
},
|
|
77
|
-
setup(e) {
|
|
78
|
-
let t = e;
|
|
79
|
-
return (e, r) => (c(), n(u(g), s(a(t)), {
|
|
80
|
-
default: d(() => [l(e.$slots, "default")]),
|
|
81
|
-
_: 3
|
|
82
|
-
}, 16));
|
|
83
|
-
}
|
|
84
|
-
}), x = /* @__PURE__ */ i({
|
|
85
|
-
__name: "TooltipProvider",
|
|
86
|
-
props: {
|
|
87
|
-
delayDuration: {},
|
|
88
|
-
skipDelayDuration: {},
|
|
89
|
-
disableHoverableContent: { type: Boolean },
|
|
90
|
-
disableClosingTrigger: { type: Boolean },
|
|
91
|
-
disabled: { type: Boolean },
|
|
92
|
-
ignoreNonKeyboardFocus: { type: Boolean },
|
|
93
|
-
content: {}
|
|
94
|
-
},
|
|
95
|
-
setup(e) {
|
|
96
|
-
let t = e;
|
|
97
|
-
return (e, r) => (c(), n(u(m), s(a(t)), {
|
|
98
|
-
default: d(() => [l(e.$slots, "default")]),
|
|
99
|
-
_: 3
|
|
100
|
-
}, 16));
|
|
101
|
-
}
|
|
102
|
-
});
|
|
103
|
-
//#endregion
|
|
104
|
-
export { v as i, b as n, y as r, x as t };
|
package/dist/color-DweYl7pE.js
DELETED
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { colorUnit2 as e, gamutMapOKLab as t, interpolateHue as n, isInSRGBGamut as r, oklabToLinearSRGB as i, oklabToRgb255 as a, parseCSSColor as o, rawOklabToOklch as s, rawOklchToOklab as c, srgbToOKLab as l } from "@mkbabb/value.js";
|
|
2
|
-
//#region src/composables/color/index.ts
|
|
3
|
-
function u(e) {
|
|
4
|
-
let [t, n, r] = c(e.L, e.C, e.h), [a, o, s] = i(t, n, r);
|
|
5
|
-
return [
|
|
6
|
-
Math.max(0, a),
|
|
7
|
-
Math.max(0, o),
|
|
8
|
-
Math.max(0, s)
|
|
9
|
-
];
|
|
10
|
-
}
|
|
11
|
-
function d(e, t, n) {
|
|
12
|
-
if (!Number.isFinite(e) || !Number.isFinite(t) || !Number.isFinite(n)) throw Error(`warmCatchLight: non-finite OKLCh anchor (L=${e}, C=${t}, h=${n})`);
|
|
13
|
-
return u({
|
|
14
|
-
L: e,
|
|
15
|
-
C: t,
|
|
16
|
-
h: n
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
function f(e) {
|
|
20
|
-
let [t, n, r] = c(e.L, e.C, e.h), [i, o, s] = a(t, n, r), l = (e) => Math.min(1, Math.max(0, e / 255));
|
|
21
|
-
return [
|
|
22
|
-
l(i),
|
|
23
|
-
l(o),
|
|
24
|
-
l(s)
|
|
25
|
-
];
|
|
26
|
-
}
|
|
27
|
-
function p(t) {
|
|
28
|
-
let n = e(o(t), "rgb").value, [r, i, a] = l(Number(n.r), Number(n.g), Number(n.b)), [c, u, d] = s(r, i, a);
|
|
29
|
-
return {
|
|
30
|
-
L: c,
|
|
31
|
-
C: u,
|
|
32
|
-
h: d
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
function m(e) {
|
|
36
|
-
let [t, n, r] = c(e.L, e.C, e.h), [i, o, s] = a(t, n, r), l = (e) => Math.round(e).toString(16).padStart(2, "0");
|
|
37
|
-
return `#${l(i)}${l(o)}${l(s)}`;
|
|
38
|
-
}
|
|
39
|
-
var h = (e) => f(p(e)), g = {
|
|
40
|
-
complementary: "longer",
|
|
41
|
-
"split-complementary": "longer",
|
|
42
|
-
analogous: "shorter",
|
|
43
|
-
monochrome: "shorter",
|
|
44
|
-
triad: "increasing",
|
|
45
|
-
tetradic: "increasing"
|
|
46
|
-
}, _ = (e) => (e % 360 + 360) % 360;
|
|
47
|
-
function v(e, t, r, i) {
|
|
48
|
-
let a = g[t], o = (e, t) => _(n(_(e) / 360, _(t) / 360, i, a) * 360);
|
|
49
|
-
switch (t) {
|
|
50
|
-
case "monochrome": return _(e);
|
|
51
|
-
case "complementary": return o(e, e + 180);
|
|
52
|
-
case "split-complementary": return o(e + 150, e + 210);
|
|
53
|
-
case "triad": return o(e, e + 240);
|
|
54
|
-
case "tetradic": return o(e, e + 270);
|
|
55
|
-
default: return o(e - r, e + r);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
function y(e) {
|
|
59
|
-
let [n, a, o] = c(e.L, e.C, e.h), [l, u, d] = t(n, a, o), [f, p, m] = s(l, u, d), h = p;
|
|
60
|
-
for (let e = 0; e < 6; e++) {
|
|
61
|
-
let [e, t, n] = c(f, h, m), [a, o, s] = i(e, t, n);
|
|
62
|
-
if (r(a, o, s)) break;
|
|
63
|
-
h *= .999;
|
|
64
|
-
}
|
|
65
|
-
return {
|
|
66
|
-
L: f,
|
|
67
|
-
C: h,
|
|
68
|
-
h: m
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
function b(e, t = {}) {
|
|
72
|
-
let n = typeof e == "string" ? p(e) : e, { stopCount: r = 3, harmony: i = "analogous", lightnessSpread: a = .18, hueSpread: o = 24, chromaBump: s = .03, chromaCeiling: c } = t, l = Math.max(2, Math.min(4, Math.round(r))), u = [];
|
|
73
|
-
for (let e = 0; e < l; e++) {
|
|
74
|
-
let t = l === 1 ? 0 : e / (l - 1), r = n.L - a / 2 + a * t, d = Math.max(0, n.C + s * Math.sin(Math.PI * t));
|
|
75
|
-
c !== void 0 && (d = Math.min(d, c));
|
|
76
|
-
let f = v(n.h, i, o, t);
|
|
77
|
-
u.push(y({
|
|
78
|
-
L: Math.min(.98, Math.max(.05, r)),
|
|
79
|
-
C: d,
|
|
80
|
-
h: f
|
|
81
|
-
}));
|
|
82
|
-
}
|
|
83
|
-
return u;
|
|
84
|
-
}
|
|
85
|
-
//#endregion
|
|
86
|
-
export { y as a, u as c, v as i, d as l, h as n, m as o, b as r, f as s, p as t };
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import type { Ref } from "vue";
|
|
2
|
-
import type { ConstellationField, ConstellationPointer, ConstellationRipple } from "../constellationField";
|
|
3
|
-
/** The substrate handle the wiring reads (`wake` re-arms a parked surface). */
|
|
4
|
-
interface CanvasHandle {
|
|
5
|
-
wake: () => void;
|
|
6
|
-
reducedMotion: boolean;
|
|
7
|
-
}
|
|
8
|
-
export interface UseConstellationPointerOptions {
|
|
9
|
-
host: HTMLElement | null;
|
|
10
|
-
canvas: HTMLCanvasElement;
|
|
11
|
-
field: ConstellationField;
|
|
12
|
-
pointer: ConstellationPointer;
|
|
13
|
-
ripples: ConstellationRipple[];
|
|
14
|
-
handle: CanvasHandle;
|
|
15
|
-
/** The hoisted client→canvas-local mapper ref the exposed `warpTo(clientX,clientY)` reads. */
|
|
16
|
-
toLocalRef: Ref<((e: {
|
|
17
|
-
clientX: number;
|
|
18
|
-
clientY: number;
|
|
19
|
-
}) => ConstellationPointer | null) | null>;
|
|
20
|
-
pointerReactive: boolean;
|
|
21
|
-
warpOnClick: boolean;
|
|
22
|
-
gravityWell: boolean;
|
|
23
|
-
/** The deterministic-capture predicate — a frozen capture registers NO listeners. */
|
|
24
|
-
isFrozen: boolean;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Wire the constellation pointer listeners on the host. Sets the hoisted
|
|
28
|
-
* `toLocal` mapper (the deck-scale invariant — BOTH the ripple path AND the warp
|
|
29
|
-
* path read this ONE mapper), then registers the three independent listener
|
|
30
|
-
* blocks gated by their respective prop flags (each PRM-gated + capture-gated).
|
|
31
|
-
* No teardown is returned: the listeners ride the component's lifetime (the host
|
|
32
|
-
* element is torn down with the component), matching the prior inline behaviour.
|
|
33
|
-
*/
|
|
34
|
-
export declare function useConstellationPointer(opts: UseConstellationPointerOptions): void;
|
|
35
|
-
export {};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import type { ConstellationField, ConstellationPalette, ConstellationPointer, ConstellationRipple } from "./constellationField";
|
|
2
|
-
import { DEFAULT_PALETTE } from "./constants";
|
|
3
|
-
/** R5-8 — the visual-SIZE draw scale: `max(k, kFloor)`. The four neutral passes
|
|
4
|
-
* size on this; positions/reach stay on TRUE `field.k`. Exported so a
|
|
5
|
-
* `drawOverlay` skin floors its own marks/labels on the same axis. */
|
|
6
|
-
export declare function kVisOf(field: ConstellationField): number;
|
|
7
|
-
export { DEFAULT_PALETTE };
|
|
8
|
-
/**
|
|
9
|
-
* Resolve the FULL neutral palette + legibility weights off a canvas's resolved
|
|
10
|
-
* custom properties (AX.W17). The colors AND the alpha multipliers route through
|
|
11
|
-
* the same `getComputedStyle` probe, so a dark-mode flip re-resolves BOTH the
|
|
12
|
-
* `:root`/`.dark` color arms AND the per-mode alpha defaults in one read.
|
|
13
|
-
*/
|
|
14
|
-
export declare function readPalette(canvas: HTMLCanvasElement): ConstellationPalette;
|
|
15
|
-
/**
|
|
16
|
-
* Pass 1 — hairline edges between any two nodes within `link` px (alpha falls off with
|
|
17
|
-
* distance). The optional `accentIndex` (AZ.W-CON-GEN G2; default `-1` = OFF,
|
|
18
|
-
* byte-identical to the prior single-color pass) is the flagged-node ACCENT-edge skin:
|
|
19
|
-
* an edge incident on that node strokes `palette.accent` at `palette.edgeAccentAlpha`
|
|
20
|
-
* with a slightly heavier line (the flagged-node tether), while every other edge keeps
|
|
21
|
-
* the neutral register. The neutral edges carry a `palette.edgeFloor` minimum so a
|
|
22
|
-
* distance-faded hairline clears the perceptual floor on a bright ground (G3).
|
|
23
|
-
*/
|
|
24
|
-
export declare function drawEdges(ctx: CanvasRenderingContext2D, field: ConstellationField, link: number, palette: ConstellationPalette, opacityCeiling?: number, accentIndex?: number): void;
|
|
25
|
-
/** Pass 2 — ambient node dots. */
|
|
26
|
-
export declare function drawNodes(ctx: CanvasRenderingContext2D, field: ConstellationField, palette: ConstellationPalette, opacityCeiling?: number): void;
|
|
27
|
-
/** Pass 3 — the cursor joins the web: faint links to nodes within reach + a soft cursor node. */
|
|
28
|
-
export declare function drawPointerWeb(ctx: CanvasRenderingContext2D, field: ConstellationField, link: number, palette: ConstellationPalette, pointer: ConstellationPointer | null, opacityCeiling?: number): void;
|
|
29
|
-
/** Pass 4 — tap ripples: expanding rings that fade over ~0.9s; consumed entries are spliced. */
|
|
30
|
-
export declare function drawRipples(ctx: CanvasRenderingContext2D, field: ConstellationField, now: number, ripples: ConstellationRipple[], palette: ConstellationPalette, opacityCeiling?: number): void;
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { type Component } from "vue";
|
|
2
|
-
import type { DockRailItem } from "./constants";
|
|
3
|
-
/**
|
|
4
|
-
* <DockRail> — AZ.W-RAIL-EXTEND → AZ.W-RAIL3. The hairline-borne, floating
|
|
5
|
-
* CAROUSEL-LIKE chip STRIP: a row/column of detached glass chips that ride a
|
|
6
|
-
* VISIBLE hairline running BEYOND the dock edge, OUTSIDE the dock box. Each chip
|
|
7
|
-
* is one context/facet; clicking it switches the dock's layer context. The strip
|
|
8
|
-
* is rendered in `GlassDock`'s `#rail` slot OUTSIDE the clipped morph aperture (the
|
|
9
|
-
* `.glass-dock-frame` escape), so it NEVER changes the dock's width/height — the
|
|
10
|
-
* dock box is INVIOLATE (R6 §"design REDIRECT" item 1) — and it PERSISTS when the
|
|
11
|
-
* dock collapses (the in-pane switcher rail vanishes on collapse; this one does not).
|
|
12
|
-
*
|
|
13
|
-
* BA.W-DOCK-SECTIONS — THE DIVIDER-SEAM RE-SEAT (the 4th-rail re-conception). The
|
|
14
|
-
* facets ride the rail as visible chips (the W-RAIL3 move OUT of the dock body, kept),
|
|
15
|
-
* but the rail line now co-locates with a NAMED `<DockSeparator anchor>` seam — NOT the
|
|
16
|
-
* dock edge, NOT the midline (the workaround #4 the brief forbids). The seam line crosses
|
|
17
|
-
* THROUGH the dock and overruns BOTH edges by `--dock-rail-extend-length` each side (the
|
|
18
|
-
* SYMMETRIC dual-side overrun); the chips fan FLUSH against the line (the macOS fan-out,
|
|
19
|
-
* rectilinear), and on collapse they retract INTO the rail leaving a slight protrusion
|
|
20
|
-
* stub. GlassDock measures the anchored separator's offset (`--dock-rail-seam-offset`)
|
|
21
|
-
* and the rail's CSS seats the line at it. The chips ARE the facets (id + label + icon);
|
|
22
|
-
* the active one is highlighted. Overflow routes through `<FadingScroll>` (the Batch-2
|
|
23
|
-
* primitive — the single scroll-fade port; the bespoke parallel scroll-fade is retired):
|
|
24
|
-
* the common 2-4-facet set fans flush with no scroll; a larger set scrolls under the
|
|
25
|
-
* edge fade + the embla-on-overflow momentum (the >budget arm).
|
|
26
|
-
*
|
|
27
|
-
* The hairline is composed from the `--border-hairline` token pair (the 0.5px
|
|
28
|
-
* catch-light + under-shadow the dock + instrument-chassis already speak) — a
|
|
29
|
-
* whisper, NEVER a hard `1px solid` rule (R3). The dual-side overrun is
|
|
30
|
-
* `--dock-rail-extend-length` (a dock-scoped geometry knob, consumer-overridable);
|
|
31
|
-
* the seam axis keys off the dock `orientation` (a vertical dock's rail is a
|
|
32
|
-
* horizontal line, a horizontal dock's is vertical).
|
|
33
|
-
*
|
|
34
|
-
* The layer-context binding (R2 — one registry, NOT a parallel state path):
|
|
35
|
-
* The chips write the consumer-owned `v-model:context` — the SAME ref the consumer
|
|
36
|
-
* binds to its navigation state (or `<DockLayerGroup v-model:active>`). There is no
|
|
37
|
-
* internal `ref()`/`reactive()` shadow of the active state inside this facility; the
|
|
38
|
-
* context ref lives in the consumer, and `<DockRail>` only writes it. Pass `items`
|
|
39
|
-
* (the facet descriptors → the visible chips); a chip click writes its id AND emits
|
|
40
|
-
* `@advance` with it so a consumer can wire its own selection logic. (The prior
|
|
41
|
-
* single-end-icon `entries?: string[]` prop died with the evolution — a clean
|
|
42
|
-
* break, no alias; every consumer passes `items`.)
|
|
43
|
-
*/
|
|
44
|
-
type __VLS_Props = {
|
|
45
|
-
/**
|
|
46
|
-
* `"beyond"` (default) overruns the hairline past the dock content box by
|
|
47
|
-
* `--dock-rail-extend-length`; `"inset"` keeps it flush at the edge (the
|
|
48
|
-
* separator-like length).
|
|
49
|
-
*/
|
|
50
|
-
extent?: "beyond" | "inset";
|
|
51
|
-
/** Which dock edge the rail anchors to (the leading/trailing end). */
|
|
52
|
-
position?: "start" | "end";
|
|
53
|
-
/**
|
|
54
|
-
* The chip descriptors — the visible facets the strip renders. When present,
|
|
55
|
-
* the strip is a CAROUSEL of these chips (the W-RAIL3 evolution). The active
|
|
56
|
-
* chip (matching `v-model:context`) is highlighted; a click writes its id.
|
|
57
|
-
*/
|
|
58
|
-
items?: readonly DockRailItem[];
|
|
59
|
-
/**
|
|
60
|
-
* The fallback chevron glyph (the cycle end-cap shown when no `items`
|
|
61
|
-
* entry carries an icon). Default: a chevron.
|
|
62
|
-
*/
|
|
63
|
-
icon?: Component;
|
|
64
|
-
/** Accessible label for the strip group. */
|
|
65
|
-
iconLabel?: string;
|
|
66
|
-
};
|
|
67
|
-
type __VLS_ModelProps = {
|
|
68
|
-
/**
|
|
69
|
-
* The dock's active layer context — a CONSUMER-OWNED model (the R2 sanctioned seam).
|
|
70
|
-
* The consumer binds the SAME ref here and to its navigation state; this facility
|
|
71
|
-
* owns NO shadow store of the active state. `defineModel` is the consumer's ref
|
|
72
|
-
* reached through the v-model contract, not an internal `ref()`.
|
|
73
|
-
*/
|
|
74
|
-
"context"?: string;
|
|
75
|
-
};
|
|
76
|
-
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
77
|
-
declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
78
|
-
advance: (next: string | undefined) => any;
|
|
79
|
-
"update:context": (value: string | undefined) => any;
|
|
80
|
-
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
81
|
-
onAdvance?: ((next: string | undefined) => any) | undefined;
|
|
82
|
-
"onUpdate:context"?: ((value: string | undefined) => any) | undefined;
|
|
83
|
-
}>, {
|
|
84
|
-
position: "start" | "end";
|
|
85
|
-
extent: "beyond" | "inset";
|
|
86
|
-
iconLabel: string;
|
|
87
|
-
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
88
|
-
declare const _default: typeof __VLS_export;
|
|
89
|
-
export default _default;
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
//#region src/composables/glass/webgl/createCanvasLifecycle.ts
|
|
2
|
-
function e(e) {
|
|
3
|
-
let { canvas: t, buildContext: n, resize: r } = e, i = e.respectReducedMotion ?? e.mode !== "capture", a = /* @__PURE__ */ new Set();
|
|
4
|
-
e.mode === "capture" && a.add("manual");
|
|
5
|
-
let o = () => a.size === 0, s = 0, c = typeof performance < "u" ? performance.now() : 0, l = null, u = !1, d = !1, f = i && typeof window < "u" && window.matchMedia ? window.matchMedia("(prefers-reduced-motion: reduce)") : null, p = f?.matches ?? !1;
|
|
6
|
-
function m() {
|
|
7
|
-
if (!o() || !l) return;
|
|
8
|
-
let e = (performance.now() - c) / 1e3, t = l.time ? l.time(e) : e;
|
|
9
|
-
l.frame(t), s = !p && l.shouldContinue() ? requestAnimationFrame(m) : 0;
|
|
10
|
-
}
|
|
11
|
-
function h() {
|
|
12
|
-
u && o() && !s && l && (s = requestAnimationFrame(m));
|
|
13
|
-
}
|
|
14
|
-
function g() {
|
|
15
|
-
let e = f?.matches ?? !1;
|
|
16
|
-
e !== p && (p = e, e || (c = performance.now()), h());
|
|
17
|
-
}
|
|
18
|
-
f?.addEventListener("change", g);
|
|
19
|
-
function _(e = "manual") {
|
|
20
|
-
let t = o();
|
|
21
|
-
a.add(e), t && !o() && (cancelAnimationFrame(s), s = 0);
|
|
22
|
-
}
|
|
23
|
-
function v(e = "manual") {
|
|
24
|
-
let t = !o();
|
|
25
|
-
a.delete(e), t && o() && u && l && (c = performance.now() - 1e3, r(), m());
|
|
26
|
-
}
|
|
27
|
-
let y = typeof document < "u";
|
|
28
|
-
function b() {
|
|
29
|
-
document.hidden ? _("tab-hidden") : v("tab-hidden");
|
|
30
|
-
}
|
|
31
|
-
y && document.addEventListener("visibilitychange", b), y && document.hidden && a.add("tab-hidden");
|
|
32
|
-
let x = null;
|
|
33
|
-
function S(e) {
|
|
34
|
-
e.skipped ? _("off-screen") : v("off-screen");
|
|
35
|
-
}
|
|
36
|
-
function C() {
|
|
37
|
-
if (x) return;
|
|
38
|
-
let e = t.parentElement;
|
|
39
|
-
e && (x = e, e.addEventListener("contentvisibilityautostatechange", S));
|
|
40
|
-
}
|
|
41
|
-
function w() {
|
|
42
|
-
x?.removeEventListener("contentvisibilityautostatechange", S), x = null;
|
|
43
|
-
}
|
|
44
|
-
function T() {
|
|
45
|
-
l = n(), r();
|
|
46
|
-
}
|
|
47
|
-
function E() {
|
|
48
|
-
u || d || (e.bindContextEvents?.(() => {
|
|
49
|
-
d || (T(), o() && h());
|
|
50
|
-
}, () => {
|
|
51
|
-
l = null, cancelAnimationFrame(s), s = 0;
|
|
52
|
-
}), T(), C(), u = !0, c = performance.now(), o() && (p ? m() : s = requestAnimationFrame(m)));
|
|
53
|
-
}
|
|
54
|
-
function D(e) {
|
|
55
|
-
u || E(), l?.frame(e);
|
|
56
|
-
}
|
|
57
|
-
function O() {
|
|
58
|
-
d = !0, cancelAnimationFrame(s), s = 0, y && document.removeEventListener("visibilitychange", b), f?.removeEventListener("change", g), w(), e.unbindContextEvents?.(), l?.teardown?.(), l = null, a.clear();
|
|
59
|
-
}
|
|
60
|
-
return e.mode === "capture" && E(), {
|
|
61
|
-
arm: E,
|
|
62
|
-
suspend: _,
|
|
63
|
-
resume: v,
|
|
64
|
-
wake: h,
|
|
65
|
-
renderAt: D,
|
|
66
|
-
dispose: O,
|
|
67
|
-
get armed() {
|
|
68
|
-
return u;
|
|
69
|
-
},
|
|
70
|
-
get disposed() {
|
|
71
|
-
return d;
|
|
72
|
-
},
|
|
73
|
-
get running() {
|
|
74
|
-
return o();
|
|
75
|
-
},
|
|
76
|
-
get reducedMotion() {
|
|
77
|
-
return p;
|
|
78
|
-
}
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
//#endregion
|
|
82
|
-
export { e as t };
|
|
@@ -1,224 +0,0 @@
|
|
|
1
|
-
import { t as e } from "./createCanvasLifecycle-CHD5XrDW.js";
|
|
2
|
-
var t = 1.5;
|
|
3
|
-
function n(e, t, n) {
|
|
4
|
-
return Math.max(t, Math.min(n, e));
|
|
5
|
-
}
|
|
6
|
-
function r() {
|
|
7
|
-
let e = typeof window < "u" && window.devicePixelRatio || 1;
|
|
8
|
-
return Math.min(e, 2);
|
|
9
|
-
}
|
|
10
|
-
function i() {
|
|
11
|
-
let e = typeof window < "u" && window.devicePixelRatio || 1;
|
|
12
|
-
return Math.min(e, t);
|
|
13
|
-
}
|
|
14
|
-
//#endregion
|
|
15
|
-
//#region src/composables/glass/webgl/useWebGLCanvas.ts
|
|
16
|
-
function a() {
|
|
17
|
-
if (typeof document > "u") return null;
|
|
18
|
-
let e = null;
|
|
19
|
-
try {
|
|
20
|
-
if (e = document.createElement("canvas").getContext("webgl2"), !e) return null;
|
|
21
|
-
let t = e.getExtension("WEBGL_debug_renderer_info");
|
|
22
|
-
return t ? String(e.getParameter(t.UNMASKED_RENDERER_WEBGL) ?? "").toLowerCase() : null;
|
|
23
|
-
} catch {
|
|
24
|
-
return null;
|
|
25
|
-
} finally {
|
|
26
|
-
e?.getExtension("WEBGL_lose_context")?.loseContext();
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
function o(t, n) {
|
|
30
|
-
let { setup: r, contextAttrs: i } = n, a = null, o = null, s = null;
|
|
31
|
-
function c() {
|
|
32
|
-
let e = t.getContext("webgl2", i ?? void 0);
|
|
33
|
-
if (!e) throw Error("[useWebGLCanvas] WebGL2 unavailable");
|
|
34
|
-
return a = e, s = r(a), o || (o = new ResizeObserver(() => s?.resize()), o.observe(t)), {
|
|
35
|
-
frame: s.frame,
|
|
36
|
-
shouldContinue: s.shouldContinue,
|
|
37
|
-
time: s.time,
|
|
38
|
-
teardown: () => {
|
|
39
|
-
s?.teardown?.(), a?.getExtension("WEBGL_lose_context")?.loseContext(), o?.disconnect(), o = null, a = null, s = null;
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
let l = null, u = null;
|
|
44
|
-
function d(e) {
|
|
45
|
-
e.preventDefault(), a = null, s = null, u?.();
|
|
46
|
-
}
|
|
47
|
-
let f = e({
|
|
48
|
-
canvas: t,
|
|
49
|
-
mode: n.mode,
|
|
50
|
-
respectReducedMotion: n.respectReducedMotion,
|
|
51
|
-
buildContext: c,
|
|
52
|
-
resize: () => s?.resize(),
|
|
53
|
-
bindContextEvents: (e, n) => {
|
|
54
|
-
l = e, u = n, t.addEventListener("webglcontextlost", d, !1), t.addEventListener("webglcontextrestored", l, !1);
|
|
55
|
-
},
|
|
56
|
-
unbindContextEvents: () => {
|
|
57
|
-
t.removeEventListener("webglcontextlost", d, !1), l && t.removeEventListener("webglcontextrestored", l, !1);
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
return {
|
|
61
|
-
arm: f.arm,
|
|
62
|
-
suspend: f.suspend,
|
|
63
|
-
resume: f.resume,
|
|
64
|
-
wake: f.wake,
|
|
65
|
-
renderAt: f.renderAt,
|
|
66
|
-
dispose: f.dispose,
|
|
67
|
-
get gl() {
|
|
68
|
-
return a;
|
|
69
|
-
},
|
|
70
|
-
get reducedMotion() {
|
|
71
|
-
return f.reducedMotion;
|
|
72
|
-
}
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
//#endregion
|
|
76
|
-
//#region src/composables/glass/webgpu/useWebGPUCanvas.ts
|
|
77
|
-
function s() {
|
|
78
|
-
return typeof navigator < "u" && "gpu" in navigator && navigator.gpu != null;
|
|
79
|
-
}
|
|
80
|
-
function c(t, n) {
|
|
81
|
-
let { setup: r } = n, i = n.alphaMode ?? "premultiplied", a = null, o = null, c = "bgra8unorm", l = null, u = null, d = !1, f = null, p = null, m = null;
|
|
82
|
-
function h() {
|
|
83
|
-
if (!a) throw Error("[useWebGPUCanvas] device not acquired");
|
|
84
|
-
let e = t.getContext("webgpu");
|
|
85
|
-
if (!e) throw Error("[useWebGPUCanvas] WebGPU context unavailable");
|
|
86
|
-
return o = e, c = navigator.gpu.getPreferredCanvasFormat(), e.configure({
|
|
87
|
-
device: a,
|
|
88
|
-
format: c,
|
|
89
|
-
alphaMode: i
|
|
90
|
-
}), a.pushErrorScope("validation"), a.addEventListener("uncapturederror", g), u = r(a, o, c), a.popErrorScope().then((e) => {
|
|
91
|
-
e && n.onInitError?.(e);
|
|
92
|
-
}), l || (l = new ResizeObserver(() => u?.resize()), l.observe(t)), {
|
|
93
|
-
frame: (e) => u?.frame(e),
|
|
94
|
-
shouldContinue: () => u?.shouldContinue() ?? !1,
|
|
95
|
-
time: (e) => u?.time?.(e) ?? e,
|
|
96
|
-
teardown: () => {
|
|
97
|
-
u?.teardown?.(), a?.removeEventListener("uncapturederror", g), l?.disconnect(), l = null, o = null, u = null;
|
|
98
|
-
}
|
|
99
|
-
};
|
|
100
|
-
}
|
|
101
|
-
function g(e) {
|
|
102
|
-
let t = e.error;
|
|
103
|
-
n.onInitError?.(t);
|
|
104
|
-
}
|
|
105
|
-
let _ = e({
|
|
106
|
-
canvas: t,
|
|
107
|
-
mode: n.mode,
|
|
108
|
-
respectReducedMotion: n.respectReducedMotion,
|
|
109
|
-
buildContext: h,
|
|
110
|
-
resize: () => u?.resize(),
|
|
111
|
-
bindContextEvents: (e, t) => {
|
|
112
|
-
p = e, m = t;
|
|
113
|
-
},
|
|
114
|
-
unbindContextEvents: () => {
|
|
115
|
-
p = null, m = null;
|
|
116
|
-
}
|
|
117
|
-
});
|
|
118
|
-
async function v() {
|
|
119
|
-
if (!s()) throw Error("[useWebGPUCanvas] navigator.gpu unavailable");
|
|
120
|
-
let e = await navigator.gpu.requestAdapter(n.adapterOptions);
|
|
121
|
-
if (!e) throw Error("[useWebGPUCanvas] no GPU adapter");
|
|
122
|
-
let t = await e.requestDevice(n.deviceDescriptor);
|
|
123
|
-
a = t, y(t);
|
|
124
|
-
}
|
|
125
|
-
function y(e) {
|
|
126
|
-
e.lost.then((e) => {
|
|
127
|
-
d || (m?.(), a = null, e.reason !== "destroyed" && v().then(() => {
|
|
128
|
-
d || p?.();
|
|
129
|
-
}).catch((e) => n.onInitError?.(e)));
|
|
130
|
-
});
|
|
131
|
-
}
|
|
132
|
-
async function b() {
|
|
133
|
-
if (!d) {
|
|
134
|
-
if (f) return f;
|
|
135
|
-
if (a) {
|
|
136
|
-
_.arm();
|
|
137
|
-
return;
|
|
138
|
-
}
|
|
139
|
-
return f = (async () => {
|
|
140
|
-
try {
|
|
141
|
-
if (await v(), d) return;
|
|
142
|
-
_.arm();
|
|
143
|
-
} catch (e) {
|
|
144
|
-
throw n.onInitError?.(e), e;
|
|
145
|
-
} finally {
|
|
146
|
-
f = null;
|
|
147
|
-
}
|
|
148
|
-
})(), f;
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
return {
|
|
152
|
-
armAsync: b,
|
|
153
|
-
arm: () => {
|
|
154
|
-
a && _.arm();
|
|
155
|
-
},
|
|
156
|
-
suspend: _.suspend,
|
|
157
|
-
resume: _.resume,
|
|
158
|
-
wake: _.wake,
|
|
159
|
-
renderAt: _.renderAt,
|
|
160
|
-
dispose: () => {
|
|
161
|
-
d = !0, _.dispose(), a?.destroy?.(), a = null;
|
|
162
|
-
},
|
|
163
|
-
get device() {
|
|
164
|
-
return a;
|
|
165
|
-
},
|
|
166
|
-
get reducedMotion() {
|
|
167
|
-
return _.reducedMotion;
|
|
168
|
-
}
|
|
169
|
-
};
|
|
170
|
-
}
|
|
171
|
-
//#endregion
|
|
172
|
-
//#region src/composables/glass/webgpu/useGpuSubstrate.ts
|
|
173
|
-
function l(e, t) {
|
|
174
|
-
if (s() && t.setupWGPU != null) {
|
|
175
|
-
let n = c(e, {
|
|
176
|
-
mode: t.mode,
|
|
177
|
-
respectReducedMotion: t.respectReducedMotion,
|
|
178
|
-
setup: t.setupWGPU,
|
|
179
|
-
alphaMode: t.alphaMode,
|
|
180
|
-
adapterOptions: t.adapterOptions,
|
|
181
|
-
deviceDescriptor: t.deviceDescriptor,
|
|
182
|
-
onInitError: t.onInitError
|
|
183
|
-
});
|
|
184
|
-
return {
|
|
185
|
-
backend: "webgpu",
|
|
186
|
-
armAsync: n.armAsync,
|
|
187
|
-
arm: n.arm,
|
|
188
|
-
suspend: n.suspend,
|
|
189
|
-
resume: n.resume,
|
|
190
|
-
wake: n.wake,
|
|
191
|
-
renderAt: n.renderAt,
|
|
192
|
-
dispose: n.dispose,
|
|
193
|
-
get reducedMotion() {
|
|
194
|
-
return n.reducedMotion;
|
|
195
|
-
}
|
|
196
|
-
};
|
|
197
|
-
}
|
|
198
|
-
let n = o(e, {
|
|
199
|
-
mode: t.mode,
|
|
200
|
-
respectReducedMotion: t.respectReducedMotion,
|
|
201
|
-
contextAttrs: t.contextAttrs,
|
|
202
|
-
setup: t.setupGL
|
|
203
|
-
});
|
|
204
|
-
return {
|
|
205
|
-
backend: "webgl2",
|
|
206
|
-
armAsync: async () => {
|
|
207
|
-
n.arm();
|
|
208
|
-
},
|
|
209
|
-
arm: n.arm,
|
|
210
|
-
suspend: n.suspend,
|
|
211
|
-
resume: n.resume,
|
|
212
|
-
wake: n.wake,
|
|
213
|
-
renderAt: n.renderAt,
|
|
214
|
-
dispose: n.dispose,
|
|
215
|
-
get reducedMotion() {
|
|
216
|
-
return n.reducedMotion;
|
|
217
|
-
}
|
|
218
|
-
};
|
|
219
|
-
}
|
|
220
|
-
//#endregion
|
|
221
|
-
//#region src/components/custom/aurora/constants/shaders/procedural-color.wgsl.ts
|
|
222
|
-
var u = "\nfn srgbToLinearCh(c: f32) -> f32 {\n if (c <= 0.04045) { return c / 12.92; }\n return pow((c + 0.055) / 1.055, 2.4);\n}\nfn srgbToLinear(c: vec3<f32>) -> vec3<f32> {\n return vec3<f32>(srgbToLinearCh(c.r), srgbToLinearCh(c.g), srgbToLinearCh(c.b));\n}\n\nfn linearToSrgbCh(c: f32) -> f32 {\n if (c <= 0.0031308) { return c * 12.92; }\n return 1.055 * pow(c, 1.0 / 2.4) - 0.055;\n}\nfn linearToSrgb(c: vec3<f32>) -> vec3<f32> {\n return vec3<f32>(linearToSrgbCh(c.r), linearToSrgbCh(c.g), linearToSrgbCh(c.b));\n}", d = "const FBM_ROT: mat2x2<f32> = mat2x2<f32>(0.8, 0.6, -0.6, 0.8);", f = "\n// value.js LINEAR_SRGB_TO_LMS, row-major → WGSL columns (= the transpose).\nconst LINEAR_SRGB_TO_LMS: mat3x3<f32> = mat3x3<f32>(\n 0.4122214708, 0.2119034982, 0.0883024619,\n 0.5363325363, 0.6806995451, 0.2817188376,\n 0.0514459929, 0.1073969566, 0.6299787005\n);\n\n// value.js srgbToOKLab's INLINE LMS→OKLab coefficients, row-major → WGSL columns.\nconst LMS_TO_OKLAB: mat3x3<f32> = mat3x3<f32>(\n 0.2104542553, 1.9779984951, 0.0259040371,\n 0.7936177850, -2.4285922050, 0.7827717662,\n -0.0040720468, 0.4505937099, -0.8086757660\n);\n\n// value.js OKLAB_TO_LMS_COEFF, row-major → WGSL columns.\nconst OKLAB_TO_LMS: mat3x3<f32> = mat3x3<f32>(\n 1.0, 1.0, 1.0,\n 0.3963377774, -0.1055613458, -0.0894841775,\n 0.2158037573, -0.0638541728, -1.2914855480\n);\n\n// value.js LMS_TO_LINEAR_SRGB, row-major → WGSL columns.\nconst LMS_TO_LINEAR_SRGB: mat3x3<f32> = mat3x3<f32>(\n 4.0767416621, -1.2684380046, -0.0041960863,\n -3.3077115913, 2.6097574011, -0.7034186147,\n 0.2309699292, -0.3413193965, 1.7076147010\n);\n\nfn cbrt3(v: vec3<f32>) -> vec3<f32> {\n return sign(v) * pow(abs(v), vec3<f32>(1.0 / 3.0));\n}\n\n// Gamma sRGB → raw OKLab (L, a, b). Mirrors value.js srgbToOKLab.\nfn srgbToOklab(c: vec3<f32>) -> vec3<f32> {\n let lin = srgbToLinear(c);\n let lms = LINEAR_SRGB_TO_LMS * lin;\n return LMS_TO_OKLAB * cbrt3(lms);\n}\n\n// Raw OKLab (L, a, b) → linear sRGB. Mirrors value.js oklabToLinearSRGB.\nfn oklabToLinearSrgb(lab: vec3<f32>) -> vec3<f32> {\n let lms_ = OKLAB_TO_LMS * lab;\n let lms = lms_ * lms_ * lms_;\n return LMS_TO_LINEAR_SRGB * lms;\n}\n\n// OKLab → OKLCh: H in RADIANS, folded to [0, 2pi). Mirrors value.js rawOklabToOklch.\nfn oklabToOklch(lab: vec3<f32>) -> vec3<f32> {\n let C = length(lab.yz);\n var H = atan2(lab.z, lab.y);\n if (H < 0.0) { H = H + 2.0 * PI; }\n return vec3<f32>(lab.x, C, H);\n}\n\n// OKLCh (H radians) → OKLab. Mirrors value.js rawOklchToOklab.\nfn oklchToOklab(lch: vec3<f32>) -> vec3<f32> {\n return vec3<f32>(lch.x, lch.y * cos(lch.z), lch.y * sin(lch.z));\n}", p = "\n// value.js interpolateHue in the NORMALIZED-TURNS domain. methods: 0 shorter,\n// 1 longer, 2 increasing, 3 decreasing.\nfn interpolateHueTurns(h0: f32, h1: f32, t: f32, method: i32) -> f32 {\n let TAU = 2.0 * PI;\n var a = h0 / TAU;\n var b = h1 / TAU;\n let i = b - a;\n if (method == 0) { // shorter\n if (i > 0.5) { a = a + 1.0; } else if (i < -0.5) { b = b + 1.0; }\n } else if (method == 1) { // longer\n if (i > 0.0 && i < 0.5) { a = a + 1.0; } else if (i > -0.5 && i <= 0.0) { b = b + 1.0; }\n } else if (method == 2) { // increasing\n if (i < 0.0) { b = b + 1.0; }\n } else { // decreasing\n if (i > 0.0) { a = a + 1.0; }\n }\n var r = a + t * (b - a);\n r = fract(r); // fract is non-negative in WGSL\n return r * TAU; // back to radians\n}\n\n// Linear-sRGB endpoint pair → OKLab-rectangular interpolation → linear sRGB.\nfn mixPaletteOklab(linA: vec3<f32>, linB: vec3<f32>, t: f32) -> vec3<f32> {\n let labA = LMS_TO_OKLAB * cbrt3(LINEAR_SRGB_TO_LMS * linA);\n let labB = LMS_TO_OKLAB * cbrt3(LINEAR_SRGB_TO_LMS * linB);\n let lab = mix(labA, labB, t);\n return oklabToLinearSrgb(lab);\n}\n\n// Linear-sRGB endpoint pair → OKLCh hue-arc interpolation → linear sRGB.\nfn mixPaletteOklchArc(linA: vec3<f32>, linB: vec3<f32>, t: f32, method: i32) -> vec3<f32> {\n let labA = LMS_TO_OKLAB * cbrt3(LINEAR_SRGB_TO_LMS * linA);\n let labB = LMS_TO_OKLAB * cbrt3(LINEAR_SRGB_TO_LMS * linB);\n let lchA = oklabToOklch(labA);\n let lchB = oklabToOklch(labB);\n let L = mix(lchA.x, lchB.x, t);\n let C = mix(lchA.y, lchB.y, t);\n let H = interpolateHueTurns(lchA.z, lchB.z, t, method);\n return oklabToLinearSrgb(oklchToOklab(vec3<f32>(L, C, H)));\n}\n\n// The ramp dispatcher (the samplePalette splices it). tRaw is the raw inter-stop\n// parameter [0,1]; the smoothstep ease + the huePath branch live here so the ramp is\n// one source. increasing(2)/decreasing(3) take the OKLCh hue-arc; every other method\n// takes the OKLab-rectangular straight line.\nfn samplePaletteRamp(a: vec3<f32>, b: vec3<f32>, tRaw: f32, huePath: i32) -> vec3<f32> {\n let t = smoothstep(0.0, 1.0, tRaw);\n if (huePath == 2 || huePath == 3) {\n return mixPaletteOklchArc(a, b, t, huePath);\n }\n return mixPaletteOklab(a, b, t);\n}";
|
|
223
|
-
//#endregion
|
|
224
|
-
export { l as a, n as c, p as i, i as l, u as n, s as o, f as r, a as s, d as t, r as u };
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
//#region src/composables/glass/canvas2d/resolveCanvasColor.ts
|
|
2
|
-
function e(e, t) {
|
|
3
|
-
let n = e.trim(), r = n.startsWith("--") ? `var(${n})` : n;
|
|
4
|
-
if (typeof document > "u" || typeof window > "u" || !t || typeof t.appendChild != "function") return e;
|
|
5
|
-
let i = document.createElement("span"), a = i.style;
|
|
6
|
-
a.position = "absolute", a.width = "0", a.height = "0", a.padding = "0", a.margin = "0", a.border = "0", a.visibility = "hidden", a.pointerEvents = "none", a.color = r, t.appendChild(i);
|
|
7
|
-
let o = window.getComputedStyle(i).color;
|
|
8
|
-
return t.removeChild(i), o || e;
|
|
9
|
-
}
|
|
10
|
-
//#endregion
|
|
11
|
-
export { e as t };
|