@mkbabb/glass-ui 5.0.0 → 6.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.
- package/README.md +30 -27
- package/dist/DropdownMenuTrigger-BzQtd9lt.js +65 -0
- package/dist/{FadingScroll-BSRLqQCx.js → FadingScroll-C1ZWEjmG.js} +32 -25
- package/dist/{Input-DKf-XwUM.js → Input-B4WQ_CMc.js} +1 -1
- package/dist/{PagerDots-BP6jh7z4.js → PagerDots-BoTQ7g5l.js} +123 -95
- package/dist/{accent-tone-solve-CBw3L0cy.js → accent-tone-solve-Dii9ePhK.js} +1 -1
- package/dist/animated-digit.js +1 -1
- package/dist/aurora.js +324 -314
- package/dist/blob-config.d.ts +0 -4
- package/dist/blob-config.js +1 -1
- package/dist/blob.js +280 -261
- package/dist/{button-BXzhydVB.js → button-32mg6xA8.js} +63 -56
- package/dist/button.js +1 -1
- package/dist/canvas.js +1 -1
- package/dist/{CardAction-2uUvjMQK.js → card-16xmzIr3.js} +29 -11
- package/dist/card.js +1 -1
- package/dist/carousel.d.ts +1 -2
- package/dist/carousel.js +26 -95
- package/dist/chip.d.ts +0 -9
- package/dist/chip.js +1 -1
- package/dist/collapsible.js +1 -1
- package/dist/color-swatch.js +1 -0
- package/dist/color.js +87 -3
- package/dist/{CommandShortcut-fmdbsEJL.js → command-BjPjUU9z.js} +56 -51
- package/dist/command.js +1 -1
- package/dist/completion-seal.js +64 -55
- package/dist/components/_shared/ModalOverlay.vue.d.ts +5 -52
- package/dist/components/_shared/field-surfaces.css +1 -0
- package/dist/components/_shared/menuItemVariants.d.ts +2 -2
- package/dist/components/_shared/useMotionAxis.d.ts +2 -2
- package/dist/components/_shared/valueDomain.d.ts +6 -0
- package/dist/components/alert/index.d.ts +1 -1
- package/dist/components/animated-digit/AnimatedDigit.vue.d.ts +1 -1
- package/dist/components/aurora/Aurora.vue.d.ts +7 -1
- package/dist/components/aurora/composables/runtime.d.ts +5 -3
- package/dist/components/aurora/composables/useAurora.d.ts +4 -2
- package/dist/components/avatar/AvatarImage.vue.d.ts +3 -1
- package/dist/components/badge/index.d.ts +2 -2
- package/dist/components/blob/Blob.vue.d.ts +11 -0
- package/dist/components/blob/composables/useMetaballRenderer.d.ts +2 -0
- package/dist/components/button/Button.vue.d.ts +4 -2
- package/dist/components/button/index.d.ts +2 -2
- package/dist/components/card/Card.vue.d.ts +4 -4
- package/dist/components/card/ScrollCard.vue.d.ts +1 -1
- package/dist/components/card/styles.css +1 -0
- package/dist/components/carousel/Carousel.vue.d.ts +2 -2
- package/dist/components/carousel/CarouselNext.vue.d.ts +1 -1
- package/dist/components/carousel/CarouselPrevious.vue.d.ts +1 -1
- package/dist/components/carousel/index.d.ts +0 -1
- package/dist/components/carousel/useCarousel.d.ts +2 -2
- package/dist/components/combobox/ComboboxList.vue.d.ts +1 -1
- package/dist/components/combobox/index.d.ts +1 -3
- package/dist/components/command/Command.vue.d.ts +1 -1
- package/dist/components/command/CommandDialog.vue.d.ts +9 -6
- package/dist/components/completion-seal/styles.css +1 -0
- package/dist/components/constellation/Constellation.vue.d.ts +6 -1
- package/dist/components/constellation/composables/useConstellation.d.ts +3 -16
- package/dist/components/constellation/constants.d.ts +6 -16
- package/dist/components/constellation/constellationField.d.ts +3 -5
- package/dist/components/constellation/constellationInteraction.d.ts +1 -1
- package/dist/components/constellation/constellationRender.d.ts +11 -21
- package/dist/components/constellation/constellationTypes.d.ts +12 -9
- package/dist/components/constellation/index.d.ts +1 -1
- package/dist/components/controls/DarkModeToggle.vue.d.ts +0 -2
- package/dist/components/data-table/DataTable.vue.d.ts +14 -2
- package/dist/components/data-table/index.d.ts +1 -2
- package/dist/components/data-table/types.d.ts +26 -1
- package/dist/components/deck/constants.d.ts +0 -10
- package/dist/components/deck/index.d.ts +0 -1
- package/dist/components/dialog/DialogContent.vue.d.ts +7 -1
- package/dist/components/dialog/index.d.ts +0 -1
- package/dist/components/dock/DockControl.vue.d.ts +4 -4
- package/dist/components/dock/DockStack.vue.d.ts +2 -2
- package/dist/components/dock/GlassDock.vue.d.ts +1 -0
- package/dist/components/dock/composables/dockMorphContext.d.ts +2 -0
- package/dist/components/dock/composables/dockMorphMeasure.d.ts +11 -1
- package/dist/components/dock/composables/useDockClickIntegrity.d.ts +4 -0
- package/dist/components/dock/composables/useDockOverflowFit.d.ts +3 -3
- package/dist/components/dock/composables/useDockPopover.d.ts +2 -0
- package/dist/components/dock/composables/useDockShellProps.d.ts +7 -0
- package/dist/components/dock/composables/useDockState.d.ts +2 -2
- package/dist/components/dock/constants.d.ts +0 -12
- package/dist/components/dock/index.d.ts +1 -0
- package/dist/components/dock/styles/adaptive-legibility.css +1 -0
- package/dist/components/dock/styles/controls/icon-button.css +1 -0
- package/dist/{styles/dock-controls → components/dock/styles/controls}/touch-floor.css +1 -1
- package/dist/components/dock/styles/controls.css +1 -0
- package/dist/{styles/dock → components/dock/styles}/density.css +1 -1
- package/dist/components/dock/styles/dock.css +1 -0
- package/dist/components/dock/styles/index.css +1 -0
- package/dist/components/dock/styles/layer-group.css +1 -0
- package/dist/components/dock/styles/layers.css +1 -0
- package/dist/components/dock/styles/overflow.css +1 -0
- package/dist/components/dock/styles/popover.css +1 -0
- package/dist/components/dock/styles/shape.css +1 -0
- package/dist/components/dock/styles/shell.css +1 -0
- package/dist/components/drawer/Drawer.vue.d.ts +3 -3
- package/dist/components/drawer/composables/drawerSnapContext.d.ts +3 -1
- package/dist/components/drawer/constants.d.ts +6 -6
- package/dist/components/drawer/index.d.ts +4 -6
- package/dist/components/drawer/styles.css +1 -0
- package/dist/components/dropdown-menu/DropdownMenuContent.vue.d.ts +1 -1
- package/dist/components/dropdown-menu/DropdownMenuTrigger.vue.d.ts +9 -3
- package/dist/components/dropdown-menu/index.d.ts +0 -1
- package/dist/components/easing/EasingConfigurator.vue.d.ts +1 -1
- package/dist/components/easing/EasingPicker.vue.d.ts +2 -2
- package/dist/components/easing/composables/useEasingPicker.d.ts +4 -0
- package/dist/components/easing/constants.d.ts +2 -0
- package/dist/components/fading-scroll/composables/useFadingScroll.d.ts +3 -3
- package/dist/components/fourier-field/FourierField.vue.d.ts +7 -1
- package/dist/components/fourier-field/composables/useFourierField.d.ts +2 -1
- package/dist/components/handmark/HandMark.vue.d.ts +1 -1
- package/dist/components/handmark/geometry.d.ts +1 -1
- package/dist/components/handmark/index.d.ts +4 -6
- package/dist/components/icon-chip/styles.css +1 -0
- package/dist/components/index.d.ts +0 -1
- package/dist/components/infinite-scroll/index.d.ts +1 -0
- package/dist/components/instrument-chassis/styles.css +1 -0
- package/dist/components/labeled-field/LabeledField.vue.d.ts +12 -2
- package/dist/components/labeled-field/LabeledInput.vue.d.ts +10 -3
- package/dist/components/liquid-grid/LiquidGrid.vue.d.ts +4 -0
- package/dist/components/liquid-grid/composables/useLiquidGrid.d.ts +2 -1
- package/dist/components/metric-stack/MetricStack.vue.d.ts +1 -1
- package/dist/components/pager-dots/PagerDots.vue.d.ts +1 -1
- package/dist/components/popover/PopoverContent.vue.d.ts +1 -1
- package/dist/components/progress/Progress.vue.d.ts +5 -40
- package/dist/components/progress/ProgressDefault.vue.d.ts +1 -17
- package/dist/components/progress/ProgressGradient.vue.d.ts +1 -0
- package/dist/components/progress/ProgressLiquid.vue.d.ts +1 -0
- package/dist/components/progress/index.d.ts +0 -5
- package/dist/components/progress/valueMarks.css +1 -0
- package/dist/components/pulse/Pulse.vue.d.ts +2 -2
- package/dist/components/scroll-progress-rim/styles.css +1 -0
- package/dist/components/search/FuzzySearch.vue.d.ts +4 -2
- package/dist/components/search/SearchBar.vue.d.ts +2 -2
- package/dist/components/search/searchVariants.d.ts +1 -1
- package/dist/components/select/SelectContent.vue.d.ts +1 -1
- package/dist/components/select/index.d.ts +0 -2
- package/dist/components/skeleton/Skeleton.vue.d.ts +1 -1
- package/dist/components/slider/Slider.vue.d.ts +2 -0
- package/dist/components/split-chars/SplitChars.vue.d.ts +1 -1
- package/dist/components/surface/Surface.vue.d.ts +1 -1
- package/dist/components/table/Table.vue.d.ts +4 -0
- package/dist/components/tabs/SegmentedTabs.vue.d.ts +10 -0
- package/dist/components/tabs/index.d.ts +1 -1
- package/dist/components/tabs/styles/drag.css +1 -0
- package/dist/components/tags-input/TagsInput.vue.d.ts +2 -2
- package/dist/components/timeline/ContinuousTimeline.vue.d.ts +1 -1
- package/dist/components/timeline/GlassTimeline.vue.d.ts +4 -4
- package/dist/components/toast/Toast.vue.d.ts +3 -3
- package/dist/components/toast/use-toast.d.ts +4 -4
- package/dist/components/typewriter/TypewriterText.vue.d.ts +1 -4
- package/dist/components/typewriter/composables/useTypewriter.d.ts +0 -1
- package/dist/components/typewriter/utils/graphemes.d.ts +1 -0
- package/dist/components/watercolor-dot/WatercolorDot.vue.d.ts +2 -2
- package/dist/composables/glass/useGlassBackdropLuminance.d.ts +31 -0
- package/dist/composables/glass/webgpu/rendererStatus.d.ts +13 -0
- package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +3 -0
- package/dist/composables/glass/webgpu/webgpuCanvasTypes.d.ts +2 -0
- package/dist/composables/motion/springProjection.d.ts +16 -0
- package/dist/composables/motion/useAnimatedNumber.d.ts +1 -6
- package/dist/composables/motion/useCountup.d.ts +1 -6
- package/dist/composables/motion/useDockCtaReceive.d.ts +55 -0
- package/dist/composables/motion/useElementMorph.d.ts +8 -0
- package/dist/composables/motion/useLiquidPress.d.ts +12 -4
- package/dist/composables/motion/useNumericTransition.d.ts +2 -0
- package/dist/composables/motion/useTextHighlight.d.ts +2 -1
- package/dist/configurator-CSENXXSy.js +311 -0
- package/dist/configurator.js +2 -3
- package/dist/constellation.js +235 -571
- package/dist/controls.js +55 -63
- package/dist/{createCanvasLifecycle-DlrcvWbb.js → createCanvasLifecycle-hsFkQVdl.js} +32 -32
- package/dist/dark-DIH-blY1.js +70 -0
- package/dist/dark.d.ts +1 -2
- package/dist/dark.js +2 -20
- package/dist/{DataTable-Bxya8nBn.js → data-table-DveMdgBM.js} +231 -120
- package/dist/data-table.js +2 -2
- package/dist/deck.js +10 -21
- package/dist/dialog-BzQxKrUr.js +281 -0
- package/dist/dialog.js +2 -3
- package/dist/dock.js +561 -428
- package/dist/{dockContext-d-WpJN2Z.js → dockContext-4S9qP0Z4.js} +1 -1
- package/dist/dom.js +196 -7
- package/dist/drawer.js +111 -66
- package/dist/dropdown-menu-DORIA52F.js +378 -0
- package/dist/dropdown-menu.js +3 -2
- package/dist/easing.d.ts +0 -9
- package/dist/easing.js +334 -187
- package/dist/expandable-container.js +12 -4
- package/dist/fading-scroll.js +1 -1
- package/dist/focus-scope.js +1 -1
- package/dist/forms.js +37 -78
- package/dist/fourier-field.js +273 -263
- package/dist/fourier-math.d.ts +0 -6
- package/dist/fourier-math.js +112 -2
- package/dist/glass-ui.css +1 -1
- package/dist/glass-ui.js +131 -195
- package/dist/handmark.d.ts +0 -2
- package/dist/handmark.js +82 -82
- package/dist/header-ribbon.js +41 -30
- package/dist/{IconChip-CwLmBJ_K.js → icon-chip-BWuxz1-u.js} +1 -1
- package/dist/icon-chip.js +1 -1
- package/dist/{IconTooltip-D9sbK-Mk.js → icon-tooltip-CO6rw0dZ.js} +1 -1
- package/dist/icon-tooltip.js +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/infinite-scroll.d.ts +0 -1
- package/dist/infinite-scroll.js +17 -15
- package/dist/instrument-chassis.js +1 -1
- package/dist/keyboard.js +104 -2
- package/dist/label.js +1 -1
- package/dist/labeled-field.js +95 -69
- package/dist/liquid-grid.js +173 -162
- package/dist/metric-badge.js +3 -3
- package/dist/metric-cell.js +2 -2
- package/dist/metric-stack.js +1 -1
- package/dist/motion-core.js +15 -16
- package/dist/motion-curves.d.ts +0 -20
- package/dist/motion.js +59 -58
- package/dist/{Notification-DQv2cOh9.js → notification-DVs7ODMg.js} +17 -8
- package/dist/notification.js +1 -1
- package/dist/{NumberFieldContent-BkE7xPS9.js → number-field-PvkGedHk.js} +2 -2
- package/dist/number-field.js +1 -1
- package/dist/pager-dots.js +1 -1
- package/dist/paper-backdrop.js +31 -2
- package/dist/{PopoverContent-DOtszFWK.js → popover-WMgyRSyN.js} +7 -2
- package/dist/popover.js +1 -1
- package/dist/procedural-color.wgsl-B9mLK7v0.js +377 -0
- package/dist/progress-C-HHuFZy.js +192 -0
- package/dist/progress.js +2 -2
- package/dist/pulse.js +3 -1
- package/dist/reactive.js +19 -3
- package/dist/rendererStatus-C2-zC2Q-.js +40 -0
- package/dist/{resolveCanvasColor-B3L-akX0.js → resolveCanvasColor-yarP5bdk.js} +1 -1
- package/dist/scroll-progress-rim.js +1 -1
- package/dist/search.js +187 -146
- package/dist/{SelectScrollDownButton-CDtwaWkZ.js → select-BIv4R3Ir.js} +109 -44
- package/dist/select.js +2 -4
- package/dist/separator-CBU94kTM.js +62 -0
- package/dist/separator.js +1 -1
- package/dist/sidebar.js +1 -1
- package/dist/slider-Cc_qw6GA.js +166 -0
- package/dist/slider.js +1 -1
- package/dist/sortable-list.js +43 -43
- package/dist/styles/accessibility.css +1 -0
- package/dist/styles/components.css +1 -1
- package/dist/styles/glass/control-surfaces.css +1 -1
- package/dist/styles/glass/glass-capsule.css +1 -1
- package/dist/styles/glass/ladder.css +1 -1
- package/dist/styles/glass/liquid-fill.css +1 -1
- package/dist/styles/glass/material-roles.css +1 -0
- package/dist/styles/glass/material.css +1 -1
- package/dist/styles/glass/surface-axis.css +1 -1
- package/dist/styles/glass/surfaces-pager.css +1 -1
- package/dist/styles/glass/surfaces.css +1 -1
- package/dist/styles/glass.css +1 -1
- package/dist/styles/index.css +1 -1
- package/dist/styles/theme/bridges.css +1 -1
- package/dist/styles/tokens/glass-fx.css +1 -1
- package/dist/styles/tokens/glass.css +1 -1
- package/dist/styles/tokens/offsets.css +1 -1
- package/dist/styles/tokens/scale-paper.css +1 -1
- package/dist/styles/tokens/scheme-spring.css +1 -1
- package/dist/styles/tokens/shadow.css +1 -1
- package/dist/styles/tokens.d.ts +53 -0
- package/dist/styles/tokens.ts +58 -0
- package/dist/styles/typography/scale.css +1 -1
- package/dist/styles/typography/semantic.css +1 -1
- package/dist/styles/typography/utilities.css +1 -1
- package/dist/styles/utilities/base.css +1 -1
- package/dist/styles/utilities/btn.css +1 -1
- package/dist/styles/utilities/components.css +1 -1
- package/dist/styles/utilities.css +1 -1
- package/dist/{Switch-BPBfhMU3.js → switch-Boj4Ucn5.js} +1 -1
- package/dist/switch.js +1 -1
- package/dist/tabs.js +51 -45
- package/dist/timeline.js +2 -2
- package/dist/toast.js +1 -1
- package/dist/{ToggleGroupItem-DNWx2aSW.js → toggle-group-BPchFsns.js} +10 -7
- package/dist/toggle-group.js +1 -1
- package/dist/tokens.d.ts +1 -53
- package/dist/tokens.js +1 -1
- package/dist/{TooltipProvider-GtfYdSVf.js → tooltip-BmOQJzh0.js} +1 -0
- package/dist/tooltip.js +1 -1
- package/dist/typewriter.js +151 -166
- package/dist/{useAccentTone-D25DxviG.js → useAccentTone-C-p6WdPe.js} +1 -1
- package/dist/{useAnimatedNumber-2XC4aRB6.js → useAnimatedNumber-BRVVaFFc.js} +1 -1
- package/dist/useDockCtaReceive-CK-RLASa.js +257 -0
- package/dist/{useGooMorph-CU1pwuC6.js → useGooMorph-D1F6QJlH.js} +140 -59
- package/dist/{useIntersectionPause-Cmt5Tnv9.js → useIntersectionPause-B-dbxl9w.js} +1 -1
- package/dist/useLiquidPress-BYcwwGQV.js +68 -0
- package/dist/{useRAFLoop-CvOo_kgb.js → useRAFLoop-BtwQ9DyY.js} +1 -1
- package/dist/{useScrollProgress-C-yImzhU.js → useScrollProgress-DZI4nf4v.js} +1 -1
- package/dist/{useSelectionGroup-Btpf24aY.js → useSelectionGroup-LDzBdR1Y.js} +3 -3
- package/dist/{useTabRovingFocus-CG1H1k1J.js → useTabRovingFocus-DkLYwo4L.js} +1 -1
- package/dist/{useTouchGate-BlegwvwL.js → useTouchGate-Cj5fOkTv.js} +1 -1
- package/dist/valueDomain-B8L04u3U.js +13 -0
- package/dist/watercolor-dot.js +5 -3
- package/package.json +5 -12
- package/src/styles/accessibility.css +48 -0
- package/src/styles/glass/glass-capsule.css +2 -2
- package/src/styles/glass/ladder.css +1 -1
- package/src/styles/glass/material-roles.css +18 -0
- package/src/styles/glass/material.css +18 -12
- package/src/styles/glass.css +5 -5
- package/src/styles/index.css +38 -30
- package/src/styles/theme/bridges.css +0 -6
- package/src/styles/tokens/glass-fx.css +1 -5
- package/src/styles/tokens/glass.css +1 -2
- package/src/styles/tokens/offsets.css +0 -1
- package/src/styles/tokens/property-regs.css +11 -10
- package/src/styles/tokens/scale-paper.css +0 -1
- package/src/styles/tokens/scheme-motion.css +3 -0
- package/src/styles/tokens/scheme-spring.css +0 -10
- package/src/styles/tokens/shadow.css +3 -29
- package/src/styles/tokens.ts +58 -0
- package/src/styles/typography/scale.css +5 -2
- package/src/styles/typography/semantic.css +5 -5
- package/src/styles/typography/utilities.css +5 -5
- package/src/styles/utilities/base.css +5 -5
- package/src/styles/utilities/btn.css +6 -27
- package/src/styles/utilities.css +4 -6
- package/dist/ConfiguratorRow-BV6zPjTM.js +0 -151
- package/dist/DialogContent-Bl4v10AC.js +0 -192
- package/dist/DialogFooter-C0v4Hz2F.js +0 -168
- package/dist/PaperBackdrop-BYwE8_kg.js +0 -31
- package/dist/Progress-uWLyXE7J.js +0 -308
- package/dist/SelectGroup-BuEptUsa.js +0 -31
- package/dist/SelectSeparator-4QGephvr.js +0 -49
- package/dist/Separator-DqJ6PfOd.js +0 -44
- package/dist/color-Bp5jmv4Z.js +0 -86
- package/dist/components/carousel/GlassCarouselPager.vue.d.ts +0 -50
- package/dist/components/combobox/ComboboxSeparator.vue.d.ts +0 -18
- package/dist/components/combobox/ComboboxViewport.vue.d.ts +0 -18
- package/dist/components/constellation/composables/constellationGLSetup.d.ts +0 -10
- package/dist/components/constellation/composables/constellationWGPUSetup.d.ts +0 -19
- package/dist/components/constellation/composables/uniformBridgeWGPU.d.ts +0 -66
- package/dist/components/constellation/shaders/constellation-lines.glsl.d.ts +0 -2
- package/dist/components/constellation/shaders/constellation-lines.wgsl.d.ts +0 -1
- package/dist/components/constellation/shaders/constellation-points.glsl.d.ts +0 -2
- package/dist/components/constellation/shaders/constellation-points.wgsl.d.ts +0 -1
- package/dist/components/deck/composables/useDeckSpring.d.ts +0 -22
- package/dist/components/dialog/DialogScrollContent.vue.d.ts +0 -33
- package/dist/components/progress/ProgressSectioned.vue.d.ts +0 -47
- package/dist/components/progress/useProgressGeometry.d.ts +0 -60
- package/dist/components/section/Section.vue.d.ts +0 -73
- package/dist/components/section/index.d.ts +0 -1
- package/dist/components/stacked-icons/StackedIconGroup.vue.d.ts +0 -30
- package/dist/components/stacked-icons/index.d.ts +0 -2
- package/dist/components/stacked-icons/types.d.ts +0 -19
- package/dist/dropdown-menu-DaGlVdp9.js +0 -421
- package/dist/math-CIEcwsYi.js +0 -112
- package/dist/procedural-color.wgsl-ByduxnzV.js +0 -4
- package/dist/slider-Cxuj_W_H.js +0 -151
- package/dist/stacked-icons.d.ts +0 -1
- package/dist/stacked-icons.js +0 -98
- package/dist/styles/cards.css +0 -1
- package/dist/styles/completion-seal.css +0 -1
- package/dist/styles/dock/adaptive-legibility.css +0 -1
- package/dist/styles/dock/dock.css +0 -1
- package/dist/styles/dock/layer-group.css +0 -1
- package/dist/styles/dock/layers.css +0 -1
- package/dist/styles/dock/overflow.css +0 -1
- package/dist/styles/dock/popover.css +0 -1
- package/dist/styles/dock/shape.css +0 -1
- package/dist/styles/dock/shell.css +0 -1
- package/dist/styles/dock-controls/icon-button.css +0 -1
- package/dist/styles/dock-controls.css +0 -1
- package/dist/styles/dock.css +0 -1
- package/dist/styles/drawer.css +0 -1
- package/dist/styles/icon-chip.css +0 -1
- package/dist/styles/instrument-chassis.css +0 -1
- package/dist/styles/scroll-progress-rim.css +0 -1
- package/dist/styles/select.css +0 -1
- package/dist/styles/tabs/segmented-tabs-drag.css +0 -1
- package/dist/styles/utilities/animate.css +0 -0
- package/dist/useConfiguratorState-Dq35N_7t.js +0 -167
- package/dist/useDockCtaReceive-BgMmeINo.js +0 -161
- package/dist/useGlobalDark-DjKMEQE2.js +0 -53
- package/dist/useGpuSubstrate-DcY584kE.js +0 -347
- package/dist/useInterval-ZATRi-1T.js +0 -18
- package/dist/useKeyboardShortcuts-ynVmNFo3.js +0 -104
- package/dist/useLiquidPress-BXNHydZh.js +0 -40
- package/dist/useTextHighlight-C46Le9u_.js +0 -72
- package/dist/useViewportReady-c0isoKL8.js +0 -191
- package/src/styles/card-scroll.css +0 -189
- package/src/styles/cards.css +0 -485
- package/src/styles/completion-seal.css +0 -205
- package/src/styles/configurator.css +0 -359
- package/src/styles/dialog-placement.css +0 -68
- package/src/styles/dock/adaptive-legibility.css +0 -119
- package/src/styles/dock/crossfade.css +0 -139
- package/src/styles/dock/cta-seat.css +0 -87
- package/src/styles/dock/density.css +0 -458
- package/src/styles/dock/dock.css +0 -199
- package/src/styles/dock/fisheye.css +0 -81
- package/src/styles/dock/layer-group.css +0 -329
- package/src/styles/dock/layers.css +0 -438
- package/src/styles/dock/morph.css +0 -455
- package/src/styles/dock/overflow.css +0 -332
- package/src/styles/dock/popover.css +0 -249
- package/src/styles/dock/search.css +0 -68
- package/src/styles/dock/section.css +0 -59
- package/src/styles/dock/shape.css +0 -188
- package/src/styles/dock/shell-regions.css +0 -73
- package/src/styles/dock/shell.css +0 -500
- package/src/styles/dock-controls/dark-mode-toggle.css +0 -123
- package/src/styles/dock-controls/icon-button.css +0 -221
- package/src/styles/dock-controls/tab-button.css +0 -143
- package/src/styles/dock-controls/touch-floor.css +0 -119
- package/src/styles/dock-controls/triggers.css +0 -157
- package/src/styles/dock-controls.css +0 -92
- package/src/styles/dock.css +0 -219
- package/src/styles/drawer.css +0 -434
- package/src/styles/feedback-tone.css +0 -104
- package/src/styles/icon-chip.css +0 -256
- package/src/styles/instrument-chassis.css +0 -449
- package/src/styles/menu.css +0 -187
- package/src/styles/scroll-progress-rim.css +0 -87
- package/src/styles/segmented-tabs.css +0 -424
- package/src/styles/select.css +0 -201
- package/src/styles/tabs/segmented-tabs-drag.css +0 -200
- package/src/styles/utilities/animate.css +0 -29
- /package/dist/{coalesce-metric-B8o7zT9u.js → coalesce-metric-znAcLzkB.js} +0 -0
- /package/dist/{CollapsibleContent-DiHcB_HH.js → collapsible-bPzS1aQk.js} +0 -0
- /package/dist/{compile-C55K3P9g.js → compile-DK3Fri1B.js} +0 -0
- /package/dist/{styles → components/_shared}/feedback-tone.css +0 -0
- /package/dist/{styles → components/_shared}/menu.css +0 -0
- /package/dist/{styles → components/card}/card-scroll.css +0 -0
- /package/dist/{styles/configurator.css → components/configurator/styles.css} +0 -0
- /package/dist/{styles/dock-controls → components/controls}/dark-mode-toggle.css +0 -0
- /package/dist/{styles/dialog-placement.css → components/dialog/placement.css} +0 -0
- /package/dist/{styles/dock-controls → components/dock/styles/controls}/tab-button.css +0 -0
- /package/dist/{styles/dock-controls → components/dock/styles/controls}/triggers.css +0 -0
- /package/dist/{styles/dock → components/dock/styles}/crossfade.css +0 -0
- /package/dist/{styles/dock → components/dock/styles}/cta-seat.css +0 -0
- /package/dist/{styles/dock → components/dock/styles}/fisheye.css +0 -0
- /package/dist/{styles/dock → components/dock/styles}/morph.css +0 -0
- /package/dist/{styles/dock → components/dock/styles}/search.css +0 -0
- /package/dist/{styles/dock → components/dock/styles}/section.css +0 -0
- /package/dist/{styles/dock → components/dock/styles}/shell-regions.css +0 -0
- /package/dist/{styles/segmented-tabs.css → components/tabs/styles/segmented.css} +0 -0
- /package/dist/{constants-D8lSMkOz.js → constants-DRZmNIY-.js} +0 -0
- /package/dist/{createContext-BQ1Gy_LB.js → createContext-FU0n5MGK.js} +0 -0
- /package/dist/{flow.glsl-CVqPSj8_.js → flow.glsl-DEGFGE11.js} +0 -0
- /package/dist/{FocusScope-BzKwhsBn.js → focus-scope-DUTKveod.js} +0 -0
- /package/dist/{InstrumentChassis-Dss5Tjcm.js → instrument-chassis-Cvstg4_U.js} +0 -0
- /package/dist/{Label-C84TaQiw.js → label-Cj38tJKG.js} +0 -0
- /package/dist/{menuItemVariants-DbO-Fr74.js → menuItemVariants-D6AOzzND.js} +0 -0
- /package/dist/{pointerFieldMappings-4VtmkOWv.js → pointerFieldMappings-CZojkgKj.js} +0 -0
- /package/dist/{presets-B07HzyKd.js → presets-CxeNvxuO.js} +0 -0
- /package/dist/{prng-B0PLRmR6.js → prng-Dz2_9RJu.js} +0 -0
- /package/dist/{scrollReader-DzYqPQ6V.js → scrollReader-C2oK9Hb8.js} +0 -0
- /package/dist/{supportsCssTimeline-Ie4xJFbD.js → supportsCssTimeline-Dz-GVxXM.js} +0 -0
- /package/dist/{Toaster-C_-WeU9W.js → toast-kAbchIN2.js} +0 -0
- /package/dist/{useControlSize-DJwe-7ZQ.js → useControlSize-CFfOk8I-.js} +0 -0
- /package/dist/{useDocumentVisibility-CpJGUgcJ.js → useDocumentVisibility-YeBDGqtI.js} +0 -0
- /package/dist/{useDragMorph-65ihHePq.js → useDragMorph-7ygF9O0m.js} +0 -0
- /package/dist/{useDragVelocity-BWcNMCux.js → useDragVelocity-CbMZEBaC.js} +0 -0
- /package/dist/{useFuzzySearch-KslRxiJY.js → useFuzzySearch-BOgep7RE.js} +0 -0
- /package/dist/{useLeadTrail-DOH4XkL1.js → useLeadTrail-BYu8dq4G.js} +0 -0
- /package/dist/{usePointerVelocityField-CwXyeW0Z.js → usePointerVelocityField-BdvnO0py.js} +0 -0
- /package/dist/{useResizeObserver-DDuoBeBo.js → useResizeObserver-BcUTquV7.js} +0 -0
- /package/dist/{useResolveTokenColor-DVT5kwv6.js → useResolveTokenColor-C07e-qaT.js} +0 -0
- /package/dist/{useRoutePointer-DL7I0gY4.js → useRoutePointer-BDNMFN73.js} +0 -0
- /package/dist/{useSpringMount-CNvvgGiC.js → useSpringMount-C6-DBx4e.js} +0 -0
- /package/dist/{useTimer-CkDV8SC2.js → useTimer-D8koDvJS.js} +0 -0
- /package/dist/{useUserInvalidAria-Bkruei7M.js → useUserInvalidAria-Cr4nR3tu.js} +0 -0
- /package/dist/{vReveal-DUmiEkX_.js → vReveal-DZfWl9XI.js} +0 -0
- /package/dist/{vSpecular-DlYN0UZy.js → vSpecular-CQFmLNzA.js} +0 -0
- /package/dist/{writeVelocityWeight-D1rvdxJu.js → writeVelocityWeight-D_AcvTsE.js} +0 -0
package/dist/color-Bp5jmv4Z.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, bodyLightness: l, lightnessFloor: u } = t, d = l === void 0 ? n.L - a / 2 : l, f = u === void 0 ? .05 : u, m = Math.max(2, Math.min(4, Math.round(r))), h = [];
|
|
73
|
-
for (let e = 0; e < m; e++) {
|
|
74
|
-
let t = m === 1 ? 0 : e / (m - 1), r = d + a * t, l = Math.max(0, n.C + s * Math.sin(Math.PI * t));
|
|
75
|
-
c !== void 0 && (l = Math.min(l, c));
|
|
76
|
-
let u = v(n.h, i, o, t);
|
|
77
|
-
h.push(y({
|
|
78
|
-
L: Math.min(.98, Math.max(f, r)),
|
|
79
|
-
C: l,
|
|
80
|
-
h: u
|
|
81
|
-
}));
|
|
82
|
-
}
|
|
83
|
-
return h;
|
|
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,50 +0,0 @@
|
|
|
1
|
-
import type { HTMLAttributes } from "vue";
|
|
2
|
-
/**
|
|
3
|
-
* GlassCarouselPager — audacious carousel pager substrate.
|
|
4
|
-
*
|
|
5
|
-
* A canonical chevron-prev + counter-pill + chevron-next + state-toggle row.
|
|
6
|
-
* Composes `<Button variant="outline" iconOnly>` chevrons with a glass-card
|
|
7
|
-
* counter pill and an optional toggle slot for collapse/expand affordances.
|
|
8
|
-
*
|
|
9
|
-
* Standalone: accepts `:index` / `:total` props and emits `@prev` / `@next` /
|
|
10
|
-
* `@select(i)`, so it composes with `<Carousel>` (embla — wire via
|
|
11
|
-
* `useCarousel`) or any manual-state host.
|
|
12
|
-
*/
|
|
13
|
-
type __VLS_Props = {
|
|
14
|
-
/** Current zero-based slide index. */
|
|
15
|
-
index: number;
|
|
16
|
-
/** Total slide count. */
|
|
17
|
-
total: number;
|
|
18
|
-
/** Layout orientation. Defaults to horizontal. */
|
|
19
|
-
orientation?: "horizontal" | "vertical";
|
|
20
|
-
/** Show "X / N" counter pill. Defaults to true. */
|
|
21
|
-
showCounter?: boolean;
|
|
22
|
-
/** Wrap at boundaries instead of disabling. Defaults to false. */
|
|
23
|
-
loop?: boolean;
|
|
24
|
-
class?: HTMLAttributes["class"];
|
|
25
|
-
};
|
|
26
|
-
declare var __VLS_27: {};
|
|
27
|
-
type __VLS_Slots = {} & {
|
|
28
|
-
trailing?: (props: typeof __VLS_27) => any;
|
|
29
|
-
};
|
|
30
|
-
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
31
|
-
select: (index: number) => any;
|
|
32
|
-
next: () => any;
|
|
33
|
-
prev: () => any;
|
|
34
|
-
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
35
|
-
onSelect?: ((index: number) => any) | undefined;
|
|
36
|
-
onNext?: (() => any) | undefined;
|
|
37
|
-
onPrev?: (() => any) | undefined;
|
|
38
|
-
}>, {
|
|
39
|
-
loop: boolean;
|
|
40
|
-
orientation: "horizontal" | "vertical";
|
|
41
|
-
showCounter: boolean;
|
|
42
|
-
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
43
|
-
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
44
|
-
declare const _default: typeof __VLS_export;
|
|
45
|
-
export default _default;
|
|
46
|
-
type __VLS_WithSlots<T, S> = T & {
|
|
47
|
-
new (): {
|
|
48
|
-
$slots: S;
|
|
49
|
-
};
|
|
50
|
-
};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { ComboboxSeparatorProps } from 'reka-ui';
|
|
2
|
-
import type { HTMLAttributes } from 'vue';
|
|
3
|
-
type __VLS_Props = ComboboxSeparatorProps & {
|
|
4
|
-
class?: HTMLAttributes['class'];
|
|
5
|
-
};
|
|
6
|
-
declare var __VLS_8: {};
|
|
7
|
-
type __VLS_Slots = {} & {
|
|
8
|
-
default?: (props: typeof __VLS_8) => any;
|
|
9
|
-
};
|
|
10
|
-
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
11
|
-
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
12
|
-
declare const _default: typeof __VLS_export;
|
|
13
|
-
export default _default;
|
|
14
|
-
type __VLS_WithSlots<T, S> = T & {
|
|
15
|
-
new (): {
|
|
16
|
-
$slots: S;
|
|
17
|
-
};
|
|
18
|
-
};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { ComboboxViewportProps } from 'reka-ui';
|
|
2
|
-
import type { HTMLAttributes } from 'vue';
|
|
3
|
-
type __VLS_Props = ComboboxViewportProps & {
|
|
4
|
-
class?: HTMLAttributes['class'];
|
|
5
|
-
};
|
|
6
|
-
declare var __VLS_8: {};
|
|
7
|
-
type __VLS_Slots = {} & {
|
|
8
|
-
default?: (props: typeof __VLS_8) => any;
|
|
9
|
-
};
|
|
10
|
-
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
11
|
-
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
12
|
-
declare const _default: typeof __VLS_export;
|
|
13
|
-
export default _default;
|
|
14
|
-
type __VLS_WithSlots<T, S> = T & {
|
|
15
|
-
new (): {
|
|
16
|
-
$slots: S;
|
|
17
|
-
};
|
|
18
|
-
};
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { WebGLCanvasFrame } from "../../../composables/glass/webgl/useWebGLCanvas";
|
|
2
|
-
import type { ConstellationRenderState } from "./constellationWGPUSetup";
|
|
3
|
-
export interface ConstellationGLSetupDeps {
|
|
4
|
-
canvas: HTMLCanvasElement;
|
|
5
|
-
resolveFrame: (timeSec: number) => ConstellationRenderState | null;
|
|
6
|
-
onResize?: (w: number, h: number) => void;
|
|
7
|
-
shouldContinue: () => boolean;
|
|
8
|
-
}
|
|
9
|
-
/** Build the `setupGL(gl)` callback the `createGpuSubstrate` WebGL2 path invokes. */
|
|
10
|
-
export declare function createConstellationGLSetup(deps: ConstellationGLSetupDeps): (gl: WebGL2RenderingContext) => WebGLCanvasFrame;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import type { WebGPUCanvasFrame } from "../../../composables/glass/webgpu/useWebGPUCanvas";
|
|
2
|
-
import { type ConstellationUniformValues, type PackedNode, type PackedEdge } from "./uniformBridgeWGPU";
|
|
3
|
-
/** The per-frame render state the renderer resolves (the stepped field → packed rows). */
|
|
4
|
-
export interface ConstellationRenderState {
|
|
5
|
-
nodes: PackedNode[];
|
|
6
|
-
edges: PackedEdge[];
|
|
7
|
-
uniforms: ConstellationUniformValues;
|
|
8
|
-
}
|
|
9
|
-
export interface ConstellationWGPUSetupDeps {
|
|
10
|
-
canvas: HTMLCanvasElement;
|
|
11
|
-
/** Advance the field + the shared pointer field one renderer frame, return the packed render state. */
|
|
12
|
-
resolveFrame: (timeSec: number) => ConstellationRenderState | null;
|
|
13
|
-
/** Size the canvas backing store (returns the resolved backing-store [w,h] in device px). */
|
|
14
|
-
onResize?: (w: number, h: number) => void;
|
|
15
|
-
/** Demand-gate (the renderer's quiescence layer — substrate-agnostic). */
|
|
16
|
-
shouldContinue: () => boolean;
|
|
17
|
-
}
|
|
18
|
-
/** Build the constellation `setupWGPU(device, context, format)` callback. */
|
|
19
|
-
export declare function createConstellationWGPUSetup(deps: ConstellationWGPUSetupDeps): (device: GPUDevice, context: GPUCanvasContext, format: GPUTextureFormat) => WebGPUCanvasFrame;
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
/** Floats per node row (one vec4). */
|
|
2
|
-
export declare const NODE_FLOATS = 4;
|
|
3
|
-
/** Bytes per node row. */
|
|
4
|
-
export declare const NODE_BYTES: number;
|
|
5
|
-
/** The pre-sized node storage buffer byte length. */
|
|
6
|
-
export declare const NODES_BUFFER_BYTES: number;
|
|
7
|
-
/** Floats per edge row (2 vec4s). */
|
|
8
|
-
export declare const EDGE_FLOATS = 8;
|
|
9
|
-
/** Bytes per edge row. */
|
|
10
|
-
export declare const EDGE_BYTES: number;
|
|
11
|
-
/** The pre-sized edge storage buffer byte length. */
|
|
12
|
-
export declare const EDGES_BUFFER_BYTES: number;
|
|
13
|
-
export declare const CONSTELLATION_UNIFORM_BYTES = 112;
|
|
14
|
-
export interface ConstellationUniformScratch {
|
|
15
|
-
buffer: ArrayBuffer;
|
|
16
|
-
f32: Float32Array;
|
|
17
|
-
}
|
|
18
|
-
export declare function createConstellationScratch(): ConstellationUniformScratch;
|
|
19
|
-
/** The per-frame uniform values the render reads (resolved JS-side). */
|
|
20
|
-
export interface ConstellationUniformValues {
|
|
21
|
-
resolutionX: number;
|
|
22
|
-
resolutionY: number;
|
|
23
|
-
dpr: number;
|
|
24
|
-
kVis: number;
|
|
25
|
-
time: number;
|
|
26
|
-
lineWidth: number;
|
|
27
|
-
opacityCeiling: number;
|
|
28
|
-
/** The field-yields-to-type `--constellation-alpha` global dimmer. */
|
|
29
|
-
alpha: number;
|
|
30
|
-
edgeAlpha: number;
|
|
31
|
-
edgeFocusAlpha: number;
|
|
32
|
-
edgeAccentAlpha: number;
|
|
33
|
-
edgeFloor: number;
|
|
34
|
-
/** Premultiplied-ready RGBA (`[0,1]`) — `node`/`nodeDim`/`line`/`accent`. */
|
|
35
|
-
node: [number, number, number, number];
|
|
36
|
-
nodeDim: [number, number, number, number];
|
|
37
|
-
line: [number, number, number, number];
|
|
38
|
-
accent: [number, number, number, number];
|
|
39
|
-
}
|
|
40
|
-
/** Pack the constellation uniforms in place. */
|
|
41
|
-
export declare function packConstellationUniforms(scratch: ConstellationUniformScratch, v: ConstellationUniformValues): ConstellationUniformScratch;
|
|
42
|
-
/** A pre-sized node scratch (`MAX_NODES` rows × NODE_FLOATS). */
|
|
43
|
-
export declare function createNodeScratch(): Float32Array;
|
|
44
|
-
/** A pre-sized edge scratch (`E_MAX` rows × EDGE_FLOATS). */
|
|
45
|
-
export declare function createEdgeScratch(): Float32Array;
|
|
46
|
-
/** A packed node row in screen-px: `(x, y, radius, dim)`. */
|
|
47
|
-
export interface PackedNode {
|
|
48
|
-
x: number;
|
|
49
|
-
y: number;
|
|
50
|
-
r: number;
|
|
51
|
-
dim: number;
|
|
52
|
-
}
|
|
53
|
-
/** Pack `count` node rows into the scratch (clamped to MAX_NODES). Returns the count packed. */
|
|
54
|
-
export declare function packNodes(scratch: Float32Array, nodes: readonly PackedNode[]): number;
|
|
55
|
-
/** A packed edge row: `(ax, ay, bx, by, alpha, accent, focus)`. */
|
|
56
|
-
export interface PackedEdge {
|
|
57
|
-
ax: number;
|
|
58
|
-
ay: number;
|
|
59
|
-
bx: number;
|
|
60
|
-
by: number;
|
|
61
|
-
alpha: number;
|
|
62
|
-
accent: number;
|
|
63
|
-
focus: number;
|
|
64
|
-
}
|
|
65
|
-
/** Pack `count` edge rows into the scratch (clamped to E_MAX). Returns the count packed. */
|
|
66
|
-
export declare function packEdges(scratch: Float32Array, edges: readonly PackedEdge[]): number;
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export declare const CONSTELLATION_LINES_VERT_GLSL = "#version 300 es\nprecision highp float;\n\n// per-instance edge rows \u2014 vertexAttribDivisor(1).\nlayout(location = 0) in vec4 aAB; // (a.x, a.y, b.x, b.y)\nlayout(location = 1) in vec4 aW; // (alpha, accent, focus, _pad)\n\nuniform vec2 uResolution;\nuniform float uDpr;\nuniform float uKVis;\nuniform float uLineWidth;\n\nout float vLineCoord;\nout float vAlpha;\nout float vAccent;\nout float vFocus;\n\nvoid main() {\n vec2 quad[6] = vec2[6](\n vec2(-1.0, -1.0), vec2(1.0, -1.0), vec2(-1.0, 1.0),\n vec2(-1.0, 1.0), vec2(1.0, -1.0), vec2(1.0, 1.0)\n );\n vec2 alongQuad = quad[gl_VertexID];\n\n vec2 a = aAB.xy;\n vec2 b = aAB.zw;\n vec2 dir = normalize(b - a + vec2(1e-6, 0.0));\n vec2 ortho = vec2(-dir.y, dir.x);\n // accent tether reads a touch heavier (1.1\u00D7).\n float halfWPx = uLineWidth * uKVis * uDpr * 0.5 * mix(1.0, 1.1, aW.y);\n vec2 p = mix(a, b, alongQuad.x * 0.5 + 0.5) + ortho * alongQuad.y * halfWPx;\n\n vec2 ndc = vec2(\n p.x / max(uResolution.x, 1.0) * 2.0 - 1.0,\n 1.0 - p.y / max(uResolution.y, 1.0) * 2.0\n );\n\n gl_Position = vec4(ndc, 0.0, 1.0);\n vLineCoord = alongQuad.y;\n vAlpha = aW.x;\n vAccent = aW.y;\n vFocus = aW.z;\n}\n";
|
|
2
|
-
export declare const CONSTELLATION_LINES_FRAG_GLSL = "#version 300 es\nprecision highp float;\n\nuniform vec4 uLine; // premultiplied-ready rgba\nuniform vec4 uAccent;\nuniform float uAlphaGlobal; // --constellation-alpha\nuniform float uOpacityCeiling;\nuniform float uEdgeAlpha;\nuniform float uEdgeFocusAlpha;\nuniform float uEdgeAccentAlpha;\nuniform float uEdgeFloor;\n\nin float vLineCoord;\nin float vAlpha;\nin float vAccent;\nin float vFocus;\nout vec4 fragColor;\n\nvoid main() {\n float aaBand = 0.6;\n float cross = 1.0 - smoothstep(1.0 - aaBand, 1.0, abs(vLineCoord));\n if (cross <= 0.0) { discard; }\n\n float dim = uAlphaGlobal * uOpacityCeiling;\n vec4 col = uLine;\n float weight = (uEdgeAlpha * vAlpha + uEdgeFloor) * dim;\n if (vAccent > 0.5) {\n col = uAccent;\n weight = uEdgeAccentAlpha * vAlpha * dim;\n } else if (vFocus > 0.5) {\n col = uLine;\n weight = uEdgeFocusAlpha * uAlphaGlobal * uOpacityCeiling * vAlpha;\n }\n\n float a = col.a * weight * cross;\n if (a <= 0.0) { discard; }\n fragColor = vec4(col.rgb * a, a);\n}\n";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const CONSTELLATION_LINES_WGSL = "\nstruct Edge {\n // vec4 0: (a.x, a.y, b.x, b.y)\n ab: vec4<f32>,\n // vec4 1: (alpha, accent, focus, _pad)\n w: vec4<f32>,\n};\n\nstruct ConstellationUniforms {\n // u0: (resolution.x, resolution.y, dpr, kVis)\n u0: vec4<f32>,\n // u1: (time, lineWidth, opacityCeiling, alpha)\n u1: vec4<f32>,\n // uEdge: (edgeAlpha, edgeFocusAlpha, edgeAccentAlpha, edgeFloor)\n uEdge: vec4<f32>,\n uNode: vec4<f32>,\n uNodeDim: vec4<f32>,\n uLine: vec4<f32>,\n uAccent: vec4<f32>,\n};\n\n@group(0) @binding(0) var<uniform> u: ConstellationUniforms;\n@group(0) @binding(1) var<storage, read> edges: array<Edge>;\n\nstruct VSOut {\n @builtin(position) pos: vec4<f32>,\n @location(0) lineCoord: f32, // [-1,1] cross-line \u2192 fragment AA\n @location(1) alpha: f32, // distance-falloff weight\n @location(2) accent: f32, // accent flag (the flagged-node tether tint)\n @location(3) focus: f32, // focus flag (the pointer-web tether)\n};\n\n@vertex\nfn vs_main(\n @builtin(vertex_index) vIdx: u32,\n @builtin(instance_index) iIdx: u32,\n) -> VSOut {\n var QUAD = array<vec2<f32>, 6>(\n vec2<f32>(-1.0, -1.0), vec2<f32>(1.0, -1.0), vec2<f32>(-1.0, 1.0),\n vec2<f32>(-1.0, 1.0), vec2<f32>(1.0, -1.0), vec2<f32>(1.0, 1.0),\n );\n let alongQuad = QUAD[vIdx];\n\n let e = edges[iIdx];\n let a = e.ab.xy;\n let b = e.ab.zw;\n let res = u.u0.xy;\n let dpr = u.u0.z;\n let kVis = u.u0.w;\n let lineW = u.u1.y;\n\n // Screen-space segment direction + orthogonal (the half-width offset axis).\n let dir = normalize(b - a + vec2<f32>(1e-6, 0.0));\n let ortho = vec2<f32>(-dir.y, dir.x);\n // Lerp along the segment (alongQuad.x \u2208 [-1,1] \u2192 [0,1]); offset by ortho \u00D7 half-width.\n // The accent tether reads a touch heavier (1.1\u00D7 the neutral width).\n let halfWPx = lineW * kVis * dpr * 0.5 * mix(1.0, 1.1, e.w.y);\n let p = mix(a, b, alongQuad.x * 0.5 + 0.5) + ortho * (alongQuad.y) * halfWPx;\n\n // px (y-down) \u2192 clip (y-up).\n let ndc = vec2<f32>(\n p.x / max(res.x, 1.0) * 2.0 - 1.0,\n 1.0 - p.y / max(res.y, 1.0) * 2.0,\n );\n\n var out: VSOut;\n out.pos = vec4<f32>(ndc, 0.0, 1.0);\n out.lineCoord = alongQuad.y;\n out.alpha = e.w.x;\n out.accent = e.w.y;\n out.focus = e.w.z;\n return out;\n}\n\n@fragment\nfn fs_main(in: VSOut) -> @location(0) vec4<f32> {\n // Cross-line AA \u2014 a smoothstep on |lineCoord| so the hairline edge is crisp.\n let aaBand = 0.6;\n let cross = 1.0 - smoothstep(1.0 - aaBand, 1.0, abs(in.lineCoord));\n if (cross <= 0.0) { discard; }\n\n let dim = u.u1.w * u.u1.z; // alpha \u00B7 opacityCeiling\n // Resolve the edge class: accent tether \u00B7 focus pointer-web \u00B7 neutral ambient.\n var col = u.uLine;\n var weight = (u.uEdge.x * in.alpha + u.uEdge.w) * dim; // edgeAlpha\u00B7falloff + edgeFloor\n if (in.accent > 0.5) {\n col = u.uAccent;\n weight = u.uEdge.z * in.alpha * dim; // edgeAccentAlpha\n } else if (in.focus > 0.5) {\n col = u.uLine;\n weight = u.uEdge.y * u.u1.w * u.u1.z * in.alpha; // edgeFocusAlpha \u00B7 alpha \u00B7 ceiling\n }\n\n let a = col.a * weight * cross;\n if (a <= 0.0) { discard; }\n return vec4<f32>(col.rgb * a, a);\n}\n";
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export declare const CONSTELLATION_POINTS_VERT_GLSL = "#version 300 es\nprecision highp float;\n\n// per-instance node row (x, y, radius, dim) \u2014 vertexAttribDivisor(1).\nlayout(location = 0) in vec4 aNode;\n\nuniform vec2 uResolution;\nuniform float uDpr;\nuniform float uKVis;\n\nout vec2 vUv; // [-1,1] billboard-local \u2192 fragment SDF coord\nout float vDim;\n\nvoid main() {\n // Two-triangle quad corners (the SAME order as the WGSL QUAD).\n vec2 quad[6] = vec2[6](\n vec2(-1.0, -1.0), vec2(1.0, -1.0), vec2(-1.0, 1.0),\n vec2(-1.0, 1.0), vec2(1.0, -1.0), vec2(1.0, 1.0)\n );\n vec2 corner = quad[gl_VertexID];\n\n vec2 centerPx = aNode.xy;\n // px (y-down) \u2192 clip (y-up).\n vec2 centerNdc = vec2(\n centerPx.x / max(uResolution.x, 1.0) * 2.0 - 1.0,\n 1.0 - centerPx.y / max(uResolution.y, 1.0) * 2.0\n );\n // half-extent: radius\u00B7kVis CSS px \u2192 backing-store px (\u00B7dpr) \u2192 NDC half (\u00B72/res).\n // (half is a GLSL reserved word \u2014 name it halfExt.)\n float radPx = aNode.z * uKVis * uDpr;\n vec2 halfExt = vec2(\n radPx / max(uResolution.x, 1.0) * 2.0,\n radPx / max(uResolution.y, 1.0) * 2.0\n );\n\n gl_Position = vec4(centerNdc + corner * halfExt, 0.0, 1.0);\n vUv = corner;\n vDim = aNode.w;\n}\n";
|
|
2
|
-
export declare const CONSTELLATION_POINTS_FRAG_GLSL = "#version 300 es\nprecision highp float;\n\nuniform vec4 uNode; // premultiplied-ready rgba\nuniform vec4 uNodeDim;\nuniform float uOpacityCeiling;\n\nin vec2 vUv;\nin float vDim;\nout vec4 fragColor;\n\nvoid main() {\n // SDF: distance to the unit-circle edge (0 at the rim, neg inside).\n float d = length(vUv) - 1.0;\n // fwidth(d) \u2014 the pixel footprint, the resolution-independent AA width.\n float aa = max(fwidth(d), 1e-4);\n float coverage = 1.0 - smoothstep(-aa, aa, d);\n if (coverage <= 0.0) { discard; }\n vec4 col = mix(uNode, uNodeDim, vDim);\n float a = col.a * coverage * uOpacityCeiling;\n fragColor = vec4(col.rgb * a, a); // premultiplied\n}\n";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const CONSTELLATION_POINTS_WGSL = "\n// \u2500\u2500 Node storage row + uniforms (the typed-struct source-of-truth \u2014 uniformBridgeWGPU.ts) \u2500\u2500\nstruct Node {\n // (pos.x, pos.y, radius, dim)\n data: vec4<f32>,\n};\n\nstruct ConstellationUniforms {\n // u0: (resolution.x, resolution.y, dpr, kVis)\n u0: vec4<f32>,\n // u1: (time, lineWidth, opacityCeiling, alpha)\n u1: vec4<f32>,\n // uEdge: (edgeAlpha, edgeFocusAlpha, edgeAccentAlpha, edgeFloor)\n uEdge: vec4<f32>,\n // colours (premultiplied-ready rgba)\n uNode: vec4<f32>,\n uNodeDim: vec4<f32>,\n uLine: vec4<f32>,\n uAccent: vec4<f32>,\n};\n\n@group(0) @binding(0) var<uniform> u: ConstellationUniforms;\n@group(0) @binding(1) var<storage, read> nodes: array<Node>;\n\nstruct VSOut {\n @builtin(position) pos: vec4<f32>,\n @location(0) uv: vec2<f32>, // [-1,1] billboard-local \u2192 fragment SDF coord\n @location(1) dim: f32, // 0 = full node, 1 = dim node\n};\n\n@vertex\nfn vs_main(\n @builtin(vertex_index) vIdx: u32,\n @builtin(instance_index) iIdx: u32,\n) -> VSOut {\n // Two-triangle quad corners in billboard-local space.\n var QUAD = array<vec2<f32>, 6>(\n vec2<f32>(-1.0, -1.0), vec2<f32>(1.0, -1.0), vec2<f32>(-1.0, 1.0),\n vec2<f32>(-1.0, 1.0), vec2<f32>(1.0, -1.0), vec2<f32>(1.0, 1.0),\n );\n let corner = QUAD[vIdx];\n\n let node = nodes[iIdx].data;\n let res = u.u0.xy;\n let dpr = u.u0.z;\n let kVis = u.u0.w;\n\n // center: node px \u2192 clip space (y-flip \u2014 px is y-down, clip is y-up).\n let centerPx = node.xy;\n let centerNdc = vec2<f32>(\n centerPx.x / max(res.x, 1.0) * 2.0 - 1.0,\n 1.0 - centerPx.y / max(res.y, 1.0) * 2.0,\n );\n // half-extent: radius\u00B7kVis in CSS px \u2192 backing-store px (\u00B7dpr) \u2192 NDC half (\u00B72/res).\n // (the DPR-aware crispness leg \u2014 the disc samples at device resolution.)\n // (half is a WGSL reserved keyword \u2014 name it halfExt.)\n let radPx = node.z * kVis * dpr;\n let halfExt = vec2<f32>(radPx / max(res.x, 1.0) * 2.0, radPx / max(res.y, 1.0) * 2.0);\n\n var out: VSOut;\n out.pos = vec4<f32>(centerNdc + corner * halfExt, 0.0, 1.0);\n out.uv = corner;\n out.dim = node.w;\n return out;\n}\n\n@fragment\nfn fs_main(in: VSOut) -> @location(0) vec4<f32> {\n // SDF: distance to the unit-circle edge in billboard-local space (0 at the rim, neg inside).\n let d = length(in.uv) - 1.0;\n // fwidth(d) = |dpdx(d)| + |dpdy(d)| \u2014 the pixel footprint of the SDF, the resolution-\n // independent AA width (~1px band at ANY DPR/zoom/size).\n let aa = max(fwidth(d), 1e-4);\n let coverage = 1.0 - smoothstep(-aa, aa, d);\n if (coverage <= 0.0) { discard; }\n let col = mix(u.uNode, u.uNodeDim, in.dim);\n let a = col.a * coverage * u.u1.z; // \u00B7opacityCeiling\n // premultiplied-alpha output.\n return vec4<f32>(col.rgb * a, a);\n}\n";
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/** The deck spring preset, re-exported from the colocated constants for consumers
|
|
2
|
-
sampling the same `(response, ζ)` row. */
|
|
3
|
-
export { DECK_SPRING } from "../constants";
|
|
4
|
-
/**
|
|
5
|
-
* Count-up easing. Defaults to a monotone cubic-out so a still render (or a failed
|
|
6
|
-
* engine chunk) is always faithful; replaced in-place with the engine's
|
|
7
|
-
* `springTimingFunction(.smooth)` once keyframes.js resolves. Callers read
|
|
8
|
-
* `deckEase.fn` each frame, so the swap is picked up live with no re-wiring.
|
|
9
|
-
*/
|
|
10
|
-
export declare const deckEase: {
|
|
11
|
-
fn: (t: number) => number;
|
|
12
|
-
};
|
|
13
|
-
/**
|
|
14
|
-
* Swap `deckEase.fn` to the engine's matching JS easing once keyframes.js resolves.
|
|
15
|
-
* Idempotent. No-op off-DOM (SSR / export tooling) and a silent no-op if the engine
|
|
16
|
-
* chunk fails — the count-up keeps its monotone cubic fallback.
|
|
17
|
-
*
|
|
18
|
-
* The slide transition needs no JS write: `--spring-deck: var(--spring-smooth)`
|
|
19
|
-
* (glass-ui's `.smooth` `linear()` token) resolves the declarative half at first
|
|
20
|
-
* paint.
|
|
21
|
-
*/
|
|
22
|
-
export declare function installDeckSpring(): void;
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { type HTMLAttributes } from 'vue';
|
|
2
|
-
import { type DialogContentProps } from 'reka-ui';
|
|
3
|
-
type __VLS_Props = DialogContentProps & {
|
|
4
|
-
class?: HTMLAttributes['class'];
|
|
5
|
-
overlayClass?: HTMLAttributes['class'];
|
|
6
|
-
};
|
|
7
|
-
declare var __VLS_22: {};
|
|
8
|
-
type __VLS_Slots = {} & {
|
|
9
|
-
default?: (props: typeof __VLS_22) => any;
|
|
10
|
-
};
|
|
11
|
-
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
12
|
-
escapeKeyDown: (event: KeyboardEvent) => any;
|
|
13
|
-
pointerDownOutside: (event: import("reka-ui").PointerDownOutsideEvent) => any;
|
|
14
|
-
focusOutside: (event: import("reka-ui").FocusOutsideEvent) => any;
|
|
15
|
-
interactOutside: (event: import("reka-ui").PointerDownOutsideEvent | import("reka-ui").FocusOutsideEvent) => any;
|
|
16
|
-
openAutoFocus: (event: Event) => any;
|
|
17
|
-
closeAutoFocus: (event: Event) => any;
|
|
18
|
-
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
19
|
-
onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
|
|
20
|
-
onPointerDownOutside?: ((event: import("reka-ui").PointerDownOutsideEvent) => any) | undefined;
|
|
21
|
-
onFocusOutside?: ((event: import("reka-ui").FocusOutsideEvent) => any) | undefined;
|
|
22
|
-
onInteractOutside?: ((event: import("reka-ui").PointerDownOutsideEvent | import("reka-ui").FocusOutsideEvent) => any) | undefined;
|
|
23
|
-
onOpenAutoFocus?: ((event: Event) => any) | undefined;
|
|
24
|
-
onCloseAutoFocus?: ((event: Event) => any) | undefined;
|
|
25
|
-
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
26
|
-
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
27
|
-
declare const _default: typeof __VLS_export;
|
|
28
|
-
export default _default;
|
|
29
|
-
type __VLS_WithSlots<T, S> = T & {
|
|
30
|
-
new (): {
|
|
31
|
-
$slots: S;
|
|
32
|
-
};
|
|
33
|
-
};
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { type HTMLAttributes } from "vue";
|
|
2
|
-
import { type ProgressRootProps } from "reka-ui";
|
|
3
|
-
import { type ProgressSegment } from "./useProgressGeometry";
|
|
4
|
-
/**
|
|
5
|
-
* Sectioned progress variant — the phase-bus (AB.W3.T2; rebuilt on a SINGLE-FILL
|
|
6
|
-
* gradient paint model at BA.W-PROGRESS-GRADIENT). The bar reads as ONE continuous
|
|
7
|
-
* blended liquid filling a frosted recessed glass channel: segment colours hold
|
|
8
|
-
* their identity across their span and blend over short transition zones at the
|
|
9
|
-
* boundaries, the active front carries the single pill cap + catch-light, and
|
|
10
|
-
* pending phases keep their real hue as a faint ghost on the track.
|
|
11
|
-
*
|
|
12
|
-
* The paint is NOT per-cell rectangles. ONE `.progress-sectioned-flow` element
|
|
13
|
-
* spans the cumulative filled extent (`filledExtentPct`, derived off the same
|
|
14
|
-
* `useProgressGeometry` cells[]) and paints ONE `linear-gradient` whose stops are
|
|
15
|
-
* the segment colours (hard stop-pairs hold each hue crisp; short soft zones at
|
|
16
|
-
* the boundaries give the blend). No screen-seam band, no internal pill caps, no
|
|
17
|
-
* dead notch. The pending remainder of the recessed track carries a faint
|
|
18
|
-
* phase-tinted ghost gradient built from the pending cells' own colours.
|
|
19
|
-
*
|
|
20
|
-
* The single `modelValue` is NOT the truth here — the per-cell state map is. The
|
|
21
|
-
* underlying `[role="progressbar"]` reports a numeric `aria-valuenow` derived from
|
|
22
|
-
* the cumulative cell fill (`useProgressGeometry.aggregateValue`), which is the
|
|
23
|
-
* sectioned variant's OWN value, not a silent override of any consumer-supplied
|
|
24
|
-
* modelValue (the `Progress` dispatcher refuses a modelValue-as-truth misuse out
|
|
25
|
-
* loud — see the prop-boundary contract there). The thin dispatcher routes here
|
|
26
|
-
* for `variant="sectioned"`.
|
|
27
|
-
*/
|
|
28
|
-
type __VLS_Props = Omit<ProgressRootProps, "modelValue"> & {
|
|
29
|
-
class?: HTMLAttributes["class"];
|
|
30
|
-
/** Ordered segment list — the cells. */
|
|
31
|
-
segments?: ProgressSegment[];
|
|
32
|
-
/** Key of the currently active segment. */
|
|
33
|
-
currentSegmentKey?: string | null;
|
|
34
|
-
/**
|
|
35
|
-
* 0..1 fill of the active segment. Drives the spring overlay inside the
|
|
36
|
-
* active cell. Pre-active cells fill 0; post-active cells render at full
|
|
37
|
-
* saturation as "completed".
|
|
38
|
-
*/
|
|
39
|
-
activeProgress?: number;
|
|
40
|
-
};
|
|
41
|
-
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
42
|
-
segments: ProgressSegment[];
|
|
43
|
-
currentSegmentKey: string | null;
|
|
44
|
-
activeProgress: number;
|
|
45
|
-
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
46
|
-
declare const _default: typeof __VLS_export;
|
|
47
|
-
export default _default;
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { type ComputedRef, type Ref } from "vue";
|
|
2
|
-
/**
|
|
3
|
-
* Segment shape consumed by `variant="sectioned"`. Mirrors `TimelineSegment`
|
|
4
|
-
* (`@mkbabb/glass-ui/timeline`) deliberately so a consumer can pass the same
|
|
5
|
-
* array to both the timeline rail and the phase-bus progress without re-shaping.
|
|
6
|
-
* Optional fields default sensibly:
|
|
7
|
-
* - `state` → "pending"
|
|
8
|
-
* - `weight` → 1 (equal share)
|
|
9
|
-
* - `color` → consumer-controlled CSS (`var(--chart-{key})` etc.); the
|
|
10
|
-
* sectioned variant requires it for the colour cells.
|
|
11
|
-
*/
|
|
12
|
-
export interface ProgressSegment {
|
|
13
|
-
/** Stable identifier — matched against `currentSegmentKey`. */
|
|
14
|
-
key: string;
|
|
15
|
-
/** Display label (currently unused visually; surfaced for a11y/title). */
|
|
16
|
-
label?: string;
|
|
17
|
-
/**
|
|
18
|
-
* CSS colour expression (hex, oklch, color-mix, `var(--token)`). Drives the
|
|
19
|
-
* cell fill, the gradient stops between siblings, and the active-fill spring
|
|
20
|
-
* overlay.
|
|
21
|
-
*/
|
|
22
|
-
color: string;
|
|
23
|
-
/** Lifecycle state. Drives saturation + sweep. Defaults to "pending". */
|
|
24
|
-
state?: "pending" | "active" | "completed";
|
|
25
|
-
/**
|
|
26
|
-
* Relative width weight. Per-cell widths = `weight / sum(weights)`. Default
|
|
27
|
-
* `1` (equal share — the speedtest pings/jitter/dl/ul case).
|
|
28
|
-
*/
|
|
29
|
-
weight?: number;
|
|
30
|
-
}
|
|
31
|
-
/** A resolved sectioned cell — per-cell geometry + lifecycle + fill fraction. */
|
|
32
|
-
export interface SectionedCell extends ProgressSegment {
|
|
33
|
-
startPct: number;
|
|
34
|
-
endPct: number;
|
|
35
|
-
widthPct: number;
|
|
36
|
-
resolvedState: "pending" | "active" | "completed";
|
|
37
|
-
/** 0..1 — how much of THIS cell paints saturated. */
|
|
38
|
-
fill: number;
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Derive per-cell width/start/end/state/fill from the `segments` array.
|
|
42
|
-
*
|
|
43
|
-
* Widths come from the weight distribution; states resolve from each segment's
|
|
44
|
-
* explicit `state` (wins) or are inferred from `currentSegmentKey` order (cells
|
|
45
|
-
* before current = completed, current = active, after = pending). The active
|
|
46
|
-
* cell's fill follows `activeProgress`; completed cells fill 1; pending fill 0.
|
|
47
|
-
*/
|
|
48
|
-
export declare function useProgressGeometry(args: {
|
|
49
|
-
segments: Ref<ProgressSegment[]> | ComputedRef<ProgressSegment[]>;
|
|
50
|
-
currentSegmentKey: Ref<string | null> | ComputedRef<string | null>;
|
|
51
|
-
activeProgress: Ref<number> | ComputedRef<number>;
|
|
52
|
-
}): {
|
|
53
|
-
cells: ComputedRef<SectionedCell[]>;
|
|
54
|
-
/**
|
|
55
|
-
* The cumulative-fill aggregate (0..100) — the meaningful numeric the
|
|
56
|
-
* underlying `[role="progressbar"]` reports as `aria-valuenow`. Derived from
|
|
57
|
-
* the per-cell state map, NOT from any `modelValue`.
|
|
58
|
-
*/
|
|
59
|
-
aggregateValue: ComputedRef<number>;
|
|
60
|
-
};
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import type { HTMLAttributes } from "vue";
|
|
2
|
-
/**
|
|
3
|
-
* Section — thin sectioning primitive that consumes the typography ladder
|
|
4
|
-
* (V.W3.T7 / A5 §5.1 + adjacent). Composes a header + description + content
|
|
5
|
-
* triple, each typography-class-keyed against the canonical `.text-*` rungs:
|
|
6
|
-
*
|
|
7
|
-
* - `header` slot — defaults to `.text-heading` (the canonical section
|
|
8
|
-
* heading rung); titleClass override picks any of the ladder.
|
|
9
|
-
* - `description` slot — `.text-body` (or `.text-prose` for narrative).
|
|
10
|
-
* - default slot — content body.
|
|
11
|
-
*
|
|
12
|
-
* Authors compose: `<Section title="..." description="...">` for the
|
|
13
|
-
* common case; `<Section>` with named slots for richer headers (icons,
|
|
14
|
-
* tags, action buttons).
|
|
15
|
-
*
|
|
16
|
-
* Section is NOT a glass surface — it's a sectioning landmark over the
|
|
17
|
-
* typography ladder. For glass-surface-as-section, wrap inside `<Card>`.
|
|
18
|
-
*
|
|
19
|
-
* Migrates the `.section-label` typography utility (mono-caps caption)
|
|
20
|
-
* into the `tone="label"` variant, keeping the existing class for
|
|
21
|
-
* direct consumption (10 word-frontend consumer sites; L invariant 8).
|
|
22
|
-
*
|
|
23
|
-
* N.W0 Lane A3 — `backdrop` prop wires `<PaperBackdrop>` as an optional
|
|
24
|
-
* scoped layer behind header + description + content. Default `"none"`
|
|
25
|
-
* preserves prior behavior (purely additive). When `backdrop="paper"`,
|
|
26
|
-
* the `<section>` becomes a `relative isolate` stacking context and the
|
|
27
|
-
* paper layer is pinned `!absolute inset-0` (overriding the underpaint's
|
|
28
|
-
* default `position: fixed`); `paper-underpaint`'s own `z-index: -1` plus
|
|
29
|
-
* the `isolation: isolate` boundary keep the grain behind header + content
|
|
30
|
-
* (which paint at the default stacking order) without leaking below the
|
|
31
|
-
* section's own stacking context.
|
|
32
|
-
*/
|
|
33
|
-
interface Props {
|
|
34
|
-
/** Heading text — short, sentence-case. Renders inside the header slot. */
|
|
35
|
-
title?: string;
|
|
36
|
-
/** Description / lede paragraph below the heading. */
|
|
37
|
-
description?: string;
|
|
38
|
-
/** Typography rung for the title. `heading` (default) | `title` | `subheading` | `label`. */
|
|
39
|
-
tone?: "heading" | "title" | "subheading" | "label";
|
|
40
|
-
/** Stacking gap between header / description / content blocks. */
|
|
41
|
-
gap?: "tight" | "regular" | "loose";
|
|
42
|
-
/**
|
|
43
|
-
* Optional substrate layer behind the section content.
|
|
44
|
-
* - `"none"` (default): no backdrop; section is a layout-only landmark.
|
|
45
|
-
* - `"paper"`: composes `<PaperBackdrop>` absolutely-positioned behind the
|
|
46
|
-
* content. Section becomes a relative-positioned stacking context.
|
|
47
|
-
*/
|
|
48
|
-
backdrop?: "none" | "paper";
|
|
49
|
-
titleClass?: HTMLAttributes["class"];
|
|
50
|
-
descriptionClass?: HTMLAttributes["class"];
|
|
51
|
-
class?: HTMLAttributes["class"];
|
|
52
|
-
}
|
|
53
|
-
declare var __VLS_6: {}, __VLS_8: {}, __VLS_10: {};
|
|
54
|
-
type __VLS_Slots = {} & {
|
|
55
|
-
header?: (props: typeof __VLS_6) => any;
|
|
56
|
-
} & {
|
|
57
|
-
description?: (props: typeof __VLS_8) => any;
|
|
58
|
-
} & {
|
|
59
|
-
default?: (props: typeof __VLS_10) => any;
|
|
60
|
-
};
|
|
61
|
-
declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
62
|
-
gap: "tight" | "regular" | "loose";
|
|
63
|
-
tone: "heading" | "title" | "subheading" | "label";
|
|
64
|
-
backdrop: "none" | "paper";
|
|
65
|
-
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
66
|
-
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
67
|
-
declare const _default: typeof __VLS_export;
|
|
68
|
-
export default _default;
|
|
69
|
-
type __VLS_WithSlots<T, S> = T & {
|
|
70
|
-
new (): {
|
|
71
|
-
$slots: S;
|
|
72
|
-
};
|
|
73
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as Section } from "./Section.vue";
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import type { StackedIconGroupProps } from './types';
|
|
2
|
-
declare const __VLS_export: <T>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
3
|
-
props: import("vue").PublicProps & __VLS_PrettifyLocal<StackedIconGroupProps<T>> & (typeof globalThis extends {
|
|
4
|
-
__VLS_PROPS_FALLBACK: infer P;
|
|
5
|
-
} ? P : {});
|
|
6
|
-
expose: (exposed: {}) => void;
|
|
7
|
-
attrs: any;
|
|
8
|
-
slots: {
|
|
9
|
-
icon?: (props: {
|
|
10
|
-
item: T;
|
|
11
|
-
index: number;
|
|
12
|
-
}) => any;
|
|
13
|
-
} & {
|
|
14
|
-
overflow?: (props: {
|
|
15
|
-
count: number;
|
|
16
|
-
}) => any;
|
|
17
|
-
} & {
|
|
18
|
-
info?: (props: {}) => any;
|
|
19
|
-
};
|
|
20
|
-
emit: {};
|
|
21
|
-
}>) => import("vue").VNode & {
|
|
22
|
-
__ctx?: Awaited<typeof __VLS_setup>;
|
|
23
|
-
};
|
|
24
|
-
declare const _default: typeof __VLS_export;
|
|
25
|
-
export default _default;
|
|
26
|
-
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
27
|
-
[K in keyof T]: T[K];
|
|
28
|
-
} : {
|
|
29
|
-
[K in keyof T as K]: T[K];
|
|
30
|
-
}) & {};
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export interface StackedIconGroupProps<TItem> {
|
|
2
|
-
/** Items to display */
|
|
3
|
-
items: TItem[];
|
|
4
|
-
/** Max visible icons before showing +N overflow */
|
|
5
|
-
maxVisible?: number;
|
|
6
|
-
/** Stack orientation (BI.W-SYNONYM-RENAMES — the `direction` synonym renamed to
|
|
7
|
-
* the shared `orientation` axis vocabulary; horizontal|vertical, zero value change). */
|
|
8
|
-
orientation?: "horizontal" | "vertical";
|
|
9
|
-
/** Reverse the visual order */
|
|
10
|
-
reversed?: boolean;
|
|
11
|
-
/** Icon size */
|
|
12
|
-
size?: "sm" | "md" | "lg";
|
|
13
|
-
/** Expand icons on group hover */
|
|
14
|
-
expandOnHover?: boolean;
|
|
15
|
-
/** Root element tag */
|
|
16
|
-
as?: string;
|
|
17
|
-
/** Key extraction function for v-for */
|
|
18
|
-
keyFn?: (item: TItem, index: number) => string | number;
|
|
19
|
-
}
|