@mkbabb/glass-ui 3.13.0 → 4.0.1
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 +3 -1
- package/dist/CardAction-CW7a0m8M.js +253 -0
- package/dist/{CommandShortcut-RowNEO6i.js → CommandShortcut-DvZNQ_HF.js} +58 -53
- package/dist/ConfiguratorRow-BR4l-ixA.js +143 -0
- package/dist/{ContextMenuContent-CT3AS1WX.js → ContextMenuContent-uWnVxDab.js} +1 -1
- package/dist/{ContextMenuSubContent-BQmxTAdw.js → ContextMenuSubContent-xol4sD2q.js} +32 -37
- package/dist/{DataTable-BCddn3T3.js → DataTable-CuKwF7wr.js} +99 -97
- package/dist/DialogContent-DcKK8k9i.js +103 -0
- package/dist/{DialogFooter-Blu4t7tJ.js → DialogFooter-BZNX5aVr.js} +3 -3
- package/dist/FadingScroll-DI6hQhT9.js +76 -0
- package/dist/{HoverCardContent-Csywg3YF.js → HoverCardContent-b2uaAMRR.js} +1 -1
- package/dist/{HoverPopover-CISOJQuZ.js → HoverPopover-CbqbNwgU.js} +2 -2
- package/dist/IconChip-BTD-nay5.js +55 -0
- package/dist/{IconTooltip-DPzE09X9.js → IconTooltip-Bl8gFZ8d.js} +1 -1
- package/dist/{Input-DWQQIOC4.js → Input-h9v5LeXf.js} +1 -1
- package/dist/{MetricBadge-C9QMz1KT.js → MetricBadge-RHdBP72w.js} +1 -1
- package/dist/Notification-VUwexFUf.js +43 -0
- package/dist/NumberFieldContent-Cq7EzX-U.js +138 -0
- package/dist/PopoverContent-DL7E6vJP.js +127 -0
- package/dist/{Progress-DwlUKGbr.js → Progress-DctG61iZ.js} +98 -78
- package/dist/{ScrollingText-DfFrwSph.js → ScrollingText-yOpBzFYq.js} +2 -2
- package/dist/{SelectScrollDownButton-CiDUxfEj.js → SelectScrollDownButton-CrA8F0iV.js} +35 -20
- package/dist/{Switch-CsIuYP_e.js → Switch-CwYNf8bo.js} +1 -1
- package/dist/Toaster-Bw4xR8xV.js +274 -0
- package/dist/{ToggleGroupItem-D_AHlRw9.js → ToggleGroupItem-pEM9vIhs.js} +50 -37
- package/dist/{TooltipProvider-B3MkB_8P.js → TooltipProvider-rzvnXz60.js} +1 -1
- package/dist/animated-digit.js +2 -2
- package/dist/api/index.d.ts +16 -8
- package/dist/api/types-extra.d.ts +6 -0
- package/dist/api.js +2 -2
- package/dist/aurora.js +888 -230
- package/dist/badge.js +1 -1
- package/dist/border-progress.d.ts +1 -0
- package/dist/border-progress.js +106 -0
- package/dist/button-DYCUa-tH.js +126 -0
- package/dist/button.js +1 -1
- package/dist/canvas.js +2 -2
- package/dist/card.js +2 -2
- package/dist/carousel.d.ts +1 -1
- package/dist/carousel.js +90 -151
- package/dist/collapsible.js +1 -1
- package/dist/color-swatch.d.ts +1 -0
- package/dist/color-swatch.js +47 -0
- package/dist/color.js +1 -1
- package/dist/command.js +1 -1
- package/dist/compile-CQEFRTmx.js +19 -0
- package/dist/components/custom/aurora/composables/atoms-fields.d.ts +39 -0
- package/dist/components/custom/aurora/composables/auroraFallbackGround.d.ts +108 -0
- package/dist/components/custom/aurora/composables/runtime.d.ts +19 -0
- package/dist/components/custom/aurora/composables/uniformBridge.d.ts +5 -1
- package/dist/components/custom/aurora/composables/uniformBridgeWGPU.d.ts +51 -0
- package/dist/components/custom/aurora/composables/wgpuSetup.d.ts +29 -0
- package/dist/components/custom/aurora/constants/budget.d.ts +21 -0
- package/dist/components/custom/aurora/constants/presets.d.ts +30 -2
- package/dist/components/custom/aurora/constants/renderMode.d.ts +63 -10
- package/dist/components/custom/aurora/constants/shaders/aurora.wgsl.d.ts +1 -0
- package/dist/components/custom/aurora/constants/shaders/oil-modes.glsl.d.ts +1 -0
- package/dist/components/custom/aurora/constants/shaders/procedural-color.wgsl.d.ts +4 -0
- package/dist/components/custom/aurora/index.d.ts +3 -2
- package/dist/components/custom/border-progress/BorderProgress.vue.d.ts +46 -0
- package/dist/components/custom/border-progress/composables/useBorderSpectrum.d.ts +22 -0
- package/dist/components/custom/border-progress/constants.d.ts +59 -0
- package/dist/components/custom/border-progress/index.d.ts +4 -0
- package/dist/components/custom/color-swatch/ColorSwatch.vue.d.ts +22 -0
- package/dist/components/custom/color-swatch/index.d.ts +1 -0
- package/dist/components/custom/concentric/Concentric.vue.d.ts +39 -0
- package/dist/components/custom/concentric/composables/concentricGLSetup.d.ts +11 -0
- package/dist/components/custom/concentric/composables/concentricWGPUSetup.d.ts +13 -0
- package/dist/components/custom/concentric/composables/ringField.d.ts +44 -0
- package/dist/components/custom/concentric/composables/uniformBridgeWGPU.d.ts +13 -0
- package/dist/components/custom/concentric/composables/useConcentric.d.ts +35 -0
- package/dist/components/custom/concentric/constants.d.ts +43 -0
- package/dist/components/custom/concentric/index.d.ts +5 -0
- package/dist/components/custom/concentric/shaders/concentric.glsl.d.ts +4 -0
- package/dist/components/custom/concentric/shaders/concentric.wgsl.d.ts +1 -0
- package/dist/components/custom/configurator/Configurator.vue.d.ts +19 -8
- package/dist/components/custom/constellation/Constellation.vue.d.ts +18 -206
- package/dist/components/custom/constellation/composables/useConstellation.d.ts +26 -0
- package/dist/components/custom/constellation/constellationField.d.ts +2 -369
- package/dist/components/custom/constellation/constellationTypes.d.ts +369 -0
- package/dist/components/custom/constellation/index.d.ts +1 -1
- package/dist/components/custom/dock/DockIconButton.vue.d.ts +13 -4
- package/dist/components/custom/dock/DockLayerGroup.vue.d.ts +10 -2
- package/dist/components/custom/dock/DockRail.vue.d.ts +17 -16
- package/dist/components/custom/dock/DockSection.vue.d.ts +69 -0
- package/dist/components/custom/dock/DockSeparator.vue.d.ts +49 -1
- package/dist/components/custom/dock/DockTabButton.vue.d.ts +5 -5
- package/dist/components/custom/dock/composables/dockMorphMeasure.d.ts +75 -0
- package/dist/components/custom/dock/composables/useLayerTransition.d.ts +13 -0
- package/dist/components/custom/dock/constants.d.ts +35 -0
- package/dist/components/custom/dock/index.d.ts +2 -0
- package/dist/components/custom/dot-flow-field/DotFlowField.vue.d.ts +38 -0
- package/dist/components/custom/dot-flow-field/composables/flowField.d.ts +41 -0
- package/dist/components/custom/dot-flow-field/composables/uniformBridgeWGPU.d.ts +24 -0
- package/dist/components/custom/dot-flow-field/composables/useDotFlowField.d.ts +34 -0
- package/dist/components/custom/dot-flow-field/composables/useFlowParticles.d.ts +18 -0
- package/dist/components/custom/dot-flow-field/constants.d.ts +48 -0
- package/dist/components/custom/dot-flow-field/index.d.ts +5 -0
- package/dist/components/custom/dot-flow-field/shaders/flow-field.compute.wgsl.d.ts +1 -0
- package/dist/components/custom/dot-flow-field/shaders/flow-field.glsl.d.ts +20 -0
- package/dist/components/custom/dot-flow-field/shaders/flow-field.render.wgsl.d.ts +1 -0
- package/dist/components/custom/easing/EasingConfigurator.vue.d.ts +33 -0
- package/dist/components/custom/easing/EasingPicker.vue.d.ts +49 -0
- package/dist/components/custom/easing/composables/useEasingPicker.d.ts +75 -0
- package/dist/components/custom/easing/constants.d.ts +28 -0
- package/dist/components/custom/easing/index.d.ts +3 -0
- package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +10 -0
- package/dist/components/custom/fading-scroll/FadingScroll.vue.d.ts +25 -0
- package/dist/components/custom/fading-scroll/composables/useFadingScroll.d.ts +31 -0
- package/dist/components/custom/fading-scroll/constants.d.ts +19 -0
- package/dist/components/custom/fading-scroll/index.d.ts +2 -0
- package/dist/components/custom/fourier-field/FourierField.vue.d.ts +19 -2
- package/dist/components/custom/fourier-field/composables/useFourierField.d.ts +39 -0
- package/dist/components/custom/fourier-field/constants.d.ts +7 -0
- package/dist/components/custom/fourier-field/index.d.ts +1 -1
- package/dist/components/custom/fourier-field/math.d.ts +17 -0
- package/dist/components/custom/glass-panel/GlassPanel.vue.d.ts +9 -1
- package/dist/components/custom/goo-blob/GooBlob.vue.d.ts +4 -2
- package/dist/components/custom/goo-blob/composables/uniformBridgeWGPU.d.ts +24 -0
- package/dist/components/custom/goo-blob/composables/useMetaballRenderer.d.ts +29 -12
- package/dist/components/custom/goo-blob/composables/wgpuSetup.d.ts +23 -0
- package/dist/components/custom/goo-blob/constants.d.ts +6 -1
- package/dist/components/custom/goo-blob/shaders/metaball.wgsl.d.ts +1 -0
- package/dist/components/custom/handmark/HandMark.vue.d.ts +29 -0
- package/dist/components/custom/handmark/brush.d.ts +269 -0
- package/dist/components/custom/handmark/composables/useHandMark.d.ts +89 -0
- package/dist/components/custom/handmark/constants.d.ts +39 -0
- package/dist/components/custom/handmark/freehand.d.ts +69 -0
- package/dist/components/custom/handmark/geometry.d.ts +52 -0
- package/dist/components/custom/handmark/index.d.ts +27 -0
- package/dist/components/custom/handmark/ink.d.ts +11 -0
- package/dist/components/custom/handmark/texture.d.ts +39 -0
- package/dist/components/custom/handmark/types.d.ts +62 -0
- package/dist/components/custom/icon-chip/IconChip.vue.d.ts +4 -0
- package/dist/components/custom/icon-chip/index.d.ts +2 -0
- package/dist/components/custom/icon-chip/types.d.ts +82 -0
- package/dist/components/custom/instrument-chassis/InstrumentChassis.vue.d.ts +17 -2
- package/dist/components/custom/metric-stack/MetricStack.vue.d.ts +1 -1
- package/dist/components/custom/pager-dots/PagerDots.vue.d.ts +39 -0
- package/dist/components/custom/pager-dots/index.d.ts +2 -0
- package/dist/components/custom/spa-view/SpaView.vue.d.ts +50 -0
- package/dist/components/custom/spa-view/index.d.ts +2 -0
- package/dist/components/custom/tabs/SegmentedTabs.vue.d.ts +29 -24
- package/dist/components/custom/tabs/composables/useTabDragMorph.d.ts +42 -0
- package/dist/components/custom/tabs/composables/useTabIndicator.d.ts +30 -21
- package/dist/components/custom/tabs/constants.d.ts +9 -3
- package/dist/components/custom/tabs/index.d.ts +1 -1
- package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +15 -1
- package/dist/components/ui/_shared/index.d.ts +2 -0
- package/dist/components/ui/_shared/menuItemVariants.d.ts +19 -0
- package/dist/components/ui/_shared/useSurfaceAxis.d.ts +41 -0
- package/dist/components/ui/badge/index.d.ts +1 -1
- package/dist/components/ui/button/Button.vue.d.ts +5 -2
- package/dist/components/ui/button/index.d.ts +2 -2
- package/dist/components/ui/card/Card.vue.d.ts +34 -4
- package/dist/components/ui/card/CardHeader.vue.d.ts +42 -16
- package/dist/components/ui/card/ScrollCard.vue.d.ts +33 -0
- package/dist/components/ui/card/ScrollCardHeader.vue.d.ts +17 -0
- package/dist/components/ui/card/index.d.ts +2 -0
- package/dist/components/ui/carousel/CarouselNext.vue.d.ts +2 -2
- package/dist/components/ui/carousel/CarouselPrevious.vue.d.ts +2 -2
- package/dist/components/ui/carousel/GlassCarouselPager.vue.d.ts +2 -2
- package/dist/components/ui/carousel/index.d.ts +0 -1
- package/dist/components/ui/command/Command.vue.d.ts +4 -1
- package/dist/components/ui/dialog/DialogContent.vue.d.ts +8 -3
- package/dist/components/ui/drawer/Drawer.vue.d.ts +46 -33
- package/dist/components/ui/drawer/DrawerContent.vue.d.ts +12 -8
- package/dist/components/ui/drawer/DrawerDescription.vue.d.ts +2 -2
- package/dist/components/ui/drawer/DrawerOverlay.vue.d.ts +1 -1
- package/dist/components/ui/drawer/DrawerTitle.vue.d.ts +2 -2
- package/dist/components/ui/drawer/composables/drawerSnapContext.d.ts +26 -0
- package/dist/components/ui/drawer/composables/useDrawerSnap.d.ts +17 -0
- package/dist/components/ui/drawer/constants.d.ts +45 -0
- package/dist/components/ui/drawer/index.d.ts +23 -15
- package/dist/components/ui/focus-scope/FocusScope.vue.d.ts +20 -0
- package/dist/components/ui/focus-scope/index.d.ts +2 -0
- package/dist/components/ui/index.d.ts +1 -1
- package/dist/components/ui/popover/PopoverContent.vue.d.ts +3 -0
- package/dist/components/ui/progress/ProgressDefault.vue.d.ts +3 -2
- package/dist/components/ui/progress/ProgressSectioned.vue.d.ts +14 -3
- package/dist/components/ui/select/SelectContent.vue.d.ts +1 -1
- package/dist/components/ui/select/SelectTrigger.vue.d.ts +27 -4
- package/dist/components/ui/sheet/SheetContent.vue.d.ts +6 -0
- package/dist/components/ui/sheet/index.d.ts +1 -1
- package/dist/components/ui/skeleton/Skeleton.vue.d.ts +3 -0
- package/dist/components/ui/tags-input/TagsInput.vue.d.ts +2 -2
- package/dist/components/ui/toast/Toast.vue.d.ts +5 -2
- package/dist/components/ui/toast/use-toast.d.ts +14 -0
- package/dist/components/ui/toggle/Toggle.vue.d.ts +1 -1
- package/dist/composables/dark/index.d.ts +1 -1
- package/dist/composables/dark/useGlobalDark.d.ts +23 -1
- package/dist/composables/glass/canvas2d/useCanvas2D.d.ts +13 -6
- package/dist/composables/glass/index.d.ts +5 -2
- package/dist/composables/glass/useSpecularPointer.d.ts +33 -0
- package/dist/composables/glass/useSpecularTracking.d.ts +20 -0
- package/dist/composables/glass/vSpecular.d.ts +2 -0
- package/dist/composables/glass/webgl/shaders/flow.glsl.d.ts +1 -0
- package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +16 -0
- package/dist/composables/glass/webgpu/index.d.ts +2 -0
- package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +54 -0
- package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +84 -0
- package/dist/composables/motion/core/index.d.ts +1 -0
- package/dist/composables/motion/index.d.ts +4 -0
- package/dist/composables/motion/useDockCtaReceive.d.ts +59 -0
- package/dist/composables/motion/useDragMorph.d.ts +77 -0
- package/dist/composables/motion/useLiquidFlex.d.ts +11 -0
- package/dist/composables/motion/useLiquidPress.d.ts +71 -0
- package/dist/composables/motion/useLiquidReveal.d.ts +51 -0
- package/dist/composables/motion/useNumericTransition.d.ts +3 -3
- package/dist/composables/motion/usePointerVelocityField.d.ts +98 -0
- package/dist/composables/motion/useViewTransition.d.ts +36 -1
- package/dist/concentric.d.ts +1 -0
- package/dist/concentric.js +562 -0
- package/dist/configurator.js +3 -2
- package/dist/confirm-dialog.js +22 -24
- package/dist/constellation.js +93 -95
- package/dist/context-menu.js +3 -3
- package/dist/controls.js +10 -4
- package/dist/createCanvasLifecycle-CHD5XrDW.js +82 -0
- package/dist/dark.d.ts +1 -1
- package/dist/dark.js +1 -1
- package/dist/data-table.js +1 -1
- package/dist/dialog.js +2 -2
- package/dist/dock.js +738 -442
- package/dist/{dockContext-BegmJVmx.js → dockContext-BNfyPLe9.js} +1 -1
- package/dist/dom.js +5 -5
- package/dist/dot-flow-field.d.ts +1 -0
- package/dist/dot-flow-field.js +604 -0
- package/dist/drawer.d.ts +1 -0
- package/dist/drawer.js +380 -0
- package/dist/{dropdown-menu-DzkkyBwX.js → dropdown-menu-CofSZuk8.js} +14 -15
- package/dist/dropdown-menu.js +1 -1
- package/dist/easing.d.ts +1 -0
- package/dist/easing.js +463 -0
- package/dist/expandable-container.js +45 -38
- package/dist/fading-scroll.d.ts +1 -0
- package/dist/fading-scroll.js +2 -0
- package/dist/focus-scope.d.ts +1 -0
- package/dist/focus-scope.js +23 -0
- package/dist/forms.js +7 -7
- package/dist/fourier-field.js +135 -122
- package/dist/fourier-math.js +2 -2
- package/dist/glass-panel.js +39 -36
- package/dist/glass-ui.css +1 -1
- package/dist/glass-ui.js +154 -362
- package/dist/goo-blob.js +838 -227
- package/dist/handmark.d.ts +1 -0
- package/dist/handmark.js +707 -0
- package/dist/header-ribbon.js +1 -1
- package/dist/hover-card.js +1 -1
- package/dist/hover-popover.js +1 -1
- package/dist/icon-chip.d.ts +1 -0
- package/dist/icon-chip.js +2 -0
- package/dist/icon-tooltip.js +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/instrument-chassis.js +1 -1
- package/dist/keyboard.js +1 -1
- package/dist/label.js +1 -1
- package/dist/labeled-field.js +6 -6
- package/dist/{math-U6-RrLmV.js → math-BINYmg5z.js} +11 -3
- package/dist/{menuItemVariants-DPiEarb0.js → menuItemVariants-D8VNHq22.js} +10 -4
- package/dist/metric-badge.js +1 -1
- package/dist/metric-cell.js +25 -22
- package/dist/metric-stack.js +4 -8
- package/dist/motion-core.js +36 -35
- package/dist/motion-curves.js +1 -1
- package/dist/motion.js +157 -55
- package/dist/notification.js +1 -1
- package/dist/number-field.js +1 -1
- package/dist/pager-dots.d.ts +1 -0
- package/dist/pager-dots.js +91 -0
- package/dist/paper-backdrop.js +1 -1
- package/dist/popover.js +1 -1
- package/dist/{presets-BKVyQfbt.js → presets-BW2b-fr1.js} +14 -1
- package/dist/{compile-B7NGOBcP.js → procedural-color.glsl-CIFsJhwI.js} +1 -155
- package/dist/procedural-color.wgsl-CToRHugY.js +224 -0
- package/dist/progress.js +1 -1
- package/dist/pulse.js +1 -1
- package/dist/reactive.js +2 -2
- package/dist/scrolling-text.js +1 -1
- package/dist/search.js +10 -12
- package/dist/select.js +3 -3
- package/dist/separator.js +1 -1
- package/dist/sheet-tZMg0E0w.js +218 -0
- package/dist/sheet.js +1 -1
- package/dist/{slider-B-JP2JlI.js → slider-DVb4HXU-.js} +7 -7
- package/dist/slider.js +1 -1
- package/dist/sortable-list.js +3 -3
- package/dist/spa-view.d.ts +1 -0
- package/dist/spa-view.js +46 -0
- package/dist/styles/animations.css +40 -31
- package/dist/styles/border-progress.css +109 -0
- package/dist/styles/cards.css +76 -0
- package/dist/styles/components.css +1 -1
- package/dist/styles/configurator.css +35 -0
- package/dist/styles/critical-partition.mjs +140 -0
- package/dist/styles/critical.css +12 -0
- package/dist/styles/deferred.css +31 -0
- package/dist/styles/dock/density.css +64 -0
- package/dist/styles/dock/layers.css +54 -30
- package/dist/styles/dock/morph.css +124 -7
- package/dist/styles/dock/overflow.css +31 -2
- package/dist/styles/dock/rail-extend.css +168 -71
- package/dist/styles/dock/section.css +59 -0
- package/dist/styles/dock/shell.css +83 -16
- package/dist/styles/dock-controls/icon-button.css +11 -1
- package/dist/styles/dock-controls/tab-button.css +24 -83
- package/dist/styles/dock-controls/triggers.css +7 -0
- package/dist/styles/dock.css +38 -3
- package/dist/styles/drawer.css +127 -35
- package/dist/styles/feedback-tone.css +104 -0
- package/dist/styles/glass/deep.css +44 -0
- package/dist/styles/glass/ladder.css +154 -52
- package/dist/styles/glass/material.css +78 -15
- package/dist/styles/glass/reveal.css +136 -0
- package/dist/styles/glass/rim.css +100 -0
- package/dist/styles/glass/surface-axis.css +113 -0
- package/dist/styles/glass/surfaces.css +189 -15
- package/dist/styles/glass-refract.css +96 -44
- package/dist/styles/glass-specular-track.css +7 -0
- package/dist/styles/glass.css +8 -2
- package/dist/styles/hover-popover.css +7 -6
- package/dist/styles/icon-chip.css +211 -0
- package/dist/styles/index.css +78 -4
- package/dist/styles/instrument-chassis.css +107 -2
- package/dist/styles/menu.css +127 -0
- package/dist/styles/scroll-choreography.css +300 -0
- package/dist/styles/segmented-tabs.css +188 -86
- package/dist/styles/select.css +50 -0
- package/dist/styles/theme/bridges.css +22 -1
- package/dist/styles/theme/literals.css +11 -2
- package/dist/styles/theme/radius.css +6 -1
- package/dist/styles/tokens/color-radius.css +40 -13
- package/dist/styles/tokens/dark-arm.css +200 -20
- package/dist/styles/tokens/glass-deep.css +75 -0
- package/dist/styles/tokens/glass-fx.css +333 -0
- package/dist/styles/tokens/glass.css +95 -315
- package/dist/styles/tokens/light-dark.css +64 -22
- package/dist/styles/tokens/offsets.css +116 -0
- package/dist/styles/tokens/on-glass-fg.css +39 -0
- package/dist/styles/tokens/property-regs.css +130 -10
- package/dist/styles/tokens/scale-paper.css +155 -84
- package/dist/styles/tokens/scheme-motion.css +102 -46
- package/dist/styles/tokens/scroll-tokens.css +123 -0
- package/dist/styles/tokens/{offsets-sizing.css → sizing.css} +88 -89
- package/dist/styles/tokens.css +9 -3
- package/dist/styles/transitions.css +7 -7
- package/dist/styles/typography/scale.css +153 -0
- package/dist/styles/typography/semantic.css +220 -0
- package/dist/styles/typography/utilities.css +174 -0
- package/dist/styles/typography.css +23 -507
- package/dist/styles/utilities/a11y-overrides.css +33 -4
- package/dist/styles/utilities/animate.css +27 -24
- package/dist/styles/utilities/base-misc.css +255 -0
- package/dist/styles/utilities/base.css +100 -138
- package/dist/styles/utilities/btn.css +21 -202
- package/dist/styles/utilities/metal.css +189 -0
- package/dist/styles/utilities.css +14 -7
- package/dist/styles/view-transition.css +4 -1
- package/dist/switch.js +1 -1
- package/dist/tabs.js +275 -191
- package/dist/timeline.js +2 -2
- package/dist/toast.js +1 -1
- package/dist/toggle-chip.js +3 -1
- package/dist/toggle-group.js +1 -1
- package/dist/tooltip.js +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/{useAnimatedNumber-C5I3wWd8.js → useAnimatedNumber-BfUq2bUM.js} +1 -1
- package/dist/useCanvas2D-B8w_E3Rr.js +83 -0
- package/dist/useConfiguratorState-DNlOh6c8.js +161 -0
- package/dist/useDragMorph-DgxnsVJz.js +102 -0
- package/dist/{useGlobalDark-yhL4Wp-s.js → useGlobalDark-C28t0VWJ.js} +22 -3
- package/dist/useLiquidPress-kfb4KX79.js +39 -0
- package/dist/usePointerVelocityField-JbRd5CrM.js +137 -0
- package/dist/{useRAFLoop-Bxv0o6L5.js → useRAFLoop-UYa4zoiN.js} +1 -1
- package/dist/useSpring-C0jyvEJB.js +40 -0
- package/dist/useSpringMount-q1amq1SJ.js +71 -0
- package/dist/useSpringPress-BsqPr7FJ.js +34 -0
- package/dist/useSurfaceAxis-g0NloYEF.js +7 -0
- package/dist/{useTouchGate-Dg7MQI1G.js → useTouchGate-CBZTD4SD.js} +1 -1
- package/dist/vReveal-Czsb7zQC.js +10 -0
- package/dist/vSpecular-CQFmLNzA.js +68 -0
- package/dist/vendor-CKmzio-i.js +226 -0
- package/dist/watercolor-dot.js +12 -5
- package/package.json +193 -25
- package/src/styles/animations.css +40 -31
- package/src/styles/border-progress.css +109 -0
- package/src/styles/cards.css +76 -0
- package/src/styles/configurator.css +35 -0
- package/src/styles/critical-partition.mjs +140 -0
- package/src/styles/dock/density.css +64 -0
- package/src/styles/dock/layers.css +54 -30
- package/src/styles/dock/morph.css +124 -7
- package/src/styles/dock/overflow.css +31 -2
- package/src/styles/dock/rail-extend.css +168 -71
- package/src/styles/dock/section.css +59 -0
- package/src/styles/dock/shell.css +83 -16
- package/src/styles/dock-controls/icon-button.css +11 -1
- package/src/styles/dock-controls/tab-button.css +24 -83
- package/src/styles/dock-controls/triggers.css +7 -0
- package/src/styles/dock.css +38 -3
- package/src/styles/drawer.css +123 -35
- package/src/styles/feedback-tone.css +104 -0
- package/src/styles/glass/deep.css +44 -0
- package/src/styles/glass/ladder.css +154 -52
- package/src/styles/glass/material.css +78 -15
- package/src/styles/glass/reveal.css +136 -0
- package/src/styles/glass/rim.css +100 -0
- package/src/styles/glass/surface-axis.css +113 -0
- package/src/styles/glass/surfaces.css +189 -15
- package/src/styles/glass-refract.css +96 -44
- package/src/styles/glass-specular-track.css +7 -0
- package/src/styles/glass.css +8 -2
- package/src/styles/hover-popover.css +7 -6
- package/src/styles/icon-chip.css +211 -0
- package/src/styles/index.css +78 -4
- package/src/styles/instrument-chassis.css +107 -2
- package/src/styles/menu.css +127 -0
- package/src/styles/scroll-choreography.css +300 -0
- package/src/styles/segmented-tabs.css +184 -84
- package/src/styles/select.css +50 -0
- package/src/styles/theme/bridges.css +22 -1
- package/src/styles/theme/literals.css +11 -2
- package/src/styles/theme/radius.css +6 -1
- package/src/styles/tokens/color-radius.css +40 -13
- package/src/styles/tokens/dark-arm.css +200 -20
- package/src/styles/tokens/glass-deep.css +75 -0
- package/src/styles/tokens/glass-fx.css +333 -0
- package/src/styles/tokens/glass.css +95 -315
- package/src/styles/tokens/light-dark.css +64 -22
- package/src/styles/tokens/offsets.css +116 -0
- package/src/styles/tokens/on-glass-fg.css +39 -0
- package/src/styles/tokens/property-regs.css +130 -10
- package/src/styles/tokens/scale-paper.css +155 -84
- package/src/styles/tokens/scheme-motion.css +102 -46
- package/src/styles/tokens/scroll-tokens.css +123 -0
- package/src/styles/tokens/{offsets-sizing.css → sizing.css} +88 -89
- package/src/styles/tokens.css +9 -3
- package/src/styles/transitions.css +7 -7
- package/src/styles/typography/scale.css +153 -0
- package/src/styles/typography/semantic.css +220 -0
- package/src/styles/typography/utilities.css +174 -0
- package/src/styles/typography.css +23 -507
- package/src/styles/utilities/a11y-overrides.css +33 -4
- package/src/styles/utilities/animate.css +27 -24
- package/src/styles/utilities/base-misc.css +255 -0
- package/src/styles/utilities/base.css +100 -138
- package/src/styles/utilities/btn.css +21 -202
- package/src/styles/utilities/metal.css +189 -0
- package/src/styles/utilities.css +14 -7
- package/src/styles/view-transition.css +4 -1
- package/dist/CardAction-Cj2eycQ2.js +0 -157
- package/dist/DialogContent-Dl9WkAoS.js +0 -100
- package/dist/Notification-DdwNxIrI.js +0 -100
- package/dist/NumberFieldContent-CqaN-SvN.js +0 -145
- package/dist/PopoverContent-BYwt2-4x.js +0 -121
- package/dist/TabsList-Dttss653.js +0 -105
- package/dist/Toaster-D6q4HtXu.js +0 -263
- package/dist/button-ChXMfsud.js +0 -81
- package/dist/check-njhk-vfu.js +0 -7
- package/dist/chevron-down-DKkxb4VV.js +0 -7
- package/dist/chevron-right-CPXbqQQz.js +0 -7
- package/dist/chevron-up-n_24SqI-.js +0 -7
- package/dist/components/custom/underline/GlassUnderline.vue.d.ts +0 -84
- package/dist/components/custom/underline/index.d.ts +0 -2
- package/dist/components/custom/underline/types.d.ts +0 -56
- package/dist/components/ui/carousel/CarouselDots.vue.d.ts +0 -4
- package/dist/createLucideIcon-DydS2qgk.js +0 -43
- package/dist/minimize-2-BV31Ob_h.js +0 -38
- package/dist/search-BSGrf2Sk.js +0 -12
- package/dist/sheet-1fChZjtw.js +0 -214
- package/dist/underline.d.ts +0 -1
- package/dist/underline.js +0 -85
- package/dist/useCanvas2D-ClrQuZtp.js +0 -96
- package/dist/useConfiguratorState-DAoeHVue.js +0 -287
- package/dist/useSpecularTracking-Bo5su68i.js +0 -32
- package/dist/useSpringMount-CI2jOstM.js +0 -108
- package/dist/vReveal-CqaCz_mC.js +0 -44
- package/dist/x-BUwTKe50.js +0 -10
- /package/dist/{CollapsibleContent-CP9qF1v4.js → CollapsibleContent-68dEXIAl.js} +0 -0
- /package/dist/{InstrumentChassis-UUJX0-mW.js → InstrumentChassis-Bx0F_q5g.js} +0 -0
- /package/dist/{Label-r3WzWrsj.js → Label-C2ejNWeC.js} +0 -0
- /package/dist/{ModalOverlay-DVLI2VRr.js → ModalOverlay-D1VrWyoi.js} +0 -0
- /package/dist/{PaperBackdrop-DIXTtVq6.js → PaperBackdrop-Vf3tlpvd.js} +0 -0
- /package/dist/{SelectGroup-aumMgWLs.js → SelectGroup-DwwjicPY.js} +0 -0
- /package/dist/{SelectSeparator-BQ_1Fcbp.js → SelectSeparator-DXswVdRz.js} +0 -0
- /package/dist/{Separator-0JE6LtNu.js → Separator-pKF0oA4M.js} +0 -0
- /package/dist/{_plugin-vue_export-helper-ok8pgSl5.js → _plugin-vue_export-helper-C1je1s0u.js} +0 -0
- /package/dist/{badge-UILT_3pZ.js → badge-D9XWW4GT.js} +0 -0
- /package/dist/{color-CUYeFbgd.js → color-DweYl7pE.js} +0 -0
- /package/dist/{constants-CS75AWHG.js → constants-BPOqYJAm.js} +0 -0
- /package/dist/{createContext-BM46COQ-.js → createContext-CpBNTRMI.js} +0 -0
- /package/dist/{prng-D27-B3tK.js → prng-Za0Rmgag.js} +0 -0
- /package/dist/{resolveCanvasColor-BBiYfp8g.js → resolveCanvasColor-CUyHr5Uu.js} +0 -0
- /package/dist/{springPresets--YdWTHtm.js → springPresets-CFQGQfdl.js} +0 -0
- /package/dist/{useIntersectionPause-Cc-H9ees.js → useIntersectionPause-Bj4sPkMh.js} +0 -0
- /package/dist/{useInterval-iHludrxk.js → useInterval-CvK1mL92.js} +0 -0
- /package/dist/{useKeyboardShortcuts-Be3w_Rwk.js → useKeyboardShortcuts-BXWXOZ-9.js} +0 -0
- /package/dist/{useLiquidFlex-BL0lLLN2.js → useLiquidFlex-mZPMiNXh.js} +0 -0
- /package/dist/{useResizeObserver-BhgdhOIj.js → useResizeObserver-Bpoi7tRE.js} +0 -0
- /package/dist/{useResolveTokenColor-Dvn2RZJW.js → useResolveTokenColor-vAylyR0x.js} +0 -0
- /package/dist/{useScrollProgress-Dlvx-L3v.js → useScrollProgress-D7bYU2RK.js} +0 -0
- /package/dist/{useSortable-muI29agz.js → useSortable-DHjtZSEd.js} +0 -0
- /package/dist/{useTextHighlight-DmRYkOBx.js → useTextHighlight-CWEi25hf.js} +0 -0
- /package/dist/{useTimer-Dzarvzuk.js → useTimer-BHJOKr35.js} +0 -0
- /package/dist/{useUserInvalidAria-B2h6jAM_.js → useUserInvalidAria-y5namzeE.js} +0 -0
- /package/dist/{useViewportReady-B40FK4Pa.js → useViewportReady-anbac3m6.js} +0 -0
|
@@ -51,9 +51,19 @@
|
|
|
51
51
|
--type-leading-body: 1.5;
|
|
52
52
|
--type-leading-prose: 1.618;
|
|
53
53
|
--type-leading-heading: 1.2;
|
|
54
|
-
|
|
54
|
+
/* BB.W-DISPLAY-TRACKING — the display leading is tightened to the Apple
|
|
55
|
+
84/80 ≈ 1.05 signature (was 1.1). The DISPLAY ladder ONLY reads this rung;
|
|
56
|
+
--type-leading-heading (1.2) carries the heading/title register. */
|
|
57
|
+
--type-leading-display: 1.05;
|
|
55
58
|
|
|
56
59
|
--type-tracking-tight: -0.025em;
|
|
60
|
+
/* BB.W-DISPLAY-TRACKING — the DISPLAY-ONLY proportional negative tracking
|
|
61
|
+
rung (the Apple −1.5%-of-size signature: 80px → −1.2px = −0.015em). It is
|
|
62
|
+
em-relative, so the single value is a constant −1.5% across the whole
|
|
63
|
+
clamp() ladder (φ² → φ^(11/2)). MINTED as its OWN rung so the display
|
|
64
|
+
calibration NEVER bleeds into the shared --type-tracking-tight (the
|
|
65
|
+
heading/title/configurator register's tracking, kept at -0.025em). */
|
|
66
|
+
--type-tracking-display: -0.015em;
|
|
57
67
|
--type-tracking-snug: -0.01em;
|
|
58
68
|
--type-tracking-normal: 0;
|
|
59
69
|
--type-tracking-wide: 0.025em;
|
|
@@ -72,18 +82,24 @@
|
|
|
72
82
|
--duration-xxl: 1.5s;
|
|
73
83
|
--duration-shimmer-fast: 3s;
|
|
74
84
|
--duration-shimmer: 5s;
|
|
75
|
-
/*
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
85
|
+
/* BB.W-METAL-SHIMMER — the brand-metal family's OWN slow dignified one-pass
|
|
86
|
+
clock (slower than the 5s generic shimmer). The metal sweep (gold·silver·
|
|
87
|
+
bronze, text-clip + border/mask) reads as a calm slow patina catch, not a
|
|
88
|
+
fast band-pass — the §6 calm register. (`--duration-seal` was never landed;
|
|
89
|
+
this is net-new, NOT a retirement re-point.) */
|
|
90
|
+
--duration-metal: 6s;
|
|
91
|
+
/* BA.W-GLASS-CAL (H2a) — `--duration-sparkle` (600ms) DELETED with the disco
|
|
92
|
+
recipe retirement: the sparkle-sweep keyframe + its sole `btn-audacious`
|
|
93
|
+
consumer are gone. */
|
|
79
94
|
|
|
80
95
|
/* AH.W5-e (FA-8 §4d) — motion-duration + staged-reveal canon.
|
|
81
96
|
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
97
|
+
Duration + delay tokens promoted from raw literals at speedtest's
|
|
98
|
+
celebratory-reveal SFCs (SpeedtestResults, ThankYou, ResultStack).
|
|
99
|
+
Unified under the `--motion-*` namespace (parallel to `--motion-ease-*`)
|
|
100
|
+
so all motion tokens cluster at one canon — duration + easing arm
|
|
101
|
+
together. (BB.W-DEAD-SWEEP retired the never-shipped CompleteBadge
|
|
102
|
+
staged-reveal cluster — no consumer existed.) */
|
|
87
103
|
|
|
88
104
|
/* Staged-entrance pairing — opacity + transform Vue <Transition> arms
|
|
89
105
|
in the celebratory headline + result-row reveals. Partners with
|
|
@@ -100,17 +116,6 @@
|
|
|
100
116
|
glyphs cleanly. Load-bearing — zeroing either collapses the shimmer to
|
|
101
117
|
an imperceptible blow-through. */
|
|
102
118
|
|
|
103
|
-
/* CompleteBadge staged-reveal cluster — the disc / ring / check curve
|
|
104
|
-
fires at three asymmetric durations + delays per the A4-AF staged-
|
|
105
|
-
variety design intent. Promoting the magic numbers makes the
|
|
106
|
-
staged-variety visible at the canon. */
|
|
107
|
-
--motion-duration-badge-disc: 420ms;
|
|
108
|
-
--motion-duration-badge-ring: 560ms;
|
|
109
|
-
--motion-duration-badge-check: 380ms;
|
|
110
|
-
--motion-delay-badge-disc: 80ms;
|
|
111
|
-
--motion-delay-badge-ring: 220ms;
|
|
112
|
-
--motion-delay-badge-check: 460ms;
|
|
113
|
-
|
|
114
119
|
/* Staggered-reveal increment canon — three perceptually-distinct tiers for
|
|
115
120
|
per-row/per-cell/per-bar cascades:
|
|
116
121
|
• tight (40ms) — dense row cascades, sub-perceptual gap
|
|
@@ -154,21 +159,53 @@
|
|
|
154
159
|
── EASING DOCTRINE (AX.W52 §6 — which easing fits which job) ──
|
|
155
160
|
ONE recorded rule so the animation easing stops forking live. This
|
|
156
161
|
FORMALIZES the already-correct `transitions.css` idiom (enter=spring,
|
|
157
|
-
exit=bezier) as the house rule every recipe reaches for
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
|
170
|
-
|
|
171
|
-
|
|
|
162
|
+
exit=bezier) as the house rule every recipe reaches for.
|
|
163
|
+
|
|
164
|
+
BB.W-MOTION-CANON — the table embodies ONE principle (Material 3's
|
|
165
|
+
spatial-vs-effects split, codified in `docs/precepts/motion-canon.md`
|
|
166
|
+
as P1): a SPATIAL channel (the box MOVES/RESHAPES — position, SIZE,
|
|
167
|
+
rotation, corners) rides a `--spring-<name>` (overshoot = physicality);
|
|
168
|
+
an EFFECTS channel (the surface RE-TINTS — color, opacity, box-shadow)
|
|
169
|
+
rides a bezier `--ease-*` (a colour cross-fade reads as a wobble on a
|
|
170
|
+
spring). Each row below is tagged [SPATIAL] (spring) or [EFFECTS]
|
|
171
|
+
(bezier) so the rule is legible, not implicit. The canon doc is the
|
|
172
|
+
canonical home; this table is the SOURCE it re-states:
|
|
173
|
+
|
|
174
|
+
| Transition kind | Tier | Easing |
|
|
175
|
+
|--------------------------------------------------|-----------|--------------------------|
|
|
176
|
+
| Surface props (bg, border, color, box-shadow, | [EFFECTS] | `--ease-standard` (bezier|
|
|
177
|
+
| opacity) | | — a colour cross-fade |
|
|
178
|
+
| | | reads as a wobble on a |
|
|
179
|
+
| | | spring) |
|
|
180
|
+
| Transform — hover/press/active (scale, translate,| [SPATIAL] | `--spring-smooth` (the |
|
|
181
|
+
| rotate) | | ONE button/interactive |
|
|
182
|
+
| | | scale register) or |
|
|
183
|
+
| | | `--spring-snappy` |
|
|
184
|
+
| Size / morph (dock V↔H, indicator size- | [SPATIAL] | `--spring-dock` / |
|
|
185
|
+
| correction, reveal source-rect bloom) | | `--spring-snappy`, |
|
|
186
|
+
| | | expressed as a |
|
|
187
|
+
| | | COMPOSITOR transform |
|
|
188
|
+
| | | (P5) — NEVER an |
|
|
189
|
+
| | | animated width/height |
|
|
190
|
+
| Enter (mount, popover open, dialog in, reveal) | [SPATIAL] | `--spring-bouncy` / |
|
|
191
|
+
| | | `--spring-snappy` |
|
|
192
|
+
| Bold decelerating arrival (the SOTA arrival — | [SPATIAL] | `--ease-out-expo` |
|
|
193
|
+
| reveal draw-on, big-distance settle) | | (cubic-bezier(.16,1, |
|
|
194
|
+
| | | .3,1); the house expo) |
|
|
195
|
+
| Exit (unmount, close) | [EFFECTS] | `--ease-out` / |
|
|
196
|
+
| | | `--ease-standard` |
|
|
197
|
+
| | | (bezier, NO overshoot —|
|
|
198
|
+
| | | an exit must never |
|
|
199
|
+
| | | overshoot past gone) |
|
|
200
|
+
| Position-tracked (specular pointer follow) | [EFFECTS] | `--ease-standard` |
|
|
201
|
+
|
|
202
|
+
The SOTA arrival ease is the EXISTING `--ease-out-expo` (alias →
|
|
203
|
+
`--motion-ease-out-expo` = `cubic-bezier(0.16, 1, 0.3, 1)`, the house
|
|
204
|
+
expo with the value.js `easeOutExpo` JS twin in the MOTION_CURVES table)
|
|
205
|
+
— NOT a net-new token. The motion canon NAMES it as the arrival register;
|
|
206
|
+
it is not re-minted (a duplicate alias would fail proof:animation-
|
|
207
|
+
coherence's EASING-TABLE-BOUND arm — the curve already has its canonical
|
|
208
|
+
+ alias row in `curves.ts`).
|
|
172
209
|
|
|
173
210
|
The BUTTON family (`.btn-pill` / `.tap-squish` / `.glass-btn` /
|
|
174
211
|
`btn-interactive`) UNIFIES its `scale` transform leg onto ONE register —
|
|
@@ -186,6 +223,28 @@
|
|
|
186
223
|
--spring-gentle: linear(0, 0.09415 2.041%, 0.27374 4.082%, 0.45506 6.122%, 0.60779 8.163%, 0.72570 10.204%, 0.81213 12.245%, 0.87336 14.286%, 0.91570 16.327%, 0.94445 18.367%, 0.96371 20.408%, 0.97645 22.449%, 0.98481 24.490%, 0.99025 26.531%, 0.99377 28.571%, 0.99604 30.612%, 0.99749 32.653%, 0.99841 34.694%, 0.99900 36.735%, 0.99937 38.776%, 0.99961 40.816%, 0.99975 42.857%, 0.99985 44.898%, 1.00000 46.939%, 1.00000 48.980%, 1.00000 51.020%, 1.00000 53.061%, 1.00000 55.102%, 1.00000 57.143%, 1.00000 59.184%, 1.00000 61.224%, 1.00000 63.265%, 1.00000 65.306%, 1.00000 67.347%, 1.00000 69.388%, 1.00000 71.429%, 1.00000 73.469%, 1.00000 75.510%, 1.00000 77.551%, 1.00000 79.592%, 1.00000 81.633%, 1.00000 83.673%, 1.00000 85.714%, 1.00000 87.755%, 1.00000 89.796%, 1.00000 91.837%, 1.00000 93.878%, 1.00000 95.918%, 1.00000 97.959%, 1);
|
|
187
224
|
--spring-dock: linear(0, 0.10282 2.041%, 0.31773 4.082%, 0.54783 6.122%, 0.74309 8.163%, 0.88550 10.204%, 0.97598 12.245%, 1.02452 14.286%, 1.04368 16.327%, 1.04501 18.367%, 1.03739 20.408%, 1.02681 22.449%, 1.01672 24.490%, 1.00873 26.531%, 1.00323 28.571%, 0.99996 30.612%, 0.99837 32.653%, 0.99789 34.694%, 0.99805 36.735%, 0.99848 38.776%, 0.99897 40.816%, 0.99940 42.857%, 0.99972 44.898%, 0.99993 46.939%, 1.00004 48.980%, 1.00000 51.020%, 1.00000 53.061%, 1.00000 55.102%, 1.00000 57.143%, 1.00000 59.184%, 1.00000 61.224%, 1.00000 63.265%, 1.00000 65.306%, 1.00000 67.347%, 1.00000 69.388%, 1.00000 71.429%, 1.00000 73.469%, 1.00000 75.510%, 1.00000 77.551%, 1.00000 79.592%, 1.00000 81.633%, 1.00000 83.673%, 1.00000 85.714%, 1.00000 87.755%, 1.00000 89.796%, 1.00000 91.837%, 1.00000 93.878%, 1.00000 95.918%, 1.00000 97.959%, 1);
|
|
188
225
|
|
|
226
|
+
/* ── PER-SPRING DURATION CLOCK (BA.W-GLASS-CAL Unit 3) ──
|
|
227
|
+
Generated from `scripts/regen-spring-tokens.mjs` — DO NOT hand-edit.
|
|
228
|
+
Each `--spring-<name>-duration` is the spring's OWN 2%-band envelope-settle
|
|
229
|
+
time `t_s = -ln(0.02) / (ζ·ωₙ)` (ωₙ = 2π/response), derived from the SAME
|
|
230
|
+
(response, ζ) PRESETS table the `--spring-*` `linear()` curves above
|
|
231
|
+
derive from — never a hand value.
|
|
232
|
+
|
|
233
|
+
WHY: the `--spring-<name>` curve is NORMALIZED to 0..1 and discards the
|
|
234
|
+
spring's settle time. Pairing it with a generic `--duration-*` clock
|
|
235
|
+
(0.2/0.3/0.45s) re-timed EVERY spring to the same wall clock — snappy
|
|
236
|
+
(response 0.35s) and smooth (0.5s) both ran 300ms, so the crisp snappy
|
|
237
|
+
register dragged a dead sub-pixel tail (the R10-2 read: within-1px at
|
|
238
|
+
~109ms but the transition ran 300ms). These clocks re-time UNDER each
|
|
239
|
+
register to its own settle WITHOUT touching the §6 register canon (which
|
|
240
|
+
spring fits which job): a `transition` pairs `--spring-<name>` with the
|
|
241
|
+
matching `--spring-<name>-duration`. */
|
|
242
|
+
--spring-smooth-duration: 0.36s;
|
|
243
|
+
--spring-snappy-duration: 0.34s;
|
|
244
|
+
--spring-bouncy-duration: 0.69s;
|
|
245
|
+
--spring-gentle-duration: 0.44s;
|
|
246
|
+
--spring-dock-duration: 0.28s;
|
|
247
|
+
|
|
189
248
|
/* Core cubic-bezier (exits, fallbacks, non-spring uses) */
|
|
190
249
|
--motion-ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
|
|
191
250
|
--motion-ease-out: cubic-bezier(0, 0, 0.2, 1);
|
|
@@ -269,15 +328,13 @@
|
|
|
269
328
|
/* ═══════════════════════════════════════════════
|
|
270
329
|
§2.C ANIMATION EXPRESSIVENESS
|
|
271
330
|
|
|
272
|
-
|
|
331
|
+
Two idiom families (the audacious press-ripple RETIRED at BA.W-GLASS-CAL):
|
|
273
332
|
• Progress lifecycle — the progress bar rides an intake pulse on
|
|
274
333
|
rising-edge, a crescendo brightening at ≥85%, and a one-shot discharge
|
|
275
334
|
flash at 100% (the crescendo is the typed `@property --progress-crescendo`).
|
|
276
335
|
• Chassis phase-tint companion — `@property --phase-tint-amount` so the
|
|
277
336
|
chassis backdrop warms toward the active phase, interpolating with
|
|
278
337
|
`--phase-color` across the consumer's phase-handoff window (600ms default).
|
|
279
|
-
• Audacious button press-ripple — `btn-audacious` gains a typed
|
|
280
|
-
`@property --ripple-radius` ramping 0 → max over the ripple duration.
|
|
281
338
|
═══════════════════════════════════════════════ */
|
|
282
339
|
|
|
283
340
|
/* Progress lifecycle — typed crescendo + segment-local durations */
|
|
@@ -291,13 +348,12 @@
|
|
|
291
348
|
overwhelming the chassis chrome's resting register. */
|
|
292
349
|
--phase-tint-peak: 6%;
|
|
293
350
|
|
|
294
|
-
/*
|
|
295
|
-
radius
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
--motion-duration-ripple: 340ms;
|
|
351
|
+
/* BA.W-GLASS-CAL (H2a) — the `btn-audacious` press-ripple knobs
|
|
352
|
+
(`--ripple-radius-max` 12rem, `--motion-duration-ripple` 340ms) DELETED
|
|
353
|
+
with the disco recipe retirement: the ripple was btn-audacious-private and
|
|
354
|
+
has no surviving consumer (the calm CTA register's press is the §6
|
|
355
|
+
`--scale-press-btn` scale beat). The `@property --ripple-radius`
|
|
356
|
+
registration retires with it (property-regs.css). */
|
|
301
357
|
|
|
302
358
|
/* Skeleton breath variant — the M.3 "known-imminent" loading
|
|
303
359
|
register. 6s cycle (the canon ambient rate) so a known-imminent
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/* tokens/scroll-tokens.css
|
|
2
|
+
§20 PLATFORM MOTION (AQ.W5) — the native-platform motion substrate knobs.
|
|
3
|
+
Carved WHOLE from tokens/scale-paper.css at BB.W-CARVE4 to hold the no-god-module
|
|
4
|
+
bound (the paper/control/display/metal/timeline/metric/table families §11–§19 stay
|
|
5
|
+
in scale-paper.css; §20 is the file's last section, so this is a contiguous tail
|
|
6
|
+
carve at the §19/§20 seam). @import-ed by tokens.css in cascade order IMMEDIATELY
|
|
7
|
+
AFTER scale-paper.css — an adjacent same-selector :root{} block carrying the SAME
|
|
8
|
+
declarations in the SAME relative order, so the dist is byte-isomorphic.
|
|
9
|
+
|
|
10
|
+
The motion families, each read by a `@supports`-gated CSS recipe:
|
|
11
|
+
scroll-driven.css / scroll-choreography.css, animations.css (§TOP-LAYER),
|
|
12
|
+
view-transition.css — every visual knob a token so a consumer retunes without
|
|
13
|
+
editing library source. */
|
|
14
|
+
:root {
|
|
15
|
+
/* SCROLL-DRIVEN (scroll-driven.css). Values mirror the JS-fallback composable
|
|
16
|
+
defaults (`useScrollProgress` / `useStaggerReveal`) so the native CSS path and
|
|
17
|
+
the fallback path read identically — no visual seam at the `@supports` boundary. */
|
|
18
|
+
--scroll-progress-scroller: root;
|
|
19
|
+
--scroll-reveal-rise: 6px;
|
|
20
|
+
--scroll-reveal-range-end: 60%;
|
|
21
|
+
|
|
22
|
+
/* BB.W-SCROLL-MOTION — the scroll-CHOREOGRAPHY register knobs (the page-build /
|
|
23
|
+
section-cascade / scroll-pinned recipes in scroll-choreography.css). These
|
|
24
|
+
EXTEND the --scroll-reveal-* substrate above; the existing three are READ-ONLY
|
|
25
|
+
(the cascade COMPOSES them, it never re-tunes them). All distances are
|
|
26
|
+
compositor (transform) channels; the clocks are the per-spring settle clocks
|
|
27
|
+
(scheme-motion.css), threaded, never re-tuned. */
|
|
28
|
+
/* .scroll-build — the route-enter page-build (the chrome -> hero -> body
|
|
29
|
+
coordinated entrance). The rise is a touch deeper than the section cascade
|
|
30
|
+
(the page ASSEMBLES — a more pronounced settle), the step is the per-beat
|
|
31
|
+
coordinated stagger between the chrome, hero, and first-section beats. */
|
|
32
|
+
--scroll-build-rise: 1.5rem;
|
|
33
|
+
--scroll-build-step: 90ms;
|
|
34
|
+
/* .scroll-cascade — the orchestrated section cascade (the per-child view()
|
|
35
|
+
timeline, the spring-clocked coupled build). The rise lifts the bare
|
|
36
|
+
--scroll-reveal-rise 6px to a perceptible SOTA build; the range-end is the
|
|
37
|
+
reveal window (a touch tighter than the bare reveal so each section lands
|
|
38
|
+
crisply rather than dragging a long fade tail). The column-stagger delay is
|
|
39
|
+
the opt-in .scroll-cascade--columns grid-variant knob. */
|
|
40
|
+
--scroll-cascade-rise: 1.25rem;
|
|
41
|
+
--scroll-cascade-range-end: 45%;
|
|
42
|
+
--scroll-cascade-column-stagger: 60ms;
|
|
43
|
+
/* .scroll-pin — the fixed-stage-advances-time scroll-pinned register. The stage
|
|
44
|
+
height is the Nvh temporal space the sticky stage advances its phases across;
|
|
45
|
+
the phase windows are the scroll-progress fractions the stage's internal
|
|
46
|
+
phases key off (grid-reveal 0..45%, expand 45..90%, settle 90..100% — the
|
|
47
|
+
Codrops phased-sequence shape). */
|
|
48
|
+
--scroll-pin-stage-height: 320vh;
|
|
49
|
+
--scroll-pin-phase-reveal-end: 45%;
|
|
50
|
+
--scroll-pin-phase-expand-end: 90%;
|
|
51
|
+
--scroll-pin-lift: 2.5rem;
|
|
52
|
+
|
|
53
|
+
/* TOP-LAYER (animations.css §TOP-LAYER). The `@starting-style` entry/exit
|
|
54
|
+
grammar for native `<dialog>` / `[popover]` glass surfaces. The backdrop dim
|
|
55
|
+
uses the house alpha-derivative `color-mix(in srgb, var(--background) Npct,
|
|
56
|
+
transparent)` (AZ.W-ADAPTIVE-AUTO A5-1). It is NOT the `hsl(var(--background)
|
|
57
|
+
/ α)` channel form: `--background` is a COMPLETE `hsl()` color
|
|
58
|
+
(`= hsl(48 12% 98%)`), so `hsl(var(--background) / α)` double-wraps to
|
|
59
|
+
`hsl(hsl(…) / α)` — invalid, never paints (the modal dim was silently dead).
|
|
60
|
+
The genuine channel form would require `--background` declared as a bare
|
|
61
|
+
`H S% L%` triple, which it never is — hence the alpha-derivative mix. */
|
|
62
|
+
--top-layer-enter-scale: 0.96;
|
|
63
|
+
--top-layer-backdrop-blur: 8px;
|
|
64
|
+
--top-layer-backdrop-dim: 0.5;
|
|
65
|
+
|
|
66
|
+
/* VIEW-TRANSITION (view-transition.css). The shared `.gl-list-item` group recipe
|
|
67
|
+
+ the `--vt-*` axes the `useViewTransition` substrate consumers (dock layer
|
|
68
|
+
swap, muster J's verdict re-rank) tune their swap against. */
|
|
69
|
+
--vt-duration: var(--duration-normal);
|
|
70
|
+
/* AX.W05 — ONE iOS-spring vocabulary: every spring-flavored transition reads
|
|
71
|
+
a governed `--spring-*` register. The legacy apple-spring cubic-bezier
|
|
72
|
+
(+27.5% overshoot) was a SECOND authority beside the regen `--spring-*`
|
|
73
|
+
cohort; it is EXCISED. Its emphatic-overshoot register maps to the playful
|
|
74
|
+
`--spring-bouncy` (the closest `linear()` overshoot stop-set), so the VT
|
|
75
|
+
default + the cards/top-layer transitions share one spring primitive
|
|
76
|
+
(CPU + GPU sample the same curve). No cubic-bezier fallback seed survives —
|
|
77
|
+
the `linear()` spring degrades to `ease` where `linear()` is unsupported. */
|
|
78
|
+
--vt-ease: var(--spring-bouncy);
|
|
79
|
+
--vt-rise: 8px;
|
|
80
|
+
|
|
81
|
+
/* AT.W6-dock-c / AU.W8 — the dock layer-swap morph timing, minted ONCE so
|
|
82
|
+
both engine paths are timing-IDENTICAL: the FLIP fallback (via
|
|
83
|
+
`--dock-motion-resize`), the native View-Transition group (its
|
|
84
|
+
`animation-timing-function`), AND the runtime SpringProgress driver
|
|
85
|
+
(AU.W8.3) consume this same `(0.32, 0.7)` source curve. Retires the AQ.W6
|
|
86
|
+
fork where the VT path ran `--vt-ease` (apple-spring, +27.5% overshoot)
|
|
87
|
+
while the FLIP ran the snappy spring. `--vt-ease` still defaults the
|
|
88
|
+
other VT recipes (`.gl-list-item`).
|
|
89
|
+
|
|
90
|
+
AU.W8 — RETARGET snappy → dock. `--spring-snappy` (ζ=0.65, +6.8%) read as
|
|
91
|
+
mechanical: a stiff plateau at ~48% with too little overshoot to feel
|
|
92
|
+
alive ("not iOS-smooth"). AW.W2 then retuned the dock spring to the
|
|
93
|
+
iOS-control register: `--spring-dock` ((0.32, 0.7), ~+4.6%) settles snappy
|
|
94
|
+
with a restrained overshoot — the felt iOS dock morph, off the prior
|
|
95
|
+
playful +18.5% register. The runtime driver's DOCK_SPRING const MIRRORS the
|
|
96
|
+
(0.32, 0.7) PRESETS row, so the CSS token and the JS-driven morph are
|
|
97
|
+
bit-identical. */
|
|
98
|
+
--dock-resize-spring: var(--spring-dock);
|
|
99
|
+
|
|
100
|
+
/* AT.W7-dock-b — dock-control press micro-feedback spring. A TRANSFORM-ONLY
|
|
101
|
+
spring (`scale`/`rotate`) the dock controls apply to their hover/press
|
|
102
|
+
activation so the squish reads with a touch of spring-back rather than a
|
|
103
|
+
flat ease. STRICTLY transform-scoped: it must never touch the surface-tier
|
|
104
|
+
`[data-held]` fades (background/border/box-shadow), which stay on
|
|
105
|
+
`--duration-fast var(--ease-standard)`. The duration pairs with
|
|
106
|
+
`--duration-fast`; consumers retune the whole feel via this one token.
|
|
107
|
+
|
|
108
|
+
AY.W-DOCK2 (D6) — the register is `--spring-smooth`, the §6 easing-doctrine
|
|
109
|
+
transform-press register (tokens.css §2: transform hover/press/active →
|
|
110
|
+
`--spring-smooth`/`--spring-snappy`, NEVER `--spring-bouncy`; a press must
|
|
111
|
+
settle, never overshoot into a visible bounce). The prior `--spring-bouncy`
|
|
112
|
+
ROOT default was off-doctrine, shadowed for the four named controls by a
|
|
113
|
+
per-surface re-point in dock-controls.css — the exact per-surface fork the
|
|
114
|
+
doctrine kills. The re-point is now a DEAD byte-identical redeclaration and is
|
|
115
|
+
DELETED; the ROOT token IS the doctrine register, so any other consumer of
|
|
116
|
+
`--dock-press-spring` inherits the correct smooth register.
|
|
117
|
+
|
|
118
|
+
BA.W-GLASS-CAL Unit 3 — the duration leg re-times off the generic
|
|
119
|
+
`--duration-fast` (0.2s) onto `--spring-smooth-duration` (0.36s, the
|
|
120
|
+
smooth spring's OWN 2%-band envelope settle), so the press transform plays
|
|
121
|
+
at its physical settle rather than a generic clock. */
|
|
122
|
+
--dock-press-spring: var(--spring-smooth-duration) var(--spring-smooth);
|
|
123
|
+
}
|
|
@@ -1,90 +1,16 @@
|
|
|
1
|
-
/* tokens/
|
|
2
|
-
§
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
/* tokens/sizing.css
|
|
2
|
+
§10 sizing — the --ui-scale doctrine, control-height/font/glyph cohorts,
|
|
3
|
+
dropdown/carousel/stack-overlap, the dock geometry cascade (--dock-scale +
|
|
4
|
+
collapsed-pill + rail hairline + active-state ladder + iOS register + touch
|
|
5
|
+
floor), MetricBadge stacked geometry, the Configurator density + HIERARCHY
|
|
6
|
+
vocabulary, the single-column stage floor, the section tonal step, the
|
|
7
|
+
component-font override.
|
|
8
|
+
Carved (BB.W-CARVE3) from the former tokens/offsets-sizing.css §9/§10 split;
|
|
9
|
+
@import-ed by tokens.css immediately AFTER offsets.css at offsets-sizing's old
|
|
10
|
+
cascade slot — adjacent same-selector :root blocks resolve identically, so the
|
|
11
|
+
dist is byte-isomorphic. See docs/precepts/design-idioms.md
|
|
12
|
+
§cohesion-aware partials. */
|
|
5
13
|
:root {
|
|
6
|
-
/* ═══════════════════════════════════════════════
|
|
7
|
-
§9 ANIMATION OFFSETS
|
|
8
|
-
═══════════════════════════════════════════════ */
|
|
9
|
-
/* Hover lift offsets */
|
|
10
|
-
--lift-sm: -1px;
|
|
11
|
-
--lift-md: -2px;
|
|
12
|
-
--lift-lg: -4px;
|
|
13
|
-
|
|
14
|
-
/* Layout tokens */
|
|
15
|
-
--mask-fade-width: 1rem;
|
|
16
|
-
/* J.W3.C — dock content overflow caps. When dock content exceeds
|
|
17
|
-
these dimensions, the inner `.dock-layers` (horizontal) /
|
|
18
|
-
`.glass-dock.vertical` (rail) container scrolls with a
|
|
19
|
-
`.scroll-fade-{x,y}` mask-fade so the boundary feathers rather
|
|
20
|
-
than cliffs. Defaults clamp to 80vw / 80vh capped at sensible
|
|
21
|
-
desktop widths; consumers override per-dock by setting either
|
|
22
|
-
token directly on a `.glass-dock` instance. User findings 1 + 5a. */
|
|
23
|
-
/* AX.W04 — `--dock-max-inline-size` is the canonical inline cap EVERY overflow
|
|
24
|
-
strategy reads: `overflow="scroll"` scrolls past it, and `overflow="wrap"`
|
|
25
|
-
wraps to N rows on the over-cap crossing (the dock shrink-wraps to content,
|
|
26
|
-
`max-inline-size` caps that intrinsic width at this token). The prior
|
|
27
|
-
`--dock-overflow-bp: 640px` viewport-breakpoint token (the magic-640
|
|
28
|
-
snap-back) is DELETED — the wrap is content-driven, not viewport-coupled, so
|
|
29
|
-
there is no breakpoint threshold to name. */
|
|
30
|
-
--dock-max-inline-size: min(80vw, 64rem);
|
|
31
|
-
--dock-max-block-size: min(80vh, 48rem);
|
|
32
|
-
|
|
33
|
-
/* AB.W1.T1 — chassis max-block-size guardrail.
|
|
34
|
-
Maximum block size a centred consumer-app card may consume while
|
|
35
|
-
preserving the inline dock footprint. The recipe subtracts the
|
|
36
|
-
consumer-owned `--dock-footer-space` (dock height + dock inset +
|
|
37
|
-
card-edge inset) and `--page-padding-top` from the dynamic viewport,
|
|
38
|
-
then takes one further rem of breathing room so the card never
|
|
39
|
-
butts the dock — the user mandate is `≥ 1rem visible gap above
|
|
40
|
-
dock`. Both consumer tokens carry safe fallbacks for callers that
|
|
41
|
-
have not declared them.
|
|
42
|
-
|
|
43
|
-
Consumers should shrink internal regions (meter, readout, timeline)
|
|
44
|
-
before falling back to scroll. This token is a guardrail against
|
|
45
|
-
chassis overflow, NOT a license to make the card scroll as the
|
|
46
|
-
default solution; clamp-first / no-scroll-first is the canon.
|
|
47
|
-
See DESIGN.md `## Chassis sizing — dock-adjusted viewport`. */
|
|
48
|
-
--chassis-max-block-size: calc(
|
|
49
|
-
100dvh
|
|
50
|
-
- var(--dock-footer-space, 5.75rem)
|
|
51
|
-
- var(--page-padding-top, 0rem)
|
|
52
|
-
- 1rem
|
|
53
|
-
);
|
|
54
|
-
/* R0G-2 (AO.W3/W4) — chassis mobile dial-reserve canon. instrument-
|
|
55
|
-
chassis.css's mobile breakpoint reserves the dial's final box from
|
|
56
|
-
frame 0 via these vars (with the same values as inline fallbacks, the
|
|
57
|
-
safety net). Token-first home so the vars resolve canonically. */
|
|
58
|
-
--instrument-dial-min-height-mobile: 24rem;
|
|
59
|
-
--instrument-dial-meter-reserve-mobile: minmax(0, 1fr);
|
|
60
|
-
|
|
61
|
-
--max-width-input: 24rem;
|
|
62
|
-
--input-min-width-sm: 5rem;
|
|
63
|
-
--min-width-input-sm: var(--input-min-width-sm);
|
|
64
|
-
/* AU.W8b.4 — canonical popover width (Combobox list + anchor). Lifts the
|
|
65
|
-
`w-[200px]` arbitrary-value wrap to the `w-popover` @theme utility. */
|
|
66
|
-
--popover-width: 200px;
|
|
67
|
-
/* AZ.R5-4 — the ONE panel inner-padding rung (the consumer-verified "the
|
|
68
|
-
popover/dropdown content reads TIGHT" finding). The floating-panel +
|
|
69
|
-
DropdownMenuContent recipes read THIS token for their inner pad instead of
|
|
70
|
-
the prior hand-set `p-1`/literal, so a consumer retunes every teleported
|
|
71
|
-
menu/panel surface from one override. The comfortable default is `0.375rem`
|
|
72
|
-
(a half-rung over the prior 0.25rem tight floor — comfortable both modes
|
|
73
|
-
without over-padding a dense menu list). PopoverContent keeps its own
|
|
74
|
-
`--panel-padding-roomy` (1rem) for the prose-popover register. */
|
|
75
|
-
--panel-padding: 0.375rem;
|
|
76
|
-
--panel-padding-roomy: 1rem;
|
|
77
|
-
--chart-height-compact: 15rem;
|
|
78
|
-
--chart-height-default: 22.5rem;
|
|
79
|
-
--chart-height-large: 25rem;
|
|
80
|
-
--chart-margin: 1.25rem;
|
|
81
|
-
--paper-texture-size: 200px 200px;
|
|
82
|
-
|
|
83
|
-
/* Border opacity scale */
|
|
84
|
-
--border-opacity-light: 0.15;
|
|
85
|
-
--border-opacity-medium: 0.25;
|
|
86
|
-
--border-opacity-strong: 0.6;
|
|
87
|
-
|
|
88
14
|
/* ═══════════════════════════════════════════════
|
|
89
15
|
§10 SIZING
|
|
90
16
|
═══════════════════════════════════════════════ */
|
|
@@ -272,8 +198,31 @@
|
|
|
272
198
|
/* Library glyph ownership — `.dock-icon-button > svg` reads this so the dock
|
|
273
199
|
icon glyph scales WITH the box (mirroring `.dark-mode-toggle-button > svg`).
|
|
274
200
|
A consumer-passed explicit lucide size class still WINS (utility layer >
|
|
275
|
-
component layer); this is a DEFAULT, not a ceiling.
|
|
276
|
-
|
|
201
|
+
component layer); this is a DEFAULT, not a ceiling.
|
|
202
|
+
|
|
203
|
+
BB.W-PERF-PRODUCER A′-6 — the glyph rides the per-DENSITY box, not a flat rem.
|
|
204
|
+
The value.js D5-1 companion trace: `density="spacious"` grew the shelf + pad +
|
|
205
|
+
gap but the glyph stayed 1.25rem (it rode `--dock-scale` only, NOT the
|
|
206
|
+
per-density `--dock-layer-height` axis density.css scales). Now the glyph is a
|
|
207
|
+
RATIO of `--dock-layer-height` (`--dock-icon-glyph-ratio`, default 0.5 → a
|
|
208
|
+
2rem control → a 1rem glyph at compact, a 2.5rem control → 1.25rem at
|
|
209
|
+
comfortable, lockstep up the rungs). The `--dock-scale` coarse thread is
|
|
210
|
+
PRESERVED transitively — `--dock-layer-height` already rides it (density.css).
|
|
211
|
+
The WCAG glyph-floor holds via `max(…, --dock-icon-glyph-floor)` (a 16px floor
|
|
212
|
+
so a sub-1 density/coarse register can never drop the glyph below the legible
|
|
213
|
+
minimum). NOTE: `--dock-layer-height` is painted ONLY on `.glass-dock[data-density]`
|
|
214
|
+
(density.css) — at `:root` it is the inline fallback below, so this `:root`
|
|
215
|
+
declaration resolves the fallback ladder; density.css RE-RESOLVES `--dock-icon-glyph`
|
|
216
|
+
inside each `[data-density]` scope so the density-painted height flows in (the
|
|
217
|
+
substitution-vs-inheritance trap the overflow.css R5-1 sweep documents). The
|
|
218
|
+
toggle mirror `.dark-mode-toggle-button > svg` reads the SAME `--dock-icon-glyph`
|
|
219
|
+
so both glyphs move onto the density axis together. */
|
|
220
|
+
--dock-icon-glyph-ratio: 0.5;
|
|
221
|
+
--dock-icon-glyph-floor: 1rem;
|
|
222
|
+
--dock-icon-glyph: max(
|
|
223
|
+
calc(var(--dock-layer-height, calc(2.5rem * var(--dock-scale))) * var(--dock-icon-glyph-ratio)),
|
|
224
|
+
var(--dock-icon-glyph-floor)
|
|
225
|
+
);
|
|
277
226
|
|
|
278
227
|
/* AX.W45-TUNE Q1 — the COLLAPSED-pill floor tokens. The collapsed summary
|
|
279
228
|
used to fall to `--dock-layer-height` (the FULL control height, ~2.5rem) for
|
|
@@ -362,6 +311,18 @@
|
|
|
362
311
|
Consumers retune the rail-tab size via this one handle. */
|
|
363
312
|
--dock-layer-tab-size: calc(1.75rem * var(--dock-scale));
|
|
364
313
|
|
|
314
|
+
/* BA.W-DOCK-SECTIONS — the divider-seam rail knobs.
|
|
315
|
+
`--dock-rail-extend-length` (declared in rail-extend.css) was RE-SEMANTICIZED:
|
|
316
|
+
it is no longer a one-way connector length but the SYMMETRIC per-side overrun of
|
|
317
|
+
the seam line (the line's cross-extent = dock extent + 2× the knob, centered on
|
|
318
|
+
the seam). `--dock-rail-retract-stub` is the residual protrusion FRACTION the
|
|
319
|
+
chips leave past the dock edge on collapse (the macOS fan-out "retract INTO the
|
|
320
|
+
rail leaving a slight protrusion"; 0 = fully retracted, 1 = no retract). The
|
|
321
|
+
`--dock-section-zone-gap` is the inter-control rhythm inside a <DockSection> zone
|
|
322
|
+
(defaults to the dock's own `--dock-gap`, so the section grouping adds no box). */
|
|
323
|
+
--dock-rail-retract-stub: 0.35;
|
|
324
|
+
--dock-section-zone-gap: var(--dock-gap, 0.25rem);
|
|
325
|
+
|
|
365
326
|
/* Dock active-state ladder (O.W6 Lane B)
|
|
366
327
|
Token-overridable active paint for `.dock-icon-button`. Promoted
|
|
367
328
|
from hardcoded `background: var(--muted); color: var(--foreground)`
|
|
@@ -494,7 +455,45 @@
|
|
|
494
455
|
--configurator-preset-row-weight: 0.625rem; /* 10px — > a body row's 8px py-comfortable */
|
|
495
456
|
--configurator-preset-row-gap: 0.5rem; /* 8px — generous chip gap */
|
|
496
457
|
|
|
458
|
+
/* 3. The DIVIDER register — dark-adaptive (BA.W-CONFIG-CHASSIS.1 / CFG-4).
|
|
459
|
+
The section + inter-row dividers used to be inline `border-border/40` and
|
|
460
|
+
`border-border/30` Tailwind alphas; over the W-DARK-MATERIAL dark
|
|
461
|
+
`glass-floating` plate (a luminous transmissive material, --card L16) those
|
|
462
|
+
near-equal-luminance hairlines effectively VANISHED — "the sections run
|
|
463
|
+
together". This ONE token is consumed by every divider rule (the
|
|
464
|
+
<ConfiguratorLayer> section border, the dividers-prop inter-row border,
|
|
465
|
+
Configurator.vue's aside/preset/footer borders, configurator.css) so the
|
|
466
|
+
divider weight is retuned from a single override.
|
|
467
|
+
|
|
468
|
+
The dark-LIFTING arm is the load-bearing half: the divider must read on
|
|
469
|
+
BOTH plates. On LIGHT it is the resting `--border` warm-neutral at the
|
|
470
|
+
prior ~40% weight; on DARK it LIFTS off `--border` (L34 over the L16 plate
|
|
471
|
+
— too close) toward the `--foreground` warm-ink (L90) at a higher α, so a
|
|
472
|
+
visible luminance step survives the dark glass. `light-dark()` carries the
|
|
473
|
+
arm in ONE declaration (the same :root cascade context as the surface-tint
|
|
474
|
+
family; an engine without `light-dark()` falls back to the dark-arm.css
|
|
475
|
+
`.dark` floor minted in lockstep). The SECTION divider runs a touch
|
|
476
|
+
heavier than the inter-row hairline (a section reads as a section without
|
|
477
|
+
a second heading rung). */
|
|
478
|
+
--configurator-divider: light-dark(
|
|
479
|
+
color-mix(in srgb, var(--border) 55%, transparent),
|
|
480
|
+
color-mix(in srgb, var(--foreground) 22%, transparent)
|
|
481
|
+
);
|
|
482
|
+
--configurator-divider-section: light-dark(
|
|
483
|
+
color-mix(in srgb, var(--border) 70%, transparent),
|
|
484
|
+
color-mix(in srgb, var(--foreground) 30%, transparent)
|
|
485
|
+
);
|
|
486
|
+
/* The optional faint section-header tonal step — a whisper-light warm wash
|
|
487
|
+
behind a <ConfiguratorLayer> section so it reads as a grouped section
|
|
488
|
+
WITHOUT a new heading rung (within the W-HIERARCHY register). Default off
|
|
489
|
+
(transparent) on light where the hairline carries it; a faint
|
|
490
|
+
foreground-over-transparent lift on dark where the divider alone is
|
|
491
|
+
subtle. */
|
|
492
|
+
--configurator-section-tint: light-dark(
|
|
493
|
+
transparent,
|
|
494
|
+
color-mix(in srgb, var(--foreground) 3%, transparent)
|
|
495
|
+
);
|
|
496
|
+
|
|
497
497
|
/* Component font override (consumers override locally) */
|
|
498
498
|
--select-font: inherit;
|
|
499
|
-
|
|
500
499
|
}
|
package/dist/styles/tokens.css
CHANGED
|
@@ -21,14 +21,20 @@
|
|
|
21
21
|
* (registrations + the specular magnitude cohort that reads them).
|
|
22
22
|
*/
|
|
23
23
|
|
|
24
|
-
/* CSS @import rules must precede every other rule. The
|
|
25
|
-
cascade order
|
|
24
|
+
/* CSS @import rules must precede every other rule. The ten partials @import in
|
|
25
|
+
cascade order (offsets-sizing.css was carved into offsets.css + sizing.css at
|
|
26
|
+
BB.W-CARVE3 — adjacent same-selector :root blocks at the same cascade slot): */
|
|
26
27
|
@import "./tokens/scheme-motion.css";
|
|
27
28
|
@import "./tokens/color-radius.css";
|
|
28
29
|
@import "./tokens/shadow.css";
|
|
29
30
|
@import "./tokens/glass.css";
|
|
30
|
-
@import "./tokens/
|
|
31
|
+
@import "./tokens/glass-fx.css";
|
|
32
|
+
@import "./tokens/glass-deep.css";
|
|
33
|
+
@import "./tokens/on-glass-fg.css";
|
|
34
|
+
@import "./tokens/offsets.css";
|
|
35
|
+
@import "./tokens/sizing.css";
|
|
31
36
|
@import "./tokens/scale-paper.css";
|
|
37
|
+
@import "./tokens/scroll-tokens.css";
|
|
32
38
|
@import "./tokens/light-dark.css";
|
|
33
39
|
@import "./tokens/dark-arm.css";
|
|
34
40
|
@import "./tokens/property-regs.css";
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
.fade-slide-enter-active {
|
|
24
24
|
transition:
|
|
25
25
|
opacity var(--duration-normal) var(--ease-out),
|
|
26
|
-
transform var(--duration
|
|
26
|
+
transform var(--spring-smooth-duration) var(--spring-smooth);
|
|
27
27
|
}
|
|
28
28
|
.fade-slide-leave-active {
|
|
29
29
|
transition:
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
.dialog-scale-enter-active {
|
|
44
44
|
transition:
|
|
45
45
|
opacity var(--duration-slow) var(--ease-out),
|
|
46
|
-
transform var(--duration
|
|
46
|
+
transform var(--spring-bouncy-duration) var(--spring-bouncy);
|
|
47
47
|
}
|
|
48
48
|
.dialog-scale-leave-active {
|
|
49
49
|
transition:
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
.pop-enter-active {
|
|
64
64
|
transition:
|
|
65
65
|
opacity var(--duration-fast) var(--ease-out),
|
|
66
|
-
transform var(--duration
|
|
66
|
+
transform var(--spring-bouncy-duration) var(--spring-bouncy);
|
|
67
67
|
}
|
|
68
68
|
.pop-leave-active {
|
|
69
69
|
transition:
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
.dropdown-enter-active {
|
|
84
84
|
transition:
|
|
85
85
|
opacity var(--duration-instant) var(--ease-out),
|
|
86
|
-
transform var(--duration
|
|
86
|
+
transform var(--spring-snappy-duration) var(--spring-snappy);
|
|
87
87
|
}
|
|
88
88
|
.dropdown-leave-active {
|
|
89
89
|
transition:
|
|
@@ -110,7 +110,7 @@
|
|
|
110
110
|
.pane-swap-enter-active {
|
|
111
111
|
transition:
|
|
112
112
|
opacity var(--duration-normal) var(--ease-out),
|
|
113
|
-
transform var(--duration
|
|
113
|
+
transform var(--spring-smooth-duration) var(--spring-smooth);
|
|
114
114
|
}
|
|
115
115
|
.pane-swap-leave-active {
|
|
116
116
|
transition:
|
|
@@ -130,7 +130,7 @@
|
|
|
130
130
|
.metric-swap-enter-active {
|
|
131
131
|
transition:
|
|
132
132
|
opacity var(--duration-normal) var(--ease-out),
|
|
133
|
-
transform var(--duration
|
|
133
|
+
transform var(--spring-smooth-duration) var(--spring-smooth);
|
|
134
134
|
}
|
|
135
135
|
.metric-swap-leave-active {
|
|
136
136
|
transition:
|
|
@@ -145,7 +145,7 @@
|
|
|
145
145
|
|
|
146
146
|
/* ── Dock entrance utility ── */
|
|
147
147
|
.dock-in {
|
|
148
|
-
animation: dock-in var(--duration
|
|
148
|
+
animation: dock-in var(--spring-snappy-duration) var(--spring-snappy) both;
|
|
149
149
|
transform-origin: center bottom;
|
|
150
150
|
}
|
|
151
151
|
|