@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
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
/* dock/adaptive-legibility.css — the dock's ADAPTIVE-LEGIBILITY self-engage (carved
|
|
2
|
-
* from dock/morph.css to hold both partials under the 500-line no-god-module bound).
|
|
3
|
-
*
|
|
4
|
-
* This partial owns the darken-over-light legibility concern, distinct from the morph
|
|
5
|
-
* chrome: the unconditional `:where(.glass-dock)` self-engage (AZ.W-ADAPTIVE-AUTO), the
|
|
6
|
-
* continuous backdrop-luma tint clamp (BC.W-ADAPTIVE-RECONCILE), the BD.W-DOCK-CORE D2
|
|
7
|
-
* warm-chromatic dock ink, the ancestor `@container style(--glass-backdrop: light)`
|
|
8
|
-
* descendant bucket, the AX.W55 contrast-color() progressive refinement, and the
|
|
9
|
-
* BB.W-LIQUID-REVEAL / BC.W-DOCK-SHRINK-BLUR PRM reveal-blur carve.
|
|
10
|
-
*
|
|
11
|
-
* @import-ed by dock.css in cascade order, in the SAME `@layer components` as morph.css
|
|
12
|
-
* (the carve is isomorphic — same layer, source order preserved → ZERO visual delta). */
|
|
13
|
-
|
|
14
|
-
@layer components {
|
|
15
|
-
/* ── Adaptive legibility: SELF-ENGAGE the dock over a light backdrop by default
|
|
16
|
-
(AZ.W-ADAPTIVE-AUTO Arm 1 — the literal G2 surface; "Glass dock over VERY
|
|
17
|
-
LIGHT materials is unreadable, darken DYNAMICALLY like iOS 27") ─────────────
|
|
18
|
-
The dock floats over WHATEVER the consumer painted — frequently a light/near-
|
|
19
|
-
white app surface (the canonical G2 case the user reported). AY.W-A11Y-PERF
|
|
20
|
-
O-1 set `--glass-backdrop: light` on the dock's OWN root (shell.css) intending
|
|
21
|
-
a self-darken, but CSS style queries NEVER self-match (the `@container
|
|
22
|
-
style()` block below reads an ANCESTOR — verified on Chrome 148), so the
|
|
23
|
-
self-declaration was a NO-OP. This `:where(.glass-dock)` rule is the genuine
|
|
24
|
-
UNCONDITIONAL self-engage — mirroring the overlay band's `ladder.css:169` —
|
|
25
|
-
re-pointing the INHERITING tint tokens DIRECTLY on the dock root so the
|
|
26
|
-
shell (`--glass-bg-dock`), chassis-strip, and held/open tiers (which compose
|
|
27
|
-
the oklab tint AT THE ELEMENT — the substitution-vs-inheritance-safe targets)
|
|
28
|
-
darken toward warm-ink in lockstep. `--dock-fg-on-aurora` re-points to the
|
|
29
|
-
warm-ink here too — ONE reconciled path, the foreground twin folded in (it
|
|
30
|
-
reaches the dock CONTROLS' glyph/label color). Over a DARK page the darken is
|
|
31
|
-
sub-perceptual; a dark-substrate consumer opts out via `--glass-tint-strength:
|
|
32
|
-
0%` on the dock root. The morph-root interp (`.glass-dock:not(.vertical)`
|
|
33
|
-
above) stays `color-mix(in srgb …)` for the transition — the adaptive darken
|
|
34
|
-
rides its RESTING endpoint (`--glass-bg-dock`), the in-flight morph frames are
|
|
35
|
-
sub-perceptual (the ratified resting-endpoint-only default). The muted body
|
|
36
|
-
register lifts to the full warm-ink under the engaged plate (the muted L40
|
|
37
|
-
tier cannot clear 4.5:1 on a translucent darkened plate — darkening moves the
|
|
38
|
-
plate TOWARD muted's own luminance; the low-contrast muted register is
|
|
39
|
-
inappropriate over a busy glass plate, so it resolves to the legible dark
|
|
40
|
-
ink, which clears ~10:1). */
|
|
41
|
-
:where(.glass-dock) {
|
|
42
|
-
/* BD.W-DOCK-CORE (D2) — the dock self-engage reads the warm-CHROMATIC dock ink
|
|
43
|
-
(glass-fx.css), NOT the frozen global `--glass-tint-ink` (W-DARK-MATERIAL's
|
|
44
|
-
whole-system register). So the darken-over-light RAISES chroma toward a warm
|
|
45
|
-
material (H ≈ 62°, C ≈ 0.016 at AA) rather than dropping L with chroma flat (the
|
|
46
|
-
gray dock). ONE dock tint source, ONE global ink — file-line-disjoint. */
|
|
47
|
-
--glass-tint-source: var(--glass-tint-ink-dock);
|
|
48
|
-
/* BC.W-ADAPTIVE-RECONCILE — the dock JOINS the continuous observer driver (the
|
|
49
|
-
literal G2 surface: "darken DYNAMICALLY like iOS 27"). The dock's own
|
|
50
|
-
`useGlassBackdropLuminance` observer samples the threaded `:background-canvas`
|
|
51
|
-
(aurora/blob) and WRITES `--glass-backdrop-luma`; this clamp READS it and lerps
|
|
52
|
-
the plate from the warm-cream floor toward the ≤24% AA ceiling as the field
|
|
53
|
-
brightens past the knee — deepening over a bright bleed, lifting translucent over
|
|
54
|
-
a dark trough (the SAME clamp the content/overlay tiers get — ONE axis/driver/
|
|
55
|
-
signal; the discrete `@container` bucket RETIRED). Calm (luma ≤ knee) → floor. */
|
|
56
|
-
--glass-tint-strength: clamp(
|
|
57
|
-
var(--glass-tint-strength-floor),
|
|
58
|
-
calc(
|
|
59
|
-
var(--glass-tint-strength-floor) +
|
|
60
|
-
(var(--glass-tint-strength-aa) - var(--glass-tint-strength-floor)) *
|
|
61
|
-
max(0, (var(--glass-backdrop-luma, 0) - var(--glass-backdrop-luma-knee)) / (1 - var(--glass-backdrop-luma-knee)))
|
|
62
|
-
),
|
|
63
|
-
var(--glass-tint-strength-aa)
|
|
64
|
-
);
|
|
65
|
-
--dock-fg-on-aurora: var(--glass-tint-ink);
|
|
66
|
-
--muted-foreground: var(--foreground);
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
/* The ancestor-querying `@container` block KEPT — it reaches the DESCENDANT
|
|
70
|
-
nested-glass surfaces inside a dock when a consumer marks `--glass-backdrop:
|
|
71
|
-
light` on the dock's ancestor (the self-engage above re-points only the dock
|
|
72
|
-
root's own inheriting tokens; a consumer's explicit ancestor bucket still
|
|
73
|
-
cascades to nested glass through this block). */
|
|
74
|
-
@container style(--glass-backdrop: light) {
|
|
75
|
-
.glass-dock {
|
|
76
|
-
--glass-tint-source: var(--glass-tint-ink);
|
|
77
|
-
--glass-tint-strength: var(--glass-tint-strength-aa);
|
|
78
|
-
--dock-fg-on-aurora: var(--glass-tint-ink);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
/* AX.W55 — the `contrast-color()` flip for the dock control foreground (Chrome
|
|
83
|
-
147+/Safari 26+; progressive enhancement, NEVER the load-bearing floor). The
|
|
84
|
-
declarative bucket above already carries AA on all engines (it darkens the dock
|
|
85
|
-
plate so the warm-dark `--dock-fg-on-aurora` clears ~17:1 over white at the 18%
|
|
86
|
-
floor). On a supporting engine `contrast-color()` REFINES the control ink,
|
|
87
|
-
anchored on the LIGHT BACKDROP signal (`--card`, the warm-white surface base the
|
|
88
|
-
bright bucket implies) — `contrast-color(var(--card))` resolves to the legible
|
|
89
|
-
DARK ink. Anchoring on the dark ink instead inverts to white (illegible on the
|
|
90
|
-
still-light dock plate), so the anchor is the light surface, matching the rung
|
|
91
|
-
refinement in glass.css. The bucket is the floor; this is the native pick. */
|
|
92
|
-
@supports (color: contrast-color(white)) {
|
|
93
|
-
/* The SELF-ENGAGED dock refinement (the unconditional self-engage above);
|
|
94
|
-
progressive enhancement only — the declarative darken is the AA floor. */
|
|
95
|
-
:where(.glass-dock) {
|
|
96
|
-
--dock-fg-on-aurora: contrast-color(var(--card));
|
|
97
|
-
--muted-foreground: contrast-color(var(--card));
|
|
98
|
-
}
|
|
99
|
-
@container style(--glass-backdrop: light) {
|
|
100
|
-
.glass-dock {
|
|
101
|
-
--dock-fg-on-aurora: contrast-color(var(--card));
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
/* BB.W-LIQUID-REVEAL — the dock-expand bloom beat's blur-settle is OFF under
|
|
108
|
-
`prefers-reduced-motion: reduce` (the vestibular floor): a reduced-motion dock reads
|
|
109
|
-
crisp at every state, no in-between blur frames.
|
|
110
|
-
BC.W-DOCK-SHRINK-BLUR — the self-blur is now gated to `[data-morphing]`, so the PRM
|
|
111
|
-
carve zeroes it on the ARMED scope too (specificity 0,2,0) — a PRM dock that briefly
|
|
112
|
-
arms `[data-morphing]` carries no 3px bloom; the resting `.glass-dock` is already
|
|
113
|
-
crisp by the re-gate. */
|
|
114
|
-
@media (prefers-reduced-motion: reduce) {
|
|
115
|
-
.glass-dock,
|
|
116
|
-
.glass-dock[data-morphing] {
|
|
117
|
-
--dock-reveal-blur: 0px;
|
|
118
|
-
}
|
|
119
|
-
}
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
/* dock/crossfade.css — the ONE crossfade-slot rule (BI.W-DOCK-CROSSFADE).
|
|
2
|
-
*
|
|
3
|
-
* `DockLayerGroup`/`DockLayer`/`useLayerTransition` FOLD to ONE crossfade slot
|
|
4
|
-
* (PASS-1 §2.6): the content layer hosts ONE active face; a switch is a two-child
|
|
5
|
-
* OPACITY OVERLAP on the per-face `--dock-t` scalar (written by `useDockSpring` in
|
|
6
|
-
* `DockCrossfade.vue` — velocity-continuous + interruptible, NOT a UA-eased View
|
|
7
|
-
* Transition; G6 CLOSED). The reserved box is sized to the PEAK face as a MEASURE-ONCE
|
|
8
|
-
* `min-block-size` (set inline by the crossfade slot — a running max, never a per-swap
|
|
9
|
-
* FLIP). The clip-era `.dock-layer-item-host` FLIP crossfade in `layers.css`/
|
|
10
|
-
* `layer-group.css` is superseded (its element no longer renders — DockLayer renders
|
|
11
|
-
* `.dock-face`).
|
|
12
|
-
*
|
|
13
|
-
* `--dock-t` is `@property`-registered `inherits: false` (dock.css, the plate scalar),
|
|
14
|
-
* so writing it per-FACE is local to that face — each face reads its OWN `--dock-t` for
|
|
15
|
-
* its opacity, and the plate's own `--dock-t` (the collapse clip) never collides. The
|
|
16
|
-
* G12 content clip rides the SEPARATE inheriting `--dock-morph-t` collapse scalar.
|
|
17
|
-
*/
|
|
18
|
-
@layer components {
|
|
19
|
-
/* The crossfade slot: a relative grid whose cells (faces) stack at 1/1. The
|
|
20
|
-
peak-reserve `min-block-size` is set inline by `DockCrossfade.vue` (measure-once
|
|
21
|
-
running max), so the box holds the tallest face from frame 0 — no jump when a
|
|
22
|
-
shorter face becomes active nor when the plate collapses over it (the compound). */
|
|
23
|
-
.dock-crossfade {
|
|
24
|
-
position: relative;
|
|
25
|
-
display: grid;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
/* A face host — the grid cell + the crossfade opacity channel (the INTERACTIVE run:
|
|
29
|
-
hover plates overflow it, NEVER clipped here). The inactive default is
|
|
30
|
-
out-of-flow (absolute + inset:0, opacity 0, inert) so the grid shrink-wraps to
|
|
31
|
-
the ACTIVE face while the peak reserve holds the box. */
|
|
32
|
-
.dock-crossfade > .dock-face {
|
|
33
|
-
grid-area: 1 / 1;
|
|
34
|
-
position: absolute;
|
|
35
|
-
inset: 0;
|
|
36
|
-
opacity: 0;
|
|
37
|
-
will-change: opacity;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/* ACTIVE — in flow, fully painted AT REST (`opacity: 1`; `--dock-t` is a registered
|
|
41
|
-
`initial-value: 0` property, so a `var(--dock-t, 1)` at-rest read would resolve the
|
|
42
|
-
registered 0, not the fallback — the active pane would vanish). The two-child
|
|
43
|
-
opacity OVERLAP engages ONLY while the crossfade slot is mid-swap
|
|
44
|
-
(`[data-crossfading]`, below). */
|
|
45
|
-
.dock-crossfade > .dock-face.is-active {
|
|
46
|
-
position: relative;
|
|
47
|
-
inset: auto;
|
|
48
|
-
inline-size: max-content;
|
|
49
|
-
min-inline-size: 0;
|
|
50
|
-
opacity: 1;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
/* LEAVING — out of flow (the entering active face sizes the box); stays painted +
|
|
54
|
-
untouchable through the dissolve (the crossfading rule below drives its fade). */
|
|
55
|
-
.dock-crossfade > .dock-face.is-leaving {
|
|
56
|
-
position: absolute;
|
|
57
|
-
inset: 0;
|
|
58
|
-
pointer-events: none;
|
|
59
|
-
visibility: visible;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
/* THE TWO-CHILD OPACITY OVERLAP ON `--dock-t` — engaged ONLY mid-swap. The crossfade
|
|
63
|
-
slot arms `[data-crossfading]` at the swap start (cleared on settle) + writes the
|
|
64
|
-
per-face `--dock-t` spring progress (`useDockSpring`, velocity-continuous). The
|
|
65
|
-
entering face reads `opacity: var(--dock-t)` (0→1), the leaving `calc(1 -
|
|
66
|
-
var(--dock-t))` (1→0) — co-present through the overlap, no blank-plate dead-zone.
|
|
67
|
-
Higher-specificity than the at-rest rules (the extra `[data-crossfading]` attr), so
|
|
68
|
-
they win while a swap runs and hand back to `opacity: 1`/idle on settle. */
|
|
69
|
-
.dock-crossfade[data-crossfading] > .dock-face.is-active {
|
|
70
|
-
opacity: var(--dock-t);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
.dock-crossfade[data-crossfading] > .dock-face.is-leaving {
|
|
74
|
-
opacity: calc(1 - var(--dock-t));
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
/* The content flex — the controls / glyphs / labels a face authors. The
|
|
78
|
-
orientation flips to a stacked column when the crossfade lives in a vertical
|
|
79
|
-
dock or layer group (matching the box axis). */
|
|
80
|
-
.dock-crossfade > .dock-face > .dock-face-content {
|
|
81
|
-
display: flex;
|
|
82
|
-
align-items: center;
|
|
83
|
-
gap: var(--dock-layer-gap, 0.375rem);
|
|
84
|
-
white-space: nowrap;
|
|
85
|
-
block-size: 100%;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
:where(.glass-dock, .dock-layer-group).vertical
|
|
89
|
-
.dock-crossfade
|
|
90
|
-
> .dock-face
|
|
91
|
-
> .dock-face-content {
|
|
92
|
-
flex-direction: column;
|
|
93
|
-
align-items: stretch;
|
|
94
|
-
white-space: normal;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
:where(.glass-dock, .dock-layer-group).vertical
|
|
98
|
-
.dock-crossfade
|
|
99
|
-
> .dock-face.is-active {
|
|
100
|
-
inline-size: auto;
|
|
101
|
-
block-size: max-content;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
/* G12 — the content-wrapper clip. Lands on `.dock-face-content` ONLY (the
|
|
105
|
-
non-interactive content wrapper), NEVER on the `.dock-face` interactive run, and
|
|
106
|
-
ONLY while a SIMULTANEOUS plate collapse is in flight (`.glass-dock[data-morphing]`
|
|
107
|
-
ancestor). So a face's row that spills past the narrowing plate is clipped
|
|
108
|
-
mid-collapse WHILE hover plates overflow freely at rest (no `[data-morphing]` → no
|
|
109
|
-
clip). The clip rides the inheriting `--dock-morph-t` collapse scalar (DISTINCT
|
|
110
|
-
from the per-face `--dock-t` opacity scalar): at `--dock-morph-t: 1` (expanded)
|
|
111
|
-
`inset(0)` — no clip; toward `0` (collapsing) the trailing/bottom remainder is
|
|
112
|
-
clipped away as the aperture narrows. Compositor-only (`clip-path`) — the
|
|
113
|
-
`proof:no-layout-animation` floor. PRM snaps the collapse, so the clip is a single
|
|
114
|
-
frame. This is the COMPOUND the synthetic prototypes never composed: a face-swap
|
|
115
|
-
crossfade coexisting with a collapse-morph clip on the same face. */
|
|
116
|
-
.glass-dock[data-morphing]
|
|
117
|
-
.dock-crossfade
|
|
118
|
-
> .dock-face.is-active
|
|
119
|
-
> .dock-face-content {
|
|
120
|
-
clip-path: inset(0 calc((1 - var(--dock-morph-t)) * 100%) 0 0);
|
|
121
|
-
will-change: clip-path;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
.glass-dock.vertical[data-morphing]
|
|
125
|
-
.dock-crossfade
|
|
126
|
-
> .dock-face.is-active
|
|
127
|
-
> .dock-face-content {
|
|
128
|
-
clip-path: inset(0 0 calc((1 - var(--dock-morph-t)) * 100%) 0);
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
/* PRM — the opacity crossfade snaps (the spring's `respectReducedMotion` jumps
|
|
132
|
-
`--dock-t` 0→1 in one frame). The reserved box + the discrete active/leaving
|
|
133
|
-
presence stay correct (fade-keeps / transform-drops; there is no transform here). */
|
|
134
|
-
@media (prefers-reduced-motion: reduce) {
|
|
135
|
-
.dock-crossfade > .dock-face {
|
|
136
|
-
will-change: auto;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
/* dock/cta-seat.css — the `[data-cta-pending]` CTA-receive landing SEAT (BC.W-AX-DOCK-
|
|
2
|
-
* CTA-SEAT; the speedtest-AX BC-W2 + BC-W3 fold).
|
|
3
|
-
*
|
|
4
|
-
* THE MOVE. `useDockCtaReceive` (the BB.B2 morph half) flies an EXTERNAL CTA onto a
|
|
5
|
-
* dock control's rect; this partial makes the control it lands on a SEAT that was
|
|
6
|
-
* visibly RESERVED for it. While the CTA is in flight (or pending), the target dock
|
|
7
|
-
* control carries `data-cta-pending` (written by `setPending()` on the
|
|
8
|
-
* `useDockCtaReceive` return): the control shows a quiet dim GHOST (a placeholder
|
|
9
|
-
* awaiting its arrival) AND reserves its resting footprint from frame 0 so the dock
|
|
10
|
-
* box does NOT jump when the CTA lands. On `clearPending()` (the default hand-off
|
|
11
|
-
* fires it as the CTA lands) the attribute is removed and the seat REVEALS its real
|
|
12
|
-
* content with a plain `transition: opacity` FLIP.
|
|
13
|
-
*
|
|
14
|
-
* THE NO-BOX-JUMP (T2). The reserve is a STATIC `min-inline-size`/`min-block-size`
|
|
15
|
-
* keyed off `--dock-control-size`/`--dock-layer-height` (the control's resting box) —
|
|
16
|
-
* a ONE-TIME reservation set the instant `setPending()` fires, NEVER an animated
|
|
17
|
-
* dimension (the W-DESKTOP-RESERVE static-frame-0 precedent). The dock's shrink-wrap
|
|
18
|
-
* is already at the seated width, so the CTA lands into an already-sized hole; the box
|
|
19
|
-
* never grows on reveal. `proof:no-layout-animation` holds — no `transition: width`/
|
|
20
|
-
* animated min-* anywhere here.
|
|
21
|
-
*
|
|
22
|
-
* THE FLIP REVEAL (T3). The seat is a CONTENT swap on an already-sized box, NOT a box
|
|
23
|
-
* morph — so the reveal is a PLAIN `transition: opacity` on the `--ease-out`
|
|
24
|
-
* no-overshoot register (a content reveal must not overshoot — W-MOTION-CANON P2). It
|
|
25
|
-
* does NOT ride the dock collapse/expand morph-stagger (`--dock-expand-t`/the child
|
|
26
|
-
* stagger); re-using the morph clock would read as a janky stagger-restart on a
|
|
27
|
-
* content reveal.
|
|
28
|
-
*
|
|
29
|
-
* RECT-DRIVEN, LAYOUT-AGNOSTIC (Gate-1 Q5). The seat targets `[data-cta-pending]` on
|
|
30
|
-
* ANY dock control — it makes NO assumption about a skip-arrow affordance (a
|
|
31
|
-
* consumer-side functional skip control that may or may not be present). The reserve
|
|
32
|
-
* is the control's own resting footprint; the seat works with or without arrows.
|
|
33
|
-
*
|
|
34
|
-
* COMPOSITOR-ONLY. `setPending`/`clearPending` toggle the data attribute; this partial
|
|
35
|
-
* paints with `opacity` + the static reserve. No layout property is animated. The
|
|
36
|
-
* `--cta-seat-*` knobs are the consumer retune seam.
|
|
37
|
-
*
|
|
38
|
-
* @import-ed by dock.css in the dock partial cascade, in the SAME `@layer components`. */
|
|
39
|
-
|
|
40
|
-
@layer components {
|
|
41
|
-
/* The armed seat — the control is RESERVED. The static min-*-size locks the resting
|
|
42
|
-
footprint from frame 0 (the no-box-jump); the dim opacity is the placeholder
|
|
43
|
-
ghost awaiting the CTA's arrival. The `transition: opacity` is declared HERE (not
|
|
44
|
-
only on the cleared state) so the GHOST→content reveal is a smooth fade in BOTH
|
|
45
|
-
directions on the SAME compositor-safe register — the box is already sized, only
|
|
46
|
-
the opacity moves. */
|
|
47
|
-
[data-cta-pending] {
|
|
48
|
-
/* The STATIC resting-geometry reserve (T2) — a one-time min-*-size off the
|
|
49
|
-
control's own resting box. NEVER transitioned (an animated dimension
|
|
50
|
-
CLS-storms — the proof:no-layout-animation floor). */
|
|
51
|
-
min-inline-size: var(--dock-control-size, var(--size-icon-btn));
|
|
52
|
-
min-block-size: var(
|
|
53
|
-
--dock-layer-height,
|
|
54
|
-
var(--dock-control-size, var(--size-icon-btn))
|
|
55
|
-
);
|
|
56
|
-
|
|
57
|
-
/* The dim GHOST placeholder — the control awaits its arrival (T3). */
|
|
58
|
-
opacity: var(--cta-seat-ghost-opacity, 0.35);
|
|
59
|
-
|
|
60
|
-
/* The FLIP reveal register — a PLAIN opacity transition on --ease-out
|
|
61
|
-
(no-overshoot). Default duration tracks the snappy spring envelope so the
|
|
62
|
-
reveal reads as the same family as the morph that lands the CTA. */
|
|
63
|
-
transition: opacity
|
|
64
|
-
var(--cta-seat-reveal-duration, var(--spring-snappy-duration))
|
|
65
|
-
var(--ease-out);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
/* The seated CONTENT also dims while pending — the icon/label is the thing that
|
|
69
|
-
fades back in on reveal. Direct-child targeting keeps the seat layout-agnostic
|
|
70
|
-
(it does not name a control class — Q5). */
|
|
71
|
-
[data-cta-pending] > * {
|
|
72
|
-
opacity: var(--cta-seat-ghost-opacity, 0.35);
|
|
73
|
-
transition: opacity
|
|
74
|
-
var(--cta-seat-reveal-duration, var(--spring-snappy-duration))
|
|
75
|
-
var(--ease-out);
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
/* PRM — the reveal is an INSTANT opacity swap (the vestibular floor; the seat snaps
|
|
79
|
-
to its content, zero transition frames). The reserve is unchanged (it is static,
|
|
80
|
-
not a motion). The gesture completes; the animation is off. */
|
|
81
|
-
@media (prefers-reduced-motion: reduce) {
|
|
82
|
-
[data-cta-pending],
|
|
83
|
-
[data-cta-pending] > * {
|
|
84
|
-
transition: none;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
}
|